* { box-sizing: border-box; } html { height: 100%; } body { margin: 0; height: 100%; } .container { display: table; overflow: visible; } .page { width: 300px; } .drop-zone { position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: table; background: rgba(0, 0, 0, 0); } .drop-zone-focus { z-index: 1; background: rgba(0, 0, 0, 0.5); } .drop-zone-focus:after { color: white; content: 'DROP TO UPLOAD'; display: table-cell; font: 24px/40px "Quicksand", sans-serif; text-align: center; text-shadow: 0 1px #333; vertical-align: middle; } .spinner { position: relative; z-index: -1; width: 300px; height: 300px; margin-bottom: 40px; display: flex; align-items: center; justify-content: center; } .spinner .spinner-border { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 20px dotted #40C0CB; border-radius: 100%; -webkit-transition: -webkit-transform 1s; -moz-transition: -moz-transform 1s; transition: transform 1s; } .spinner.spinner-animated .spinner-border { -webkit-animation: rotate 5s infinite linear; -moz-animation: rotate 5s infinite linear; animation: rotate 5s infinite linear; } .spinner .spinner-image { display: block; width: 150px; } .spinner .spinner-name { font: bold 18px/20px "Quicksand", sans-serif; text-align: center; color: #333; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; margin-top: 10px; } .spinner .spinner-size { font: italic 12px/20px "Quicksand", sans-serif; text-align: center; color: #777; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .tempalink { border-radius: 3px; box-shadow: inset 0 1px 1px #AEE239, 0 1px 1px #EEE; background: #8FBE00; color: white; border: 0; margin: 20px 0; font: 14px/1 monospace; height: 60px; padding: 20px; text-align: center; width: 100%; } h1 { color: #8FBE00; font: bold 32px/40px "Quicksand", sans-serif; text-align: center; margin: 0 0 10px; } p { color: #777; font: 14px/20px "Quicksand", sans-serif; text-align: center; margin: 0 0; } .data { color: #777; font: 14px/20px "Quicksand", sans-serif; text-align: center; overflow: hidden; } .data > .datum { float: left; width: 50%; } .download-button { display: block; border-radius: 5px; box-shadow: inset 0 1px 1px #AEE239, 0 1px 1px #EEE; padding: 20px; background: #8FBE00; border: none; color: white; width: 100%; font: bold 18px/20px "Quicksand", sans-serif; transition: 0.25s; cursor: pointer; text-transform: uppercase; } .download-button:hover, .download-button:focus { box-shadow: inset 0 1px 1px #8FBE00; background: #AEE239; } .download-button:active { background: #8FBE00; } .progress-bar { height: 60px; overflow: hidden; border-radius: 4px; background: #F9F2E7; box-shadow: 0 1px 1px #EEE; } .progress-bar .progress-bar-inner { float: left; height: 100%; background: #8FBE00; box-shadow: inset 0 1px 1px #AEE239; overflow: hidden; } .progress-bar .progress-bar-text { float: right; font: 14px/60px "Quicksand", sans-serif; color: white; margin-right: 5px; text-transform: uppercase; } .progress-bar.progress-bar-failed { background: #C40D08; box-shadow: inset 0 1px 1px #E23430, 0 1px 1px #EEE; } .progress-bar.progress-bar-failed .progress-bar-text { float: none; text-align: center; margin-right: 0; } @-webkit-keyframes rotate { from { -webkit-transform: rotate(0deg); } to { -webkit-transform: rotate(360deg); } } @-moz-keyframes rotate { from { -moz-transform: rotate(0deg); } to { -moz-transform: rotate(360deg); } } @keyframes rotate { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }