@font-face{font-family:"Bungee";font-weight:400;font-display:swap;src:url(/fonts/bungee-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Chakra Petch";font-weight:500;font-display:swap;src:url(/fonts/chakra-petch-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Chakra Petch";font-weight:700;font-display:swap;src:url(/fonts/chakra-petch-latin-700-normal.woff2) format("woff2")}
:root{--ink:#0b1022;--cream:#f3e6c8;--comb:#ef4b3f;--laser:#6ee7d0;--mute:#9aa6d1;--gold:#ffc84a;--font-display:'Bungee','Impact','Arial Black',sans-serif;--font-ui:'Chakra Petch','Trebuchet MS','Segoe UI',sans-serif}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html,body{margin:0;height:100%;background:#05070f;color:var(--cream);font-family:var(--font-ui);overflow:hidden;overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:none}
#fit{position:fixed;inset:0;display:grid;place-items:center}
#stage{position:relative;width:360px;height:640px;transform-origin:center;background:var(--ink);overflow:hidden;border-radius:14px;box-shadow:0 0 0 1px #ffffff14,0 20px 60px #000a}
canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.screen{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:22px;text-align:center;background:linear-gradient(#0b1022cc,#0b1022f2)}
.title{font:400 40px/0.95 var(--font-display);margin:0;color:var(--cream);text-shadow:0 3px 0 var(--comb)}
.title span{color:var(--laser);text-shadow:0 3px 0 #1d6b5e}
.tag{margin:0;color:var(--mute);font-size:14px;max-width:30ch}
.big{font:400 28px/1 var(--font-display);margin:0}
.go-btn{font:700 17px/1 var(--font-ui);letter-spacing:.1em;text-transform:uppercase;color:var(--ink);background:var(--cream);border:0;border-radius:999px;padding:15px 34px;cursor:pointer;box-shadow:0 4px 0 #b7a77f}
.go-btn:active{transform:translateY(2px);box-shadow:0 2px 0 #b7a77f}
.pill{font:700 12px/1 var(--font-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--cream);background:transparent;border:1px solid #f3e6c859;border-radius:999px;padding:10px 14px;cursor:pointer}
.link{font:700 12px/1 var(--font-ui);letter-spacing:.12em;text-transform:uppercase;color:var(--mute);background:none;border:0;padding:10px;cursor:pointer;text-decoration:none}
.link:hover{color:var(--cream)}
.row{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.stat{margin:0;font-size:15px;color:var(--mute)}
.stat b{color:var(--cream);font-size:22px;margin-left:6px}
.msg{margin:0;min-height:1.3em;font-size:13px;color:var(--laser);max-width:32ch}
.rows{list-style:none;margin:0;padding:0;width:100%;max-width:300px;display:grid;gap:4px;font-size:13px;text-align:left}
.rows li{display:grid;grid-template-columns:34px 1fr 28px auto;gap:6px;padding:6px 9px;border-radius:8px;background:#f3e6c80f}
.rows li.me{background:#6ee7d029;outline:1px solid #6ee7d080}
.rows li.gap{display:block;text-align:center;opacity:.5;padding:0;background:none}
.rows .rk{color:var(--mute)}.rows .cc{color:var(--mute);font-size:11px}
.hud{position:absolute;left:0;right:0;top:0;display:flex;justify-content:space-between;align-items:center;padding:10px 12px;font:700 14px/1 var(--font-ui);pointer-events:none;text-shadow:0 1px 3px #000}
.hud b{font-size:18px;color:var(--cream)}
.mute{position:absolute;right:8px;top:36px;z-index:3;font-size:11px}
a{color:var(--laser)}
.small{font-size:11.5px;color:var(--mute);margin:0;max-width:34ch}
.rows li.empty{display:block;text-align:center;color:var(--mute)}
.rows .sc{text-align:right;font-weight:700}
.rows li{grid-template-columns:34px 1fr 28px auto}
.pilot{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
