beige = #F9F2E7 dark-gray = #333 gray = #777 green = #8FBE00 light-blue = #40C0CB light-green = #AEE239 light-red = #E23430 light-yellow = #FFE476 red = #AE1E1D @keyframes rotate { from { transform: rotate(0deg) } to { transform: rotate(360deg) } } global-reset() * { box-sizing: border-box } html, body { height: 100% } h1 { color: red font: bold 52px/60px "Lobster Two", sans-serif text-align: center margin: 0 0 10px } p { color: gray font: 14px/20px "Quicksand", sans-serif text-align: center margin: 0 0 } .drop-zone { width: 100% height: 100% .drop-zone-overlay { position: fixed top: 0 left: 0 width: 100% height: 100% background: rgba(0, 0, 0, 0.5) text-align: center &:after { color: white content: 'DROP TO UPLOAD' display: block font: 24px/40px "Quicksand", sans-serif margin-top: -20px position: relative text-shadow: 0 1px dark-gray top: 50% } } } .spinner { position: relative z-index: -1 width: 300px height: 300px margin: 0 auto 20px display: flex align-items: center justify-content: center .spinner-background { display: block width: 300px height: 300px position: absolute top: 0 left: 0 transition: transform 1s z-index: -1 } &.spinner-animated .spinner-background { animation: rotate 5s infinite linear } .spinner-image { display: block width: 150px margin: 0 auto } .spinner-name { font: bold 18px/20px "Quicksand", sans-serif text-align: center color: white overflow: hidden text-overflow: ellipsis white-space: nowrap margin-top: 10px margin: 0 auto width: 220px } .spinner-size { font: italic 12px/20px "Quicksand", sans-serif text-align: center color: white overflow: hidden text-overflow: ellipsis white-space: nowrap } } .tempalink { background: beige color: dark-gray border: 0 margin: 20px 0 font: 18px/1 monospace height: 60px padding: 20px text-align: center width: 100% } .data { color: gray font: 14px/20px "Quicksand", sans-serif text-align: center overflow: hidden .datum { float: left width: 50% } } .download-button { display: block box-shadow: inset 0 1px 1px light-green padding: 20px background: green border: none color: white width: 100% font: bold 18px/20px "Quicksand", sans-serif transition: 0.25s cursor: pointer text-transform: uppercase &:hover, &:focus { box-shadow: inset 0 1px 1px green background: light-green } &:active { background: green } } .progress-bar { height: 60px overflow: hidden background: green transition: all 1s ease .progress-bar-inner { float: left height: 100% background: green box-shadow: inset 0 1px 1px light-green overflow: hidden } .progress-bar-text { font: 14px/60px "Quicksand", sans-serif color: white text-align: center text-transform: uppercase } &.progress-bar-failed { background: red box-shadow: inset 0 1px 1px light-red .progress-bar-text { text-align: center } } &.progress-bar-in-progress { background: beige .progress-bar-inner { background: #FFCC00 box-shadow: inset 0 1px 1px light-yellow } .progress-bar-text { color: black float: right margin-right: 5px } } &.progress-bar-small { height: 30px width: 50% margin: 8px auto border-radius: 5px .progress-bar-text { line-height: 30px } } }