:root{--bg:#f1ece1;--card:#fbf8f1;--ink:#18191d;--ink-2:#4a4a50;--ink-3:#8a877f;--line:#e0d9ca;--field:#fff;--face:#fbf7ee;--device:#23252b;--leaf-a:#2f3239;--leaf-b:#363941;--b2:#bfdcc6;--b3:#6db391;--b4:#1e6a55;--red:#e5482f;--t0:#2f5fd0;--t1:#d18a12;--primary:#18191d;--on-primary:#fbf8f1;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#121316;--card:#1b1c20;--ink:#f1ede4;--ink-2:#c4c0b6;--ink-3:#8a877f;--line:#2d2e34;--field:#232429;--device:#2b2d34;--leaf-a:#3a3d45;--leaf-b:#42454e;--t0:#6d93f0;--t1:#f0b23e;--primary:#f1ede4;--on-primary:#18191d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--ink);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;margin:0;font:400 16px/1.4 -apple-system,BlinkMacSystemFont,SF Pro Text,system-ui,sans-serif}button,input{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}button:disabled{cursor:default;opacity:.4}:focus-visible{outline:2px solid var(--t0);outline-offset:2px}h2{margin:0;font-size:17px;font-weight:650}.muted{color:var(--ink-3)}.center{text-align:center}.small{font-size:14px}.primary,.secondary,.ghost{border-radius:25px;justify-content:center;align-items:center;gap:8px;height:50px;padding:0 22px;font-size:16px;font-weight:600;transition:transform .12s,background-color .15s;display:inline-flex}.primary{background:var(--primary);color:var(--on-primary)}.secondary{background:var(--card);border:1.5px solid var(--ink)}.ghost{color:var(--ink-2)}.ghost.small{border:1.5px dashed var(--line);border-radius:18px;width:100%;height:36px;padding:0 14px;font-size:14px}.primary:not(:disabled):active,.secondary:not(:disabled):active{transform:scale(.97)}.link{color:var(--ink-2);text-underline-offset:3px;text-decoration:underline;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);padding:8px}.icon{border-radius:20px;flex:none;place-items:center;width:40px;height:40px;display:grid}.icon svg,.x svg,.code-chip svg,.count svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.icon:not(:disabled):hover{background:var(--line)}.field{border:1.5px solid var(--line);background:var(--field);border-radius:14px;outline:none;width:100%;height:50px;padding:0 16px;transition:border-color .15s}.field:focus{border-color:var(--ink)}.field.big{font-size:18px;font-weight:600}.card{background:var(--card);border-radius:20px;flex-direction:column;gap:14px;padding:18px;display:flex}.row{justify-content:space-between;align-items:center;gap:12px;display:flex}.pill{background:var(--line);color:var(--ink-2);border-radius:10px;padding:2px 8px;font-size:12px;font-weight:600}.home{max-width:420px;padding:max(56px, env(safe-area-inset-top)) 16px 40px;flex-direction:column;gap:18px;margin:0 auto;display:flex}.logo{letter-spacing:-.03em;justify-content:center;align-items:center;gap:12px;font-size:44px;font-weight:800;display:flex}.logo svg{width:64px;height:40px}.logo .lf{fill:var(--face);stroke:var(--ink);stroke-width:2.5px}.logo .lb{fill:var(--b4)}.logo .ln{stroke:var(--red);stroke-width:3.5px;stroke-linecap:round;transform-origin:32px 36px;animation:5s ease-in-out infinite sweep}.logo .lh{fill:var(--ink)}@keyframes sweep{0%,to{transform:rotate(0)}40%{transform:rotate(-78deg)}70%{transform:rotate(-30deg)}}.tag{text-align:center;color:var(--ink-2);margin:-8px 0 8px}.form{gap:12px;padding:22px 18px}.form .primary{width:100%}.or{text-align:center;color:var(--ink-3);font-size:14px}.join{gap:8px;display:flex}.field.code{text-transform:uppercase;letter-spacing:.2em;text-align:center;font-weight:650}.field.code::placeholder{letter-spacing:.2em}.picker{justify-content:center;align-items:center;gap:14px;padding:4px 0 6px;display:flex}.picker .icon{background:var(--bg)}.picker .icon svg{stroke-width:2.2px}.avatar{border-radius:50%;flex:none;display:block}.avatar.dim{opacity:.4;filter:grayscale(.6)}.how{color:var(--ink-2);padding:4px}.how summary{cursor:pointer;color:var(--ink);padding:6px 0;font-weight:600}.how ol{gap:8px;margin:8px 0 0;padding-left:20px;display:grid}.room{max-width:600px;min-height:100dvh;padding:0 16px env(safe-area-inset-bottom);flex-direction:column;margin:0 auto;display:flex}.bar{padding:max(12px, env(safe-area-inset-top)) 0 8px;z-index:5;background:var(--bg);align-items:center;gap:8px;display:flex;position:sticky;top:0}.code-chip{background:var(--card);letter-spacing:.12em;border-radius:18px;align-items:center;gap:8px;height:36px;padding:0 12px;font-weight:700;display:inline-flex}.code-chip svg{color:var(--ink-3)}.score{align-items:center;gap:10px;margin-left:auto;display:flex}.score .num{font-variant-numeric:tabular-nums;font-size:22px;font-weight:750}.score .sub{color:var(--ink-3);font-size:12px}.score .team{align-items:center;gap:6px;display:inline-flex}.score .team i,.teamname i{border-radius:50%;width:10px;height:10px;display:inline-block}.t0 i{background:var(--t0)}.t1 i{background:var(--t1)}.seg{background:var(--card);border-radius:18px;margin-left:auto;padding:3px;display:inline-flex}.score+.seg{margin-left:8px}.seg button{height:30px;color:var(--ink-3);border-radius:15px;padding:0 12px;font-size:14px;font-weight:600;transition:background-color .15s,color .15s}.seg button.on{background:var(--primary);color:var(--on-primary)}.loading{color:var(--ink-3);margin:auto}.toast{left:50%;bottom:max(24px, env(safe-area-inset-bottom));background:var(--primary);color:var(--on-primary);opacity:0;pointer-events:none;z-index:20;border-radius:20px;max-width:calc(100vw - 32px);padding:10px 18px;font-size:15px;font-weight:500;transition:opacity .2s,transform .2s;position:fixed;transform:translate(-50%,20px)}.toast.show{opacity:1;transform:translate(-50%)}.lobby{flex-direction:column;gap:14px;padding-bottom:24px;display:flex}.hero{flex-direction:column;align-items:center;gap:4px;padding:8px 0 4px;display:flex}.hero .me{font-size:20px;font-weight:700}.hero .link b{color:var(--ink);letter-spacing:.1em}.head .seg{background:var(--bg);margin-left:0}.teams{grid-template-columns:1fr 1fr;gap:12px;display:grid}.teamcol{flex-direction:column;gap:8px;min-width:0;display:flex}.teamname{align-items:center;gap:8px;padding-bottom:2px;font-size:15px;font-weight:650;display:flex}.grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;display:grid}.chip{align-items:center;gap:10px;min-width:0;display:flex}.chip .nm{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:550;overflow:hidden}.chip.off .nm{color:var(--ink-3)}.x{width:26px;height:26px;color:var(--ink-3);border-radius:13px;flex:none;place-items:center;margin-left:auto;display:grid}.x:hover{background:var(--line);color:var(--ink)}.stepper .steps{background:var(--bg);border-radius:20px;align-items:center;gap:4px;display:flex}.stepper .num{text-align:center;font-variant-numeric:tabular-nums;min-width:28px;font-weight:700}.toggle{cursor:pointer}.toggle input{appearance:none;background:var(--line);cursor:pointer;border-radius:14px;flex:none;width:46px;height:28px;margin:0;transition:background-color .2s;position:relative}.toggle input:after{content:"";background:#fff;border-radius:50%;width:22px;height:22px;transition:transform .2s;position:absolute;top:3px;left:3px}.toggle input:checked{background:var(--b4)}.toggle input:checked:after{transform:translate(18px)}.pair{grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;display:grid}.pair .dash{color:var(--ink-3);font-size:14px}.pair .secondary{grid-column:1/-1;height:44px}.prompts{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.prompts li{border-top:1px solid var(--line);grid-template-columns:1fr auto auto;align-items:center;gap:8px;padding:10px 0;font-weight:550;display:grid}.prompts .pa,.prompts .by{color:var(--ink-3);font-size:13px;font-weight:400}.dock{padding:12px 0 max(16px, env(safe-area-inset-bottom));background:var(--bg);flex-direction:column;align-items:stretch;gap:8px;margin-top:auto;display:flex;position:sticky;bottom:0}.dock p{margin:0}.dock>.link{align-self:center}.play{flex-direction:column;flex:1;gap:6px;display:flex}.cluehead{color:var(--ink-2);justify-content:center;align-items:center;gap:8px;margin-top:8px;font-size:15px;display:flex}.tdot.t0{color:var(--t0)}.tdot.t1{color:var(--t1)}.clue{text-align:center;letter-spacing:-.02em;overflow-wrap:anywhere;min-height:1.1em;font-size:clamp(28px,7.5vw,40px);font-weight:750;line-height:1.1}.clue.empty{color:var(--ink-3);font-weight:600}.stage{margin:8px -4px 0}.dialbox{position:relative}.dial2d{touch-action:none;-webkit-user-select:none;user-select:none;width:100%;height:auto;display:block}.dial2d:focus{outline:none}.ends.none{visibility:hidden}.dial2d.live{cursor:grab}.dial2d.live:active{cursor:grabbing}.dial2d .face{fill:var(--face)}.dial2d .rim{fill:none;stroke:var(--device);stroke-width:8px}.dial2d .band.b2{fill:var(--b2)}.dial2d .band.b3{fill:var(--b3)}.dial2d .band.b4{fill:var(--b4)}.dial2d .bandnum{text-anchor:middle;dominant-baseline:central;fill:#18191d;font-size:14px;font-weight:650}.dial2d .bandnum.b4{fill:#fbf7ee}.dial2d .tick{stroke:#18191d;stroke-width:1.2px;stroke-linecap:round}.dial2d .tick.long{stroke-width:2.2px}.dial2d .shutter .leaf{transform-box:view-box;transform-origin:200px 206px;transition:transform .9s cubic-bezier(.65,0,.25,1)}.dial2d .leaf.l{fill:var(--leaf-a)}.dial2d .leaf.r{fill:var(--leaf-b)}.dial2d .shutter.open .leaf.l{transform:rotate(-92deg)}.dial2d .shutter.open .leaf.r{transform:rotate(92deg)}.dial2d .needle{transform-box:view-box;transform-origin:200px 206px;transition:transform .12s linear}.dial2d.live .needle{transition:none}.dial2d .needle line{stroke:var(--red);stroke-width:6px;stroke-linecap:round}.dial2d .needle circle{fill:var(--red)}.dial2d .base,.dial2d .hub{fill:var(--device)}.dial2d .hubdot{fill:var(--red)}.dial3d{aspect-ratio:400/260;touch-action:none;width:100%}.ends{justify-content:space-between;gap:16px;padding:10px 4px 0;font-size:17px;font-weight:650;display:flex}.end{align-items:center;gap:8px;max-width:48%;display:flex}.end.r{text-align:right}.arrow{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:22px;height:12px}.stamp{pointer-events:none;flex-direction:column;align-items:center;animation:.55s cubic-bezier(.2,1.4,.4,1) .75s both stamp,.4s ease-in 3.2s forwards stampout;display:flex;position:absolute;top:34%;left:50%;transform:translate(-50%,-50%)}.stamp .big{letter-spacing:-.04em;color:#18191d;background:var(--face);border:3px solid #18191d;border-radius:20px;padding:4px 18px;font-size:64px;font-weight:850;line-height:1}.stamp.p4 .big{background:var(--b4);color:#fbf7ee}.stamp.p0 .big{background:var(--red);color:#fbf7ee}.stamp .what{color:#18191d;background:var(--face);border-radius:10px;margin-top:8px;padding:2px 10px;font-size:14px;font-weight:650}@keyframes stampout{to{opacity:0;transform:translate(-50%,-50%)scale(.85)rotate(-3deg)}}@keyframes stamp{0%{opacity:0;transform:translate(-50%,-50%)scale(.4)rotate(-8deg)}to{opacity:1;transform:translate(-50%,-50%)scale(1)rotate(-3deg)}}.strip{flex-wrap:wrap;justify-content:center;gap:10px 6px;padding:14px 0 4px;display:flex}.who{flex-direction:column;align-items:center;gap:3px;width:56px;display:flex}.who .ring{border:2px solid #0000;border-radius:50%;padding:2px;position:relative}.who.t0 .ring{border-color:var(--t0)}.who.t1 .ring{border-color:var(--t1)}.who .wn{color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:12px;overflow:hidden}.who.off .wn{color:var(--ink-3)}.badge{border:2px solid var(--bg);border-radius:50%;place-items:center;width:20px;height:20px;display:grid;position:absolute;bottom:-3px;right:-5px}.badge svg{fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:12px;height:12px}.badge.eye{background:var(--ink)}.badge.eye svg{stroke:var(--bg)}.badge.ok{background:var(--b4);animation:.3s cubic-bezier(.2,1.6,.4,1) pop}.badge.ok svg{stroke:#fff}@keyframes pop{0%{transform:scale(0)}}.panel{flex-direction:column;align-items:stretch;gap:10px;display:flex}.panel>.link{align-self:center}.status{text-align:center;color:var(--ink-2);margin:0;font-size:16px}.dots{vertical-align:middle;gap:3px;margin-left:4px;display:inline-flex}.dots i{background:currentColor;border-radius:50%;width:4px;height:4px;animation:1.2s infinite dot}.dots i:nth-child(2){animation-delay:.15s}.dots i:nth-child(3){animation-delay:.3s}@keyframes dot{0%,60%,to{opacity:.25}30%{opacity:1}}.options{gap:8px;display:grid}.option{background:var(--card);border:1.5px solid var(--line);border-radius:16px;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;min-height:56px;padding:10px 16px;font-weight:650;transition:border-color .15s,transform .12s;display:grid}.option span:first-child{text-align:left}.option span:last-child{text-align:right}.option svg{fill:none;width:26px;height:12px;stroke:var(--ink-3);stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.option:hover,.option.on{border-color:var(--ink)}.option:active{transform:scale(.98)}.cluebox{gap:8px;display:flex}.cluebox .primary{flex:none}.readyrow{align-items:center;gap:8px;display:flex}.readyrow .count{border:1.5px solid var(--line);font-variant-numeric:tabular-nums;border-radius:25px;align-items:center;gap:6px;height:50px;padding:0 16px;font-weight:650;display:inline-flex}.readyrow button{flex:1}.lr{grid-template-columns:1fr 1fr;gap:8px;display:grid}.lr .big{height:60px;font-size:18px}.lr svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:24px;height:12px}.over{flex-direction:column;gap:16px;padding:16px 0 24px;display:flex}.result{text-align:center;background:var(--b4);color:#fbf7ee;border-radius:20px;padding:24px 16px}.result.t0{background:var(--t0)}.result.t1{background:var(--t1);color:#18191d}.verdict{letter-spacing:-.02em;font-size:34px;font-weight:800}.final{opacity:.85;margin-top:2px;font-size:17px}.history{background:var(--card);border-radius:20px;margin:0;padding:0;list-style:none}.history li{align-items:center;gap:12px;padding:12px 16px;display:flex}.history li+li{border-top:1px solid var(--line)}.hl{flex-direction:column;flex:1;min-width:0;display:flex}.hc{font-weight:650}.hs{color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.mini{flex:none;width:44px;height:26px}.mini .mf{fill:var(--face);stroke:var(--device);stroke-width:1.5px}.mini .mt{fill:var(--b4)}.mini .mn{stroke:var(--red);stroke-width:2px;stroke-linecap:round}.hp{background:var(--line);border-radius:50%;flex:none;place-items:center;width:30px;height:30px;font-weight:750;display:grid}.hp.p4{background:var(--b4);color:#fbf7ee}.hp.p3{background:var(--b3);color:#18191d}.hp.p2{background:var(--b2);color:#18191d}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
