.player-roster{gap:.35rem;margin:.75rem 0 0;padding:0;list-style:none;display:grid}.player-roster__row{border-radius:var(--r-sm,12px);background:color-mix(in srgb, currentColor 5%, transparent);border:1px solid #0000;align-items:center;gap:.6rem;min-width:0;min-height:44px;padding:.35rem .6rem .35rem .4rem;font-size:.92rem;transition:background .2s,border-color .2s;display:flex}.player-roster__row[data-connected=false]{opacity:.55}.player-roster__row--self{border-color:color-mix(in srgb, var(--kit-accent,var(--halo-text)) 55%, transparent);background:color-mix(in srgb, var(--kit-accent,var(--halo)) 18%, transparent);font-weight:800}.player-roster__avatar{width:1.9rem;height:1.9rem;font-size:.8rem}.player-roster__name{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.player-roster__you{opacity:.7;font-weight:600}.player-roster__judge,.player-roster__badge,.player-roster__played,.player-roster__score{flex:none}.player-roster__judge,.player-roster__badge{letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;border:1px solid;border-radius:999px;align-items:center;gap:.25rem;padding:.15rem .45rem;font-size:.64rem;font-weight:800;display:inline-flex}.player-roster__badge--host{color:var(--gold-text);border-color:color-mix(in srgb, var(--gold-text) 60%, transparent)}.player-roster__row[data-spectator=true] .player-roster__name{opacity:.75}.player-roster__badge--spectator{color:var(--muted);font-weight:700}.player-roster__played{width:1.4rem;height:1.4rem;color:var(--ink,#071418);background:var(--volt,#9cbd2b);border-radius:50%;place-items:center;display:inline-grid}.player-roster__conn{opacity:.75;font-size:.75rem;font-style:italic}.player-roster__score{font-variant-numeric:tabular-nums;text-align:center;background:color-mix(in srgb, currentColor 10%, transparent);border-radius:8px;min-width:1.9rem;padding:.1rem .4rem;font-weight:800}.playing-card{all:unset;box-sizing:border-box;color:#16161a;cursor:pointer;background:#fdfdf8;border-radius:14px;flex-direction:column;justify-content:space-between;width:clamp(120px,28vw,170px);min-height:168px;padding:.8rem;font-weight:600;line-height:1.3;transition:transform .16s cubic-bezier(.2,.8,.2,1),box-shadow .16s,filter .16s;display:flex;position:relative;box-shadow:inset 0 1px #fffc,0 0 0 1px #00000014,0 8px 20px -8px #0000008c}div.playing-card{cursor:default}button.playing-card:not(:disabled):hover{transform:translateY(-4px);box-shadow:inset 0 1px #fffc,0 0 0 1px #00000014,0 16px 28px -10px #0009}button.playing-card:focus-visible{outline:3px solid var(--kit-accent,var(--halo-text));outline-offset:3px}.playing-card--selected,button.playing-card--selected:not(:disabled):hover{outline:3px solid var(--kit-accent,var(--halo-text));outline-offset:2px;box-shadow:0 0 0 6px color-mix(in srgb, var(--kit-accent,var(--halo-text)) 22%, transparent), 0 18px 30px -12px #0009;transform:translateY(-10px)}.playing-card__badge{background:var(--kit-accent,var(--halo-text));color:#06161a;border-radius:50%;place-content:center;width:1.7rem;height:1.7rem;font-weight:800;display:grid;position:absolute;top:-.55rem;right:-.55rem;box-shadow:0 4px 10px -4px #0009}.playing-card__footer{opacity:.7;text-transform:uppercase;letter-spacing:.08em;margin-top:.5rem;font-size:.7rem;font-weight:700}.playing-card--selected .playing-card__footer{opacity:1}.playing-card--back{cursor:default;background:repeating-linear-gradient(45deg,#1b1b20,#1b1b20 6px,#232329 6px 12px);border:1px solid #34343c;box-shadow:0 8px 20px -8px #0000008c}.judge-board{align-items:start;gap:clamp(1.25rem,3vw,2rem);display:grid}@media (width>=900px){.judge-board{grid-template-columns:minmax(0,1fr) minmax(15rem,19rem)}}.judge-board__main{min-width:0}.judge-board__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;display:flex}.judge-board__head h2{margin:0}.judge-board__meta{align-items:center;gap:.6rem;display:flex}.judge-board__meta p{opacity:.8;margin:0;font-size:.9rem;font-weight:700}.judge-board__stage{flex-wrap:wrap;align-items:flex-start;gap:1.25rem;margin-top:1.25rem;display:flex}.round-winner-banner{border:2px solid;border-radius:14px;justify-content:space-between;align-items:center;gap:.75rem;margin-top:1rem;padding:.65rem .75rem .65rem 1rem;font-weight:800;animation:.35s cubic-bezier(.34,1.56,.64,1) banner-in;display:flex}.round-winner-banner__text{align-items:center;gap:.5rem;font-size:1rem;display:inline-flex}@keyframes banner-in{0%{opacity:0;transform:translateY(-6px)scale(.98)}to{opacity:1;transform:none}}.judge-board__played{flex:20rem;min-width:0}.judge-board__played-label{text-transform:uppercase;letter-spacing:.12em;opacity:.7;margin:0 0 .6rem;font-size:.72rem;font-weight:700}.judge-board__cue{border:2px solid;border-radius:999px;margin:0 0 .85rem;padding:.45rem 1rem;font-size:.92rem;font-weight:800;animation:1.6s ease-in-out infinite judge-cue-pulse;display:inline-block}@keyframes judge-cue-pulse{50%{opacity:.6}}.played-row{flex-wrap:wrap;align-items:flex-start;gap:.85rem;display:flex}.played-group{gap:.45rem;display:flex}.played-group--multi{border:1px dashed color-mix(in srgb, currentColor 30%, transparent);border-radius:16px;padding:.45rem}.played-group--multi.played-group--selected{border-style:solid;border-color:color-mix(in srgb, currentColor 55%, transparent)}.judge-board__roster{border-radius:var(--kit-radius,16px);border:1px solid var(--kit-line,color-mix(in srgb, currentColor 18%, transparent));background:var(--kit-surface,transparent);padding:1rem 1.1rem}.judge-board__roster h3{margin:0;font-size:1rem}.judge-board__target{opacity:.7;font-size:.85rem;font-weight:500}.judge-board__history{margin-top:1rem}.playing-card--prompt{color:#fdfdf8;background:#121216;width:clamp(160px,30vw,220px);min-height:220px;font-size:1rem;font-weight:800;line-height:1.2}.judge-prompt{flex:none;margin:0}.judge-prompt img{border-radius:12px;max-width:clamp(160px,30vw,220px);margin-bottom:.6rem;display:block}.playing-card--dimmed{opacity:.45;cursor:default}.playing-card__title{text-align:center;margin-bottom:.4rem;font-size:.9rem;font-weight:800;line-height:1.15}.playing-card__art{border-radius:9px;width:100%;display:block}.playing-card__art-missing{color:#16161aa3;background:#00000014;border-radius:9px;justify-content:center;align-items:center;width:100%;min-height:80px;font-size:.78rem;font-style:italic;display:flex}.playing-card__text{margin-top:.4rem;font-size:.8rem;font-weight:500}.playing-card__explain{transform:translateX(calc(-50% + var(--explain-shift,0px)));z-index:40;color:#fdfdf8;text-align:left;pointer-events:none;background:#111116;border:1px solid #34343c;border-radius:12px;flex-direction:column;gap:.25rem;width:max-content;max-width:min(16rem,70vw);padding:.65rem .8rem;font-size:.8rem;font-weight:500;line-height:1.4;animation:.18s ease-out explain-in;display:flex;position:absolute;bottom:calc(100% + .5rem);left:50%;box-shadow:0 12px 28px #0000008c}.playing-card__explain strong{font-size:.84rem;font-weight:800}.playing-card__explain:after{content:"";top:100%;left:calc(50% - var(--explain-shift,0px));border:6px solid #0000;border-top-color:#111116;position:absolute;transform:translate(-50%)}@keyframes explain-in{0%{opacity:0;transform:translateX(calc(-50% + var(--explain-shift,0px))) translateY(4px)}to{opacity:1;transform:translateX(calc(-50% + var(--explain-shift,0px)))}}.game-screen{--kit-surface:color-mix(in srgb, var(--paper) 6%, transparent);--kit-line:color-mix(in srgb, currentColor 18%, transparent);--kit-strip-bg:#061013b8;--kit-strip-ink:var(--paper);--kit-accent:var(--halo-text);--kit-back:repeating-linear-gradient(45deg, var(--surface) 0 6px, var(--surface-2) 6px 12px);--kit-dark:linear-gradient(180deg, var(--surface-2), var(--surface));--kit-radius:var(--r-md)}.table-feed{flex-wrap:wrap;align-items:center;gap:.4rem .75rem;display:flex}.table-feed__latest{font-family:var(--font-body);flex:14rem;align-items:center;gap:.55rem;min-height:1.2em;margin:0;font-size:.9rem;display:flex}.table-feed__latest:before{content:"";background:var(--kit-accent);width:.45rem;height:.45rem;box-shadow:0 0 0 3px color-mix(in srgb, var(--kit-accent) 22%, transparent);border-radius:50%;flex:none}.table-feed__toggle{border:1px solid var(--kit-line);border-radius:var(--r-pill);min-height:36px;color:inherit;font:inherit;cursor:pointer;transition:background var(--dur) var(--ease), border-color var(--dur) var(--ease);background:0 0;flex:none;align-items:center;gap:.35rem;padding:0 .8rem;font-size:.82rem;font-weight:700;display:inline-flex;position:relative}.table-feed__toggle:before{content:"";position:absolute;inset:-4px 0}.table-feed__toggle:hover{background:color-mix(in srgb, currentColor 10%, transparent)}.table-feed__toggle[aria-expanded=true]{background:color-mix(in srgb, currentColor 12%, transparent)}.table-feed__toggle:focus-visible{outline-offset:2px;outline:2px solid}.table-feed__history{border-radius:var(--kit-radius);border:1px solid var(--kit-line);background:var(--kit-surface);max-height:14rem;font-family:var(--font-body);flex-basis:100%;gap:.3rem;margin:0;padding:.6rem .85rem;font-size:.82rem;list-style:none;display:grid;overflow-y:auto}.table-feed__history li{opacity:.85}.table-feed__history li:first-child{opacity:1;font-weight:600}.game-screen[data-game] .table-feed__history{font-family:var(--font-body)}.phase-bar{border-radius:var(--kit-radius);background:var(--kit-strip-bg);border:1px solid var(--kit-line);min-height:48px;font-family:var(--font-display);color:var(--kit-strip-ink);flex-wrap:wrap;align-items:center;gap:.45rem .75rem;padding:.45rem .55rem .45rem .95rem;display:flex;box-shadow:0 12px 28px -20px #000000b3}.phase-bar__phase{text-transform:capitalize;align-items:center;gap:.55rem;font-weight:800;display:inline-flex}.phase-bar__phase:before{content:"";background:var(--kit-accent);width:.55rem;height:.55rem;box-shadow:0 0 0 3px color-mix(in srgb, var(--kit-accent) 28%, transparent);border-radius:50%;flex:none}.phase-bar__turn{opacity:.85;font-weight:600}.phase-bar__turn[data-self=true]{opacity:1;border-radius:var(--r-pill);color:#0b1a05;background:var(--volt);box-shadow:0 0 0 3px color-mix(in srgb, var(--volt) 30%, transparent);padding:.15rem .65rem;font-weight:800}.phase-bar__extras{opacity:.85;margin-left:auto;font-size:.9rem;font-weight:600}.phase-bar>.countdown-pill{margin-left:auto}.phase-bar__extras+.countdown-pill{margin-left:0}.game-screen[data-game] .phase-bar .countdown-pill,.phase-bar .countdown-pill{color:inherit;background:color-mix(in srgb, currentColor 14%, transparent);border-color:color-mix(in srgb, currentColor 45%, transparent)}.game-screen[data-game] .phase-bar .countdown-pill--urgent,.phase-bar .countdown-pill--urgent{color:#fff;background:#d6453d;border-color:#d6453d}@media (width<=640px){.phase-bar{z-index:5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:3.75rem}}.card-chip{border-radius:var(--r-sm);border:1px solid var(--kit-line);background:var(--kit-surface);min-width:44px;min-height:44px;color:inherit;font:inherit;cursor:pointer;transition:background var(--dur) var(--ease), border-color var(--dur) var(--ease), transform var(--dur-fast) var(--ease);align-items:center;gap:.4rem;padding:.4rem .75rem;font-size:.92rem;font-weight:600;display:inline-flex;position:relative}.card-chip:hover{background:color-mix(in srgb, currentColor 12%, transparent);border-color:color-mix(in srgb, currentColor 40%, transparent)}.card-chip:active{transform:scale(.97)}.card-chip:focus-visible{outline-offset:2px;outline:2px solid}.card-chip--upgrade{border-color:color-mix(in srgb, var(--volt) 75%, transparent)}.card-chip--downgrade,.card-chip--danger{border-color:color-mix(in srgb, var(--danger) 75%, transparent)}.card-chip__accent{border:1.5px solid;border-radius:999px;justify-content:center;align-items:center;min-width:1.3em;height:1.3em;padding:0 .2em;font-size:.85em;font-weight:800;line-height:1;display:inline-flex}.card-chip--danger .card-chip__accent{color:var(--danger)}.card-chip--upgrade .card-chip__accent{color:#6f9a10}.card-chip__popup{z-index:20;border-radius:var(--r-sm);border:1px solid var(--line-strong);background:var(--ink-2);width:max-content;max-width:240px;color:var(--paper);box-shadow:var(--shadow-pop);text-align:left;white-space:normal;gap:.3rem;margin:0;padding:.6rem .7rem;font-size:.82rem;line-height:1.4;display:grid;position:fixed;inset:auto}.card-chip__popup img{border-radius:var(--r-xs);max-width:100%}.card-chip__popup em{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;font-style:normal}.card-inspect{border:1px solid var(--line-strong);border-radius:var(--r-lg);background:linear-gradient(180deg, var(--surface-2), var(--surface));color:var(--paper);width:min(92vw,380px);box-shadow:var(--shadow-pop);padding:1.1rem}.card-inspect::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0000009e}.game-screen[data-game] .card-inspect :where(h2,h3,p){color:var(--paper);-webkit-text-fill-color:var(--paper);font-family:var(--font-body);text-transform:none;text-shadow:none;letter-spacing:0}.card-inspect__art{border-radius:var(--r-sm);width:100%;display:block}.card-inspect__title{margin:.85rem 0 .2rem;font-size:1.25rem}.game-screen[data-game] .card-inspect :where(.card-inspect__title){font-family:var(--font-display);font-weight:800}.card-inspect__kind{text-transform:uppercase;letter-spacing:.1em;opacity:.7;margin:0 0 .5rem;font-size:.75rem}.card-inspect__text{margin:0;font-size:.95rem;line-height:1.5}.card-inspect__close{border-radius:var(--r-pill);border:1px solid var(--line-strong);width:100%;min-height:44px;color:var(--paper);font:inherit;cursor:pointer;background:#ffffff0f;margin-top:1rem;padding:0 1rem;font-weight:700}.card-inspect__close:hover{background:#ffffff1f}.card-inspect__close:focus-visible{outline:2px solid var(--volt);outline-offset:2px}.virtual-pile{justify-items:center;gap:.4rem;display:grid}.virtual-pile__stack{border:1px solid var(--kit-line);background:var(--kit-back);width:64px;height:90px;box-shadow:inset 0 1px 0 #ffffff1f, 3px 3px 0 -1px color-mix(in srgb, currentColor 22%, transparent), 6px 6px 0 -2px color-mix(in srgb, currentColor 12%, transparent);border-radius:10px;overflow:hidden}.virtual-pile__stack[data-empty=true]{opacity:.45;box-shadow:none;background:0 0;border-style:dashed}.virtual-pile__art{object-fit:cover;width:100%;height:100%;display:block}.virtual-pile__meta{text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:.3rem .4rem;max-width:11rem;font-size:.82rem;display:flex}.virtual-pile__label{font-weight:700}.virtual-pile__count{border-radius:var(--r-pill);text-align:center;min-width:1.6rem;font-family:var(--font-mono);font-variant-numeric:tabular-nums;background:color-mix(in srgb, currentColor 12%, transparent);padding:.05rem .4rem;font-size:.75rem;font-weight:700}.reaction-stack{border-radius:var(--kit-radius);border:1px solid color-mix(in srgb, var(--kit-accent) 55%, transparent);background:var(--kit-dark);color:var(--paper);gap:.55rem;padding:.75rem .9rem;display:grid;box-shadow:0 16px 36px -20px #000c}.reaction-stack__header{align-items:center;gap:.6rem;display:flex}.reaction-stack__header h3{margin:0;font-size:1rem}.game-screen[data-game] .reaction-stack :where(h2,h3,h4){color:var(--paper);-webkit-text-fill-color:var(--paper);text-shadow:none}.game-screen[data-game] .reaction-stack .countdown-pill,.reaction-stack .countdown-pill{color:var(--paper);background:color-mix(in srgb, var(--paper) 16%, transparent);border-color:color-mix(in srgb, var(--paper) 50%, transparent)}.game-screen[data-game] .reaction-stack .countdown-pill--urgent,.reaction-stack .countdown-pill--urgent{color:#fff;background:#d6453d;border-color:#d6453d}.reaction-stack__frames{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.reaction-stack__frame{border-radius:var(--r-sm);background:#ffffff0a;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.35rem .5rem;font-size:.85rem;display:flex}.reaction-stack .card-chip{border-color:var(--line-strong);color:var(--paper);background:#ffffff0f}.reaction-stack__status{margin-left:auto;font-weight:700}.reaction-stack__status[data-cancelled=true]{opacity:.75;text-decoration:line-through}.reaction-stack__status[data-cancelled=true]:before{content:"✕ ";text-decoration:none;display:inline-block}.reaction-stack__status[data-cancelled=false]:before{content:"✓ "}.reaction-stack__passed,.reaction-stack__waiting{color:var(--muted);margin:0;font-size:.8rem}.table-fly-ghost{border-radius:var(--r-sm);box-shadow:var(--shadow-card);overflow:hidden}.table-fly-ghost--face-down{background:repeating-linear-gradient(45deg, var(--surface) 0 6px, var(--surface-2) 6px 12px);border:1px solid var(--line-strong)}.table-fly-ghost--face-up{background:var(--paper);color:var(--ink);border:1px solid var(--line-strong);text-align:center;place-content:center;padding:.3rem;font-size:.65rem;font-weight:700;line-height:1.15;display:grid}.table-fly-ghost--face-up img{object-fit:cover;width:100%;height:100%}.player-console{z-index:5;padding:.6rem .7rem calc(.7rem + env(safe-area-inset-bottom));color:var(--console-ink,#f2f2f2);border-top:2px solid color-mix(in srgb, currentColor 45%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0d0e12eb;border-radius:20px 20px 0 0;margin-top:1.25rem;position:sticky;bottom:0;box-shadow:0 -16px 40px -24px #000c}.player-console,.choice-sheet{--kit-accent:var(--console-ink,#f2f2f2)}.player-console__banner{text-align:center;justify-content:center;align-items:center;gap:.5rem;margin:.1rem 0 .5rem;font-size:.9rem;font-weight:700;display:flex}.player-console__banner:before{content:"";opacity:.85;background:currentColor;border-radius:50%;flex:none;width:.5rem;height:.5rem}.player-console__preview{border:2px dashed color-mix(in srgb, currentColor 45%, transparent);border-radius:14px;margin-bottom:.5rem;padding:.3rem .4rem}.player-console__preview-label{text-align:center;letter-spacing:.06em;text-transform:uppercase;opacity:.8;margin:.2rem 0 0;font-size:.72rem;font-weight:800}.player-console__preview .hand-strip{padding-top:.35rem}.player-console__preview .playing-card{margin-left:.3rem}.action-chips{flex-wrap:wrap;justify-content:center;gap:.5rem;margin-bottom:.5rem;display:flex}.action-chip{min-height:44px;color:inherit;cursor:pointer;background:0 0;border:2px solid;border-radius:999px;padding:.55rem 1.15rem;font-size:.92rem;font-weight:800}.player-console__submit{border-radius:12px;margin:0 auto .5rem;padding:.55rem 1.3rem;font-weight:800;display:flex}.player-console__submit:disabled{opacity:.5}.custom-card-composer{border:1px solid color-mix(in srgb, currentColor 35%, transparent);border-radius:14px;gap:.45rem;max-width:32rem;margin:0 auto .7rem;padding:.75rem;display:grid}.custom-card-composer legend{padding:0 .3rem;font-weight:800}.custom-card-composer label{color:inherit;opacity:.8;margin:0}.custom-card-composer textarea{resize:vertical;border-radius:10px;min-height:4.5rem;margin:0;padding:.6rem .7rem}.custom-card-composer small{text-align:right;opacity:.75}.custom-card-composer button{border-radius:10px;padding:.5rem;font-weight:800}.hand-strip{scrollbar-width:thin;scroll-snap-type:x proximity;padding:.9rem .3rem .4rem;display:flex;overflow-x:auto}.hand-strip .playing-card{scroll-snap-align:start;flex:none;width:clamp(124px,30vw,150px);min-height:140px;margin-left:-18px}.hand-strip .playing-card .playing-card__text{font-size:.74rem}.hand-strip .playing-card:first-child{margin-left:0}.hand-strip .playing-card--selected{z-index:2}.hand-strip .playing-card--dimmed{opacity:1;filter:grayscale(.6)brightness(.82)}.choice-sheet{z-index:20;padding:1rem 1rem calc(1rem + env(safe-area-inset-bottom));color:var(--console-ink,#f2f2f2);background:linear-gradient(#1c1d24,#15161b);border-top:3px solid;border-radius:20px 20px 0 0;animation:.28s cubic-bezier(.2,.8,.2,1) sheet-up;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -18px 40px #0000008c}@keyframes sheet-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}.choice-sheet__title{margin:0 0 .75rem;font-size:1.05rem}.game-screen[data-game] .choice-sheet__title{color:var(--console-ink,#f2f2f2);-webkit-text-fill-color:var(--console-ink,#f2f2f2);text-shadow:none}.choice-sheet__options{flex-wrap:wrap;gap:.5rem;max-height:40vh;padding:2px;display:flex;overflow-y:auto}.choice-sheet__option{color:#f2f2f2;min-height:44px;font:inherit;cursor:pointer;background:#22232b;border:1px solid #4a4a55;border-radius:12px;padding:.55rem 1rem;font-weight:700;transition:background .15s,border-color .15s;position:relative}.choice-sheet__option:hover{background:#2b2c36;border-color:#6a6a78}.choice-sheet__option--picked{border-color:var(--console-ink,#7ac6ff);background:color-mix(in srgb, var(--console-ink,#7ac6ff) 18%, #22232b);box-shadow:0 0 0 2px var(--console-ink,#7ac6ff)}.choice-sheet__confirm{border-radius:12px;width:100%;margin-top:.85rem;padding:.7rem;font-weight:800}.choice-sheet__confirm:disabled{opacity:.5}.image-answer__error{text-align:center;color:#ff8a8a;margin:0 0 .4rem;font-size:.85rem;font-weight:700}.image-answer__drop{border:2px dashed color-mix(in srgb, currentColor 45%, transparent);background:#0000002e;border-radius:14px;justify-content:center;align-items:center;min-height:150px;margin-bottom:.6rem;transition:border-color .15s,background .15s;display:flex}.image-answer__drop:hover{border-color:color-mix(in srgb, currentColor 70%, transparent)}.image-answer__hint{opacity:.75;justify-items:center;gap:.4rem;font-size:.85rem;font-weight:700;display:grid}.image-answer__preview{object-fit:contain;border-radius:10px;max-width:100%;max-height:220px}.image-answer__input{display:none}.image-answer__choose{color:inherit;cursor:pointer;background:0 0;border:2px solid;border-radius:12px;align-items:center;gap:.4rem;margin:0 auto .5rem;padding:.55rem 1.2rem;font-weight:800;display:flex}.image-answer__choose:disabled{opacity:.45}@media (width>=640px){.player-console{border:1px solid color-mix(in srgb, currentColor 30%, transparent);border-top-width:2px;border-radius:20px;max-width:60rem;margin-inline:auto;position:static}.hand-strip{flex-wrap:wrap;justify-content:center;gap:.7rem;padding-right:.3rem;overflow-x:visible}.hand-strip .playing-card{margin-left:0}.choice-sheet{border-radius:20px;max-width:34rem;margin:1rem auto 0;position:static}}.spectators{border:1px dashed color-mix(in srgb, currentColor 35%, transparent);border-radius:var(--r-md);background:color-mix(in srgb, currentColor 4%, transparent);max-width:24rem;padding:.85rem 1rem}.spectators__head{text-transform:uppercase;letter-spacing:.14em;align-items:center;gap:.4rem;margin:0;font-size:.8rem;display:flex}.spectators__count{opacity:.7;letter-spacing:0}.spectators__cta{justify-items:start;gap:.6rem;margin-top:.75rem;display:grid}.spectators__cta:first-child{margin-top:0}.spectators__note{opacity:.8;margin:0;font-size:.88rem;line-height:1.45}.spectators__cta button{padding:.5rem 1.1rem;font-size:.9rem}.spectators .player-roster__badge--spectator{color:inherit;opacity:.75}.game-screen{position:relative}.game-screen__conn{border:1px solid color-mix(in srgb, currentColor 30%, transparent);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.14em;opacity:.8;border-radius:999px;align-items:center;gap:.5rem;margin:0 0 .75rem;padding:.3rem .75rem;font-size:.78rem;display:inline-flex}.game-screen__conn:before{content:"";background:currentColor;border-radius:50%;width:.5rem;height:.5rem;animation:1s steps(2,end) infinite blink}.game-screen[data-game]{border-radius:var(--r-lg);isolation:isolate;margin-top:1.75rem;padding:clamp(1.25rem,3.5vw,2.75rem);overflow:hidden}.game-screen[data-game]>:not(.player-console):not(.game-over__backdrop){z-index:1;position:relative}.game-screen[data-game] section[aria-label]{margin-top:1.5rem}.game-screen[data-game]>section[aria-label]:first-of-type,.game-screen[data-game]>.judge-alert+section[aria-label],.game-screen[data-game]>.judge-waiting+section[aria-label]{margin-top:0}.game-screen[data-game] :where(.judge-board__head h2,.ek-header h2,.mythic-board>h2,.moonlit-board>header h2,.uno-header h2,.torchlight-board>header h2){margin:0;font-size:clamp(1.5rem,1.1rem + 1.6vw,2.25rem);line-height:1.05}.game-screen[data-game] :where(.ek-board,.mythic-board,.moonlit-board,.uno-board)>.phase-bar,.game-screen[data-game] :where(.ek-board,.mythic-board,.moonlit-board,.uno-board)>.table-feed{margin-top:.85rem}.game-screen[data-game] [aria-label=Available\ actions],.game-screen[data-game] [aria-label=Confirm\ action]{border-radius:var(--kit-radius);border:1px solid var(--kit-line);background:var(--kit-surface);flex-wrap:wrap;align-items:flex-start;gap:.6rem;padding:1rem 1.1rem;display:flex}.game-screen[data-game] [aria-label=Available\ actions] h2{letter-spacing:.12em;text-transform:uppercase;opacity:.8;flex-basis:100%;margin:0 0 .2rem;font-size:.8rem}.game-screen[data-game] [aria-label=Confirm\ action] p{flex-basis:100%;margin:0;font-weight:700}.game-screen[data-game] [aria-label=Available\ actions] fieldset{flex-wrap:wrap;flex-basis:100%;align-items:center;gap:.5rem;display:flex}.game-screen[data-game] dl{gap:.5rem;margin:1.25rem 0 0;display:grid}.game-screen[data-game] dt{font-size:.9rem;font-weight:700}.game-screen[data-game] dd{overflow-wrap:anywhere;margin:0}.game-screen[data-game] .game-screen__conn,.game-screen[data-game] p[role=alert]{font-family:var(--font-mono);font-size:.82rem}.game-screen:is([data-game=cards-against-humanity],[data-game=cards-against-humanity-images]){--console-ink:#fafafa;--kit-surface:#121212;--kit-line:#2c2c2c;--kit-strip-bg:#161616;--kit-strip-ink:#fafafa;--kit-accent:#fafafa;--kit-back:repeating-linear-gradient(45deg, #1b1b1b 0 6px, #111 6px 12px);--kit-dark:#161616;--kit-radius:12px;color:#fafafa;background:#0a0a0a;border:1px solid #262626;font-family:Helvetica Neue,Helvetica,Arial,sans-serif}.game-screen:is([data-game=cards-against-humanity],[data-game=cards-against-humanity-images]) :where(h2,h3,h4,p,li,dt,dd,legend){letter-spacing:-.02em;color:#fafafa;-webkit-text-fill-color:currentColor;background:0 0;font-family:inherit}.game-screen:is([data-game=cards-against-humanity],[data-game=cards-against-humanity-images]) .judge-board__head h2{text-transform:uppercase;letter-spacing:.01em;font-weight:800}.game-screen:is([data-game=cards-against-humanity],[data-game=cards-against-humanity-images]) .judge-board__meta p{color:#9a9a9a}.game-screen:is([data-game=cards-against-humanity],[data-game=cards-against-humanity-images]) .judge-prompt .playing-card--prompt{letter-spacing:-.02em;background:#111;border:1px solid #2e2e2e;padding-bottom:2.6rem;position:relative;box-shadow:0 24px 44px -22px #000,inset 0 1px #303030}.game-screen:is([data-game=cards-against-humanity],[data-game=cards-against-humanity-images]) .judge-prompt .playing-card--prompt:after{content:"Party Card Platform";color:#d0d0d0;font-size:.6rem;font-weight:700;position:absolute;bottom:.75rem;left:.8rem}.game-screen[data-game=cards-against-humanity] .judge-prompt img{filter:grayscale()contrast(1.05)}.game-screen:is([data-game=cards-against-humanity],[data-game=cards-against-humanity-images]) .judge-board .playing-card--response{transform:rotate(-1.2deg)}.game-screen:is([data-game=cards-against-humanity],[data-game=cards-against-humanity-images]) .judge-board .playing-card--response:nth-child(2n){transform:rotate(1.4deg)}.game-screen[data-game=cards-against-humanity-images] .judge-board .playing-card--response{background:#fafafa;border:6px solid #fafafa;border-radius:3px;box-shadow:0 16px 30px -16px #000,0 0 0 1px #262626}.game-screen[data-game=cards-against-humanity-images] .judge-board .playing-card--response .playing-card__art{border-radius:0}.game-screen[data-game=cards-against-humanity-images] .judge-board .playing-card--response .playing-card__footer{color:#6a6a6a}.game-screen:is([data-game=cards-against-humanity],[data-game=cards-against-humanity-images]) .judge-board__roster ul{padding:0;list-style:none}.game-screen[data-game=what-do-you-meme]{--console-ink:#ffe600;--kit-surface:#fff;--kit-line:#141414;--kit-strip-bg:#141414;--kit-strip-ink:#ffe600;--kit-accent:#141414;--kit-back:repeating-linear-gradient(-45deg, #ffe600 0 8px, #141414 8px 16px);--kit-dark:#141414;--kit-radius:6px;color:#141414;background:#f3f1ea;border:4px solid #141414}.game-screen[data-game=what-do-you-meme] :where(h2,h3,h4):where(:not(.game-over__title)){text-transform:uppercase;letter-spacing:.01em;color:#141414;-webkit-text-fill-color:#141414;background:0 0;font-family:Impact,Haettenschweiler,Franklin Gothic Bold,Arial Narrow Bold,sans-serif}.game-screen[data-game=what-do-you-meme] .judge-board__head h2{color:#141414;background:#ffe600;padding:.1rem .6rem;display:inline-block;transform:rotate(-1.5deg);box-shadow:4px 4px #141414}.game-screen[data-game=what-do-you-meme] .judge-board__meta p{color:#3a3a3a;opacity:1;font-weight:800}.game-screen[data-game=what-do-you-meme] .judge-prompt .playing-card--prompt{color:#fff;text-transform:uppercase;text-align:center;-webkit-text-fill-color:#fff;background:#141414;border:4px solid #141414;border-radius:4px;font-family:Impact,Haettenschweiler,Franklin Gothic Bold,sans-serif;box-shadow:8px 8px #141414}.game-screen[data-game=what-do-you-meme] .judge-prompt img{border:4px solid #141414;border-radius:0;box-shadow:6px 6px #141414}.game-screen[data-game=what-do-you-meme] .judge-prompt--image-only{flex:none}.game-screen[data-game=what-do-you-meme] .judge-prompt--image-only img{width:100%;max-width:clamp(280px,44vw,460px)}.game-screen[data-game=what-do-you-meme] .judge-board .playing-card--response{border:3px solid #141414;border-radius:4px;transform:rotate(-1.5deg);box-shadow:5px 5px #141414}.game-screen[data-game=what-do-you-meme] .judge-board .playing-card--response:nth-child(3n+2){transform:rotate(2deg)}.game-screen[data-game=what-do-you-meme] .judge-board .playing-card--response:nth-child(3n){transform:rotate(-.5deg)}.game-screen[data-game=what-do-you-meme] .judge-board .playing-card__footer{color:#9a7400;opacity:1;font-family:Impact,Haettenschweiler,sans-serif}.game-screen[data-game=what-do-you-meme] .judge-board__roster{--kit-line:#ffffff47;--kit-surface:#ffffff0f;--kit-accent:#ffe600;color:#f3f1ea;background:#141414;border:3px solid #141414;border-radius:4px;transform:rotate(.5deg);box-shadow:6px 6px #ffe600}.game-screen[data-game=what-do-you-meme] .judge-board__roster :where(h3){color:#ffe600;-webkit-text-fill-color:#ffe600}.game-screen[data-game=what-do-you-meme] .judge-board__roster ul{padding:0;list-style:none}.game-screen[data-game=what-do-you-meme] .judge-board__roster li{color:#f3f1ea}.game-screen[data-game=exploding-kittens]{--ek-ink:#1c140e;--ek-red:#e23b2e;--ek-yellow:#f4c430;--console-ink:var(--ek-yellow);--kit-surface:#fffaf0;--kit-line:var(--ek-ink);--kit-strip-bg:var(--ek-ink);--kit-strip-ink:var(--ek-yellow);--kit-accent:var(--ek-red);--kit-back:radial-gradient(circle at 50% 50%, var(--ek-yellow) 0 18%, transparent 19%), repeating-conic-gradient(from 0deg at 50% 50%, #e23b2e 0 15deg, #c42a1e 15deg 30deg);--kit-dark:var(--ek-ink);--kit-radius:8px;color:var(--ek-ink);border:3px solid var(--ek-ink);box-shadow:8px 8px 0 var(--ek-ink);background-color:#f6ecd4;background-image:radial-gradient(#1c140e24 1.4px,#0000 1.5px);background-size:12px 12px}.game-screen[data-game=exploding-kittens] :where(h2,h3,h4){letter-spacing:.03em;color:var(--ek-ink);-webkit-text-fill-color:var(--ek-ink);text-transform:uppercase;background:0 0;font-family:Bangers,Comic Sans MS,cursive;font-weight:400}.game-screen[data-game=exploding-kittens] .ek-header h2{text-shadow:3px 3px 0 var(--ek-yellow), 5px 5px 0 var(--ek-ink);font-size:clamp(1.9rem,1.3rem + 2.4vw,2.9rem);line-height:.95}.game-screen[data-game=exploding-kittens] .phase-bar{box-shadow:4px 4px 0 var(--ek-red);border-width:2px}.game-screen[data-game=exploding-kittens] .phase-bar__phase{letter-spacing:.05em;font-family:Bangers,Comic Sans MS,cursive;font-size:1.15rem;font-weight:400}.game-screen[data-game=exploding-kittens] .virtual-pile__stack{border:2px solid var(--ek-ink)}.game-screen[data-game=exploding-kittens] .card-chip{box-shadow:2px 2px 0 var(--ek-ink);border-width:2px}.ek-board{gap:1rem;display:grid}.ek-board>*{margin-top:0}.ek-table{justify-content:center;align-items:flex-start;gap:clamp(1.25rem,5vw,3rem);margin-top:.5rem;padding:1rem;display:flex}.ek-table .virtual-pile__stack{aspect-ratio:5/7;width:clamp(72px,16vw,96px);height:auto}.ek-player[data-eliminated=true]{animation:.4s ease-out ek-eliminate}@keyframes ek-eliminate{0%{transform:none}30%{transform:rotate(-3deg)translate(-3px)}60%{transform:rotate(3deg)translate(3px)}to{transform:none}}@media (prefers-reduced-motion:reduce){.ek-player[data-eliminated=true]{animation:none}}.ek-banner{border:2px solid var(--ek-ink);background:var(--ek-yellow);box-shadow:3px 3px 0 var(--ek-ink);text-align:center;border-radius:8px;margin:0;padding:.6rem 1rem;font-size:.92rem;font-weight:800}.ek-players{flex-wrap:wrap;gap:.6rem;margin:0;padding:.2rem 4px;list-style:none;display:flex}.ek-player{border:2px solid var(--ek-ink);min-width:7.5rem;box-shadow:3px 3px 0 var(--ek-ink);background:#fffaf0;border-radius:10px;flex-direction:column;flex:none;align-items:flex-start;gap:.2rem;padding:.55rem .85rem;font-size:.85rem;display:flex}.ek-player[data-active=true]{outline:3px solid var(--ek-red);outline-offset:2px;background:#fff3d6}.ek-player[data-eliminated=true]{opacity:.45;filter:grayscale(.8)}.ek-player__name{font-weight:800}.ek-player__count{font-family:var(--font-mono);opacity:.75;font-size:.72rem}.ek-player__status{text-transform:uppercase;letter-spacing:.03em;border:1.5px solid var(--ek-ink);background:var(--ek-yellow);border-radius:999px;padding:.1rem .45rem;font-size:.66rem;font-weight:800}.ek-revealed{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.ek-order{font-family:var(--font-mono);text-align:center;opacity:.75;margin:0;font-size:.75rem;font-weight:700}.game-screen[data-game=unstable-unicorns]{--uu-ink:#3f326b;--uu-accent:#9b6bff;--console-ink:#e7dcff;--kit-surface:#ffffff9e;--kit-line:#3f326b29;--kit-strip-bg:#ffffffc7;--kit-strip-ink:var(--uu-ink);--kit-accent:var(--uu-accent);--kit-back:linear-gradient(135deg, #ff9ecd, #b79cff 50%, #9ef0d0);--kit-dark:linear-gradient(160deg, #3f326b, #2a2150);--kit-radius:18px;color:var(--uu-ink);background:radial-gradient(90% 70% at 10% 0,#ff9ecd80,#0000 60%),radial-gradient(80% 70% at 95% 10%,#9ef0d080,#0000 60%),linear-gradient(135deg,#fbe6f6,#ece9ff 45%,#dcfbef);border:1px solid #fff}.game-screen[data-game=unstable-unicorns] :where(h2,h3,h4,h5){letter-spacing:0;color:var(--uu-ink);-webkit-text-fill-color:var(--uu-ink);background:0 0;font-family:Fredoka,"Baloo 2",system-ui,sans-serif;font-weight:600}.game-screen[data-game=unstable-unicorns] .phase-bar{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.game-screen[data-game=unstable-unicorns] .virtual-pile__stack{border-color:#ffffffe6}.game-screen[data-game=unstable-unicorns] .mythic-card-row{grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));align-items:start;gap:.6rem;display:grid}.mythic-banner{text-align:center;background:#ffffffb8;border:1px solid #9b6bff73;border-radius:14px;margin:.85rem 0 0;padding:.6rem 1rem;font-size:.9rem;font-weight:700;box-shadow:0 10px 24px -16px #9b6bffcc}.mythic-self,.mythic-other{border:1px solid var(--kit-line);border-radius:var(--kit-radius);background:var(--kit-surface);align-content:start;gap:.5rem 1rem;padding:.9rem 1rem 1rem;display:grid;box-shadow:0 12px 30px -24px #3f326b99}.mythic-self{margin-top:1.25rem}@media (width>=760px){.mythic-self{grid-template-columns:repeat(3,minmax(0,1fr))}.mythic-self>:where(h3,.mythic-pips){grid-column:1/-1}}.mythic-self[data-active=true],.mythic-other[data-active=true]{outline:3px solid var(--uu-accent);outline-offset:2px}.mythic-self h3{margin:0;font-size:1.15rem}.mythic-self section h4,.mythic-other section h4{margin:0 0 .4rem;font-size:.95rem}.mythic-self section>p,.mythic-other section>p{opacity:.6;margin:0;font-size:.85rem;font-style:italic}.mythic-others{grid-template-columns:repeat(auto-fill,minmax(min(100%,16rem),1fr));gap:.75rem;padding:.8rem 0 .2rem;display:grid}.mythic-other{font-size:.85rem}.mythic-other h4{margin:0 0 .2rem}.game-screen[data-game=unstable-unicorns] .mythic-stack:empty{display:none}.game-screen[data-game=unstable-unicorns] .mythic-piles{flex-wrap:wrap;justify-content:center;gap:clamp(1rem,4vw,2rem);margin:1rem 0 .5rem;display:flex}.game-screen[data-game=unstable-unicorns] .mythic-pips{align-items:center;gap:.3rem;margin:.1rem 0;display:flex}.game-screen[data-game=unstable-unicorns] .mythic-pip{border:1.5px solid var(--uu-ink);background:0 0;border-radius:999px;width:12px;height:12px}.game-screen[data-game=unstable-unicorns] .mythic-pip[data-filled=true]{background:var(--uu-accent);border-color:var(--uu-accent)}.game-screen[data-game=unstable-unicorns] .mythic-togo{color:#b3398d;margin-left:.4rem;font-size:.75rem;font-weight:800}.game-screen[data-game=unstable-unicorns] details.mythic-other summary{cursor:pointer;align-items:center;min-height:44px;font-weight:600;list-style:none;display:flex}.game-screen[data-game=unstable-unicorns] details.mythic-other summary::-webkit-details-marker{display:none}.game-screen[data-game=unstable-unicorns] details.mythic-other summary:after{content:"▸";margin-left:auto;padding-left:.4rem}.game-screen[data-game=unstable-unicorns] details.mythic-other[open] summary:after{content:"▾"}@media (width>=640px){.game-screen[data-game=unstable-unicorns] details.mythic-other summary:after{display:none}}.game-screen[data-game=unstable-unicorns] .card-chip{color:#3f326b;border-radius:var(--r-md);white-space:normal;text-align:left;background:linear-gradient(120deg,#ff9ecd,#b79cff,#9ef0d0) 0 0/200% 200%;border:1px solid #ffffffb3;align-items:flex-start;height:auto;min-height:44px;padding:.5rem .75rem;font-family:Fredoka,system-ui,sans-serif;font-weight:600;line-height:1.25;box-shadow:0 8px 20px -10px #b79cffe6}.game-screen[data-game=unstable-unicorns] .card-chip .card-chip__label{white-space:normal;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.game-screen[data-game=unstable-unicorns] .card-chip:not(:disabled):hover{background-position:100%;transform:translateY(-2px)}.game-screen[data-game=warewolf]{--wolf-silver:#dbe4f7;--wolf-blood:#c23b43;--console-ink:var(--wolf-silver);--kit-surface:#080c188c;--kit-line:#9fb8e63d;--kit-strip-bg:#080c18b8;--kit-strip-ink:var(--wolf-silver);--kit-accent:#9fb8e6;--kit-back:repeating-linear-gradient(45deg, #121a30 0 6px, #0c1224 6px 12px);--kit-dark:linear-gradient(180deg, #151d33, #0b1020);--kit-radius:12px;color:#c5d0e6;background-color:#0000;background-image:radial-gradient(circle at calc(100% - 4.5rem) 3rem,#f6f8ff 0 1.9rem,#dce6ff59 1.9rem 2.5rem,#0000 4.5rem),radial-gradient(140% 90% at 80% -5%,#9fb8e629,#0000 55%),radial-gradient(120% 120% at 10% 110%,#7864b424,#0000 55%),linear-gradient(#0c1424,#080c18);background-position:0 0,0 0,0 0,0 0;background-repeat:repeat,repeat,repeat,repeat;background-size:auto,auto,auto,auto;background-attachment:local;background-origin:padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box;border:1px solid #9fb8e638}@media (width<=640px){.game-screen[data-game=warewolf]{background-image:radial-gradient(140% 90% at 80% -5%,#9fb8e629,#0000 55%),radial-gradient(120% 120% at 10% 110%,#7864b424,#0000 55%),linear-gradient(#0c1424,#080c18)}}.game-screen[data-game=warewolf] :where(h2,h3){letter-spacing:.04em;color:var(--wolf-silver);-webkit-text-fill-color:var(--wolf-silver);text-shadow:0 0 18px #9fb8e659;background:0 0;font-family:Cinzel,Georgia,serif;font-weight:700}.game-screen[data-game=warewolf] .moonlit-board{gap:0;display:grid}.game-screen[data-game=warewolf] .moonlit-board>header{justify-content:space-between;align-items:center;gap:1rem;min-height:3rem;padding-right:6rem;display:flex}.game-screen[data-game=warewolf] .moonlit-board header p{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.16em;color:#8fa0c4;font-size:.8rem}.game-screen[data-game=warewolf] .moonlit-grid{grid-template-columns:repeat(auto-fill,minmax(min(11rem,100%),1fr));gap:.75rem;margin-top:1.5rem;display:grid}.game-screen[data-game=warewolf] .moonlit-grid article{border-radius:var(--kit-radius);background:linear-gradient(#9fb8e621,#9fb8e608);border:1px solid #9fb8e647;padding:.9rem 1rem;box-shadow:inset 0 0 22px -8px #9fb8e680}.game-screen[data-game=warewolf] .moonlit-grid article h3{text-shadow:none;margin:0;font-size:1.05rem}.game-screen[data-game=warewolf] .moonlit-grid article p{color:#9db0d4;margin:.35rem 0 0;font-size:.8rem}.game-screen[data-game=warewolf] .moonlit-grid .eliminated{filter:grayscale();opacity:.5;background:#c23b4314;border-color:#c23b438c;position:relative}.game-screen[data-game=warewolf] .moonlit-grid .eliminated:after{content:"†";color:var(--wolf-blood);font-size:1.1rem;position:absolute;top:.5rem;right:.7rem}.game-screen[data-game=warewolf] .moonlit-grid article.selectable{cursor:pointer;border-color:var(--wolf-silver);transition:transform .12s,box-shadow .2s,border-color .2s;box-shadow:0 0 0 1px #dbe4f759}.game-screen[data-game=warewolf] .moonlit-grid article.selectable:hover{transform:translateY(-2px);box-shadow:0 0 0 1px #dbe4f78c,0 12px 24px -14px #9fb8e6cc}.game-screen[data-game=warewolf] .moonlit-grid article.selectable:focus-visible{outline:2px solid var(--wolf-silver);outline-offset:2px}.game-screen[data-game=warewolf] .moonlit-grid article.selectable.selected{border-color:var(--wolf-silver);box-shadow:0 0 0 2px var(--wolf-silver), 0 0 24px -6px #dbe4f7b3 inset;background:linear-gradient(#dbe4f73d,#9fb8e614)}.game-screen[data-game=warewolf] .moonlit-confirm{z-index:4;border-radius:var(--kit-radius);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#080c18e6;border:1px solid #9fb8e666;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.25rem;padding:.75rem .85rem .75rem 1.1rem;display:flex;position:sticky;bottom:.75rem;box-shadow:0 16px 36px -18px #000000e6}.game-screen[data-game=warewolf] .moonlit-confirm p{letter-spacing:.02em;color:var(--wolf-silver);margin:0;font-weight:700}.game-screen[data-game=warewolf] .moonlit-result{border-radius:var(--kit-radius);color:#f0cdd0;background:#c23b431a;border:1px solid #c23b4366;margin:1.25rem 0 0;padding:.9rem 1.1rem}.game-screen[data-game=warewolf] .moonlit-role{border-radius:var(--kit-radius);background:#080c18a6;border:1px solid #9fb8e659;align-items:flex-start;gap:1rem;margin:1.25rem 0 0;padding:1rem 1.1rem;display:flex}.game-screen[data-game=warewolf] .moonlit-role img{border-radius:10px;flex-shrink:0;width:clamp(72px,18vw,120px);box-shadow:0 12px 24px -12px #000000e6}.game-screen[data-game=warewolf] .moonlit-role h3{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.14em;color:#8fa0c4;-webkit-text-fill-color:#8fa0c4;text-shadow:none;margin:0 0 .4rem;font-size:.75rem}.game-screen[data-game=warewolf] .moonlit-role p{color:#d7e0f2;margin:.25rem 0}.game-screen[data-game=warewolf] .moonlit-role p strong{color:var(--wolf-silver);font-family:Cinzel,Georgia,serif;font-size:1.15rem}.game-screen[data-game=warewolf] .moonlit-role summary{cursor:pointer;color:#9db0d4;align-items:center;min-height:32px;font-weight:600;display:inline-flex}.game-screen[data-game=warewolf] .moonlit-role__art--flip{animation:.6s ease-out moonlit-flip}@keyframes moonlit-flip{0%{opacity:0;transform:rotateY(90deg)}to{opacity:1;transform:rotateY(0)}}@media (prefers-reduced-motion:reduce){.game-screen[data-game=warewolf] .moonlit-role__art--flip{animation:none}}.game-screen[data-game=warewolf] .moonlit-ghost{border-radius:var(--kit-radius);color:#9db0d4;background:#080c1899;border:1px solid #9fb8e64d;margin:1rem 0 0;padding:.75rem 1rem;font-style:italic}.game-screen[data-game=warewolf] .moonlit-roles,.game-screen[data-game=warewolf] .moonlit-dawn-report,.game-screen[data-game=warewolf] .moonlit-final-roles,.game-screen[data-game=warewolf] [aria-label=Revealed\ deaths],.game-screen[data-game=warewolf] [aria-label=Dawn\ clues]{border-radius:var(--kit-radius);border:1px solid var(--kit-line);background:var(--kit-surface);margin:1.25rem 0 0;padding:1rem 1.1rem}.game-screen[data-game=warewolf] :where(.moonlit-roles,.moonlit-dawn-report,.moonlit-final-roles,[aria-label=Revealed\ deaths],[aria-label=Dawn\ clues]) h3{margin:0 0 .5rem;font-size:1.05rem}.game-screen[data-game=warewolf] .moonlit-roles__chips{flex-wrap:wrap;gap:.5rem;display:flex}.game-screen[data-game=warewolf] .card-chip{letter-spacing:.03em;color:var(--wolf-silver);font-family:Cinzel,Georgia,serif}.game-screen[data-game=warewolf] .moonlit-board ul{margin:0;padding-inline-start:1.25rem}.game-screen[data-game=warewolf] .moonlit-board li{margin:.25rem 0}.game-screen[data-game=warewolf] .moonlit-board :where(h3,p,li){overflow-wrap:anywhere}@media (width<=520px){.game-screen[data-game=warewolf] .moonlit-board>header{padding-right:0}.game-screen[data-game=warewolf] .moonlit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.game-screen:is([data-game=cards-against-humanity],[data-game=cards-against-humanity-images]) button:not(:where(.audio-controls__button,.playing-card,.card-chip,.table-feed__toggle,.icon-btn,.choice-sheet__option,.card-inspect__close)){color:#0a0a0a;box-shadow:none;background:#fafafa;border-radius:10px;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-weight:700}.game-screen:is([data-game=cards-against-humanity],[data-game=cards-against-humanity-images]) button:not(:where(.audio-controls__button,.playing-card,.card-chip,.table-feed__toggle,.icon-btn,.choice-sheet__option,.card-inspect__close)):not(:disabled):hover{color:#fafafa;filter:none;background:#0a0a0a;box-shadow:inset 0 0 0 1px #fafafa}.game-screen[data-game=what-do-you-meme] button:not(:where(.audio-controls__button,.playing-card,.card-chip,.table-feed__toggle,.icon-btn,.choice-sheet__option,.card-inspect__close)){color:#141414;text-transform:uppercase;letter-spacing:.04em;background:#ffe600;border-radius:4px;font-family:Impact,Haettenschweiler,sans-serif;font-weight:400;box-shadow:4px 4px #141414}.game-screen[data-game=what-do-you-meme] button:not(:where(.audio-controls__button,.playing-card,.card-chip,.table-feed__toggle,.icon-btn,.choice-sheet__option,.card-inspect__close)):not(:disabled):hover{filter:none;transform:translate(-2px,-2px);box-shadow:6px 6px #141414}.game-screen[data-game=exploding-kittens] button:not(:where(.audio-controls__button,.playing-card,.card-chip,.table-feed__toggle,.icon-btn,.choice-sheet__option,.card-inspect__close)){background:var(--ek-red);color:#fff;border:2px solid var(--ek-ink);box-shadow:3px 3px 0 var(--ek-ink);letter-spacing:.05em;border-radius:8px;font-family:Bangers,cursive;font-size:1.15rem;font-weight:400}.game-screen[data-game=exploding-kittens] button:not(:where(.audio-controls__button,.playing-card,.card-chip,.table-feed__toggle,.icon-btn,.choice-sheet__option,.card-inspect__close)):not(:disabled):hover{box-shadow:4px 4px 0 var(--ek-ink);filter:none;transform:translate(-1px,-1px)}.game-screen[data-game=unstable-unicorns] button:not(:where(.audio-controls__button,.playing-card,.card-chip,.table-feed__toggle,.icon-btn,.choice-sheet__option,.card-inspect__close)){color:#3f326b;border-radius:var(--r-pill);background:linear-gradient(120deg,#ff9ecd,#b79cff,#9ef0d0) 0 0/200% 200%;font-family:Fredoka,system-ui,sans-serif;font-weight:600;box-shadow:inset 0 1px #fff9,0 8px 20px -10px #b79cffe6}.game-screen[data-game=unstable-unicorns] button:not(:where(.audio-controls__button,.playing-card,.card-chip,.table-feed__toggle,.icon-btn,.choice-sheet__option,.card-inspect__close)):not(:disabled):hover{filter:none;background-position:100%;transform:translateY(-2px)}.game-screen[data-game=warewolf] button:not(:where(.audio-controls__button,.playing-card,.card-chip,.table-feed__toggle,.icon-btn,.choice-sheet__option,.card-inspect__close)){color:var(--wolf-silver);letter-spacing:.04em;background:#9fb8e629;border:1px solid #9fb8e680;border-radius:10px;font-family:Cinzel,Georgia,serif;font-weight:700;box-shadow:0 0 18px -6px #9fb8e680}.game-screen[data-game=warewolf] button:not(:where(.audio-controls__button,.playing-card,.card-chip,.table-feed__toggle,.icon-btn,.choice-sheet__option,.card-inspect__close)):not(:disabled):hover{filter:none;background:#9fb8e647;box-shadow:0 0 26px -4px #9fb8e6b3}.game-screen[data-game=uno] button:not(:where(.audio-controls__button,.playing-card,.card-chip,.table-feed__toggle,.icon-btn,.choice-sheet__option,.card-inspect__close)){background:var(--uno-red);color:#fff;border-radius:var(--r-pill);font-family:var(--font-display);border:2px solid #ffffffd9;font-weight:800;box-shadow:0 8px 22px -10px #e2453df2}.game-screen[data-game=uno] button:not(:where(.audio-controls__button,.playing-card,.card-chip,.table-feed__toggle,.icon-btn,.choice-sheet__option,.card-inspect__close)):not(:disabled):hover{background:var(--uno-yellow);color:#16161a;filter:none;box-shadow:0 10px 28px -8px #f3b01cf2}.game-screen:is([data-game=cards-against-humanity],[data-game=cards-against-humanity-images]) :focus-visible{outline-offset:2px;outline:3px solid #fafafa}.game-screen[data-game=what-do-you-meme] :focus-visible,.game-screen[data-game=exploding-kittens] :focus-visible,.game-screen[data-game=unstable-unicorns] :focus-visible{outline-offset:2px;outline:3px solid #141414}.game-screen[data-game] :where(.player-console,.choice-sheet) :focus-visible{outline-color:var(--console-ink,#f2f2f2)}.game-screen[data-game] .countdown-pill{background:color-mix(in srgb, currentColor 12%, transparent);color:inherit;border-color:color-mix(in srgb, currentColor 55%, transparent)}.game-screen[data-game] .countdown-pill--urgent{color:#fff;background:#d6453d;border-color:#d6453d}.game-screen[data-game] fieldset{border:1px solid color-mix(in srgb, currentColor 35%, transparent);border-radius:var(--r-sm);margin-top:.25rem;padding:.75rem}.game-screen[data-game] label{color:inherit;opacity:.85}.game-screen[data-game] legend{padding:0 .4rem;font-weight:700}.game-over__backdrop{z-index:70;background:color-mix(in srgb, var(--ink) 80%, transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);place-content:center;padding:1.5rem;animation:.25s ease-out fade-in;display:grid;position:fixed;inset:0}.game-over{border-radius:var(--r-lg);text-align:center;background:linear-gradient(180deg, var(--surface-2), var(--surface));width:min(92vw,32rem);max-height:calc(100dvh - 3rem);color:var(--paper);padding:clamp(1.5rem,4vw,2.25rem);animation:.45s cubic-bezier(.34,1.56,.64,1) game-over-in;position:relative;overflow-y:auto;box-shadow:0 30px 70px -24px #000000b3}@keyframes game-over-in{0%{opacity:0;transform:translateY(16px)scale(.94)}to{opacity:1;transform:none}}.game-over__medal{color:#3b2a00;background:radial-gradient(circle at 35% 30%,#fff3b0,#f5c542 55%,#c9901a);border-radius:50%;place-items:center;width:3.75rem;height:3.75rem;margin:0 auto .75rem;display:inline-grid;box-shadow:0 0 0 5px #f5c54240,0 14px 30px -12px #f5c542cc}.game-over__eyebrow{text-transform:uppercase;letter-spacing:.16em;opacity:.7;margin:0;font-size:.74rem;font-weight:700}.game-over__title{margin:.35rem 0 1.25rem;font-size:clamp(1.6rem,5vw,2.3rem);font-weight:800;line-height:1.1}.game-over__actions{flex-wrap:wrap;justify-content:center;gap:.6rem;display:flex}.game-over__actions>button{white-space:nowrap;flex:11rem}.game-over__details{text-align:left;flex-basis:100%;max-height:40vh;margin-bottom:.6rem;overflow-y:auto}.game-over__details h3{text-transform:uppercase;letter-spacing:.12em;opacity:.75;margin:0 0 .5rem;font-size:.8rem}.game-over__details ul{margin:0;padding-inline-start:1.1rem}.game-over__scores{counter-reset:rank;gap:.3rem;margin:0;padding:0;list-style:none;display:grid}.game-over__scores li{counter-increment:rank;background:color-mix(in srgb, currentColor 8%, transparent);border-radius:10px;align-items:center;gap:.6rem;padding:.4rem .7rem;display:flex}.game-over__scores li:before{content:counter(rank);opacity:.6;min-width:1.2rem;font-weight:800}.game-over__scores li span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.game-over__scores li:first-child{background:#f5c54238}.game-over__hint{opacity:.75;flex-basis:100%;margin:.3rem 0 0;font-size:.85rem}.game-screen[data-game] .game-over :where(h2,h3){color:inherit;-webkit-text-fill-color:currentColor;text-shadow:none}.immersive__quit{white-space:nowrap;appearance:none;cursor:pointer;min-height:40px;font-family:var(--font-display);border-radius:var(--r-pill);border:1.5px solid color-mix(in srgb, currentColor 70%, transparent);box-shadow:none;color:var(--paper);background:0 0;align-items:center;gap:.4rem;padding:.45rem 1rem .45rem .8rem;font-size:.88rem;font-weight:700;transition:background .15s;display:inline-flex}.immersive__quit:hover{background:color-mix(in srgb, currentColor 14%, transparent)}.immersive[data-game=what-do-you-meme] .immersive__quit{color:#ffe600}.immersive[data-game=exploding-kittens] .immersive__quit{color:#f4c430}.immersive[data-game=warewolf] .immersive__quit{color:#dbe4f7}.immersive[data-game=uno] .immersive__quit{color:#f3b01c}@media (width<=420px){.immersive__quit span{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.immersive__quit{border-radius:var(--r-sm);justify-content:center;width:40px;padding:0}}.immersive__bar{color:var(--paper)}.game-screen:is([data-game=cards-against-humanity],[data-game=cards-against-humanity-images]) .game-over{background:#111;border:1px solid #2e2e2e}.game-screen[data-game=what-do-you-meme] .game-over{color:#ffe600;background:#141414;border:4px solid #ffe600;border-radius:6px;box-shadow:10px 10px #ffe600}.game-screen[data-game=exploding-kittens] .game-over{background:var(--ek-yellow);color:var(--ek-ink);border:3px solid var(--ek-ink);box-shadow:6px 6px 0 var(--ek-ink);border-radius:10px}.game-screen[data-game=exploding-kittens] .game-over__medal{box-shadow:0 0 0 3px var(--ek-ink), 4px 4px 0 3px var(--ek-ink)}.game-screen[data-game=unstable-unicorns] .game-over{color:var(--uu-ink);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffdb;border:1px solid #ffffffe6}.game-screen[data-game=warewolf] .game-over{color:#dbe4f7;background:linear-gradient(#151d33,#0b1020);border:1px solid #9fb8e666}.game-screen[data-game=uno] .game-over{border:3px solid var(--uno-yellow);background:linear-gradient(#1a1a20,#101014)}.judge-alert[role=alert]{z-index:5;border-radius:var(--r-md);text-align:center;color:var(--paper);background:linear-gradient(90deg, color-mix(in srgb, var(--gold) 55%, #0a0a0a), color-mix(in srgb, var(--halo) 55%, #0a0a0a));border:1px solid var(--line-strong);flex-wrap:wrap;justify-content:center;align-items:center;gap:.2rem .75rem;margin:0 0 1.25rem;padding:.8rem 1.25rem;animation:.35s cubic-bezier(.34,1.56,.64,1) banner-in;display:flex;position:relative;box-shadow:0 14px 30px -20px #000000e6}.judge-alert__title{margin:0;font-size:clamp(1.05rem,2.6vw,1.35rem);font-weight:800}.judge-alert__hint{opacity:.8;margin:0;font-size:.85rem}.judge-waiting{border:1px solid color-mix(in srgb, currentColor 30%, transparent);text-align:center;border-radius:999px;width:max-content;max-width:100%;margin:0 auto 1rem;padding:.45rem 1rem;font-size:.9rem;font-weight:600}.game-screen[data-game=uno]{--uno-red:#e2453d;--uno-yellow:#f3b01c;--console-ink:var(--paper);--kit-surface:#ffffff0d;--kit-line:#ffffff24;--kit-strip-bg:#061013b8;--kit-strip-ink:var(--paper);--kit-accent:var(--uno-yellow);--kit-back:radial-gradient(ellipse 46% 24% at 50% 50%, #e2453d 0 86%, #f4f4f4 88% 96%, transparent 98%) #141418;--kit-radius:16px;background:radial-gradient(120% 70% at 50% -10%,#7a1f168c,#0000 60%),linear-gradient(#12323b,#08161a)}.game-screen[data-game=uno] :where(h2,h3,h4){font-family:var(--font-display);letter-spacing:-.01em;font-weight:800}.uno-callout{z-index:5;text-align:center;border-radius:var(--r-md);pointer-events:auto;background:radial-gradient(60% 120% at 50% 50%, #e2453d59, transparent 70%), color-mix(in srgb, var(--ink) 88%, transparent);border:1px solid var(--line-strong);cursor:pointer;place-content:center;margin:0;padding:.6rem 1.25rem;animation:.25s ease-out uno-callout-pop;display:grid;position:relative}.uno-callout__title{letter-spacing:.02em;color:#ffe600;text-shadow:0 0 24px #e2453dcc,0 4px #00000059;margin:0;font-size:clamp(1.4rem,4vw,2.5rem);font-weight:900}@keyframes uno-callout-pop{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}.uno-board{gap:1rem;display:grid}.uno-board>*{margin-top:0}.uno-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.uno-status{flex-wrap:wrap;gap:.5rem;display:flex}.uno-chip{border:1px solid var(--line-strong);border-radius:var(--r-pill);background:#ffffff0a;align-items:center;gap:.4rem;padding:.35rem .8rem;font-size:.88rem;font-weight:700;display:inline-flex}.uno-chip--color{text-transform:capitalize;box-shadow:0 0 0 2px var(--halo,transparent), 0 0 18px -2px var(--halo,transparent)}.uno-chip--color:before{content:"";background:var(--halo,transparent);border:1px solid #ffffff80;border-radius:50%;width:.7rem;height:.7rem}.uno-table{justify-content:center;align-items:center;gap:clamp(1.25rem,5vw,2.5rem);padding:.75rem 0;display:flex}.uno-table .virtual-pile__stack{aspect-ratio:56/78;border-radius:12px;width:clamp(88px,24vw,132px);height:auto}.uno-table [data-anchor=discard] .virtual-pile__stack{background:var(--surface-2);box-shadow:0 0 0 3px var(--halo,transparent), 0 0 28px -4px var(--halo,transparent);position:relative}.uno-players{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.uno-player{border:1px solid var(--line-strong);border-radius:var(--r-pill);background:#ffffff0a;align-items:center;gap:.5rem;min-height:40px;padding:.35rem .85rem;display:flex}.uno-player[data-active=true]{outline:2px solid var(--uno-yellow);outline-offset:2px;background:#f3b01c1a}.uno-player__name{font-weight:700}.uno-player__count{font-family:var(--font-mono);color:var(--muted);font-size:.8rem}@media (width<=520px){.uno-table{gap:1rem}.uno-header{gap:.5rem}}.game-screen[data-game=torchlight-table]{--torchlight-sand:#e8dcc7;--torchlight-oat:#d4b895;--torchlight-sage:#8b9d83;--torchlight-terracotta:#c66b3d;--torchlight-ochre:#c08e3a;--torchlight-moss:#606c38;--torchlight-ink:#332b22;--console-ink:var(--torchlight-sand);--kit-surface:#e8dcc785;--kit-line:#606c386b;--kit-strip-bg:color-mix(in srgb, var(--torchlight-ochre) 22%, transparent);--kit-strip-ink:var(--torchlight-ink);--kit-accent:var(--torchlight-terracotta);--kit-dark:linear-gradient(180deg, #3d342a, var(--torchlight-ink));--kit-radius:16px;color:var(--torchlight-ink);border:1px solid color-mix(in srgb, var(--torchlight-moss) 48%, transparent);background:radial-gradient(circle at 50% 38%, color-mix(in srgb, var(--torchlight-ochre) 28%, transparent), transparent 43%), linear-gradient(145deg, var(--torchlight-sand), var(--torchlight-oat));font-family:Fraunces,Georgia,serif}.game-screen[data-game=torchlight-table]:before{content:"";pointer-events:none;opacity:.035;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cfilter id='grain'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23grain)' opacity='.55'/%3E%3C/svg%3E");position:absolute;inset:0}.game-screen[data-game=torchlight-table] :where(h2,h3,h4,p,li,dt,dd,legend){color:var(--torchlight-ink)}.game-screen[data-game=torchlight-table] :where(h2,h3,h4){font-family:Fraunces,Georgia,serif;font-weight:700}.game-screen[data-game=torchlight-table] .torchlight-board{background:radial-gradient(circle at 50% 42%,#ffd68457,#0000 43%),#e8dcc76b;border-radius:24px;padding:clamp(.85rem,2.2vw,1.5rem);box-shadow:inset 0 0 0 1px #606c3847,0 0 44px 8px #c08e3a52}.game-screen[data-game=torchlight-table] .torchlight-board>div>div:first-child{background:#332b22d6;box-shadow:0 0 0 2px #c08e3a61,0 0 34px 7px #c08e3a57;border-color:#606c387a!important}.game-screen[data-game=torchlight-table] .torchlight-board>div>aside>section,.game-screen[data-game=torchlight-table] .torchlight-board>section{background:#e8dcc785;border-color:#606c386b!important;border-radius:16px!important}.game-screen[data-game=torchlight-table] .torchlight-board .phase-bar{box-shadow:0 0 20px -5px var(--torchlight-ochre);border-radius:999px;margin:0}.game-screen[data-game=torchlight-table] .torchlight-board .card-chip{border:1px solid var(--torchlight-moss);background:var(--torchlight-terracotta);color:var(--torchlight-sand);border-radius:12px}.game-screen[data-game=torchlight-table] .torchlight-board .card-chip:hover,.game-screen[data-game=torchlight-table] .torchlight-board .card-chip:focus-visible{background:var(--torchlight-ochre);color:var(--torchlight-ink)}.game-screen[data-game=torchlight-table] .torchlight-board .torchlight-tile.reachable{filter:drop-shadow(0 0 5px #c08e3ab8)}.game-screen[data-game=torchlight-table] .torchlight-board .torchlight-tile.cursor{filter:drop-shadow(0 0 9px #c66b3de6)}.game-screen[data-game=torchlight-table] .torchlight-board button:not(:where(.card-chip,.table-feed__toggle,.icon-btn)),.game-screen[data-game=torchlight-table] [aria-label=Available\ actions] button{border:1px solid var(--torchlight-moss);background:var(--torchlight-terracotta);color:var(--torchlight-sand);box-shadow:0 5px 14px -8px var(--torchlight-ink);border-radius:12px;font-family:inherit;font-weight:700}.game-screen[data-game=torchlight-table] .torchlight-board button:not(:where(.card-chip,.table-feed__toggle,.icon-btn)):not(:disabled):hover,.game-screen[data-game=torchlight-table] [aria-label=Available\ actions] button:not(:disabled):hover{background:var(--torchlight-ochre);color:var(--torchlight-ink);filter:none}.game-screen[data-game=torchlight-table] .player-console{border-top-color:color-mix(in srgb, var(--torchlight-ochre) 76%, transparent);background:color-mix(in srgb, var(--torchlight-ink) 94%, transparent);box-shadow:0 0 28px -6px #c08e3acc}.game-screen[data-game=torchlight-table] .player-console .action-chip{border-color:var(--torchlight-oat);background:color-mix(in srgb, var(--torchlight-terracotta) 72%, transparent)}.game-screen[data-game=torchlight-table] .player-console .action-chip:not(:disabled):hover{background:var(--torchlight-ochre);color:var(--torchlight-ink)}.game-screen[data-game=torchlight-table] :focus-visible{outline:3px solid var(--torchlight-terracotta);outline-offset:3px}@media (width<=640px){.game-screen[data-game=torchlight-table] .torchlight-board>div:not(.phase-bar){grid-template-columns:1fr!important}}.immersive[data-game=torchlight-table] .immersive__quit{color:var(--torchlight-sand)}.game-screen[data-game=torchlight-table] .game-over{background:var(--torchlight-sand);border:2px solid var(--torchlight-moss);color:var(--torchlight-ink)}.update-toast{left:50%;bottom:calc(1.25rem + env(safe-area-inset-bottom,0px));z-index:90;background:color-mix(in srgb, var(--surface-2,#14363f) 94%, transparent);width:max-content;max-width:calc(100vw - 2rem);color:var(--paper,#eef5f5);border:1px solid var(--line-strong,#ffffff29);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:18px;align-items:center;gap:.6rem;padding:.45rem .45rem .45rem 1rem;font-size:.9rem;animation:.32s cubic-bezier(.2,.8,.2,1) toast-in;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 18px 40px -16px #000c}.update-toast__icon{color:var(--halo-text,#6cc3d5)}.update-toast__text{font-weight:600;line-height:1.35}.update-toast__refresh{appearance:none;cursor:pointer;min-height:36px;font:inherit;background:linear-gradient(180deg, var(--accent,#82d4e4), var(--accent-2,#4aaabe));color:var(--on-accent,#04161b);border:none;border-radius:999px;flex:none;align-items:center;gap:.35rem;padding:.35rem .9rem;font-weight:700;display:inline-flex}.update-toast__refresh:hover{filter:brightness(1.06)}.update-toast__dismiss{width:2.25rem;height:2.25rem}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}.audio-controls{color:var(--paper,#eef5f5);gap:.4rem;display:grid}.audio-controls__button{appearance:none;width:100%;min-height:44px;font:inherit;text-align:left;color:inherit;border:1px solid var(--line,#ffffff14);border-radius:var(--r-sm,12px);cursor:pointer;background:#ffffff0a;align-items:center;gap:.7rem;margin:0;padding:.5rem .75rem;font-size:.95rem;font-weight:600;transition:background .15s,border-color .15s;display:flex}.audio-controls__button:hover{border-color:var(--line-strong,#ffffff29);background:#ffffff14}.audio-controls__button .icon{color:var(--halo-text,#6cc3d5)}.audio-controls__label{flex:1}.audio-controls__switch{background:#ffffff29;border:1px solid #ffffff38;border-radius:999px;flex:none;width:2.5rem;height:1.45rem;transition:background .15s,border-color .15s;position:relative}.audio-controls__switch:after{content:"";background:#fff;border-radius:50%;width:1.1rem;height:1.1rem;transition:transform .2s cubic-bezier(.34,1.56,.64,1);position:absolute;top:2px;left:2px;box-shadow:0 2px 5px #00000059}.audio-controls__button[aria-pressed=true] .audio-controls__switch{background:var(--volt,#9cbd2b);border-color:var(--volt,#9cbd2b)}.audio-controls__button[aria-pressed=true] .audio-controls__switch:after{transform:translate(1.05rem)}.audio-controls__button[aria-pressed=false] .icon{color:var(--muted,#93adb5)}.audio-controls__volume{border-radius:var(--r-sm,12px);border:1px solid var(--line,#ffffff14);color:var(--paper,#eef5f5);background:#ffffff0a;gap:.35rem;margin:.3rem 0 0;padding:.55rem .75rem .65rem;font-size:.9rem;font-weight:600;display:grid}.audio-controls__volume-head{justify-content:space-between;display:flex}.audio-controls__value{font-family:var(--font-mono,monospace);color:var(--muted,#93adb5);font-size:.8rem}.audio-controls__volume input{width:100%;accent-color:var(--halo-text,#6cc3d5);margin:0}.audio-controls__volume input:disabled{opacity:.45}.chat-bubble{right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:40;background:linear-gradient(180deg, var(--accent,#82d4e4), var(--accent-2,#4aaabe));width:52px;height:52px;color:var(--on-accent,#04161b);cursor:pointer;border:1px solid #ffffff47;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:transform .15s,box-shadow .15s;display:flex;position:fixed;box-shadow:inset 0 1px #ffffff73,0 12px 28px -10px #000c,0 0 0 4px #6cc3d51f}.chat-bubble:hover{transform:translateY(-2px);box-shadow:inset 0 1px #ffffff80,0 16px 32px -10px #000000d9,0 0 0 5px #6cc3d533}.chat-bubble:active{transform:scale(.95)}.chat-bubble__badge{background:var(--danger,#ff6b6b);color:#fff;border:2px solid var(--ink,#071418);box-sizing:border-box;text-align:center;border-radius:10px;min-width:20px;height:20px;padding:0 5px;font-size:11px;font-weight:700;line-height:16px;animation:.3s cubic-bezier(.34,1.56,.64,1) chat-badge-pop;position:absolute;top:-4px;right:-4px}@keyframes chat-badge-pop{0%{transform:scale(.4)}to{transform:scale(1)}}.chat-panel{z-index:40;width:min(380px,100vw);height:min(72vh,640px);color:var(--paper,#eef5f5);background:linear-gradient(180deg, var(--surface-2,#14363f), var(--surface,#0f2a31));border-left:1px solid var(--line-strong,#ffffff29);border-top:1px solid var(--line-strong,#ffffff29);border-top-left-radius:18px;flex-direction:column;animation:.28s cubic-bezier(.2,.8,.2,1) chat-panel-in;display:flex;position:fixed;bottom:0;right:0;overflow:hidden;box-shadow:-8px 0 40px #00000073}@keyframes chat-panel-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.chat-panel__head{border-bottom:1px solid var(--line,#ffffff14);font-weight:700;font-family:var(--font-display,inherit);letter-spacing:-.01em;justify-content:space-between;align-items:center;padding:8px 8px 8px 16px;font-size:16px;display:flex}.chat-panel__title{align-items:center;gap:8px;display:inline-flex}.chat-panel__title .icon{color:var(--halo-text,#6cc3d5)}.chat-messages{flex-direction:column;flex:1;gap:6px;margin:0;padding:12px;list-style:none;display:flex;overflow-y:auto}.chat-messages:empty:before{content:"No messages yet — say hi to the table.";text-align:center;color:var(--muted,#93adb5);margin:auto;padding:1rem;font-size:14px}.chat-messages__item{display:flex}.chat-messages__item--own{justify-content:flex-end}.chat-messages__bubble{border:1px solid var(--line,#ffffff14);word-break:break-word;background:#ffffff12;border-radius:16px 16px 16px 5px;max-width:80%;padding:7px 11px;font-size:14px;line-height:1.4}.chat-messages__item--own .chat-messages__bubble{background:var(--gold,#6a329c);color:#fff;border-color:#0000;border-bottom-right-radius:5px;border-bottom-left-radius:16px}.chat-messages__text{overflow-wrap:anywhere}.chat-messages__name{margin-bottom:2px;font-size:12.5px;font-weight:700;display:block}.chat-messages__gif{border-radius:10px;max-width:180px;margin-top:4px;display:block}.chat-composer{border-top:1px solid var(--line,#ffffff14);padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px));background:#0000002e}.chat-composer__row{align-items:center;gap:8px;display:flex}.chat-composer__field{border:1px solid var(--line-strong,#ffffff29);background:#020a0c73;border-radius:22px;flex:1;align-items:center;gap:2px;min-width:0;padding:3px 4px 3px 6px;transition:border-color .15s,box-shadow .15s;display:flex}.chat-composer__field:focus-within{border-color:var(--halo-text,#6cc3d5);box-shadow:0 0 0 3px #6cc3d538}.chat-composer__input{min-width:0;min-height:0;color:inherit;background:0 0;border:none;flex:1;margin:0;padding:8px 4px;font-size:14px}.chat-composer__input:hover,.chat-composer__input:focus-visible{box-shadow:none;background:0 0;border:none}.chat-composer__input:focus{outline:none}.chat-composer__input::placeholder{color:inherit;opacity:.5}.chat-composer__icon{cursor:pointer;width:34px;height:34px;color:inherit;opacity:.75;background:0 0;border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;padding:0;line-height:1;transition:opacity .15s,background .15s;display:flex;position:relative}.chat-composer__icon:hover,.chat-composer__icon[aria-expanded=true]{opacity:1;background:#ffffff14}.chat-composer__icon--gif{letter-spacing:.04em;font-size:11px;font-weight:800}.chat-composer__icon:before{content:"";position:absolute;inset:-5px}.chat-composer__send{cursor:pointer;background:linear-gradient(180deg, var(--accent,#82d4e4), var(--accent-2,#4aaabe));height:40px;color:var(--on-accent,#04161b);border:none;border-radius:20px;flex:none;justify-content:center;align-items:center;gap:6px;padding:0 16px;font-size:14px;font-weight:700;transition:filter .15s,opacity .15s;display:flex}.chat-composer__send:hover:not(:disabled){filter:brightness(1.06)}.chat-composer__icon:disabled,.chat-composer__send:disabled{opacity:.5;cursor:not-allowed}.chat-composer__tray{border:1px solid var(--line-strong,#ffffff29);background:var(--surface,#0f2a31);border-radius:14px;height:320px;margin-bottom:8px;overflow:hidden}.chat-emoji{flex-direction:column;height:100%;display:flex}.chat-emoji__search{box-sizing:border-box;border:none;border-bottom:1px solid var(--line-strong,#ffffff29);width:100%;min-height:0;color:inherit;background:0 0;border-radius:0;margin:0;padding:10px 12px;font-size:14px}.chat-emoji__search:focus,.chat-emoji__search:focus-visible{box-shadow:none;background:0 0;outline:none}.chat-emoji__viewport{box-sizing:border-box;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:var(--line-strong,#ffffff29) transparent;flex:1;padding:6px 14px 18px 8px;overflow:hidden scroll;-webkit-mask-image:linear-gradient(#000 calc(100% - 18px),#0000 100%);mask-image:linear-gradient(#000 calc(100% - 18px),#0000 100%)}.chat-emoji__viewport::-webkit-scrollbar{width:8px}.chat-emoji__viewport::-webkit-scrollbar-track{background:0 0}.chat-emoji__viewport::-webkit-scrollbar-thumb{background:var(--line-strong,#ffffff29);border-radius:8px}.chat-emoji__viewport::-webkit-scrollbar-thumb:hover{background:var(--halo-text,#6cc3d5)}.chat-emoji__hint{opacity:.7;padding:8px;font-size:13px;display:block}.chat-emoji__loading{grid-template-columns:repeat(7,1fr);gap:6px;padding:6px 14px;display:grid}.chat-emoji__loading-cell{aspect-ratio:1;background:var(--surface-2,#14363f);border-radius:6px}.chat-emoji [frimousse-emoji]{cursor:pointer;background:0 0;border:none;border-radius:6px;flex:1;justify-content:center;align-items:center;padding:4px;font-size:22px;line-height:1;display:flex}.chat-emoji [frimousse-emoji]:hover,.chat-emoji [frimousse-emoji][data-active]{background:var(--surface-2,#14363f)}.chat-emoji [frimousse-category-header]{color:color-mix(in srgb, currentColor 70%, transparent);text-transform:uppercase;letter-spacing:.04em;padding:6px 2px 4px;font-size:11px;font-weight:600;position:static!important}.chat-emoji [frimousse-list-row]{flex-wrap:nowrap;display:flex}.gif-picker{flex-direction:column;height:100%;display:flex}.gif-picker__search{box-sizing:border-box;border:none;border-bottom:1px solid var(--line-strong,#ffffff29);width:100%;min-height:0;color:inherit;background:0 0;border-radius:0;flex:none;margin:0;padding:10px 12px;font-size:14px}.gif-picker__search:focus,.gif-picker__search:focus-visible{box-shadow:none;background:0 0;outline:none}.gif-picker__grid{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:var(--line-strong,#ffffff29) transparent;flex:1;grid-template-columns:repeat(2,1fr);gap:6px;padding:8px 12px;display:grid;overflow-y:auto}.gif-picker__grid::-webkit-scrollbar{width:8px}.gif-picker__grid::-webkit-scrollbar-track{background:0 0}.gif-picker__grid::-webkit-scrollbar-thumb{background:var(--line-strong,#ffffff29);border-radius:8px}.gif-picker__item{cursor:pointer;background:0 0;border:none;border-radius:8px;padding:0;transition:transform .15s}.gif-picker__item:hover{transform:scale(1.03)}.gif-picker__item img{border-radius:8px;width:100%;display:block}.gif-picker__empty{opacity:.7;grid-column:1/-1;padding:8px 12px;font-size:13px}.gif-picker__loading{align-items:center;gap:8px;display:flex}.gif-picker__loading:before{content:"";border:2px solid var(--line-strong,#ffffff29);border-top-color:var(--halo-text,#6cc3d5);border-radius:50%;flex:none;width:14px;height:14px;animation:.7s linear infinite gif-picker-spin}@keyframes gif-picker-spin{to{transform:rotate(360deg)}}@media (width>=900px){.chat-panel{border-top:0;border-top-left-radius:0;height:100vh;top:0}}@media (width>=1100px){.app:has(.chat-panel){padding-right:380px}}@media (width<=480px){.chat-panel{border-left:0;border-top-right-radius:18px;width:100%}}@media (width<=640px){.immersive[data-game] .chat-bubble{top:calc(env(safe-area-inset-top,0px) + .4rem);border-radius:12px;width:44px;height:44px;bottom:auto;right:.6rem;box-shadow:inset 0 1px #ffffff73}.immersive[data-game] .immersive__bar-end{margin-right:3rem}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--brand-primary:#2a6572;--brand-secondary:#9cbd2b;--brand-tertiary:#6a329c;--ink:#071418;--ink-2:#0b1d22;--surface:#0f2a31;--surface-2:#14363f;--surface-3:#1a4550;--line:#ffffff14;--line-strong:#ffffff29;--halo:var(--brand-primary);--halo-up:#2e7b8c;--halo-deep:#1b444e;--halo-text:#6cc3d5;--accent:#82d4e4;--accent-2:#4aaabe;--on-accent:#04161b;--volt:var(--brand-secondary);--volt-text:#b9d65a;--gold:var(--brand-tertiary);--gold-text:#c29cf0;--danger:#ff6b6b;--warning:#f5b94a;--paper:#eef5f5;--muted:#93adb5;--font-display:"Bricolage Grotesque", "Instrument Sans", system-ui, sans-serif;--font-body:"Instrument Sans", system-ui, -apple-system, sans-serif;--font-mono:"Space Mono", ui-monospace, "SFMono-Regular", monospace;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--r-xs:8px;--r-sm:12px;--r-md:16px;--r-lg:24px;--r-pill:999px;--glow-halo:0 0 0 1px #6cc3d573, 0 8px 30px -6px #2a6572bf;--shadow-card:0 1px 0 #ffffff0d inset, 0 24px 48px -24px #000000e6;--shadow-pop:0 32px 80px -24px #000000e6, 0 0 0 1px var(--line-strong);--dur-fast:.12s;--dur:.2s;--dur-slow:.32s;--ease:cubic-bezier(.2, .8, .2, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{min-height:100dvh;font-family:var(--font-body);color:var(--paper);background:var(--ink);background-image:radial-gradient(120% 90% at 12% -10%, #2a65726b, transparent 55%), radial-gradient(110% 85% at 92% 4%, #9cbd2b17, transparent 55%), radial-gradient(140% 120% at 50% 120%, #6a329c33, transparent 60%), linear-gradient(180deg, var(--ink-2), var(--ink));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-attachment:fixed;margin:0;font-size:clamp(1rem,.96rem + .2vw,1.0625rem);line-height:1.55}img{max-width:100%;height:auto}::selection{background:var(--halo);color:#fff}.icon{vertical-align:middle;flex:none;display:inline-block}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.02em;text-wrap:balance;margin:0 0 .4em;font-weight:700;line-height:1.08}h1{letter-spacing:-.03em;font-size:clamp(2.1rem,1.5rem + 2.6vw,3.4rem);font-weight:800}h2{font-size:clamp(1.3rem,1.1rem + .9vw,1.75rem)}h3{font-size:1.1rem}p{text-wrap:pretty;margin:0 0 1rem}a{color:var(--halo-text);font-weight:600;text-decoration:none}a:hover{color:#a4e3ef}.app{flex-direction:column;min-height:100dvh;display:flex}.topbar{z-index:30;-webkit-backdrop-filter:blur(14px)saturate(1.2);backdrop-filter:blur(14px)saturate(1.2);border-bottom:1px solid var(--line);background:#071418c7;justify-content:space-between;align-items:center;gap:1rem;min-height:4rem;padding:.65rem clamp(1rem,4vw,2.5rem);display:flex;position:sticky;top:0}.wordmark{min-height:44px;font-family:var(--font-display);letter-spacing:-.02em;color:var(--paper);white-space:nowrap;align-items:center;gap:.6rem;font-size:1.1rem;font-weight:800;display:inline-flex}.wordmark:hover{color:var(--paper)}.wordmark__mut{color:var(--muted);font-weight:600}.wordmark__mark{width:2rem;height:2rem;color:var(--on-accent);background:linear-gradient(150deg, var(--accent), var(--accent-2));border-radius:9px;place-items:center;display:grid;box-shadow:inset 0 1px #fff6,0 6px 16px -8px #6cc3d5cc}.topbar__start{align-items:center;gap:.75rem;min-width:0;display:flex}.icon-btn{appearance:none;width:2.5rem;height:2.5rem;font:inherit;color:var(--paper);border:1px solid var(--line-strong);border-radius:var(--r-sm);cursor:pointer;transition:background var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease), transform var(--dur-fast) var(--ease);background:#ffffff0d;flex:none;place-items:center;margin:0;padding:0;display:inline-grid;position:relative}.icon-btn:before{content:"";position:absolute;inset:-2px}.icon-btn:hover{border-color:color-mix(in srgb, var(--halo-text) 70%, transparent);background:#ffffff1a}.icon-btn:active{transform:scale(.94)}.icon-btn[aria-expanded=true]{background:color-mix(in srgb, var(--halo) 55%, transparent);border-color:var(--halo-text)}.icon-btn--quiet{color:var(--muted);background:0 0;border-color:#0000}.icon-btn--quiet:hover{color:var(--paper);background:#ffffff14;border-color:#0000}.settings-menu{position:relative}.settings-menu__popup{z-index:60;background:linear-gradient(180deg, var(--surface-2), var(--surface));border:1px solid var(--line-strong);border-radius:var(--r-md);width:min(19rem,100vw - 2rem);box-shadow:var(--shadow-pop);color:var(--paper);animation:pop-in var(--dur) var(--ease);transform-origin:0 0;padding:1rem;position:absolute;top:calc(100% + .6rem)}.settings-menu__popup--end{transform-origin:100% 0;right:0}.settings-menu__popup--start{left:0}.settings-menu__title{font-family:var(--font-display);color:var(--paper);margin:0 0 .75rem;font-size:.95rem;font-weight:700}@media (width<=520px){.wordmark__mut{display:none}}@keyframes pop-in{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:none}}main{flex:1;width:100%;max-width:1180px;margin:0 auto;padding:clamp(1.5rem,4vw,3.25rem) clamp(1rem,4vw,2.5rem) 5rem}.btn,main button:not(:where(.audio-controls__button,.playing-card,.immersive__quit,.icon-btn,.action-chip,.choice-sheet__option,.chat-composer__icon,.gif-picker__item,.card-chip,.table-feed__toggle,.card-inspect__close,[frimousse-emoji])){appearance:none;min-height:44px;font-family:var(--font-display);letter-spacing:-.01em;text-align:center;color:var(--on-accent);border-radius:var(--r-pill);background:linear-gradient(180deg, var(--accent), var(--accent-2));cursor:pointer;transition:transform var(--dur-fast) var(--ease), box-shadow var(--dur) var(--ease), filter var(--dur) var(--ease), background var(--dur) var(--ease);border:0;justify-content:center;align-items:center;gap:.5rem;padding:.7rem 1.35rem;font-size:1rem;font-weight:700;line-height:1.15;display:inline-flex;box-shadow:inset 0 1px #fff6,0 10px 24px -12px #6cc3d5bf}.btn:hover,main button:not(:where(.audio-controls__button,.playing-card,.immersive__quit,.icon-btn,.action-chip,.choice-sheet__option,.chat-composer__icon,.gif-picker__item,.card-chip,.table-feed__toggle,.card-inspect__close,[frimousse-emoji],:disabled)):hover{filter:brightness(1.06)saturate(1.05);transform:translateY(-1px);box-shadow:inset 0 1px #ffffff80,0 16px 32px -12px #6cc3d5d9}.btn:active,main button:not(:where(.audio-controls__button,.playing-card,.immersive__quit,.icon-btn,.action-chip,.choice-sheet__option,.chat-composer__icon,.gif-picker__item,.card-chip,.table-feed__toggle,.card-inspect__close,[frimousse-emoji])):active{transform:translateY(0)scale(.98)}.btn:disabled,main button:not(:where(.chat-composer__icon,.gif-picker__item,.icon-btn,[frimousse-emoji])):disabled{cursor:not-allowed;filter:grayscale(.6)brightness(.72);box-shadow:none;transform:none}.btn--ghost{color:var(--paper);box-shadow:inset 0 0 0 1px var(--line-strong);background:#ffffff0a}.btn--ghost:hover{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--halo-text) 75%, transparent);filter:none;background:#ffffff14}.btn--compact{min-height:36px;padding:.4rem .95rem;font-size:.85rem;position:relative}.btn--compact:before{content:"";position:absolute;inset:-4px 0}.btn--danger{color:#fff;background:linear-gradient(#ef6a62,#c93f38);box-shadow:inset 0 1px #ffffff4d,0 10px 24px -12px #c93f38cc}.btn--danger:hover{box-shadow:inset 0 1px #fff6,0 16px 30px -12px #c93f38e6}.confirm-dialog{width:min(28rem,100% - 2rem)}.confirm-dialog__actions{flex-wrap:wrap;justify-content:flex-end;gap:.6rem;margin-top:.5rem;display:flex}.confirm-dialog__actions>.btn{flex:8rem}label{color:var(--muted);margin-bottom:.9rem;font-size:.85rem;font-weight:600;display:block}:where(input[type=text],input:not([type]),input[type=search],textarea){width:100%;min-height:48px;font:inherit;color:var(--paper);border:1px solid var(--line-strong);border-radius:var(--r-sm);transition:border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease), background var(--dur) var(--ease);background:#020a0c80;margin-top:.4rem;padding:.75rem 1rem;display:block}:where(input,textarea):hover{border-color:#ffffff42}:where(input,textarea)::placeholder{color:color-mix(in srgb, var(--muted) 65%, transparent)}input:focus-visible,textarea:focus-visible{border-color:var(--halo-text);background:#020a0cb3;outline:none;box-shadow:0 0 0 3px #6cc3d547}:focus-visible{outline:2px solid var(--volt);outline-offset:2px}[role=alert]{color:var(--paper);background:color-mix(in srgb, var(--danger) 12%, var(--ink));border-radius:var(--r-sm);border:1px solid #ff6b6b73;margin:.6rem 0 0;padding:.65rem .9rem;font-size:.9rem}.panel{border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-card);background:linear-gradient(#14363fd1,#0f2a31d1);padding:clamp(1.25rem,3vw,2rem)}.eyebrow{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.22em;color:var(--halo-text);align-items:center;gap:.5rem;margin:0 0 .75rem;font-size:.72rem;display:inline-flex}.lede{color:var(--muted);max-width:46ch;font-size:1.1rem}.field-hint,.waiting-note{color:var(--muted);margin:0;font-size:.88rem}.menu-shell{align-content:center;gap:clamp(1.5rem,4vw,3rem);display:grid}.menu-shell>*{min-width:0}@media (width>=900px){.menu-shell{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;min-height:calc(100dvh - 12rem)}}@media (width<=640px){.menu-shell{min-height:calc(100dvh - 10rem)}}.hero{padding-top:clamp(.5rem,2vw,1.5rem)}.hero h1{background:linear-gradient(120deg, #fff 20%, var(--halo-text) 62%, var(--gold-text));color:#0000;-webkit-background-clip:text;background-clip:text;max-width:14ch}.hero__points{color:var(--paper);gap:.6rem;margin:1.5rem 0 0;padding:0;list-style:none;display:grid}.hero__points li{align-items:center;gap:.7rem;display:flex}.hero__points .icon{width:1.9rem;height:1.9rem;color:var(--halo-text);background:color-mix(in srgb, var(--halo) 35%, transparent);border:1px solid color-mix(in srgb, var(--halo-text) 30%, transparent);border-radius:10px;padding:.35rem}.hero__covers{flex-wrap:wrap;gap:.6rem;margin:1.75rem 0 0;padding:0;list-style:none;display:flex}.hero__covers .game-cover{aspect-ratio:auto;border-radius:14px;width:3.25rem;height:3.25rem;box-shadow:0 10px 22px -12px #000000e6}@media (width<=480px){.hero__covers .game-cover{border-radius:12px;width:2.75rem;height:2.75rem}}.hero__covers li:nth-child(odd) .game-cover{transform:rotate(-4deg)}.hero__covers li:nth-child(2n) .game-cover{transform:rotate(3deg)translateY(4px)}.doors{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:1.25rem;display:grid}.door{position:relative;overflow:hidden}.door:after{content:"";border-radius:inherit;pointer-events:none;background:radial-gradient(80% 60% at 85% 0,#2a657266,#0000 60%);position:absolute;inset:0}.door--join:after{background:radial-gradient(80% 60% at 85% 0,#9cbd2b24,#0000 60%)}.door>*{z-index:1;position:relative}.door h2{margin-bottom:.35rem}.door p{color:var(--muted)}.door form{flex-direction:column;align-items:stretch;gap:.85rem;display:flex}.door form input{margin-top:0}.door form button{align-self:flex-start}.door__field{gap:.4rem;display:grid}.door__field-row{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.door__label{color:var(--paper);margin:0;font-size:.85rem;font-weight:600}.identity{border-radius:var(--r-pill);border:1px solid var(--line);color:var(--muted);background:#00000040;align-items:center;gap:.6rem;margin:0;padding:.3rem .3rem .3rem .35rem;font-size:.9rem;display:inline-flex}.identity strong{color:var(--gold-text);font-weight:700}.avatar{width:2rem;height:2rem;font-family:var(--font-display);color:#06161a;background:var(--avatar,var(--halo-text));text-transform:uppercase;border-radius:50%;flex:none;place-items:center;font-size:.85rem;font-weight:800;line-height:1;display:inline-grid;box-shadow:inset 0 -2px #0000002e}.catalog{grid-template-columns:repeat(auto-fill,minmax(min(100%,16.5rem),1fr));gap:1.25rem;margin:1.25rem 0 0;padding:0;list-style:none;display:grid}.game-card{background:linear-gradient(180deg, var(--surface-2), var(--surface));border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-card);transition:transform var(--dur) var(--ease), border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);flex-direction:column;display:flex;position:relative;overflow:hidden}.game-card:hover{border-color:var(--line-strong);transform:translateY(-4px);box-shadow:inset 0 1px #ffffff0f,0 30px 56px -26px #000000f2,0 0 0 1px #6cc3d52e}.game-card__body{flex-direction:column;flex:1;gap:.5rem;padding:1.1rem 1.25rem 1.25rem;display:flex}.game-card h2{margin:0;font-size:1.25rem}.game-card p{color:var(--muted);flex:1;margin:0;font-size:.95rem}.game-card__foot{justify-content:space-between;align-items:center;gap:.75rem;margin-top:.6rem;display:flex}.game-card__seats{color:var(--halo-text);flex:none;align-items:center;gap:.4rem;margin:0;font-size:.85rem;font-weight:600;display:inline-flex}.game-card p.game-card__seats{color:var(--halo-text);flex:none;font-size:.85rem}.game-card__foot button{padding-inline:1.3rem 1.45rem}.game-card--soon{border-style:dashed;border-color:var(--line-strong);opacity:.8}.game-card--soon:hover{border-color:var(--line-strong);box-shadow:var(--shadow-card);transform:none}.game-card--soon .game-cover{filter:saturate(.55)}.game-card__badge{color:var(--gold-text);background:color-mix(in srgb, var(--gold) 22%, transparent);border:1px solid color-mix(in srgb, var(--gold-text) 40%, transparent);border-radius:var(--r-pill);align-items:center;gap:.35rem;padding:.3rem .75rem;font-size:.78rem;font-weight:700;display:inline-flex}.dashboard-join{margin:1.5rem 0 2.5rem}.dashboard-join form{flex-flow:wrap;align-items:center}.dashboard-join input{width:auto;font-family:var(--font-mono);letter-spacing:.3em;text-transform:uppercase;flex:200px;margin-top:0;font-size:1.15rem}.dashboard-join input::placeholder{letter-spacing:.3em}.dashboard-join form button{align-self:center}.dashboard-join [role=alert]{flex-basis:100%;margin-top:0}.catalog-heading{margin:0}.catalog-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.catalog-head p{color:var(--muted);margin:0;font-size:.95rem}.game-card__info{z-index:2;color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#040e118c;border-color:#ffffff47;position:absolute;top:.75rem;right:.75rem}.game-card__info:hover,.game-card__info:focus-visible{background:#040e11cc;border-color:#fff}.game-cover{aspect-ratio:16/8;color:#fff;background:linear-gradient(135deg, var(--surface-3), var(--ink-2));isolation:isolate;place-items:center;display:grid;position:relative;overflow:hidden}.game-cover .icon{stroke-width:1.6px;filter:drop-shadow(0 6px 14px #00000059);width:44%;max-width:5.5rem;height:auto}.hero__covers .game-cover .icon{width:58%}.game-cover[data-game=warewolf]{color:#dbe4f7;background:radial-gradient(1.5px 1.5px at 18% 28%,#fff 99%,#0000),radial-gradient(1.5px 1.5px at 72% 18%,#fff 99%,#0000),radial-gradient(1px 1px at 84% 62%,#fff 99%,#0000),radial-gradient(1px 1px at 32% 70%,#fff 99%,#0000),radial-gradient(1.5px 1.5px at 58% 82%,#fffc 99%,#0000),radial-gradient(120% 90% at 20% 110%,#7864b473,#0000 60%),linear-gradient(#16223c,#080c18)}.game-cover[data-game=warewolf] .icon{filter:drop-shadow(0 0 14px #dbe4f78c)}.game-cover[data-game=cards-against-humanity],.game-cover[data-game=cards-against-humanity-images]{color:#fafafa;background:linear-gradient(120deg,#0000 0 58%,#ffffff0f 58% 100%),#0a0a0a}.game-cover[data-game=what-do-you-meme]{color:#141414;background:#ffe600;box-shadow:inset 0 0 0 6px #141414}.game-cover[data-game=exploding-kittens]{color:#e23b2e;background-color:#f6ecd4;background-image:radial-gradient(#1c140e2e 1.4px,#0000 1.5px);background-size:10px 10px}.game-cover[data-game=exploding-kittens] .icon{stroke:#1c140e;fill:#e23b2e}.game-cover[data-game=unstable-unicorns]{color:#6a4fc4;background:radial-gradient(90% 70% at 10% 0,#ff9ecdbf,#0000 60%),radial-gradient(80% 70% at 95% 10%,#9ef0d0bf,#0000 60%),linear-gradient(135deg,#fbe6f6,#ece9ff 45%,#dcfbef)}.game-cover[data-game=unstable-unicorns] .icon{fill:#ffffffb3}.game-cover[data-game=uno]{color:#fff;background:conic-gradient(from 45deg at 50% 50%, #e2453d 0 25%, #f3b01c 0 50%, #3a9d4e 0 75%, #2a7bd8 0)}.game-cover[data-game=uno] .icon{fill:#0003}.game-cover[data-game=torchlight-table]{color:#c66b3d;background:radial-gradient(circle at 50% 55%,#ffc4668c,#0000 55%),linear-gradient(145deg,#e8dcc7,#d4b895)}.game-cover[data-game=torchlight-table] .icon{fill:#f0a04680}.info-dialog__backdrop{z-index:80;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fade-in var(--dur) var(--ease);background:#040c0fb8;justify-content:center;align-items:center;padding:1.25rem;display:flex;position:fixed;inset:0}.info-dialog::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#040c0fb8}.info-dialog{color:inherit;background:linear-gradient(180deg, var(--surface-2), var(--surface));border:1px solid var(--line-strong);border-radius:var(--r-lg);width:min(34rem,100% - 2rem);max-height:min(85dvh,44rem);box-shadow:var(--shadow-pop);animation:dialog-in var(--dur-slow) var(--ease);flex-direction:column;margin:auto;padding:0;display:flex;overflow:hidden}.info-dialog__head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem 1.25rem 1rem 1.5rem;display:flex}.info-dialog__head h2{margin:0}.info-dialog__eyebrow{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.2em;color:var(--halo-text);margin:0 0 .35rem;font-size:.7rem}.info-dialog__body{gap:1rem;padding:1.1rem 1.5rem 1.5rem;display:grid;overflow-y:auto}.info-dialog__body h3{font-family:var(--font-display);letter-spacing:0;color:var(--halo-text);align-items:center;gap:.5rem;margin:0 0 .3rem;font-size:.95rem;font-weight:700;display:flex}.info-dialog__body p{color:var(--paper);margin:0;font-size:.95rem;line-height:1.6}.info-dialog__body>button{justify-self:start}@keyframes dialog-in{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.session-code{flex-direction:column;gap:.6rem;margin:0 0 1.75rem;display:flex}.session-code__label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.24em;color:var(--muted);font-size:.72rem}.session-code__cells{flex-wrap:wrap;gap:.5rem;display:flex}.session-code__actions{flex-wrap:wrap;gap:.6rem;margin-top:.5rem;display:flex}.session-code__copy{min-height:40px;font-family:var(--font-display);letter-spacing:0;color:var(--paper);border-radius:var(--r-pill);box-shadow:none;cursor:pointer;transition:background var(--dur) var(--ease), border-color var(--dur) var(--ease);background:#6cc3d51f;border:1px solid #6cc3d566;align-items:center;gap:.45rem;padding:.5rem 1rem;font-size:.9rem;font-weight:700;display:inline-flex}.session-code__copy:hover{filter:none;background:#6cc3d53d;border-color:#6cc3d5bf}.session-code__copy[data-done=true]{color:var(--volt-text);border-color:color-mix(in srgb, var(--volt) 60%, transparent);background:color-mix(in srgb, var(--volt) 14%, transparent)}.session-code__cell{width:clamp(2.6rem,8vw,4rem);height:clamp(3.4rem,10vw,5.2rem);font-family:var(--font-mono);color:#fff;box-shadow:var(--glow-halo), 0 14px 30px -14px #000000e6;background:linear-gradient(#16414c 0 50%,#0f323b 50% 100%);border:1px solid #6cc3d566;border-radius:12px;place-items:center;font-size:clamp(1.8rem,5vw,3rem);font-weight:700;animation:3.2s ease-in-out infinite cell-pulse;display:grid;position:relative}.session-code__cell:after{content:"";background:#0000008c;height:1px;position:absolute;top:50%;left:8%;right:8%}.session-code__cell:nth-child(2){animation-delay:.2s}.session-code__cell:nth-child(3){animation-delay:.4s}.session-code__cell:nth-child(4){animation-delay:.6s}.session-code__cell:nth-child(5){animation-delay:.8s}.session-code__cell:nth-child(6){animation-delay:1s}@keyframes cell-pulse{0%,to{box-shadow:0 0 0 1px #6cc3d559,0 6px 20px -8px #6cc3d566,0 14px 30px -14px #000000e6}50%{box-shadow:0 0 0 1px #6cc3d5b3,0 10px 34px -6px #6cc3d5a6,0 14px 30px -14px #000000e6}}.lobby-grid{grid-template-columns:1fr;gap:clamp(1.25rem,3vw,2.5rem);display:grid}@media (width>=860px){.lobby-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start}}.lobby-hero__cover{margin-bottom:1rem}.lobby-hero__cover .game-cover{aspect-ratio:auto;border-radius:18px;width:4rem;height:4rem;box-shadow:0 14px 30px -14px #000000e6,0 0 0 1px #ffffff14}.lobby-hero__cover .game-cover .icon{width:56%}.lobby-hero__title{align-items:flex-start;gap:.75rem;margin:0 0 .6rem;display:flex}.lobby-hero__title h1{margin-bottom:0}.lobby-hero__actions{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.lobby-hero__info{position:relative;inset:auto}.lobby-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.lobby-head h2{align-items:center;gap:.6rem;margin:0;display:inline-flex}.lobby-head__count{color:var(--muted);font-weight:500}.lobby-panel__seats{color:var(--muted);margin:.35rem 0 0;font-size:.88rem}.lobby-section-title{font-family:var(--font-display);color:var(--muted);margin:.25rem 0 0;font-size:.9rem;font-weight:700}.status-pill{border-radius:var(--r-pill);text-transform:capitalize;border:1px solid var(--line);color:var(--muted);background:#ffffff0f;align-items:center;gap:.5rem;padding:.3rem .75rem;font-size:.8rem;font-weight:700;display:inline-flex}.status-pill:before{content:"";background:var(--muted);border-radius:50%;width:.5rem;height:.5rem}.status-pill[data-state=connected]{color:var(--volt-text);background:#9cbd2b14;border-color:#9cbd2b66}.status-pill[data-state=connected]:before{background:var(--volt);box-shadow:0 0 10px var(--volt)}.status-pill[data-state=connecting]{color:var(--gold-text);border-color:#c29cf066}.status-pill[data-state=connecting]:before{background:var(--gold-text);animation:1s steps(2,end) infinite blink}.status-pill[data-state=disconnected]{color:var(--danger);border-color:#ff6b6b66}.status-pill[data-state=disconnected]:before{background:var(--danger)}@keyframes blink{50%{opacity:.3}}.start-cta{gap:.75rem;margin-top:1.25rem;display:grid}.start-cta .btn,.start-cta>button{width:100%;min-height:52px;padding:.9rem 2rem;font-size:1.1rem}.start-cta.waiting-note{border-radius:var(--r-md);border:1px dashed var(--line-strong);color:var(--paper);align-items:center;gap:.6rem;padding:.85rem 1rem;display:flex}.start-cta.waiting-note:before{content:"";background:var(--gold-text);border-radius:50%;flex:none;width:.55rem;height:.55rem;animation:1.4s ease-in-out infinite blink}.pack-picker{border-radius:var(--r-md);border:1px solid var(--line);background:#0000002e;flex-direction:column;gap:.4rem;margin:0;padding:.75rem .9rem;display:flex}.pack-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;min-height:32px;color:var(--paper);align-items:center;gap:.75rem;margin:0;display:flex}.pack-toggle__input{opacity:0;width:0;height:0;position:absolute}.pack-toggle__track{width:2.75rem;height:1.6rem;transition:background var(--dur) var(--ease), border-color var(--dur) var(--ease);background:#ffffff24;border:1px solid #ffffff3d;border-radius:999px;flex:none;position:relative}.pack-toggle__thumb{width:1.25rem;height:1.25rem;transition:transform var(--dur) var(--ease-spring);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 2px 6px #00000059}.pack-toggle__input:checked+.pack-toggle__track{background:var(--gold);border-color:var(--gold-text)}.pack-toggle__input:checked+.pack-toggle__track .pack-toggle__thumb{transform:translate(1.15rem)}.pack-toggle__input:focus-visible+.pack-toggle__track{outline:2px solid var(--volt);outline-offset:2px}.pack-toggle__label{font-size:.95rem;font-weight:600}.pack-toggle__hint{color:var(--muted);font-size:.8rem;font-weight:400;display:block}.waiting-state{text-align:center;color:var(--muted);place-items:center;gap:.75rem;padding:3rem 1rem;display:grid}.crash-shell{place-items:center;min-height:calc(100dvh - 12rem);display:grid}.crash-panel{text-align:left;width:min(100%,36rem)}.crash-panel__icon{width:3rem;height:3rem;color:var(--halo-text);background:color-mix(in srgb, var(--halo) 35%, transparent);border:1px solid color-mix(in srgb, var(--halo-text) 35%, transparent);border-radius:14px;place-items:center;margin-bottom:1rem;display:inline-grid}.crash-actions{flex-wrap:wrap;align-items:center;gap:1rem;margin-top:.5rem;display:flex}.board-crash{text-align:center;max-width:32rem;margin:2rem auto}.board-crash p{color:var(--muted);margin-bottom:1rem}.waiting-state:before{content:"";border:3px solid #ffffff1f;border-top-color:var(--halo-text);border-radius:50%;width:2.4rem;height:2.4rem;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.dashboard-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.dashboard-head h1{margin:0}.dashboard-head .lede{margin:.5rem 0 0}.app--immersive{background:0 0}.immersive{flex-direction:column;max-width:none;min-height:100dvh;margin:0;padding:0;display:flex}.immersive__bar{z-index:30;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);background:#061013f0;justify-content:space-between;align-items:center;gap:.75rem;min-height:3.5rem;padding:.5rem clamp(.75rem,3vw,1.5rem);display:flex;position:sticky;top:0}.immersive__bar-start{align-items:center;gap:.75rem;min-width:0;display:flex}.immersive__bar-end{align-items:center;gap:.5rem;display:flex}.immersive__title{flex-direction:column;min-width:0;line-height:1.15;display:flex}.immersive__game{font-family:var(--font-display);white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;font-weight:700;overflow:hidden}.immersive__info{position:relative;inset:auto}.immersive__code{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);white-space:nowrap;font-size:.72rem}.immersive .game-screen[data-game]{padding-top:clamp(1.5rem,4vw,2.75rem);border-width:0;border-radius:0;flex:1;min-height:calc(100dvh - 3.5rem);margin-top:0;padding-inline:max(clamp(1rem,3.5vw,2.75rem),50% - 590px)}.countdown-pill{font-family:var(--font-mono);font-variant-numeric:tabular-nums;background:color-mix(in srgb, var(--volt) 18%, transparent);color:var(--volt-text);border:1px solid;border-radius:999px;align-items:center;gap:.3rem;padding:.2rem .65rem;font-weight:700;display:inline-flex}.countdown-pill:before{content:"";opacity:.85;background:currentColor;border-radius:50%;width:.45rem;height:.45rem}.countdown-pill--urgent{background:color-mix(in srgb, var(--danger) 26%, transparent);color:#ffb3b3;animation:1s ease-in-out infinite countdown-pulse}@keyframes countdown-pulse{50%{opacity:.55}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
