:root{--bg:#0a0a0c;--panel:#121216;--line:#232329;--ink:#f4f4f6;--ink2:#8e8e99;--ink3:#5c5c66;--gold:#e8b33a;--gold-dim:#3a2f14;--hot:#e2564a}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden;-webkit-tap-highlight-color:transparent}.wrap,body{min-height:100dvh}.wrap{max-width:680px;margin:0 auto;padding:34px 20px 70px;flex-direction:column}.top,.wrap{display:flex}.top{align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:44px}.logo{font-size:20px;font-weight:800;letter-spacing:.26em;margin:0}.live{font-size:12.5px;color:var(--ink2);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;display:flex;align-items:center;gap:7px}.live i{width:6px;height:6px;border-radius:50%;background:#4ec98a;display:inline-block;animation:pulse 2.4s ease-out infinite}@keyframes pulse{70%{box-shadow:0 0 0 7px rgba(78,201,138,0)}to{box-shadow:0 0 0 0 rgba(78,201,138,0)}}.stage{text-align:center;flex:1 1;display:flex;flex-direction:column;justify-content:center}.crown{font-size:44px;line-height:1;margin-bottom:16px;filter:drop-shadow(0 0 26px rgba(232,179,58,.4))}.holder{font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink3);margin-bottom:10px}.name{font-size:clamp(30px,8vw,52px);font-weight:700;letter-spacing:-.03em;line-height:1.05;margin:0 0 20px;word-break:break-word}.name.you{color:var(--gold)}.timer{font-size:clamp(44px,14vw,86px);font-weight:800;letter-spacing:-.045em;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.sub{font-size:14.5px;color:var(--ink2);margin:14px 0 0}.pad{margin:44px 0 10px;display:flex;flex-direction:column;align-items:center;gap:14px}.nameinput{width:100%;max-width:280px;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:13px 15px;color:var(--ink);font-size:16px;text-align:center;outline:none;font-family:inherit}.nameinput:focus{border-color:var(--gold)}.btn{position:relative;width:100%;max-width:300px;height:70px;border-radius:14px;border:1px solid var(--line);background:var(--panel);color:var(--ink);font-size:16.5px;font-weight:700;letter-spacing:.1em;cursor:pointer;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:none;font-family:inherit;transition:border-color .2s ease,transform .12s ease}.btn:disabled{opacity:.45;cursor:not-allowed}.btn:not(:disabled):hover{border-color:var(--gold)}.btn:not(:disabled):active{transform:scale(.985)}.btn .fill{position:absolute;inset:0;background:var(--gold);width:0;transition:width 60ms linear}.btn .lab{position:relative;z-index:1;mix-blend-mode:difference;color:#fff}.hint{font-size:13px;color:var(--ink3);min-height:19px;text-align:center}.hint.err{color:var(--hot)}.board{margin-top:44px;border-top:1px solid var(--line);padding-top:22px}.board h2{font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink3);margin:0 0 14px;font-weight:600}.row{display:flex;align-items:baseline;gap:12px;padding:9px 0;border-bottom:1px solid #17171c;font-size:15px}.row:last-child{border-bottom:0}.row .r{color:var(--ink3);font-size:12.5px;min-width:20px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.row .n{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row .t{color:var(--ink2);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-family:ui-monospace,Menlo,monospace;font-size:14px}.row.mine .n{color:var(--gold)}.empty{font-size:14.5px;padding:8px 0}.empty,footer{color:var(--ink3)}footer{margin-top:38px;padding-top:20px;border-top:1px solid var(--line);font-size:12.5px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}footer a{color:var(--ink2);text-decoration:none;border-bottom:1px solid var(--line)}footer a:hover{color:var(--gold);border-color:var(--gold)}@media (prefers-reduced-motion:reduce){.live i{animation:none}.btn .fill{transition:none}}