body {background-color: rgb(142, 174, 235); background-image: url(snow.png); background-position: center; background-repeat: no-repeat; background-size: cover;} .wrapper{ text-align: center; margin: 0 auto; position: relative; width: 100%; overflow: hidden; } .snow { background-color: #fff; border-radius: 50%; position: absolute; animation: animate-snow 10s linear; } @keyframes animate-snow { 0% { opacity: 0; top: 0; } 10% { opacity: 1; } 90% { opacity: 1; } 100% { opacity: 0; top: 100vh; } } table{ margin: 0 auto; } .login{ background-color: rgb(142, 174, 235); background-image: url(snow.png); background-position: center; background-repeat: no-repeat; background-size: cover;} body.secret {background: black; color: white;} div#typing {margin: 1em 1ex; border-top: double cyan 5px;} div#typing pre { min-height: 3em; border: 1px solid navy; margin: 0 1ex; padding: 0 0.5ex; font-size: 150%; } span.text {xcolor: blue;} span.text::first-line {background: white;} span.cursor {border: solid 1px black;} span.done {color: red;} span.miss {background-color: red; color: white;} pre.current {background: white;} div#typing pre.mytext {border: 3px double red; color: blue;} p.info { border: double 5px green; border-radius: 1em; margin: auto; text-align: center; font-size: x-large; padding 1ex; width: 60%; min-width: 5em; } p.go {background: yellow;} table, table td, table th {border: 1px solid #444; border-collapse: collapse;} td, th {min-width: 3em; padding: 0.5ex 1ex;} #ranking-table td, #ranking-table th {white-space: pre;} td#ratio, #miss, #types, #score, #time, #step, #hs, #speed, #trial, #strial, #target { text-align: right; } label {margin-right: 1em;} label.disabled {color: grey;} div.login, div.login2, div.ranking { position: absolute; height: 100vh; width: 100vw; top: 0; left: 0; background: white; z-index: 2; } input[name="text"] {display: none;} input[name="text"]+button {min-width: 10em;} input[name="text"]:checked+button {background: yellow;} /*div.login, div.login2 {padding: 40% 0%;}*/ div.login{ background-color: rgb(142, 174, 235); background-image: url(christmas.jpg); background-position: 10% 80%; background-repeat: no-repeat; background-size: cover; width: 100%; } div.login-item{ position: absolute; left: 50%; top: 50%; width: 100%; transform: translate(-50%, -50%); text-align: center; } #loginhead{ color: white; } #prompt{ color: white; } div.login2 { opacity: 0; transition: 0.5s; border-radius: 50%; } div.login * {margin: auto;} div.login p, div.ranking p { margin: auto; width: 50%; text-align: center; xborder: 1px solid #444; border-radius: 1ex; padding: 1ex; } div.ranking {position: fixed;} div.ranking p.t {position: relative; top: 0; width: 100vw;} div.ranking div.tbl { position: relative; top: 1em; height: 80vh; margin: 0 auto; overflow: auto; } #ranking-table { margin: 0 auto; background: #bbb; margin: 0 auto; border: 1px solid black; } #ranking-table tr:nth-child(n+2) th, #ranking-table td {text-align: right;} #ranking-table tr:first-child {background: #eee;} #ranking-table tr:nth-child(2n) {background: #cec;} #ranking-table tr:first-child th { position: sticky; top: 0; background-clip: padding-box; background: #eee; } #ranking-table tr.me {background: #fee;} .warn {background: #f99;}