.tile-crayon{--tile-a:#ff8a3d;--tile-b:#9b5de5;--tile-edge:#6a2fa0}.match-page.game-doodle{--stage-bg:radial-gradient(circle at 16% 16%, #ffffff47 0 5%, transparent 6%), radial-gradient(circle at 84% 22%, #ffffff38 0 4%, transparent 5%), linear-gradient(165deg, #ffe9c7 0%, #ffb3c6 45%, #9b5de5 100%);--banner-bg:linear-gradient(135deg, #ff8a3d, #9b5de5)}.dd{color:var(--ink);gap:clamp(.4rem,1.6vw,.65rem);display:grid}.dd-timer{color:#fff;text-shadow:0 2px 3px #501e6e80;font-variant-numeric:tabular-nums;justify-self:center;font-size:1.1rem;font-weight:900}.dd-timer.is-low{color:#e8435a;animation:.9s ease-in-out infinite wiggle}.dd-step{text-align:center;background:#fff;border-radius:16px;margin:0;padding:.5rem .9rem;font-size:clamp(.92rem,4vw,1.1rem);font-weight:900;box-shadow:0 4px #0000001f}.dd-word{flex-wrap:wrap;justify-content:center;gap:.25rem;margin:0;display:flex}.dd-word-full{letter-spacing:.04em;text-transform:lowercase;background:#fff;border-radius:999px;padding:.25rem 1rem;font-size:clamp(1.2rem,6vw,1.7rem);font-weight:900;box-shadow:0 4px #0000001f}.dd-letter{color:#fff;text-shadow:0 2px 3px #501e6e80;border-bottom:4px solid #ffffffd9;place-items:end center;min-width:clamp(18px,5.5vw,26px);height:clamp(26px,7vw,34px);font-size:clamp(1rem,5vw,1.4rem);font-weight:900;display:grid}.dd-letter.is-shown{border-bottom-color:#ffd23f}.dd-gap{width:clamp(10px,3vw,16px)}.dd-canvas-wrap{justify-self:center;width:100%;max-width:min(94vw,460px)}.dd-canvas{aspect-ratio:1;border:4px solid var(--surface-3);border-radius:var(--radius);width:100%;box-shadow:var(--shadow);touch-action:none;-webkit-tap-highlight-color:transparent;background:#fffdf6;display:block}.dd-canvas.is-drawing{cursor:crosshair}.dd-tools{background:#fff;border-radius:18px;gap:.4rem;padding:.5rem;display:grid;box-shadow:0 5px #0000001f}.dd-colors,.dd-widths,.dd-tool-actions{flex-wrap:wrap;justify-content:center;gap:.35rem;display:flex}.dd-color{cursor:pointer;border:3px solid #fff;border-radius:50%;width:38px;height:38px;box-shadow:0 0 0 2px #3b2f5e2e}.dd-color.is-selected{transform:scale(1.12);box-shadow:0 0 0 3px #ffd23f,0 0 10px #ffd23fcc}.dd-width{cursor:pointer;background:#faf8ff;border:3px solid #e6e1f7;border-radius:12px;place-items:center;width:44px;height:38px;display:grid}.dd-width.is-selected{background:#f3ecff;border-color:#9b5de5}.dd-width span{background:#3b2f5e;border-radius:50%;display:block}.dd-color:focus-visible,.dd-width:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.dd-guess{gap:.4rem;display:flex}.dd-guess-input{flex:1;min-height:52px;font-size:1.05rem}.dd-guess-go{min-height:52px;padding-inline:1.2rem;font-size:1.05rem}.dd-feed{gap:.25rem;margin:0;padding:0;list-style:none;display:grid}.dd-guess-item{background:#ffffffe6;border-radius:12px;align-items:center;gap:.5rem;padding:.25rem .6rem;font-size:.86rem;font-weight:700;display:flex}.dd-guess-item.is-correct{color:#14683f;background:#d8f5e3;font-weight:900}.dd-guess-item.is-near{color:#8a5a00;background:#fff1cc}.dd-guess-who{color:#6f64a8;font-size:.75rem;font-weight:900}.dd-guess-text{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.dd-tag{text-transform:uppercase;flex:none;font-size:.72rem;font-weight:900}.dd-next{min-height:54px;font-size:clamp(1rem,4.2vw,1.15rem)}@media (prefers-reduced-motion:reduce){.dd-timer.is-low{animation:none}}
.tile-gold{--tile-a:#f5c542;--tile-b:#c07a12;--tile-edge:#7a4a05}.match-page.game-number{--stage-bg:linear-gradient(170deg, #2e1f72 0%, #1c1150 55%, #120a34 100%);--banner-bg:linear-gradient(135deg, #b8860b, #6b4300)}.nm-record-codes{letter-spacing:.08em;font-variant-numeric:tabular-nums;font-size:clamp(2.2rem,9vw,3.6rem)}.nm{width:min(100%,460px);color:var(--text);gap:clamp(.5rem,2vw,.8rem);margin-inline:auto;display:grid}.nm-step{color:var(--ink);text-align:center;background:#fff;border-radius:18px;margin:0;padding:.6rem .9rem;font-size:clamp(.95rem,4.2vw,1.15rem);font-weight:900;box-shadow:0 5px #00000024}.nm-step.is-live{background:var(--yellow)}.nm-step.is-win{background:linear-gradient(135deg,#fff2b8,#ffd23f)}.nm-timer{align-items:center;gap:.6rem;display:flex}.nm-timer-bar{background:#ffffff24;border-radius:999px;flex:1;height:8px;overflow:hidden}.nm-timer-bar>span{border-radius:inherit;background:var(--yellow);transform-origin:0;height:100%;transition:transform .12s linear;display:block}.nm-timer.is-low .nm-timer-bar>span{background:var(--coral)}.nm-clock{min-width:2.6rem;color:var(--yellow);font-variant-numeric:tabular-nums;text-align:right;font-size:.95rem;font-weight:900}.nm-timer.is-low .nm-clock{color:var(--coral)}.nm-digits{justify-content:center;gap:.5rem;display:flex}.nm-digit{aspect-ratio:5/6;background:var(--surface-2);color:#fff;font-variant-numeric:tabular-nums;border-radius:14px;place-items:center;width:clamp(3rem,16vw,4rem);font-size:clamp(1.6rem,8vw,2.2rem);font-weight:900;display:grid;box-shadow:0 4px #0000004d}.nm-digit.is-active{box-shadow:0 0 0 3px var(--yellow), 0 4px 0 #0000004d}.nm-digit.is-locked{color:var(--ink);background:#fff}.nm-digit.is-empty{color:#ffffff59}.nm-keypad{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;display:grid}.nm-key{background:var(--surface-2);color:#fff;min-height:3rem;font:inherit;cursor:pointer;border:0;border-radius:14px;font-size:1.35rem;font-weight:900;box-shadow:0 4px #0000004d}.nm-key.is-soft{background:var(--surface-3);color:var(--yellow);font-size:1rem}.nm-key:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px #0000004d}.nm-key:disabled{opacity:.45;cursor:not-allowed}.nm-hint{color:var(--text-muted);text-align:center;margin:0;font-size:.85rem;font-weight:700}.nm-feed{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}.nm-column{background:#0a052866;border-radius:16px;min-width:0;padding:.55rem}.nm-column-title{letter-spacing:.04em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;margin:0 0 .4rem;font-size:.8rem;font-weight:900;overflow:hidden}.nm-column.seat-0 .nm-column-title{color:var(--seat-0)}.nm-column.seat-1 .nm-column-title{color:var(--seat-1)}.nm-empty{color:var(--text-muted);margin:0;font-size:.85rem}.nm-list{gap:.3rem;max-height:18rem;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.nm-row{background:#ffffff12;border-radius:10px;justify-content:space-between;align-items:baseline;gap:.4rem;padding:.3rem .5rem;display:flex}.nm-row.is-new{background:#ffd23f38}.nm-row.is-cracked{background:var(--yellow);color:var(--ink)}.nm-row-digits{font-family:var(--font-mono);letter-spacing:.08em;font-size:1rem;font-weight:900}.nm-row-digits .is-hit{color:var(--coral)}.nm-row.is-cracked .nm-row-digits .is-hit{color:inherit}.nm-row-score{white-space:nowrap;font-size:.85rem;font-weight:800}.nm-mycode{color:var(--text-muted);font:inherit;cursor:pointer;background:#0a052866;border:0;border-radius:999px;justify-self:center;align-items:center;gap:.5rem;padding:.3rem .8rem;font-size:.85rem;font-weight:800;display:inline-flex}.nm-mycode strong{color:#fff;font-family:var(--font-mono);letter-spacing:.1em}.nm-codes{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}.nm-code{background:#0a052866;border-radius:16px;justify-items:center;gap:.4rem;padding:.6rem .4rem;display:grid}.nm-code-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.85rem;font-weight:900;overflow:hidden}.nm-code.seat-0 .nm-code-name{color:var(--seat-0)}.nm-code.seat-1 .nm-code-name{color:var(--seat-1)}.nm-code .nm-digit{width:clamp(2rem,9vw,2.6rem);font-size:clamp(1.1rem,5vw,1.5rem)}.nm-code-state{color:var(--success);font-size:.8rem;font-weight:800}.nm-code.is-cracked .nm-code-state{color:var(--danger)}.nm-watch{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.nm-rival{background:#ffffff1f;border-radius:999px;padding:.3rem .8rem;font-size:.85rem;font-weight:800}.nm-rival.is-locked{color:#1f7a4d;background:#d9f8e6}.nm.is-halted .nm-keypad{opacity:.5}
.wd-board{--wd-correct:#2fa866;--wd-present:#e3a82b;--wd-absent:#59547f;--wd-empty:#2b2177;--wd-line:#5b4fc0;width:min(100%,460px);color:var(--text);gap:clamp(.5rem,2vw,.8rem);margin-inline:auto;display:grid}.wd-step{color:var(--ink);text-align:center;background:#fff;border-radius:18px;margin:0;padding:.6rem .9rem;font-size:clamp(.95rem,4.2vw,1.15rem);font-weight:900;box-shadow:0 5px #00000024}.wd-step.is-live{background:var(--yellow)}.wd-step.is-win{background:linear-gradient(135deg,#fff2b8,#ffd23f)}.wd-hint{white-space:nowrap;text-overflow:ellipsis;height:1.4em;color:var(--text-muted);text-align:center;margin:0;font-size:.85rem;font-weight:800;line-height:1.4;overflow:hidden}.wd-hint.is-problem{color:var(--coral)}.wd-grid{--wd-size:3.5rem;--wd-gap:.3rem;gap:var(--wd-gap);width:calc(var(--wd-size) * 5 + var(--wd-gap) * 4);grid-template-columns:minmax(0,1fr);max-width:100%;margin-inline:auto;display:grid}.wd-grid.is-sm{--wd-size:2.2rem;--wd-gap:.22rem}.wd-grid.is-xs{--wd-size:1.2rem;--wd-gap:.16rem}.wd-row{gap:var(--wd-gap);width:min(100%, calc(var(--wd-size) * 5 + var(--wd-gap) * 4));grid-template-columns:repeat(5,minmax(0,1fr));margin-inline:auto;display:grid;container-type:inline-size}.wd-tile{--wd-final:var(--wd-empty);aspect-ratio:1;border:2px solid var(--wd-line);background:var(--wd-final);color:#fff;width:100%;font-size:min(calc(var(--wd-size) * .55), 11cqw);border-radius:18%;place-items:center;font-weight:900;line-height:1;display:grid;position:relative}.wd-grid.is-xs .wd-tile{border-width:1px}.wd-tile.is-filled{border-color:#fff}.wd-row.is-locked .wd-tile{border-color:var(--yellow);color:var(--yellow)}.wd-tile.is-correct{--wd-final:var(--wd-correct);border-color:var(--wd-correct)}.wd-tile.is-present{--wd-final:var(--wd-present);border-color:var(--wd-present);color:var(--ink)}.wd-tile.is-absent{--wd-final:var(--wd-absent);border-color:var(--wd-absent)}.wd-tile.is-correct:after,.wd-tile.is-present:after{font-size:min(calc(var(--wd-size) * .26), 5cqw);font-weight:900;line-height:1.2;position:absolute;top:1px;right:8%}.wd-tile.is-correct:after{content:"✓"}.wd-tile.is-present:after{content:"•"}.wd-tile.is-flip{animation:.55s both wd-flip;animation-delay:calc(var(--i) * .14s)}.wd-row.is-shaking{animation:.4s wd-shake}@keyframes wd-flip{0%{background:var(--wd-empty);border-color:var(--wd-line);transform:rotateX(0)}49%{background:var(--wd-empty);border-color:var(--wd-line);transform:rotateX(90deg)}50%{background:var(--wd-final);transform:rotateX(90deg)}to{background:var(--wd-final);transform:rotateX(0)}}@keyframes wd-shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.wd-kb{gap:6px;width:100%;display:grid}.wd-kb-row{gap:5px;width:100%;display:flex}.wd-kb-row:nth-child(2){padding-inline:5%}.wd-key{background:var(--surface-3);color:#fff;width:auto;min-width:0;height:50px;min-height:0;font:inherit;cursor:pointer;border:0;border-radius:8px;flex:1 1 0;place-items:center;padding:0;font-size:.95rem;font-weight:900;line-height:1;display:grid;box-shadow:0 3px #0000004d}.wd-key.is-wide{flex:1.5 1 0;font-size:.8rem}@media (max-width:400px){.wd-kb-row{gap:4px}.wd-key{border-radius:6px;height:44px;font-size:.85rem}}.wd-key.is-send{background:var(--yellow);color:var(--ink)}.wd-key.is-correct{background:var(--wd-correct)}.wd-key.is-present{background:var(--wd-present);color:var(--ink)}.wd-key.is-absent{color:#fff6;background:#25204f}.wd-key:active:not(:disabled){transform:translateY(2px);box-shadow:0 1px #0000004d}.wd-key:disabled{opacity:.5;cursor:not-allowed}.wd-key:focus-visible,.wd-lock:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.wd-board.is-halted .wd-kb{opacity:.5}.wd-side{align-content:start;justify-items:center;gap:.4rem;min-width:0;display:grid}.wd-side-title{color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.7rem;font-weight:900}.wd-side-title.seat-0{color:var(--seat-0)}.wd-side-title.seat-1{color:var(--seat-1)}.wd-mine{color:#fff;font:inherit;cursor:pointer;background:#ffffff1a;border:0;border-radius:999px;justify-content:center;align-items:center;gap:.45rem;padding:.2rem .65rem;font-size:.72rem;font-weight:800;display:flex}.wd-mine strong{letter-spacing:.18em;text-transform:uppercase}.wd-mine span{color:var(--yellow)}.wd-reveal{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;display:grid}.wd-reveal-card{background:#ffffff14;border-radius:16px;justify-items:center;gap:.35rem;padding:.5rem .3rem;display:grid}.wd-reveal-card .wd-grid{--wd-size:clamp(1.7rem, 7.5vw, 2.1rem)}.wd-reveal-card .wd-row.is-secret .wd-tile{--wd-final:#4b2bb8;border-color:#8f95ff}.wd-reveal-state{color:var(--text-muted);font-size:.78rem;font-weight:800}.wd-lock{min-height:3rem}.wduel{width:min(100%,460px)}.wduel-boards{grid-template-columns:minmax(0,1fr);gap:.9rem;display:grid}.wduel-boards .wd-side{gap:.5rem}.wduel-rival{opacity:.95}.wduel-banner{color:var(--yellow);text-align:center;background:#ffd23f2e;border-radius:14px;margin:0;padding:.5rem .8rem;font-size:.9rem;font-weight:900}@media (min-width:900px){.wduel{width:min(100%,640px)}.wduel-boards{grid-template-columns:minmax(0,1fr) 9.5rem;align-items:start;gap:1.4rem}}.wrace-timer{align-items:center;gap:.6rem;display:flex}.wrace-timer-bar{background:#ffffff24;border-radius:999px;flex:1;height:8px;overflow:hidden}.wrace-timer-bar>span{border-radius:inherit;background:var(--yellow);transform-origin:0;height:100%;transition:transform .12s linear;display:block}.wrace-timer.is-low .wrace-timer-bar>span{background:var(--coral)}.wrace-clock{min-width:3rem;color:var(--yellow);font-variant-numeric:tabular-nums;text-align:right;font-size:.95rem;font-weight:900}.wrace-timer.is-low .wrace-clock{color:var(--coral)}.wrace-rival{background:#ffffff14;border-radius:16px;justify-content:center;align-items:center;gap:.8rem;padding:.5rem;display:flex}.wrace-rival-name{text-transform:uppercase;letter-spacing:.04em;font-size:.8rem;font-weight:900}.wrace-rival.seat-0 .wrace-rival-name{color:var(--seat-0)}.wrace-rival.seat-1 .wrace-rival-name{color:var(--seat-1)}.wrace-boards{gap:.6rem;display:grid}.wrace-record{justify-items:center;gap:.8rem;display:grid}.wd-record{justify-items:center;gap:.8rem;width:100%;display:grid}.wd-record-boards{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}@media (prefers-reduced-motion:reduce){.wd-tile,.wd-row{animation:none!important}.wrace-timer-bar>span{transition:none}}.wrace-rival .wd-grid{max-width:8rem}
.match-page.game-hangman{--stage-bg:linear-gradient(170deg, #1d5a56 0%, #123c4a 55%, #0d2535 100%);--banner-bg:linear-gradient(135deg, #1f8a73, #14506f)}.match-page.game-word-duel{--stage-bg:linear-gradient(170deg, #1f4a8f 0%, #1a2f78 55%, #12195a 100%);--banner-bg:linear-gradient(135deg, #1b73d1, #2b3fa8)}.match-page.game-word-race{--stage-bg:linear-gradient(170deg, #7a3b12 0%, #4d2377 55%, #2a1456 100%);--banner-bg:linear-gradient(135deg, #d35400, #7b3fe4)}.hm{width:min(100%,460px);color:var(--text);gap:clamp(.5rem,2vw,.8rem);margin-inline:auto;display:grid}.hm-step{color:var(--ink);text-align:center;background:#fff;border-radius:18px;margin:0;padding:.6rem .9rem;font-size:clamp(.95rem,4.2vw,1.15rem);font-weight:900;box-shadow:0 5px #00000024}.hm-step.is-live{background:var(--yellow)}.hm-step.is-win{background:linear-gradient(135deg,#fff2b8,#ffd23f)}.hm-meta{color:var(--text-muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:.4rem .8rem;margin:0;font-size:.82rem;font-weight:800;display:flex}.hm-time{color:var(--coral)}.hm-badge{background:var(--yellow);color:var(--ink);text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:.2rem .7rem;font-size:.78rem;font-weight:900}.hm-stage{grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);align-items:center;gap:.8rem;display:grid}.hm-stage-side{justify-items:center;gap:.6rem;min-width:0;display:grid}.hm-gallows{fill:none;stroke-linecap:round;stroke-linejoin:round;width:100%;max-height:220px}.hm-frame{stroke:#e9e4ff;stroke-width:5px}.hm-body>g{stroke:var(--coral);stroke-width:5px;opacity:0;transform-box:fill-box;transform-origin:50%;transition:opacity .25s,transform .25s;transform:scale(.85)}.hm-body>g.is-on{opacity:1;transform:none}.hm-slots{flex-wrap:wrap;justify-content:center;gap:.6rem 1rem;display:flex}.hm-word{gap:.25rem;display:flex}.hm-slot{color:#fff;border-bottom:4px solid #e9e4ff;place-items:end center;width:clamp(1.45rem,6.5vw,2rem);height:clamp(2rem,9vw,2.6rem);font-size:clamp(1.3rem,6vw,1.8rem);font-weight:900;line-height:1.3;display:grid}.hm-slot.is-revealed{border-color:var(--lime)}.hm-slot.is-secret{color:#fff6}.hm-count{color:var(--text-muted);text-align:center;margin:0;font-size:.82rem;font-weight:800}.hm-kb{gap:.35rem;display:grid}.hm-kb-row{justify-content:center;gap:.28rem;display:flex}.hm-key{background:var(--surface-3);color:#fff;min-width:0;max-width:2.6rem;min-height:2.9rem;font:inherit;cursor:pointer;border:0;border-radius:10px;flex:1 1 0;padding:0;font-size:.95rem;font-weight:900;box-shadow:0 3px #0000004d}.hm-key.is-hit{background:#2fa866}.hm-key.is-miss{color:#fff6;background:#25204f;text-decoration:line-through}.hm-key.is-hit:after{content:" ✓";font-size:.6em}.hm-key:active:not(:disabled){transform:translateY(2px);box-shadow:0 1px #0000004d}.hm-key:disabled{cursor:not-allowed}.hm-key:disabled:not(.is-hit,.is-miss){opacity:.5}.hm-key:focus-visible,.hm-chip:focus-visible,.hm-input:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.hm-setup,.hm-solve{gap:.5rem;display:grid}.hm-label{color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;font-size:.8rem;font-weight:900}.hm-input-row{gap:.5rem;display:flex}.hm-input{border:2px solid var(--border);background:var(--surface);color:#fff;min-width:0;font:inherit;letter-spacing:.05em;border-radius:14px;flex:1;padding:.65rem .8rem;font-size:1.1rem;font-weight:800}.hm-input[aria-invalid=true]{border-color:var(--coral)}.hm-chips{flex-wrap:wrap;gap:.4rem;display:flex}.hm-chip{border:2px solid var(--border);color:#fff;font:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:.35rem .8rem;font-size:.85rem;font-weight:800}.hm-chip.is-on{border-color:var(--yellow);background:var(--yellow);color:var(--ink)}.hm-wait{color:var(--text-muted);text-align:center;margin:0;font-weight:800}.hm-history{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.hm-history li{background:#ffffff14;border-radius:14px;gap:.15rem;padding:.5rem .8rem;font-size:.85rem;font-weight:700;display:grid}.hm-history-word{letter-spacing:.12em;font-size:1.05rem;font-weight:900}.hm-history li.is-solved .hm-history-word{color:var(--lime)}.hm-history li.is-hanged .hm-history-word{color:var(--coral)}.hm.is-halted .hm-kb{opacity:.5}.hm-record{justify-items:center;gap:.8rem;width:100%;display:grid}@media (max-width:380px){.hm-stage{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.hm-body>g{transition:none}}
.home-screen{width:100%;max-width:var(--container);flex-direction:column;gap:clamp(.8rem,2.5vw,1.25rem);margin:0 auto;padding:0 clamp(10px,3vw,28px);display:flex}.home-head{flex-direction:column;gap:clamp(.8rem,2.5vw,1.25rem);display:flex}.home-top{grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:.5rem;display:grid}.home-round-button{background:var(--surface-2);width:48px;height:48px;color:var(--text);border-radius:50%;place-items:center;text-decoration:none;display:grid;box-shadow:0 4px #0000004d}.home-round-button:active{transform:translateY(2px);box-shadow:0 2px #0000004d}.home-round-button svg{width:24px;height:24px}.home-wordmark{text-align:center;flex-direction:column;align-items:center;gap:.2rem;margin:0;display:flex}.home-wordmark-icon{border-radius:22%;width:clamp(52px,14vw,64px);height:auto;margin-bottom:.25rem;box-shadow:0 4px #0000004d}.home-wordmark-logo{letter-spacing:.02em;text-shadow:0 3px #00000059;font-size:clamp(1.9rem,9vw,3rem);font-weight:900;line-height:1}.home-headline{display:none}.home-wordmark-sub{background:var(--yellow);color:var(--ink);letter-spacing:.14em;text-transform:uppercase;border-radius:999px;padding:.1rem .7rem;font-size:clamp(.62rem,2.6vw,.78rem);font-weight:900}.home-resume{border-radius:var(--radius-sm);background:linear-gradient(135deg,#5b3fe0,#3a2a9e);justify-content:space-between;align-items:center;gap:.75rem;padding:.7rem .8rem .7rem 1.1rem;text-decoration:none;display:flex;box-shadow:0 5px #0000004d}.home-resume-text{flex-direction:column;min-width:0;display:flex}.home-resume-cta{background:var(--yellow);color:var(--ink);text-transform:uppercase;border-radius:999px;flex-shrink:0;padding:.45rem 1rem;font-size:.85rem;font-weight:900}.home-pills{flex-wrap:wrap;align-items:flex-start;gap:.5rem;display:flex}.home-pill{background:var(--surface-2);min-height:44px;color:var(--text);cursor:pointer;border-radius:999px;align-items:center;gap:.45rem;padding:.4rem 1rem;font-size:.92rem;font-weight:800;text-decoration:none;list-style:none;display:inline-flex;box-shadow:0 3px #0000004d}.home-pill::-webkit-details-marker{display:none}.home-pill svg{width:18px;height:18px}.home-join[open]{flex-basis:100%}.home-join[open]>.home-pill{background:var(--surface-3)}.home-join-panel{max-width:520px;margin-top:.6rem}.home-join-panel .form-error{margin:.5rem 0 0}.home-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(8px,1.6vw,14px);margin:0;padding:0;list-style:none;display:grid}.home-card-cell{min-width:0;position:relative}.home-card{aspect-ratio:1;color:#fff;width:100%;font:inherit;text-align:left;cursor:pointer;background:radial-gradient(circle at 88% 10%, #ffffff4d 0 6%, transparent 7%), radial-gradient(circle at 8% 34%, #fff3 0 4%, transparent 5%), radial-gradient(circle at 94% 58%, #ffffff29 0 3%, transparent 4%), linear-gradient(145deg, var(--tile-a), var(--tile-b));box-shadow:0 5px 0 var(--tile-edge), 0 12px 24px #08041e4d;touch-action:manipulation;border:0;border-radius:clamp(14px,3vw,20px);padding:0;transition:transform .12s,box-shadow .12s;display:block;position:relative;overflow:hidden}.home-card:hover{transform:translateY(-2px)}.home-card:active{box-shadow:0 2px 0 var(--tile-edge), 0 6px 14px #08041e4d;transform:translateY(3px)scale(.98)}.home-card:focus-visible{outline-offset:3px;outline:3px solid #fff}.home-card-art{position:absolute;inset:0}.home-card-sun{aspect-ratio:1;background:#ffffff24;border-radius:50%;width:78%;position:absolute;top:2%;left:11%}.home-card-disc{aspect-ratio:1;background:radial-gradient(circle at 35% 30%,#fff6,#ffffff1f 70%);border-radius:50%;place-items:center;width:62%;display:grid;position:absolute;top:9%;left:19%;box-shadow:inset 0 -6px #0000001f}.home-card-disc svg{width:80%;height:80%}.home-card-name{letter-spacing:.01em;text-transform:uppercase;text-shadow:0 2px #0006;overflow-wrap:anywhere;background:linear-gradient(#0000,#0a0528d1 62%);padding:26% .6rem .6rem;font-size:clamp(.92rem,4.2vw,1.25rem);font-weight:900;line-height:1.05;position:absolute;bottom:0;left:0;right:0}.home-playbar{bottom:calc(var(--tab-bar-height) + env(safe-area-inset-bottom) + .5rem);z-index:50;flex-direction:column;gap:.5rem;width:min(100%,520px);margin:0 auto;display:flex;position:sticky}.home-playbar-row{-webkit-backdrop-filter:blur(12px);background:#140c3deb;border:1px solid #ffffff1a;border-radius:999px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(.5rem,3vw,1rem);padding:.5rem;display:grid;box-shadow:0 12px 30px #08041e80}.home-seat{color:#fff;letter-spacing:.04em;border:3px solid #fff;border-radius:50%;place-items:center;width:56px;height:56px;font-size:.85rem;font-weight:900;display:grid;overflow:hidden;box-shadow:0 4px #0000004d}.home-seat-0{background:var(--seat-0)}.home-seat-1{background:var(--seat-1);font-size:1.6rem}.home-seat .avatar{border-radius:50%}.home-play{background:var(--yellow);width:100%;min-height:60px;color:var(--ink);font:inherit;cursor:pointer;box-shadow:0 6px 0 var(--yellow-dark);touch-action:manipulation;border:0;border-radius:999px;flex-direction:column;justify-content:center;align-items:center;padding:.3rem 1rem;transition:transform 90ms;display:flex}.home-play:active:not(:disabled){box-shadow:0 2px 0 var(--yellow-dark);transform:translateY(4px)}.home-play:disabled{opacity:.75;cursor:progress}.home-play:focus-visible{outline-offset:3px;outline:3px solid #fff}.home-play-text{letter-spacing:.08em;font-size:clamp(1.4rem,6vw,1.8rem);font-weight:900;line-height:1}.home-play-sub{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.72rem;font-weight:800;overflow:hidden}@media (max-width:399px){.home-pills{gap:.4rem}.home-pill{padding:.4rem .75rem;font-size:.84rem}}@media (min-width:560px){.home-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:768px){.home-screen{padding:0 var(--gutter)}.home-head{flex-direction:row;justify-content:space-between;align-items:center}.home-top{display:block}.home-round-button,.home-wordmark-icon,.home-wordmark-logo,.home-wordmark-sub{display:none}.home-wordmark{text-align:left;align-items:flex-start}.home-card-name{padding:30% .7rem .65rem;font-size:1.02rem}.home-headline{font-size:clamp(1.6rem,2.6vw,2.1rem);font-weight:900;line-height:1.1;display:block}.home-pills{justify-content:flex-end}.home-join{position:relative}.home-join[open]{flex-basis:auto}.home-join-panel{z-index:30;border-radius:var(--radius-sm);background:var(--surface);border:1px solid #ffffff1a;width:min(420px,80vw);margin:0;padding:.6rem;position:absolute;top:calc(100% + .5rem);right:0;box-shadow:0 16px 40px #08041e80}.home-playbar{margin-top:.5rem;bottom:1rem}}@media (min-width:820px){.home-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width:1100px){.home-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (min-width:1320px){.home-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.home-card,.home-card:hover,.home-card:active,.home-play:active:not(:disabled){transform:none}}.game-dialog{border-radius:calc(var(--radius) + 4px);background:var(--bg);width:min(880px,100vw - 2rem);max-height:calc(100dvh - 2rem);color:var(--text);border:1px solid #ffffff1a;padding:0;overflow:hidden;box-shadow:0 30px 80px #08041eb3}.game-dialog[open]{animation:.18s ease-out game-dialog-in;display:flex}.game-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#08041eb3}@keyframes game-dialog-in{0%{opacity:0;transform:translateY(12px)scale(.98)}}.game-dialog-inner{flex-direction:column;width:100%;min-height:0;display:flex}.game-dialog-head{color:#fff;background:radial-gradient(circle at 92% 0%, #ffffff40 0 22%, transparent 23%), linear-gradient(135deg, var(--tile-a), var(--tile-b));align-items:center;gap:1rem;padding:1.1rem 3.6rem 1.1rem 1.2rem;display:flex;position:relative}.game-dialog-icon{background:#ffffff38;border-radius:22px;flex-shrink:0;place-items:center;width:76px;height:76px;display:grid;box-shadow:inset 0 -4px #00000026}.game-dialog-heading{flex-direction:column;gap:.3rem;min-width:0;display:flex}.game-dialog-heading h2{text-shadow:0 2px #00000040;margin:0;font-size:clamp(1.4rem,4vw,1.9rem);line-height:1.05}.game-dialog-heading p{color:#ffffffeb;margin:0;font-weight:700}.game-dialog-meta{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.game-dialog-rules{color:#fff;font-size:.85rem;font-weight:800}.game-dialog-close{color:#fff;width:40px;height:40px;font:inherit;cursor:pointer;background:#00000047;border:0;border-radius:50%;place-items:center;font-size:1.6rem;line-height:1;display:grid;position:absolute;top:.8rem;right:.8rem}.game-dialog-close:hover{background:#0000006b}.game-dialog-close:focus-visible{outline-offset:2px;outline:3px solid #fff}.game-dialog-body{overscroll-behavior:contain;padding:1.1rem 1.2rem 1.3rem;overflow-y:auto}.game-dialog-body .container{padding:0}.game-dialog-body .auth-card{max-width:none;box-shadow:none;margin:0}.game-lobby{flex-direction:column;gap:.9rem;display:flex}.game-lobby-connection{align-self:flex-start;margin:0}.game-lobby-grid{align-items:start;gap:.9rem;display:grid}.game-lobby-column{flex-direction:column;gap:.9rem;min-width:0;display:flex}.game-lobby-panel{border-radius:var(--radius-sm);background:var(--surface);border:1px solid #ffffff12;min-width:0;padding:1rem}.game-lobby-title{margin:0 0 .1rem;font-size:1.05rem}.game-lobby-online .game-lobby-title{margin-bottom:.75rem}.game-lobby-online .empty{padding:1.25rem .5rem .5rem}.game-lobby-active{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.game-lobby-invites{border-color:#ffd23f73}.game-lobby-invites .game-lobby-title{margin-bottom:.75rem}.game-lobby-guest{margin:0;font-size:.85rem}.game-lobby .quick-detail{font-size:.85rem}@media (min-width:720px){.game-lobby-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}@media (max-width:599px){.game-dialog{border:0;border-radius:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0}.game-dialog-head{padding:calc(.9rem + env(safe-area-inset-top)) 3.4rem .9rem 1rem}.game-dialog-close{top:calc(.7rem + env(safe-area-inset-top))}.game-dialog-icon{border-radius:18px;width:60px;height:60px}.game-dialog-body{padding:1rem 1rem calc(1.2rem + env(safe-area-inset-bottom));flex:1}}@media (prefers-reduced-motion:reduce){.game-dialog[open]{animation:none}}.random-dialog{border-radius:var(--radius);background:var(--surface);width:min(400px,100vw - 2rem);color:var(--text);border:0;padding:0;overflow:visible;box-shadow:0 30px 80px #08041eb3}.random-dialog[open]{animation:.18s ease-out game-dialog-in}.random-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#08041eb3}.random-dialog-body{text-align:center;padding:1.4rem 1.3rem 1.3rem;position:relative}.random-dialog-title{margin:0 0 .8rem;font-size:1.3rem}.random-search{align-items:center}.random-dice{font-size:3.4rem;line-height:1;animation:1.1s ease-in-out infinite random-roll;display:block}.random-search-title{margin:0;font-size:1.1rem;font-weight:900}@keyframes random-roll{0%,to{transform:rotate(0)translateY(0)}25%{transform:rotate(-18deg)translateY(-6px)}75%{transform:rotate(18deg)translateY(-6px)}}@media (prefers-reduced-motion:reduce){.random-dialog[open],.random-dice{animation:none}}
.landing{--landing-side:max(var(--gutter), calc((100% - var(--container)) / 2 + var(--gutter)));flex-direction:column;margin-top:calc(-1*clamp(.75rem,3vw,1.75rem));display:flex;overflow-x:clip}.landing-showcase,.landing-features,.landing-strip,.landing-final{isolation:isolate;position:relative}.landing-showcase:before,.landing-features:before,.landing-strip:before,.landing-final:before{content:"";z-index:-1;pointer-events:none;background-image:radial-gradient(circle at 12% 8%,#ffd23f29 0 2px,#0000 3px),radial-gradient(circle at 78% 22%,#3ed6ff2e 0 2px,#0000 3px),radial-gradient(circle at 40% 70%,#ff547024 0 2px,#0000 3px);background-size:140px 140px,190px 190px,160px 160px;background-attachment:fixed;position:absolute;inset:0}.landing-hero{padding:clamp(1.5rem, 5vw, 3.5rem) var(--landing-side) clamp(3rem, 7vw, 5rem);text-align:center;background:radial-gradient(60% 50% at 50% 30%,#7b5cff59,#0000 70%),radial-gradient(circle at 12% 80%,#ff5a8a2e,#0000 35%),radial-gradient(circle at 88% 20%,#34d3eb29,#0000 35%);flex-direction:column;align-items:center;gap:.9rem;display:flex;position:relative}.landing-hero-art{aspect-ratio:620/360;place-items:center;width:min(100%,620px);display:grid;position:relative}.landing-controller{filter:drop-shadow(0 24px 40px #08041e8c);width:84%;height:auto;animation:6s ease-in-out infinite landing-float}.landing-controller-logo{fill:#fff;letter-spacing:4px;opacity:.9;font-size:30px;font-weight:900}.landing-floater{background:#ffffff1f;border-radius:26%;place-items:center;animation:4.5s ease-in-out infinite landing-bob;display:grid;position:absolute;translate:-50% -50%;box-shadow:0 14px 30px #08041e66}.landing-floater svg{width:86%;height:86%}.landing-logo{border-radius:22%;width:clamp(84px,22vw,112px);height:auto;box-shadow:0 6px #00000059}.landing-wordmark{letter-spacing:.02em;text-shadow:0 5px #00000059;margin:.4rem 0 0;font-size:clamp(2.6rem,10vw,5rem);font-weight:900;line-height:1}.landing-guide-link{width:fit-content;color:var(--text);text-underline-offset:.2em;margin-top:1rem;display:block}.landing-tagline{max-width:34rem;color:var(--text);margin:0;font-size:clamp(1.05rem,2.6vw,1.3rem);font-weight:700}.landing-ctas{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:.4rem;display:flex}.landing-note{color:var(--text-muted);margin:0;font-size:.85rem;font-weight:700}.landing-showcase{--wave-h:clamp(36px, 6vw, 80px);--wave:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 90' preserveAspectRatio='none'%3E%3Cpath fill-rule='evenodd' transform='matrix(1 0 0 -1 0 90)' d='M0 0H1440V90H0Z M0 40c160 40 320 60 520 34S900-6 1100 18s260 50 340 40v32H0Z'/%3E%3C/svg%3E");margin-top:calc(-1 * var(--wave-h));padding:calc(clamp(3.5rem, 8vw, 6rem) + var(--wave-h)) var(--landing-side) clamp(3rem, 7vw, 5rem);position:relative}.landing-showcase.is-reversed{--wave:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 90' preserveAspectRatio='none'%3E%3Cpath fill-rule='evenodd' transform='matrix(-1 0 0 -1 1440 90)' d='M0 0H1440V90H0Z M0 40c160 40 320 60 520 34S900-6 1100 18s260 50 340 40v32H0Z'/%3E%3C/svg%3E")}.landing-showcase:after{content:"";z-index:-2;pointer-events:none;background:radial-gradient(circle at 85% 20%, #ffffff1f 0 14%, transparent 15%), linear-gradient(160deg, color-mix(in srgb, var(--tile-a) 32%, var(--bg)), color-mix(in srgb, var(--tile-b) 22%, var(--bg-deep)));-webkit-mask:var(--wave) top left / 100% var(--wave-h) no-repeat, linear-gradient(#000 0 0) left calc(var(--wave-h) - 1px) / 100% calc(100% - var(--wave-h) + 1px) no-repeat;mask:var(--wave) top left / 100% var(--wave-h) no-repeat, linear-gradient(#000 0 0) left calc(var(--wave-h) - 1px) / 100% calc(100% - var(--wave-h) + 1px) no-repeat;position:absolute;inset:0}.landing-showcase-inner{align-items:center;gap:clamp(1.5rem,4vw,3rem);max-width:1100px;margin:0 auto;display:grid}.landing-showcase-text{flex-direction:column;align-items:flex-start;gap:.7rem;display:flex}.landing-showcase-text h2{text-shadow:0 4px #00000040;margin:0;font-size:clamp(2.2rem,7vw,3.6rem);line-height:1}.landing-showcase-tagline{color:color-mix(in srgb, var(--tile-a) 45%, #fff);margin:0;font-size:clamp(1.05rem,2.5vw,1.3rem);font-weight:800}.landing-showcase-pitch{max-width:30rem;color:var(--text-muted);margin:0 0 .4rem;font-size:1.02rem;line-height:1.55}.landing-showcase-art{place-items:center;min-height:360px;display:grid;position:relative}.landing-phone{z-index:1;aspect-ratio:9/17;background:#0f0a2e;border-radius:38px;width:min(250px,70vw);padding:12px;animation:6s ease-in-out infinite landing-float;position:relative;transform:rotate(-4deg);box-shadow:0 0 0 3px #ffffff1f,0 30px 60px #08041e8c}.is-reversed .landing-phone{transform:rotate(4deg)}.landing-phone-notch{z-index:2;background:#0f0a2e;border-radius:999px;width:70px;height:18px;position:absolute;top:18px;left:50%;translate:-50%}.landing-phone-screen{color:#fff;text-align:center;background:radial-gradient(circle at 80% 12%, #ffffff4d 0 12%, transparent 13%), radial-gradient(circle at 10% 85%, #ffffff2e 0 10%, transparent 11%), linear-gradient(160deg, var(--tile-a), var(--tile-b));border-radius:28px;flex-direction:column;justify-content:center;align-items:center;gap:.6rem;height:100%;padding:2.5rem 1rem 1.2rem;display:flex}.landing-phone-art{background:radial-gradient(circle at 35% 30%,#fff6,#ffffff1a 70%);border-radius:50%;place-items:center;width:150px;height:150px;display:grid}.landing-phone-art svg{width:80%;height:80%}.landing-phone-name{text-shadow:0 2px #00000040;font-size:1.3rem;font-weight:900;line-height:1.1}.landing-phone-play{background:var(--yellow);width:100%;color:var(--ink);letter-spacing:.1em;box-shadow:0 4px 0 var(--yellow-dark);border-radius:999px;margin-top:auto;padding:.55rem;font-weight:900}.landing-bubble{background:color-mix(in srgb, var(--tile-a) 55%, transparent);filter:blur(2px);border-radius:50%;animation:7s ease-in-out infinite landing-bob;position:absolute}.landing-bubble-a{width:110px;height:110px;top:6%;left:12%}.landing-bubble-b{background:color-mix(in srgb, var(--tile-b) 60%, transparent);width:70px;height:70px;animation-delay:1.5s;bottom:8%;right:14%}.landing-features{padding:clamp(3rem, 7vw, 5rem) var(--landing-side);background:var(--bg)}.landing-section-title{text-align:center;margin:0 0 1.6rem;font-size:clamp(1.8rem,5vw,2.6rem)}.landing-feature-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:1rem;max-width:1100px;margin:0 auto;padding:0;list-style:none;display:grid}.landing-feature{border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);border:1px solid #ffffff14;padding:1.3rem}.landing-feature-icon{background:var(--surface-2);border-radius:16px;place-items:center;width:52px;height:52px;margin-bottom:.8rem;font-size:1.6rem;display:grid}.landing-feature h3{margin:0 0 .35rem;font-size:1.1rem}.landing-feature p{color:var(--text-muted);margin:0;line-height:1.5}.landing-strip{background:linear-gradient(180deg, var(--bg), var(--bg-deep));padding:clamp(2.5rem,6vw,4rem) 0}.landing-marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000);mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000)}.landing-marquee-track{gap:1rem;width:max-content;margin:0;padding:.5rem 0 1rem;list-style:none;animation:60s linear infinite landing-marquee;display:flex}.landing-marquee:hover .landing-marquee-track,.landing-marquee:focus-within .landing-marquee-track{animation-play-state:paused}.landing-marquee-item a{color:#fff;text-align:center;background:linear-gradient(145deg, var(--tile-a), var(--tile-b));width:140px;height:140px;box-shadow:0 6px 0 var(--tile-edge);border-radius:28px;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;font-size:.85rem;font-weight:900;text-decoration:none;transition:transform .12s;display:flex}.landing-marquee-item a:hover{transform:translateY(-4px)}.landing-final{padding:clamp(3rem, 7vw, 5rem) var(--landing-side) clamp(4rem, 9vw, 6rem);text-align:center;background:radial-gradient(ellipse 60% 70% at 50% 100%, #ffd23f2e, transparent 70%), var(--bg-deep);flex-direction:column;align-items:center;gap:.6rem;display:flex}.landing-final h2{margin:0;font-size:clamp(1.9rem,6vw,3rem)}.landing-final p{color:var(--text-muted);margin:0;font-size:1.1rem}@keyframes landing-float{0%,to{translate:0}50%{translate:0 -12px}}@keyframes landing-bob{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-14px)rotate(6deg)}}@keyframes landing-marquee{to{transform:translate(calc(-50% - .5rem))}}@media (min-width:860px){.landing-showcase-inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.is-reversed .landing-showcase-text{order:2}}@media (max-width:559px){.landing-floater{scale:.7}.landing-showcase-art{min-height:0}}@media (prefers-reduced-motion:reduce){.landing-controller,.landing-floater,.landing-phone,.landing-bubble,.landing-marquee-track{animation:none}}
