:root{--bg: #0b0a09;--bg-2: #15110e;--panel: #17120f;--line: #2d241d;--text: #efe8dd;--muted: #8f857b;--rust: #b8461f;--rust-hi: #e0612f;--rust-dark: #6e2810;--blood: #9e0d0c;--bad: #ff6b4a;--me: #8a8a8a;--me-rgb: 138, 138, 138;--head: Impact, Haettenschweiler, "Arial Narrow Bold", "HelveticaNeue-CondensedBlack", "Avenir Next Condensed", "Arial Narrow", "sans-serif-condensed", "Roboto Condensed", sans-serif;--body: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--st: env(safe-area-inset-top, 0px);--sr: env(safe-area-inset-right, 0px);--sb: env(safe-area-inset-bottom, 0px);--sl: env(safe-area-inset-left, 0px);color-scheme:dark}html,body{margin:0;padding:0;position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;height:100dvh;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;overscroll-behavior:none;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{background:radial-gradient(ellipse at 50% 35%,#1a1410 0%,var(--bg) 55%,#040303 100%);background-color:var(--bg);color:var(--text);font-family:var(--body);font-size:18px;line-height:1.3}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:100;background:repeating-linear-gradient(0deg,rgba(255,255,255,.018) 0 1px,transparent 1px 3px);mix-blend-mode:overlay}button{font:inherit;color:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}button:focus{outline:none}button:focus-visible{outline:3px solid var(--rust-hi);outline-offset:3px}#app{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden}.view{position:absolute;top:0;right:0;bottom:0;left:0;box-sizing:border-box;display:flex;flex-direction:column;padding:max(18px,var(--st)) max(16px,var(--sr)) max(16px,var(--sb)) max(16px,var(--sl))}.scrollable{overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y}.hazard{position:absolute;top:0;left:0;right:0;height:6px;background:repeating-linear-gradient(-45deg,var(--rust) 0 12px,#0f0c0a 12px 24px);opacity:.85;pointer-events:none}.kicker{margin:0 0 6px;font-family:var(--head);font-size:15px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}.sub{margin:10px 0 0;font-size:16px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.btn{display:block;width:100%;border:0;border-radius:4px;font-family:var(--head);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;touch-action:manipulation}.btn-primary{margin-top:18px;padding:18px 16px 16px;font-size:28px;color:#fff;background:linear-gradient(180deg,var(--rust-hi),var(--rust) 60%);box-shadow:0 6px 0 var(--rust-dark),0 10px 22px #0009;text-shadow:0 2px 0 rgba(0,0,0,.35);transition:transform .06s,box-shadow .06s}.btn-primary:active:not(:disabled){transform:translateY(4px);box-shadow:0 2px 0 var(--rust-dark),0 4px 10px #0009}.btn-primary:disabled{color:#7d7168;background:#3a302a;box-shadow:0 6px #1f1915;text-shadow:none;cursor:default}.banner{position:fixed;top:0;left:0;right:0;z-index:90;padding:calc(6px + var(--st)) 12px 6px;background:var(--rust);color:#fff;font-size:14px;font-weight:800;letter-spacing:.06em;text-align:center;text-transform:uppercase;box-shadow:0 2px 12px #0009;pointer-events:none;animation:blink 1.2s ease-in-out infinite}.banner[hidden]{display:none}.view-join{align-items:center}.join-head,.join-form{width:100%;max-width:440px}.logo{margin:14px 0 0;font-family:var(--head);font-size:clamp(44px,14vw,68px);font-weight:900;line-height:.95;letter-spacing:.03em;color:var(--text);text-shadow:3px 3px 0 var(--rust-dark),6px 6px 0 rgba(0,0,0,.6)}.tagline{margin:6px 0 10px;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.join-form{padding-bottom:24px}.join-form input{user-select:text;-webkit-user-select:text;-webkit-touch-callout:default;touch-action:manipulation}.label{display:block;margin:16px 0 6px;font-family:var(--head);font-size:15px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.field{display:block;width:100%;box-sizing:border-box;padding:14px 16px;font-family:var(--body);font-size:22px;font-weight:700;color:var(--text);background:#050404;border:2px solid var(--line);border-radius:4px;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.field::placeholder{color:#4a413a}.field:focus{border-color:var(--rust-hi);box-shadow:0 0 0 3px #b8461f4d}.field-code{padding:8px 0 8px .45em;font-family:var(--head);font-size:44px;font-weight:400;letter-spacing:.45em;text-align:center;text-transform:uppercase}.join-info{min-height:1.3em;margin:6px 0 0;font-size:14px;color:var(--muted)}.join-info.bad{color:var(--bad);font-weight:700}.swatches{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.swatch{position:relative;height:64px;padding:0;overflow:hidden;border:3px solid transparent;border-radius:4px;background:var(--c);font-family:var(--head);font-size:19px;letter-spacing:.06em;text-transform:uppercase;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.8),0 0 6px rgba(0,0,0,.4);box-shadow:inset 0 -5px #00000040;cursor:pointer;touch-action:manipulation;transition:transform .08s}.swatch.selected{border-color:#fff;box-shadow:0 0 0 3px var(--bg),0 0 0 6px var(--c),inset 0 -5px #00000040;transform:scale(1.04)}.swatch.selected:after{content:"✓";position:absolute;top:2px;right:7px;font-family:var(--body);font-size:18px;font-weight:900}.swatch.taken{opacity:.32;filter:grayscale(.7);cursor:not-allowed}.swatch.taken:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top right,transparent calc(50% - 2px),#fff calc(50% - 2px),#fff calc(50% + 2px),transparent calc(50% + 2px))}.swatch.taken .swatch-label{text-decoration:line-through;text-decoration-thickness:3px}.join-msg{min-height:1.3em;margin:14px 0 0;font-weight:800;color:var(--bad)}.join-msg.on{animation:shake .3s}.lobby-grid{display:grid;grid-template-columns:1fr;gap:22px;width:100%;max-width:920px;margin:auto}@media(orientation:landscape)and (min-width:560px){.lobby-grid{grid-template-columns:1fr 1fr;align-items:center}}.me-name{margin:0;font-family:var(--head);font-size:clamp(46px,13vw,92px);font-weight:900;line-height:.95;letter-spacing:.02em;color:var(--c);overflow-wrap:anywhere;text-shadow:0 0 28px rgba(0,0,0,.9),4px 4px 0 rgba(0,0,0,.7)}.lobby-action{margin-top:6px}.btn-start{padding:24px 16px 22px;font-size:34px}.hint{margin:12px 0 0;font-size:14px;letter-spacing:.12em;text-align:center;text-transform:uppercase;color:var(--muted)}.wait{margin:10px 0 0;font-family:var(--head);font-size:28px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);animation:pulse 2.2s ease-in-out infinite}.roster{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none}.roster-item{display:flex;align-items:center;gap:12px;min-height:46px;padding:6px 12px;box-sizing:border-box;background:var(--panel);border-left:6px solid var(--c);font-size:20px;font-weight:800}.roster-item .dot{flex:none;width:14px;height:14px;border-radius:50%;background:var(--c)}.roster-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.roster-item.you{background:linear-gradient(90deg,rgba(var(--me-rgb),.18),var(--panel) 70%)}.roster-item.offline{opacity:.38;filter:grayscale(1)}.tag{flex:none;margin-left:auto;padding:3px 6px 2px;font-family:var(--head);font-size:12px;font-weight:400;letter-spacing:.12em;text-transform:uppercase;color:var(--rust-hi);border:1px solid var(--rust)}.tag+.tag{margin-left:6px}.tag-off{color:var(--muted);border-color:var(--muted)}.view-status{align-items:center;justify-content:center;text-align:center}.huge{margin:0;font-family:var(--head);font-size:clamp(48px,11vmin + 4vw,128px);font-weight:900;line-height:1;letter-spacing:.02em;text-transform:uppercase;text-shadow:4px 4px 0 var(--rust-dark),8px 8px 0 rgba(0,0,0,.55);animation:slam .4s cubic-bezier(.2,1.5,.4,1)}.big{margin:10px 0 0;font-family:var(--head);font-size:clamp(28px,7vmin + 1vw,60px);font-weight:900;letter-spacing:.03em;text-transform:uppercase}.view-status .kicker{font-size:20px}.view-scores .big,.view-final .big{color:var(--rust-hi)}.view-final.winner .huge{color:#f5c211}.view-dead{color:#fff;background:radial-gradient(ellipse at 50% 40%,#c4100e 0%,var(--blood) 45%,#3d0303 100%);animation:flash .5s ease-out}.platt{margin:0;font-family:var(--head);font-size:clamp(96px,26vmin + 8vw,260px);font-weight:900;line-height:.9;letter-spacing:.04em;text-shadow:6px 6px 0 rgba(0,0,0,.5),0 0 40px rgba(0,0,0,.5);animation:slam .35s cubic-bezier(.2,1.7,.4,1)}.dead-left{color:#ffe1d6;text-transform:none}.dead-text{margin:.4em 0 0;color:#fff3e6}.view-dead.good{color:#1b1408;background:radial-gradient(ellipse at 50% 40%,#ffd76a,#e0a02a 45%,#6b4508)}.view-dead.good .dead-left,.view-dead.good .dead-text{color:#2a1d06}.view-pad{flex-direction:row;padding:0;background:radial-gradient(ellipse at 22% 55%,rgba(var(--me-rgb),.24),transparent 62%),radial-gradient(ellipse at 82% 62%,rgba(var(--me-rgb),.12),transparent 58%),var(--bg);box-shadow:inset 0 0 0 4px rgba(var(--me-rgb),.35),inset 0 0 90px #000000d9}.stick-zone{position:relative;flex:0 0 50%;height:100%;touch-action:none;border-right:2px dashed rgba(255,255,255,.05)}.stick-hint{position:absolute;left:50%;top:56%;width:120px;height:120px;margin:-60px 0 0 -60px;display:grid;place-items:center;border:2px dashed rgba(var(--me-rgb),.55);border-radius:50%;font-family:var(--head);font-size:16px;letter-spacing:.18em;color:#ffffff59;pointer-events:none;transition:opacity .15s}.stick-zone.active .stick-hint{opacity:0}.stick-base{position:absolute;width:120px;height:120px;margin:-60px 0 0 -60px;border:3px solid rgba(var(--me-rgb),.85);border-radius:50%;background:#0006;box-shadow:inset 0 0 22px rgba(var(--me-rgb),.35),0 0 24px #0009;opacity:0;pointer-events:none}.stick-base.on{opacity:1}.stick-knob{position:absolute;left:50%;top:50%;width:66px;height:66px;border-radius:50%;background:radial-gradient(circle at 38% 32%,rgba(255,255,255,.45),transparent 45%),var(--me);box-shadow:0 5px #0000008c,inset 0 -6px #00000040;transform:translate(-50%,-50%)}.pad-buttons{position:relative;flex:1;height:100%}.pad-btn{--s: 120px;position:absolute;width:var(--s);height:var(--s);padding:0;display:grid;place-items:center;overflow:hidden;border:0;border-radius:50%;font-family:var(--head);font-size:min(calc(var(--s) * .15),calc(var(--s) * 1.25 / var(--chars, 8)));letter-spacing:.06em;color:#fff;text-shadow:0 2px 0 rgba(0,0,0,.45);touch-action:none;cursor:pointer;transition:transform .05s,filter .15s}.pad-btn-push{--s: min(46vh, 25vw);right:max(6%,var(--sr));bottom:max(8%,var(--sb));background:radial-gradient(circle at 36% 30%,var(--rust-hi),var(--rust) 52%,var(--rust-dark) 100%);box-shadow:0 8px #3d150a,0 0 0 4px #000000b3,0 0 0 8px rgba(var(--me-rgb),.55),0 14px 30px #000000b3}.pad-btn-dash{--s: min(36vh, 19vw);left:6%;top:max(9%,var(--st));background:radial-gradient(circle at 36% 30%,#7d736a,#4a423c 52%,#221d19);box-shadow:0 7px #120f0d,0 0 0 4px #000000b3,0 0 0 7px rgba(var(--me-rgb),.4),0 12px 26px #000000b3}.pad-btn-label{position:relative;z-index:1;pointer-events:none}.pad-btn.pressed{transform:translateY(6px) scale(.95);filter:brightness(1.3)}.pad-btn-push.pressed{box-shadow:0 2px #3d150a,0 0 0 4px #000000b3,0 0 0 8px rgba(var(--me-rgb),.9),0 0 40px #e0612f99}.pad-btn-dash.pressed{box-shadow:0 1px #120f0d,0 0 0 4px #000000b3,0 0 0 7px rgba(var(--me-rgb),.9),0 0 36px #ffffff40}.pad-btn-cd{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:conic-gradient(transparent calc(360deg - var(--cd, 0deg)),#000000b8 0);pointer-events:none}.pad-btn:not(.cooling) .pad-btn-cd{display:none}.pad-btn.cooling{filter:saturate(.3) brightness(.65)}.pad-btn.cooling.pressed{filter:saturate(.3) brightness(.8)}.pad-btn.ready{animation:ready .35s ease-out}.intro-title{color:var(--rust-hi)}.view-hold{--hold-bg: #121110;--hold-fg: var(--text);--ring: rgba(255, 255, 255, .22);align-items:center;justify-content:center;text-align:center;touch-action:none;color:var(--hold-fg);background:var(--hold-bg);transition:background-color .15s}.hazard-bottom{top:auto;bottom:0}.hold-body{display:flex;flex-direction:column;align-items:center;gap:clamp(8px,2.5vmin,20px);max-width:100%;pointer-events:none}.hold-target{width:clamp(84px,30vmin,220px);height:clamp(84px,30vmin,220px);border:3px dashed var(--ring);border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 7px,var(--ring) 7px 9px);transition:transform .12s,background-color .12s}.hold-title{margin:0;font-family:var(--head);font-size:min(clamp(44px,10vmin + 4vw,140px),calc((100vw - 48px) * 1.6 / var(--chars, 8)));font-weight:900;line-height:.95;letter-spacing:.03em;text-transform:uppercase;overflow-wrap:anywhere;text-shadow:4px 4px 0 rgba(0,0,0,.55)}.hold-sub{margin:0;font-size:clamp(15px,2.4vmin + .8vw,26px);font-weight:800;letter-spacing:.12em;text-transform:uppercase;opacity:.85}.view-hold.tone-in .hold-title{animation:slam .3s cubic-bezier(.2,1.5,.4,1)}.view-hold[data-tone=wait]{--hold-fg: #6f665e;--ring: rgba(255, 255, 255, .08)}.view-hold[data-tone=wait] .hold-title{font-size:min(clamp(30px,6vmin + 2.5vw,72px),calc((100vw - 48px) * 1.6 / var(--chars, 8)));text-shadow:none}.view-hold[data-tone=wait] .hazard,.view-hold[data-tone=out] .hazard{filter:grayscale(1);opacity:.35}.view-hold[data-tone=ready]{--hold-bg: var(--bg);--ring: rgba(224, 97, 47, .55);animation:hold-pulse .9s ease-in-out infinite}.view-hold[data-tone=ready] .hold-title{text-shadow:4px 4px 0 var(--rust-dark),0 0 30px rgba(224,40,20,.55)}.view-hold[data-tone=ready] .hold-target{animation:target-beat .9s ease-in-out infinite}.view-hold[data-tone=primed]{--hold-bg: #2a0806;--ring: rgba(255, 120, 90, .7);animation:hold-pulse 1.6s ease-in-out infinite}.view-hold[data-tone=holding]{--hold-bg: #4a0605;--ring: rgba(255, 140, 110, .75);background:radial-gradient(ellipse at 50% 45%,#6e0a08 0%,var(--hold-bg) 50%,#1c0201 100%);box-shadow:inset 0 0 0 8px #b3120f,inset 0 0 90px #000000b3}.view-hold[data-tone=primed] .hold-target,.view-hold[data-tone=holding] .hold-target{border-style:solid;background-color:rgba(var(--me-rgb),.55);transform:scale(.94)}.view-hold[data-tone=holding] .hold-title{animation:tremble .14s linear infinite}.view-hold[data-tone=out]{--hold-bg: #1a1817;--hold-fg: #8a817a;--ring: rgba(255, 255, 255, .1)}.view-hold[data-tone=out] .hold-title{text-shadow:none}.view-hold[data-tone=chopped]{--hold-fg: #fff;--ring: rgba(0, 0, 0, .35);background:radial-gradient(ellipse at 50% 40%,#c4100e 0%,var(--blood) 45%,#3d0303 100%)}.view-hold.tone-in[data-tone=chopped]{animation:flash .5s ease-out}.view-hold[data-tone=chopped] .hold-title{font-size:min(clamp(64px,16vmin + 6vw,220px),calc((100vw - 48px) * 1.6 / var(--chars, 8)));text-shadow:6px 6px 0 rgba(0,0,0,.5),0 0 40px rgba(0,0,0,.5)}.view-hold[data-tone=chopped] .hold-target{display:none}@media(max-height:480px){.hold-target{width:24vmin;height:24vmin}}.view-hold[data-tone=safe]{--hold-fg: #1d1712;--ring: rgba(60, 45, 35, .3);background:radial-gradient(ellipse at 50% 40%,#f4ecdb,#e3d6bb 55%,#b9a888)}.view-hold[data-tone=safe] .hold-title{text-shadow:3px 3px 0 rgba(110,40,16,.35)}@keyframes hold-pulse{0%,to{box-shadow:inset 0 0 0 5px #e02a14d9,inset 0 0 50px #e0281459}50%{box-shadow:inset 0 0 0 14px #e02a14,inset 0 0 130px #e02814b3}}@keyframes target-beat{50%{transform:scale(1.08)}}@keyframes tremble{25%{transform:translate(1px,-1px)}50%{transform:translate(-1px,1px)}75%{transform:translate(1px,1px)}}.roster-item.bot{background:repeating-linear-gradient(-45deg,var(--panel) 0 10px,#1c1612 10px 20px)}.tag-bot{color:var(--muted);border-color:#4a3f37}.bots{margin-top:18px;padding:12px;border:1px solid var(--line);background:#0000004d}.bots-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.bots-label{font-family:var(--head);font-size:16px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.stepper{display:flex;align-items:center;gap:10px}.step{width:52px;height:52px;padding:0;border:2px solid var(--rust);border-radius:4px;background:#0d0a08;font-family:var(--head);font-size:30px;line-height:1;color:var(--text);cursor:pointer;touch-action:manipulation}.step:active:not(:disabled){background:var(--rust)}.step:disabled{opacity:.3;cursor:default}.step-count{min-width:1.4em;font-family:var(--head);font-size:34px;text-align:center}.levels{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:12px}.level{min-height:48px;padding:10px 2px 8px;border:2px solid var(--line);border-radius:4px;background:#0d0a08;font-family:var(--head);font-size:14px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);cursor:pointer;touch-action:manipulation}.level.on{color:#fff;background:var(--rust);border-color:var(--rust-hi);box-shadow:0 3px 0 var(--rust-dark)}.level-desc{margin:8px 0 0;font-size:14px;color:var(--muted)}.view-vote{gap:12px;padding:max(16px,var(--st)) max(14px,var(--sr)) max(14px,var(--sb)) max(14px,var(--sl))}.vote-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.vote-titles{min-width:0}.vote-heading{margin:0;font-family:var(--head);font-size:clamp(34px,7vmin + 2vw,72px);font-weight:900;line-height:.95;letter-spacing:.02em;text-transform:uppercase;text-shadow:3px 3px 0 var(--rust-dark),6px 6px 0 rgba(0,0,0,.5)}.vote-note{margin:6px 0 0;font-size:15px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--rust-hi)}.vote-countdown{flex:none;min-width:2.6em;margin:0;font-family:var(--head);font-size:clamp(30px,6vmin + 1vw,56px);line-height:1;text-align:right;font-variant-numeric:tabular-nums}.vote-countdown.urgent{color:var(--bad);animation:blink .5s ease-in-out infinite}.vote-grid{flex:1;min-height:0;display:grid;grid-template-columns:repeat(2,1fr);grid-auto-rows:1fr;gap:10px}.vote-grid[data-count="1"]{grid-template-columns:1fr}@media(orientation:landscape){.vote-grid{grid-template-columns:repeat(3,1fr)}.vote-grid[data-count="2"]{grid-template-columns:repeat(2,1fr)}.vote-grid[data-count="4"]{grid-template-columns:repeat(4,1fr)}}.vote-option{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:0;padding:8px 8px 22px;overflow:hidden;border:3px solid transparent;border-left:10px solid var(--c);border-radius:6px;background:linear-gradient(180deg,#ffffff0d,#0000004d),var(--panel);box-shadow:inset 0 -6px #00000059;color:var(--text);cursor:pointer;touch-action:manipulation;transition:transform .06s,opacity .2s,filter .2s}.vote-option:active:not(:disabled){transform:scale(.97)}.vote-number{font-family:var(--head);font-size:clamp(40px,9vmin + 2vw,100px);line-height:.9;color:var(--c);text-shadow:3px 3px 0 rgba(0,0,0,.6)}.vote-name{max-width:100%;overflow:hidden;font-family:var(--head);font-size:clamp(16px,2.5vmin + 1vw,26px);letter-spacing:.06em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.vote-you{position:absolute;top:6px;right:8px;padding:2px 5px 1px;border:1px solid currentColor;font-family:var(--head);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.vote-mark{position:absolute;left:0;right:0;bottom:0;display:none;padding:4px 0 3px;font-family:var(--head);font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:#111;background:#fff}.vote-option.picked{border-color:#fff;background:linear-gradient(180deg,#ffffff2e,#00000059),var(--c);box-shadow:0 0 0 3px var(--bg),0 0 0 6px #fff,0 0 30px #ffffff40}.vote-option.picked .vote-number{color:#fff}.vote-option.picked .vote-name,.vote-option.picked .vote-you{color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.8)}.vote-option.picked .vote-mark{display:block}.vote-option:disabled{opacity:.32;filter:grayscale(.8);cursor:default}.vote-option.picked:disabled{opacity:.9;filter:none}.view-vote[data-mode=wait]{align-items:center;justify-content:center;text-align:center}.vote-countdown:empty,.view-vote[data-mode=wait] .vote-grid{display:none}.view-vote[data-mode=wait] .vote-head{justify-content:center}.view-vote[data-mode=wait] .vote-heading{font-size:clamp(30px,6vmin + 2.5vw,64px);color:var(--muted);text-shadow:none;animation:pulse 2.2s ease-in-out infinite}.view-vote[data-mode=closed] .vote-heading{font-size:clamp(40px,9vmin + 3vw,96px);color:#fff;animation:slam .35s cubic-bezier(.2,1.5,.4,1)}.view-hold[data-tone=free] .hazard,.view-hold[data-tone=free-held] .hazard{background:repeating-linear-gradient(-45deg,#f5c211 0,#f5c211 12px,#0f0c0a 12px,#0f0c0a 24px)}.view-hold[data-tone=free]{--hold-bg: #15110a;--ring: rgba(245, 194, 17, .5);background:radial-gradient(ellipse at 50% 40%,#2a2108 0%,var(--hold-bg) 60%,#070604 100%)}.view-hold[data-tone=free] .hold-title{color:#f5c211;text-shadow:4px 4px 0 rgba(0,0,0,.6),0 0 26px rgba(245,194,17,.35)}.view-hold[data-tone=free] .hold-target{animation:target-beat 1.6s ease-in-out infinite}.view-hold[data-tone=free-held]{--hold-fg: #1a1205;--ring: rgba(60, 35, 0, .45);background:radial-gradient(ellipse at 50% 45%,#ffd54a,#f5a511,#8a4b05)}.view-hold[data-tone=free-held] .hold-title{text-shadow:3px 3px 0 rgba(255,255,255,.3)}.view-hold[data-tone=free-held] .hold-target{border-style:solid;background-color:rgba(var(--me-rgb),.65);transform:scale(.94)}.view-two{padding:max(16px,var(--st)) max(12px,var(--sr)) max(12px,var(--sb)) max(12px,var(--sl));background:radial-gradient(ellipse at 50% 50%,rgba(var(--me-rgb),.16),transparent 65%),var(--bg)}.two-grid{flex:1;min-height:0;display:grid;grid-template-columns:1fr 1fr;gap:14px}.pad-btn.two-btn{position:relative;width:auto;height:auto;border-radius:22px;padding:8px;font-size:min(clamp(28px,6vmin + 3vw,84px),calc((50vw - 44px) * 1.6 / var(--chars, 6)));line-height:1;overflow-wrap:anywhere}.two-btn .pad-btn-cd{border-radius:inherit}.two-btn-left{background:radial-gradient(ellipse at 40% 30%,var(--rust-hi),var(--rust) 55%,var(--rust-dark) 100%);box-shadow:0 8px #3d150a,0 0 0 4px #000000b3,0 0 0 7px rgba(var(--me-rgb),.5),0 14px 30px #000000b3}.two-btn-right{background:radial-gradient(ellipse at 40% 30%,#7d736a,#4a423c 55%,#221d19);box-shadow:0 8px #120f0d,0 0 0 4px #000000b3,0 0 0 7px rgba(var(--me-rgb),.5),0 14px 30px #000000b3}.pad-btn.two-btn.pressed{transform:translateY(6px) scale(.98)}.two-btn-left.pressed{box-shadow:0 2px #3d150a,0 0 0 4px #000000b3,0 0 0 7px rgba(var(--me-rgb),.95),0 0 44px #e0612f99}.two-btn-right.pressed{box-shadow:0 2px #120f0d,0 0 0 4px #000000b3,0 0 0 7px rgba(var(--me-rgb),.95),0 0 40px #ffffff40}.rounds-info{display:inline-block;margin:10px 0 0;padding:4px 8px 3px;border:1px solid var(--rust);font-family:var(--head);font-size:16px;letter-spacing:.14em;text-transform:uppercase;color:var(--rust-hi)}.settings-block+.settings-block{margin-top:14px;padding-top:12px;border-top:1px dashed var(--line)}.levels.rounds{margin-top:8px}.levels.rounds .level{font-size:22px}.view-keypad{padding:max(16px,var(--st)) max(12px,var(--sr)) max(12px,var(--sb)) max(12px,var(--sl))}.keypad-grid{flex:1;min-height:0;display:grid;grid-template-columns:repeat(var(--cols-p, 2),1fr);grid-auto-rows:1fr;gap:12px}.keypad-grid>.key:last-child{grid-column:span var(--span-p, 1)}@media(orientation:landscape){.keypad-grid{grid-template-columns:repeat(var(--cols-l, 4),1fr)}.keypad-grid>.key:last-child{grid-column:span var(--span-l, 1)}}.key{position:relative;min-height:0;padding:6px;overflow:hidden;border:0;border-radius:18px;background-color:var(--k);background-image:radial-gradient(ellipse at 35% 25%,rgba(255,255,255,.28),transparent 55%),linear-gradient(180deg,transparent 55%,rgba(0,0,0,.3));box-shadow:inset 0 -8px #0000004d,0 6px #0000008c,0 0 0 3px #0009;font-family:var(--head);font-size:min(clamp(26px,8vmin + 3vw,80px),calc((100vw - 60px) / var(--cols-p, 2) * 1.5 / var(--chars, 4)));letter-spacing:.06em;text-transform:uppercase;cursor:pointer;touch-action:none;transition:transform .05s}@media(orientation:landscape){.key{font-size:min(clamp(26px,8vmin + 3vw,80px),calc((100vw - 60px) / var(--cols-l, 4) * 1.5 / var(--chars, 4)))}}.key-label{position:relative;pointer-events:none;text-shadow:0 2px 0 rgba(0,0,0,.25)}.key.pressed{transform:translateY(5px) scale(.98);box-shadow:inset 0 -3px #0000004d,0 1px #0000008c,0 0 0 3px #ffffffd9}.key.lit{animation:key-lit .22s ease-out}@keyframes key-lit{0%{filter:brightness(1.9) saturate(1.2);box-shadow:inset 0 -3px #0000004d,0 0 0 3px #fff,0 0 40px var(--k)}to{filter:brightness(1)}}.view-trace{padding:0;background:repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0 1px,transparent 1px 3px),radial-gradient(ellipse at 50% 45%,#1d1e21,#101113 60%,#070708)}.trace-head{position:absolute;top:0;left:0;right:0;height:44px;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:max(10px,var(--st)) max(14px,var(--sr)) 0 max(14px,var(--sl));pointer-events:none}.trace-hint{min-width:0;margin:0;overflow:hidden;font-size:15px;font-weight:800;letter-spacing:.08em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;color:var(--text)}.trace-percent{flex:none;margin:0;font-family:var(--head);font-size:22px;color:#ff8a1f;text-shadow:0 0 12px rgba(255,138,31,.6);font-variant-numeric:tabular-nums}.trace-stage{position:absolute;top:44px;left:max(0px,var(--sl));right:max(0px,var(--sr));bottom:max(0px,var(--sb))}.trace-canvas{display:block;width:100%;height:100%;touch-action:none}.meter{position:fixed;top:calc(var(--st) + 8px);left:50%;z-index:70;width:132px;padding:6px 8px 5px;box-sizing:border-box;transform:translate(-50%);border:2px solid #3a332d;border-radius:10px;background:linear-gradient(180deg,#1d1915,#0d0b09);box-shadow:0 6px 18px #000000b3,inset 0 1px #ffffff0f;pointer-events:none}.meter[hidden]{display:none}.meter-dial{display:block;width:100%;height:auto}.meter-zone{fill:none;stroke-width:6}.meter-zone-low{stroke:#4d6b2c}.meter-zone-mid{stroke:#c2901a}.meter-zone-high{stroke:#c4291c}.meter-tick{stroke:#efe8dd8c;stroke-width:1.4}.meter-needle{stroke:#ff8a1f;stroke-width:2.6;stroke-linecap:round;transform-origin:60px 60px;transition:transform .12s ease-out;filter:drop-shadow(0 0 2px rgba(255,138,31,.8))}.meter-hub{fill:#efe8dd}.meter-head{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:1px}.meter-led{flex:none;width:8px;height:8px;border-radius:50%;background:#3b120c;box-shadow:inset 0 0 2px #000c}.meter-led.blink{animation:led-blink .09s linear}@keyframes led-blink{0%,60%{background:#ff5a2a;box-shadow:0 0 8px #ff5a2a,0 0 2px #fff}to{background:#3b120c}}.meter-label{overflow:hidden;font-family:var(--head);font-size:13px;letter-spacing:.14em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;color:var(--muted)}@media(orientation:portrait){body.has-meter .view-keypad,body.has-meter .view-two,body.has-meter .view-vote{padding-top:calc(max(16px,var(--st)) + 96px)}body.has-meter .trace-stage{top:128px}body.has-meter .trace-hint{max-width:calc(50% - 82px);white-space:normal}}@media(orientation:landscape){.meter{top:50%;left:max(6px,var(--sl));width:100px;padding:4px 6px 3px;transform:translateY(-50%)}.meter-label{font-size:11px}body.has-meter .view-keypad,body.has-meter .view-two,body.has-meter .view-vote{padding-left:calc(max(12px,var(--sl)) + 108px)}}.pad .pad-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px;box-sizing:border-box;padding:max(10px,var(--st)) max(10px,var(--sr)) max(10px,var(--sb)) 4px}.pad .pad-btn{--s: min(46vh, 22vw);position:relative;inset:auto;width:auto;height:auto;border-radius:24px;font-size:min(clamp(20px,4vmin + 2vw,46px),calc((25vw - 24px) * 1.5 / var(--chars, 8)));line-height:1}.pad .pad-btn-push,.pad .pad-btn-dash{inset:auto}.pad .pad-btn-push.pressed,.pad .pad-btn-dash.pressed{transform:translateY(5px) scale(.98)}.pad-btn .pad-btn-cd{border-radius:inherit}.pad .stick-zone{padding-left:var(--sl);box-sizing:border-box}.view-two{padding:max(10px,var(--st)) max(8px,var(--sr)) max(8px,var(--sb)) max(8px,var(--sl))}.two-grid{gap:10px}.portrait{position:relative;display:inline-block;flex:none;overflow:hidden;border-radius:10px;background:radial-gradient(ellipse at 50% 30%,#2b241e,#120f0c 75%);box-shadow:inset 0 0 0 1px #ffffff0f}.portrait-sm{width:30px;height:30px;border-radius:7px}.portrait-md{width:100%;aspect-ratio:1}.portrait-lg{width:72px;height:72px;border-radius:12px}.portrait-sil{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.sil-body{fill:var(--c, #8f857b);stroke:#00000059;stroke-width:1.5}.sil-shade{filter:brightness(.75)}.sil-dark{fill:#1b1611}.sil-helmet{fill:#f5c211;stroke:#00000059;stroke-width:1}.sil-badge{fill:#c9a227}.portrait-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .2s}.portrait-img.loaded{opacity:1}.char-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:10px}.char-grid.compact{grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:8px}.char-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:6px 6px 8px;border:3px solid transparent;border-radius:12px;background:var(--panel);color:var(--muted);cursor:pointer;touch-action:manipulation;transition:transform .08s,border-color .15s}.char-card .portrait{width:100%;height:auto;aspect-ratio:1}.char-name{max-width:100%;overflow:hidden;font-family:var(--head);font-size:14px;letter-spacing:.06em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.char-grid.compact .char-name{font-size:12px}.char-card.selected{border-color:var(--c, var(--rust-hi));color:var(--text);background:linear-gradient(180deg,color-mix(in srgb,var(--c, #b8461f) 22%,transparent),var(--panel));box-shadow:0 0 18px #0009,0 0 0 2px #0009;transform:translateY(-2px)}.char-card:active{transform:scale(.97)}.char-lock{display:none}.char-card{position:relative}.char-card.locked{cursor:not-allowed}.char-card.locked .portrait{filter:grayscale(1) brightness(.45)}.char-card.locked .char-name{color:#5d544c}.char-card.locked .char-lock{position:absolute;top:8px;left:50%;display:flex;flex-direction:column;align-items:center;gap:2px;transform:translate(-50%);pointer-events:none}.char-card.locked .char-lock:before{content:"";width:22px;height:24px;background:center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 24'%3E%3Cpath d='M6 10V7a5 5 0 0 1 10 0v3' fill='none' stroke='%23efe8dd' stroke-width='2.4'/%3E%3Crect x='2' y='10' width='18' height='13' rx='2.5' fill='%23efe8dd'/%3E%3Crect x='10' y='14' width='2' height='5' rx='1' fill='%231b1611'/%3E%3C/svg%3E")}.char-price{padding:1px 6px 0;border-radius:4px;background:#b8461fe6;font-family:var(--head);font-size:12px;letter-spacing:.05em;color:#fff}.char-grid.compact .char-card.locked .char-lock:before{width:16px;height:18px}.char-grid.compact .char-price{font-size:11px}.shop-slot{margin-top:14px}.shop-open{display:flex;align-items:center;gap:10px;width:100%;min-height:52px;padding:10px 14px 8px;border:2px solid #c9a227;border-radius:8px;background:linear-gradient(90deg,#c9a2272e,#0d0a08 70%);color:var(--text);cursor:pointer;touch-action:manipulation}.shop-open-label{font-family:var(--head);font-size:19px;letter-spacing:.08em;text-transform:uppercase}.shop-wallet{font-family:var(--head);font-size:20px;color:#ffd34a}.code-suggest{display:inline-block;margin:8px 0 0;padding:6px 12px 5px;border:1px dashed var(--rust);border-radius:999px;background:#b8461f1f;font-family:var(--head);font-size:15px;letter-spacing:.1em;text-transform:uppercase;color:var(--rust-hi);cursor:pointer;touch-action:manipulation}.code-suggest[hidden]{display:none}.me-row{display:flex;align-items:center;gap:14px}.me-text{min-width:0}.me-row .portrait-lg{box-shadow:0 0 0 3px var(--c),0 6px 18px #000000b3}.roster-item .portrait-sm{box-shadow:0 0 0 2px var(--c)}.char-block{margin-top:18px}.char-block .bots-label{display:block;margin-bottom:8px}.lobby-extras{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.btn-ghost{width:auto;flex:1 1 auto;min-height:46px;padding:10px 14px 8px;font-size:17px;color:var(--text);background:#14100d;border:2px solid var(--line)}.btn-ghost:active{border-color:var(--rust-hi)}.btn-install{border-color:var(--rust);color:var(--rust-hi)}.modes{display:grid;gap:6px;margin-top:8px}.mode{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:9px 12px 8px;border:2px solid var(--line);border-radius:6px;background:#0d0a08;color:var(--muted);text-align:left;cursor:pointer;touch-action:manipulation}.mode-name{font-family:var(--head);font-size:18px;letter-spacing:.06em;text-transform:uppercase}.mode-text{font-size:13px;line-height:1.25}.mode.on{border-color:var(--rust-hi);background:linear-gradient(90deg,#b8461f59,#0d0a08);color:var(--text)}.deck-open{display:flex;align-items:center;gap:10px;width:100%;min-height:52px;padding:10px 14px 8px;border:2px solid var(--rust);border-radius:6px;background:#0d0a08;color:var(--text);cursor:pointer;touch-action:manipulation}.deck-open-label{font-family:var(--head);font-size:18px;letter-spacing:.08em;text-transform:uppercase}.deck-open-count{font-family:var(--head);font-size:22px;color:var(--rust-hi)}.deck-open-go{margin-left:auto;font-size:28px;line-height:1;color:var(--muted)}.levels.rounds.locked .level{opacity:.35}.label-note{margin-left:6px;font-family:var(--body);font-size:12px;letter-spacing:.04em;text-transform:none;color:var(--rust-hi)}.levels.teams{grid-template-columns:repeat(3,1fr)}.levels.teams .level{font-size:13px;line-height:1.1;padding:8px 4px 6px}.switch-row{display:flex;align-items:center;gap:12px;width:100%;min-height:52px;margin-top:8px;padding:8px 12px;border:2px solid var(--line);border-radius:6px;background:#0d0a08;color:var(--muted);text-align:left;cursor:pointer;touch-action:manipulation}.switch-row.on{border-color:var(--rust);color:var(--text)}.switch-text{display:flex;flex:1;flex-direction:column;gap:2px;min-width:0}.switch-label{font-family:var(--head);font-size:17px;letter-spacing:.05em;text-transform:uppercase}.switch-note{font-size:12px;color:var(--muted)}.switch{position:relative;flex:none;width:48px;height:28px;border-radius:14px;background:#2d241d;box-shadow:inset 0 2px 4px #0009;transition:background-color .15s}.switch-knob{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#8f857b;transition:transform .15s,background-color .15s}.switch-row.on .switch{background:var(--rust)}.switch-row.on .switch-knob{background:#fff;transform:translate(20px)}.sub-label{display:block;margin:12px 0 0;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.levels.explain{grid-template-columns:repeat(3,1fr);margin-top:6px}.levels.explain .level{font-size:13px;line-height:1.1;padding:8px 4px 6px}.sheet{position:fixed;top:0;right:0;bottom:0;left:0;z-index:85;display:flex;flex-direction:column;box-sizing:border-box;padding:max(12px,var(--st)) max(12px,var(--sr)) 0 max(12px,var(--sl));background:#080605f7}.sheet[hidden]{display:none}.sheet-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.sheet-title{margin:0;font-family:var(--head);font-size:28px;letter-spacing:.04em;text-transform:uppercase}.sheet-done{min-height:44px;padding:8px 16px 6px;border:0;border-radius:6px;background:var(--rust);font-family:var(--head);font-size:18px;letter-spacing:.08em;text-transform:uppercase;color:#fff;cursor:pointer}.sheet-quick{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 4px}.chip{min-height:38px;padding:7px 12px 5px;border:1px solid var(--line);border-radius:999px;background:#14100d;font-family:var(--head);font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:var(--text);cursor:pointer;touch-action:manipulation}.chip:active{border-color:var(--rust-hi)}.sheet-note{min-height:1.2em;margin:4px 0;font-size:13px;font-weight:800;color:var(--bad)}.sheet-scroll{flex:1;min-height:0;padding-bottom:max(16px,var(--sb))}.sheet-group{margin-bottom:16px}.sheet-tag{margin:8px 0;font-family:var(--head);font-size:14px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.card{display:flex;align-items:flex-start;gap:12px;width:100%;margin-bottom:8px;padding:10px 12px;border:2px solid var(--line);border-radius:8px;background:var(--panel);color:var(--muted);text-align:left;cursor:pointer;touch-action:manipulation}.card-check{flex:none;width:22px;height:22px;margin-top:1px;border:2px solid var(--line);border-radius:5px}.card.on{border-color:var(--rust);color:var(--text)}.card.on .card-check{border-color:var(--rust-hi);background:var(--rust) center / 70% no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 10'%3E%3Cpath d='M1 5l3.5 3.5L11 1' fill='none' stroke='white' stroke-width='2.2'/%3E%3C/svg%3E")}.card-text{display:flex;flex-direction:column;gap:2px;min-width:0}.card-title{font-family:var(--head);font-size:18px;letter-spacing:.04em;text-transform:uppercase}.card-blurb{font-size:13px;line-height:1.3}.sound-toggle svg{width:22px;height:22px;flex:none}.sound-toggle .spk{fill:currentColor}.sound-toggle .spk-on,.sound-toggle .spk-off{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.sound-toggle .spk-off,.sound-toggle.off .spk-on{display:none}.sound-toggle.off .spk-off{display:inline}.sound-corner{position:fixed;top:calc(max(8px,var(--st)) + 6px);right:max(8px,var(--sr));z-index:75;display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid var(--line);border-radius:50%;background:#0d0a08d9;color:var(--text);cursor:pointer;touch-action:manipulation}.sound-corner.off{color:var(--muted)}body[data-screen=play] .sound-corner,body[data-screen=hold] .sound-corner,body[data-screen=vote] .sound-corner,body[data-screen=buttons] .sound-corner,body[data-screen=keypad] .sound-corner,body[data-screen=trace] .sound-corner{display:none}.sound-inline{display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:8px 14px 6px;border:2px solid var(--line);border-radius:4px;background:#14100d;font-family:var(--head);font-size:17px;letter-spacing:.08em;text-transform:uppercase;color:var(--text);cursor:pointer;touch-action:manipulation}.sound-inline.off{color:var(--muted)}.score-badge{position:fixed;top:max(6px,var(--st));left:max(8px,var(--sl));z-index:72;padding:4px 9px 3px;border:1px solid rgba(255,255,255,.12);border-radius:6px;background:#0a0806d1;font-family:var(--head);font-size:13px;letter-spacing:.06em;color:var(--text);white-space:nowrap;pointer-events:none;font-variant-numeric:tabular-nums}.score-badge[hidden],body[data-screen=join] .score-badge,body[data-screen=lobby] .score-badge,body[data-screen=connecting] .score-badge{display:none}.score-pop{position:absolute;left:50%;top:0;font-size:22px;color:#ffd34a;text-shadow:0 0 10px rgba(255,200,40,.8),0 2px 0 rgba(0,0,0,.6);opacity:0;transform:translate(-50%)}.score-pop.go{animation:score-pop .9s ease-out}@keyframes score-pop{0%{opacity:0;transform:translate(-50%,6px) scale(.7)}20%{opacity:1;transform:translate(-50%) scale(1.15)}to{opacity:0;transform:translate(-50%,34px) scale(1)}}body.has-score .view-keypad,body.has-score .view-two,body.has-score .view-vote{padding-top:calc(max(16px,var(--st)) + 28px)}@media(orientation:portrait){body.has-score .meter{top:calc(var(--st) + 38px)}body.has-score.has-meter .view-keypad,body.has-score.has-meter .view-two,body.has-score.has-meter .view-vote{padding-top:calc(max(16px,var(--st)) + 124px)}}body.has-score .pad .pad-buttons{padding-top:calc(max(10px,var(--st)) + 28px)}body.has-score .trace-head{padding-top:calc(max(10px,var(--st)) + 26px);height:70px}body.has-score .trace-stage{top:70px}@media(orientation:portrait){body.has-score.has-meter .trace-stage{top:154px}}.toast{position:fixed;left:50%;bottom:calc(max(16px,var(--sb)) + 8px);z-index:96;max-width:calc(100% - 32px);padding:10px 16px 9px;border:1px solid var(--rust);border-radius:8px;background:#0d0a08f5;font-size:15px;font-weight:700;color:var(--text);overflow-wrap:anywhere;user-select:text;-webkit-user-select:text;opacity:0;pointer-events:none;transform:translate(-50%,12px);transition:opacity .2s,transform .2s}.toast.on{opacity:1;transform:translate(-50%)}.home-hint{position:fixed;left:max(10px,var(--sl));right:max(10px,var(--sr));bottom:calc(max(10px,var(--sb)) + 4px);z-index:74;display:none;align-items:center;gap:10px;padding:10px 8px 9px 14px;border:1px solid var(--rust);border-radius:10px;background:#140f0bf7;box-shadow:0 6px 20px #000000b3}body[data-screen=join] .home-hint,body[data-screen=lobby] .home-hint{display:flex}.home-hint-text{flex:1;margin:0;font-size:14px;line-height:1.35;color:var(--text)}.home-hint-share{display:inline-block;width:14px;height:16px;vertical-align:-2px;background:center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 18'%3E%3Cpath d='M7 1v11M3.5 4.5L7 1l3.5 3.5M2 8H1v9h12V8h-1' fill='none' stroke='%23e0612f' stroke-width='1.6'/%3E%3C/svg%3E")}.home-hint-close{flex:none;width:40px;height:40px;border:0;border-radius:50%;background:transparent;font-size:18px;color:var(--muted);cursor:pointer}.view-team{background:radial-gradient(ellipse at 50% 45%,color-mix(in srgb,var(--team) 38%,#0b0a09) 0%,var(--bg) 70%)}.team-card{width:min(92%,560px);box-sizing:border-box;margin:10px 0;padding:16px 18px 18px;border:4px solid var(--team);border-radius:14px;background:linear-gradient(180deg,color-mix(in srgb,var(--team) 30%,#120f0c),#0d0a08);box-shadow:0 0 40px color-mix(in srgb,var(--team) 50%,transparent),0 10px 30px #000000b3;animation:slam .4s cubic-bezier(.2,1.5,.4,1)}.team-kicker{margin:0;font-family:var(--head);font-size:18px;letter-spacing:.3em;text-transform:uppercase;color:var(--team)}.team-you{margin:6px 0 0;font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.team-name{margin:2px 0 6px;font-family:var(--head);font-size:min(clamp(40px,9vmin + 4vw,96px),calc((min(92vw,560px) - 52px) * 1.6 / var(--chars, 8)));line-height:.95;letter-spacing:.02em;text-transform:uppercase;color:#fff;text-shadow:0 0 24px var(--team),4px 4px 0 rgba(0,0,0,.6);overflow-wrap:anywhere}.team-mates{margin:0;font-size:17px;font-weight:800;color:var(--text)}.team-with{color:var(--muted);font-weight:600}.show{position:fixed;top:0;right:0;bottom:0;left:0;z-index:88;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:min(4vmin,22px);box-sizing:border-box;padding:max(16px,var(--st)) max(16px,var(--sr)) max(16px,var(--sb)) max(16px,var(--sl));overflow:hidden;background:radial-gradient(ellipse at 50% 42%,#2e2218f0,#050403f7 70%);opacity:0;touch-action:none;transition:opacity .22s ease-out}.show.in{opacity:1}.show.out{opacity:0;transition-duration:.3s}@media(orientation:landscape){.show-join{flex-direction:row;gap:6vw}}.show-flash{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 42%,rgba(255,240,200,.85),transparent 58%);opacity:0;pointer-events:none}.show.stamp .show-flash{animation:show-flash .4s ease-out}@keyframes show-flash{0%{opacity:.9}to{opacity:0}}.show-skip{position:absolute;bottom:max(14px,var(--sb));left:0;right:0;margin:0;font-size:12px;letter-spacing:.14em;text-align:center;text-transform:uppercase;color:var(--muted);opacity:0;transition:opacity .4s .7s}.show.in .show-skip{opacity:.7}.show-stage{position:relative;flex:none;width:min(78vw,52vh,340px);height:min(64vw,42vh,280px);transition:transform .45s cubic-bezier(.3,1,.4,1),opacity .45s}.show.reveal .show-stage{opacity:.5;transform:scale(.86)}.time-clock{position:absolute;left:0;right:0;bottom:0;z-index:2;height:60%;border:3px solid #4d433b;border-radius:14px;background:linear-gradient(180deg,#3d352f,#1c1814);box-shadow:inset 0 2px #ffffff17,inset 0 -6px #00000059,0 16px 34px #000000bf}.show.stamp .time-clock{animation:clock-shake .28s ease-out}@keyframes clock-shake{20%{transform:translate(-3px,2px)}45%{transform:translate(3px,-1px)}70%{transform:translate(-2px,1px)}}.clock-face{position:absolute;left:7%;top:14%;width:40%;aspect-ratio:1;border:4px solid #15110d;border-radius:50%;background:radial-gradient(circle at 40% 35%,#fbf4e4,#cdbf9f);box-shadow:0 0 0 3px #5b4f45,inset 0 0 10px #00000059}.hand{position:absolute;left:50%;bottom:50%;border-radius:2px;background:#15110d;transform:translate(-50%) rotate(var(--deg, 0deg));transform-origin:50% 100%}.hand-h{width:6%;height:26%}.hand-m{width:4%;height:38%}.hand-hub{position:absolute;left:50%;top:50%;width:12%;height:12%;border-radius:50%;background:var(--rust);transform:translate(-50%,-50%)}.clock-brand{position:absolute;left:52%;bottom:14%;font-family:var(--head);font-size:min(5vmin,20px);letter-spacing:.18em;text-transform:uppercase;color:var(--rust-hi)}.clock-slot{position:absolute;right:8%;top:7%;width:40%;height:9px;border-radius:5px;background:#050403;box-shadow:inset 0 3px 4px #000000f2,0 1px #ffffff14}.punch-card{position:absolute;right:10%;top:0;z-index:1;width:36%;height:62%;box-sizing:border-box;padding:7% 7% 0;overflow:hidden;border-radius:4px;background:repeating-linear-gradient(180deg,transparent 0 13px,rgba(120,90,60,.18) 13px 14px) 0 42% / 100% 60% no-repeat,linear-gradient(180deg,#b8461f 0,#b8461f 15%,#efe5cc 15%);box-shadow:0 6px 16px #0009;color:#241a12;transform:translateY(-150%) rotate(-4deg);transition:transform .55s cubic-bezier(.2,.85,.3,1)}.show.in .punch-card{transform:translateY(0) rotate(0)}.show.stamp .punch-card{animation:card-punch .2s ease-out}@keyframes card-punch{50%{transform:translateY(5%)}}.punch-kicker{margin:-2% 0 10%;font-family:var(--head);font-size:min(3.4vmin,13px);letter-spacing:.2em;text-transform:uppercase;color:#fff}.punch-name{margin:0;overflow:hidden;font-family:Courier New,Courier,monospace;font-size:min(5vmin,21px);font-weight:900;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.punch-meta{margin:2px 0 0;font-family:Courier New,Courier,monospace;font-size:min(2.8vmin,11px);color:#6b5a48}.punch-stamp{position:absolute;left:4%;top:46%;display:flex;flex-direction:column;align-items:center;margin:0;padding:3px 7px 2px;border:3px solid #c4130f;border-radius:4px;font-family:var(--head);font-size:min(3.6vmin,14px);letter-spacing:.08em;line-height:1.05;text-transform:uppercase;color:#c4130f;mix-blend-mode:multiply;opacity:0;transform:rotate(-14deg) scale(2.4);transition:opacity .12s,transform .18s cubic-bezier(.3,1.6,.5,1)}.punch-time{font-size:1.5em}.show.stamp .punch-stamp{opacity:.92;transform:rotate(-14deg) scale(1)}.sparks{position:absolute;left:72%;top:40%;z-index:3;width:0;height:0}.spark{position:absolute;width:4px;height:11px;margin:-5px 0 0 -2px;border-radius:2px;background:linear-gradient(180deg,#fffbe0,#ffb43a 55%,#ff5a1a);box-shadow:0 0 6px #ffaa32e6;opacity:0}.show.stamp .spark{animation:spark .6s ease-out var(--delay, 0ms) forwards}@keyframes spark{0%{opacity:1;transform:translate(0) scale(1.1)}to{opacity:0;transform:translate(var(--dx),calc(var(--dy) + 60px)) scale(.3)}}.show-hero{display:flex;flex-direction:column;align-items:center;max-width:100%;opacity:0;transform:translateY(60px) scale(.7);transition:opacity .3s,transform .5s cubic-bezier(.2,1.5,.4,1)}@media(orientation:landscape){.show-hero{transform:translate(80px) scale(.7)}}.show.reveal .show-hero{opacity:1;transform:none}.show-hero .portrait-lg,.char-show-portrait .portrait-lg{width:min(30vmin,130px);height:min(30vmin,130px);border-radius:18px;box-shadow:0 0 0 4px var(--c),0 0 44px var(--c),0 10px 30px #000c}.show-hero-name{max-width:90vw;margin:14px 0 0;overflow:hidden;font-family:var(--head);font-size:clamp(34px,8vmin + 2vw,66px);line-height:1;letter-spacing:.03em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;color:var(--c);text-shadow:0 0 22px rgba(0,0,0,.9),3px 3px 0 rgba(0,0,0,.7)}.show-hero-sub{margin:6px 0 0;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.show-char{background:radial-gradient(ellipse at 50% 45%,#14100cd9,#050403e6 70%)}.char-show-box{position:relative;display:flex;flex-direction:column;align-items:center}.puffs{position:absolute;left:50%;top:38%;width:0;height:0}.puff{position:absolute;left:-50px;top:-50px;width:100px;height:100px;border-radius:50%;background:radial-gradient(circle,rgba(215,205,190,.8),rgba(130,120,108,.4) 55%,transparent 70%);opacity:0;transform:scale(.3)}.show.in .puff{animation:puff .95s ease-out forwards}@keyframes puff{0%{opacity:.95;transform:translate(0) scale(.3)}to{opacity:0;transform:translate(var(--dx),var(--dy)) scale(calc(var(--s, 1) * 1.7))}}.char-show-portrait{position:relative;opacity:0;transform:scale(.2) rotate(-14deg);transition:opacity .18s,transform .5s cubic-bezier(.2,1.7,.4,1)}.show.pop .char-show-portrait{opacity:1;transform:none}.char-show-name{position:relative;margin:14px 0 0;font-family:var(--head);font-size:clamp(36px,9vmin + 2vw,76px);line-height:1;letter-spacing:.03em;text-transform:uppercase;color:var(--c);text-shadow:0 0 24px rgba(0,0,0,.9),3px 3px 0 rgba(0,0,0,.7);opacity:0;transform:translateY(16px);transition:opacity .3s .12s,transform .4s .12s cubic-bezier(.2,1.4,.4,1)}.show.pop .char-show-name{opacity:1;transform:none}.roster-item.arrive{position:relative;overflow:hidden;animation:arrive 1.2s cubic-bezier(.2,1.1,.4,1) both;animation-delay:var(--arrive-at, 0ms)}@keyframes arrive{0%{opacity:0;transform:translate(110%)}35%{opacity:1;transform:translate(-3%);box-shadow:0 0 0 2px var(--c),0 0 26px var(--c)}55%{transform:translate(0)}to{transform:none;box-shadow:none}}.roster-item.arrive:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(100deg,transparent 20%,rgba(255,255,255,.85) 45%,var(--c) 55%,transparent 80%);mix-blend-mode:screen;opacity:0;pointer-events:none;animation:arrive-flash 1.2s ease-out both;animation-delay:var(--arrive-at, 0ms)}@keyframes arrive-flash{0%,28%{opacity:0;transform:translate(-100%)}40%{opacity:1}to{opacity:0;transform:translate(100%)}}.portrait-hint{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:none;flex-direction:column;align-items:center;justify-content:center;gap:26px;padding:24px;background:var(--bg);font-family:var(--head);font-size:30px;letter-spacing:.06em;text-align:center;text-transform:uppercase}.portrait-hint p{margin:0}.rotate-icon{width:64px;height:112px;border:5px solid var(--text);border-radius:12px;box-shadow:inset 0 -12px 0 -6px var(--rust);animation:rotate-phone 2s ease-in-out infinite}@media(orientation:portrait){body.needs-landscape .portrait-hint{display:flex}}.noscript{padding:24px;font-family:var(--head);font-size:24px}@keyframes blink{50%{opacity:.7}}@keyframes pulse{50%{opacity:.45}}@keyframes shake{25%{transform:translate(-6px)}75%{transform:translate(6px)}}@keyframes slam{0%{transform:scale(1.6);opacity:0}to{transform:scale(1);opacity:1}}@keyframes flash{0%{filter:brightness(2.2)}to{filter:brightness(1)}}@keyframes ready{0%{filter:brightness(1.8)}to{filter:brightness(1)}}@keyframes rotate-phone{0%,20%{transform:rotate(0)}55%,to{transform:rotate(-90deg)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.replaced{position:fixed;top:0;right:0;bottom:0;left:0;z-index:95;display:flex;flex-direction:column;align-items:center;justify-content:center;box-sizing:border-box;padding:max(24px,var(--st)) max(24px,var(--sr)) max(24px,var(--sb)) max(24px,var(--sl));text-align:center;background:#080605f7}.replaced[hidden]{display:none}.replaced-text{max-width:520px;margin:4px 0 8px;font-family:var(--head);font-size:clamp(26px,6vmin + 1vw,40px);line-height:1.1;letter-spacing:.03em;text-transform:uppercase}.btn-resume{max-width:420px}
