:root{--bg:#f5f6f0;--bg-tint:#eceee3;--surface:#fff;--surface-2:#f3f4ed;--surface-3:#e6e8da;--border:#e2e4d8;--border-strong:#c8cbb8;--text:#16170f;--text-dim:#55584a;--text-faint:#838774;--accent:#c8ff01;--accent-hover:#b6e800;--accent-text:#4e6b00;--accent-soft:#eefcc2;--accent-ring:#96be0066;--on-accent:#14170a;--lime:#c8ff01;--on-lime:#14170a;--warm:#d97706;--warm-soft:#fdf1d8;--good:#16955f;--good-soft:#dcf3e8;--bad:#d2453f;--bad-soft:#fbe4e3;--radius-xs:8px;--radius-sm:12px;--radius:18px;--radius-lg:26px;--radius-pill:999px;--shadow-sm:0 1px 2px #16170f0f, 0 2px 8px -4px #16170f14;--shadow:0 12px 32px -14px #16170f47;--shadow-accent:0 10px 26px -14px #a0cd00bf;--gutter:clamp(1rem, 4vw, 2.25rem);--content:74rem;--texture:none;--font-display:"Fredoka", "Nunito", system-ui, sans-serif;--font-body:"Nunito", system-ui, -apple-system, "Segoe UI", sans-serif}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0c0d0a;--bg-tint:#121410;--surface:#16180f;--surface-2:#1e2116;--surface-3:#2a2e1f;--border:#272a1d;--border-strong:#3d422c;--text:#f6f7f0;--text-dim:#a9ad98;--text-faint:#7a7e6a;--accent:#c8ff01;--accent-hover:#d8ff45;--accent-text:#c8ff01;--accent-soft:#262d0a;--accent-ring:#c8ff0159;--on-accent:#12150a;--warm:#f6b442;--warm-soft:#33270f;--good:#45d492;--good-soft:#10301f;--bad:#ff6f68;--bad-soft:#351a1b;--shadow-sm:0 1px 2px #00000073;--shadow:0 18px 40px -18px #000000d9;--shadow-accent:0 14px 32px -16px #c8ff0173}}:root[data-theme=dark]{--bg:#0c0d0a;--bg-tint:#121410;--surface:#16180f;--surface-2:#1e2116;--surface-3:#2a2e1f;--border:#272a1d;--border-strong:#3d422c;--text:#f6f7f0;--text-dim:#a9ad98;--text-faint:#7a7e6a;--accent:#c8ff01;--accent-hover:#d8ff45;--accent-text:#c8ff01;--accent-soft:#262d0a;--accent-ring:#c8ff0159;--on-accent:#12150a;--warm:#f6b442;--warm-soft:#33270f;--good:#45d492;--good-soft:#10301f;--bad:#ff6f68;--bad-soft:#351a1b;--shadow-sm:0 1px 2px #00000073;--shadow:0 18px 40px -18px #000000d9;--shadow-accent:0 14px 32px -16px #c8ff0173}:root[data-game=wordboo]{--bg:#f4f1ff;--bg-tint:#ebe5ff;--surface:#fff;--surface-2:#f2edff;--surface-3:#e4dcff;--border:#e3dbff;--border-strong:#c8baf5;--text:#1a1438;--text-dim:#4e4580;--text-faint:#8178b0;--accent:#6a4cf5;--accent-hover:#5b3ff0;--accent-text:#5b3ff0;--accent-soft:#e9e2ff;--accent-ring:#6a4cf559;--on-accent:#fff;--shadow-accent:0 10px 26px -14px #6a4cf573;--texture:url(/textures/wordboo-light.svg)}@media (prefers-color-scheme:dark){:root[data-game=wordboo]:not([data-theme=light]){--bg:#110e26;--bg-tint:#171338;--surface:#1b1642;--surface-2:#241e53;--surface-3:#2f2866;--border:#2b245e;--border-strong:#443a8c;--text:#f4f1ff;--text-dim:#b9b0e8;--text-faint:#8b82c2;--accent:#9b7bff;--accent-hover:#ae93ff;--accent-text:#c2b0ff;--accent-soft:#2b2266;--accent-ring:#9b7bff66;--on-accent:#120e2b;--shadow-accent:0 14px 32px -16px #9b7bff73;--texture:url(/textures/wordboo-dark.svg)}}:root[data-game=wordboo][data-theme=dark]{--bg:#110e26;--bg-tint:#171338;--surface:#1b1642;--surface-2:#241e53;--surface-3:#2f2866;--border:#2b245e;--border-strong:#443a8c;--text:#f4f1ff;--text-dim:#b9b0e8;--text-faint:#8b82c2;--accent:#9b7bff;--accent-hover:#ae93ff;--accent-text:#c2b0ff;--accent-soft:#2b2266;--accent-ring:#9b7bff66;--on-accent:#120e2b;--shadow-accent:0 14px 32px -16px #9b7bff73;--texture:url(/textures/wordboo-dark.svg)}:root[data-game=sizeboo]{--bg:#eef3fb;--bg-tint:#e3ebf8;--surface:#fff;--surface-2:#f1f5fc;--surface-3:#e1e9f6;--border:#d8e2f2;--border-strong:#b3c4e2;--text:#0f1d3a;--text-dim:#3f5279;--text-faint:#6f82a8;--accent:#ffc21a;--accent-hover:#ffb300;--accent-text:#8a5a00;--accent-soft:#fff1c4;--accent-ring:#e6a00073;--on-accent:#1d1600;--shadow-accent:0 10px 26px -14px #d6960099;--texture:url(/textures/sizeboo-light.svg)}@media (prefers-color-scheme:dark){:root[data-game=sizeboo]:not([data-theme=light]){--bg:#0a1530;--bg-tint:#0e1b3c;--surface:#112148;--surface-2:#172a57;--surface-3:#203668;--border:#1d3162;--border-strong:#2f4a89;--text:#eef3ff;--text-dim:#a9b8dc;--text-faint:#7688b6;--accent:#ffc933;--accent-hover:#ffd65c;--accent-text:#ffd65c;--accent-soft:#1f3c7c;--accent-ring:#ffc9336b;--on-accent:#1a1400;--shadow-accent:0 14px 32px -16px #ffc9336b;--texture:url(/textures/sizeboo-dark.svg)}}:root[data-game=sizeboo][data-theme=dark]{--bg:#0a1530;--bg-tint:#0e1b3c;--surface:#112148;--surface-2:#172a57;--surface-3:#203668;--border:#1d3162;--border-strong:#2f4a89;--text:#eef3ff;--text-dim:#a9b8dc;--text-faint:#7688b6;--accent:#ffc933;--accent-hover:#ffd65c;--accent-text:#ffd65c;--accent-soft:#1f3c7c;--accent-ring:#ffc9336b;--on-accent:#1a1400;--shadow-accent:0 14px 32px -16px #ffc9336b;--texture:url(/textures/sizeboo-dark.svg)}:root[data-game=colorboo]{--bg:#faf5f0;--bg-tint:#f4ebe3;--surface:#fff;--surface-2:#f8f1ea;--surface-3:#efe4da;--border:#eadfd4;--border-strong:#d6c4b4;--text:#2a1d17;--text-dim:#5e4b40;--text-faint:#8f7a6c;--accent:#ff6b4a;--accent-hover:#ff5a36;--accent-text:#c2391a;--accent-soft:#ffe6dd;--accent-ring:#ff6b4a66;--on-accent:#2a0e06;--shadow-accent:0 10px 26px -14px #e650288c;--texture:url(/textures/colorboo-light.svg)}@media (prefers-color-scheme:dark){:root[data-game=colorboo]:not([data-theme=light]){--bg:#15110f;--bg-tint:#1b1613;--surface:#221b18;--surface-2:#2a221e;--surface-3:#352b26;--border:#2f2622;--border-strong:#4a3c35;--text:#fbf3ee;--text-dim:#cdbbb0;--text-faint:#9a877c;--accent:#ff7d5c;--accent-hover:#ff9677;--accent-text:#ffa58c;--accent-soft:#3d2219;--accent-ring:#ff7d5c6b;--on-accent:#2a0e06;--shadow-accent:0 14px 32px -16px #ff7d5c73;--texture:url(/textures/colorboo-dark.svg)}}:root[data-game=colorboo][data-theme=dark]{--bg:#15110f;--bg-tint:#1b1613;--surface:#221b18;--surface-2:#2a221e;--surface-3:#352b26;--border:#2f2622;--border-strong:#4a3c35;--text:#fbf3ee;--text-dim:#cdbbb0;--text-faint:#9a877c;--accent:#ff7d5c;--accent-hover:#ff9677;--accent-text:#ffa58c;--accent-soft:#3d2219;--accent-ring:#ff7d5c6b;--on-accent:#2a0e06;--shadow-accent:0 14px 32px -16px #ff7d5c73;--texture:url(/textures/colorboo-dark.svg)}:root[data-game=drawboo]{--bg:#f6f5f0;--bg-tint:#eeece4;--surface:#fff;--surface-2:#f4f3ee;--surface-3:#e8e6dd;--border:#e4e1d6;--border-strong:#cfcabb;--text:#22252a;--text-dim:#4f545c;--text-faint:#858a92;--accent:#10b3a3;--accent-hover:#0ea394;--accent-text:#0b7a70;--accent-soft:#d6f3ef;--accent-ring:#10b3a359;--on-accent:#04211e;--shadow-accent:0 10px 26px -14px #10968a8c;--texture:url(/textures/drawboo-light.svg)}@media (prefers-color-scheme:dark){:root[data-game=drawboo]:not([data-theme=light]){--bg:#121417;--bg-tint:#171a1e;--surface:#1d2025;--surface-2:#24282e;--surface-3:#2e333a;--border:#2a2e35;--border-strong:#3f454e;--text:#f1f3f5;--text-dim:#b7bdc6;--text-faint:#858c96;--accent:#2dd4bf;--accent-hover:#5eead4;--accent-text:#5eead4;--accent-soft:#123b37;--accent-ring:#2dd4bf66;--on-accent:#04211e;--shadow-accent:0 14px 32px -16px #2dd4bf66;--texture:url(/textures/drawboo-dark.svg)}}:root[data-game=drawboo][data-theme=dark]{--bg:#121417;--bg-tint:#171a1e;--surface:#1d2025;--surface-2:#24282e;--surface-3:#2e333a;--border:#2a2e35;--border-strong:#3f454e;--text:#f1f3f5;--text-dim:#b7bdc6;--text-faint:#858c96;--accent:#2dd4bf;--accent-hover:#5eead4;--accent-text:#5eead4;--accent-soft:#123b37;--accent-ring:#2dd4bf66;--on-accent:#04211e;--shadow-accent:0 14px 32px -16px #2dd4bf66;--texture:url(/textures/drawboo-dark.svg)}:root[data-game=nameboo]{--bg:#f5efe1;--bg-tint:#ede4cf;--surface:#fffdf7;--surface-2:#f8f2e4;--surface-3:#ece2cb;--border:#e6dbc3;--border-strong:#cfc1a1;--text:#1f2340;--text-dim:#4c5070;--text-faint:#868aa0;--accent:#f2b231;--accent-hover:#e5a21c;--accent-text:#9a6500;--accent-soft:#fcefcc;--accent-ring:#f2b23166;--on-accent:#2a1d00;--shadow-accent:0 10px 26px -14px #d696148c;--texture:url(/textures/nameboo-light.svg);--nb-paper:#fdf8ea;--nb-ink:#1f2340;--nb-edge:#e3d6b8;--nb-on-team:#fff;--nb-neutral:#d9cba7;--nb-neutral-ink:#4f4429;--nb-boo:#1c1f33;--nb-boo-tint:#c9cbd6;--nb-red:#e5484d;--nb-red-tint:#f9d5d3;--nb-red-text:#c0272d;--nb-blue:#3a6ff0;--nb-blue-tint:#d6e1fb;--nb-blue-text:#2353c8;--nb-friend:#22a861;--nb-friend-tint:#d3efdf;--nb-friend-text:#157a45}@media (prefers-color-scheme:dark){:root[data-game=nameboo]:not([data-theme=light]){--bg:#11142a;--bg-tint:#151935;--surface:#1a1f3d;--surface-2:#212748;--surface-3:#2b3256;--border:#262c4d;--border-strong:#3a4270;--text:#f1f2fa;--text-dim:#b5b9d6;--text-faint:#8186a8;--accent:#f5bf4f;--accent-hover:#ffd27a;--accent-text:#ffd27a;--accent-soft:#3a2f12;--accent-ring:#f5bf4f66;--on-accent:#2a1d00;--shadow-accent:0 14px 32px -16px #f5bf4f66;--texture:url(/textures/nameboo-dark.svg);--nb-edge:#c9b98f;--nb-neutral:#cbbd97;--nb-neutral-ink:#3d341d;--nb-boo:#05060d;--nb-red:#ec5a5e;--nb-red-text:#ff8a8d;--nb-blue:#4d80ff;--nb-blue-text:#8fb0ff;--nb-friend:#2fbf71;--nb-friend-text:#6fe0a3}}:root[data-game=nameboo][data-theme=dark]{--bg:#11142a;--bg-tint:#151935;--surface:#1a1f3d;--surface-2:#212748;--surface-3:#2b3256;--border:#262c4d;--border-strong:#3a4270;--text:#f1f2fa;--text-dim:#b5b9d6;--text-faint:#8186a8;--accent:#f5bf4f;--accent-hover:#ffd27a;--accent-text:#ffd27a;--accent-soft:#3a2f12;--accent-ring:#f5bf4f66;--on-accent:#2a1d00;--shadow-accent:0 14px 32px -16px #f5bf4f66;--texture:url(/textures/nameboo-dark.svg);--nb-edge:#c9b98f;--nb-neutral:#cbbd97;--nb-neutral-ink:#3d341d;--nb-boo:#05060d;--nb-red:#ec5a5e;--nb-red-text:#ff8a8d;--nb-blue:#4d80ff;--nb-blue-text:#8fb0ff;--nb-friend:#2fbf71;--nb-friend-text:#6fe0a3}:root[data-game=hueboo]{--bg:#f7f6f4;--bg-tint:#efedea;--surface:#fff;--surface-2:#f6f5f2;--surface-3:#eae7e3;--border:#e6e2dd;--border-strong:#cfc9c2;--text:#1e1b1d;--text-dim:#555056;--text-faint:#8a8489;--accent:#e0336f;--accent-hover:#c9255f;--accent-text:#b81f57;--accent-soft:#fde4ed;--accent-ring:#e0336f61;--on-accent:#fff;--shadow-accent:0 10px 26px -14px #c81e5a80;--texture:url(/textures/hueboo-light.svg)}@media (prefers-color-scheme:dark){:root[data-game=hueboo]:not([data-theme=light]){--bg:#131215;--bg-tint:#18171b;--surface:#1f1e23;--surface-2:#26252b;--surface-3:#313037;--border:#2b2a30;--border-strong:#47454e;--text:#f6f4f6;--text-dim:#c6c2c8;--text-faint:#8f8b94;--accent:#ff5c93;--accent-hover:#ff7aa7;--accent-text:#ff8fb3;--accent-soft:#3b1a28;--accent-ring:#ff5c936b;--on-accent:#2a0614;--shadow-accent:0 14px 32px -16px #ff5c9373;--texture:url(/textures/hueboo-dark.svg)}}:root[data-game=hueboo][data-theme=dark]{--bg:#131215;--bg-tint:#18171b;--surface:#1f1e23;--surface-2:#26252b;--surface-3:#313037;--border:#2b2a30;--border-strong:#47454e;--text:#f6f4f6;--text-dim:#c6c2c8;--text-faint:#8f8b94;--accent:#ff5c93;--accent-hover:#ff7aa7;--accent-text:#ff8fb3;--accent-soft:#3b1a28;--accent-ring:#ff5c936b;--on-accent:#2a0614;--shadow-accent:0 14px 32px -16px #ff5c9373;--texture:url(/textures/hueboo-dark.svg)}:root[data-game=fuseboo]{--bg:#fbf6f2;--bg-tint:#f4ece6;--surface:#fff;--surface-2:#f8f2ee;--surface-3:#eee4de;--border:#ebe0d9;--border-strong:#d5c5bb;--text:#26171a;--text-dim:#5e4a4d;--text-faint:#907c7f;--accent:#d42a45;--accent-hover:#bd1f39;--accent-text:#b21d36;--accent-soft:#fde2e6;--accent-ring:#d42a455c;--on-accent:#fff;--shadow-accent:0 10px 26px -14px #be1e378c;--texture:url(/textures/fuseboo-light.svg)}@media (prefers-color-scheme:dark){:root[data-game=fuseboo]:not([data-theme=light]){--bg:#141012;--bg-tint:#1a1517;--surface:#221b1e;--surface-2:#2a2226;--surface-3:#362c30;--border:#30272b;--border-strong:#4c3f44;--text:#fbf1f2;--text-dim:#cfbcbf;--text-faint:#9a878b;--accent:#ff4d63;--accent-hover:#ff6b7e;--accent-text:#ff8494;--accent-soft:#3d1a21;--accent-ring:#ff4d636b;--on-accent:#2b0509;--shadow-accent:0 14px 32px -16px #ff4d6373;--texture:url(/textures/fuseboo-dark.svg)}}:root[data-game=fuseboo][data-theme=dark]{--bg:#141012;--bg-tint:#1a1517;--surface:#221b1e;--surface-2:#2a2226;--surface-3:#362c30;--border:#30272b;--border-strong:#4c3f44;--text:#fbf1f2;--text-dim:#cfbcbf;--text-faint:#9a878b;--accent:#ff4d63;--accent-hover:#ff6b7e;--accent-text:#ff8494;--accent-soft:#3d1a21;--accent-ring:#ff4d636b;--on-accent:#2b0509;--shadow-accent:0 14px 32px -16px #ff4d6373;--texture:url(/textures/fuseboo-dark.svg)}:root[data-game=typeboo]{--bg:#f5f7f3;--bg-tint:#ecefe8;--surface:#fff;--surface-2:#f4f6f1;--surface-3:#e5e9e1;--border:#e1e6dc;--border-strong:#c6cebf;--text:#17201a;--text-dim:#4d5a50;--text-faint:#839085;--accent:#16a34a;--accent-hover:#15803d;--accent-text:#15803d;--accent-soft:#dcfce7;--accent-ring:#16a34a5c;--on-accent:#fff;--shadow-accent:0 10px 26px -14px #15803d8c;--texture:url(/textures/typeboo-light.svg)}@media (prefers-color-scheme:dark){:root[data-game=typeboo]:not([data-theme=light]){--bg:#0f1311;--bg-tint:#141916;--surface:#19201c;--surface-2:#1f2722;--surface-3:#29332c;--border:#26302a;--border-strong:#3e4a42;--text:#eef5f0;--text-dim:#b8c4bc;--text-faint:#7f8c84;--accent:#3ddc84;--accent-hover:#5ce69a;--accent-text:#5ce69a;--accent-soft:#163322;--accent-ring:#3ddc8466;--on-accent:#052e16;--shadow-accent:0 14px 32px -16px #3ddc846b;--texture:url(/textures/typeboo-dark.svg)}}:root[data-game=typeboo][data-theme=dark]{--bg:#0f1311;--bg-tint:#141916;--surface:#19201c;--surface-2:#1f2722;--surface-3:#29332c;--border:#26302a;--border-strong:#3e4a42;--text:#eef5f0;--text-dim:#b8c4bc;--text-faint:#7f8c84;--accent:#3ddc84;--accent-hover:#5ce69a;--accent-text:#5ce69a;--accent-soft:#163322;--accent-ring:#3ddc8466;--on-accent:#052e16;--shadow-accent:0 14px 32px -16px #3ddc846b;--texture:url(/textures/typeboo-dark.svg)}:root[data-game=whenboo]{--bg:#faf6ee;--bg-tint:#f2ebdd;--surface:#fffdf8;--surface-2:#f7f1e5;--surface-3:#ece2cf;--border:#e8dcc6;--border-strong:#d0bf9f;--text:#2b2117;--text-dim:#5f4f3d;--text-faint:#938169;--accent:#c2410c;--accent-hover:#a8380b;--accent-text:#9a3412;--accent-soft:#ffedd5;--accent-ring:#c2410c59;--on-accent:#fff;--shadow-accent:0 10px 26px -14px #9a341280;--texture:url(/textures/whenboo-light.svg)}@media (prefers-color-scheme:dark){:root[data-game=whenboo]:not([data-theme=light]){--bg:#15110c;--bg-tint:#1b1610;--surface:#231c14;--surface-2:#2b2319;--surface-3:#382d20;--border:#32281c;--border-strong:#50412f;--text:#f8f1e6;--text-dim:#cfc0aa;--text-faint:#9a8a73;--accent:#f59e5b;--accent-hover:#f8b47e;--accent-text:#f8b47e;--accent-soft:#3d2a17;--accent-ring:#f59e5b66;--on-accent:#2b1406;--shadow-accent:0 14px 32px -16px #f59e5b6b;--texture:url(/textures/whenboo-dark.svg)}}:root[data-game=whenboo][data-theme=dark]{--bg:#15110c;--bg-tint:#1b1610;--surface:#231c14;--surface-2:#2b2319;--surface-3:#382d20;--border:#32281c;--border-strong:#50412f;--text:#f8f1e6;--text-dim:#cfc0aa;--text-faint:#9a8a73;--accent:#f59e5b;--accent-hover:#f8b47e;--accent-text:#f8b47e;--accent-soft:#3d2a17;--accent-ring:#f59e5b66;--on-accent:#2b1406;--shadow-accent:0 14px 32px -16px #f59e5b6b;--texture:url(/textures/whenboo-dark.svg)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);min-height:100vh;color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;font-weight:500;line-height:1.55}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.005em;margin:0;font-weight:600;line-height:1.15}h1{font-size:1.4rem}h2{font-size:1.6rem}h3{font-size:1.1rem}p{margin:0}ul,ol{margin:0;padding:0;list-style:none}a{color:inherit;text-decoration:none;transition:color .12s}a:hover{color:var(--accent-text)}img,svg{max-width:100%;display:block}:focus-visible{outline:3px solid var(--accent-ring);outline-offset:2px;border-radius:var(--radius-xs)}button,input,select,textarea{font:inherit;color:inherit}.btn{border-radius:var(--radius-pill);border:1.5px solid var(--border-strong);background:var(--surface);color:var(--text);font-family:var(--font-body);white-space:nowrap;cursor:pointer;justify-content:center;align-items:center;gap:.45rem;padding:.55rem 1.1rem;font-size:.92rem;font-weight:700;transition:background .14s,border-color .14s,color .14s,transform .1s,box-shadow .14s;display:inline-flex}.btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent-text)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent);box-shadow:var(--shadow-accent)}.btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover);color:var(--on-accent)}.btn-ghost{color:var(--text-dim);background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){background:var(--surface-2);color:var(--text);border-color:#0000}.btn-sm{padding:.32rem .75rem;font-size:.84rem}.btn-lg{padding:.72rem 1.5rem;font-size:1rem}.input{border-radius:var(--radius-pill);border:1.5px solid var(--border-strong);background:var(--surface);min-width:0;padding:.6rem .95rem;font-weight:600;transition:border-color .14s,box-shadow .14s}.input::placeholder{color:var(--text-faint);font-weight:500}.input:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-ring);outline:none}.card{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.badge{border-radius:var(--radius-pill);background:var(--surface-2);color:var(--text-dim);white-space:nowrap;align-items:center;gap:.25rem;padding:.14rem .6rem;font-size:.76rem;font-weight:700;display:inline-flex}.badge-accent{background:var(--accent-soft);color:var(--accent-text)}.badge-warm{background:var(--warm-soft);color:var(--warm)}.badge-good{background:var(--good-soft);color:var(--good)}.muted{color:var(--text-dim)}.faint{color:var(--text-faint)}.tiny{font-size:.82rem}.mono{letter-spacing:.14em;font-family:ui-monospace,SF Mono,Cascadia Mono,Menlo,monospace;font-weight:700}.stack{flex-direction:column;gap:1rem;display:flex}.stack-sm{flex-direction:column;gap:.5rem;display:flex}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.row{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.alert{border-radius:var(--radius-sm);background:var(--bad-soft);color:var(--bad);padding:.7rem 1rem;font-size:.9rem;font-weight:600}.app{isolation:isolate;flex-direction:column;min-height:100vh;display:flex;position:relative}.app:before{content:"";z-index:-1;pointer-events:none;background-image:var(--texture);background-size:288px 288px;height:min(1400px,100%);position:absolute;inset:0 0 auto;-webkit-mask-image:linear-gradient(#000 8%,#0000 80%);mask-image:linear-gradient(#000 8%,#0000 80%)}.shell{width:100%;max-width:var(--content);padding-inline:var(--gutter);margin-inline:auto}.site-header{z-index:20;background:color-mix(in srgb, var(--bg) 85%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1.5px solid var(--border);position:sticky;top:0}.site-header .shell{align-items:center;gap:1.25rem;height:68px;display:flex}.brand{color:var(--text);flex:none;align-items:center;display:inline-flex}.brand:hover{color:var(--accent-text)}.brand svg{width:auto;height:30px}.site-nav{gap:.25rem;margin-right:auto;display:flex}.site-nav a{border-radius:var(--radius-pill);color:var(--text-dim);padding:.4rem .85rem;font-size:.92rem;font-weight:700}.site-nav a:hover{background:var(--surface-2);color:var(--text)}.site-nav a.active{background:var(--accent-soft);color:var(--accent-text)}.header-tools{align-items:center;gap:.5rem;display:flex}.select{display:inline-flex;position:relative}.select-value{align-items:center;gap:.35rem;min-width:0;display:inline-flex}.select-chevron{color:var(--text-faint);flex:none;transition:transform .16s}[aria-expanded=true]>.select-chevron{transform:rotate(180deg)}.menu{z-index:30;scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent;border:1.5px solid var(--border);border-radius:var(--radius);background:var(--surface);min-width:max(100%,13.5rem);max-height:min(30rem,70vh);box-shadow:var(--shadow);text-align:left;margin:0;padding:.4rem;list-style:none;animation:.14s ease-out menu-in;position:absolute;top:calc(100% + .5rem);left:0;overflow-y:auto}.menu.is-end{left:auto;right:0}.menu:focus{outline:none}.menu-item{border-radius:var(--radius-sm);color:var(--text);cursor:pointer;white-space:nowrap;justify-content:space-between;align-items:center;gap:1rem;padding:.5rem .8rem;font-size:.92rem;font-weight:700;display:flex}.menu-item.is-active{background:var(--surface-2)}.menu-item[aria-selected=true]{background:var(--accent-soft);color:var(--accent-text)}.menu-hint{color:var(--text-faint);letter-spacing:.06em;font-size:.74rem}@keyframes menu-in{0%{opacity:0;transform:translateY(-4px)scale(.98)}}@media (prefers-reduced-motion:reduce){.menu{animation:none}.select-chevron{transition:none}}.lang-picker{gap:.35rem}.lang-picker svg{flex:none}.lang-picker[aria-expanded=true]{background:var(--surface-2);color:var(--text)}.lang-picker-code,.label-short{display:none}.theme-switch{border:1.5px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--surface-2);cursor:pointer;flex:none;align-items:center;gap:1px;padding:2px;display:inline-flex;position:relative}.theme-switch:before{content:"";background:var(--accent);width:24px;height:24px;box-shadow:var(--shadow-sm);border-radius:50%;transition:transform .18s;position:absolute;top:2px;left:2px}.theme-switch[aria-checked=true]:before{transform:translate(25px)}.theme-switch svg{width:24px;height:24px;color:var(--text-faint);padding:4px;transition:color .18s;position:relative}.theme-switch[aria-checked=false] .theme-sun,.theme-switch[aria-checked=true] .theme-moon{color:var(--on-accent)}.theme-switch:hover{border-color:var(--accent)}@media (prefers-reduced-motion:reduce){.theme-switch:before,.theme-switch svg{transition:none}}.site-main{flex:1;padding-block:clamp(1.5rem,4vw,3rem) 4.5rem}.site-footer{border-top:1.5px solid var(--border);color:var(--text-faint);padding-block:1.5rem;font-size:.84rem}.site-footer .shell{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.site-footer svg{width:auto;height:22px;color:var(--text-faint)}.player-chip{border:1.5px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);align-items:center;gap:.45rem;padding:.22rem .7rem .22rem .22rem;display:flex}.avatar{border-radius:var(--radius-pill);width:28px;height:28px;font-family:var(--font-display);color:var(--on-accent);background:var(--accent);flex:none;place-items:center;font-size:.74rem;font-weight:600;display:grid}.avatar-img{border-radius:var(--radius-pill);object-fit:cover;flex:none;width:28px;height:28px}.player-chip input{background:0 0;border:none;width:8rem;padding:0;font-size:.88rem;font-weight:700}.player-chip input:focus{outline:none}.hero{border-radius:var(--radius-lg);background:radial-gradient(120% 140% at 8% 0%, var(--accent-soft) 0%, transparent 55%), var(--surface);border:1.5px solid var(--border);grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:center;gap:clamp(1.5rem,4vw,3rem);margin-bottom:2.75rem;padding:clamp(1.75rem,4vw,3rem);display:grid;position:relative;overflow:hidden}.hero-ghost{width:24rem;color:var(--accent);opacity:.07;pointer-events:none;position:absolute;bottom:-22%;right:-3%}.hero-copy{z-index:1;position:relative}.hero h2{letter-spacing:-.02em;margin-block:.6rem .85rem;font-size:clamp(2rem,4.6vw,3.1rem)}.hero p{color:var(--text-dim);max-width:32rem;font-size:1.03rem}.hero-actions{margin-top:1.75rem}.join-card{z-index:1;background:var(--bg-tint);border-color:var(--border-strong);padding:1.4rem;position:relative}.join-card h3{margin-bottom:.2rem}.join-form{gap:.5rem;margin-top:1rem;display:flex}.join-form .input{text-transform:uppercase;letter-spacing:.24em;text-align:center;font-family:var(--font-display);flex:1;font-size:1.05rem}.join-form.is-compact{flex-wrap:wrap;justify-content:center;align-items:center;width:min(24rem,100%);margin-top:0}.join-form-label{color:var(--text-dim);font-size:.88rem;font-weight:700}.join-form.is-compact .input{flex:7rem;max-width:10rem;padding-block:.45rem}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.filter-row{flex-wrap:wrap;gap:.35rem;display:flex}.filter-row button{border-radius:var(--radius-pill);border:1.5px solid var(--border);background:var(--surface);color:var(--text-dim);cursor:pointer;padding:.34rem .9rem;font-size:.87rem;font-weight:700;transition:background .14s,color .14s,border-color .14s}.filter-row button:hover{color:var(--text);border-color:var(--border-strong)}.filter-row button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.game-grid{grid-template-columns:repeat(auto-fill,minmax(17.5rem,1fr));gap:1.25rem;display:grid}.game-card{cursor:pointer;flex-direction:column;transition:transform .16s,box-shadow .16s,border-color .16s;display:flex;position:relative;overflow:hidden}.game-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow);transform:translateY(-3px)}.game-card:has(.game-card-link:focus-visible){border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.game-card-link{color:inherit}.game-card-link:after{content:"";z-index:1;border-radius:inherit;position:absolute;inset:0}.game-card-link:focus-visible{outline:none}.game-card .game-cover img{transition:transform .3s}.game-card:hover .game-cover img{transform:scale(1.035)}.game-cover{aspect-ratio:16/9;place-items:center;display:grid;position:relative;overflow:hidden}.game-cover svg{width:62%;height:auto}.status-pin{color:#16170f;background:#ffffffe6;position:absolute;top:.7rem;right:.7rem}.game-card-body{flex-direction:column;flex:1;gap:.6rem;padding:1.05rem 1.15rem 1.15rem;display:flex}.game-card-head{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.game-card:hover h3{color:var(--accent-text)}.game-card-go{border-radius:var(--radius-pill);background:var(--surface-2);width:2.25rem;height:2.25rem;color:var(--text-dim);flex:none;place-items:center;transition:background .16s,color .16s;display:grid}.game-card-go svg{fill:none;stroke:currentColor;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;width:1.1rem;height:1.1rem;transition:transform .16s}.game-card:hover .game-card-go{background:var(--accent);color:var(--on-accent)}.game-card:has(.game-card-link:focus-visible) .game-card-go{background:var(--accent);color:var(--on-accent)}.game-card:hover .game-card-go svg{transform:translate(2px)}@media (prefers-reduced-motion:reduce){.game-card,.game-card .game-cover img,.game-card-go svg{transition:none}.game-card:hover,.game-card:hover .game-cover img,.game-card:hover .game-card-go svg{transform:none}}.game-card-tagline{color:var(--text-faint);font-size:.85rem;font-weight:600}.game-card-summary{color:var(--text-dim);flex:1;font-size:.9rem}.game-card-meta{flex-wrap:wrap;gap:.35rem;display:flex}.crumbs{color:var(--text-faint);margin-bottom:1rem;font-size:.85rem;font-weight:600}.detail-art{aspect-ratio:4/3;border-radius:var(--radius-sm);flex:none;place-items:center;width:8.5rem;display:grid;overflow:hidden}.detail-art svg{width:66%;height:auto}.game-cover.has-image img,.detail-art.has-image img{object-fit:cover;width:100%;height:100%}.game-start{text-align:center;flex-direction:column;align-items:center;gap:1.25rem;margin-bottom:1.75rem;padding:3rem 2.5rem 2.25rem;display:flex}.game-start h2{font-size:clamp(2rem,4vw,2.75rem)}.game-start-tagline{color:var(--text-dim);margin-top:-.25rem;font-size:1.1rem}.mode-picker{border:0;width:min(46rem,100%);margin:.75rem 0 0;padding:0}.mode-picker legend{color:var(--text-faint);letter-spacing:.12em;text-transform:uppercase;margin:0 auto .75rem;padding:0;font-size:.76rem;font-weight:700}.mode-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.mode-option{border:1.5px solid var(--border);border-radius:var(--radius);background:var(--surface-2);text-align:left;cursor:pointer;flex-direction:column;align-items:flex-start;gap:.2rem;padding:1rem 1.1rem 1.1rem;transition:border-color .14s,background .14s,box-shadow .14s;display:flex;position:relative}.mode-option:hover{border-color:var(--border-strong)}.mode-option.is-selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 3px var(--accent-ring)}.mode-option:has(input:focus-visible){outline:3px solid var(--accent-ring);outline-offset:2px}.mode-option input{opacity:0;pointer-events:none;position:absolute}.mode-option-name{font-family:var(--font-display);font-size:1.15rem;font-weight:600}.mode-option-meta{color:var(--accent-text);font-size:.8rem;font-weight:700}.mode-option-hint{color:var(--text-faint);font-size:.85rem;font-weight:600}.mode-option-soon{position:absolute;top:.75rem;right:.75rem}.btn-play{gap:.6rem;min-width:15rem;margin-top:.75rem;padding:1rem 2.75rem;font-size:1.15rem}.btn-play svg{width:18px;height:18px}.word-lang{flex-direction:column;align-items:center;gap:.6rem;width:min(15rem,100%);display:flex}.word-lang-label{color:var(--text-faint);letter-spacing:.12em;text-transform:uppercase;font-size:.76rem;font-weight:700}.word-lang .select{width:100%}.word-lang-trigger{text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:.5rem;width:100%;font-weight:700;display:flex}.word-lang-trigger:hover{border-color:var(--accent)}.word-lang-trigger[aria-expanded=true]{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-ring)}.word-lang.is-compact{flex-direction:row;justify-content:space-between;width:100%}.word-lang.is-compact .word-lang-label{color:var(--text-dim);letter-spacing:normal;text-transform:none;font-size:.86rem}.word-lang.is-compact .select{width:12rem}.word-lang.is-compact .word-lang-trigger{padding-block:.4rem;font-size:.9rem}.segmented-stack{flex-direction:column;align-items:center;gap:1.1rem;width:min(30rem,100%);display:flex}.segmented{flex-direction:column;align-items:center;gap:.6rem;width:100%;display:flex}.segmented-choices{grid-template-columns:repeat(var(--count), minmax(0, 1fr));border:1.5px solid var(--border);border-radius:var(--radius-pill);background:var(--surface-2);gap:4px;width:100%;padding:4px;display:grid}.segmented-choices label{border-radius:var(--radius-pill);color:var(--text-dim);text-align:center;cursor:pointer;padding:.5rem .4rem;font-size:.9rem;font-weight:700;transition:background .14s,color .14s;position:relative}.segmented-choices label:hover{color:var(--text)}.segmented-choices label.is-selected{background:var(--accent);color:var(--on-accent)}.segmented-choices label:has(input:focus-visible){outline:3px solid var(--accent-ring);outline-offset:1px}.segmented-choices input{opacity:0;pointer-events:none;position:absolute}.segmented p{text-align:center;margin:0}.segmented.is-compact{flex-direction:row;justify-content:space-between}.segmented.is-compact .word-lang-label{color:var(--text-dim);letter-spacing:normal;text-transform:none;font-size:.86rem}.segmented.is-compact .segmented-choices{width:12rem}.segmented.is-compact .segmented-choices label{padding-block:.3rem;font-size:.84rem}.board-lang{flex-direction:column;gap:.4rem;margin-bottom:.85rem;display:flex}.panel-head{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.credit{margin-top:1rem}.credit a{color:inherit;text-decoration:underline}.game-start-links{color:var(--text-dim);gap:1.25rem;font-size:.9rem;font-weight:700;display:flex}.game-logo{justify-content:center;gap:.2143em;font-size:32px;display:flex}.game-logo-tile{width:1.5714em;height:1.7143em;font-family:var(--font-display);border-radius:.3571em;place-items:center;font-size:1em;font-weight:600;line-height:1;display:grid}.tile-hit{background:var(--lime);color:var(--on-lime)}.tile-near{background:var(--warm);color:var(--on-lime)}.tile-miss{background:var(--surface-3);color:var(--text)}.tile-accent{background:var(--accent);color:var(--on-accent)}.detail-layout{grid-template-columns:minmax(0,1fr) 20rem;align-items:start;gap:1.5rem;display:grid}.panel{padding:1.35rem}.panel>h3{margin-bottom:.85rem}.rule-list{color:var(--text-dim);flex-direction:column;gap:.6rem;font-size:.93rem;display:flex}.rule-list li{gap:.65rem;display:flex}.rule-list li:before{content:"";border-radius:var(--radius-pill);background:var(--accent-text);flex:none;width:7px;height:7px;margin-top:.55rem}.meta-list{flex-direction:column;gap:.6rem;font-size:.92rem;font-weight:600;display:flex}.meta-list li{justify-content:space-between;gap:1rem;display:flex}.meta-list span:first-child{color:var(--text-faint);font-weight:500}.room-head{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.25rem;padding:1rem 1.15rem;display:flex}.room-head-title{align-items:center;gap:.85rem;margin-right:auto;display:flex}.room-head .detail-art{aspect-ratio:1;border-radius:var(--radius-xs);width:3.6rem}.room-code{border:1.5px dashed var(--border-strong);border-radius:var(--radius-pill);background:var(--surface-2);align-items:center;gap:.6rem;padding:.35rem .4rem .35rem .9rem;font-size:.88rem;display:flex}.play-layout{grid-template-columns:minmax(0,1fr) 18rem;align-items:start;gap:1.25rem;display:grid}.board-frame{border:2px dashed var(--border-strong);border-radius:var(--radius-lg);background:var(--surface);text-align:center;place-items:center;min-height:min(62vh,32rem);padding:2rem;display:grid}.board-placeholder{flex-direction:column;align-items:center;gap:.75rem;max-width:27rem;display:flex}.board-placeholder .ghost{width:5rem;color:var(--text-faint);opacity:.55;margin-bottom:.25rem}.board-placeholder p{color:var(--text-dim);font-size:.94rem}.slot-list{flex-direction:column;gap:.45rem;display:flex}.slot{border-radius:var(--radius-pill);background:var(--surface-2);align-items:center;gap:.6rem;padding:.45rem .6rem;font-size:.9rem;font-weight:600;display:flex}.slot.empty{border:1.5px dashed var(--border);color:var(--text-faint);background:0 0}.slot .avatar{width:26px;height:26px;font-size:.68rem}.slot .avatar.ghost-seat{background:var(--surface-3);color:var(--text-faint)}.table{border-collapse:collapse;width:100%;font-size:.92rem}.table th{text-align:left;color:var(--text-faint);text-transform:uppercase;letter-spacing:.06em;border-bottom:1.5px solid var(--border);padding-bottom:.55rem;font-size:.76rem;font-weight:700}.table td{border-bottom:1px solid var(--border);padding-block:.6rem;font-weight:600}.table tr:last-child td{border-bottom:none}.table td:last-child,.table th:last-child{text-align:right}.score-table{border-collapse:separate;border-spacing:0}.score-table td:first-child,.score-table th:first-child{padding-left:.7rem}.score-table td:last-child,.score-table th:last-child{padding-right:.7rem}.score-name{flex-wrap:wrap;align-items:center;gap:.2rem .45rem;display:inline-flex}.score-table tr.is-me td{background:var(--accent-soft);border-bottom-color:#0000}.score-you{background:var(--accent);color:var(--on-accent);padding:.08rem .5rem;font-size:.7rem}.score-table tr.is-me td:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm);box-shadow:inset 4px 0 0 var(--accent-text);color:var(--accent-text);font-weight:800}.score-table tr.is-me td:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}:is(.score-table tr:has(+tr.is-me) td,.score-table tr:has(+tr.score-gap) td){border-bottom-color:#0000}.score-table tr.score-gap td{text-align:center;border-bottom:none;padding:.8rem 0 .4rem}.score-gap span{color:var(--text-faint);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:.6rem;font-size:.72rem;font-weight:700;display:flex}.score-gap span:before,.score-gap span:after{content:"";border-top:1.5px dashed var(--border-strong);flex:1}.empty-state{text-align:center;color:var(--text-faint);padding:1.5rem 1rem;font-size:.9rem;font-weight:600}@media (width<=64rem){.lang-picker-name{display:none}.lang-picker-code{display:inline}.hero,.detail-layout,.play-layout{grid-template-columns:1fr}.hero-ghost{display:none}}@media (width<=44rem){.site-header{position:static}.site-header .shell{flex-wrap:wrap;gap:.5rem;height:auto;padding-block:.6rem}.header-tools{display:contents}.brand{order:1;margin-right:auto}.lang-select,.theme-toggle{order:2}.player-chip{flex:12rem;order:3;min-width:0}.auth-menu{order:4}.site-nav{order:5;width:100%;margin-right:0}.player-chip input{flex:1;width:auto;min-width:0}.label-long{display:none}.label-short{display:inline}.detail-art{aspect-ratio:16/9;width:100%}.game-start{padding:1.75rem 1.25rem 1.5rem}.mode-options{gap:.5rem}.mode-option{padding:.7rem .75rem}.mode-option-hint{display:none}.mode-option-soon{margin-top:.3rem;position:static}.btn-play{width:100%}.game-logo{font-size:22px}.room-head-title{width:100%}}.prose{gap:.85rem;max-width:46rem;margin-inline:auto;line-height:1.6;display:grid}.prose h1{font-size:clamp(1.7rem,4vw,2.2rem)}.prose h2{margin:.6rem 0 .35rem;font-size:1.15rem}.prose section p+p{margin-top:.6rem}.prose a{color:var(--accent-text);font-weight:700}.site-footer nav{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.site-footer nav a,.footer-link{color:var(--text-faint);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700}.site-footer nav a:hover,.footer-link:hover{color:var(--text)}.cookie-banner{z-index:50;border-color:var(--border-strong);width:min(25rem,100vw - 2rem);box-shadow:var(--shadow);gap:.9rem;padding:1.1rem 1.15rem 1.15rem;animation:.24s ease-out both cookie-rise;display:grid;position:fixed;bottom:1rem;left:1rem}.cookie-banner h2{padding-right:1.6rem;font-size:1.05rem}.cookie-banner p{color:var(--text-dim);margin-top:.35rem;font-size:.86rem;line-height:1.5}.cookie-banner a{color:var(--accent-text);white-space:nowrap;font-weight:700}.cookie-banner-now{font-weight:700}.cookie-banner-actions{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}.cookie-banner-close{border-radius:var(--radius-pill);width:1.9rem;height:1.9rem;color:var(--text-faint);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:absolute;top:.7rem;right:.7rem}.cookie-banner-close:hover{background:var(--surface-2);color:var(--text)}.cookie-banner-close svg{stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:14px;height:14px}@keyframes cookie-rise{0%{opacity:0;transform:translateY(12px)}}@media (prefers-reduced-motion:reduce){.cookie-banner{animation:none}}@media (width<=44rem){.cookie-banner{width:auto;bottom:.5rem;left:.5rem;right:.5rem}}.game-panel{border:1.5px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);flex-direction:column;align-items:center;gap:24px;padding:28px 40px 36px;display:flex;position:relative}.wb-status{color:var(--text-faint);font-size:.875rem;font-weight:600}.wb-toast{z-index:2;border-radius:var(--radius-pill);background:var(--text);color:var(--bg);white-space:nowrap;padding:12px 20px;font-size:.94rem;font-weight:700;animation:1.5s forwards wb-toast;position:absolute;top:64px;left:50%;transform:translate(-50%)}.wb-board{flex-direction:column;gap:8px;display:flex}.wb-row{gap:8px;display:flex}.wb-tile{--tile:62px;width:var(--tile);height:var(--tile);border:2px solid var(--border-strong);color:var(--text);font-family:var(--font-display);text-transform:uppercase;-webkit-user-select:none;user-select:none;background:0 0;border-radius:12px;place-items:center;font-size:32px;font-weight:600;line-height:1;display:grid}.wb-tile[data-state=typed]{border-color:var(--text-faint);animation:.1s ease-out wb-pop}.wb-tile[data-state=hit]{background:var(--lime);color:var(--on-lime);border-color:#0000}.wb-tile[data-state=near]{background:var(--warm);color:var(--on-lime);border-color:#0000}.wb-tile[data-state=miss]{background:var(--surface-3);color:var(--text);border-color:#0000}.wb-tile.is-revealing{animation:wb-flip .25s ease-in-out calc(var(--i) * .1s) both;transition:background-color,border-color,color;transition-delay:calc(var(--i) * .1s + .125s)}.wb-tile.is-winning{animation:wb-bounce .5s ease calc(var(--i) * 80ms)}.wb-row.is-shaking{animation:.3s ease-in-out wb-shake}.wb-tile-m{--tile:54px;border-radius:10px;font-size:28px}.wb-keyboard{flex-direction:column;gap:8px;width:100%;max-width:534px;display:flex}.wb-key-row{justify-content:center;gap:6px;display:flex}.wb-key{background:var(--surface-2);max-width:48px;height:58px;color:var(--text);font-family:var(--font-body);text-transform:uppercase;cursor:pointer;border:none;border-radius:10px;flex:1 1 0;place-items:center;padding:0;font-size:18px;font-weight:700;transition:background-color .14s,color .14s,transform 80ms;display:grid}.wb-key:active{transform:translateY(1px)}.wb-key-wide{flex-grow:1.56;max-width:75px}.wb-key-spacer{flex:.5 1 0;max-width:21px}.wb-key-enter{background:var(--accent);color:var(--on-accent);letter-spacing:.06em;font-size:13px}.wb-key[data-state=hit]{background:var(--lime);color:var(--on-lime)}.wb-key[data-state=near]{background:var(--warm);color:var(--on-lime)}.wb-key[data-state=miss]{background:var(--bg-tint);color:var(--text-faint)}.wb-legend{color:var(--text-dim);flex-direction:column;gap:10px;font-size:.875rem;font-weight:600;display:flex}.wb-legend li{align-items:center;gap:10px;display:flex}.wb-swatch{border-radius:4px;flex:none;width:18px;height:18px}.wb-swatch[data-state=hit]{background:var(--lime)}.wb-swatch[data-state=near]{background:var(--warm)}.wb-swatch[data-state=miss]{background:var(--surface-3)}.wb-overlay{z-index:40;background:color-mix(in srgb, var(--bg) 78%, transparent);justify-content:center;align-items:flex-start;padding:150px 16px 24px;animation:.2s ease-out wb-fade;display:flex;position:fixed;inset:0;overflow-y:auto}.wb-result{border:1.5px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);width:min(440px,100%);box-shadow:var(--shadow);flex-direction:column;gap:20px;padding:32px;animation:.26s ease-out wb-rise;display:flex}.wb-result-head{flex-direction:column;gap:6px;display:flex}.wb-result h2{font-size:34px}.wb-eyebrow{color:var(--text-faint);letter-spacing:.12em;text-transform:uppercase;font-size:12px;font-weight:700}.wb-eyebrow.is-accent{color:var(--accent-text)}.wb-answer{flex-direction:column;gap:8px;display:flex}.wb-answer p{color:var(--text-faint);font-size:13px;font-weight:600}.wb-spelled{color:var(--text);text-transform:uppercase;font-weight:800}.wb-answer-tiles{gap:6px;display:flex}.wb-stats{gap:12px;margin:0;display:flex}.wb-stats div{background:var(--surface-2);border-radius:14px;flex-direction:column-reverse;flex:1;gap:2px;padding:12px 14px;display:flex}.wb-stats dd{font-family:var(--font-display);margin:0;font-size:26px;font-weight:600;line-height:1.1}.wb-stats dt{color:var(--text-faint);font-size:12px;font-weight:600}.wb-note{color:var(--text-dim);font-size:14px}.wb-result-actions{flex-direction:column;gap:8px;display:flex}.wb-result-actions>div{gap:8px;display:flex}.wb-result-actions .btn{flex:1}.room-message{text-align:center;flex-direction:column;align-items:center;gap:1rem;padding:2.5rem 1.5rem;display:flex}.room-lobby{text-align:center;gap:18px;padding-block:44px}.room-code-tiles{gap:8px;display:flex}.room-code-tiles .wb-tile{border-color:var(--accent);animation:none}.room-lobby-hint{max-width:28rem}.room-lobby-actions{flex-wrap:wrap;justify-content:center}.room-players .slot{border-radius:var(--radius-sm)}.room-player{flex-direction:column;flex:1;min-width:0;display:flex}.room-player-name{overflow-wrap:anywhere;align-items:center;gap:.35rem;display:flex}.room-player-name .badge{padding:.05rem .45rem;font-size:.68rem}.room-rival{text-align:center;flex-direction:column;align-items:center;gap:.75rem;display:flex}.room-leave{align-self:flex-start}.room-standings{width:min(540px,100%)}.room-standings tr.is-me td{color:var(--accent-text)}.wb-mini{flex-direction:column;flex:none;gap:2px;display:flex}.wb-mini-row{gap:2px;display:flex}.wb-mini span{width:8px;height:8px;box-shadow:inset 0 0 0 1px var(--border);border-radius:2px}.wb-mini-md,.wb-mini-md .wb-mini-row{gap:5px}.wb-mini-md span{width:26px;height:26px;box-shadow:inset 0 0 0 1.5px var(--border-strong);border-radius:6px}.wb-mini span[data-state=hit]{background:var(--lime);box-shadow:none}.wb-mini span[data-state=near]{background:var(--warm);box-shadow:none}.wb-mini span[data-state=miss]{background:var(--surface-3);box-shadow:none}@keyframes wb-pop{50%{transform:scale(1.08)}}@keyframes wb-flip{50%{transform:rotateX(90deg)}}@keyframes wb-bounce{40%{transform:translateY(-12px)}70%{transform:translateY(3px)}}@keyframes wb-shake{20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}@keyframes wb-toast{0%{opacity:0;transform:translate(-50%,-6px)}12%,80%{opacity:1;transform:translate(-50%)}to{opacity:0}}@keyframes wb-fade{0%{opacity:0}}@keyframes wb-rise{0%{opacity:0;transform:translateY(16px)}}@media (prefers-reduced-motion:reduce){.wb-tile,.wb-row,.wb-toast,.wb-overlay,.wb-result{transition:none!important;animation:none!important}}@media (width<=44rem){.game-panel{gap:18px;padding:18px 8px 20px}.wb-status{font-size:.82rem}.wb-board,.wb-row{gap:6px}.wb-tile{--tile:54px;border-radius:10px;font-size:28px}.wb-key-row{gap:4px}.wb-key{border-radius:8px;height:52px;font-size:16px}.wb-key-enter{font-size:11px}.wb-overlay{padding-top:120px}.wb-result{padding:24px 20px}}.sb-panel{align-items:stretch;gap:16px}.sb-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;display:flex}.sb-chips{gap:6px;margin:0;padding:0;list-style:none;display:flex}.sb-chip{border-radius:var(--radius-pill);background:var(--surface-2);min-width:2.4rem;height:1.75rem;color:var(--text-faint);font-family:var(--font-display);place-items:center;padding:0 .5rem;font-size:.92rem;font-weight:600;display:inline-grid}.sb-chip[data-state=current]{background:var(--accent-soft);color:var(--accent-text);box-shadow:inset 0 0 0 2px var(--accent)}.sb-chip[data-state=great]{background:var(--good-soft);color:var(--good)}.sb-chip[data-state=good]{background:var(--accent-soft);color:var(--accent-text)}.sb-chip[data-state=fair]{background:var(--warm-soft);color:var(--warm)}.sb-chip[data-state=poor]{background:var(--bad-soft);color:var(--bad)}.sb-stage{border:1.5px solid var(--border);border-radius:var(--radius);background-color:var(--surface-2);background-image:linear-gradient(color-mix(in srgb, var(--border) 70%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--border) 70%, transparent) 1px, transparent 1px);touch-action:pan-y;-webkit-user-select:none;user-select:none;background-position:-1px -1px;background-size:24px 24px;height:clamp(260px,46vh,420px);position:relative;overflow:hidden}.sb-stage.is-live{cursor:ew-resize}.sb-stage>svg{display:block}.sb-ruler line{stroke:var(--text-faint);stroke-width:1.5px;stroke-linecap:round}.sb-ruler text{fill:var(--text-faint);font-family:var(--font-body);font-size:10.5px;font-weight:700}.sb-ruler.is-revealed text{animation:.4s ease-out both sb-fade-in}@keyframes sb-fade-in{0%{opacity:0}}.sb-ground{stroke:var(--border-strong);stroke-width:2px}.sb-guide{stroke:var(--text-faint);stroke-width:1px;stroke-dasharray:4 5;opacity:.55}.sb-ink{color:var(--text)}.sb-guess{color:var(--accent);transition:opacity .2s}.sb-guess.is-locked{opacity:.32}.sb-real{color:var(--good);opacity:.85}.sb-captions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.sb-caption{border-radius:var(--radius-sm);background:var(--surface-2);align-items:center;gap:10px;min-width:0;padding:10px 14px;display:flex}.sb-caption>span:nth-child(2){flex-direction:column;flex:1;min-width:0;display:flex}.sb-caption strong{font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;font-size:1.02rem;font-weight:600;overflow:hidden}.sb-caption-size{color:var(--text-dim);font-size:.86rem;font-weight:600}.sb-swatch{background:var(--text);border-radius:4px;flex:none;width:14px;height:14px}.sb-swatch[data-kind=guess]{background:var(--accent)}.sb-swatch[data-kind=real]{background:var(--good)}.wb-legend .sb-swatch{width:16px;height:16px}.sb-control{gap:12px;display:grid}.sb-slider-row{align-items:center;gap:12px;display:flex}.sb-step{flex:none;width:44px;height:44px;padding:0}.sb-slider{cursor:ew-resize;appearance:none;background:0 0;flex:1;min-width:0;height:44px;margin:0}.sb-slider::-webkit-slider-runnable-track{border-radius:var(--radius-pill);background:repeating-linear-gradient(90deg, #00000052 0 1.5px, transparent 1.5px 10px) left center / 100% 7px no-repeat, var(--accent);height:16px}.sb-slider::-moz-range-track{border-radius:var(--radius-pill);background:repeating-linear-gradient(90deg, #00000052 0 1.5px, transparent 1.5px 10px) left center / 100% 7px no-repeat, var(--accent);height:16px}.sb-slider::-webkit-slider-thumb{border:3px solid var(--text);background:var(--surface);width:30px;height:30px;box-shadow:var(--shadow-sm);-webkit-appearance:none;border-radius:50%;margin-top:-7px}.sb-slider::-moz-range-thumb{border:3px solid var(--text);background:var(--surface);width:24px;height:24px;box-shadow:var(--shadow-sm);border-radius:50%}.sb-slider:focus-visible{outline:none}.sb-slider:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px var(--accent-ring)}.sb-slider:focus-visible::-moz-range-thumb{box-shadow:0 0 0 4px var(--accent-ring)}.sb-lock{width:100%}.sb-hint{text-align:center}.sb-verdict{border-radius:var(--radius);background:var(--surface-2);grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:14px 18px;animation:.24s ease-out sb-rise;display:grid}.sb-verdict-points{border-radius:var(--radius-sm);background:var(--good-soft);min-width:4.6rem;height:3.6rem;color:var(--good);font-family:var(--font-display);place-items:center;font-size:1.7rem;font-weight:600;display:grid}.sb-verdict[data-tone=good] .sb-verdict-points{background:var(--accent-soft);color:var(--accent-text)}.sb-verdict[data-tone=fair] .sb-verdict-points{background:var(--warm-soft);color:var(--warm)}.sb-verdict[data-tone=poor] .sb-verdict-points{background:var(--bad-soft);color:var(--bad)}.sb-verdict-text{flex-direction:column;gap:2px;min-width:0;display:flex}.sb-verdict-head{font-family:var(--font-display);font-size:1.25rem;font-weight:600}.sb-verdict-text .muted{font-size:.9rem}.sb-verdict-wait{text-align:right;max-width:12rem}@keyframes sb-rise{0%{opacity:0;transform:translateY(6px)}}.sb-units{border-radius:var(--radius-pill);background:var(--surface-2);gap:4px;padding:4px;display:flex}.sb-unit{border-radius:var(--radius-pill);color:var(--text-dim);font:inherit;cursor:pointer;background:0 0;border:0;flex:1;padding:.45rem .8rem;font-size:.9rem;font-weight:700}.sb-unit.is-on{background:var(--accent);color:var(--on-accent)}.sb-unit:focus-visible{outline:3px solid var(--accent-ring)}.sb-result-max{color:var(--text-faint);font-size:.6em}.sb-result-pairs{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.sb-result-pairs li{border-radius:var(--radius-sm);background:var(--surface-2);grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:8px 10px 8px 14px;font-size:.92rem;display:grid}.sb-result-names{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sb-mini-chips{gap:3px;display:flex}.sb-mini-chips span{background:var(--surface-3);border-radius:3px;width:10px;height:10px}.sb-mini-chips span[data-state=great]{background:var(--good)}.sb-mini-chips span[data-state=good]{background:var(--accent)}.sb-mini-chips span[data-state=fair]{background:var(--warm)}.sb-mini-chips span[data-state=poor]{background:var(--bad)}.sb-logo{font-family:var(--font-display);align-items:flex-end;gap:.12em;font-size:44px;font-weight:600;line-height:.9;display:inline-flex}.sb-logo-size{background:linear-gradient(var(--accent), var(--accent)) left bottom / 100% .12em no-repeat;align-items:flex-end;gap:.04em;padding:0 .08em .1em;display:inline-flex}.sb-logo-letter.is-0{font-size:.82em}.sb-logo-letter.is-1{font-size:.88em}.sb-logo-letter.is-2{font-size:.94em}.sb-logo-letter.is-3{font-size:1em}.sb-logo-boo{color:var(--accent-text);padding-bottom:.1em}@media (prefers-reduced-motion:reduce){.sb-verdict,.sb-ruler.is-revealed text{animation:none}.sb-guess{transition:none}}@media (width<=44rem){.sb-stage{height:280px}.sb-captions{grid-template-columns:1fr;gap:6px}.sb-verdict{grid-template-columns:auto 1fr}.sb-verdict>.btn,.sb-verdict-wait{text-align:left;grid-column:1/-1;max-width:none}.sb-logo{font-size:34px}}.cb-panel{align-items:stretch;gap:18px}.cb-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;display:flex}.cb-meters{align-items:center;gap:16px;display:flex}.cb-shuffle{border:1.5px solid var(--border);background:var(--surface-2);width:38px;height:38px;color:var(--text-dim);cursor:pointer;border-radius:50%;place-items:center;padding:0;transition:background .14s,color .14s,transform .2s;display:grid}.cb-shuffle svg,.cb-legend-shuffle{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.cb-legend-shuffle{width:22px;height:22px;color:var(--text-faint)}@media (hover:hover) and (pointer:fine){.cb-shuffle:not(:disabled):hover{background:var(--surface-3);color:var(--text)}}.cb-shuffle:not(:disabled):active{transform:rotate(180deg)scale(.92)}.cb-shuffle:focus-visible{outline:3px solid var(--accent-ring);outline-offset:2px}.cb-shuffle:disabled{opacity:.45;cursor:default}.cb-tries{gap:2px;display:inline-flex}.cb-heart{width:22px;height:22px;fill:var(--bad);transition:fill .2s,transform .2s}.cb-heart.is-lost{fill:var(--surface-3);transform:scale(.84)}.cb-clock{align-items:center;gap:8px;display:inline-flex}.cb-clock-bar{border-radius:var(--radius-pill);background:var(--surface-3);width:96px;height:8px;overflow:hidden}.cb-clock-bar>span{border-radius:inherit;background:var(--good);height:100%;transition:width .1s linear;display:block}.cb-clock.is-low .cb-clock-bar>span{background:var(--bad)}.cb-clock-text{min-width:2.4em;color:var(--text-dim);font-variant-numeric:tabular-nums;text-align:right;font-size:.9rem;font-weight:700}.cb-clock.is-low .cb-clock-text{color:var(--bad)}.cb-clock.is-free .cb-clock-text{min-width:0;color:var(--text-faint);font-size:.82rem}.cb-grid{grid-template-columns:repeat(var(--side), minmax(0, 1fr));gap:clamp(5px,1.1vw,9px);width:min(100%,520px);margin-inline:auto;animation:.24s ease-out cb-pop;display:grid}.cb-tile{aspect-ratio:1;border-radius:clamp(8px, calc(56px / var(--side)), 20px);cursor:pointer;-webkit-tap-highlight-color:transparent;border:0;place-items:center;padding:0;transition:transform .14s,opacity .2s;display:grid;position:relative}@media (hover:hover) and (pointer:fine){.cb-grid:not(.is-revealed) .cb-tile:not([data-state]):hover{transform:scale(.95)}}.cb-tile:active{transform:scale(.93)}.cb-tile:focus-visible{outline:3px solid var(--text);outline-offset:3px}.cb-tile[data-state=miss]{opacity:.32;cursor:default;animation:.32s cb-shake}.cb-tile svg{fill:none;width:46%;height:46%;stroke:var(--text);stroke-width:3px;stroke-linecap:round}.cb-grid.is-revealed .cb-tile{cursor:default}.cb-grid.is-revealed .cb-tile:not([data-state=answer]){opacity:.5}.cb-tile[data-state=answer]{z-index:1;box-shadow:0 0 0 4px var(--surface), 0 0 0 8px var(--text);animation:1.2s ease-in-out 2 cb-ring}@keyframes cb-pop{0%{opacity:0;transform:scale(.96)}}@keyframes cb-shake{25%{transform:translate(-4px)}50%{transform:translate(4px)}75%{transform:translate(-2px)}}@keyframes cb-ring{50%{transform:scale(1.06)}}.cb-end{border-radius:var(--radius);background:var(--surface-2);grid-template-columns:auto 1fr auto auto;align-items:center;gap:16px;padding:14px 18px;animation:.24s ease-out cb-rise;display:grid}.cb-end-count{border-radius:var(--radius-sm);background:var(--accent-soft);min-width:4.2rem;height:3.6rem;color:var(--accent-text);font-family:var(--font-display);place-items:center;padding:0 .6rem;font-size:1.7rem;font-weight:600;display:grid}.cb-end-text{flex-direction:column;gap:2px;min-width:0;display:flex}.cb-end-head{font-family:var(--font-display);font-size:1.25rem;font-weight:600}.cb-end-text .muted{font-size:.9rem}.cb-end-wait{text-align:right;max-width:12rem}@keyframes cb-rise{0%{opacity:0;transform:translateY(6px)}}.cb-pair{border-radius:var(--radius-xs);box-shadow:inset 0 0 0 1.5px color-mix(in srgb, var(--text) 10%, transparent);flex:none;display:inline-flex;overflow:hidden}.cb-pair>span{width:28px;height:44px}.cb-mini{border-radius:var(--radius-pill);background:var(--accent-soft);min-width:2rem;height:1.5rem;color:var(--accent-text);font-family:var(--font-display);place-items:center;padding:0 .45rem;font-size:.9rem;font-weight:600;display:inline-grid}.cb-mini[data-done]{background:var(--surface-3);color:var(--text-faint)}.cb-legend .cb-heart{flex:none;width:18px;height:18px}.cb-legend-clock{border:2.5px solid var(--good);border-right-color:var(--surface-3);border-radius:50%;flex:none;width:18px;height:18px}.cb-legend-grid{flex:none;grid-template-columns:repeat(2,7px);gap:2px;display:grid}.cb-legend-grid>span{background:var(--accent);border-radius:2px;width:7px;height:7px}.cb-legend-grid>span:nth-child(3){background:color-mix(in oklab, var(--accent) 72%, var(--surface))}.cb-result-swatch{background:var(--surface-2);border-radius:14px;align-items:center;gap:14px;margin:0;padding:12px 14px;display:flex}.cb-result-swatch .cb-pair>span{width:36px;height:36px}.cb-logo{font-family:var(--font-display);align-items:center;gap:.14em;font-size:32px;font-weight:600;line-height:1;display:inline-flex}.cb-logo-chip{background:var(--accent);width:1.36em;height:1.5em;color:var(--on-accent);border-radius:.32em;place-items:center;display:grid}.cb-logo-chip.is-odd{background:color-mix(in oklab, var(--accent) 80%, var(--surface))}.cb-logo-boo{color:var(--accent-text);margin-left:.12em}@media (prefers-reduced-motion:reduce){.cb-grid,.cb-end,.cb-tile,.cb-tile[data-state]{transition:none;animation:none}.cb-clock-bar>span,.cb-heart{transition:none}}@media (width<=44rem){.cb-panel{gap:14px;padding-inline:12px}.cb-top{text-align:center;justify-content:center}.cb-grid{gap:5px;width:100%}.cb-end{grid-template-columns:auto 1fr auto;gap:12px}.cb-end>.btn,.cb-end-wait{text-align:left;grid-column:1/-1;max-width:none}.cb-logo{font-size:24px}}.db-panel{align-items:stretch;gap:14px}.db-top{justify-content:space-between;align-items:center;gap:12px;min-height:44px;display:flex}.db-clock{--left:1;background:conic-gradient(var(--accent) calc(var(--left) * 360deg), var(--surface-3) 0);width:44px;height:44px;color:var(--text);font-family:var(--font-display);font-variant-numeric:tabular-nums;border-radius:50%;flex:none;place-items:center;font-size:1rem;font-weight:600;display:grid;position:relative}.db-clock:before{content:"";background:var(--surface);border-radius:50%;position:absolute;inset:5px}.db-clock{isolation:isolate}.db-clock:before{z-index:-1}.db-clock.is-low{background:conic-gradient(var(--bad) calc(var(--left) * 360deg), var(--surface-3) 0);color:var(--bad)}.db-word{min-height:44px;font-family:var(--font-display);flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:6px;font-size:28px;font-weight:600;line-height:1;display:flex}.db-word.is-shown{color:var(--accent-text);letter-spacing:.04em;font-size:32px}.db-blank{border-bottom:3px solid var(--text);text-transform:uppercase;place-items:end center;width:.95em;height:1.25em;display:inline-grid}.db-blank[data-hint]{color:var(--accent-text)}.db-gap{width:.6em}.db-dash{padding-bottom:.15em}.db-count{color:var(--text-faint);font-family:var(--font-body);align-self:center;margin-left:8px;font-size:.85rem;font-weight:800}.db-paper{border:1.5px solid var(--border);border-radius:var(--radius);aspect-ratio:4/3;background:#fff;position:relative;overflow:hidden}.db-paper canvas{width:100%;height:100%;display:block}.db-paper.is-editable canvas{cursor:crosshair;touch-action:none}.db-paper.is-editable[data-tool=fill] canvas{cursor:cell}.db-cover{background:color-mix(in srgb, var(--surface) 90%, transparent);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:20px;animation:.2s ease-out db-fade;display:flex;position:absolute;inset:0}.db-cover-title{font-family:var(--font-display);font-size:1.5rem;font-weight:600}.db-cover-word{color:var(--accent-text);font-family:var(--font-display);font-size:clamp(2rem,6vw,3rem);font-weight:600;line-height:1}.db-choices{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.db-gains{gap:6px;min-width:min(260px,100%);margin:4px 0 0;padding:0;list-style:none;display:grid}.db-gains li{border-radius:var(--radius-pill);background:var(--surface-2);justify-content:space-between;gap:16px;padding:6px 14px;font-weight:700;display:flex}.db-gains strong{color:var(--good)}@keyframes db-fade{0%{opacity:0}}.db-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 14px;display:flex}.db-toolbar[aria-disabled]{opacity:.55}.db-colors{grid-template-columns:repeat(7,26px);gap:5px;display:grid}.db-color{aspect-ratio:1;border:2px solid color-mix(in srgb, var(--text) 18%, transparent);cursor:pointer;border-radius:50%;min-width:0;padding:0}.db-color[aria-checked=true]{box-shadow:0 0 0 3px var(--surface), 0 0 0 6px var(--text)}.db-color:focus-visible,.db-size:focus-visible,.db-tool:focus-visible{outline:3px solid var(--accent-ring);outline-offset:2px}.db-toolrow{flex-wrap:wrap;flex:1;justify-content:flex-end;align-items:center;gap:10px;display:flex}.db-sizes,.db-tools{border-radius:var(--radius-pill);background:var(--surface-2);gap:6px;padding:4px;display:flex}.db-size,.db-tool{width:40px;height:40px;color:var(--text-dim);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid}.db-size span{background:currentColor;border-radius:50%}.db-size[aria-checked=true],.db-tool[aria-checked=true]{background:var(--accent);color:var(--on-accent)}.db-tool svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.db-size:disabled,.db-tool:disabled,.db-color:disabled{cursor:default}.db-guess{flex-wrap:wrap;gap:8px;display:flex}.db-guess .input{flex:1;min-width:0}.db-notice{color:var(--bad);flex-basis:100%;font-size:.9rem;font-weight:700}.db-chat{overscroll-behavior:contain;flex-direction:column;gap:6px;max-height:340px;margin:0;padding:0;font-size:.92rem;list-style:none;display:flex;overflow-y:auto}.db-chat-empty{color:var(--text-faint)}.db-line{overflow-wrap:anywhere}.db-line strong{font-weight:800}.db-line.is-hit{color:var(--good);font-weight:800}.db-line.is-hidden{color:var(--text-faint)}.db-line.is-turn{color:var(--text-faint);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:8px;margin-top:4px;font-size:.75rem;font-weight:800;display:flex}.db-line.is-turn:before,.db-line.is-turn:after{content:"";background:var(--border);flex:1;height:1px}.db-line.is-turn:first-child{margin-top:0}.db-chat.is-compact{max-height:none;overflow:visible}.db-recent{display:none}.db-chat-panel .db-chat{height:300px}.db-seat.is-drawing .avatar{box-shadow:0 0 0 3px var(--accent)}.db-points{border-radius:var(--radius-pill);background:var(--surface-3);min-width:2.2rem;height:1.6rem;color:var(--text-dim);font-family:var(--font-display);place-items:center;padding:0 .5rem;font-weight:600;display:inline-grid}.db-points[data-got]{background:var(--good-soft);color:var(--good)}.db-logo{font-family:var(--font-display);align-items:flex-end;gap:.1em;font-size:44px;font-weight:600;line-height:.95;display:inline-flex}.db-logo-draw{gap:.02em;padding:0 .04em .16em;display:inline-flex;position:relative}.db-logo-letter{display:inline-block}.db-logo-letter.is-0{transform:rotate(-6deg)}.db-logo-letter.is-1{transform:translateY(.04em)rotate(4deg)}.db-logo-letter.is-2{transform:rotate(-3deg)}.db-logo-letter.is-3{transform:translateY(.03em)rotate(5deg)}.db-logo-scribble{fill:none;width:100%;height:.3em;stroke:var(--accent);stroke-width:4px;stroke-linecap:round;position:absolute;bottom:0;left:0;right:0}.db-logo-boo{color:var(--accent-text);padding-bottom:.16em}.db-start-who{align-items:center;gap:1.25rem;width:min(30rem,100%);display:flex}.db-start-avatar{border:4px solid var(--surface);width:88px;height:88px;box-shadow:0 0 0 3px var(--accent);font-size:1.9rem}.db-start-fields{flex:1;gap:.75rem;min-width:0;display:grid}.db-start-fields .word-lang{text-align:left;align-items:stretch;gap:.35rem;width:100%}.db-start-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.db-start-actions .btn-play,.db-start-rooms{min-width:12rem}.db-start-rooms{gap:.6rem;margin-top:.75rem;padding:1rem 2rem;font-size:1.15rem}.db-start-rooms svg{width:20px;height:20px}.db-start-hint{max-width:30rem}.db-rooms-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1rem;margin-bottom:1.25rem;display:flex}.db-rooms-head h2{text-align:center;flex:1;font-size:1.6rem}.db-rooms-filters{flex-wrap:wrap;gap:.5rem 1rem;display:flex}.db-rooms-filters .word-lang.is-compact{align-items:center;gap:.5rem;width:auto}.db-rooms-filters .word-lang.is-compact .select{width:9.5rem}.db-room-list{grid-template-columns:repeat(auto-fill,minmax(12.5rem,1fr));gap:.75rem;margin:0 0 1rem;padding:0;list-style:none;display:grid}.db-room-card{border:1.5px solid var(--border);border-radius:var(--radius);background:var(--surface-2);height:100%;color:var(--text);text-align:center;flex-direction:column;align-items:center;gap:.45rem;padding:1rem .75rem .9rem;text-decoration:none;transition:border-color .14s,transform .14s;display:flex}.db-room-card:hover{border-color:var(--accent);transform:translateY(-2px)}.db-room-card:focus-visible{outline:3px solid var(--accent-ring);outline-offset:2px}.db-room-icon{background:var(--accent);width:56px;height:56px;color:var(--on-accent);border-radius:50%;flex:none;place-items:center;display:grid}.db-room-icon svg,.db-room-meta svg{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round}.db-room-icon svg{width:30px;height:30px}.db-room-name{font-family:var(--font-display);font-size:1.05rem;font-weight:600}.db-room-meta{color:var(--text-dim);gap:.8rem;font-size:.82rem;font-weight:700;display:flex}.db-room-meta span{align-items:center;gap:.2rem;display:inline-flex}.db-room-meta svg{stroke-width:2.2px;width:15px;height:15px}.db-room-card .badge[data-state=playing]{background:var(--good-soft);color:var(--good)}.db-rooms-empty{text-align:center;padding:2rem 0}.db-rooms .join-form,.db-rooms .db-start-actions{margin-inline:auto}.db-rooms .join-form{margin-top:1.25rem}.db-new-grid{grid-template-columns:minmax(15rem,20rem) minmax(0,1fr);gap:1rem;display:grid}.db-new-side{align-content:start;gap:1rem;display:grid}.db-new-block{border:1.5px solid var(--border);border-radius:var(--radius);background:var(--surface-2);align-content:start;gap:.75rem;min-width:0;margin:0;padding:1rem 1.1rem 1.1rem;display:grid}.db-new-block legend{float:left;width:100%;color:var(--accent-text);font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;padding:0;font-size:1rem;font-weight:600}.db-new-row{color:var(--text-dim);justify-content:space-between;align-items:center;gap:.75rem;font-weight:700;display:flex}.db-new-row .select{width:6.5rem}.db-new-select{cursor:pointer;justify-content:space-between;align-items:center;gap:.4rem;width:100%;padding-block:.4rem;font-weight:700;display:flex}.db-new-block .word-lang{align-items:stretch;width:100%}.db-new-block .word-lang-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.db-theme-grid{grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr));gap:.6rem;display:grid}.db-theme{border:1.5px solid var(--border);border-radius:var(--radius);background:var(--surface);text-align:center;cursor:pointer;flex-direction:column;align-items:center;gap:.45rem;padding:.9rem .5rem .8rem;font-weight:700;transition:border-color .14s,background .14s,box-shadow .14s;display:flex;position:relative}.db-theme:hover{border-color:var(--border-strong)}.db-theme.is-selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 3px var(--accent-ring)}.db-theme:has(input:focus-visible){outline:3px solid var(--accent-ring);outline-offset:2px}.db-theme input{opacity:0;pointer-events:none;position:absolute}.db-theme-name{font-size:.92rem}.db-new .db-start-actions{margin-top:.5rem}.db-switch{border:1.5px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--surface-3);cursor:pointer;flex:none;width:48px;height:28px;padding:0;transition:background .14s,border-color .14s;position:relative}.db-switch-knob{background:var(--surface);width:21px;height:21px;box-shadow:var(--shadow-sm);border-radius:50%;transition:transform .14s;position:absolute;top:2px;left:2px}.db-switch[aria-checked=true]{border-color:var(--accent);background:var(--accent)}.db-switch[aria-checked=true] .db-switch-knob{transform:translate(20px)}.db-switch:focus-visible{outline:3px solid var(--accent-ring);outline-offset:2px}.db-lobby-settings{flex-wrap:wrap;justify-content:center;gap:.4rem;display:flex}@media (prefers-reduced-motion:reduce){.db-cover{animation:none}.db-room-card,.db-switch-knob{transition:none}}@media (width<=44rem){.db-panel{gap:10px;padding-inline:10px}.db-colors{flex:1;grid-template-columns:repeat(7,minmax(0,1fr))}.db-toolrow{justify-content:space-between}.db-word{font-size:22px}.db-recent{display:block}.db-chat-panel .db-chat{height:220px}.db-logo{font-size:34px}.db-start-who{flex-direction:column}.db-start-actions>*{flex:10rem;min-width:0}.db-rooms-head h2{flex-basis:100%;order:-1}.db-rooms-filters,.db-rooms-filters .word-lang.is-compact{width:100%}.db-rooms-filters .word-lang.is-compact .select{flex:1;width:auto}.db-room-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.db-room-meta{flex-wrap:wrap;justify-content:center;gap:.25rem .6rem}.db-new-grid{grid-template-columns:minmax(0,1fr)}.db-theme-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.nb-panel{align-items:stretch;gap:16px}.nb-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;min-height:44px;display:flex}.nb-teams-bar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.nb-team{--team:var(--nb-red);--team-text:var(--nb-red-text);border:1.5px solid var(--border);border-radius:var(--radius-pill);background:var(--surface-2);opacity:.75;align-items:center;gap:8px;padding:5px 16px 5px 10px;display:inline-flex}.nb-team[data-team=b]{--team:var(--nb-blue);--team-text:var(--nb-blue-text)}.nb-team[data-team=f]{--team:var(--nb-friend);--team-text:var(--nb-friend-text)}.nb-team[data-turn]{border:2.5px solid var(--team);opacity:1}.nb-team-mark{width:22px;height:auto;color:var(--team)}.nb-team-name{color:var(--team-text);font-family:var(--font-display);font-size:1rem;font-weight:600}.nb-team strong{font-family:var(--font-display);font-size:1.45rem;font-weight:600;line-height:1}.nb-team-left{color:var(--text-faint);font-size:.75rem;font-weight:800}.nb-tokens{gap:6px;display:flex}.nb-token{border:1.5px solid var(--accent-text);background:var(--accent);border-radius:50%;width:14px;height:14px}.nb-token.is-used{background:var(--surface-3);border-color:#0000}.nb-clue-line{flex-direction:column;align-items:center;gap:6px;display:flex}.nb-clue{--team:var(--nb-red);border:2.5px solid var(--team);border-radius:var(--radius-pill);background:var(--surface);align-items:center;gap:14px;padding:6px 6px 6px 22px;animation:.26s ease-out nb-rise;display:inline-flex}.nb-clue[data-team=b]{--team:var(--nb-blue)}.nb-clue[data-team=f]{--team:var(--nb-friend)}.nb-clue-word{font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;font-size:1.6rem;font-weight:600}.nb-clue-count{border-radius:var(--radius-pill);background:var(--team);min-width:40px;height:40px;color:var(--nb-on-team);font-family:var(--font-display);place-items:center;padding:0 8px;font-size:1.3rem;font-weight:600;display:grid}.nb-board{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.nb-card{--edge:var(--nb-edge);aspect-ratio:1.6;border:1.5px solid var(--edge);background:var(--nb-paper);min-width:0;box-shadow:0 3px 0 var(--edge);color:var(--nb-ink);font-family:var(--font-display);text-transform:uppercase;cursor:default;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:8px 6px;font-weight:600;transition:transform .14s,box-shadow .14s;display:flex;position:relative;container-type:inline-size}.nb-card:not([data-open]):after{content:"";background:var(--edge);opacity:.7;border-radius:1px;height:2px;position:absolute;bottom:20%;left:18%;right:18%}.nb-card:disabled{opacity:1}.nb-card:not(:disabled){cursor:pointer}.nb-card:not(:disabled):hover{box-shadow:0 5px 0 var(--edge);transform:translateY(-2px)}.nb-card:focus-visible{outline:3px solid var(--accent-ring);outline-offset:2px}.nb-card[data-pointed]{outline:3px solid var(--accent);outline-offset:2px}.nb-card-word{max-width:100%;font-size:min(1.06rem, calc((100cqi - 10px) / (var(--len,6) * .7)));text-align:center;white-space:nowrap;line-height:1.1}.nb-card-word.is-small{font-family:var(--font-body);font-size:min(.74rem, calc((100cqi - 10px) / (var(--len,6) * .82)));letter-spacing:.06em;opacity:.9;font-weight:800}.nb-card[data-key=r]{--edge:var(--nb-red);background:linear-gradient(90deg, var(--nb-red) 6px, var(--nb-red-tint) 6px);border-width:2.5px}.nb-card[data-key=b]{--edge:var(--nb-blue);background:linear-gradient(90deg, var(--nb-blue) 6px, var(--nb-blue-tint) 6px);border-width:2.5px}.nb-card[data-key=n]{--edge:var(--nb-neutral);background:linear-gradient(90deg, var(--nb-neutral) 6px, var(--nb-paper) 6px);border-width:2.5px}.nb-card[data-key=k]{--edge:var(--nb-boo);background:linear-gradient(90deg, var(--nb-boo) 6px, var(--nb-boo-tint) 6px);border-width:2.5px}.nb-card[data-key=f]{--edge:var(--nb-friend);background:linear-gradient(90deg, var(--nb-friend) 6px, var(--nb-friend-tint) 6px);border-width:2.5px}.nb-card-boo{width:16px;height:auto;color:var(--nb-boo);position:absolute;top:7px;right:8px}.nb-card[data-open]{--fill:var(--nb-red);--edge:var(--fill);background:var(--fill);color:var(--nb-on-team);animation:.32s ease-out nb-turn}.nb-card[data-open=b]{--fill:var(--nb-blue)}.nb-card[data-open=n]{--fill:var(--nb-neutral);color:var(--nb-neutral-ink)}.nb-card[data-open=k]{--fill:var(--nb-boo)}.nb-card[data-open=f]{--fill:var(--nb-friend)}.nb-card-art{object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;flex:none;width:auto;max-width:100%;height:38cqi}.nb-card[data-turning]{animation:.7s ease-in-out infinite nb-pulse}.nb-marks{display:flex;position:absolute;top:6px;left:6px}.nb-mark{border:2px solid var(--nb-paper);background:var(--accent);width:22px;height:22px;color:var(--on-accent);font-family:var(--font-body);letter-spacing:0;border-radius:50%;place-items:center;margin-left:-6px;font-size:.56rem;font-weight:800;display:grid}.nb-mark:first-child{margin-left:0}.nb-mark.is-mine{background:var(--nb-ink);color:var(--nb-paper)}.nb-passed{border-radius:var(--radius-pill);background:var(--nb-neutral);color:var(--nb-neutral-ink);font-family:var(--font-body);letter-spacing:0;padding:1px 6px;font-size:.56rem;font-weight:800;position:absolute;bottom:5px;right:6px}.nb-pick{z-index:1;border-radius:var(--radius-pill);background:var(--accent);color:var(--on-accent);font-family:var(--font-body);letter-spacing:0;text-transform:none;white-space:nowrap;padding:2px 9px;font-size:.62rem;font-weight:800;position:absolute;bottom:-11px;left:50%;transform:translate(-50%)}.nb-cluebar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.nb-cluebar .input{flex:1;min-width:10rem}.nb-stepper{border:1.5px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--surface-2);align-items:center;gap:2px;padding:3px;display:inline-flex}.nb-stepper button{width:38px;height:38px;color:var(--text-dim);font-family:var(--font-display);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;font-size:1.2rem;font-weight:600;display:grid}.nb-stepper button:disabled{opacity:.4;cursor:default}.nb-stepper-value{border-radius:var(--radius-pill);background:var(--accent-soft);width:48px;height:38px;color:var(--accent-text);font-family:var(--font-display);text-align:center;text-align-last:center;appearance:none;cursor:pointer;border:0;font-size:1.2rem;font-weight:600}.nb-stepper button:focus-visible,.nb-stepper-value:focus-visible{outline:3px solid var(--accent-ring);outline-offset:1px}.nb-notice{color:var(--text-faint);flex-basis:100%;font-size:.85rem;font-weight:600}.nb-notice.is-bad{color:var(--bad);font-weight:700}.nb-guessbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.nb-seat{--team:var(--border-strong)}.nb-seat[data-team=r]{--team:var(--nb-red)}.nb-seat[data-team=b]{--team:var(--nb-blue)}.nb-seat[data-team=f]{--team:var(--nb-friend)}.nb-seat .avatar{box-shadow:0 0 0 2.5px var(--team)}.nb-seat .room-player{flex:1}.nb-seat-spy{width:18px;height:auto;color:var(--team);margin-right:4px}.nb-history{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.nb-history li{--team:var(--nb-red);align-items:center;gap:8px;display:flex}.nb-history li[data-team=b]{--team:var(--nb-blue)}.nb-history li[data-team=f]{--team:var(--nb-friend)}.nb-history li:before{content:"";background:var(--team);border-radius:50%;flex:none;width:10px;height:10px}.nb-history-word{font-family:var(--font-display);text-transform:uppercase;font-weight:600}.nb-history-count{border-radius:var(--radius-pill);background:var(--surface-3);min-width:22px;height:22px;font-family:var(--font-display);place-items:center;padding:0 5px;font-size:.8rem;font-weight:600;display:grid}.nb-history .faint{margin-left:auto}.nb-lobby-teams{flex-direction:column;align-items:center;gap:12px;width:100%;display:flex}.nb-lobby-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%;display:grid}.nb-lobby-team{--team:var(--nb-red);--team-text:var(--nb-red-text);border:1.5px solid var(--border);border-top:4px solid var(--team);border-radius:var(--radius);background:var(--surface-2);flex-direction:column;gap:10px;padding:14px;display:flex}.nb-lobby-team[data-team=b]{--team:var(--nb-blue);--team-text:var(--nb-blue-text)}.nb-lobby-team h4{color:var(--team-text);font-family:var(--font-display);font-size:1.1rem;font-weight:600}.nb-lobby-team ul{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.nb-lobby-team li{align-items:center;gap:8px;font-size:.9rem;font-weight:700;display:flex}.nb-lobby-team li .avatar{width:26px;height:26px;box-shadow:0 0 0 2px var(--team);font-size:.66rem}.nb-lobby-team li .badge{margin-left:auto}.nb-lobby-team .btn[aria-pressed=true]{border-color:var(--team);background:var(--team);color:var(--nb-on-team)}.nb-result-teams{flex-direction:column;gap:10px;display:flex}.nb-logo{font-family:var(--font-display);align-items:center;gap:.18em;font-size:44px;font-weight:600;line-height:1;display:inline-flex}.nb-logo-stamp{border:.08em solid var(--accent);letter-spacing:.04em;border-radius:.24em;padding:.02em .24em .06em;font-size:.9em;transform:rotate(-4deg)}.nb-logo-boo{color:var(--accent-text)}@keyframes nb-turn{0%{transform:rotateY(90deg)}}@keyframes nb-pulse{50%{opacity:.6}}@keyframes nb-rise{0%{opacity:0;transform:translateY(6px)}}.nb-options{flex-direction:column;align-items:center;gap:1.1rem;width:min(30rem,100%);display:flex}.nb-timer{flex-direction:column;align-items:center;gap:.6rem;width:100%;display:flex}.nb-timer-choices{border:1.5px solid var(--border);border-radius:var(--radius-pill);background:var(--surface-2);grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;width:100%;padding:4px;display:grid}.nb-timer-choices label{border-radius:var(--radius-pill);color:var(--text-dim);text-align:center;cursor:pointer;padding:.5rem .4rem;font-size:.9rem;font-weight:700;transition:background .14s,color .14s;position:relative}.nb-timer-choices label:hover{color:var(--text)}.nb-timer-choices label.is-selected{background:var(--accent);color:var(--on-accent)}.nb-timer-choices label:has(input:focus-visible){outline:3px solid var(--accent-ring);outline-offset:1px}.nb-timer-choices input{opacity:0;pointer-events:none;position:absolute}.nb-timer-custom{gap:.5rem;width:100%;display:grid}.nb-timer-field{color:var(--text-dim);justify-content:space-between;align-items:center;gap:.75rem;font-size:.9rem;font-weight:700;display:flex}.nb-stepper output{border-radius:var(--radius-pill);background:var(--accent-soft);min-width:58px;height:38px;color:var(--accent-text);font-family:var(--font-display);font-variant-numeric:tabular-nums;place-items:center;padding:0 6px;font-size:1.05rem;font-weight:600;display:grid}.nb-clock{border:1.5px solid var(--border);border-radius:var(--radius-pill);background:var(--surface-2);min-width:4.4rem;height:36px;color:var(--text);font-family:var(--font-display);font-variant-numeric:tabular-nums;place-items:center;padding:0 .85rem;font-size:1.05rem;font-weight:600;display:inline-grid}.nb-clock.is-low,.nb-clock.is-up{border-color:var(--bad);color:var(--bad)}.nb-clock.is-up{background:var(--bad-soft);font-size:.95rem}.nb-timeup{border:1.5px dashed var(--bad);border-radius:var(--radius);padding:10px 12px}.nb-lobby-settings{flex-wrap:wrap;justify-content:center;gap:.4rem;display:flex}@media (prefers-reduced-motion:reduce){.nb-card,.nb-card[data-open],.nb-card[data-turning],.nb-clue{transition:none;animation:none}}@media (width<=44rem){.nb-panel{gap:12px;padding-inline:10px}.nb-board{gap:6px}.nb-card{aspect-ratio:1.12;border-radius:10px;padding:4px 3px}.nb-card-word{font-size:min(.8rem, calc((100cqi - 6px) / (var(--half,6) * .7)));white-space:normal;-webkit-hyphens:manual;hyphens:manual}.nb-card-word.is-small{font-size:min(.6rem, calc((100cqi - 6px) / (var(--len,6) * .82)))}.nb-card-art{height:56cqi}.nb-mark{width:18px;height:18px;font-size:.5rem}.nb-pick{display:none}.nb-timer-choices label{padding-inline:.2rem;font-size:.8rem}.nb-clue-word{font-size:1.25rem}.nb-team strong{font-size:1.2rem}.nb-lobby-columns{grid-template-columns:1fr}.nb-logo{font-size:34px}}.hb-board{flex-direction:column;gap:12px;min-width:0;display:flex}.hb-notice{background:var(--surface-2);color:var(--text-dim)}.hb-news{text-align:center;margin:0}.hb-panel{align-items:stretch;gap:18px}.hb-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;display:flex}.hb-steps{gap:6px;margin:0;padding:0;list-style:none;display:flex}.hb-steps li{flex-direction:column;align-items:center;gap:3px;min-width:34px;display:flex}.hb-step-dot{background:var(--surface-3);border:2px solid #0000;border-radius:9px;width:26px;height:26px;transition:background .2s,border-color .2s}.hb-steps li.is-current .hb-step-dot{border-color:var(--accent);background:var(--surface)}.hb-step-points{color:var(--text-faint);font-variant-numeric:tabular-nums;font-size:.74rem;font-weight:700}.hb-steps li.is-done .hb-step-points{color:var(--text-dim)}.hb-stage{flex-direction:column;align-items:center;gap:18px;width:min(100%,520px);margin-inline:auto;display:flex}.hb-swatch{aspect-ratio:4/3;outline:1px solid var(--border);border-radius:28px;place-items:center;width:100%;animation:.26s ease-out hb-pop;display:grid;position:relative}.hb-swatch.is-empty{outline:2px dashed var(--border-strong);outline-offset:-2px;background:var(--surface-2);padding:24px}.hb-intro{max-width:22rem;color:var(--text-dim);text-align:center;margin:0;font-size:1.05rem;font-weight:600}.hb-look{border-radius:var(--radius-pill);background:var(--surface);box-shadow:var(--shadow-sm);align-items:center;gap:8px;padding:6px 12px;display:inline-flex;position:absolute;top:14px;left:50%;transform:translate(-50%)}.hb-look-bar{border-radius:var(--radius-pill);background:var(--surface-3);width:88px;height:7px;overflow:hidden}.hb-look-bar>span{border-radius:inherit;background:var(--accent);height:100%;display:block}.hb-look-text{min-width:1.8em;color:var(--text);font-variant-numeric:tabular-nums;text-align:right;font-size:.9rem;font-weight:700}.hb-dials{gap:14px;width:100%;display:grid}.hb-dial{gap:6px;display:grid}.hb-dial-head{color:var(--text-dim);justify-content:space-between;font-size:.86rem;font-weight:700;display:flex}.hb-dial-head output{color:var(--text);font-variant-numeric:tabular-nums}.hb-dial input{cursor:pointer;appearance:none;-webkit-tap-highlight-color:transparent;background:0 0;width:100%;height:34px;margin:0}.hb-dial input::-webkit-slider-runnable-track{border-radius:var(--radius-pill);background:var(--track);height:18px;box-shadow:inset 0 0 0 1px var(--border)}.hb-dial input::-moz-range-track{border-radius:var(--radius-pill);background:var(--track);height:18px;box-shadow:inset 0 0 0 1px var(--border)}.hb-dial input::-webkit-slider-thumb{border:4px solid var(--surface);background:var(--thumb);width:30px;height:30px;box-shadow:0 0 0 1.5px var(--border-strong), var(--shadow-sm);appearance:none;border-radius:50%;margin-top:-6px}.hb-dial input::-moz-range-thumb{border:4px solid var(--surface);background:var(--thumb);width:22px;height:22px;box-shadow:0 0 0 1.5px var(--border-strong), var(--shadow-sm);border-radius:50%}.hb-dial input:focus-visible{outline:none}.hb-dial input:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 3px var(--accent-ring), 0 0 0 1.5px var(--border-strong)}.hb-dial input:focus-visible::-moz-range-thumb{box-shadow:0 0 0 3px var(--accent-ring), 0 0 0 1.5px var(--border-strong)}.hb-reveal{flex-direction:column;align-items:center;gap:14px;width:100%;display:flex}.hb-split{aspect-ratio:4/3;outline:1px solid var(--border);border-radius:28px;grid-template-columns:1fr 1fr;width:100%;animation:.26s ease-out hb-pop;display:grid;overflow:hidden}.hb-half{justify-content:center;align-items:flex-end;padding:14px;display:flex}.hb-chip{border-radius:var(--radius-pill);background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm);padding:4px 12px;font-size:.8rem;font-weight:700}.hb-verdict{align-items:baseline;gap:10px;display:flex}.hb-verdict strong{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:2.6rem;line-height:1}.hb-verdict span{color:var(--text-dim);font-weight:700}.hb-verdict[data-tier=perfect] strong,.hb-verdict[data-tier=great] strong{color:var(--good)}.hb-verdict[data-tier=off] strong,.hb-verdict[data-tier=miss] strong{color:var(--bad)}.hb-offsets{flex-wrap:wrap;justify-content:center;gap:6px;margin:0;padding:0;list-style:none;display:flex}.hb-offsets li{border-radius:var(--radius-pill);background:var(--surface-2);color:var(--text-dim);padding:4px 10px;font-size:.82rem;font-weight:600}.hb-offsets strong{color:var(--text);font-variant-numeric:tabular-nums}.hb-wait{margin:0}.hb-pairs{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.hb-pairs li{flex-direction:column;align-items:center;gap:4px;display:flex}.hb-pair{aspect-ratio:3/4;outline:1px solid var(--border);border-radius:14px;grid-template-rows:1fr 1fr;width:100%;max-width:64px;display:grid;overflow:hidden}.hb-pair-points{color:var(--text-dim);font-variant-numeric:tabular-nums;font-size:.8rem;font-weight:700}.hb-mini{gap:3px;display:inline-flex}.hb-mini>span{outline:1px solid var(--border);border-radius:4px;width:12px;height:12px}.hb-mini.is-row>span{border-radius:5px;width:18px;height:18px}.hb-mini.is-target>span{border-radius:50%}.hb-duo{justify-items:center;gap:12px;display:grid}.hb-duo>div{flex-direction:column;align-items:center;gap:6px;display:flex}.hb-legend-swatch{border-radius:7px;width:22px;height:22px}.hb-legend-dials{gap:3px;width:22px;display:grid}.hb-legend-dials>span{border-radius:var(--radius-pill);background:var(--text-faint);height:4px}.hb-legend-points{background:var(--accent);width:22px;height:22px;color:var(--on-accent);border-radius:50%;place-items:center;font-size:.66rem;font-weight:800;display:grid}.hb-logo{--hb-1:#e0336f;--hb-2:#23a36b;--hb-3:#4a6cf7;font-family:var(--font-display);align-items:center;gap:.14em;font-size:32px;font-weight:600;line-height:1;display:inline-flex}.hb-logo-chip{color:#fff;border-radius:.32em;place-items:center;width:1.36em;height:1.5em;display:grid}.hb-logo-chip.is-0{background:var(--hb-1)}.hb-logo-chip.is-1{background:var(--hb-2)}.hb-logo-chip.is-2{background:var(--hb-3);position:relative}.hb-logo-chip.is-2:after{border:.08em solid var(--surface);background:var(--hb-1);content:"";border-radius:50%;width:.42em;height:.42em;position:absolute;bottom:-.16em;right:-.16em}.hb-logo-boo{color:var(--accent-text);margin-left:.12em}@keyframes hb-pop{0%{opacity:0;transform:scale(.97)}}@media (prefers-reduced-motion:reduce){.hb-swatch,.hb-split,.hb-step-dot{transition:none;animation:none}}@media (width<=640px){.hb-top{text-align:center;justify-content:center}.hb-swatch,.hb-split{aspect-ratio:1;border-radius:22px}.hb-swatch.is-dial{aspect-ratio:16/9}.hb-steps li{min-width:28px}.hb-step-dot{width:22px;height:22px}.hb-verdict strong{font-size:2.2rem}.hb-logo{font-size:24px}}.fb-panel{align-items:stretch;gap:16px}.fb-status{text-align:center;min-height:1.4em}.fb-arena{--fb-shell:#24222b;--fb-shell-edge:#3b3946;--fb-spark:#ffc93c;--fb-fuse:#a07b52;aspect-ratio:1;width:min(100%,560px);margin-inline:auto;position:relative}.fb-arena[data-solo]{aspect-ratio:auto;flex-direction:column-reverse;justify-content:center;align-items:center;gap:18px;padding-block:8px;display:flex}.fb-arena.is-boom{animation:.42s fb-shake}.fb-seat{top:var(--y);left:var(--x);border:1.5px solid var(--border);border-radius:var(--radius);background:var(--surface);text-align:center;flex-direction:column;align-items:center;gap:3px;width:116px;padding:8px 6px;transition:border-color .2s,box-shadow .2s,opacity .2s;display:flex;position:absolute;transform:translate(-50%,-50%)}.fb-arena[data-solo] .fb-seat{width:180px;position:static;transform:none}.fb-seat .avatar{width:30px;height:30px;font-size:.72rem}.fb-seat[data-holder]{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.fb-seat[data-out]{opacity:.45}.fb-seat[data-hit=boom]{animation:.7s fb-hit}.fb-seat[data-hit=word] .fb-seat-text{color:var(--good)}.fb-seat[data-hit=life] .fb-hearts{animation:.5s fb-pop}.fb-seat-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.78rem;font-weight:700;overflow:hidden}.fb-seat-text{max-width:100%;min-height:1.3em;color:var(--text-dim);font-family:var(--font-display);letter-spacing:.04em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:.95rem;font-weight:600;overflow:hidden}.fb-seat[data-holder] .fb-seat-text{color:var(--text)}.fb-hearts{gap:1px;display:inline-flex}.fb-heart{width:16px;height:16px;fill:var(--bad)}.fb-heart.is-lost{fill:var(--surface-3)}.fb-bomb{aspect-ratio:1;place-items:center;width:34%;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.fb-arena[data-solo] .fb-bomb{width:min(220px,60%);position:relative;top:auto;left:auto;transform:none}.fb-bomb-body{grid-area:1/1;width:100%;height:100%;overflow:visible}.fb-shell{fill:var(--fb-shell);stroke:var(--fb-shell-edge);stroke-width:2px}.fb-shine{fill:#fff;opacity:.16}.fb-cap{fill:var(--fb-shell-edge)}.fb-fuse{fill:none;stroke:var(--fb-fuse);stroke-width:4px;stroke-linecap:round}.fb-spark{fill:var(--fb-spark);opacity:0;transform-box:fill-box;transform-origin:50%}.fb-bomb[data-stage=live] .fb-spark{opacity:1;animation:.26s ease-in-out infinite alternate fb-spark}.fb-prompt{z-index:1;color:#fff;font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;grid-area:1/1;margin-top:14%;margin-right:6%;font-size:clamp(1.4rem,5.4vw,2.4rem);font-weight:700;line-height:1}.fb-bomb[data-stage=countdown] .fb-prompt{font-size:clamp(2rem,8vw,3.4rem)}.fb-pointer{opacity:0;transform:rotate(var(--turn,90deg));transition:transform .32s cubic-bezier(.3,1.4,.5,1),opacity .2s;position:absolute;inset:0}.fb-pointer:after{border-top:9px solid #0000;border-bottom:9px solid #0000;border-left:14px solid var(--accent);content:"";width:0;height:0;position:absolute;top:50%;right:-16%;transform:translateY(-50%)}.fb-bomb[data-stage=live] .fb-pointer{opacity:1}.fb-input{grid-template-columns:1fr auto;gap:6px 8px;width:min(100%,460px);margin-inline:auto;display:grid}.fb-input .input{font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;font-size:1.2rem;font-weight:600}.fb-input .input::placeholder{font-family:var(--font-body,inherit);letter-spacing:normal;text-transform:none;font-size:.95rem;font-weight:500}.fb-input[data-problem] .input{border-color:var(--bad);animation:.26s fb-nudge}.fb-input-note{color:var(--bad);text-align:center;grid-column:1/-1;margin:0;font-size:.82rem;font-weight:600}.fb-bonus{flex-direction:column;align-items:center;gap:6px;display:flex}.fb-bonus-letters{flex-wrap:wrap;justify-content:center;gap:3px;max-width:460px;display:flex}.fb-bonus-letters span{background:var(--surface-2);width:22px;height:24px;color:var(--text-faint);text-transform:uppercase;border-radius:6px;place-items:center;font-size:.74rem;font-weight:800;display:grid}.fb-bonus-letters span.is-used{background:var(--accent);color:var(--on-accent)}.fb-ready{text-align:center;flex-direction:column;align-items:center;gap:18px;padding:40px 16px;display:flex}.fb-ready p{max-width:26rem;margin:0}.fb-longest{font-family:var(--font-display);text-transform:uppercase}.fb-legend-prompt,.fb-legend-bonus{background:var(--fb-legend-shell,#24222b);color:#fff;border-radius:6px;place-items:center;min-width:22px;height:22px;padding-inline:3px;font-size:.62rem;font-weight:800;display:grid}.fb-legend-bonus{background:var(--accent);color:var(--on-accent)}.fb-legend-bomb{background:#24222b;border-radius:50%;width:20px;height:20px;position:relative}.fb-legend-bomb:after{content:"";background:#ffc93c;border-radius:50%;width:7px;height:7px;position:absolute;top:-3px;right:-2px}.fb-logo{font-family:var(--font-display);align-items:center;gap:.18em;font-size:32px;font-weight:700;line-height:1;display:inline-flex}.fb-logo-fuse{color:#fff;letter-spacing:.04em;background:#24222b;border-radius:.34em;padding:.16em .36em;position:relative;box-shadow:inset 0 0 0 .06em #ffffff24}.fb-logo-fuse:after{content:"";background:#ffc93c;border-radius:50%;width:.36em;height:.36em;position:absolute;top:-.28em;right:-.22em;box-shadow:0 0 .3em #ffc93c}.fb-logo-boo{color:var(--accent-text)}@keyframes fb-spark{0%{transform:scale(.75)}to{transform:scale(1.25)}}@keyframes fb-shake{20%{transform:translate(-6px,2px)}40%{transform:translate(5px,-3px)}60%{transform:translate(-3px,2px)}80%{transform:translate(2px,-1px)}}@keyframes fb-hit{30%{border-color:var(--bad);box-shadow:0 0 0 6px var(--bad-soft)}}@keyframes fb-pop{50%{transform:scale(1.3)}}@keyframes fb-nudge{30%{transform:translate(-5px)}70%{transform:translate(5px)}}@media (prefers-reduced-motion:reduce){.fb-arena.is-boom,.fb-seat,.fb-bomb[data-stage=live] .fb-spark,.fb-input[data-problem] .input,.fb-pointer{transition:none;animation:none}}@media (width<=640px){.fb-seat{width:84px;padding:5px 3px}.fb-seat .avatar{width:24px;height:24px;font-size:.62rem}.fb-seat-name{font-size:.68rem}.fb-seat-text{font-size:.78rem}.fb-heart{width:12px;height:12px}.fb-bomb{width:36%}.fb-arena[data-crowd]{aspect-ratio:auto;flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.fb-arena[data-crowd] .fb-seat{position:static;transform:none}.fb-arena[data-crowd] .fb-bomb{order:-1;width:132px;margin-inline:calc(50% - 66px);position:relative;top:auto;left:auto;transform:none}.fb-arena[data-crowd] .fb-pointer{display:none}.fb-logo{font-size:24px}}.tb-panel{align-items:stretch;gap:16px}.tb-top{flex-wrap:wrap;align-items:center;gap:10px 18px;display:flex}.tb-clock{min-width:2.2ch;color:var(--accent-text);font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:2rem;font-weight:700;line-height:1}.tb-live{color:var(--text-dim);font-size:.9rem;font-weight:700}.tb-live strong{color:var(--text);font-variant-numeric:tabular-nums;font-size:1.2rem}.tb-top .btn{margin-left:auto}.tb-hint{text-align:center;margin:0}.tb-box{--tb-size:clamp(1.15rem, 2.4vw, 1.5rem);--tb-line:calc(var(--tb-size) * 1.7);border:1.5px solid var(--border);border-radius:var(--radius);background:var(--surface-2);cursor:text;padding:16px 20px;position:relative}.tb-box[data-focused]{border-color:var(--accent)}.tb-box[data-disabled]{cursor:default;opacity:.6}.tb-window{height:calc(var(--tb-line) * 3);overflow:hidden}.tb-words{font-family:ui-monospace,SF Mono,Cascadia Mono,Menlo,Consolas,monospace;font-size:var(--tb-size);line-height:var(--tb-line);flex-wrap:wrap;column-gap:.62em;transition:transform .14s;display:flex}.tb-word{color:var(--text-faint);white-space:nowrap;position:relative}.tb-word[data-wrong]{text-decoration:underline;-webkit-text-decoration-color:var(--bad);text-decoration-color:var(--bad);text-underline-offset:.22em;text-decoration-thickness:2px}.tb-letter.is-ok{color:var(--text)}.tb-letter.is-wrong{color:var(--bad)}.tb-letter.is-extra{color:var(--bad);opacity:.7}.tb-letter.is-missed{color:var(--text-faint)}.tb-caret{width:0;display:inline-block;position:relative}.tb-caret:after{background:var(--accent);content:"";border-radius:2px;width:2px;height:1.15em;animation:1s step-end infinite tb-blink;position:absolute;top:.18em;left:-1px}.tb-box:not([data-focused]) .tb-caret:after{opacity:.35;animation:none}.tb-input{color:#0000;opacity:0;cursor:text;background:0 0;border:0;width:100%;height:100%;font-size:16px;position:absolute;inset:0}.tb-focus{border-radius:inherit;background:color-mix(in srgb, var(--surface-2) 82%, transparent);color:var(--text-dim);pointer-events:none;place-items:center;margin:0;font-weight:700;display:grid;position:absolute;inset:0}.tb-bad{color:var(--bad)}.tb-track{gap:8px;margin:0;padding:0;list-style:none;display:grid}.tb-track li{grid-template-columns:minmax(6rem,9rem) 1fr 6.5rem;align-items:center;gap:12px;display:grid}.tb-lane-name{text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;font-weight:700;overflow:hidden}.tb-lane{border-radius:var(--radius-pill);background:var(--surface-3);height:6px;margin-inline:14px;position:relative}.tb-runner{transition:left .24s;position:absolute;top:50%;transform:translate(-50%,-50%)}.tb-runner .avatar{width:28px;height:28px;font-size:.66rem}.tb-track li.is-me .tb-runner .avatar{background:var(--accent);color:var(--on-accent)}.tb-lane-stat{color:var(--text-dim);text-align:right;font-variant-numeric:tabular-nums;font-size:.8rem;font-weight:700}.tb-legend-key{border:1.5px solid var(--border-strong);min-width:22px;height:22px;color:var(--text-dim);border-bottom-width:3px;border-radius:6px;place-items:center;padding-inline:3px;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.7rem;font-weight:700;display:grid}.tb-legend-key.is-wrong{color:var(--bad)}.tb-logo{font-family:var(--font-display);align-items:center;gap:.12em;font-size:32px;font-weight:600;line-height:1;display:inline-flex}.tb-logo-key{border:2px solid var(--border-strong);background:var(--surface);width:1.3em;height:1.36em;color:var(--text);border-bottom-width:5px;border-radius:.28em;place-items:center;display:grid}.tb-logo-key.is-pressed{border-color:var(--accent);background:var(--accent);color:var(--on-accent);border-bottom-width:2px;transform:translateY(3px)}.tb-logo-boo{color:var(--accent-text);margin-left:.14em}@keyframes tb-blink{50%{opacity:0}}@media (prefers-reduced-motion:reduce){.tb-words,.tb-runner{transition:none}.tb-caret:after{animation:none}}@media (width<=640px){.tb-box{padding:12px 14px}.tb-track li{grid-template-columns:5rem 1fr 4.5rem;gap:6px}.tb-logo{font-size:24px}}.play-layout:has(>.wh-panel){grid-template-columns:minmax(0,1fr)}@media (width>=64rem){.play-layout:has(>.wh-panel)>aside{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;display:grid}}.wh-panel{align-items:stretch;gap:12px}.wh-top{flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.wh-top .wb-status{flex:1}.wh-score{color:var(--accent-text);font-family:var(--font-display);font-size:1.15rem;font-weight:700}.wh-lives{gap:2px;display:inline-flex}.wh-heart{width:20px;height:20px;fill:var(--bad)}.wh-heart.is-lost{fill:var(--surface-3)}.wh-restart{align-items:center;gap:6px;display:inline-flex}.wh-restart svg{fill:none;stroke:currentColor;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.wh-restart.is-confirming{border-color:var(--bad);background:var(--bad-soft);color:var(--bad)}.wh-board,.wh-legend{--wh-invention:#3b82f6;--wh-science:#0ea47a;--wh-space:#6366f1;--wh-history:#c2661c;--wh-culture:#e04891;--wh-sport:#f97316;--wh-nature:#22a55a;--wh-art:#a855f7}:is(.wh-board,.wh-legend) [data-cat=invention]{--wh-band:var(--wh-invention)}:is(.wh-board,.wh-legend) [data-cat=science]{--wh-band:var(--wh-science)}:is(.wh-board,.wh-legend) [data-cat=space]{--wh-band:var(--wh-space)}:is(.wh-board,.wh-legend) [data-cat=history]{--wh-band:var(--wh-history)}:is(.wh-board,.wh-legend) [data-cat=culture]{--wh-band:var(--wh-culture)}:is(.wh-board,.wh-legend) [data-cat=sport]{--wh-band:var(--wh-sport)}:is(.wh-board,.wh-legend) [data-cat=nature]{--wh-band:var(--wh-nature)}:is(.wh-board,.wh-legend) [data-cat=art]{--wh-band:var(--wh-art)}.wh-board{--card-w:136px;--card-h:180px;--band:56px;--held-w:164px;--held-h:212px;--pin:12px;--stamp:28px;gap:6px;width:100%;min-width:0;display:grid}.wh-card{grid-template-rows:var(--band) minmax(0, 1fr);width:var(--card-w);height:var(--card-h);border:1.5px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:18px;display:grid;overflow:hidden}.wh-art{background:radial-gradient(circle at 24% 18%, #ffffff42, transparent 52%), linear-gradient(150deg, var(--wh-band,var(--accent)), color-mix(in oklab, var(--wh-band,var(--accent)), #000 32%));place-items:center;display:grid}.wh-icon{fill:none;stroke:#fff;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 2px 2px #0000002e);width:30px;height:30px}.wh-body{align-content:start;gap:5px;min-height:0;padding:10px 12px 12px;display:grid}.wh-cat{color:var(--text-faint);letter-spacing:.1em;text-transform:uppercase;font-size:.66rem;font-weight:800}.wh-name{-webkit-line-clamp:6;line-clamp:6;-webkit-box-orient:vertical;font-size:.86rem;font-weight:700;line-height:1.28;display:-webkit-box;overflow:hidden}.wh-pin{width:2px;height:var(--pin);background:var(--border-strong)}.wh-stamp{min-width:70px;height:var(--stamp);border-radius:var(--radius-pill);background:var(--accent);color:var(--on-accent);font-family:var(--font-display);font-variant-numeric:tabular-nums;white-space:nowrap;box-shadow:0 0 0 4px var(--surface);place-items:center;padding:0 12px;font-size:.98rem;font-weight:700;display:grid}.wh-stamp.is-hidden{border:2px dashed var(--border-strong);background:var(--surface-2);color:var(--text-faint);letter-spacing:.14em}.wh-hand{z-index:3;min-height:calc(var(--held-h) + var(--pin) + var(--stamp) + 8px);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px 28px;display:grid;position:relative}.wh-hand>*{grid-row:1}.wh-hand>.wh-verdict{grid-column:1;justify-self:end}.wh-hand>.wh-held{grid-column:2}.wh-hand>.wh-hint{grid-column:3;justify-self:start}.wh-hand>.wh-end{grid-area:2/1/auto/-1}.wh-hand:has(>.wh-end){align-content:center}.wh-hand:has(>.wh-end)>.wh-verdict{grid-column:1/-1;justify-self:center}.wh-held{--card-w:var(--held-w);--card-h:var(--held-h);--band:72px;grid-template-rows:var(--card-h) var(--pin) var(--stamp);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:20px;outline:none;justify-items:center;animation:.34s cubic-bezier(.2,.8,.2,1) wh-deal;display:grid}.wh-held .wh-card{border:2px solid var(--accent);box-shadow:var(--shadow), 0 0 0 6px var(--accent-soft);transition:transform .2s,box-shadow .2s;transform:rotate(-2.5deg)}.wh-held .wh-icon{width:36px;height:36px}.wh-held .wh-name{-webkit-line-clamp:7;line-clamp:7;font-size:.98rem}@media (hover:hover){.wh-held:not([data-disabled]):hover .wh-card{transform:rotate(0)translateY(-4px)}}.wh-held:focus-visible .wh-card{outline:3px solid var(--accent-ring);outline-offset:4px}.wh-held[data-dragging]{z-index:10;cursor:grabbing;position:relative}.wh-held[data-dragging] .wh-card{box-shadow:0 34px 60px -24px #00000080, 0 0 0 6px var(--accent-soft);transform:scale(1.03)}.wh-held[data-dragging] .wh-pin,.wh-held[data-dragging] .wh-stamp{opacity:0}.wh-held[data-disabled]{cursor:default;opacity:.55}.wh-hint{max-width:15rem;color:var(--text-dim);justify-items:start;gap:4px;margin:0;font-size:.86rem;font-weight:700;transition:opacity .16s;display:grid}.wh-hint-drag{align-items:center;gap:6px;display:inline-flex}.wh-hint-drag svg{fill:none;width:16px;height:16px;stroke:var(--accent-text);stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;animation:1.6s ease-in-out infinite wh-nudge}.wh-hint-keys{color:var(--text-faint);font-size:.76rem;font-weight:600}@media (hover:none){.wh-hint-keys{display:none}}.wh-board[data-placing] .wh-hint{opacity:0}.wh-verdict{border-radius:var(--radius-pill);text-align:center;margin:0;padding:4px 14px;font-size:.86rem;font-weight:800;animation:.32s cubic-bezier(.2,.8,.2,1) wh-pop}.wh-verdict.is-right{background:var(--good-soft);color:var(--good)}.wh-verdict.is-wrong{background:var(--bad-soft);color:var(--bad)}.wh-track{z-index:1;scrollbar-color:var(--border-strong) transparent;scrollbar-width:thin;padding:6px 0 12px;position:relative;overflow:auto hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 28px calc(100% - 28px),#0000);mask-image:linear-gradient(90deg,#0000,#000 28px calc(100% - 28px),#0000)}.wh-line{gap:14px;width:max-content;margin:0 auto;padding:8px 32px 4px;list-style:none;display:flex;position:relative}.wh-line:before{top:calc(8px + var(--card-h) + var(--pin) + var(--stamp) / 2 - 2px);background:linear-gradient(90deg, transparent, var(--border-strong) 32px, var(--border-strong) calc(100% - 32px), transparent);content:"";border-radius:2px;height:4px;position:absolute;left:0;right:0}.wh-item,.wh-gap{grid-template-rows:var(--card-h) var(--pin) var(--stamp);justify-items:center;display:grid;position:relative}.wh-item[data-wrong] .wh-card{border-color:var(--bad)}.wh-item[data-wrong] .wh-stamp{background:var(--bad);color:var(--bg)}.wh-item[data-fresh] .wh-stamp{animation:.46s cubic-bezier(.2,.8,.2,1) .38s both wh-stamp}.wh-item[data-fresh] .wh-card{box-shadow:var(--shadow-sm), 0 0 0 4px var(--accent-ring)}.wh-item[data-fresh][data-wrong] .wh-card{box-shadow:var(--shadow-sm), 0 0 0 4px var(--bad-soft);animation:.42s ease-in-out .46s wh-shake}.wh-gap-card{width:var(--card-w);height:var(--card-h);border:2px dashed var(--accent);background:var(--accent-soft);border-radius:18px;animation:.2s ease-out wh-gap}.wh-gap .wh-pin{background:var(--accent)}.wh-gap .wh-stamp{background:var(--accent-soft);color:var(--accent-text);font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;box-shadow:0 0 0 2px var(--accent), 0 0 0 6px var(--surface);font-size:.74rem;font-weight:800}.wh-end{justify-items:center;gap:12px;padding:4px 14px 14px;display:grid}.wh-end-score{font-family:var(--font-display);text-align:center;margin:0;font-size:1.5rem;font-weight:700}.wh-legend-drag{border:2px solid var(--accent);background:linear-gradient(var(--accent) 0 34%, var(--surface) 34%);border-radius:5px;width:18px;height:24px;position:relative;transform:rotate(-8deg)}.wh-legend-stamp{border-radius:var(--radius-pill);background:var(--accent);width:26px;height:12px}.wh-legend-stamp.is-wrong{background:var(--bad)}.wh-logo{font-family:var(--font-display);align-items:center;gap:.18em;font-size:32px;font-weight:700;line-height:1;display:inline-flex}.wh-logo-when{color:var(--text);letter-spacing:.06em;padding-bottom:.32em;position:relative}.wh-logo-when:before{background:var(--accent);content:"";border-radius:999px;height:.09em;position:absolute;bottom:.08em;left:0;right:0}.wh-logo-when:after{background:radial-gradient(circle, var(--accent) .12em, transparent .13em) 0 50% / calc((100% - .26em) / 3) 100% repeat-x;content:"";height:.26em;position:absolute;bottom:0;left:.3em;right:.3em}.wh-logo-boo{color:var(--accent-text)}@keyframes wh-deal{0%{opacity:0;transform:translateY(-14px)scale(.94)}}@keyframes wh-pop{0%{opacity:0;transform:scale(.8)}}@keyframes wh-nudge{50%{transform:translateY(3px)}}@keyframes wh-gap{0%{opacity:0;transform:scale(.9)}}@keyframes wh-stamp{0%{opacity:0;transform:scale(.3)rotate(-14deg)}70%{opacity:1;transform:scale(1.14)rotate(2deg)}}@keyframes wh-shake{20%,60%{transform:translate(-5px)}40%,80%{transform:translate(5px)}}@media (prefers-reduced-motion:reduce){.wh-held,.wh-verdict,.wh-gap-card,.wh-hint-drag svg,.wh-item[data-fresh] .wh-stamp,.wh-item[data-fresh][data-wrong] .wh-card{animation:none}.wh-held .wh-card{transition:none}}@media (width<=44rem){.wh-top .wb-status{flex-basis:100%}.wh-restart{margin-left:auto}.wh-hand{grid-template-columns:minmax(0,1fr);justify-items:center;gap:8px}.wh-hand>.wh-verdict,.wh-hand>.wh-held,.wh-hand>.wh-hint,.wh-hand>.wh-end{grid-area:auto/1}.wh-hand>.wh-verdict,.wh-hand>.wh-hint{justify-self:center}.wh-hint{text-align:center;justify-items:center}.wh-board{--card-w:116px;--card-h:162px;--band:48px;--held-w:148px;--held-h:200px;--pin:10px;--stamp:26px}.wh-held{--band:64px}.wh-icon{width:24px;height:24px}.wh-held .wh-icon{width:32px;height:32px}.wh-body{gap:3px;padding:8px 9px 9px}.wh-cat{font-size:.6rem}.wh-name{font-size:.74rem}.wh-held .wh-name{font-size:.86rem}.wh-stamp{min-width:58px;font-size:.86rem}.wh-line{gap:10px;padding-inline:20px}.wh-logo{font-size:24px}}
