@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./bricolage-grotesque-vietnamese-wght-normal-BUzh504Q.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./bricolage-grotesque-latin-ext-wght-normal-CcLUaPy7.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./bricolage-grotesque-latin-wght-normal-DLoelf7F.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(./ibm-plex-mono-cyrillic-ext-600-normal-V-xxqcpd.woff2)format("woff2"),url(./ibm-plex-mono-cyrillic-ext-600-normal-9HEixskS.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(./ibm-plex-mono-cyrillic-600-normal-CTOM6hUh.woff2)format("woff2"),url(./ibm-plex-mono-cyrillic-600-normal-fLZuRloM.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(./ibm-plex-mono-vietnamese-600-normal-D2EvbN8M.woff2)format("woff2"),url(./ibm-plex-mono-vietnamese-600-normal-iLQfcSjf.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(./ibm-plex-mono-latin-ext-600-normal-D38SheWl.woff2)format("woff2"),url(./ibm-plex-mono-latin-ext-600-normal-DmB0ttJJ.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(./ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2)format("woff2"),url(./ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-bg:#f3ecdd;--color-surface:#fffdf7;--color-text:#1e1b18;--color-muted:#4a433b;--color-border:#1e1b18;--color-primary:#1e1b18;--color-primary-text:#f3ecdd;--color-secondary:#d8c7a3;--color-accent:#e85a3c;--color-accent-text:#1e1b18;--color-danger:#b8351f;--color-danger-text:#fffdf7;--color-success:#1f6f6a;--color-success-stripe:#257d77;--color-success-text:#f3ecdd;--color-warning-bg:#f5e2b0;--color-error-bg:#f8d9cf;--color-info-bg:#d6e6e4;--color-selected:#1e1b18;--color-selected-bg:#d8c7a3;--color-rim:#c8b48a;--player-1:#e85a3c;--player-2:#1f6f6a;--player-3:#e3b341;--player-4:#7b4b94;--player-5:#5b9bd5;--player-6:#7a8f3c;--player-7:#d9779a;--player-8:#8c6a4a;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--radius:6px;--radius-sm:4px;--line:2px;--line-bold:3px;--shadow:4px 4px 0 var(--color-text);--shadow-lift:6px 6px 0 var(--color-text);--shadow-press:2px 2px 0 var(--color-text);--shadow-accent:4px 4px 0 var(--color-accent);--shadow-accent-press:2px 2px 0 var(--color-accent);--tap:44px;--max-width:720px;--board-width:1080px;--font:"Bricolage Grotesque Variable", "Bricolage Grotesque", system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--dur-fast:.12s;--dur:.18s;--dur-slow:.34s;--ease-out:cubic-bezier(.2, .8, .2, 1);--ease-overshoot:cubic-bezier(.34, 1.56, .64, 1)}*{box-sizing:border-box}html,body{background:var(--color-bg);color:var(--color-text);font-family:var(--font);-webkit-text-size-adjust:100%;margin:0;padding:0;font-size:16px;font-weight:500;line-height:1.4;overflow-x:hidden}#root{flex-direction:column;min-height:100dvh;display:flex}h1,h2,p{margin:0}h2{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;margin-top:var(--space-4);font-size:.8125rem;font-weight:600}:focus-visible{outline:var(--line-bold) solid var(--color-accent);outline-offset:2px}.screen{width:100%;max-width:var(--max-width);padding:var(--space-4);gap:var(--space-3);flex-direction:column;flex:1;margin:0 auto;display:flex}.board{max-width:var(--board-width);justify-content:center;align-items:flex-start;gap:var(--space-2) var(--space-6);flex-flow:wrap}.board--center{align-items:center}.board__side{gap:var(--space-2);flex-direction:column;flex:280px;min-width:0;max-width:400px;display:flex}.board__side--wide{max-width:560px}.board__main{gap:var(--space-3);flex-direction:column;flex:2 320px;min-width:0;display:flex}.board__main--narrow{flex:280px;max-width:440px}.tutorial-card{align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-accent);color:var(--color-accent-text);border:var(--line) solid var(--color-border);border-radius:var(--radius);box-shadow:3px 3px 0 var(--color-text);animation:cue-in var(--dur) var(--ease-out) both;overflow-wrap:anywhere;display:flex;transform:rotate(-.8deg)}.tutorial-card p{flex:1;font-size:.9375rem;font-weight:700;line-height:1.3}.tutorial-card__dismiss{border-radius:var(--radius-sm);width:28px;min-width:0;height:28px;min-height:0;box-shadow:none;flex-shrink:0;padding:0;font-weight:800;line-height:1}@keyframes cue-in{0%{opacity:0;translate:0 -8px}}.title{letter-spacing:-.03em;font-size:1.75rem;font-weight:800;line-height:1.1}.muted{color:var(--color-muted)}.mono{font-family:var(--font-mono);font-weight:600}.label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--color-muted);font-size:.75rem;font-weight:600}.num{text-align:right;font-variant-numeric:tabular-nums}.dots{animation:1.2s linear infinite blink;display:inline-block}@keyframes blink{0%,80%,to{opacity:.2}40%{opacity:1}}.wordmark{letter-spacing:-.04em;align-items:center;gap:.2em;font-size:clamp(2.5rem,7vw,4rem);font-weight:800;line-height:1;display:flex}.wordmark__mark{width:auto;height:.8em;animation:deal .42s var(--ease-overshoot) both;flex-shrink:0;transform:rotate(-3deg)}.wordmark__dix{color:var(--color-accent)}.tagline{color:var(--color-muted);font-size:.9375rem}.steps{gap:var(--space-1) var(--space-4);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.step{gap:var(--space-2);align-items:baseline;font-size:.875rem;display:flex}.step__n{background:var(--color-text);color:var(--color-primary-text);font-family:var(--font-mono);letter-spacing:.1em;flex-shrink:0;padding:1px 6px;font-size:.625rem;font-weight:600}.hint{color:var(--color-muted);margin:calc(-1 * var(--space-1)) 0 0;text-align:center;font-size:.875rem}.form-stack{flex-direction:column;gap:10px;display:flex}.btn--quick{min-height:56px;font-size:1.25rem}.quick-progress{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:var(--line) dashed var(--color-accent);border-radius:var(--radius);font-family:var(--font-mono);font-variant-numeric:tabular-nums;margin:0;font-size:.875rem;font-weight:600;display:flex}.spinner{border:var(--line) solid var(--color-accent);border-right-color:#0000;border-radius:50%;flex-shrink:0;width:14px;height:14px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.notice__text{flex:1}.btn{min-height:var(--tap);min-width:var(--tap);padding:var(--space-2) var(--space-4);border-radius:var(--radius);border:var(--line) solid var(--color-border);background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow);font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:translate var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);font-weight:700}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:active:not(:disabled){box-shadow:var(--shadow-press);translate:2px 2px}.btn--primary{background:var(--color-primary);color:var(--color-primary-text);border-color:var(--color-primary);box-shadow:var(--shadow-accent)}.btn--primary:active:not(:disabled){box-shadow:var(--shadow-accent-press)}.btn--secondary{background:var(--color-secondary);color:var(--color-text)}.btn--danger{background:var(--color-surface);color:var(--color-danger);border-color:var(--color-danger)}.btn--danger-fill{background:var(--color-danger);color:var(--color-danger-text);border-color:var(--color-text)}.btn--block{width:100%}.btn--small{min-height:36px;padding:var(--space-1) 10px;box-shadow:var(--shadow-press);font-size:.875rem}.btn--small:active:not(:disabled){box-shadow:1px 1px 0 var(--color-text);translate:1px 1px}.btn--ghost-danger{color:var(--color-danger);border-color:var(--color-danger);box-shadow:none;background:0 0}.btn--ghost-danger:active:not(:disabled){box-shadow:none}.btn--link{box-shadow:none;color:var(--color-danger);text-underline-offset:3px;padding:var(--space-2);background:0 0;border:none;text-decoration:underline}.btn--link:active:not(:disabled){box-shadow:none}.btn--armed{animation:arm .7s var(--ease-overshoot) 2 both}@keyframes arm{0%,to{box-shadow:var(--shadow-accent);translate:0}50%{box-shadow:8px 8px 0 var(--color-accent);translate:-2px -2px}}.row{gap:var(--space-3);flex-wrap:wrap;display:flex}.row>.confirm{flex:100%}.row>.btn{flex:1}.actions{margin-top:var(--space-1);flex-direction:column;gap:10px;display:flex}.field{gap:var(--space-1);flex-direction:column;display:flex}.field>span{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--color-muted);font-size:.75rem;font-weight:600}.field input,.input{min-height:var(--tap);padding:var(--space-2) var(--space-3);border:var(--line) solid var(--color-border);border-radius:var(--radius);font:inherit;background:var(--color-surface);width:100%;color:var(--color-text);font-size:1rem}.field input::placeholder,.input::placeholder{color:var(--color-muted);opacity:.7}.field--grow{flex:1}.input--code{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.15em;font-weight:600}.join-row,.clue-form{align-items:stretch;gap:10px;display:flex}.join-row>.input,.clue-form>.input{flex:1;min-width:0}.clue-form>.btn{white-space:nowrap}.divider{align-items:center;gap:var(--space-3);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--color-muted);margin:var(--space-1) 0 0;font-size:.6875rem;font-weight:600;display:flex}.divider:before,.divider:after{content:"";border-top:var(--line) dashed var(--color-secondary);flex:1}.notice,.banner{align-items:baseline;gap:var(--space-1) var(--space-2);padding:var(--space-3);border-radius:var(--radius);border:var(--line) solid var(--color-border);box-shadow:var(--shadow);color:var(--color-text);flex-wrap:wrap;display:flex}.notice__label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;font-size:.75rem;font-weight:600}.notice--error,.banner--error{background:var(--color-error-bg);animation:shake .32s var(--ease-out) both}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.notice--info,.banner--info{background:var(--color-info-bg)}.banner{margin:var(--space-3) var(--space-3) 0;padding:var(--space-1) var(--space-1) var(--space-1) var(--space-3);animation:cue-in var(--dur) var(--ease-out) both;flex-wrap:nowrap;align-items:center}.banner__text{flex:1}.banner--conn{background:var(--color-warning-bg)}.confirm{padding:var(--space-3);border:var(--line) solid var(--color-danger);border-radius:var(--radius);background:var(--color-surface);box-shadow:var(--shadow);width:100%;animation:pop .22s var(--ease-overshoot) both;flex-direction:column;gap:10px;display:flex}.lobby-head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.room-code{justify-content:space-between;align-items:center;gap:var(--space-3);padding:10px var(--space-3);background:var(--color-surface);border:var(--line) solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);display:flex}.room-code__value{-webkit-user-select:all;user-select:all;gap:6px;display:flex}.room-code__tile{min-width:40px;height:46px;font-family:var(--font-mono);background:var(--color-surface);border:var(--line) solid var(--color-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-press);animation:deal .32s var(--ease-overshoot) both;place-items:center;padding:0 6px;font-size:1.75rem;font-weight:600;line-height:1;display:inline-grid;transform:rotate(-2deg)}.room-code__tile:nth-child(2n){transform:rotate(2deg)}.room-code__tile:nth-child(2){animation-delay:60ms}.room-code__tile:nth-child(3){animation-delay:.12s}.room-code__tile:nth-child(4){animation-delay:.18s}.player-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.player{justify-content:space-between;align-items:center;gap:var(--space-2);min-height:40px;padding:var(--space-1) 10px;background:var(--color-surface);border:var(--line) solid var(--color-border);border-radius:var(--radius);animation:slide-in .32s var(--ease-overshoot) both;display:flex}@keyframes slide-in{0%{opacity:0;transform:translate(-24px)}}.player--you{background:var(--color-selected-bg)}.player--offline{opacity:.6}.player__name{overflow-wrap:anywhere;align-items:center;gap:var(--space-2);min-width:0;display:flex}.player__tags{justify-content:flex-end;gap:var(--space-1);flex-wrap:wrap;display:flex}.tag{margin-left:var(--space-2);padding:2px var(--space-2);border:var(--line) solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-secondary);color:var(--color-text);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;vertical-align:middle;white-space:nowrap;font-size:.6875rem;font-weight:600;line-height:1.3;display:inline-block}.player__tags .tag{margin-left:0}.tag--accent{background:var(--color-accent);color:var(--color-accent-text)}.tag--done{background:var(--color-success);color:var(--color-success-text);animation:pop .26s var(--ease-overshoot) both}.tag--waiting{background:var(--color-surface);color:var(--color-muted)}.tag--bot{background:var(--color-selected-bg);border-color:var(--color-selected)}.avatar{border:var(--line) solid var(--color-border);width:32px;height:32px;box-shadow:var(--shadow-press);vertical-align:middle;border-radius:50%;flex-shrink:0;display:inline-block;position:relative}.avatar--dot{width:14px;height:14px;box-shadow:none}.avatar--tiny{width:10px;height:10px;box-shadow:none;border-width:1.5px}.avatar__clip{border-radius:50%;position:absolute;inset:0;overflow:hidden}.avatar__head{background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:50%;width:31%;height:31%;margin-left:-15.5%;position:absolute;top:16%;left:50%}.avatar__body{background:var(--color-surface);border:1.5px solid var(--color-border);border-bottom:none;border-radius:50% 50% 0 0/100% 100% 0 0;width:62%;height:60%;margin-left:-31%;position:absolute;top:53%;left:50%}.avatar--empty{box-shadow:none;background:0 0;border-style:dashed}.table{aspect-ratio:3/2;width:100%;position:relative}.table__rim{background:var(--color-rim);border:var(--line) solid var(--color-border);width:72%;height:68%;box-shadow:var(--shadow-lift);border-radius:50%;position:absolute;top:16%;left:14%}.table__felt{background:var(--color-info-bg);border:var(--line) solid var(--color-border);border-radius:50%;width:60%;height:48%;position:absolute;top:26%;left:20%}.table__center{text-align:center;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;font-size:.6875rem;font-weight:600;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.table__card{opacity:0;background:repeating-linear-gradient(45deg, var(--color-success) 0 5px, var(--color-success-stripe) 5px 10px);border:var(--line) solid var(--color-border);border-radius:var(--radius-sm);width:28px;height:38px;box-shadow:var(--shadow-press);transition:left .42s var(--ease-out), top .42s var(--ease-out), transform .42s var(--ease-overshoot), scale .42s var(--ease-overshoot), opacity .22s linear;position:absolute;scale:.5}.table__card--down{opacity:1;scale:1}.table__card--correct{animation:correct-mini .9s var(--ease-out) .38s both}@keyframes correct-mini{0%{box-shadow:var(--shadow-press)}40%{box-shadow:0 0 0 7px var(--color-success)}to{box-shadow:0 0 0 3px var(--color-success), var(--shadow-press)}}.seat{width:66px;transition:left .32s var(--ease-out), top .32s var(--ease-out);flex-direction:column;align-items:center;gap:2px;display:flex;position:absolute;transform:translate(-50%,-50%)}.seat__avatar{animation:pop .32s var(--ease-overshoot) both;display:inline-flex;position:relative}.seat__avatar--nod{animation:nod .36s var(--ease-overshoot) both}@keyframes nod{40%{transform:scale(1.18)translateY(-3px)}}.seat__name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;font-size:.625rem;font-weight:600;overflow:hidden}.seat__name--storyteller{color:var(--color-danger)}.seat__tape{background:var(--color-accent);border:1.5px solid var(--color-border);width:16px;height:11px;animation:pop .26s var(--ease-overshoot) both;border-radius:2px;justify-content:center;align-items:center;gap:3px;display:flex;position:absolute;top:-7px;left:-9px}.seat__tape i{background:var(--color-text);border-radius:50%;width:3px;height:3px}.seat__check{background:var(--color-success);border:1.5px solid var(--color-border);width:14px;height:14px;color:var(--color-success-text);text-align:center;animation:pop .26s var(--ease-overshoot) both;border-radius:50%;font-size:9px;font-weight:800;line-height:11px;position:absolute;bottom:-4px;right:-6px}.seat__points{border:var(--line) solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-danger);color:var(--color-danger-text);font-family:var(--font-mono);box-shadow:var(--shadow-press);animation:slap .32s var(--ease-out) .9s both;padding:1px 5px;font-size:.6875rem;font-weight:600;line-height:1.3;position:absolute;top:-10px;right:-18px;transform:rotate(6deg)}.seat__points--win{background:var(--color-success);color:var(--color-success-text)}.seat__bubble{white-space:nowrap;padding:3px var(--space-2);background:var(--color-surface);border:var(--line) solid var(--color-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-press);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;z-index:2;animation:cue-in var(--dur) var(--ease-out) both;font-size:.625rem;font-weight:600;position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%)}.seat__bubble--below{top:calc(100% + 4px);bottom:auto}.game-header{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.game-header__room{white-space:nowrap}.game-header__actions{flex-wrap:wrap;gap:6px;display:flex}.game-header__code{color:var(--color-text)}.game-footer{padding-top:var(--space-2);flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:auto;display:flex}.panel{padding:2px var(--space-3);background:var(--color-surface);border:var(--line) solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);animation:cue-in var(--dur) var(--ease-out) both}.instruction{font-weight:700}.clue{margin:2px var(--space-1) var(--space-1);background:var(--color-surface);border:var(--line) solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);animation:stick .36s var(--ease-out) both;flex-wrap:wrap;align-items:baseline;gap:10px;padding:6px 14px 8px;display:flex;transform:rotate(-1deg)}@keyframes stick{0%{opacity:0;transform:rotate(-6deg)scale(1.12)}60%{opacity:1;transform:rotate(.5deg)scale(.98)}}.clue__label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--color-success);white-space:nowrap;font-size:.6875rem;font-weight:600}.clue__text{letter-spacing:-.03em;overflow-wrap:anywhere;font-size:1.5rem;font-weight:800;line-height:1.1}.clue--compact .clue__text{font-size:1.125rem}.waiting{color:var(--color-muted);font-style:italic}.hand{gap:20px var(--space-3);grid-template-columns:repeat(auto-fill,minmax(96px,1fr));padding-top:6px;display:grid}.hand--table{gap:14px var(--space-3);padding-top:var(--space-1);grid-template-columns:repeat(auto-fill,minmax(88px,108px))}.clip-card{--tilt:-2.5deg;flex-direction:column;gap:6px;min-width:0;display:flex;position:relative}.clip-card:nth-child(6n+2){--tilt:1.5deg}.clip-card:nth-child(6n+3){--tilt:-1deg}.clip-card:nth-child(6n+4){--tilt:2deg}.clip-card:nth-child(6n+5){--tilt:1deg}.clip-card:nth-child(6n){--tilt:-2deg}.clip-card__tape{aspect-ratio:2/3;background:var(--color-surface);width:100%;color:var(--color-text);border:var(--line) solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transform:rotate(var(--tilt));transition:transform var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out), translate var(--dur-fast) var(--ease-out);flex-direction:column;padding:0;display:flex;position:relative;overflow:hidden}.clip-card__tape:active{box-shadow:var(--shadow-press);translate:2px 2px}.clip-card--selected .clip-card__tape{box-shadow:0 0 0 1px var(--color-selected), var(--shadow-lift);transform:translateY(-12px)}.clip-card--fly{pointer-events:none;animation:.38s cubic-bezier(.4,0,1,1) both fly}@keyframes fly{to{opacity:0;transform:translateY(-48px)rotate(6deg)scale(.5)}}.clip-card__label{justify-content:space-between;align-items:center;gap:var(--space-1);padding:var(--space-1) 6px;background:var(--color-accent);color:var(--color-accent-text);border-bottom:var(--line) solid var(--color-border);font-family:var(--font-mono);letter-spacing:.1em;text-align:left;white-space:nowrap;font-size:.7rem;font-weight:600;transition:background .3s;display:flex}.clip-card__reels{gap:3px;display:flex}.clip-card__reel{border:var(--line) solid var(--color-border);background:var(--color-surface);border-radius:50%;width:11px;height:11px;position:relative}.clip-card__reel:before{content:"";background:var(--color-text);width:2px;height:3px;margin-left:-1px;position:absolute;top:0;left:50%}.clip-card--playing .clip-card__reel{animation:.7s linear infinite reel}@keyframes reel{to{transform:rotate(360deg)}}.clip-card__wave{padding:var(--space-2) var(--space-1);flex:1;justify-content:center;align-items:center;gap:2px;min-height:0;display:flex}.clip-card__bar{background:var(--color-text);transform-origin:50%;width:3px;max-height:100%;transition:transform 70ms linear}.clip-card__foot{padding:var(--space-1) var(--space-2);border-top:var(--line) dashed var(--color-border);justify-content:space-between;align-items:center;display:flex;position:relative}.clip-card__prog{background:var(--color-accent);width:0;height:2px;position:absolute;top:-2px;left:0}.clip-card__dur{font-family:var(--font-mono);letter-spacing:.1em;font-size:.75rem;font-weight:600}.icon-play{border-style:solid;border-width:6px 0 6px 10px;border-color:transparent transparent transparent var(--color-text);width:0;height:0}.icon-pause{border-left:3px solid var(--color-text);border-right:3px solid var(--color-text);width:10px;height:12px}.clip-card__stamp{pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.clip-card__stamp>span{border:var(--line-bold) solid var(--color-danger);border-radius:var(--radius-sm);color:var(--color-danger);font-family:var(--font-mono);letter-spacing:.15em;animation:stamp .28s var(--ease-out) both;background:#fffdf7d9;padding:4px 10px;font-size:.9rem;font-weight:600;transform:rotate(-10deg)}@keyframes stamp{0%{opacity:0;transform:rotate(-22deg)scale(2.4)}55%{opacity:1;transform:rotate(-8deg)scale(.94)}to{transform:rotate(-10deg)scale(1)}}.clip-card__badge{box-shadow:var(--shadow-press);z-index:1;animation:slap .32s var(--ease-out) .12s both;margin:0;position:absolute;top:26px;right:-6px;transform:rotate(3deg)}@keyframes slap{0%{opacity:0;transform:rotate(-16deg)scale(1.9)}60%{opacity:1;transform:rotate(5deg)scale(.96)}to{transform:rotate(3deg)scale(1)}}.clip-card--selected .clip-card__badge{top:14px}.clip-card--correct .clip-card__tape{background:var(--color-info-bg);box-shadow:0 0 0 3px var(--color-success), var(--shadow-lift);animation:correct 1.1s var(--ease-out) .38s both}.clip-card--correct .clip-card__label{background:var(--color-success);color:var(--color-success-text)}@keyframes correct{0%{box-shadow:var(--shadow);background:var(--color-surface)}35%{box-shadow:0 0 0 10px var(--color-success), var(--shadow-lift);background:var(--color-info-bg)}65%,to{box-shadow:0 0 0 3px var(--color-success), var(--shadow-lift);background:var(--color-info-bg)}}.facedown{aspect-ratio:2/3;background:repeating-linear-gradient(45deg, var(--color-success) 0 8px, var(--color-success-stripe) 8px 16px);border:var(--line) solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);animation:deal var(--dur-slow) var(--ease-overshoot) both;place-items:center;display:grid}.facedown__q{background:var(--color-bg);border:var(--line) solid var(--color-border);border-radius:50%;place-items:center;width:44px;height:44px;font-size:1.5rem;font-weight:800;line-height:1;display:grid}.hand--dealt .clip-card{animation:deal var(--dur-slow) var(--ease-overshoot) both}.hand--flip .clip-card{animation:flip .26s var(--ease-out) both}.clip-card:nth-child(2){animation-delay:50ms}.clip-card:nth-child(3){animation-delay:.1s}.clip-card:nth-child(4){animation-delay:.15s}.clip-card:nth-child(5){animation-delay:.2s}.clip-card:nth-child(n+6){animation-delay:.25s}@keyframes deal{0%{opacity:0;transform:translateY(-28px)scale(.92)}}@keyframes flip{0%{transform:perspective(600px)rotateY(90deg)}}@keyframes pop{0%{opacity:0;transform:scale(.6)}70%{transform:scale(1.08)}to{opacity:1;transform:scale(1)}}.reveal-info{gap:var(--space-1);min-width:0;animation:cue-in .26s var(--ease-out) .22s both;flex-direction:column;display:flex}.reveal-info__owner{align-items:center;gap:6px;min-width:0;font-size:.875rem;display:flex}.reveal-info__owner strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.reveal-info__voters{gap:var(--space-1);flex-wrap:wrap;align-items:center;display:flex}.chip{border:var(--line) solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);animation:pop .26s var(--ease-overshoot) both;align-items:center;gap:4px;padding:1px 6px 1px 4px;font-size:.75rem;font-weight:700;display:inline-flex}.round-result{background:var(--color-surface);border:var(--line) solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);animation:pop .32s var(--ease-overshoot) .26s both;overflow:hidden}.round-result__head{padding:var(--space-2) var(--space-3);background:var(--color-secondary);border-bottom:var(--line) solid var(--color-border);flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.round-result__label{white-space:nowrap;font-size:1.125rem;font-weight:800}.round-result__reason{flex:1;min-width:0;font-size:.875rem}.round-result--success .round-result__head{background:var(--color-success);color:var(--color-success-text)}.round-result--failure .round-result__head{background:var(--color-danger);color:var(--color-danger-text)}.points{padding:0 var(--space-3);margin:0;list-style:none}.points li{align-items:center;gap:var(--space-2);border-bottom:var(--line) dashed var(--color-secondary);padding:3px 0;font-size:.9375rem;display:flex}.points li:last-child{border-bottom:none}.points li.you{background:var(--color-selected-bg)}.points__name{overflow-wrap:anywhere;flex:1;min-width:0}.points__won{color:var(--color-success);animation:pop .3s var(--ease-overshoot) .9s both;font-size:1rem;font-weight:800;display:inline-block}.points__won--zero{color:var(--color-danger)}.btn--next{animation:cue-in .26s var(--ease-out) .9s both}.scoreboard{border-collapse:collapse;background:var(--color-surface);width:100%}.scoreboard th{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--color-muted);border-bottom:var(--line) solid var(--color-border);font-size:.6875rem;font-weight:600}.scoreboard th,.scoreboard td{padding:6px var(--space-1);text-align:left;vertical-align:middle}.scoreboard td{border-bottom:var(--line) dashed var(--color-secondary)}.scoreboard tr:last-child td{border-bottom:none}.scoreboard th.num,.scoreboard td.num{text-align:right}.scoreboard tr.you td{background:var(--color-selected-bg)}.scoreboard .winner .scoreboard__name{font-weight:800}.scoreboard__name{align-items:center;gap:var(--space-2);overflow-wrap:anywhere;display:inline-flex}.scoreboard__score{font-size:1.125rem;font-weight:800}.score-track{gap:3px;display:inline-flex}.score-track__pip{border:var(--line) solid var(--color-border);background:var(--color-surface);border-radius:3px;width:11px;height:11px}.score-track__pip--on{background:var(--color-accent)}.score-track__pip--new{animation:pip-in .26s var(--ease-overshoot) both}@keyframes pip-in{0%{background:var(--color-surface);transform:scale(.3)}60%{transform:scale(1.4)}to{transform:scale(1)}}.winner-line{letter-spacing:-.03em;overflow-wrap:anywhere;font-size:1.5rem;font-weight:800;line-height:1.1}.winner-line--success,.winner-line--failure{padding:var(--space-3) var(--space-4);border:var(--line) solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);animation:stick .42s var(--ease-out) 1.2s both;transform:rotate(-1deg)}.winner-line--success{background:var(--color-success);color:var(--color-success-text)}.winner-line--failure{background:var(--color-danger);color:var(--color-danger-text)}.podium{align-items:end;gap:var(--space-3);height:220px;margin-top:var(--space-2);padding:0 var(--space-1);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.podium__col{flex-direction:column;justify-content:flex-end;align-items:center;gap:6px;min-width:0;height:100%;display:flex}.podium__name{text-align:center;overflow-wrap:anywhere;min-width:0;max-width:100%;animation:pop .3s var(--ease-overshoot) both;font-weight:800;line-height:1.1}.podium__bar{background:var(--color-secondary);border:var(--line) solid var(--color-border);border-radius:var(--radius) var(--radius) 0 0;width:100%;box-shadow:var(--shadow);padding-top:var(--space-2);font-family:var(--font-mono);transform-origin:bottom;animation:rise .52s var(--ease-out) both;place-items:start center;font-size:1.375rem;font-weight:600;display:grid}@keyframes rise{0%{transform:scaleY(0)}}.confetti{pointer-events:none;z-index:5;position:fixed;inset:0;overflow:hidden}.confetti>span{border:var(--line) solid var(--color-border);border-radius:2px;animation:3s cubic-bezier(.3,.5,.6,1) both confetti;position:absolute;top:-24px}@keyframes confetti{0%{transform:translateY(-10vh)rotate(0)}to{transform:translateY(110vh)rotate(720deg)}}@media (width>=760px){.table{aspect-ratio:1}.table--wide{aspect-ratio:3/2}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.custom-slot{justify-content:center;align-items:center;gap:var(--space-2);aspect-ratio:2/3;width:100%;padding:var(--space-2);background:var(--color-bg);color:var(--color-text);border:var(--line) dashed var(--color-border);border-radius:var(--radius);font:inherit;text-align:center;cursor:pointer;touch-action:manipulation;transition:background var(--dur) var(--ease-out), transform var(--dur) var(--ease-out);flex-direction:column;font-weight:700;line-height:1.2;display:flex;transform:rotate(-2deg)}button.custom-slot:hover{background:var(--color-surface)}button.custom-slot:active{transform:rotate(-2deg)translate(2px,2px)}.custom-slot__icon{background:var(--color-surface);border:var(--line) solid var(--color-border);border-radius:50%;place-items:center;width:44px;height:44px;font-size:1.5rem;line-height:1;display:grid}.custom-slot__action{font-size:.875rem;text-decoration:underline}.custom-slot--busy{cursor:default;color:var(--color-muted);font-weight:600}.custom-slot--failed{background:var(--color-error-bg)}.custom-slot__spinner{border:var(--line-bold) solid var(--color-secondary);border-top-color:var(--color-text);border-radius:50%;width:30px;height:30px;animation:.9s linear infinite spin}.create-sound{gap:var(--space-3);margin-top:var(--space-5);flex-direction:column;display:flex}.create-sound__title{margin:0}.create-sound__hint{color:var(--color-muted);margin:0}.create-sound__count{margin-top:calc(-1 * var(--space-2));font-family:var(--font-mono);color:var(--color-muted);text-align:right;font-size:.8125rem}.create-sound__count--over,.create-sound__warn{color:var(--color-danger)}.create-sound__warn{margin:0;font-weight:600}
