@font-face{font-family:Geist;font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/geist.woff2) format("woff2")}@font-face{font-family:Faustina;font-style:normal;font-weight:300 400;font-display:swap;src:url(/fonts/faustina.woff2) format("woff2")}:root{--font: Geist, "Helvetica Neue", Helvetica, Arial, sans-serif;--serif: Faustina, Georgia, "Times New Roman", serif;--text-xs: .6875rem;--text-sm: .75rem;--text-md: .8125rem;--text-lg: .9375rem;--text-xl: 1.375rem;--text-score: 2.75rem;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 32px;--radius-sm: 6px;--radius: 10px;--radius-lg: 16px;--radius-pill: 999px;--gutter: 16px;--card-pad: 16px;--z-hud: 3;--z-sticky: 10;--z-backdrop: 20;--ease-out: cubic-bezier(.16, 1, .3, 1);--fast: .16s;--suit-red: #e5352d;--suit-yellow: #f2b51d;--suit-green: #2f9e57;--suit-blue: #2e6be0;--suit-black: #17161a;--card-paper: #fbfaf7;--card-ink: #17161a}:root,:root[data-theme=dark]{color-scheme:dark;--bg: #0f0e0d;--bg-glow: #161511;--surface: #151412;--sunken: #1b1a17;--raised: #22201d;--glass: rgba(21, 20, 18, .84);--line: rgba(250, 250, 249, .08);--line-strong: rgba(250, 250, 249, .16);--line-3: rgba(250, 250, 249, .25);--ink: #fafaf9;--ink-2: #d6d4cf;--ink-3: #a6a39c;--ink-4: #85827c;--backdrop: rgba(0, 0, 0, .6);--shadow: 0 16px 48px rgba(0, 0, 0, .5);--card-shadow: none;--up: #4cc38a;--down: #f07a74;--play-shadow: 0 1px 1px rgba(0, 0, 0, .35), 0 6px 14px rgba(0, 0, 0, .35)}:root[data-theme=light]{color-scheme:light;--bg: #f3f1ec;--bg-glow: #fbfaf7;--surface: #ffffff;--sunken: #f1eee9;--raised: #e8e4dd;--glass: rgba(255, 255, 255, .9);--line: rgba(28, 25, 21, .1);--line-strong: rgba(28, 25, 21, .18);--line-3: rgba(28, 25, 21, .3);--ink: #1a1713;--ink-2: #39352f;--ink-3: #625d55;--ink-4: #7a756c;--backdrop: rgba(28, 25, 21, .32);--shadow: 0 18px 48px rgba(28, 25, 21, .16), 0 2px 6px rgba(28, 25, 21, .06);--card-shadow: 0 1px 2px rgba(28, 25, 21, .05), 0 4px 14px rgba(28, 25, 21, .04);--up: #13814a;--down: #c2322b;--play-shadow: 0 1px 1px rgba(28, 25, 21, .18), 0 6px 14px rgba(28, 25, 21, .14)}*,*:before,*:after{box-sizing:border-box;touch-action:manipulation}html{height:100%;-webkit-text-size-adjust:100%}body{height:100%;margin:0;background:radial-gradient(ellipse 80% 60% at 50% 45%,var(--bg-glow),transparent 70%),var(--bg);color:var(--ink);font:400 var(--text-md)/1.45 var(--font);-webkit-font-smoothing:antialiased;overflow:hidden}#app{position:fixed;left:0;right:0;top:var(--app-top, 0px);height:var(--app-h, 100%);display:flex;flex-direction:column;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}h1,h2,h3,p,ul,ol,dl,dd{margin:0}h1,h2,h3{font-weight:500}ul,ol{padding:0;list-style:none}button,input,select{font:inherit;color:inherit}button{cursor:pointer;border:0;background:none;padding:0}button:disabled{cursor:not-allowed}svg{display:block}.card,button,.room-row,.picker-card{-webkit-tap-highlight-color:transparent}@media(pointer:coarse){input.input:not(.code-input),select.select{font-size:16px}}:focus-visible{outline:2px solid var(--ink);outline-offset:2px}::selection{background:color-mix(in oklch,var(--ink) 22%,transparent)}[hidden]{display:none!important}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.screen{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;padding:var(--space-6) var(--gutter)}.screen-inner{width:100%;max-width:920px;margin:0 auto;display:flex;flex-direction:column;gap:var(--space-5)}.screen-inner.is-narrow{max-width:460px;margin:auto;padding-bottom:6vh}.hero{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);padding:var(--space-2) 0}.hero-text{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.hero-title{font:400 3.25rem/1 var(--serif);letter-spacing:-.02em}.hero-sub{color:var(--ink-3);font-size:var(--text-lg);max-width:40ch}.hero-cards{position:relative;width:190px;height:130px;flex:none}.hero-cards .card{position:absolute;top:0}.lobby-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-4);align-items:start}.stack{display:flex;flex-direction:column;gap:var(--space-4)}@media(max-width:760px){.lobby-grid{grid-template-columns:minmax(0,1fr)}.lobby-grid>.stack{display:contents}.lobby-rank{order:3}.hero-cards{display:none}.hero-title{font-size:2.5rem}}.game{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:var(--space-3);width:100%;max-width:1200px;height:100%;margin:0 auto;padding:var(--space-3) var(--gutter) var(--space-4);min-height:0}.game-top{display:flex;justify-content:center;min-width:0}.game-top .dock{width:100%;max-width:820px}.seats{display:flex;justify-content:center;gap:var(--space-3);min-width:0;overflow-x:auto;padding:var(--space-3) 2px 2px;scrollbar-width:none}.seats::-webkit-scrollbar{display:none}.table-center{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:var(--space-4) var(--space-6);min-height:0}.pile{display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.pile-label{color:var(--ink-3);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.table-info{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2);min-width:150px}.hand-panel{padding-bottom:var(--space-3)}.hand-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-2) var(--space-3);margin-bottom:var(--space-2)}.hand-title{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2) var(--space-3);min-width:0}.hand-title h3{font-size:var(--text-md);font-weight:500;white-space:nowrap}.hand-title .eyebrow{white-space:nowrap}.hand-actions{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}@media(max-width:640px){.hand-title .status-chip{flex-basis:100%;white-space:normal;border-radius:var(--radius);padding:6px 10px}.hand-actions{width:100%}.game{gap:var(--space-2);padding:var(--space-2) var(--space-3) var(--space-3)}.seats{justify-content:flex-start}.table-center{gap:var(--space-4)}.table-info{min-width:0}}.card{position:relative;flex:none;width:var(--card-w, 92px);aspect-ratio:2 / 3;border-radius:9%/6%;box-shadow:var(--play-shadow);transition:transform var(--fast) var(--ease-out),box-shadow var(--fast) var(--ease-out),filter var(--fast) var(--ease-out);user-select:none;-webkit-user-select:none}.card>svg{width:100%;height:100%}.suit-red{--c: var(--suit-red)}.suit-yellow{--c: var(--suit-yellow)}.suit-green{--c: var(--suit-green)}.suit-blue{--c: var(--suit-blue)}.suit-wild{--c: var(--suit-black)}.card .paper{fill:var(--card-paper)}.card .face{fill:var(--c)}.card .oval{fill:var(--card-paper)}.card .c-fill{fill:var(--c)}.card .c-stroke{stroke:var(--c)}.card .outlined{stroke:var(--card-ink);stroke-width:2.4;stroke-linejoin:round;paint-order:stroke}.card .mini{stroke:var(--card-ink);stroke-width:2.2}.card .on-face{--c: var(--card-paper)}.card text{font-family:var(--font);font-weight:600;text-anchor:middle;dominant-baseline:central}.card .fig{fill:var(--c);stroke:var(--card-ink);stroke-width:2.6;stroke-linejoin:round;paint-order:stroke}.card .fig-shadow{fill:var(--card-ink)}.card .fig-line{fill:var(--c);stroke:var(--card-ink);stroke-width:1.4;paint-order:stroke}.card .corner{fill:var(--card-paper);stroke:var(--card-ink);stroke-width:2.2;stroke-linejoin:round;paint-order:stroke}.card .back-word{fill:#f5cf22;stroke:var(--card-ink);stroke-width:2.4;stroke-linejoin:round;paint-order:stroke;font-size:34px;letter-spacing:-.5px}.card .back-shadow{fill:var(--card-ink);font-size:34px;letter-spacing:-.5px}.hand{position:relative;width:100%}.hand .card{position:absolute;bottom:0;transition:left .24s var(--ease-out),transform var(--fast) var(--ease-out),box-shadow var(--fast) var(--ease-out),filter var(--fast) var(--ease-out)}.hand .card.playable{cursor:pointer}.hand .card.playable:hover{transform:translateY(-10px)}.hand .card.selected,.hand .card.selected:hover{transform:translateY(-22px);box-shadow:0 0 0 2px var(--ink),var(--play-shadow)}.hand .card.dim{filter:saturate(.7) brightness(.74)}.hand-empty{display:grid;place-items:center;height:100%;color:var(--ink-3)}.seat{flex:none;width:212px;padding:var(--space-3) var(--space-3) var(--space-3);transition:border-color var(--fast) var(--ease-out)}.seat.is-turn{border-color:var(--line-3)}.seat.is-offline{opacity:.55}.seat-head{display:flex;align-items:center;gap:var(--space-2);min-width:0;margin-bottom:var(--space-3)}.seat-name{flex:1;min-width:0;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.seat-count{color:var(--ink-3);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.seat-fan{position:relative;--card-w: 34px;height:calc(var(--card-w) * 1.5)}.seat-fan .card{position:absolute;top:0;box-shadow:0 1px 2px #0000004d;transition:left .24s var(--ease-out),transform var(--fast) var(--ease-out)}.seat-fan .card.selected{transform:translateY(-8px);box-shadow:0 0 0 1.5px var(--ink),0 1px 2px #0000004d}.seat-foot{display:flex;align-items:center;gap:var(--space-2);min-height:22px;margin-top:var(--space-2);color:var(--ink-3);font-size:var(--text-xs)}.deck{position:relative;--card-w: 100px;width:var(--card-w);aspect-ratio:2 / 3}.deck .card{position:absolute;inset:0}.deck .card:nth-child(1){transform:translate(-4px,-4px)}.deck .card:nth-child(2){transform:translate(-2px,-2px)}.deck.can-draw .card:last-child{cursor:pointer;box-shadow:0 0 0 2px var(--ink-3),var(--play-shadow)}.deck.can-draw .card:last-child:hover{transform:translateY(-4px);box-shadow:0 0 0 2px var(--ink),var(--play-shadow)}.discard{position:relative;--card-w: 100px}.deck.must-draw .card:last-child{box-shadow:0 0 0 2px var(--ink),var(--play-shadow);animation:ask-draw 1.6s ease-in-out infinite}@keyframes ask-draw{50%{box-shadow:0 0 0 5px color-mix(in srgb,var(--ink) 28%,transparent),0 0 0 2px var(--ink),var(--play-shadow)}}.pile-label.is-hint{color:var(--ink);font-weight:500}#flight-layer{position:fixed;inset:0;z-index:15;pointer-events:none}.flight{position:fixed;transform-origin:0 0;will-change:transform}.flight .card{box-shadow:0 10px 24px #00000059}.discard .card.settle{animation:settle .2s var(--ease-out)}@keyframes settle{0%{opacity:.4;transform:scale(.97)}}.hero-cards .card{--card-w: 78px}@media(max-width:640px){.deck,.discard{--card-w: 76px}.seat{width:168px}.seat-fan{--card-w: 28px}}.uno-call{animation:uno-pulse 1.4s ease-in-out infinite}@keyframes uno-pulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--suit-red) 45%,transparent)}50%{box-shadow:0 0 0 6px color-mix(in srgb,var(--suit-red) 0%,transparent)}}@media(prefers-reduced-motion:reduce){.uno-call{animation:none}}.panel{position:relative;min-width:0;padding:var(--card-pad);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--glass);box-shadow:var(--card-shadow);-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15)}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:24px;margin-bottom:var(--space-3)}.panel-head h3{font-size:var(--text-md);font-weight:500}.panel-section:not(:first-child){margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--line)}.eyebrow{color:var(--ink-3);font-size:var(--text-sm);font-weight:500;white-space:nowrap}.headline{font:400 1.5rem/1.15 var(--serif);letter-spacing:-.01em;text-wrap:balance}.muted{color:var(--ink-3)}.num{font-variant-numeric:tabular-nums}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);flex:none;height:36px;padding:0 14px;border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:color-mix(in srgb,var(--surface) 60%,transparent);color:var(--ink);font-weight:500;white-space:nowrap;transition:background var(--fast) var(--ease-out),border-color var(--fast) var(--ease-out),color var(--fast)}.button:hover:not(:disabled){border-color:var(--line-3);background:var(--sunken)}.button:disabled{opacity:.45}.button.primary{border-color:var(--ink);background:var(--ink);color:var(--bg)}.button.primary:hover:not(:disabled){border-color:var(--ink-2);background:var(--ink-2);color:var(--bg)}.button.danger{border-color:transparent;background:var(--suit-red);color:#fff}.button.danger:hover:not(:disabled){border-color:transparent;background:color-mix(in srgb,var(--suit-red) 86%,#fff)}.button.quiet{border-color:transparent;background:transparent;color:var(--ink-2)}.button.quiet:hover:not(:disabled){background:var(--raised);color:var(--ink)}.button.block{width:100%}.button.sm{height:30px;padding:0 12px;font-size:var(--text-sm)}.icon-button{display:grid;place-items:center;flex:none;width:34px;height:32px;border-radius:var(--radius-pill);color:var(--ink-2);transition:background var(--fast) var(--ease-out),color var(--fast)}.icon-button:hover{background:var(--raised);color:var(--ink)}.field{display:flex;flex-direction:column;gap:var(--space-2)}.field>label{color:var(--ink-3);font-size:var(--text-sm);font-weight:500}.input{width:100%;min-width:0;height:38px;padding:0 var(--space-3);border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--sunken);color:var(--ink);font-size:var(--text-lg);transition:border-color var(--fast) var(--ease-out)}.input::placeholder{color:var(--ink-4)}.input:focus{outline:none;border-color:var(--ink-3)}.code-input{font-family:var(--serif);font-size:1.25rem;letter-spacing:.24em;text-transform:uppercase;text-align:center}.input-row{display:flex;gap:var(--space-2)}.segmented{display:grid;grid-template-columns:1fr 1fr;padding:3px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--sunken)}.segmented button{height:30px;border-radius:var(--radius-pill);color:var(--ink-3);font-weight:500;transition:background var(--fast) var(--ease-out),color var(--fast)}.segmented button:hover{color:var(--ink)}.segmented button[aria-checked=true]{background:var(--raised);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line-strong)}.status-chip{display:inline-flex;align-items:center;gap:6px;min-width:0;max-width:100%;padding:4px 10px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--sunken);color:var(--ink);font-size:var(--text-xs);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-chip>i{flex:none;width:6px;height:6px;border-radius:50%;background:var(--ink-4)}.status-chip.is-live>i{background:var(--up);box-shadow:0 0 0 3px color-mix(in srgb,var(--up) 22%,transparent)}.status-chip.is-alert{border-color:color-mix(in srgb,var(--suit-red) 45%,transparent);color:var(--down)}.status-chip.is-alert>i{background:var(--down)}.swatch-dot{display:inline-block;width:10px;height:10px;border-radius:50%;box-shadow:inset 0 0 0 1px #0003}.swatch-dot.red{background:var(--suit-red)}.swatch-dot.yellow{background:var(--suit-yellow)}.swatch-dot.green{background:var(--suit-green)}.swatch-dot.blue{background:var(--suit-blue)}.avatar{display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:50%;background:var(--raised);color:var(--ink);font-size:var(--text-sm);font-weight:600}.tag{display:inline-flex;align-items:center;padding:2px 8px;border:1px solid var(--line-strong);border-radius:var(--radius-pill);color:var(--ink-2);font-size:var(--text-xs);font-weight:500;white-space:nowrap}.tag.is-strong{border-color:var(--ink);background:var(--ink);color:var(--bg)}.dock{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);height:44px;padding:0 6px 0 16px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--glass);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:inset 0 1px color-mix(in srgb,var(--ink) 6%,transparent);min-width:0}.dock-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.dock-right{display:flex;align-items:center;gap:2px;flex:none}.dock-brand{flex:none;font:400 1.25rem/1 var(--serif);letter-spacing:.02em}.dock-status{display:flex;align-items:center;gap:8px;min-width:0;color:var(--ink-2);font-size:var(--text-sm);font-weight:500;white-space:nowrap}.dock-status>i{flex:none;width:7px;height:7px;border-radius:50%;background:var(--ink-4)}.dock-status.is-live>i{background:var(--up);box-shadow:0 0 0 3px color-mix(in srgb,var(--up) 22%,transparent)}.dock-status b{color:var(--ink);font-weight:500}.dock-turn{min-width:0;overflow:hidden;text-overflow:ellipsis}.dock-code{font:400 var(--text-md)/1 var(--serif);letter-spacing:.2em;color:var(--ink-3);padding:0 var(--space-2) 0 var(--space-1)}@media(max-width:420px){.dock{gap:var(--space-2);padding:0 4px 0 14px}.dock-left{gap:var(--space-2)}.dock-code{letter-spacing:.12em;padding:0 4px}.dock .icon-button{width:32px}}@media(max-width:480px){.dock-code{display:none}.chat-button{padding:0 10px 0 9px;margin:0 2px}}.backdrop{position:fixed;inset:0;z-index:var(--z-backdrop);display:grid;place-items:center;padding:var(--gutter);background:var(--backdrop);animation:fade-in var(--fast) var(--ease-out)}.modal{width:100%;max-width:380px;max-height:calc(100vh - 2 * var(--gutter));overflow:auto;padding:var(--space-5);border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow);animation:dialog-in var(--fast) var(--ease-out)}.modal.is-wide{max-width:520px}.modal h2{font:400 1.375rem/1.2 var(--serif);margin-bottom:var(--space-2)}@keyframes fade-in{0%{opacity:0}}@keyframes dialog-in{0%{opacity:0;transform:translateY(6px) scale(.98)}}.color-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2);margin:var(--space-4) 0}.color-choice{display:flex;align-items:center;gap:var(--space-3);height:52px;padding:0 var(--space-4);border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--sunken);font-weight:500;transition:border-color var(--fast) var(--ease-out),background var(--fast)}.color-choice:hover{border-color:var(--line-3);background:var(--raised)}.color-choice .swatch-dot{width:18px;height:18px}.toast-area{position:fixed;top:calc(64px + env(safe-area-inset-top,0px));left:50%;z-index:var(--z-backdrop);display:flex;flex-direction:column;align-items:center;gap:var(--space-2);transform:translate(-50%);pointer-events:none}.toast{padding:8px 14px;border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--surface);box-shadow:var(--shadow);font-size:var(--text-sm);font-weight:500;animation:dialog-in var(--fast) var(--ease-out)}.toast.err{color:var(--down)}.toast.ok{color:var(--up)}.toast.uno{font:400 var(--text-lg)/1.2 var(--serif)}.toast.uno b{font-weight:400;color:var(--suit-red);letter-spacing:.04em}.conn-pill{position:fixed;bottom:calc(var(--gutter) + env(safe-area-inset-bottom,0px));left:var(--gutter);z-index:var(--z-hud)}.room-list{display:flex;flex-direction:column;gap:var(--space-1)}.room-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-3);width:100%;padding:10px var(--space-3);border-radius:var(--radius);text-align:left;transition:background var(--fast) var(--ease-out)}.room-row:hover:not(:disabled){background:var(--raised)}.room-row:disabled{opacity:.5}.room-code{font:400 var(--text-lg)/1 var(--serif);letter-spacing:.16em;min-width:64px}.room-host{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-sub{color:var(--ink-3);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.room-go{color:var(--ink-3);font-size:var(--text-sm);white-space:nowrap}.room-row:hover:not(:disabled) .room-go{color:var(--ink)}.empty-note{color:var(--ink-3);padding:var(--space-4) 0}.player-list{display:flex;flex-direction:column}.player-row{display:flex;align-items:center;gap:var(--space-3);padding:10px 0}.player-row+.player-row{border-top:1px solid var(--line)}.player-row .name{flex:1;min-width:0;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-tools{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2);margin-bottom:var(--space-2)}.room-search{height:36px;font-size:var(--text-md)}.room-filter{min-width:168px}.pager{display:flex;align-items:center;justify-content:space-between;margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--line)}.pager-buttons{display:flex;gap:var(--space-1)}.icon-button:disabled{opacity:.35;cursor:default;background:none}.icon-button.is-admin{color:var(--ink)}@media(max-width:420px){.room-tools{grid-template-columns:minmax(0,1fr)}}.rank-list{display:flex;flex-direction:column}.rank-row{display:grid;grid-template-columns:24px minmax(0,1fr) auto auto auto;align-items:center;gap:var(--space-3);padding:9px var(--space-2);border-radius:var(--radius-sm)}.rank-row+.rank-row{border-top:1px solid var(--line)}.rank-row.is-me,.rank-row.is-table{background:var(--sunken)}.rank-pos{font:400 var(--text-lg)/1 var(--serif);color:var(--ink-3);text-align:center;font-variant-numeric:tabular-nums}.rank-pos.is-top{color:var(--ink)}.rank-name{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rank-stat{color:var(--ink-3);font-size:var(--text-sm);white-space:nowrap}.rank-stat b{color:var(--ink);font-weight:500}.rank-points{color:var(--ink-3);font-size:var(--text-sm);min-width:56px;text-align:right;white-space:nowrap}.rank-row .tag{grid-column:auto}.rank-row:not(:has(.tag)) .rank-stat{grid-column:4}.finish-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:var(--space-4);align-items:start}.finish-hero{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:var(--space-3) var(--space-5);margin-top:var(--space-2)}.finish-title{font-size:2.5rem}.finish-score{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.finish-points{font:400 var(--text-score)/1 var(--serif);letter-spacing:-.02em}.result-list{display:flex;flex-direction:column}.result-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto 32px;align-items:center;gap:var(--space-3);padding:10px 0}.result-row+.result-row{border-top:1px solid var(--line)}.result-main{display:flex;flex-direction:column;min-width:0}.result-name{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-row.is-winner .result-name{font:400 var(--text-lg)/1.2 var(--serif)}.result-sub{color:var(--ink-3);font-size:var(--text-sm)}.result-hand{display:flex;align-items:center;--card-w: 26px}.result-hand .card{box-shadow:0 1px 2px #0000004d}.result-hand .card+.card{margin-left:-12px}.result-more{margin-left:6px;color:var(--ink-3);font-size:var(--text-xs)}.result-wins{font:400 var(--text-xl)/1 var(--serif);text-align:right;color:var(--ink-2)}.finish-actions{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}@media(max-width:760px){.finish-grid{grid-template-columns:minmax(0,1fr)}.finish-title{font-size:2rem}.finish-score{align-items:flex-start}}@media(max-width:420px){.result-hand{display:none}}.toggle-list{display:flex;flex-direction:column;margin:var(--space-4) 0}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) 0;cursor:pointer}.toggle-row+.toggle-row{border-top:1px solid var(--line)}.toggle-text{display:flex;flex-direction:column;gap:2px;min-width:0}.toggle-label{font-weight:500;font-size:var(--text-lg)}.toggle-hint{color:var(--ink-3);font-size:var(--text-sm)}.switch{appearance:none;-webkit-appearance:none;position:relative;flex:none;width:44px;height:26px;margin:0;border-radius:var(--radius-pill);background:var(--raised);box-shadow:inset 0 0 0 1px var(--line-strong);cursor:pointer;transition:background var(--fast) var(--ease-out)}.switch:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:var(--ink-3);transition:transform var(--fast) var(--ease-out),background var(--fast)}.switch:checked{background:var(--ink)}.switch:checked:after{transform:translate(18px);background:var(--bg)}.picker-tabs{display:flex;gap:var(--space-1);margin:var(--space-4) 0 var(--space-3);overflow-x:auto;scrollbar-width:none}.picker-tabs::-webkit-scrollbar{display:none}.picker-tab{display:inline-flex;align-items:center;gap:6px;flex:none;height:30px;padding:0 12px;border:1px solid var(--line);border-radius:var(--radius-pill);color:var(--ink-3);font-weight:500}.picker-tab:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--suit-black);box-shadow:inset 0 0 0 1px var(--line-3)}.picker-tab.red:before{background:var(--suit-red)}.picker-tab.yellow:before{background:var(--suit-yellow)}.picker-tab.green:before{background:var(--suit-green)}.picker-tab.blue:before{background:var(--suit-blue)}.picker-tab.wild:before{background:conic-gradient(var(--suit-red) 0 25%,var(--suit-blue) 0 50%,var(--suit-green) 0 75%,var(--suit-yellow) 0)}.picker-tab[aria-selected=true]{border-color:var(--line-3);background:var(--raised);color:var(--ink)}.picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(58px,1fr));gap:var(--space-2);--card-w: 100%}.picker-card{display:block;width:100%;border-radius:9%/6%;transition:transform var(--fast) var(--ease-out)}.picker-card:hover:not(:disabled){transform:translateY(-3px)}.picker-card:disabled{opacity:.4}.picker-card .card{box-shadow:0 1px 2px #0000004d}.picker-tray{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);min-height:64px;margin-top:var(--space-3);padding:var(--space-2);border:1px dashed var(--line-strong);border-radius:var(--radius)}.picker-card.is-small{width:38px}.dock-brand,.hero-title{cursor:default;color:inherit;touch-action:manipulation;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.dock-brand:focus-visible{outline:none}.move-feed{display:flex;flex-direction:column;gap:var(--space-2);width:220px;min-width:0;align-self:center}.move-list{display:flex;flex-direction:column;gap:2px}.move-line{padding:6px 10px;border-radius:var(--radius-sm);color:var(--ink-4);font-size:var(--text-sm);line-height:1.35;overflow-wrap:anywhere}.move-line.is-newest{color:var(--ink);font-size:var(--text-lg);font-weight:500;background:var(--sunken);border:1px solid var(--line);animation:move-in 1.4s var(--ease-out)}.move-list .move-line:nth-child(2){color:var(--ink-3)}@keyframes move-in{0%{background:var(--raised);border-color:var(--line-3);translate:0 -4px}15%{translate:0 0}to{background:var(--sunken);border-color:var(--line)}}.move-ticker{display:none}@media(max-width:900px){.move-feed{display:none}.move-ticker{display:flex;justify-content:center;flex-basis:100%;min-width:0}.move-ticker .move-line{max-width:100%;text-align:center;font-size:var(--text-md)}}.turn-bar{position:absolute;left:var(--space-3);right:var(--space-3);bottom:0;height:2px;border-radius:2px;background:var(--line);overflow:hidden}.turn-bar.is-top{top:0;bottom:auto;left:var(--space-4);right:var(--space-4)}.turn-bar>i{display:block;height:100%;background:var(--up);transform-origin:left center;transition:transform .25s linear,background var(--fast) var(--ease-out)}.turn-bar.is-urgent>i{background:var(--down)}.dock-clock{padding:1px 7px;border:1px solid var(--line);border-radius:var(--radius-pill);color:var(--ink-3);font-size:var(--text-xs);font-weight:500;font-variant-numeric:tabular-nums;min-width:34px;text-align:center}.dock-clock.is-urgent{color:var(--down);border-color:color-mix(in srgb,var(--down) 45%,transparent)}.live-pill{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;padding:4px 11px 4px 10px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--glass);color:var(--ink-3);font-size:var(--text-sm);font-weight:500;white-space:nowrap}.live-pill b{color:var(--ink);font-weight:500}.live-pill>i{flex:none;width:7px;height:7px;margin-right:2px;border-radius:50%;background:var(--up);box-shadow:0 0 0 3px color-mix(in srgb,var(--up) 22%,transparent),0 0 10px color-mix(in srgb,var(--up) 60%,transparent)}@media(prefers-reduced-motion:no-preference){.live-pill>i{animation:breathe 1.6s ease-in-out infinite}}@keyframes breathe{50%{opacity:.55}}.live-sep{color:var(--ink-4)}.dock-live{align-self:center;border:0;background:none;padding:0 var(--space-2)}@media(max-width:760px){.dock-live{display:none}}.gate-top{display:flex;justify-content:center;margin-bottom:var(--space-3)}.gate{display:flex;flex-direction:column;gap:var(--space-3)}.gate-title{font-size:1.75rem;margin-top:var(--space-1)}.gate-field{margin:var(--space-2) 0}.field-help{color:var(--ink-3);font-size:var(--text-sm)}.field-help.is-error{color:var(--down)}.input.is-invalid{border-color:color-mix(in srgb,var(--down) 60%,transparent)}.input.is-invalid:focus{border-color:var(--down)}.notice{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-3) var(--space-5);border-color:var(--line-strong)}.notice-text{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1 1 320px}.notice-text h3{font:400 var(--text-xl)/1.2 var(--serif)}.notice-actions{display:flex;gap:var(--space-2);flex:none}.chat-button{position:relative;display:inline-flex;align-items:center;gap:6px;flex:none;height:32px;margin:0 4px;padding:0 12px 0 10px;border:1px solid var(--line-strong);border-radius:var(--radius-pill);color:var(--ink);font-size:var(--text-md);font-weight:500;transition:background var(--fast) var(--ease-out),color var(--fast),border-color var(--fast)}.chat-button:hover{border-color:var(--ink-4)}.chat-button.is-on{background:var(--raised)}.chat-button.has-unread{background:var(--ink);color:var(--bg);border-color:var(--ink)}.chat-badge{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;padding:0 5px;border-radius:var(--radius-pill);background:var(--down);color:#fff;font:600 10px/18px var(--font);text-align:center;box-shadow:0 0 0 2px var(--bg);pointer-events:none}.chat-launch{position:absolute;right:var(--gutter);bottom:calc(var(--gutter) + env(safe-area-inset-bottom,0px));z-index:var(--z-sticky);display:inline-flex;align-items:center;gap:8px;height:46px;padding:0 18px 0 16px;border:1px solid var(--ink);border-radius:var(--radius-pill);background:var(--ink);color:var(--bg);box-shadow:0 10px 30px #00000059;font-weight:500;transition:transform var(--fast) var(--ease-out)}.chat-launch:active{transform:scale(.97)}.chat-launch.has-unread{animation:chat-nudge 2.4s ease-in-out infinite}@keyframes chat-nudge{0%,70%,to{transform:none}80%{transform:translateY(-3px)}90%{transform:none}}.chat-peek{position:absolute;right:var(--gutter);z-index:var(--z-sticky);display:flex;align-items:flex-start;gap:9px;max-width:min(320px,calc(100% - 2 * var(--gutter)));padding:10px 14px 10px 10px;border:1px solid var(--line-strong);border-radius:16px;background:var(--bg);box-shadow:0 14px 40px #0006;text-align:left;animation:chat-peek 4.5s var(--ease-out) both}.chat-peek.is-high{top:calc(68px + env(safe-area-inset-top,0px))}.chat-peek.is-low{bottom:calc(var(--gutter) + 58px + env(safe-area-inset-bottom,0px))}.chat-peek-body{display:flex;flex-direction:column;gap:1px;min-width:0}.chat-peek-body b{font-size:var(--text-sm);font-weight:500;color:var(--ink-3)}.chat-peek-body span{color:var(--ink);font-size:var(--text-lg);line-height:1.35;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere}@keyframes chat-peek{0%{opacity:0;transform:translateY(-6px)}6%,88%{opacity:1;transform:none}to{opacity:0}}.spectator-chat{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;height:44px}.word-form.is-hidden{display:none}.chat-dock{position:absolute;right:var(--gutter);bottom:calc(var(--gutter) + env(safe-area-inset-bottom,0px));z-index:var(--z-sticky);display:flex;flex-direction:column;width:min(360px,calc(100% - 2 * var(--gutter)));height:min(520px,calc(100% - 96px));padding:0;overflow:hidden;background:var(--bg);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:0 18px 50px #00000073,0 0 0 1px var(--line);animation:chat-in .22s var(--ease-out)}@keyframes chat-in{0%{opacity:0;transform:translateY(8px)}}.chat-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:10px 10px 10px 16px;border-bottom:1px solid var(--line)}.chat-head h3{font:400 var(--text-xl)/1.1 var(--serif)}.chat-list{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:2px;padding:12px 14px}.chat-hint,.chat-empty{color:var(--ink-4);font-size:var(--text-sm);text-align:center;padding:2px 8px 10px}.chat-msg{display:flex;gap:9px;align-items:flex-start}.chat-msg:not(.is-cont){margin-top:8px}.chat-msg:first-of-type{margin-top:0}.chat-av{width:26px;height:26px;flex:none;font-size:var(--text-xs)}.chat-av.is-ghost{visibility:hidden;height:0}.chat-body{min-width:0;display:flex;flex-direction:column;gap:1px}.chat-name{color:var(--ink-3);font-size:var(--text-sm);font-weight:500}.chat-msg.is-mine .chat-name{color:var(--ink-2)}.chat-text{color:var(--ink);font-size:var(--text-lg);line-height:1.4;overflow-wrap:anywhere;white-space:pre-wrap}.chat-form{display:flex;gap:var(--space-2);padding:10px;border-top:1px solid var(--line)}.chat-form .button{flex:none;height:38px}.chat-error{padding:0 12px 10px;margin-top:-2px;color:var(--down);font-size:var(--text-sm)}@media(max-width:760px){.chat-dock{left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom,0px));width:auto;height:min(440px,62%)}.chat-launch{right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px))}.chat-peek{right:12px}}.ending-banner{position:absolute;left:50%;bottom:calc(var(--gutter) + env(safe-area-inset-bottom,0px));z-index:var(--z-sticky);translate:-50% 0;display:flex;align-items:center;gap:var(--space-4);width:max-content;max-width:calc(100% - 2 * var(--gutter));padding:12px 12px 12px 20px;overflow:hidden;background:var(--bg);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:0 18px 50px #00000073,0 0 0 1px var(--line-strong);animation:ending-in .42s var(--ease-out) both}@keyframes ending-in{0%{opacity:0;transform:translateY(12px) scale(.98)}}.ending-text{display:flex;flex-direction:column;gap:2px;min-width:0}.ending-title{font:400 var(--text-xl)/1.15 var(--serif)}.ending-detail{color:var(--ink-3);font-size:var(--text-sm)}.ending-banner .button{flex:none}.ending-bar{position:absolute;left:0;bottom:0;height:2px;width:100%;background:var(--ink-3);transform-origin:0 50%;animation:ending-bar var(--ending-ms, 4.5s) linear both}@keyframes ending-bar{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.is-ending .hand-panel,.is-ending .word-panel,.is-ending .leilao-block .imp-result-actions{pointer-events:none}@media(max-width:760px){.ending-banner{bottom:calc(10px + env(safe-area-inset-bottom,0px));gap:var(--space-3);padding:10px 10px 10px 16px}}.lobby-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:32px}.back-button{padding-left:8px;gap:4px}.hero-art{flex:none;display:grid;place-items:center}@media(max-width:760px){.hero-art{display:none}}.hub-brand{font:400 var(--text-lg)/1 var(--serif);letter-spacing:.01em;color:var(--ink-2)}.hub-brand span{margin:0 .25em;color:var(--ink-4)}.hub-top-right{display:flex;align-items:center;gap:var(--space-2)}.hub-hero{padding-top:var(--space-4)}.hub-hero .hero-title{font-size:4rem}.hub-me{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);min-height:36px;margin-top:calc(var(--space-2) * -1)}.hub-name{font-weight:500}.hub-name-form{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2)}.hub-name-form .input{width:200px}.hub-name-form .field-help{flex-basis:100%}.hub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.game-tile{display:flex;flex-direction:column;width:100%;height:100%;padding:0;overflow:hidden;text-align:left;cursor:pointer;transition:border-color var(--fast) var(--ease-out),transform var(--fast) var(--ease-out)}.game-tile:hover{border-color:var(--line-3)}.game-tile:hover .tile-go{background:var(--ink);color:var(--bg);border-color:var(--ink)}.game-tile:active{transform:scale(.995)}.tile-art{display:grid;place-items:center;height:168px;overflow:hidden;border-bottom:1px solid var(--line);background:radial-gradient(ellipse 70% 80% at 50% 60%,var(--bg-glow),transparent 70%),var(--sunken)}.tile-cards{position:relative;width:132px;height:112px}.tile-cards .card{position:absolute;top:4px;--card-w: 64px}.tile-body{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--card-pad);flex:1}.tile-title{font:400 2rem/1.05 var(--serif);letter-spacing:-.015em}.tile-text{max-width:46ch}.tile-new{margin-left:4px;vertical-align:1px}.tile-foot{display:flex;align-items:center;gap:var(--space-3);margin-top:auto;padding-top:var(--space-3)}.tile-foot .status-chip b{font-weight:600}.tile-meta{color:var(--ink-3);font-size:var(--text-sm)}.tile-go{display:inline-flex;align-items:center;gap:4px;height:32px;margin-left:auto;padding:0 10px 0 14px;border:1px solid var(--line-strong);border-radius:var(--radius-pill);font-weight:500;transition:background var(--fast),color var(--fast),border-color var(--fast)}@media(max-width:760px){.hub-grid{grid-template-columns:minmax(0,1fr)}.hub-hero .hero-title{font-size:3rem}.tile-art{height:132px}}@media(max-width:420px){.tile-meta{display:none}}.bomb{position:relative;width:var(--bomb-size, 200px);height:var(--bomb-size, 200px);flex:none}.bomb-svg{position:relative;width:100%;height:100%;overflow:visible}.bomb-body{stroke:#ffffff12;stroke-width:1.5}.bomb-cap{fill:#34312d;stroke:#ffffff14}:root[data-theme=light] .bomb-body{stroke:none}.bomb-text{fill:#fbfaf7;font:400 54px/1 var(--serif);letter-spacing:.04em}.bomb-text.is-long{font-size:44px}.bomb.is-ticking .bomb-svg{animation:bomb-breathe var(--beat, 1.4s) ease-in-out infinite;transform-origin:50% 56%}.bomb:before{content:"";position:absolute;left:50%;top:56%;width:150%;height:150%;border-radius:50%;translate:-50% -50%;background:radial-gradient(circle,var(--suit-red) 0%,transparent 62%);opacity:calc(var(--danger, 0) * .4);transition:opacity .4s linear;pointer-events:none}.bomb.is-idle:before,.bomb.is-boom:before{opacity:0}.bomb.is-ticking .bomb-spark{animation:spark .5s steps(2) infinite}.bomb.is-idle .bomb-spark{opacity:.85}@keyframes bomb-breathe{50%{transform:scale(calc(1.02 + var(--danger, 0) * .03))}}@keyframes spark{50%{opacity:.55}}.bomb-flash{fill:var(--suit-red);opacity:0}.bomb.is-boom .bomb-flash{animation:boom-flash .9s var(--ease-out)}.bomb.is-boom .bomb-spark{opacity:0}.bomb-ring{position:absolute;left:50%;top:56%;width:70%;height:70%;border-radius:50%;translate:-50% -50%;pointer-events:none;opacity:0}.bomb.is-boom .bomb-ring{animation:boom-ring .9s var(--ease-out)}@keyframes boom-flash{0%{opacity:.9}to{opacity:0}}@keyframes boom-ring{0%{opacity:.7;scale:.9;box-shadow:0 0 0 3px var(--suit-red)}to{opacity:0;scale:1.9;box-shadow:0 0 0 1px var(--suit-red)}}.bomb-pointer{position:absolute;left:50%;top:56%;width:0;height:0;transition:transform .42s var(--ease-out);pointer-events:none}.bomb-pointer i{position:absolute;left:-7px;top:calc(var(--bomb-size, 200px) * -.5 - 6px);width:0;height:0;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:10px solid var(--ink);translate:0 -100%}.bomb-game{grid-template-rows:auto minmax(0,1fr) auto}.bomb-table{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:0;overflow:hidden}.bomb-ring-wrap{position:relative;flex:none}.bomb-center{position:absolute;left:50%;top:50%;display:flex;flex-direction:column;align-items:center;gap:26px;translate:-50% -42%;width:60%}.bomb-typing{max-width:100%;min-height:1.6em;padding:2px 12px;border-radius:var(--radius-pill);font:400 1.5rem/1.3 var(--serif);text-align:center;overflow-wrap:anywhere;color:var(--ink)}.bomb-typing .hl{font-weight:inherit;color:var(--ink);background:color-mix(in srgb,var(--ink) 14%,transparent);border-radius:4px;padding:0 1px}.bomb-typing.is-empty,.bomb-ring-wrap.is-compact .bomb-typing.is-empty{font:400 var(--text-md)/1.6 var(--font);color:var(--ink-4)}.bomb-typing.is-note{padding:0}.bomb-typing.is-leftover{display:flex;flex-direction:column;align-items:center;gap:2px;animation:fade-in .3s var(--ease-out)}.bomb-leftover-who{font:400 var(--text-sm)/1.2 var(--font);color:var(--ink-3);white-space:nowrap}.bomb-leftover-word{color:var(--ink-3)}.bomb-leftover-word .hl{color:var(--ink-2)}.bomb-leftover-word i{font-style:normal;color:var(--ink-4)}.bomb-strip-center .bomb-typing.is-leftover{align-items:flex-start}.bomb-note{font:500 var(--text-sm)/1.2 var(--font);padding:5px 12px;animation:note 2.2s ease-in-out both}@keyframes note{0%{opacity:0}8%{opacity:1}85%{opacity:1}to{opacity:0}}.is-shake{animation:shake .42s ease-in-out}@keyframes shake{20%{translate:-5px 0}40%{translate:4px 0}60%{translate:-3px 0}80%{translate:2px 0}}.bomb-seat{position:absolute;display:flex;flex-direction:column;align-items:center;gap:3px;width:112px;translate:-50% -50%;text-align:center;transition:opacity var(--fast)}.bomb-seat .avatar{width:40px;height:40px;border:1px solid var(--line-strong);background:var(--surface);font-size:var(--text-md);transition:box-shadow .24s var(--ease-out),background .24s}.bomb-seat-name{max-width:100%;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bomb-seat.is-me .bomb-seat-name:after{content:" (você)";color:var(--ink-3);font-weight:400}.bomb-seat-word{max-width:100%;color:var(--ink-3);font-size:var(--text-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bomb-seat-word .hl{color:var(--ink);font-weight:600}.bomb-seat-word.is-blank{visibility:hidden}.bomb-seat-off{color:var(--ink-4);font-size:var(--text-xs)}.bomb-seat.is-holder .avatar{background:var(--ink);color:var(--bg);border-color:var(--ink);box-shadow:0 0 0 4px color-mix(in srgb,var(--ink) 16%,transparent)}.bomb-seat.is-out{opacity:.4}.bomb-seat.is-hit .avatar{animation:hit .9s var(--ease-out)}.bomb-seat.is-hit{animation:shake .42s ease-in-out}.bomb-seat.is-ok .avatar{animation:ok .9s var(--ease-out)}@keyframes hit{0%{box-shadow:0 0 0 6px color-mix(in srgb,var(--suit-red) 55%,transparent)}}@keyframes ok{0%{box-shadow:0 0 0 3px color-mix(in srgb,var(--up) 35%,transparent)}}.bomb-ring-wrap.is-compact .bomb-seat{width:84px;gap:2px}.bomb-ring-wrap.is-compact .bomb-seat .avatar{width:32px;height:32px}.bomb-ring-wrap.is-compact .bomb-seat-name{font-size:var(--text-sm)}.bomb-ring-wrap.is-compact .bomb-seat-word{font-size:var(--text-xs);line-height:1.3}.bomb-ring-wrap.is-compact .bomb-seat.is-me .bomb-seat-name:after{content:""}.bomb-ring-wrap.is-compact .bomb-typing{font-size:1.2rem}.hearts{display:inline-flex;gap:2px;align-items:center}.heart path{fill:none;stroke:var(--ink-4);stroke-width:2}.heart.is-full path{fill:var(--suit-red);stroke:var(--suit-red)}.bomb-meta{position:absolute;left:0;top:0;display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2)}@media(max-width:640px){.bomb-meta{display:none}}.word-panel{display:flex;flex-direction:column;gap:var(--space-2);transition:border-color var(--fast)}.word-panel .hand-head{margin-bottom:0}.word-panel.is-turn{border-color:var(--line-3)}.word-form{display:flex;gap:var(--space-2)}.word-input{flex:1;min-width:0;height:44px;font-size:1.125rem;letter-spacing:.01em}.word-form .button{height:44px;padding:0 20px}.word-panel .field-help{min-height:1.2em}.letter-track{display:flex;align-items:center;gap:var(--space-3);min-width:0}.letter-row{display:flex;flex-wrap:wrap;gap:3px;min-width:0}.letter{display:grid;place-items:center;width:20px;height:22px;border-radius:5px;color:var(--ink-4);font-size:var(--text-xs);font-weight:600;background:var(--sunken);transition:background .24s,color .24s}.letter.is-on{background:var(--ink);color:var(--bg)}@media(max-width:640px){.letter-track{flex-direction:column;align-items:flex-start;gap:var(--space-1)}.letter{width:18px;height:20px}.word-input{font-size:16px}}@media(pointer:coarse){.word-input{font-size:18px}}.rules-list{display:flex;flex-direction:column;gap:var(--space-3)}.rules-list li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:var(--space-2);align-items:start;color:var(--ink-2)}.rules-list b{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--sunken);border:1px solid var(--line);font-size:var(--text-xs)}.rules-list em{font-style:normal;font-weight:600;color:var(--ink)}.finish-stats{display:flex;flex-wrap:wrap;gap:var(--space-5);margin-top:var(--space-4)}.finish-stats>div{display:flex;flex-direction:column;gap:2px;min-width:0}.finish-word{font:400 1.75rem/1.1 var(--serif);overflow-wrap:anywhere}.finish-bomb{align-self:center}.bomb-result{grid-template-columns:28px auto minmax(0,1fr) 32px}.result-place{color:var(--ink-3);font-weight:500}.bomb-result .result-name{display:flex;align-items:center;gap:6px}.bomb-table.is-strip{justify-content:flex-start;gap:var(--space-2)}.bomb-strip{display:flex;gap:var(--space-1);width:100%;flex:none;justify-content:safe center;overflow-x:auto;padding:4px 2px 2px;scrollbar-width:none;scroll-snap-type:x proximity}.bomb-strip::-webkit-scrollbar{display:none}.bomb-strip .bomb-seat{position:static;translate:none;flex:none;width:76px;gap:1px;padding:4px 2px;border-radius:var(--radius);scroll-snap-align:center}.bomb-strip .bomb-seat .avatar{width:28px;height:28px;font-size:var(--text-sm)}.bomb-strip .bomb-seat-name{font-size:var(--text-sm)}.bomb-strip .bomb-seat.is-me .bomb-seat-name:after{content:""}.bomb-strip .bomb-seat-word{font-size:var(--text-xs)}.bomb-strip .bomb-seat-off{display:none}.bomb-strip .bomb-seat.is-holder{background:var(--sunken);box-shadow:inset 0 0 0 1px var(--line-strong)}.bomb-strip-center{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;gap:var(--space-3);width:100%}.bomb-strip-center .bomb-typing{flex:0 1 auto;min-width:0;max-width:55%;text-align:left;font-size:1.35rem}.bomb-table.is-strip .bomb-meta{display:none}@media(max-width:640px){.bomb-game{gap:var(--space-2)}.word-panel{padding:10px 12px;gap:6px}.word-panel .word-title,.word-panel .word-hearts{display:none}.word-panel .hand-title .status-chip{margin:0}.word-panel .field-help.is-idle{display:none}.word-panel .field-help{min-height:0;font-size:var(--text-sm)}.word-input{height:48px}.word-form .button{height:48px;padding:0 16px}.letter-track{flex-direction:row;align-items:center;gap:var(--space-2)}.letter-count{display:none}.letter-row{display:grid;grid-template-columns:repeat(23,minmax(0,1fr));gap:2px;width:100%}.letter{width:auto;height:18px;font-size:10px;border-radius:4px}.bomb-typing{font-size:1.3rem}}@media(max-width:900px)and (max-height:520px){.letter-track{display:none}.word-panel{padding:8px 12px;gap:6px}.word-panel .word-title,.word-panel .word-hearts,.word-panel .field-help.is-idle{display:none}.word-panel .field-help{min-height:0}.bomb-game .game-top .dock{height:38px}.bomb-game{padding-top:var(--space-2)}}.bomb-strip-center .bomb-typing.is-empty{font:400 var(--text-md)/1.6 var(--font)}.bomb-settings{display:flex;flex-direction:column;gap:var(--space-4)}.bomb-settings .panel-head{margin-bottom:0}.setting{display:flex;flex-direction:column;gap:var(--space-2)}.setting-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.setting-label{font-weight:500}.setting-hint{color:var(--ink-3);font-size:var(--text-sm)}.setting-seg{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr)}.setting-seg button:disabled{opacity:.45;cursor:default}.setting-toggle{padding:0;border:0}.setting-toggle.is-locked{cursor:default}.setting-toggle .switch:disabled{opacity:.8;cursor:default}.stepper-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}.stepper{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:4px 4px 4px 12px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--sunken)}.stepper .setting-label{font-weight:400;color:var(--ink-2);font-size:var(--text-sm)}.stepper-box{display:flex;align-items:center;gap:2px}.stepper-box .icon-button{width:30px;height:30px;font-size:1rem}.stepper-value{min-width:22px;text-align:center;font:400 var(--text-xl)/1 var(--serif)}.status-chip.is-rule{color:var(--ink-2)}.stepper .setting-label{white-space:nowrap}.lobby{--game-accent: var(--ink-3)}.lobby .screen-inner{max-width:1040px}.stage{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);grid-template-areas:"main art";align-items:stretch;gap:0;padding:0;overflow:hidden}.stage-main{grid-area:main;display:flex;flex-direction:column;gap:var(--space-4);padding:36px 36px 28px;min-width:0}.stage-title{font:400 clamp(3rem,7vw,5.25rem)/.92 var(--serif);letter-spacing:-.03em}.stage-sub{color:var(--ink-2);font-size:var(--text-lg);line-height:1.5;max-width:38ch}.stage-actions{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-2)}.stage-create{display:flex;gap:var(--space-2);flex-wrap:wrap}.stage-cta{height:44px;padding:0 22px;font-size:var(--text-lg);flex:1 1 auto}.stage-vis{flex:0 0 auto;height:44px}.stage-vis button{padding:0 14px}.stage-hint{color:var(--ink-3);font-size:var(--text-sm)}.stage-join{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--line)}.stage-join-label{color:var(--ink-2);white-space:nowrap}.stage-join-row{display:flex;gap:var(--space-2);flex:1;min-width:0}.stage-join-row .code-input{flex:1;min-width:0;height:40px}.stage-join-row .button{height:40px}.stage-me{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);margin-top:auto;padding-top:var(--space-2);color:var(--ink-3);font-size:var(--text-sm)}.stage-me .hub-name{color:var(--ink);font-size:var(--text-md)}.stage-art{grid-area:art;position:relative;display:grid;place-items:center;min-height:340px;border-left:1px solid var(--line);background:radial-gradient(circle at 50% 55%,color-mix(in srgb,var(--game-accent) 16%,transparent),transparent 62%),radial-gradient(circle,color-mix(in srgb,var(--ink) 9%,transparent) 1px,transparent 1.5px) 0 0 / 18px 18px,var(--sunken)}.uno-stage{position:relative;width:300px;height:220px}.uno-stage .card{position:absolute;left:calc(50% - 52px);top:26px;--card-w: 104px;transform-origin:50% 120%;transform:translate(var(--dx),var(--dy)) rotate(var(--rot));box-shadow:0 10px 28px #00000052;animation:fan-open .7s var(--ease-out) both;animation-delay:calc(var(--i) * 45ms + .12s)}@keyframes fan-open{0%{transform:translateY(18px) rotate(0);opacity:0}30%{opacity:1}}.bomb-stage{display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}.bomb-stage-word{min-height:2.4rem;padding:4px 16px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface);font:400 1.6rem/1.4 var(--serif);transition:border-color .24s,box-shadow .24s}.bomb-stage-word .hl{font-weight:inherit;background:color-mix(in srgb,var(--game-accent) 30%,transparent);border-radius:4px;padding:0 1px}.bomb-stage-word.is-done{border-color:color-mix(in srgb,var(--up) 55%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--up) 14%,transparent)}.bomb-stage-caret{color:var(--ink-4)}.lobby .lobby-grid{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr)}.panel-head .lobby-h{font:400 var(--text-xl)/1.1 var(--serif);letter-spacing:-.01em}.room-row{grid-template-columns:64px minmax(0,1fr) auto;padding:12px;border:1px solid transparent}.room-row:hover:not(:disabled){border-color:var(--line)}.room-code{font:400 var(--text-xl)/1 var(--serif);letter-spacing:.06em;color:var(--ink)}.room-main{display:flex;flex-direction:column;gap:5px;min-width:0}.room-seats{display:flex;align-items:center;gap:3px}.room-seats i{width:7px;height:7px;border-radius:50%;background:var(--line-strong)}.room-seats i.is-on{background:var(--ink-2)}.room-seats .room-sub{margin-left:6px;font-size:var(--text-xs)}.room-go{display:inline-flex;align-items:center;gap:2px;height:30px;padding:0 8px 0 12px;border:1px solid var(--line-strong);border-radius:var(--radius-pill);color:var(--ink-2);font-weight:500}.room-list .room-row:hover:not(:disabled) .room-go{background:var(--ink);border-color:var(--ink);color:var(--bg)}.room-row.is-playing{opacity:.75}.room-state>i{background:var(--up)}.room-empty{display:flex;flex-direction:column;gap:4px;padding:var(--space-5);border:1px dashed var(--line-strong);border-radius:var(--radius);color:var(--ink-3);text-align:center}.room-empty b{color:var(--ink);font:400 var(--text-lg)/1.3 var(--serif)}.podium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:var(--space-2);margin:var(--space-2) 0 var(--space-3)}.podium-col{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:0;text-align:center}.podium-name{max-width:100%;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.podium-wins{color:var(--ink-3);font-size:var(--text-xs)}.podium-wins b{color:var(--ink);font-weight:600}.podium-block{display:grid;place-items:center;width:100%;margin-top:4px;border:1px solid var(--line);border-bottom:0;border-radius:var(--radius) var(--radius) 0 0;background:var(--sunken)}.podium-pos{font:400 1.75rem/1 var(--serif);color:var(--ink-2)}.podium-col.is-p1 .podium-block{height:78px;background:var(--raised)}.podium-col.is-p1 .podium-pos{font-size:2.4rem;color:var(--ink)}.podium-col.is-p1 .podium-name{font:400 var(--text-lg)/1.2 var(--serif)}.podium-col.is-p2 .podium-block{height:56px}.podium-col.is-p3 .podium-block{height:42px}.podium-col.is-empty .podium-block{opacity:.4}.podium-col.is-me .podium-name:after{content:" (você)";color:var(--ink-3);font:400 var(--text-xs) var(--font)}.podium+.rank-list{border-top:1px solid var(--line);padding-top:var(--space-2)}@media(max-width:760px){.stage{grid-template-columns:minmax(0,1fr);grid-template-areas:"art" "main"}.stage-art{min-height:0;height:220px;border-left:0;border-bottom:1px solid var(--line);overflow:hidden}.stage-main{padding:22px 18px 18px;gap:var(--space-3)}.uno-stage{transform:scale(.78)}.bomb-stage{transform:scale(.64)}.stage-create{flex-direction:column}.stage-vis{width:100%;display:grid;grid-template-columns:1fr 1fr}.stage-join{flex-direction:column;align-items:stretch;gap:var(--space-2)}.lobby .lobby-grid{grid-template-columns:minmax(0,1fr)}.lobby .lobby-rank{order:0}}.podium{border-bottom:1px solid var(--line-strong)}.pregame .stage{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}.pregame-kind{color:var(--ink-3);font-size:var(--text-sm)}.pregame-code{align-self:flex-start;margin:-4px 0 0 -2px;font:400 clamp(3.4rem,8vw,5.5rem)/.95 var(--serif);letter-spacing:.12em;color:var(--ink);cursor:copy;-webkit-tap-highlight-color:transparent}.pregame-code:hover{color:var(--ink-2)}.pregame-share{display:flex;gap:var(--space-2);flex-wrap:wrap}.pregame-go{display:flex;flex-direction:column;gap:var(--space-2);margin-top:auto;padding-top:var(--space-3)}.pregame-wait{display:flex;align-items:center;gap:var(--space-3);min-height:44px;padding:0 16px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--sunken);color:var(--ink-2)}.pregame-wait b{color:var(--ink);font-weight:500}.live-dot-wait{flex:none;width:8px;height:8px;border-radius:50%;background:var(--up);box-shadow:0 0 0 3px color-mix(in srgb,var(--up) 22%,transparent);animation:breathe 1.6s ease-in-out infinite}.pregame-table{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:var(--space-3);padding:24px}.pregame-table-head{display:flex;justify-content:space-between;color:var(--ink-3);font-size:var(--text-sm)}.pregame-table-head span:first-child{color:var(--ink);font:400 var(--text-xl)/1 var(--serif)}.seats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:var(--space-2)}.seat-card{display:flex;flex-direction:column;align-items:center;gap:4px;width:100%;padding:14px 6px 10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);text-align:center;transition:border-color var(--fast),background var(--fast)}.seat-card.can-kick{cursor:pointer}.seat-card.can-kick:hover,.seat-card.is-me{border-color:var(--line-3)}.seat-card.is-armed{border-color:color-mix(in srgb,var(--down) 60%,transparent);background:color-mix(in srgb,var(--down) 8%,var(--surface))}.seat-card.is-armed .seat-name{color:var(--down)}.seat-card.is-away{opacity:.55}.seat-card.is-empty{border-style:dashed;background:transparent}.seat-avatar{position:relative;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--raised);font-weight:600;font-size:var(--text-lg)}.seat-card.is-me .seat-avatar{background:var(--ink);color:var(--bg)}.seat-card.is-empty .seat-avatar{background:transparent;border:1px dashed var(--line-strong)}.seat-crown{position:absolute;top:-5px;right:-5px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--game-accent);color:#17161a}.seat-name{max-width:100%;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.seat-card.is-empty .seat-name{color:var(--ink-4);font-weight:400}.seat-role{min-height:1em;color:var(--ink-3);font-size:var(--text-xs);white-space:pre}.pregame-kick-hint{color:var(--ink-4);font-size:var(--text-xs);text-align:center;margin-top:auto}.pregame-extra{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-4);align-items:start}@media(max-width:760px){.pregame .stage{grid-template-columns:minmax(0,1fr);grid-template-areas:"main" "art"}.pregame .stage-art{height:auto;border-bottom:0;border-top:1px solid var(--line);overflow:visible}.pregame-table{padding:18px}.seats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pregame-share .button{flex:1}.pregame-extra{grid-template-columns:minmax(0,1fr)}}.imp-stage{position:relative;width:340px;height:210px}.imp-card{position:absolute;left:calc(50% - 50px);top:30px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:100px;height:140px;border-radius:12px;background:var(--card-paper);color:var(--card-ink);box-shadow:0 10px 26px #00000047,inset 0 0 0 1px #0000000f;transform-origin:50% 130%;transform:translate(var(--dx),var(--dy)) rotate(var(--rot));transition:transform .6s var(--ease-out),background .3s,color .3s}.imp-card-word{font:400 1.25rem/1 var(--serif);animation:fade-in .4s var(--ease-out)}.imp-card-cat{font-size:10px;letter-spacing:.04em;color:#7a756c}.imp-card.is-odd{background:#1d1c1a;color:#fbfaf7;box-shadow:0 10px 26px #00000059,0 0 0 2px var(--game-accent, #7c8cff)}.imp-card.is-odd .imp-card-cat{color:color-mix(in srgb,var(--game-accent, #7c8cff) 80%,white)}.imp-card-q{font:400 3rem/1 var(--serif)}.tile-imp{width:340px;height:210px;margin:-50px -80px;transform:scale(.52)}@media(max-width:760px){.tile-imp{transform:scale(.48);margin:-55px -88px}}.tile-imp .imp-stage{--game-accent: #7c8cff}@media(max-width:760px){.lobby .imp-stage{transform:scale(.8)}}.cat-chips{display:flex;flex-wrap:wrap;gap:6px}.cat-chip{height:32px;padding:0 12px;border:1px solid var(--line-strong);border-radius:var(--radius-pill);color:var(--ink-3);font-size:var(--text-sm);transition:background var(--fast),color var(--fast),border-color var(--fast)}.cat-chip.is-on{background:var(--ink);border-color:var(--ink);color:var(--bg)}.cat-chip:disabled{cursor:default}.cat-chip:disabled:not(.is-on){opacity:.55}.rules-points{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--line);color:var(--ink-3);font-size:var(--text-sm)}.rules-points b{color:var(--ink);font-weight:500}.imp-game{grid-template-rows:auto minmax(0,1fr);--game-accent: #7c8cff}.imp-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:var(--space-4);min-height:0;overflow:auto;align-items:start}.imp-left{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}.imp-round{color:var(--ink-3);font-size:var(--text-sm)}.imp-secret{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:210px;padding:24px;border-radius:var(--radius-lg);background:var(--card-paper);color:var(--card-ink);text-align:center;box-shadow:0 14px 40px #00000040,inset 0 0 0 1px #0000000f;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;transition:transform .2s var(--ease-out),background .3s,color .3s}.imp-secret:active{transform:scale(.99)}.imp-secret.is-shown.is-impostor{background:#1d1c1a;color:#fbfaf7;box-shadow:0 14px 40px #00000059,0 0 0 2px var(--game-accent)}.imp-secret-label{font-size:var(--text-sm);color:#7a756c}.imp-secret.is-impostor.is-shown .imp-secret-label,.imp-secret.is-impostor.is-shown .imp-secret-sub{color:#b9b4ab}.imp-secret-word{font:400 clamp(2.2rem,6vw,3.4rem)/1.05 var(--serif);letter-spacing:-.01em;overflow-wrap:anywhere}.imp-secret-word.is-hidden{font-size:1.6rem;color:#7a756c}.imp-secret-sub{max-width:32ch;font-size:var(--text-sm);color:#625d55}:root[data-theme=light] .imp-secret{box-shadow:0 10px 30px #1c19151f,inset 0 0 0 1px #1c19151a}.imp-action-panel{position:relative;padding-top:18px;overflow:hidden}.imp-action-panel.is-turn{border-color:var(--line-3)}.imp-action{display:flex;flex-direction:column;gap:var(--space-3)}.imp-action-text{color:var(--ink-2);line-height:1.5}.imp-action-text b{color:var(--ink);font-weight:500}.imp-votes-count{font-size:var(--text-sm);text-align:center}.imp-result{display:flex;flex-direction:column;gap:var(--space-2)}.imp-result-kicker{color:var(--ink-3);font-size:var(--text-sm)}.imp-result-title{font:400 2.2rem/1.05 var(--serif);letter-spacing:-.01em}.imp-result.is-crew .imp-result-title{color:var(--up)}.imp-result.is-impostor .imp-result-title{color:var(--game-accent)}.imp-result-line{color:var(--ink-2)}.imp-result-line b{color:var(--ink);font-weight:500}.imp-result-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;margin-top:var(--space-2)}.imp-table{min-width:0}.imp-players{display:flex;flex-direction:column;gap:6px}.imp-player{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-3);width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);text-align:left;transition:border-color var(--fast),background var(--fast)}.imp-player .avatar{width:34px;height:34px}.imp-player.is-me .avatar{background:var(--ink);color:var(--bg)}.imp-player.is-turn{border-color:var(--line-3);box-shadow:0 0 0 3px color-mix(in srgb,var(--game-accent) 18%,transparent)}.imp-player.is-votable{cursor:pointer}.imp-player.is-votable:hover{border-color:var(--line-3)}.imp-player.is-picked{border-color:var(--game-accent);background:color-mix(in srgb,var(--game-accent) 10%,var(--surface))}.imp-player.is-impostor{border-color:var(--game-accent)}.imp-player.is-impostor .avatar{background:#1d1c1a;color:#fbfaf7;box-shadow:0 0 0 2px var(--game-accent)}.imp-player.is-left{opacity:.45}.imp-player-main{display:flex;flex-direction:column;gap:5px;min-width:0}.imp-player-name{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.imp-clues{display:flex;flex-wrap:wrap;gap:4px}.imp-clue{padding:2px 9px;border-radius:var(--radius-pill);background:var(--sunken);border:1px solid var(--line);font:400 var(--text-md)/1.4 var(--serif);overflow-wrap:anywhere}.imp-clue.is-empty{font:400 var(--text-xs)/1.8 var(--font);color:var(--ink-4);border-style:dashed}.imp-clue.is-now{font:500 var(--text-xs)/1.8 var(--font);color:var(--ink-2);animation:breathe 1.4s ease-in-out infinite}.imp-player-side{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}.imp-voted{color:var(--ink-3);font-size:var(--text-xs)}.imp-votes{color:var(--ink-2);font-size:var(--text-sm)}.imp-gain{color:var(--up);font:400 var(--text-lg)/1 var(--serif)}.imp-score{margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--line)}.imp-score-list{display:flex;flex-direction:column}.imp-score-list li{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:var(--space-2);align-items:center;padding:6px 4px}.imp-score-list li+li{border-top:1px solid var(--line)}.imp-score-list li.is-me{background:var(--sunken);border-radius:var(--radius-sm)}.imp-score-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.imp-score-list .num{font:400 var(--text-lg)/1 var(--serif)}@media(max-width:760px){.imp-layout{grid-template-columns:minmax(0,1fr);gap:var(--space-3)}.imp-secret{min-height:150px;padding:18px}.imp-player{padding:8px 10px}}.tile-meta{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.tile{--tile: 40px;position:relative;display:inline-grid;place-items:center;flex:none;width:var(--tile);height:var(--tile);border-radius:calc(var(--tile) * .18);background:var(--card-paper);color:var(--card-ink);box-shadow:0 2px #0000002e,0 4px 10px #0000002e,inset 0 0 0 1px #0000000f;font:400 calc(var(--tile) * .58)/1 var(--serif);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.tile.is-xs{--tile: 22px;box-shadow:0 1px #0000002e,inset 0 0 0 1px #0000000f}.tile.is-sm{--tile: 28px}.tile.is-md{--tile: 42px}.tile.is-lg{--tile: 50px}.tile.is-xl{--tile: 116px;border-radius:20px;box-shadow:0 5px #0003,0 16px 34px #0000004d,inset 0 0 0 1px #0000000f;animation:tile-in .36s var(--ease-out)}.tile-letter{transform:translateY(-1px)}.tile-mark{position:absolute;right:calc(var(--tile) * .08);bottom:calc(var(--tile) * .05);font:600 calc(var(--tile) * .17)/1 var(--font);color:#7a756c}.tile.is-xs .tile-mark,.tile.is-sm .tile-mark{display:none}.tile.is-rare .tile-mark{color:#b07a10}.tile.is-free{background:color-mix(in srgb,var(--game-accent, #2e9f76) 16%,var(--card-paper))}.tile.is-tap{cursor:pointer;transition:transform .12s var(--ease-out),opacity .16s}.tile.is-tap:active{transform:translateY(2px)}.tile.is-used{opacity:.28;transform:translateY(2px);box-shadow:none}@keyframes tile-in{0%{transform:translateY(-14px) scale(.92);opacity:0}}.leilao-stage{display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}.leilao-stage-block{padding:18px;border-radius:28px;border:1px dashed var(--line-strong);transition:border-color .24s}.leilao-stage-block.is-sold{border-color:var(--game-accent);border-style:solid}.leilao-stage-bid{min-height:2.4rem;display:grid;place-items:center;padding:4px 16px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface);animation:fade-in .24s var(--ease-out)}.leilao-stage-bid b{font-weight:600}.leilao-stage-bid.is-sold{border-color:color-mix(in srgb,var(--game-accent) 60%,transparent)}.tile-leilao{display:flex;gap:6px;transform:rotate(-4deg);--game-accent: #2e9f76}.tile-leilao .tile:nth-child(odd){transform:translateY(-5px)}.leilao-points{display:flex;flex-wrap:wrap;gap:6px;margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--line)}.leilao-points span{display:inline-flex;align-items:baseline;gap:4px;padding:3px 10px;border-radius:var(--radius-pill);background:var(--sunken);color:var(--ink-3);font-size:var(--text-xs)}.leilao-points b{color:var(--ink);font-weight:600}.leilao-points i{font:400 var(--text-md)/1 var(--serif);color:var(--ink);font-style:normal}.leilao-game{grid-template-rows:auto minmax(0,1fr);--game-accent: #2e9f76}.leilao-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:var(--space-4);min-height:0;overflow:auto;align-items:start}.leilao-left{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}.leilao-block{position:relative;display:flex;flex-direction:column;gap:var(--space-4);padding-top:20px;overflow:hidden}.leilao-block.is-mine{border-color:color-mix(in srgb,var(--game-accent) 55%,transparent)}.leilao-block-head{display:flex;justify-content:space-between;align-items:center;color:var(--ink-3);font-size:var(--text-sm)}.leilao-clock{font:400 var(--text-xl)/1 var(--serif);color:var(--ink)}.leilao-clock.is-urgent{color:var(--down)}.leilao-lot{display:flex;align-items:center;justify-content:center;gap:var(--space-6);padding:var(--space-2) 0}.leilao-block.is-sold .tile.is-xl{box-shadow:0 5px #0003,0 16px 34px #0000004d,0 0 0 3px var(--game-accent)}.leilao-high{display:flex;flex-direction:column;gap:2px;min-width:150px}.leilao-high-label{color:var(--ink-3);font-size:var(--text-sm)}.leilao-high-who{font:400 2rem/1.1 var(--serif);letter-spacing:-.01em;overflow-wrap:anywhere}.leilao-high-who.is-empty{color:var(--ink-4);font-size:1.5rem}.leilao-high-amount{color:var(--ink-2);font-size:var(--text-lg)}.leilao-bids{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2)}.leilao-bids.is-placeholder{min-height:64px}.leilao-bids.is-blind{grid-template-columns:minmax(0,1fr)}.leilao-blind-step{justify-content:space-between}.leilao-bid{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:64px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);transition:transform .1s var(--ease-out),background var(--fast),border-color var(--fast);-webkit-tap-highlight-color:transparent}.leilao-bid:active:not(:disabled){transform:scale(.97)}.leilao-bid:hover:not(:disabled){border-color:var(--line-3)}.leilao-bid:disabled{opacity:.4}.leilao-bid.is-main{background:var(--ink);color:var(--bg);border-color:var(--ink)}.leilao-bid-step{font-weight:600;font-size:var(--text-lg)}.leilao-bid-total{font-size:var(--text-xs);opacity:.7}.leilao-bid.is-all .leilao-bid-step{font-size:var(--text-md)}.field-help.is-ok{color:var(--up)}.leilao-mine{display:flex;flex-direction:column;gap:var(--space-3)}.leilao-mine-head{display:flex;justify-content:space-between;align-items:center;color:var(--ink-2)}.leilao-rack{display:flex;flex-wrap:wrap;gap:8px;min-height:42px;align-items:center}.leilao-rack.is-build{justify-content:center;padding:var(--space-2) 0}.leilao-coins{display:inline-flex;align-items:center;gap:5px;font:400 var(--text-lg)/1 var(--serif)}.leilao-coins i{width:12px;height:12px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#f6d36b,#c99412);box-shadow:inset 0 0 0 1px #00000026}.leilao-coins.is-big{font-size:1.6rem}.leilao-coins.is-big i{width:16px;height:16px}.leilao-word{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;min-height:66px;padding:8px;border:1px dashed var(--line-strong);border-radius:var(--radius);align-items:center}.leilao-word.is-bad{border-color:color-mix(in srgb,var(--down) 60%,transparent)}.leilao-word-empty{color:var(--ink-4)}.leilao-build-foot{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;color:var(--ink-2)}.leilao-build-foot b{color:var(--ink);font-weight:600}.leilao-results{display:flex;flex-direction:column;gap:6px}.leilao-results li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:var(--space-3);align-items:center;padding:10px;border:1px solid var(--line);border-radius:var(--radius)}.leilao-results li.is-me{border-color:var(--line-3)}.leilao-res-main{display:flex;flex-direction:column;gap:5px;min-width:0}.leilao-res-name{font-weight:500}.leilao-res-word{display:flex;flex-wrap:wrap;gap:3px}.leilao-res-detail{color:var(--ink-3);font-size:var(--text-xs)}.leilao-res-detail b{color:var(--ink-2);font-weight:600}.leilao-res-total{font:400 1.6rem/1 var(--serif);color:var(--up)}.leilao-table{min-width:0}.leilao-players{display:flex;flex-direction:column;gap:6px}.leilao-player{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:var(--space-3);align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);transition:border-color var(--fast),box-shadow var(--fast)}.leilao-player.is-me .avatar{background:var(--ink);color:var(--bg)}.leilao-player.is-leading{border-color:var(--game-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--game-accent) 18%,transparent)}.leilao-player.is-away{opacity:.55}.leilao-player-main{display:flex;flex-direction:column;gap:5px;min-width:0}.leilao-player-name{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-weight:500}.leilao-player-letters{display:flex;flex-wrap:wrap;gap:3px;min-height:22px;align-items:center;font-size:var(--text-xs)}.leilao-player-nums{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.leilao-pts{color:var(--ink-3);font-size:var(--text-xs)}.leilao-free{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:var(--space-3);color:var(--ink-3);font-size:var(--text-sm)}@media(max-width:760px){.leilao-layout{grid-template-columns:minmax(0,1fr);gap:var(--space-3)}.tile.is-xl{--tile: 92px}.leilao-lot{gap:var(--space-4)}.leilao-high-who{font-size:1.6rem}.leilao-bid{min-height:58px}.leilao-block{gap:var(--space-3)}.tile.is-md{--tile: 38px}.leilao-build-foot{font-size:var(--text-sm)}.leilao-block.is-build .word-form .button.quiet{padding:0 12px}}.result-main .leilao-res-word{align-items:center;margin-top:4px}.result-main .leilao-res-word .leilao-res-detail{margin-left:6px}.leilao-reveal{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;color:var(--ink-3);font-size:var(--text-sm)}.leilao-reveal span{padding:3px 10px;border-radius:var(--radius-pill);background:var(--sunken)}.leilao-reveal b{color:var(--ink);font-weight:600}@media(min-width:761px){.hub-grid>li:last-child:nth-child(odd){grid-column:1 / -1}.hub-grid>li:last-child:nth-child(odd) .game-tile{flex-direction:row}.hub-grid>li:last-child:nth-child(odd) .tile-art{flex:0 0 46%;height:auto;min-height:200px;border-bottom:0;border-right:1px solid var(--line)}}.tile-corrida{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:14px 18px}.lane-road{position:relative;height:10px;margin:0 15px;border-radius:var(--radius-pill);background:var(--sunken);box-shadow:inset 0 0 0 1px var(--line)}.lane-fill{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:color-mix(in srgb,var(--game-accent, #3b9be0) 55%,transparent);transition:width .26s var(--ease-out)}.lane-car{position:absolute;top:50%;width:26px;height:26px;translate:-50% -50%;border:1px solid var(--line-strong);background:var(--surface);font-size:var(--text-xs);transition:left .26s var(--ease-out);z-index:1}.lane-flag{position:absolute;right:-2px;top:-5px;bottom:-5px;width:6px;border-radius:2px;background:repeating-linear-gradient(0deg,var(--ink) 0 4px,var(--bg) 4px 8px);opacity:.55}.corrida-game{--game-accent: #3b9be0}@media(min-width:761px){.corrida-game{grid-template-rows:auto auto auto auto;align-content:start}.corrida-text{max-height:min(52vh,420px);min-height:180px}}.corrida-track{display:flex;flex-direction:column;gap:10px;padding:14px 18px}.lane{display:grid;grid-template-columns:minmax(80px,150px) minmax(0,1fr) 92px;align-items:center;gap:16px}.lane-name{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lane-stat{display:flex;align-items:baseline;justify-content:flex-end;gap:8px;color:var(--ink-3);font-size:var(--text-sm);white-space:nowrap}.lane-stat span{color:var(--ink);font-weight:500}.lane-stat small{color:var(--ink-3);font-weight:400}.lane-place{color:var(--game-accent);font:400 var(--text-lg)/1 var(--serif)}.lane.is-me .lane-car{background:var(--ink);color:var(--bg);border-color:var(--ink)}.lane.is-me .lane-fill{background:var(--game-accent)}.lane.is-done .lane-car{box-shadow:0 0 0 3px color-mix(in srgb,var(--game-accent) 35%,transparent)}.lane.is-off{opacity:.5}.corrida-text-panel{position:relative;display:flex;min-height:0;padding:0;overflow:hidden}.corrida-text{flex:1;min-height:0;overflow-y:auto;padding:22px 26px;font:400 1.5rem/1.75 var(--font);letter-spacing:.005em;color:var(--ink-4);user-select:none;-webkit-user-select:none;overscroll-behavior:contain;scrollbar-width:thin}.corrida-text .w.is-done{color:var(--ink-2)}.corrida-text .w.is-current{color:var(--ink-3);border-radius:6px;background:color-mix(in srgb,var(--game-accent) 16%,transparent);box-shadow:0 2px 0 var(--game-accent)}.corrida-text .w.is-current b{color:var(--ink);font-weight:inherit}.corrida-text .w.is-wrong{background:color-mix(in srgb,var(--down) 18%,transparent);box-shadow:0 2px 0 var(--down);color:var(--ink)}.corrida-count{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:color-mix(in srgb,var(--bg) 78%,transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.corrida-count span{font:400 6rem/1 var(--serif);animation:count-pop .9s var(--ease-out) both}.corrida-count small{color:var(--ink-3);font-size:var(--text-md)}@keyframes count-pop{0%{opacity:0;transform:scale(1.3)}}.corrida-stats{display:flex;flex-wrap:wrap;gap:6px 18px;color:var(--ink-3);font-size:var(--text-sm)}.corrida-stats b{color:var(--ink);font:400 var(--text-xl)/1 var(--serif);margin-right:2px}.corrida-input .corrida-field{flex:none;height:52px;font-size:1.25rem;padding:0 16px}.corrida-done{display:flex;flex-direction:column;gap:2px;padding:6px 0}.corrida-done b{font:400 var(--text-xl)/1.2 var(--serif)}@media(max-width:760px){.corrida-track{gap:7px;padding:10px 12px}.lane{grid-template-columns:64px minmax(0,1fr) auto;gap:10px}.lane-name{font-size:var(--text-sm)}.lane-name .muted{display:none}.lane-car{width:22px;height:22px;font-size:10px}.lane-road{height:8px}.corrida-text{padding:14px 16px;font-size:1.15rem;line-height:1.7}.corrida-input .corrida-field{height:46px;font-size:1.1rem}.corrida-stats b{font-size:var(--text-lg)}}@media(max-width:760px){.corrida-track:has(.lane:nth-child(6)) .lane-emoji{font-size:16px}.corrida-track:has(.lane:nth-child(6)){gap:4px}}.lane-racer{position:absolute;top:50%;translate:-50% -58%;z-index:1;display:grid;place-items:center;width:30px;height:30px;transition:left .26s var(--ease-out)}.lane-emoji{display:block;font-size:24px;line-height:1;animation:racer-in .3s var(--ease-out);filter:drop-shadow(0 2px 2px rgba(0,0,0,.35))}.lane-racer.is-flip .lane-emoji{transform:scaleX(-1)}@keyframes racer-in{0%{opacity:0;scale:.5}}.corrida-game .lane-racer .lane-emoji{animation:racer-in .3s var(--ease-out),racer-hop .52s ease-in-out infinite .3s}.corrida-game .lane.is-done .lane-racer .lane-emoji,.corrida-game.is-ending .lane-racer .lane-emoji{animation:none}@keyframes racer-hop{50%{translate:0 -3px}}.lane-racer.is-hot:after{content:"🔥";position:absolute;left:-14px;top:6px;font-size:13px;animation:hot .6s ease-in-out infinite alternate}@keyframes hot{to{transform:translateY(-2px) scale(1.1)}}.lane.is-me .lane-racer{background:color-mix(in srgb,var(--game-accent) 22%,transparent);border-radius:50%;box-shadow:0 0 0 2px var(--game-accent)}.lane.is-done .lane-racer{box-shadow:none}.corrida-track .lane-road{height:8px}.corrida-track{padding-bottom:8px}.corrida-feed{min-height:24px;display:flex;align-items:center;justify-content:center;text-align:center}.corrida-line{font-size:var(--text-md);font-weight:500;color:var(--ink-2);animation:line-in 3.2s var(--ease-out) both}.corrida-line.is-good{color:var(--up)}.corrida-line.is-alert{color:var(--down)}@keyframes line-in{0%{opacity:0;transform:translateY(4px)}8%,85%{opacity:1;transform:none}to{opacity:0}}.corrida-text .w.is-peel{color:#e0a800;font-weight:600}.corrida-text .w.is-peel.is-done{color:color-mix(in srgb,#e0a800 60%,var(--ink-3))}.corrida-text .w.is-peel.is-current{background:color-mix(in srgb,#f2c12e 22%,transparent);box-shadow:0 2px #e0a800;color:var(--ink-3)}.corrida-text.is-slip{animation:slip .52s ease-in-out}@keyframes slip{20%{transform:translate(-8px) rotate(-.6deg)}45%{transform:translate(7px) rotate(.5deg)}70%{transform:translate(-4px)}}.corrida-combo{color:#f08a24!important;font-weight:600;animation:combo-pop .26s var(--ease-out)}.corrida-combo b{color:#f08a24!important}@keyframes combo-pop{0%{transform:scale(1.35)}}.corrida-banana{display:inline-flex;align-items:center;gap:6px;height:30px;margin-left:auto;padding:0 12px 0 8px;border:1px dashed var(--line-strong);border-radius:var(--radius-pill);color:var(--ink-3);font-size:var(--text-sm)}.corrida-banana .corrida-banana-icon{font-size:16px;filter:grayscale(1) opacity(.6)}.corrida-banana b{color:var(--ink)}.corrida-banana.is-ready{border:1px solid #e0a800;background:color-mix(in srgb,#f2c12e 18%,transparent);color:var(--ink);font-weight:500;cursor:pointer;animation:banana-ready 1.6s ease-in-out infinite}.corrida-banana.is-ready .corrida-banana-icon{filter:none}@keyframes banana-ready{50%{box-shadow:0 0 0 4px color-mix(in srgb,#f2c12e 25%,transparent)}}.corrida-stats{align-items:center}@media(max-width:760px){.lane-racer{width:26px;height:26px}.lane-emoji{font-size:20px}.corrida-feed{min-height:20px}.corrida-line{font-size:var(--text-sm)}.corrida-banana{height:28px;padding:0 10px 0 6px}}@media(prefers-reduced-motion:reduce){.corrida-game .lane-racer .lane-emoji,.corrida-banana.is-ready{animation:none}}.cscene{--from: 64px;--to: 30px;display:flex;flex-direction:column;gap:12px;width:min(420px,100%)}.cscene-bubble{position:relative;align-self:flex-start;max-width:100%;padding:8px 14px;border:1px solid var(--line-strong);border-radius:14px 14px 14px 4px;background:var(--bg);font:400 1.05rem/1.3 var(--font);white-space:nowrap;overflow:hidden;box-shadow:0 8px 24px #00000040}.cscene-who{margin-right:8px;color:#3b9be0;font-size:var(--text-sm);font-weight:600}.cscene-bubble b{font-weight:inherit;color:var(--ink)}.cscene-rest{color:var(--ink-4)}.cscene-caret{display:inline-block;width:2px;height:1em;margin-left:1px;vertical-align:-.12em;background:#3b9be0;animation:caret 1s steps(1) infinite}@keyframes caret{50%{opacity:0}}.cscene-track{position:relative;border-radius:14px;overflow:hidden;background:linear-gradient(180deg,rgba(255,255,255,.025),transparent 40%),color-mix(in srgb,var(--sunken) 70%,#2b2f36);box-shadow:inset 0 0 0 1px var(--line)}.cscene-lane{position:relative;height:40px;border-bottom:2px dashed color-mix(in srgb,var(--ink) 12%,transparent)}.cscene-lane:last-child{border-bottom:0}.cscene-name{position:absolute;left:12px;top:50%;translate:0 -50%;font-size:var(--text-xs);font-weight:500;color:var(--ink-3);letter-spacing:.02em}.cscene-start{position:absolute;top:0;bottom:0;left:calc(var(--from) - 6px);width:2px;background:color-mix(in srgb,var(--ink) 30%,transparent)}.cscene-finish{position:absolute;top:0;bottom:0;right:calc(var(--to) - 14px);width:14px;background:conic-gradient(var(--ink) 25%,transparent 0 50%,var(--ink) 0 75%,transparent 0) 0 0 / 14px 14px;opacity:.55}.cscene-racer{position:absolute;top:50%;z-index:1;translate:-50% -55%;transition:left .12s linear}.cscene.is-restart .cscene-racer{transition:none}.cscene-emoji{display:block;font-size:26px;line-height:1;filter:drop-shadow(0 3px 2px rgba(0,0,0,.4));animation:racer-in .26s var(--ease-out),cscene-hop var(--hop, .42s) ease-in-out infinite}.cscene-racer.is-flip .cscene-emoji{transform:scaleX(-1)}.cscene-racer.is-spin .cscene-emoji{animation:cscene-spin .42s linear infinite}.cscene-racer.is-done .cscene-emoji{animation:none}@keyframes cscene-hop{50%{translate:0 -3px}}@keyframes cscene-spin{to{rotate:360deg}}.cscene-peel{position:absolute;top:50%;translate:-50% -45%;font-size:18px;rotate:-20deg}.cscene-first{position:absolute;right:calc(var(--to) + 26px);top:50%;translate:0 -50%;padding:2px 8px;border-radius:var(--radius-pill);background:#3b9be0;color:#fff;font:600 var(--text-xs)/1.4 var(--font);animation:racer-in .26s var(--ease-out)}.cscene.is-compact{width:100%;gap:10px}.cscene.is-compact .cscene-lane{height:34px}.cscene.is-compact .cscene-emoji{font-size:22px}.cscene.is-compact .cscene-bubble{font-size:var(--text-md);padding:6px 12px}@media(max-width:760px){.tile-corrida{padding:10px 14px}.cscene.is-compact{gap:6px}.cscene.is-compact .cscene-lane{height:28px}.cscene.is-compact .cscene-emoji{font-size:17px}.cscene.is-compact .cscene-bubble{font-size:var(--text-sm);padding:4px 10px}.cscene{--from: 52px}.lobby .cscene{width:calc(100% - 32px)}.lobby .cscene-lane{height:32px}}@media(prefers-reduced-motion:reduce){.cscene-emoji{animation:none!important}}
