:root{--bg: #0e0f1a;--panel: #181a2b;--panel-2: #222540;--line: #2f3356;--text: #f3f4ff;--muted: #9aa0c7;--accent: #ff3d81;--accent-2: #22d3ee;--token: #ffd23f;--good: #3ddc97;--bad: #ff5c5c;--radius: 14px;--font: "Rubik", system-ui, sans-serif}*{box-sizing:border-box}html,body{margin:0;height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-tap-highlight-color:transparent}#app{min-height:100%}a{color:var(--accent-2)}h1,h2,h3{margin:0;line-height:1.1}.muted{color:var(--muted)}.small{font-size:.85rem}.hidden{display:none!important}button,.btn{font:inherit;font-weight:700;border:0;border-radius:10px;padding:12px 18px;background:var(--panel-2);color:var(--text);cursor:pointer;transition:transform .08s,filter .15s;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}button:hover{filter:brightness(1.15)}button:active{transform:scale(.97)}button:disabled{opacity:.45;cursor:not-allowed;filter:none;transform:none}button.primary{background:var(--accent);color:#fff}button.cyan{background:var(--accent-2);color:#04212a}button.good{background:var(--good);color:#062a1a}button.bad{background:var(--bad);color:#2a0606}button.ghost{background:transparent;border:1px solid var(--line)}button.big{font-size:1.15rem;padding:16px 24px}button.icon{padding:8px 10px}input[type=text],input[type=number],input[type=password]{font:inherit;width:100%;padding:12px 14px;border-radius:10px;border:1px solid var(--line);background:#0b0c16;color:var(--text);outline:none}select{font:inherit;width:100%;padding:11px 40px 11px 12px;border-radius:10px;border:1px solid var(--line);color:var(--text);appearance:none;cursor:pointer;background:#0b0c16 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%239aa0c7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 14px center}input::placeholder{color:#50557d}input:hover,select:hover{border-color:#3d4270}input:focus,select:focus{border-color:var(--accent-2);outline:none}button:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}input[aria-invalid=true],input[aria-invalid=true]:focus{border-color:var(--bad)}.field-error{color:var(--bad);font-size:.85rem;line-height:1.4;margin:6px 0 0}.stack>.field-error{margin-top:-4px}input.code{text-transform:uppercase;letter-spacing:.3em;font-weight:700;text-align:center}label{display:block;font-size:.85rem;color:var(--muted);margin:0 0 6px}.field{margin-bottom:14px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.row>.grow{flex:1 1 0;min-width:0}.stack{display:flex;flex-direction:column;gap:10px}.choice{display:grid;grid-template-columns:1fr 1fr;gap:8px}.choice input{position:absolute;opacity:0;pointer-events:none}.choice label{margin:0;padding:12px;border-radius:10px;border:1px solid var(--line);background:#0b0c16;cursor:pointer;color:var(--text);font-size:.95rem;transition:border-color .15s,background-color .15s}.choice label:hover{border-color:#3d4270}.choice label b{display:block;margin-bottom:2px}.choice label span{color:var(--muted);font-size:.8rem}.choice input:checked+label{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset;background:color-mix(in srgb,var(--accent) 8%,#0b0c16)}.choice input:focus-visible+label{outline:2px solid var(--accent-2);outline-offset:2px}.check{display:flex;gap:10px;align-items:center;color:var(--text);font-size:.95rem;cursor:pointer;margin:0}.check input{width:20px;height:20px;margin:0;flex:none;accent-color:var(--accent)}.hint{color:var(--muted);font-size:.8rem;line-height:1.4;margin:6px 0 0}.hint:empty{display:none}.hint.indent{padding-left:30px}.panel{background:color-mix(in srgb,var(--panel) 92%,transparent);border:1px solid var(--line);border-radius:var(--radius);padding:20px}.home{max-width:960px;margin:0 auto;padding:56px 16px 40px;position:relative}.home:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(600px 400px at 10% -5%,color-mix(in srgb,var(--accent) 16%,transparent),transparent 70%),radial-gradient(700px 500px at 95% 105%,color-mix(in srgb,var(--accent-2) 10%,transparent),transparent 70%)}.hero{margin-bottom:32px}.logo{font-weight:900;font-size:clamp(2.6rem,9vw,5rem);letter-spacing:-.02em;line-height:1}.logo span{color:var(--accent)}.tagline{color:var(--muted);font-size:1.1rem;line-height:1.5;margin:14px 0 0;max-width:520px}.tagline b{color:var(--text);font-weight:500}.home-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;align-items:stretch}.home-grid .panel{display:flex;flex-direction:column;padding:24px;box-shadow:0 20px 50px #00000040}.panel-head{margin-bottom:20px}.panel-head h2{font-size:1.35rem}.panel-head p{margin:6px 0 0}.panel .submit{width:100%;margin-top:auto}.home-grid .field:last-of-type,.center-msg .field:last-of-type{margin-bottom:20px}input.big-input{font-size:1.6rem;padding:10px 14px}input.code::placeholder{letter-spacing:.3em}.site-footer{margin:32px 0 0;text-align:center;font-size:.85rem;color:var(--muted)}.site-footer a{color:var(--muted);text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:1px}.site-footer a:hover{color:var(--text);border-color:var(--muted)}.print .logo{display:inline-block;color:inherit;text-decoration:none}.print-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}.print-grid .panel{padding:24px;box-shadow:0 20px 50px #00000040}.print-decks{grid-template-columns:1fr}.print-decks label b{display:flex;justify-content:space-between;gap:12px}.print-decks label em{font-style:normal;font-weight:500;color:var(--muted);font-size:.85rem;white-space:nowrap}.print-side{position:sticky;top:16px}.print-side .choice+.panel-head{margin-top:24px}.print-summary{min-height:1.4em;margin:14px 0 12px;line-height:1.4}.print-overlap{margin:0 0 14px;padding:10px 12px;border-radius:10px;line-height:1.45;color:var(--muted);background:color-mix(in srgb,var(--token) 8%,#0b0c16);border:1px solid color-mix(in srgb,var(--token) 30%,var(--line))}.print-overlap b{color:var(--text);font-weight:500}.print-overlap .link{all:unset;color:var(--accent-2);font-weight:500;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.print-overlap .link:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px;border-radius:2px}.btn.primary{background:var(--accent);color:#fff}.print-download{width:100%}.print-download:hover{filter:brightness(1.15)}.print-download[aria-disabled=true]{opacity:.45;cursor:not-allowed;filter:none}.print-side h3{font-size:1rem;margin:24px 0 8px}.print-steps{margin:0;padding-left:20px;color:var(--muted);font-size:.9rem;line-height:1.5}.print-steps li+li{margin-top:6px}.print-steps b{color:var(--text);font-weight:500}@media(max-width:760px){.print-grid{grid-template-columns:minmax(0,1fr)}.print-side{position:static}}.topbar{display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid var(--line);background:#0e0f1ab3;backdrop-filter:blur(8px);position:sticky;top:0;z-index:5}.topbar .brand{font-weight:900;letter-spacing:.02em}.topbar .brand span{color:var(--accent)}.topbar .code-pill{font-weight:700;letter-spacing:.2em;background:var(--panel-2);padding:6px 10px;border-radius:8px}.topbar .spacer{flex:1}.room{padding:16px;max-width:1400px;margin:0 auto}.lobby{display:grid;grid-template-columns:minmax(280px,380px) 1fr;gap:16px;align-items:start;max-width:1100px;margin:0 auto}@media(min-width:861px){.lobby>.invite{position:sticky;top:68px}}.invite{text-align:center}.invite .qr{background:#fff;border-radius:12px;padding:10px;width:min(260px,100%);aspect-ratio:1;margin:12px auto;display:block}.invite .big-code{font-size:2.6rem;font-weight:900;letter-spacing:.25em;margin-right:-.25em}.invite .link{word-break:break-all;font-size:.9rem}.blurred{filter:blur(.3em);user-select:none}.hide-code{justify-content:center;margin:0 auto 8px;width:fit-content;font-size:.9rem;color:var(--muted)}.members{list-style:none;padding:0;margin:0;display:grid;gap:8px}.members li{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--panel-2);border-radius:10px}.members li button.icon{padding:2px 8px;margin:-4px 0}.members li .name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dot{width:9px;height:9px;border-radius:50%;background:var(--good);flex:none}.dot.off{background:#555a7a}.tag{font-size:.72rem;font-weight:700;padding:3px 7px;border-radius:6px;background:var(--line);color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.tag.host{background:var(--accent);color:#fff}.lobby-main{display:flex;flex-direction:column;gap:16px;min-width:0}.lobby-start{display:flex;flex-direction:column;gap:12px}.lobby-start p{margin:0;line-height:1.45}.options{padding:20px 20px 8px}.options-head{display:flex;align-items:baseline;gap:10px;justify-content:space-between;margin-bottom:4px}.opt-group{padding:14px 0 10px}.opt-group+.opt-group{border-top:1px solid var(--line)}.opt-group h3{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--accent-2);margin:0 0 8px}.opt{display:flex;align-items:center;gap:8px 16px;padding:8px 0;margin:0;color:var(--text);font-size:1rem}label.opt{cursor:pointer}.opt-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.opt-text b{font-weight:500}.opt-text span{color:var(--muted);font-size:.8rem;line-height:1.35}.opt-control{flex:none}.opt-wide{flex-wrap:wrap}.opt-wide .opt-text{flex:1 1 200px}.opt-wide .seg{flex:none;margin-left:auto}.opt-value{font-weight:700;font-variant-numeric:tabular-nums;padding:4px 12px;border-radius:8px;background:var(--panel-2)}.opt-value.on{color:var(--good)}.deck-pick .hint{margin-top:8px}.deck-static{padding:11px 12px;border-radius:10px;background:var(--panel-2)}.stepper-input{display:flex;align-items:center;border:1px solid var(--line);border-radius:10px;background:#0b0c16}.stepper-input button{border:0;border-radius:9px;width:40px;height:40px;padding:0;font-size:1.25rem;font-weight:500;color:var(--muted)}.stepper-input button:not(:disabled):hover{color:var(--text);background:var(--panel-2);filter:none}.stepper-input input[type=number]{width:44px;padding:0;border:0;background:transparent;text-align:center;font-weight:700;font-size:1.05rem;font-variant-numeric:tabular-nums;-moz-appearance:textfield;appearance:textfield}.stepper-input input::-webkit-inner-spin-button,.stepper-input input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.stepper-input:focus-within{border-color:var(--accent-2)}.seg{display:flex;padding:3px;gap:3px;border-radius:11px;background:#0b0c16;border:1px solid var(--line)}.seg input{position:absolute;opacity:0;pointer-events:none}.seg label{flex:1;margin:0;padding:8px 12px;border-radius:8px;text-align:center;white-space:nowrap;cursor:pointer;color:var(--muted);font-size:.9rem;font-weight:500;transition:background-color .15s,color .15s}.seg label:hover{color:var(--text)}.seg input:checked+label{background:var(--accent);color:#fff;font-weight:700}.seg input:focus-visible+label{outline:2px solid var(--accent-2);outline-offset:1px}input.switch{appearance:none;flex:none;width:46px;height:26px;margin:0;border-radius:99px;background:#33375a;position:relative;cursor:pointer;transition:background-color .2s}input.switch:after{content:"";position:absolute;top:2px;left:2px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0006;transition:transform .2s}input.switch:checked{background:var(--accent)}input.switch:checked:after{transform:translate(20px)}input.switch:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}.topnav{flex:1;min-width:0;display:flex;align-items:center;gap:8px;overflow:hidden;visibility:hidden}.topnav>:first-child{margin-left:auto}.topnav>button{flex:none;white-space:nowrap;padding:6px 12px;font-weight:500}.topnav-info{flex:none;white-space:nowrap;font-size:.85rem;color:var(--muted);margin-right:4px}@media(min-width:861px){.topbar.inline .topnav{visibility:visible}.topbar.inline .menu-anchor{display:none}}.menu-anchor{position:relative}.menu-toggle{font-size:1.3rem;line-height:1;padding:6px 12px}.menu{position:absolute;right:0;top:calc(100% + 8px);min-width:230px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:6px;display:flex;flex-direction:column;box-shadow:0 16px 40px #00000080}.menu-item{justify-content:flex-start;width:100%;background:transparent;padding:10px 12px;font-weight:500;border-radius:8px}.menu-item:hover{background:var(--panel-2);filter:none}.menu hr{border:0;border-top:1px solid var(--line);margin:6px 0}.menu-info{margin:0;padding:8px 12px;font-size:.8rem;color:var(--muted)}.c-good{color:var(--good)}.c-bad{color:var(--bad)}.c-token{color:var(--token)}.game{display:grid;grid-template-columns:minmax(0,1fr) 300px;grid-template-areas:"stage side";gap:16px;align-items:start}.game>.stage{grid-area:stage}.stage{display:flex;flex-direction:column;gap:14px;min-width:0}.side{grid-area:side;display:flex;flex-direction:column;gap:12px;min-width:0;position:sticky;top:68px;max-height:calc(100vh - 84px);overflow-y:auto;scrollbar-width:thin}@media(min-width:861px){.game{container-type:inline-size}.side{gap:14px}.side>*{flex:none}.side>.chips{flex:0 1 auto;min-height:140px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;height:calc(min(100cqw - 316px,max(320px,(100vh - 330px) * 16 / 9))*.5625)}.is-spectator .side>.chips{height:calc(min(100cqw - 356px,max(320px,(100vh - 340px) * 16 / 9))*.5625)}}.stage>.result-card{display:none}.shot-wrap{position:relative;width:min(100%,max(320px,(100vh - 330px) * 16 / 9));margin:0 auto}.shot-wrap>.countdown{position:absolute;top:10px;right:10px;z-index:1;background:#0e0f1acc}.shot{position:relative;width:100%;aspect-ratio:16 / 9;border-radius:var(--radius);overflow:hidden;background:#05060c;border:1px solid var(--line);box-shadow:0 20px 60px #00000073}.shot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.shot img.full{object-fit:contain;background:#05060c}.shot.loading:after{content:"";position:absolute;left:50%;top:50%;width:44px;height:44px;margin:-22px 0 0 -22px;z-index:1;border:4px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.shot.loading img{visibility:hidden}.shot .stand-in~img.full{visibility:hidden}.shot .empty{position:absolute;inset:0;display:grid;place-items:center;text-align:center;color:var(--muted);padding:20px}.shot .empty h2{color:var(--text);font-size:clamp(1.4rem,3vw,2.4rem);margin-bottom:8px}.answer{position:absolute;left:0;right:0;bottom:0;padding:18px 20px 16px;background:linear-gradient(transparent,#000000d9 35%);display:flex;align-items:flex-end;gap:18px;animation:rise .5s .9s both}.answer .year{font-size:clamp(2.4rem,6vw,4.6rem);font-weight:900;color:var(--token);line-height:.9}.answer .title{font-size:clamp(1.1rem,2.4vw,1.8rem);font-weight:700}.answer .dev{color:#c9cdf0}@keyframes rise{0%{opacity:0;transform:translateY(12px)}}.turn-head{display:flex;align-items:center;gap:8px 12px;flex-wrap:wrap}.turn-head .headline{flex:1 1 auto;font-size:1.5rem;font-weight:900}.stepper{display:flex;gap:4px}.stepper span{font-size:.75rem;font-weight:700;padding:4px 10px;border-radius:99px;background:var(--panel);color:var(--muted)}.stepper span.on{background:var(--accent-2);color:#04212a}.sub{margin:-6px 0 0;color:var(--muted);font-size:1.05rem}.sub b{color:var(--accent-2)}.countdown{position:relative;overflow:hidden;min-width:60px;padding:4px 12px;border-radius:99px;background:var(--panel);border:1px solid var(--line);display:flex;gap:6px;align-items:baseline;justify-content:center}.countdown .track{position:absolute;inset:0}.countdown .track i{display:block;height:100%;background:#22d3ee40;transition:width .2s linear}.countdown .secs,.countdown .label{position:relative}.countdown .secs{font-weight:900;font-size:1.05rem;font-variant-numeric:tabular-nums}.countdown .secs:not(:empty):after{content:"s";font-size:.8rem;color:var(--muted);margin-left:1px}.countdown .label{font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-weight:700}.countdown.low .secs{color:var(--bad);animation:pulse 1s infinite}.countdown.low .track i{background:#ff5c5c4d}.countdown.paused .track i{background:#555a7a66}.countdown.paused .secs{color:var(--muted);animation:none}@keyframes pulse{50%{opacity:.45}}.status{font-size:1.15rem;font-weight:500}.status b{color:var(--accent-2)}.googling{animation:pulse 1.2s infinite}.actions{display:flex;gap:10px;flex-wrap:wrap}.result-card{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;gap:6px 14px;align-items:baseline;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:12px 16px}.result-card .rc-head{grid-column:1 / -1;font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-weight:700}.result-card .k{color:var(--muted);font-size:.9rem;white-space:nowrap}.result-card .v{overflow-wrap:anywhere}.result-card .mark{font-weight:900;font-size:1.1rem}.result-card .rc-brag{grid-column:1 / -1;margin:0}.result-card .rc-brag b{color:var(--accent-2)}.dock-wrap{position:sticky;bottom:0;z-index:4;display:flex;flex-direction:column;gap:6px;margin-top:auto;padding:8px 0 calc(8px + env(safe-area-inset-bottom));background:var(--bg)}.dock{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:10px}.dock>button{width:100%}.dock-row{display:flex;gap:10px}.dock-row .grow{flex:1}.dock-row button{padding-inline:14px;white-space:nowrap}.dock-note{margin:0;color:var(--muted);text-align:center}.dock-note b{color:var(--text)}button.link{background:none;padding:0;border-radius:0;color:var(--accent-2);font-weight:500;display:inline}.guess-form{display:flex;flex-direction:column;gap:10px}.guess-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.brag-form{gap:6px}.peek{border-top:1px solid var(--line)}.peek-head{width:100%;justify-content:flex-start;gap:10px;padding:8px 2px 4px;background:transparent;border-radius:0;font-size:.9rem}.peek-head:active{transform:none}.peek-head .mini{display:flex;gap:4px;flex:1;min-width:0;overflow:hidden}.peek-head .chev{color:var(--muted);margin-left:auto}.mcard{flex:none;padding:3px 6px;border-radius:5px;background:hsl(var(--h) 70% 55%);color:#111;font-size:.75rem;font-weight:900}.timeline-wrap{overflow-x:auto;padding:4px 2px 10px;scroll-snap-type:x proximity}.timeline-head{display:flex;align-items:baseline;gap:8px;margin-bottom:8px;flex-wrap:wrap}.timeline-head h3{font-size:1rem}.timeline-head .count{margin-left:auto}.timeline{display:flex;align-items:stretch;gap:0;min-width:min-content}.tcard{flex:none;width:108px;min-height:104px;border-radius:10px;padding:10px 8px;text-align:center;background:hsl(var(--h) 70% 55%);color:#111;display:flex;flex-direction:column;justify-content:center;gap:4px;scroll-snap-align:center}.tcard .y{font-weight:900;font-size:1.7rem;line-height:1}.tcard .t{font-size:.75rem;font-weight:700;line-height:1.15;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.tcard.new{animation:pop .6s both;outline:3px solid #fff}@keyframes pop{0%{transform:scale(.6);opacity:0}}.slot{flex:none;width:34px;margin:0 4px;border-radius:8px;border:2px dashed transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:0;background:transparent;color:var(--muted);font-size:.7rem;font-weight:700;position:relative}.slot.open{border-color:var(--line);cursor:pointer}.slot.open:before{content:"+";font-size:1.3rem;color:var(--muted)}.slot.open:hover{border-color:var(--accent-2)}.slot.selected{border:2px solid var(--accent-2);background:#22d3ee26;width:70px}.slot.selected:before{content:"?";color:var(--accent-2);font-size:1.6rem;font-weight:900}.pick-challenge .slot.selected:before{content:"\2691"}.slot.placed{border:2px solid var(--accent);background:#ff3d8126;width:70px}.slot.challenged{border:2px solid var(--token);background:#ffd23f1f;width:70px}.slot.pending{border:2px dashed var(--accent);background:#ff3d8114;width:70px;animation:pulse 1.6s infinite}.slot.pending .who:before{content:"? ";color:var(--accent)}.slot.fit{box-shadow:0 0 0 2px var(--good) inset}.slot .who{max-width:66px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.slot.placed .who:before{content:"\2605  ";color:var(--accent)}.slot.challenged .who:before{content:"\2691  ";color:var(--token)}.slot.challenged.miss{border-color:var(--bad);background:#ff5c5c1f}.slot.challenged.miss .who:before{content:"\2717  ";color:var(--bad)}.slot:not(.open):not(.selected):not(.placed):not(.challenged):not(.pending){width:8px;margin:0 2px}.slot.fit:not(.open):not(.selected):not(.placed):not(.challenged):not(.pending){width:24px;margin:0 4px;background:#3ddc9726}.chips{grid-area:chips;display:grid;align-content:start;gap:8px}.chip{display:grid;gap:6px;background:var(--panel);border:2px solid transparent;border-radius:12px;padding:10px 12px}.chip.turn{border-color:var(--accent)}.chip-top{display:flex;align-items:center;gap:8px;min-width:0}.chip .name{flex:1;min-width:0;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chip .count{font-weight:900;font-size:1.2rem}.chip .count small{color:var(--muted);font-weight:500;font-size:.8rem}.chip-line{display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));gap:3px}.ccard{height:20px;border-radius:4px;background:hsl(var(--h) 70% 55%);color:#111;display:grid;place-items:center;font-size:.68rem;font-weight:900;letter-spacing:-.02em;font-variant-numeric:tabular-nums;overflow:hidden}.ccard.empty{background:#0b0c16}.ccard.new{box-shadow:0 0 0 2px #fff inset}.tokens{display:flex;flex-wrap:wrap;gap:4px}.tokens i{width:12px;height:12px;border-radius:50%;background:var(--token);box-shadow:0 0 6px #ffd23f80}.tokens i.empty{background:#33375a;box-shadow:none}.over{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:16px}.winner{text-align:center;padding:16px 20px 0}.winner .crown{font-size:4rem}.winner h2{font-size:clamp(2rem,6vw,3.6rem);font-weight:900;margin:10px 0}.winner p{margin:0}.ranking{display:grid;gap:6px}.rank{justify-content:flex-start;gap:12px;background:var(--panel);border:2px solid transparent;font-weight:500;text-align:left}.rank.on{border-color:var(--accent-2)}.rank .pos{width:1.5em;color:var(--muted);font-weight:900}.rank:first-child .pos{color:var(--token)}.rank .name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rank .count{font-weight:900}.physical{display:grid;grid-template-columns:1fr 300px;gap:16px;align-items:start}.mini-invite{display:flex;flex-direction:column;gap:8px;align-items:center;text-align:center}.mini-invite img{width:100%;max-width:260px;aspect-ratio:1;background:#fff;border-radius:10px;padding:8px}.is-spectator .game,.is-spectator .physical{grid-template-columns:minmax(0,1fr) 340px}.is-spectator .shot-wrap{width:min(100%,max(320px,(100vh - 340px) * 16 / 9))}.is-spectator .turn-head .headline{font-size:2rem}.is-spectator .tcard{width:128px;min-height:120px}.is-spectator .tcard .y{font-size:2.1rem}.modal{position:fixed;inset:0;background:#05060cbf;display:grid;place-items:center;z-index:20;padding:16px}.modal .panel{width:min(440px,100%);max-height:90vh;overflow:auto}.modal video{width:100%;border-radius:10px;background:#000;aspect-ratio:1;object-fit:cover}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%);background:#2b2f52;color:var(--text);padding:12px 18px;border-radius:10px;box-shadow:0 10px 30px #0006;z-index:30;max-width:calc(100% - 32px)}.toast.error{background:#5a1f2c}.center-msg{max-width:460px;margin:12vh auto;padding:0 16px;text-align:center}.center-msg .panel{text-align:left;margin-top:20px}@media(min-width:861px){.dock{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:flex-end}.dock>.dock-note{flex:1 1 auto;text-align:left}.dock>button{width:auto}.guess-form{flex:1;flex-direction:row;flex-wrap:wrap;align-items:center}.guess-fields{flex:1}.guess-form .dock-note{flex-basis:100%;text-align:left}.side .dock-wrap{position:static;padding:0;background:none}.side .dock{flex-direction:column;align-items:stretch}.side .dock>.dock-note{text-align:left}.side .dock>button{width:100%}.side .guess-form{flex-direction:column;align-items:stretch}.side .guess-fields{grid-template-columns:1fr}.side .dock-row{flex-wrap:wrap}.side .peek{border-top:0;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:4px 12px}.side .peek-head .mini{flex-wrap:wrap}.side .peek .timeline-wrap{overflow:visible;padding:4px 0 10px}.side .peek .timeline{flex-wrap:wrap;row-gap:6px;min-width:0}.side .peek .tcard{width:80px;min-height:72px;padding:6px}.side .peek .tcard .y{font-size:1.25rem}}@media(max-width:860px){.lobby,.game,.physical,.is-spectator .game,.is-spectator .physical{grid-template-columns:minmax(0,1fr)}.game{grid-template-areas:"chips" "stage" "dock";gap:12px}.side{display:contents}.side>.result-card{display:none}.stage>.result-card{display:grid}.game .dock-wrap{grid-area:dock}.options{padding:16px 16px 6px}.opt-wide .seg{flex:1 1 100%}.room{padding:12px 16px}.chips{position:static;display:flex;gap:6px;overflow-x:auto;margin:0 -16px;padding:0 16px;scrollbar-width:none}.chip{flex:1 0 92px;gap:4px;padding:6px 8px;border-radius:10px}.chip .count{font-size:1rem}.chip .count small{display:none}.chip .dot{width:7px;height:7px}.chip-top{gap:6px}.chip-line{display:none}.tokens{gap:3px}.tokens i{width:8px;height:8px;box-shadow:none}.turn-head .headline{font-size:1.25rem}.stage{gap:12px}.tcard{width:88px;min-height:88px;padding:8px 6px}.tcard .y{font-size:1.4rem}.topbar .hide-sm{display:none}.topnav>*{display:none}}a.brand{color:var(--text);text-decoration:none}.topbar-link{padding:6px 12px;font-weight:500;font-size:.9rem;background:transparent;border:1px solid var(--line);white-space:nowrap}.topbar-link:hover{filter:brightness(1.15);border-color:var(--muted)}.topbar .daily-pill{letter-spacing:.05em;white-space:nowrap}.daily{padding:16px 16px 0;display:flex;flex-direction:column;align-items:center;gap:14px;min-height:calc(100vh - 57px)}.daily>*{width:min(100%,948px)}.daily>.timeline-wrap{width:100%}.daily .sub{margin:-6px 0 0}.daily .sub b{color:var(--text)}.daily .shot-wrap{width:min(100%,max(300px,(100vh - 400px) * 16 / 9))}.pips{display:flex;gap:5px}.pips i{width:20px;height:20px;border-radius:5px;background:var(--panel-2);border:1px solid var(--line)}.pips i.now{border-color:var(--accent-2);box-shadow:0 0 0 1px var(--accent-2) inset}.pips i.good{background:var(--good);border-color:var(--good)}.pips i.bad{background:var(--bad);border-color:var(--bad)}.daily .timeline-wrap{padding:10px 0 8px;scrollbar-width:thin}.daily .timeline{width:max-content;margin:0 auto}.daily .tcard{width:92px;min-height:92px;position:relative}.daily .slot{width:26px;margin:0 3px}.daily .slot.selected{width:26px}.daily .slot.selected:before{font-size:1.3rem}.daily .tcard.good:after,.daily .tcard.bad:after{content:"\2713";position:absolute;z-index:1;top:-7px;right:-7px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--good);color:#062a1a;font-size:.8rem;font-weight:900;box-shadow:0 0 0 3px var(--bg)}.daily .tcard.bad:after{content:"\2717";background:var(--bad);color:#2a0606}.daily .dock{flex-direction:row;align-items:center}.daily .dock .dock-note{flex:1;text-align:left}.daily .dock>button{flex:none;width:auto}.daily .dock>button:only-child{flex:1}.daily-result{text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px;padding:28px 20px}.daily-result p{margin:0}.daily-label{font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-weight:700}.daily-score{font-weight:900;line-height:1}.daily-score b{font-size:5rem;color:var(--token)}.daily-score span{font-size:2.4rem;color:var(--muted)}.daily-verdict{font-size:1.3rem;font-weight:700}.daily-squares{font-size:1.8rem;letter-spacing:.15em;line-height:1}.daily-result button.big{min-width:240px}.daily-countdown{color:var(--text);font-variant-numeric:tabular-nums}.daily-tl-head{font-size:1rem;text-align:center;margin-top:4px}.daily>.daily-tl-head+.timeline-wrap{padding-bottom:24px}.home-daily{display:flex;align-items:center;gap:16px;margin-bottom:16px;padding:18px 24px;color:var(--text);text-decoration:none;box-shadow:0 20px 50px #00000040;transition:border-color .15s}.home-daily:hover{border-color:var(--accent-2)}.home-daily .home-daily-text{flex:1;min-width:0}.home-daily h2{font-size:1.2rem}.home-daily p{margin:4px 0 0}.home-daily .go{color:var(--accent-2);font-weight:700;white-space:nowrap}@media(max-width:860px){.daily{padding:12px 16px 0;gap:12px}.daily .tcard{width:78px;min-height:80px;padding:8px 5px}.daily .slot{width:24px;margin:0 2px}.daily .slot.selected{width:24px}.daily>.timeline-wrap{margin:0 -16px;width:calc(100% + 32px);padding-inline:16px}.daily .tcard .y{font-size:1.3rem}.daily .turn-head .headline{font-size:1.25rem}.pips i{width:16px;height:16px}.daily-score b{font-size:4rem}}@media(orientation:landscape)and (max-height:500px){.game .shot-wrap,.daily .shot-wrap{position:fixed;inset:0;z-index:10;width:auto;margin:0;background:#000;display:grid;place-items:center}.game .shot-wrap>.shot,.daily .shot-wrap>.shot{width:min(100vw,100vh * 16 / 9);width:min(100vw,100dvh * 16 / 9);border:0;border-radius:0;box-shadow:none}.game .shot-wrap>.countdown{top:calc(10px + env(safe-area-inset-top));right:calc(10px + env(safe-area-inset-right))}html:has(.game .shot-wrap,.daily .shot-wrap){overflow:hidden}html:has(.game .shot-wrap,.daily .shot-wrap) .toast{bottom:auto;top:calc(12px + env(safe-area-inset-top))}}.daily-stats{text-align:center;display:flex;flex-direction:column;align-items:center;gap:6px;padding:22px 20px 18px}.daily-stats h3{margin:0;font-size:1rem}.daily-stats p{margin:0}.daily-stats p b{color:var(--text)}.dist{display:flex;gap:2px;width:min(100%,420px);margin-top:10px}.dist-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0}.dist-val{font-size:.75rem;line-height:1;margin-bottom:5px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.dist-track{width:100%;max-width:40px;height:140px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;border-bottom:1px solid var(--line)}.dist-bar{width:100%;height:max(4px,calc(var(--v) * (100% - 18px)));border-radius:4px 4px 0 0;background:color-mix(in srgb,var(--muted) 45%,var(--panel));transform-origin:bottom;transition:height .4s ease;animation:grow .7s cubic-bezier(.2,.8,.2,1) both}.dist-bar.none{height:0}.dist-label{font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums}.dist-col.you .dist-bar{background:var(--token)}.dist-col.you .dist-val,.dist-col.you .dist-label{color:var(--text);font-weight:700}.dist-axis{margin-top:2px}@keyframes grow{0%{transform:scaleY(0)}}
