@font-face{font-family:Bungee;font-style:normal;font-weight:400;font-display:swap;src:url(bungee-roman-latin.12967d744b.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Bungee;font-style:normal;font-weight:400;font-display:swap;src:url(bungee-roman-latin-ext.e095f12a76.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Literata;font-style:normal;font-weight:400 700;font-display:swap;src:url(literata-roman-latin.33b49c485e.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Literata;font-style:normal;font-weight:400 700;font-display:swap;src:url(literata-roman-latin-ext.3f1abb3354.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Literata;font-style:italic;font-weight:400;font-display:swap;src:url(literata-italic-latin.800b84f580.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Literata;font-style:italic;font-weight:400;font-display:swap;src:url(literata-italic-latin-ext.620a3d4517.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--chrome-h: 52px;--bg: oklch(17% .012 55);--surface: oklch(23% .015 55);--surface-2: oklch(28% .015 55);--surface-3: oklch(34% .02 55);--border: oklch(40% .02 55);--border-strong: oklch(55% .03 55);--ink: oklch(94% .01 85);--ink-dim: oklch(75% .015 80);--ink-muted: oklch(58% .02 75);--ink-faint: oklch(52% .02 70);--ink-on-felt: oklch(66% .025 80);--copper: oklch(62% .14 55);--copper-hi: oklch(72% .13 60);--copper-lo: oklch(42% .11 50);--copper-ink: oklch(22% .04 55);--copper-wash: oklch(62% .14 55 / .14);--gold: var(--copper);--gold-hi: var(--copper-hi);--gold-lo: var(--copper-lo);--gold-dim: var(--copper-wash);--forest: oklch(52% .11 155);--forest-hi: oklch(62% .1 155);--forest-ink: oklch(20% .03 155);--forest-wash: oklch(52% .11 155 / .16);--emerald: var(--forest);--emerald-dim: var(--forest-wash);--oxblood: oklch(46% .14 22);--oxblood-hi: oklch(58% .14 22);--oxblood-ink: oklch(96% .02 25);--oxblood-wash: oklch(46% .14 22 / .16);--ruby: var(--oxblood);--ruby-dim: var(--oxblood-wash);--amber: oklch(70% .15 65);--felt-color: oklch(32% .045 150);--felt-edge: oklch(22% .04 150);--felt-shadow: inset 0 1px 0 oklch(100% 0 0 / .04), 0 2px 0 oklch(0% 0 0 / .6), 0 16px 32px -12px oklch(0% 0 0 / .55);--shadow-press: 0 1px 0 oklch(0% 0 0 / .4), 0 2px 4px oklch(0% 0 0 / .3);--shadow-tag: 0 2px 0 oklch(0% 0 0 / .45), 0 4px 10px -2px oklch(0% 0 0 / .4);--shadow-lift: 0 4px 0 oklch(0% 0 0 / .45), 0 10px 22px -6px oklch(0% 0 0 / .5);--shadow-drop: 0 8px 0 oklch(0% 0 0 / .4), 0 18px 28px -10px oklch(0% 0 0 / .55);--text: var(--ink);--text-dim: var(--ink-dim);--text-muted: var(--ink-muted);--text-faint: var(--ink-faint);--font-display: "Bungee", "Arial Black", ui-sans-serif, sans-serif;--font-body: "Literata", "Charter", "Iowan Old Style", Georgia, serif;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.333rem;--text-xl: 1.777rem;--text-2xl: 2.369rem;--text-3xl: 3.157rem;--space-2xs: 4px;--space-xs: 8px;--space-sm: 12px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--space-3xl: 64px;--space-4xl: 96px;--radius: 10px;--radius-sm: 6px;--radius-lg: 16px;--ease-out-quart: cubic-bezier(.25, 1, .5, 1);--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-in-quart: cubic-bezier(.5, 0, .75, 0)}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{font-family:var(--font-body);background-color:var(--bg);background-image:radial-gradient(oklch(0% 0 0 / .25) 1px,transparent 1px),radial-gradient(oklch(0% 0 0 / .15) 1px,transparent 1px);background-size:3px 3px,7px 7px;background-position:0 0,1px 2px;background-attachment:fixed;color:var(--ink);line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;min-height:100dvh;overflow-x:hidden;touch-action:manipulation;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}:focus{outline:none}:focus-visible{outline:2px solid var(--copper);outline-offset:2px;border-radius:3px}.die:focus-visible,.player-chip:focus-visible,.gin-chip:focus-visible{outline-offset:4px}button{font-family:inherit;font-size:inherit;cursor:pointer;border:none;background:none;color:inherit}input{font-family:inherit;font-size:inherit;color:inherit}.hidden{display:none!important}.container{width:100%;max-width:1100px;margin:0 auto;padding:32px 24px}.screen{min-height:100vh;min-height:calc(100dvh - env(safe-area-inset-top) - var(--chrome-h));display:flex;flex-direction:column}@media(max-width:480px){.screen{min-height:calc(100dvh - env(safe-area-inset-top) - var(--chrome-h))}}#app{overflow-x:clip}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-xl);box-shadow:0 1px #ffffff08 inset,0 2px #0006,0 10px 22px -8px #00000080}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);padding:13px 22px;border-radius:var(--radius-sm);font-family:var(--font-display);font-size:var(--text-sm);font-weight:400;letter-spacing:.04em;text-transform:uppercase;transition:transform .12s var(--ease-out-quart),box-shadow .12s,background .15s,color .15s,opacity .15s;min-height:46px;user-select:none;-webkit-user-select:none;white-space:nowrap;border:1px solid transparent}.btn-large{padding:16px 28px;font-size:var(--text-base);min-height:56px;border-radius:var(--radius);letter-spacing:.05em}.setup-form>.btn,.waiting-wrapper>.btn{display:flex;width:100%}.btn-primary{background:var(--copper);color:var(--copper-ink);box-shadow:0 3px 0 0 var(--copper-lo),0 5px 10px -3px #00000080,inset 0 1px #fff6}@media(hover:hover){.btn-primary:hover:not(:disabled){transform:translateY(-2px);background:var(--copper-hi);box-shadow:0 5px 0 0 var(--copper-lo),0 8px 14px -4px #0000008c,inset 0 1px #ffffff80}}.btn-primary:active:not(:disabled){transform:translateY(2px);box-shadow:0 1px 0 0 var(--copper-lo),0 2px 6px -2px #00000080,inset 0 1px #ffffff4d}.btn-primary:disabled{opacity:.45;cursor:not-allowed;filter:saturate(.6)}.btn-ghost{background:transparent;color:var(--ink-dim);border-color:var(--border)}@media(hover:hover){.btn-ghost:hover{background:var(--surface);color:var(--ink);border-color:var(--copper)}}[data-screen=lobby] .container,[data-screen=setup] .container{display:flex;flex-direction:column}.game-type-picker{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:var(--space-sm) 0 var(--space-md)}.game-type-option{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:14px 10px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--ink-muted);cursor:pointer;transition:background .12s var(--ease-out-quart),color .12s var(--ease-out-quart),border-color .12s var(--ease-out-quart),transform .12s var(--ease-out-quart);box-shadow:var(--shadow-press)}.game-type-option:active{transform:translateY(1px)}@media(hover:hover){.game-type-option:not(.game-type-option--active):hover{color:var(--ink);border-color:var(--border-strong);background:var(--surface-2)}}.game-type-option--active{background:var(--copper);border-color:var(--copper-hi);color:var(--copper-ink);box-shadow:var(--shadow-tag)}.screen[data-screen=gin-game]{height:calc(100svh - env(safe-area-inset-top) - var(--chrome-h));min-height:0}@media(max-width:480px){.screen[data-screen=gin-game]{height:calc(100svh - env(safe-area-inset-top) - var(--chrome-h))}}@media(max-height:520px){.screen[data-screen=gin-game]{height:auto;min-height:520px}}.gin-wrapper{--gin-card-w: 72px;--gin-hand-w: 76px;--gin-meld-w: 44px;flex:1 1 auto;min-height:0;width:100%;max-width:860px;margin:0 auto;display:flex;flex-direction:column;gap:8px;padding:6px 14px calc(10px + env(safe-area-inset-bottom,0px))}@media(max-width:720px){.gin-wrapper{--gin-card-w: 62px;--gin-hand-w: 62px;--gin-meld-w: 40px}}@media(max-width:480px){.gin-wrapper{--gin-card-w: 54px;--gin-hand-w: 54px;--gin-meld-w: 36px;padding-inline:10px}}@media(max-width:480px)and (min-height:760px){.gin-wrapper{--gin-card-w: 62px;--gin-hand-w: 58px;--gin-meld-w: 40px}}@media(max-width:360px),(max-height:600px)and (max-width:480px){.gin-wrapper{--gin-card-w: 50px;--gin-hand-w: 48px;--gin-meld-w: 30px;gap:6px;padding-bottom:calc(6px + env(safe-area-inset-bottom,0px))}}.gin-table .game-header{flex:none;display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"pills chips leave";align-items:center;gap:8px}#gin-players-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:6px;overflow:visible;padding:0}@media(max-width:720px){.gin-table .game-header{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"pills leave" "chips chips";row-gap:6px;padding:0}#gin-players-strip{justify-content:flex-start;gap:4px}}.gin-chip{position:relative;container-type:inline-size;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:5px 10px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:var(--text-sm);color:var(--ink-dim);box-shadow:0 1px #00000059}.gin-chip--self{border-color:#6f4c34;color:var(--ink)}.gin-chip--active{border-color:var(--copper);background:var(--copper-wash);color:var(--ink);box-shadow:inset 0 0 0 1px var(--copper-hi),0 1px #00000059}.gin-chip--active:before{content:"";position:absolute;top:7px;right:8px;width:7px;height:7px;border-radius:50%;background:var(--copper-hi);box-shadow:0 0 0 2px #c56c2140}.gin-chip--gone{opacity:.4}.gin-chip--going-out{box-shadow:0 0 0 2px var(--copper-hi);animation:gin-going-out-pulse .75s var(--ease-out-quart) 2}@keyframes gin-going-out-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}.gin-chip--active:not(.gin-chip--self):after{content:"\2026";position:absolute;right:8px;bottom:3px;color:var(--copper-hi);font-weight:700;animation:gin-thinking 1.4s steps(4,end) infinite;display:inline-block;width:1.2em;text-align:left;overflow:hidden}@keyframes gin-thinking{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}to{content:""}}.gin-chip__who,.gin-chip__nums{display:flex;align-items:baseline;gap:6px;max-width:100%;min-width:0;white-space:nowrap}.gin-chip__who{padding-right:0}.gin-chip__nums{overflow-x:clip}.gin-chip__name{min-width:0;overflow:hidden;text-overflow:ellipsis;font-family:var(--font-display);font-weight:400;font-size:13px;letter-spacing:.01em;color:var(--ink)}.gin-chip__score{font-family:var(--font-display);font-size:18px;line-height:1;color:var(--copper-hi);margin-left:2px}.gin-chip__hand{font-family:var(--font-body);font-style:italic;color:var(--ink-muted);font-size:11px}.gin-chip__round{font-family:var(--font-display);color:var(--forest-hi);font-size:11px;padding:1px 5px;background:var(--forest-wash);border:1px solid var(--forest);border-radius:2px;margin-left:4px}.gin-chip__badge{font-family:var(--font-display);font-size:10px;padding:1px 5px;background:var(--forest-wash);color:var(--forest-hi);border:1px solid var(--forest);border-radius:2px}.gin-chip__deadwood{font-family:var(--font-display);color:#bb6d67;font-size:10px;padding:1px 5px;background:#932b2a1f;border-radius:2px;margin-left:2px}@container (max-width: 240px){.gin-chip__deadwood-label{display:none}}@container (max-width: 190px){.gin-chip--self .gin-chip__hand{display:none}}@container (max-width: 150px){.gin-chip__hand,.gin-chip--self .gin-chip__round{display:none}}@container (max-width: 104px){.gin-chip__round{display:none}}@container (max-width: 96px){.gin-chip__deadwood{display:none}}@container (max-width: 64px){.gin-chip .gin-chip__name{font-size:13px}}@media(max-width:720px){.gin-chip{padding:4px 8px;font-size:12px}.gin-chip__name{font-size:12px}.gin-chip__score{font-size:15px}.gin-chip__hand{display:none}.gin-chip__round{font-size:10px;padding:0 4px}}@media(max-width:360px){.gin-chip__badge{display:none}}@media(max-width:480px){.gin-chip{padding-inline:6px}}.gin-board{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;gap:8px}.gin-placeholder{flex:1 1 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-xs);text-align:center}.gin-placeholder-title{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--copper-hi);margin:0}.gin-placeholder-sub{font-family:var(--font-body);font-style:italic;font-size:var(--text-sm);color:var(--ink-on-felt);margin:0}.table-felt.gin-felt{flex:1 0 auto;display:flex;flex-direction:column;gap:8px;padding:10px 12px}.gin-scroll[data-more=right]{-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 32px),transparent);mask-image:linear-gradient(to right,#000 calc(100% - 32px),transparent)}.gin-scroll[data-more=left]{-webkit-mask-image:linear-gradient(to right,transparent,#000 32px);mask-image:linear-gradient(to right,transparent,#000 32px)}.gin-scroll[data-more=both]{-webkit-mask-image:linear-gradient(to right,transparent,#000 32px,#000 calc(100% - 32px),transparent);mask-image:linear-gradient(to right,transparent,#000 32px,#000 calc(100% - 32px),transparent)}.gin-melds-zone{flex:none;height:calc(var(--gin-meld-w) * 1.5 + 50px);overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:oklch(45% .04 150) transparent}@media(hover:hover)and (pointer:fine){.gin-melds-zone{height:calc(var(--gin-meld-w) * 1.5 + 60px)}}.gin-melds-players{display:flex;flex-wrap:nowrap;align-items:flex-start;gap:20px;width:max-content;min-width:100%;height:100%}.gin-melds-zone--empty .gin-melds-players{align-items:center;justify-content:center}.gin-meld-empty{margin:0;max-width:32ch;color:var(--ink-on-felt);font-family:var(--font-body);font-style:italic;font-size:var(--text-sm);line-height:1.4;text-align:center}.gin-player-melds{flex:0 0 auto;display:flex;flex-direction:column;gap:4px}.gin-player-melds__header{display:flex;align-items:baseline;gap:8px;line-height:16px;font-family:var(--font-body);white-space:nowrap}.gin-player-melds__name{font-weight:700;font-size:12px;color:var(--ink)}.gin-player-melds--self .gin-player-melds__name{color:var(--copper-hi)}.gin-player-melds__count{font-style:italic;font-size:11px;color:var(--ink-on-felt)}.gin-player-melds__list{display:flex;flex-wrap:nowrap;gap:6px;align-items:flex-start}.gin-meld,.gin-ext{flex:0 0 auto;display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:5px;background:var(--felt-color);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-press)}.gin-ext{border-style:dashed}.gin-ext__card{display:flex}.gin-ext__label{font-family:var(--font-body);font-style:italic;font-size:10px;line-height:12px;color:var(--ink-muted);white-space:nowrap}.gin-meld--targetable{cursor:pointer;border-color:var(--copper)}.gin-meld--hint{border-style:dashed;background:var(--copper-wash);animation:gin-meld-hint-pulse 1.5s var(--ease-out-quart) infinite}@keyframes gin-meld-hint-pulse{0%,to{box-shadow:0 0 #c56c2100}50%{box-shadow:0 0 0 4px #c56c216b}}@media(hover:hover){.gin-meld--targetable:hover{background:var(--copper-wash)}}.gin-meld__cards{display:flex}.gin-meld__cards .gin-card,.gin-ext__card .gin-card{width:var(--gin-meld-w);height:calc(var(--gin-meld-w) * 1.5)}.gin-meld__cards .gin-card+.gin-card{margin-left:calc(var(--gin-meld-w) * -.45)}.gin-meld__cards .gin-card--played-in,.gin-ext__card .gin-card--played-in{animation:gin-card-played-in .34s var(--ease-out-expo) backwards;transform-origin:center bottom}@keyframes gin-card-played-in{0%{opacity:0;transform:translateY(60px) scale(.85)}60%{opacity:1}to{opacity:1;transform:translateY(0) scale(1)}}.gin-middle{flex:1 1 auto;container-type:size;min-height:calc(var(--gin-card-w) * 1.5 + 26px);display:flex;align-items:center;gap:16px}.gin-pile{--pile-w: clamp(var(--gin-card-w), (100cqh - 26px) / 1.5, 76px);flex:none;display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0}.gin-pile--discard{flex:1 1 0;align-items:flex-start}.gin-pile__label{font-family:var(--font-display);font-size:10px;line-height:14px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-on-felt);white-space:nowrap}.gin-pile__count{color:var(--copper-hi)}.gin-pile__cards{position:relative;width:var(--pile-w);height:calc(var(--pile-w) * 1.5)}.gin-pile__cards .gin-card{position:absolute;left:0;top:0;width:100%;height:100%}.gin-pile--stock .gin-pile__cards{margin-top:8px;cursor:default;border-radius:6px;transition:box-shadow .15s var(--ease-out-quart),transform .12s var(--ease-out-quart);outline:none}.gin-pile--stock .gin-pile__cards:empty{border:1px dashed var(--border);background:#1c342266}.gin-pile__cards--drawable{cursor:pointer;animation:gin-drawable-pulse 1.6s var(--ease-out-quart) infinite}@keyframes gin-drawable-pulse{0%,to{box-shadow:0 0 0 2px var(--copper-hi),0 0 0 6px #c56c2100}50%{box-shadow:0 0 0 2px var(--copper-hi),0 0 0 6px #c56c2159}}@media(hover:hover){.gin-pile__cards--drawable:hover{transform:translateY(-2px)}}.gin-pile__cards--drawable:focus-visible{outline:2px solid var(--copper-hi);outline-offset:3px}.gin-pile__cards--discard{width:100%;height:calc(var(--pile-w) * 1.5 + 8px);padding-top:8px;display:flex;flex-wrap:nowrap;align-items:flex-end;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none}.gin-pile__cards--discard::-webkit-scrollbar{display:none}.gin-pile__cards--discard:empty{width:var(--pile-w);height:calc(var(--pile-w) * 1.5);margin-top:8px;padding-top:0;border:1px dashed var(--border);border-radius:6px;background:#1c34224d}.gin-pile__cards--discard .gin-discard-card{position:relative;flex:0 0 auto;width:var(--pile-w);height:calc(var(--pile-w) * 1.5);border-radius:4px;transition:transform .2s var(--ease-out-quart);box-shadow:var(--shadow-press)}.gin-pile__cards--discard .gin-discard-card+.gin-discard-card{margin-left:var(--discard-gap, 6px)}.gin-pile__cards--discard .gin-discard-card--newest{box-shadow:var(--shadow-lift)}.gin-discard-card--takeable{cursor:pointer}@media(hover:hover){.gin-discard-card--takeable:hover{transform:translateY(-6px);box-shadow:var(--shadow-lift)}}.gin-discard-card--legal:after,.gin-card--must-play:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none}.gin-discard-card--legal:after{box-shadow:inset 0 4px 0 0 var(--copper-hi)}.gin-discard-card--unreachable{cursor:default}.gin-discard-card--preview{outline:2px solid var(--copper-hi);outline-offset:-2px;transform:translateY(-6px)!important}.gin-pile__cards--discardable{cursor:pointer;animation:gin-discardable-pulse 1.2s var(--ease-out-quart) infinite;border-radius:6px}@keyframes gin-discardable-pulse{0%,to{box-shadow:0 0 0 2px var(--oxblood-hi),0 0 0 6px #932b2a00}50%{box-shadow:0 0 0 2px var(--oxblood-hi),0 0 0 6px #932b2a4d}}.gin-assist{flex:none;height:44px;display:flex;align-items:center;min-width:0}.gin-hint{margin:0;width:100%;font-family:var(--font-body);font-style:italic;font-size:var(--text-sm);line-height:1.3;color:var(--ink-dim);text-align:center;text-wrap:balance}.gin-groups,.gin-assist--chips .gin-hint{display:none}.gin-assist--chips .gin-groups{display:flex;flex-wrap:nowrap;align-items:center;gap:6px;width:100%;height:100%;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none}.gin-groups::-webkit-scrollbar{display:none}.gin-group-chip:first-child{margin-left:auto}.gin-group-chip:last-child{margin-right:auto}.gin-group-chip{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:4px 12px;border-radius:999px;font-family:var(--font-body);font-size:12px;line-height:1.2;flex:0 0 auto;white-space:nowrap;cursor:pointer;border:1px solid var(--border);background:#233527;color:var(--ink);transition:transform .1s var(--ease-out-quart),background .15s var(--ease-out-quart),border-color .15s var(--ease-out-quart)}.gin-group-chip:hover{transform:translateY(-1px)}.gin-group-chip:active{transform:translateY(0)}.gin-group-chip__kind{font-family:var(--font-display);font-size:10px;letter-spacing:.14em;text-transform:uppercase;padding:1px 6px;border-radius:3px}.gin-group-chip__label{font-weight:600}.gin-group-chip--valid.gin-group-chip--set{border-color:var(--forest);background:var(--forest-wash)}.gin-group-chip--valid.gin-group-chip--set .gin-group-chip__kind{background:var(--forest-hi);color:var(--surface)}.gin-group-chip--valid.gin-group-chip--run{border-color:oklch(55% .14 240);background:oklch(55% .14 240 / .15)}.gin-group-chip--valid.gin-group-chip--run .gin-group-chip__kind{background:oklch(58% .14 240);color:var(--surface)}.gin-group-chip--extend{border-color:var(--copper);background:var(--copper-wash)}.gin-group-chip--extend .gin-group-chip__kind{background:var(--copper);color:var(--copper-ink, var(--surface))}.gin-group-chip--armed{animation:gin-chip-armed .6s var(--ease-out-quart) infinite;outline:2px solid var(--copper-hi);outline-offset:-2px}.gin-group-chip--armed:after{content:" \2014  tap again";font-style:italic;color:var(--copper-hi);margin-left:4px;font-size:11px}@keyframes gin-chip-armed{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}.gin-group-chip--near{border-style:dashed;background:transparent;color:var(--ink-dim)}.gin-group-chip--near .gin-group-chip__kind{background:var(--surface-2);color:var(--ink-muted)}@media(max-width:480px){.gin-group-chip{font-size:11px;padding:4px 10px}.gin-group-chip__kind{font-size:9px;padding:1px 4px}}.gin-hand-tray{flex:none;min-width:0;height:calc(var(--gin-hand-w) * 1.5 + 24px);background:#1e1712;border:1px solid var(--border);border-radius:var(--radius);box-shadow:inset 0 2px #00000040;overflow:hidden}.gin-hand{height:100%;display:flex;flex-wrap:nowrap;align-items:flex-end;padding:14px 8px 8px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none}.gin-hand::-webkit-scrollbar{display:none}.gin-hand .gin-card:first-child{margin-left:var(--hand-offset, 0px)}.gin-hand .gin-card{flex:0 0 auto;width:var(--gin-hand-w);height:calc(var(--gin-hand-w) * 1.5);cursor:pointer;transition:transform .12s var(--ease-out-quart),box-shadow .12s var(--ease-out-quart)}.gin-hand .gin-card+.gin-card{margin-left:var(--hand-gap, 6px)}.gin-hand--overlapping .gin-card:not(:last-child) .gin-card__rank--br{display:none}.gin-hand .gin-card--new{animation:gin-card-deal .32s var(--ease-out-expo) backwards}@keyframes gin-card-deal{0%{opacity:0;transform:translateY(24px)}60%{opacity:1}to{opacity:1;transform:translateY(0)}}.gin-hand .gin-card--just-drawn{outline:2px solid var(--copper-hi);outline-offset:-2px;box-shadow:var(--shadow-lift);transform:translateY(-4px)}.gin-hand .gin-card--flip-in{animation:gin-card-flip-in .42s var(--ease-out-expo) backwards;transform-origin:center center}@keyframes gin-card-flip-in{0%{opacity:0;transform:perspective(700px) rotateY(-110deg) scale(.88)}40%{opacity:1;transform:perspective(700px) rotateY(-90deg) scale(.92)}65%{opacity:1;transform:perspective(700px) rotateY(-20deg) scale(.98)}to{opacity:1;transform:perspective(700px) rotateY(0) scale(1)}}.gin-hand .gin-card:active{transform:translateY(-2px)}.gin-board[data-busy] .gin-hand .gin-card,.gin-board[data-busy] .gin-group-chip,.gin-board[data-busy] .gin-pile__cards{cursor:progress}@media(hover:hover){.gin-board[data-busy] .gin-hand .gin-card:hover,.gin-board[data-busy] .gin-group-chip:hover{transform:none;box-shadow:none}}@media(hover:hover){.gin-hand .gin-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lift)}}.gin-card--selected{transform:translateY(-10px)!important;box-shadow:var(--shadow-lift)!important;outline:2px solid var(--copper-hi);outline-offset:-2px}.gin-card--must-play:after{animation:gin-must-play-pulse .85s var(--ease-out-quart) infinite}@keyframes gin-must-play-pulse{0%,to{box-shadow:inset 0 0 0 2px var(--oxblood-hi)}50%{box-shadow:inset 0 0 0 5px var(--oxblood-hi)}}.gin-actions{flex:none;height:52px;display:flex;align-items:center;justify-content:center;gap:8px}.gin-actions .btn{flex:1 1 0;min-width:0;max-width:340px;min-height:48px;padding:8px 14px}.gin-actions .btn-ghost{flex:0 1 auto}.gin-actions__note{margin:0;flex:1 1 auto;max-width:340px;min-height:48px;display:flex;align-items:center;justify-content:center;padding:6px 14px;border:1px dashed var(--border);border-radius:var(--radius-sm);font-family:var(--font-body);font-style:italic;font-size:var(--text-sm);line-height:1.25;color:var(--ink-dim);text-align:center}@media(max-width:480px){.gin-actions .btn{padding:8px 10px;font-size:13px;letter-spacing:.02em}}.gin-card{position:relative;display:inline-block;user-select:none;-webkit-user-select:none;box-shadow:var(--shadow-press);border-radius:4px;overflow:hidden}.gin-card__svg{display:block;width:100%;height:100%}.gin-card__paper{fill:#ebe4d4;stroke:#544b41;stroke-width:.4}.gin-card__back-paper{fill:#1a2e1e;stroke:#39553f;stroke-width:.4}.gin-card__back-inner{stroke:#8c5c3a;stroke-width:.4}.gin-card__back-brand{font-family:var(--font-display);font-size:8px;fill:#bd7138;letter-spacing:.1em}.gin-card__back-tagline{font-family:var(--font-body);font-style:italic;font-size:5px;fill:#8c5c3a;letter-spacing:.2em}.ink-h{fill:oklch(48% .22 27)}.ink-d{fill:oklch(44% .18 255)}.ink-c{fill:oklch(40% .15 150)}.ink-s{fill:#190f09}.gin-card__rank{font-family:var(--font-display),"Arial Black",sans-serif;font-size:16px;font-weight:900;letter-spacing:-.04em}.gin-card__suit{font-size:20px;font-family:Arial Unicode MS,DejaVu Sans,Segoe UI Symbol,sans-serif}.gin-card--sm{width:44px;height:66px}#gin-round-end-wrap:empty{display:none}#gin-round-end-wrap:not(:empty){position:fixed;inset:0;z-index:60;display:flex;align-items:flex-end;justify-content:center;padding:16px 12px calc(12px + env(safe-area-inset-bottom,0px));background:#0503028c}.gin-round-end{width:min(480px,100%);max-height:calc(100dvh - 80px);overflow-y:auto;display:flex;flex-direction:column;align-items:center;gap:var(--space-md);padding:var(--space-lg);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-drop);animation:gin-round-end-enter .45s var(--ease-out-expo)}@keyframes gin-round-end-enter{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.gin-round-end__title{font-family:var(--font-display);font-size:clamp(22px,6.5vw,32px);line-height:1.1;color:var(--copper-hi);margin:0;text-align:center;text-wrap:balance}.gin-round-end__actions{display:flex;flex-wrap:wrap;gap:var(--space-sm);justify-content:center}.gin-round-end__hint{font-family:var(--font-body);font-style:italic;font-size:13px;color:var(--ink-muted);text-align:center}.gin-summary{display:flex;flex-direction:column;gap:6px;width:100%;max-width:420px}.gin-summary__row{display:grid;grid-template-columns:18px 1fr auto auto auto;gap:var(--space-sm);padding:8px 12px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:var(--text-sm);align-items:baseline}.gin-summary__row--winner{background:var(--copper-wash);border-color:var(--copper)}.gin-summary__ready{font-family:var(--font-display);color:var(--forest-hi);font-size:14px;text-align:center}.gin-summary__ready--pending{color:var(--ink-faint)}.gin-summary__name{color:var(--ink);font-weight:600;min-width:0;overflow-wrap:anywhere}.gin-summary__plays{color:var(--forest-hi);font-family:var(--font-display);font-size:12px}.gin-summary__penalty{color:var(--oxblood-hi);font-family:var(--font-display);font-size:12px}.gin-summary__row--gameover{grid-template-columns:1fr auto!important}.gin-summary__total{font-family:var(--font-display);color:var(--ink);font-size:var(--text-base)}@media(max-width:720px){.gin-summary__row{grid-template-columns:16px 1fr auto auto;font-size:var(--text-xs)}.gin-summary__penalty{display:none}}@media(max-width:360px),(max-height:600px)and (max-width:480px){body[data-screen=gin-game] .gin-wrapper.gin-table{padding-top:4px}.table-felt.gin-felt{padding-block:7px;gap:6px}.gin-assist{height:40px}.gin-hand-tray{height:calc(var(--gin-hand-w) * 1.5 + 20px)}.gin-hand{padding-top:12px}.gin-actions{height:46px}.gin-actions .btn,.gin-actions__note{min-height:44px}}@media(max-height:560px)and (max-width:480px){.gin-wrapper{--gin-hand-w: 46px}.table-felt.gin-felt{padding-block:5px}.gin-melds-zone{height:calc(var(--gin-meld-w) * 1.5 + 47px)}.gin-assist{height:36px}}@media(max-width:720px){.game-header{padding:var(--space-xs) var(--space-sm);flex-wrap:wrap}.game-header .header-right{flex:0 0 100%;min-width:0}}.brand{display:inline-block;font-family:var(--font-display);font-size:var(--text-xs);font-weight:400;letter-spacing:.3em;color:var(--copper);text-transform:uppercase;margin-bottom:var(--space-lg);padding:4px 10px;border:1px solid var(--copper-lo);border-radius:2px;background:transparent}.logo{font-family:var(--font-display);font-size:clamp(64px,12vw,128px);font-weight:400;letter-spacing:0;line-height:.9;margin-bottom:20px;color:var(--copper-hi);text-shadow:2px 2px 0 var(--copper-lo),4px 4px 0 oklch(0% 0 0 / .5)}.logo span{display:inline-block}.logo span:nth-child(1){transform:rotate(-2deg)}.logo span:nth-child(3){transform:rotate(1.5deg)}.logo span:nth-child(5){transform:rotate(-1deg)}.tagline{font-family:var(--font-body);font-size:var(--text-lg);color:var(--ink-dim);line-height:1.5;font-style:italic;letter-spacing:-.01em}.tagline .g{color:var(--copper-hi);font-weight:700;font-style:normal}.setup-form{display:flex;flex-direction:column;gap:24px}.field{display:flex;flex-direction:column;gap:10px}.field-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.09em;color:var(--text-muted)}.count-selector{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.count-btn{padding:13px 0;background:var(--surface);border:1px solid var(--border);border-radius:3px;color:var(--ink-dim);font-weight:400;font-size:var(--text-base);font-family:var(--font-display);transition:background .15s,border-color .15s,color .15s}@media(hover:hover){.count-btn:hover{background:var(--surface-2);color:var(--ink);border-color:var(--border-strong)}}.count-btn.active{background:var(--copper);border-color:var(--copper);color:var(--copper-ink);box-shadow:0 1px #0006}.player-inputs{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.player-input{display:flex;align-items:center;gap:var(--space-sm);background:var(--surface);border:1px solid var(--border);border-radius:3px;padding:2px 14px;transition:border-color .15s,background .15s}.player-input:focus-within{background:var(--surface-2);border-color:var(--copper);box-shadow:inset 0 0 0 1px var(--copper)}.player-num{font-family:var(--font-display);font-weight:400;color:var(--copper);font-size:var(--text-xs);letter-spacing:.1em;min-width:20px}.player-input input{flex:1;background:transparent;border:none;outline:none;padding:12px 0;font-family:var(--font-body);font-size:var(--text-base);font-weight:500;color:var(--ink);min-width:0}.money-input{display:flex;align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:3px;padding:0 14px;transition:border-color .15s,background .15s}.money-input:focus-within{background:var(--surface-2);border-color:var(--copper);box-shadow:inset 0 0 0 1px var(--copper)}.money-input .currency{color:var(--ink-muted);font-family:var(--font-display);font-size:var(--text-base);margin-right:6px}.money-input input{flex:1;background:transparent;border:none;outline:none;padding:12px 0;font-family:var(--font-display);font-size:var(--text-base);color:var(--ink);width:100%;min-width:0}.money-input input::-webkit-outer-spin-button,.money-input input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.money-input input[type=number]{-moz-appearance:textfield}.play-money-note{text-align:center;font-size:12px;color:var(--text-muted);letter-spacing:.02em}.toggle-info{flex-shrink:0;width:20px;height:20px;padding:0;margin-right:2px;border-radius:50%;border:1px solid var(--border-strong);background:transparent;color:var(--ink-muted);font-family:var(--font-body);font-size:11px;font-weight:600;font-style:italic;line-height:1;cursor:pointer;transition:color .15s,border-color .15s,background .15s}.toggle-info[aria-expanded=true]{color:var(--copper-hi);border-color:var(--copper);background:var(--copper-wash)}@media(hover:hover){.toggle-info:hover{color:var(--copper-hi);border-color:var(--copper);background:var(--copper-wash)}}.toggle-row{display:flex;align-items:center;gap:16px;padding:12px 0;background:transparent;border:none;border-radius:0;cursor:pointer;user-select:none;-webkit-user-select:none;transition:color .15s}.field>.toggle-row+.toggle-row{border-top:1px solid var(--border)}.toggle-row input[type=checkbox]{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.toggle-switch{width:46px;height:26px;background:#ffffff14;border:1px solid var(--border-strong);border-radius:14px;position:relative;flex-shrink:0;transition:background .2s,border-color .2s}.toggle-thumb{width:18px;height:18px;background:var(--text-muted);border-radius:50%;position:absolute;top:3px;left:3px;transition:transform .22s cubic-bezier(.4,0,.2,1),background .22s;box-shadow:0 1px 3px #0000004d}.toggle-row input[type=checkbox]:checked~.toggle-switch{background:var(--gold-dim);border-color:var(--gold)}.toggle-row input[type=checkbox]:checked~.toggle-switch .toggle-thumb{transform:translate(20px);background:var(--copper);box-shadow:0 1px #0006}.toggle-row input[type=checkbox]:focus-visible~.toggle-switch{outline:2px solid var(--copper);outline-offset:2px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.game-wrapper{flex:1;display:flex;flex-direction:column;padding:20px;padding-bottom:calc(80px + env(safe-area-inset-bottom,0px));gap:18px;max-width:1280px;width:100%;margin:0 auto}.game-header{display:flex;justify-content:space-between;align-items:stretch;gap:16px;flex-wrap:wrap}.header-left{display:flex;gap:12px;flex-shrink:0}.round-pill,.pot-pill{display:flex;flex-direction:column;justify-content:center;padding:8px 16px;background:var(--surface);border:1px solid var(--border);border-radius:3px;min-width:88px;box-shadow:0 1px #0006,0 3px 6px -2px #0000004d}.pot-pill{background:var(--copper-wash);border-color:var(--copper)}.pill-label{font-family:var(--font-display);font-size:var(--text-xs);font-weight:400;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.12em;line-height:1;margin-bottom:4px}.pot-pill .pill-label{color:var(--copper-hi)}.pill-value{font-family:var(--font-display);font-size:var(--text-xl);font-weight:400;color:var(--ink);line-height:1}.pot-pill .pill-value{color:var(--copper-hi)}.header-right{flex:1;min-width:0;display:flex;align-items:center}.players-strip{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;justify-content:flex-end;width:100%;scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}.players-strip::-webkit-scrollbar{height:4px}.players-strip::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:4px}.player-chip{display:flex;flex-direction:column;justify-content:center;padding:10px 14px;background:var(--surface);border:1px solid var(--border);border-radius:4px;min-width:96px;transition:background .15s,border-color .15s,box-shadow .15s;position:relative;flex-shrink:0;box-shadow:0 1px #0006,0 3px 6px -2px #0000004d}.player-chip.active{background:var(--copper-wash);border-color:var(--copper);box-shadow:inset 0 0 0 1px var(--copper),0 2px #00000073,0 5px 10px -3px #0006}.player-chip.done{opacity:.65}.chip-name{font-family:var(--font-display);font-size:var(--text-xs);font-weight:400;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.player-chip.active .chip-name{color:var(--copper-hi)}.chip-balance{font-family:var(--font-display);font-size:var(--text-base);font-weight:400;line-height:1.2;color:var(--ink)}.chip-score{display:block;margin-top:var(--space-2xs);padding:4px 8px;border-radius:2px;background:var(--forest-wash);color:var(--forest-hi);border:1px solid var(--forest);font-family:var(--font-display);font-size:var(--text-base);font-weight:400;line-height:1;text-align:center;letter-spacing:.04em;animation:chip-score-pop .55s var(--ease-out-expo)}.chip-score.dq{background:var(--oxblood-wash);color:#f4b0aa;border-color:var(--oxblood);font-size:var(--text-xs)}.chip-you{display:inline-block;margin-top:var(--space-2xs);margin-left:6px;padding:2px 7px;border-radius:999px;background:var(--copper-wash);color:var(--copper-hi);border:1px solid var(--copper);font-family:var(--font-display);font-size:var(--text-2xs, 10px);font-weight:600;letter-spacing:.06em;text-transform:uppercase;vertical-align:middle}@keyframes chip-score-pop{0%{transform:scale(.3) translateY(-6px);opacity:0}55%{transform:scale(1.15) translateY(0);opacity:1}to{transform:scale(1) translateY(0);opacity:1}}.presence-dot{position:absolute;top:8px;right:8px;width:10px;height:10px;border-radius:50%;border:2px solid var(--surface);box-shadow:0 0 0 1px #00000059;z-index:2;pointer-events:none}.presence-dot--online{background:var(--forest-hi);box-shadow:0 0 0 1px #0006}.presence-dot--idle{background:var(--amber);box-shadow:0 0 0 1px #0006}.presence-dot--reconnecting{background:var(--oxblood-hi);animation:presence-pulse 1s ease-in-out infinite}.presence-dot--gone{background:#59544f;opacity:.6}@keyframes presence-pulse{0%,to{opacity:1}50%{opacity:.45}}.player-chip.active .presence-dot{border-color:oklch(30% .08 55)}.table{flex:1;display:flex;align-items:center;justify-content:center}.table-felt{width:100%;background-color:var(--felt-color);background-image:radial-gradient(oklch(0% 0 0 / .22) .8px,transparent .8px),radial-gradient(oklch(100% 0 0 / .03) .8px,transparent .8px);background-size:4px 4px,11px 11px;background-position:0 0,2px 3px;border-radius:var(--radius-lg);box-shadow:var(--felt-shadow);padding:var(--space-lg) var(--space-xl);position:relative;overflow:hidden;border-top:2px solid oklch(48% .045 150 / .55);border-bottom:6px solid oklch(14% .035 55);border-inline:3px solid oklch(22% .04 55)}.table-felt:before{content:"";position:absolute;left:var(--space-md);right:var(--space-md);top:var(--space-sm);height:1px;background:#ffffff0a;pointer-events:none}.turn-panel{position:relative;z-index:1;display:flex;flex-direction:column;gap:24px;align-items:center;height:min(620px,calc(100dvh - 140px));justify-content:flex-start}@media(max-width:600px){.turn-panel{height:min(560px,calc(100dvh - 120px))}}.current-name{font-family:var(--font-display);font-size:32px;font-weight:700;letter-spacing:-.02em;margin-bottom:6px;color:var(--ink);transition:font-size .2s var(--ease-out-quart)}.cooked-overlay{position:fixed;inset:0;z-index:1200;pointer-events:none;opacity:0;transition:opacity .35s var(--ease-out-quart)}.cooked-overlay__scrim{position:absolute;inset:0;background:#0c0404d9;-webkit-mask-image:var(--holes);mask-image:var(--holes);-webkit-mask-composite:source-in;mask-composite:intersect}.cooked-overlay__body{position:absolute;left:20px;right:20px;top:50%;display:flex;flex-direction:column;align-items:center;gap:16px;transform:translateY(-50%) scale(var(--stamp-scale, 1))}.cooked-overlay--live{opacity:1}.cooked-overlay--live .cooked-overlay__body{animation:cooked-in .45s var(--ease-out-expo)}@keyframes cooked-in{0%{transform:translateY(-50%) scale(calc(1.08 * var(--stamp-scale, 1)));opacity:0}60%{transform:translateY(-50%) scale(calc(.985 * var(--stamp-scale, 1)));opacity:1}to{transform:translateY(-50%) scale(var(--stamp-scale, 1));opacity:1}}.cooked-overlay__stamp{font-family:var(--font-display);font-size:clamp(56px,12vw,104px);font-weight:400;letter-spacing:.04em;color:var(--oxblood-hi);text-shadow:4px 4px 0 oklch(0% 0 0 / .6);line-height:1;transform:rotate(-3deg)}.cooked-overlay--dealer .cooked-overlay__stamp{font-size:clamp(34px,9vw,64px);color:var(--ink);transform:none}.cooked-overlay__line{font-family:var(--font-body);font-style:italic;font-size:clamp(16px,2.2vw,20px);color:var(--ink-dim);text-align:center;max-width:520px;line-height:1.4}.section-label{font-size:10px;font-weight:700;color:var(--ink-on-felt);text-transform:uppercase;letter-spacing:.14em}.dice-row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;min-height:88px;align-items:center}.die{--size: 72px;--pip-size: 11px;--pip-pad: 12px;--pip-gap: 4px;width:var(--size);height:var(--size);border-radius:12px;background:linear-gradient(160deg,#f7f1e7,#e6dcd0 60%,#d5c8b9);display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);padding:var(--pip-pad);gap:var(--pip-gap);box-shadow:inset 0 -2px 2px #917c6759,inset 0 1px #ffffffe6,0 3px #00000073,0 8px 14px -4px #00000080;transition:transform .15s var(--ease-out-quart),box-shadow .15s;position:relative;flex-shrink:0}.die .pip{opacity:0;background:radial-gradient(circle,#221812,#0a0502 70%);border-radius:50%;width:var(--pip-size);height:var(--pip-size);align-self:center;justify-self:center;box-shadow:inset 0 1px 2px #0000008c,inset 0 -1px 1px #ffffff1f}.die[data-value="1"] .pip:nth-child(5),.die[data-value="2"] .pip:nth-child(1),.die[data-value="2"] .pip:nth-child(9),.die[data-value="3"] .pip:nth-child(1),.die[data-value="3"] .pip:nth-child(5),.die[data-value="3"] .pip:nth-child(9),.die[data-value="4"] .pip:nth-child(1),.die[data-value="4"] .pip:nth-child(3),.die[data-value="4"] .pip:nth-child(7),.die[data-value="4"] .pip:nth-child(9),.die[data-value="5"] .pip:nth-child(1),.die[data-value="5"] .pip:nth-child(3),.die[data-value="5"] .pip:nth-child(5),.die[data-value="5"] .pip:nth-child(7),.die[data-value="5"] .pip:nth-child(9),.die[data-value="6"] .pip:nth-child(1),.die[data-value="6"] .pip:nth-child(3),.die[data-value="6"] .pip:nth-child(4),.die[data-value="6"] .pip:nth-child(6),.die[data-value="6"] .pip:nth-child(7),.die[data-value="6"] .pip:nth-child(9){opacity:1}.die--active{cursor:pointer}@media(hover:hover){.die--active:hover:not(.rolling){transform:translateY(-4px);box-shadow:inset 0 -2px 2px #917c6759,inset 0 1px #ffffffe6,0 5px #00000080,0 14px 22px -6px #0000008c}}.die--selected{cursor:pointer;transform:translateY(-10px);background:linear-gradient(160deg,#fdf4e3,#f3e2cb 60%,#e4ccb6);box-shadow:inset 0 -2px 2px #7b5c3e66,inset 0 1px #fffffff2,0 0 0 2px var(--copper),0 8px #00000073,0 18px 24px -6px #0000008c}.die--selected .pip{background:radial-gradient(circle,#280d02,#0a0100 70%)}.die--banked{--size: 52px;--pip-size: 8px;--pip-pad: 9px;--pip-gap: 3px;border-radius:8px;box-shadow:inset 0 -1px 2px #917c674d,inset 0 1px #ffffffd9,0 2px #00000080,0 5px 9px -2px #00000073}.die--mystery{background:#211813;border:1px solid transparent;box-shadow:inset 0 -2px 2px #00000080,inset 0 1px #ffffff14,0 3px #00000080,0 10px 18px -6px #0000008c;position:relative;animation:mystery-rock 1.6s ease-in-out infinite;padding:0}.die--mystery .pip{display:none}.die--mystery:before{content:"?";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:calc(var(--size) * .55);font-weight:400;color:var(--copper-hi);text-shadow:1px 1px 0 oklch(0% 0 0 / .7)}@keyframes mystery-rock{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}.die--revealed{box-shadow:inset 0 -2px 2px #7b5c3e66,inset 0 1px #fffffff2,0 0 0 2px var(--copper),0 6px #00000080,0 14px 22px -6px #0000008c;animation:die-reveal 1s var(--ease-out-expo);transform-origin:center}.die--busted{background:linear-gradient(160deg,#fce1de,#edc2bd 60%,#d79d98);box-shadow:inset 0 -2px 2px #72020e66,inset 0 1px #ffffffd9,0 0 0 2px var(--oxblood),0 6px #00000080,0 14px 22px -6px #0000008c;animation:die-reveal 1s var(--ease-out-expo);transform-origin:center}.die--busted .pip{background:radial-gradient(circle,#5c0109,#1f0001 70%)}.die--ghost{opacity:.38;filter:grayscale(.75);box-shadow:inset 0 -1px 2px #917c674d,inset 0 1px #ffffffbf,0 2px #00000080,0 6px 10px -2px #0006;animation:ghost-fade-in .6s 1.1s both ease-out}@keyframes ghost-fade-in{0%{opacity:0;transform:scale(.92)}to{opacity:.38;transform:scale(1)}}@keyframes die-reveal{0%{transform:scale(.35) rotate(-12deg);opacity:0}55%{transform:scale(1.12) rotate(3deg);opacity:1}80%{transform:scale(.98) rotate(-1deg);opacity:1}to{transform:scale(1) rotate(0);opacity:1}}.die__cover{position:absolute;inset:0;border-radius:inherit;background:#211813;pointer-events:none;animation:die-uncover .26s ease-out forwards}:where(.dice-art-mystery) .die__cover{background:var(--die-face-mystery) center / 100% 100% no-repeat}.dice-row:not([data-scatter]) .die:has(>.die__cover){position:relative}@keyframes die-uncover{to{opacity:0}}.die--turning{animation:die-turn .6s ease-in-out}@keyframes die-turn{0%,to{transform:scaleY(1)}50%{transform:scaleY(.06)}}:where(.dice-art) .die.die--call-won[data-value],.die.die--call-won{box-shadow:0 0 0 2px var(--copper),0 6px #00000080,0 12px 12px -6px #0000008c}:where(.dice-art) .die.die--call-lost[data-value],.die.die--call-lost{box-shadow:0 0 0 2px var(--oxblood),0 6px #00000080,0 12px 12px -6px #0000008c}.tb-badge--score.tb-badge--call-won{background:var(--copper-hi);color:var(--copper-ink)}@media(prefers-reduced-motion:reduce){.die__cover,.die--turning{animation:none}.die__cover{opacity:0}}.tb-choices .btn.not-chosen{opacity:.35;filter:grayscale(.6);box-shadow:0 4px 12px -4px #0006}.die--just-picked{animation:die-pick .26s var(--ease-out-quart)}@keyframes die-pick{0%{transform:translateY(0) scale(1)}45%{transform:translateY(-15px) scale(1.09)}to{transform:translateY(-10px) scale(1)}}.die.rolling{cursor:default;animation:die-spin .44s linear infinite,die-hop .2s cubic-bezier(.33,.67,.67,1) infinite alternate}:is(.dice-row,.home-mat__show) .die.rolling:nth-child(2){animation-duration:.5s,.23s;animation-delay:-.12s,-.1s;animation-direction:reverse,alternate}:is(.dice-row,.home-mat__show) .die.rolling:nth-child(3){animation-duration:.4s,.19s;animation-delay:-.27s,-.05s}:is(.dice-row,.home-mat__show) .die.rolling:nth-child(4){animation-duration:.47s,.21s;animation-delay:-.05s,-.16s;animation-direction:reverse,alternate}:is(.dice-row,.home-mat__show) .die.rolling:nth-child(5){animation-duration:.42s,.22s;animation-delay:-.33s,-.02s}:is(.dice-row,.home-mat__show) .die.rolling:nth-child(6){animation-duration:.52s,.2s;animation-delay:-.19s,-.13s;animation-direction:reverse,alternate}@keyframes die-spin{0%{rotate:0deg;scale:.76}to{rotate:360deg;scale:.76}}@keyframes die-hop{0%{translate:0 0}to{translate:0 -5px}}.die-slot{--size: 52px;width:var(--size);height:var(--size);border-radius:9px;background:#1c3121;box-shadow:inset 0 2px 4px #00000061,inset 0 -1px 1px #ffffff0a,0 1px #ffffff0d;flex-shrink:0}.actions{display:flex;flex-direction:column;align-items:center;gap:12px;padding-top:6px;width:100%;max-width:320px;margin:0 auto}.actions>.btn{min-width:240px;width:100%}.tb-choices{display:flex;gap:10px;width:100%;justify-content:center}.tb-choices .btn{flex:1 1 0;min-width:0;padding-left:14px;padding-right:14px}.tb-choices .btn:first-child{background:var(--copper);color:var(--copper-ink)}.tb-choices .btn:last-child{background:var(--forest);color:var(--forest-ink);box-shadow:0 3px oklch(30% .08 155),0 5px 10px -3px #00000080,inset 0 1px #ffffff4d}@media(hover:hover){.tb-choices .btn:last-child:hover:not(:disabled){transform:translateY(-2px);background:var(--forest-hi);box-shadow:0 5px oklch(30% .08 155),0 8px 14px -4px #0000008c,inset 0 1px #ffffff59}}.tb-choices .btn:last-child:active:not(:disabled){transform:translateY(2px);box-shadow:0 1px oklch(30% .08 155),0 2px 6px -2px #00000080,inset 0 1px #ffffff40}.hint{font-family:var(--font-body);font-size:var(--text-sm);color:var(--ink-muted);text-align:center;min-height:20px;font-style:italic}.overlay{position:fixed;inset:0;background:#03060be0;display:flex;align-items:center;justify-content:center;padding:20px;z-index:100;animation:fadeIn .25s ease-out}.overlay-card{background:var(--surface);border:1px solid var(--border-strong);border-radius:20px;padding:44px 48px;text-align:center;max-width:420px;width:100%;animation:slideUp .4s cubic-bezier(.2,.9,.3,1.1);box-shadow:0 30px 60px #0009,0 0 0 1px #ffffff0d}.overlay-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);margin-bottom:10px}.overlay-name{font-family:var(--font-display);font-size:clamp(36px,7vw,52px);font-weight:400;letter-spacing:0;margin-bottom:8px;color:var(--copper-hi);text-shadow:2px 2px 0 var(--copper-lo),4px 4px 0 oklch(0% 0 0 / .5);line-height:1}.overlay-hint{font-size:13px;color:var(--text-muted);margin-bottom:28px}.results-wrapper{max-width:720px;width:100%;margin:0 auto;padding:clamp(48px,8vw,96px) clamp(20px,4vw,36px) 28px;display:flex;flex-direction:column;gap:28px}.results-header{text-align:left;max-width:620px;animation:result-row-in .45s var(--ease-out-quart) both}.results-eyebrow{font-family:var(--font-display);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:12px}.results-eyebrow-sep{margin:0 4px;opacity:.6}.results-title{font-family:var(--font-body);font-style:italic;font-weight:500;font-size:clamp(28px,4.5vw,44px);line-height:1.15;letter-spacing:-.005em;color:var(--ink);margin:0;text-wrap:balance}.results-list{display:flex;flex-direction:column;border-top:1px solid oklch(100% 0 0 / .08);border-bottom:1px solid oklch(100% 0 0 / .08);background:#19221a66;border-radius:3px;overflow:hidden}.result-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto auto;align-items:center;gap:18px;padding:16px 16px 16px 14px;border-left:3px solid transparent;border-bottom:1px solid oklch(100% 0 0 / .05);transition:background .2s;animation:result-row-in .42s var(--ease-out-quart) both}.result-row:last-child{border-bottom:none}.result-row:nth-child(1){animation-delay:.06s}.result-row:nth-child(2){animation-delay:.14s}.result-row:nth-child(3){animation-delay:.22s}.result-row:nth-child(4){animation-delay:.3s}.result-row:nth-child(5){animation-delay:.38s}.result-row:nth-child(6){animation-delay:.46s}.result-row:nth-child(7){animation-delay:.54s}.result-row:nth-child(8){animation-delay:.62s}@keyframes result-row-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.result-row{animation-delay:0s!important}}.result-row.winner{border-left-color:var(--copper);background:#3d281a80}.result-rank{font-family:var(--font-display);font-size:16px;letter-spacing:.02em;color:var(--ink-muted);text-align:right}.result-row.winner .result-rank{color:var(--copper-hi)}.result-name-col{display:flex;flex-direction:column;gap:3px;min-width:0}.result-name{font-family:var(--font-display);font-size:17px;font-weight:400;letter-spacing:.02em;color:var(--ink);line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-row.winner .result-name{color:var(--copper-hi)}.result-streak{font-family:var(--font-body);font-style:italic;font-size:13px;color:var(--ink-dim);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.result-dice{display:flex;gap:3px;flex-shrink:0}.result-dice .die{--size: 26px;--pip-size: 3.5px;--pip-pad: 4px;--pip-gap: 1px;border-radius:4px}.result-score{font-family:var(--font-display);font-size:26px;font-weight:400;min-width:48px;text-align:right;color:var(--ink);letter-spacing:.02em}.result-row.winner .result-score{color:var(--copper)}.result-score.dq{color:var(--oxblood-hi);font-size:14px;letter-spacing:.1em}.results-actions{display:flex;flex-direction:column;gap:10px;align-items:stretch;margin-top:8px}.results-actions .btn{min-width:0;width:100%}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(24px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.tb-badge{position:absolute;top:-56px;left:50%;transform:translate(-50%) scale(1);display:inline-flex;align-items:center;gap:10px;padding:11px 22px;border-radius:4px;font-family:var(--font-display);font-size:var(--text-lg);font-weight:400;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;z-index:20;pointer-events:none;border:1px solid oklch(0% 0 0 / .3);box-shadow:0 3px #00000080,0 10px 18px -6px #0000008c;animation:tb-badge-pop .55s var(--ease-out-expo)}.tb-badge.hidden{display:none}.tb-badge__emoji{font-size:var(--text-xl);filter:drop-shadow(0 1px 0 oklch(0% 0 0 / .4))}.tb-badge__text{line-height:1}.tb-badge--perfect{background:var(--copper);color:var(--copper-ink)}.tb-badge--saved{background:var(--forest);color:var(--forest-ink)}.tb-badge--qualify{background:#31653e;color:var(--forest-ink);box-shadow:inset 0 0 0 1px var(--forest)}.tb-badge--bust{background:var(--oxblood);color:var(--oxblood-ink)}.tb-badge--dq,.tb-badge--cooked{background:#602a2a;color:var(--oxblood-ink);box-shadow:inset 0 0 0 1px var(--oxblood)}body:has(.cooked-overlay--live) .tb-badge--cooked{visibility:hidden}.tb-badge--lucky{background:var(--copper-hi);color:var(--copper-ink)}.tb-badge--ouch{background:#a49d94;color:#190f09}.tb-badge--score{background:var(--ink);color:#291507;padding:8px 26px}.tb-badge--score .tb-badge__text{font-size:var(--text-2xl);letter-spacing:.02em}@keyframes tb-badge-pop{0%{transform:translate(-50%) scale(1.35);opacity:0}60%{transform:translate(-50%) scale(.96);opacity:1}to{transform:translate(-50%) scale(1);opacity:1}}.tb-flash{position:absolute;inset:0;pointer-events:none;opacity:0;z-index:6;border-radius:var(--radius-lg)}.tb-flash.hidden{display:none}.tb-flash.flashing{animation:tb-flash .55s ease-out}.tb-flash--gold{background:#de90464d}.tb-flash--green{background:#448c564d}.tb-flash--red{background:#a12f2f57}.tray .die.tray-hop{animation:tray-hop .42s ease-out both}@keyframes tray-hop{0%,to{transform:translateY(0)}35%{transform:translateY(-12px);animation-timing-function:cubic-bezier(.55,0,1,.45)}65%{transform:translateY(0) scaleX(1.06) scaleY(.92)}}@keyframes tb-flash{0%{opacity:0}20%{opacity:1}to{opacity:0}}.table-felt.shake-medium{animation:table-shake-medium .5s ease-in-out}.table-felt.shake-hard{animation:table-shake-hard .55s ease-in-out}@keyframes table-shake-medium{0%,to{transform:translate(0)}15%{transform:translate(-4px,-2px)}30%{transform:translate(5px,2px)}45%{transform:translate(-3px,2px)}60%{transform:translate(4px,-2px)}75%{transform:translate(-2px,1px)}}@keyframes table-shake-hard{0%,to{transform:translate(0) rotate(0)}12%{transform:translate(-9px,-4px) rotate(-.5deg)}24%{transform:translate(9px,4px) rotate(.5deg)}36%{transform:translate(-7px,3px) rotate(-.35deg)}48%{transform:translate(7px,-3px) rotate(.35deg)}60%{transform:translate(-5px,2px) rotate(-.2deg)}72%{transform:translate(5px,-2px) rotate(.2deg)}85%{transform:translate(-3px,1px)}}.lobby-input{width:100%;padding:14px 18px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-weight:500;font-size:15px;outline:none;transition:border-color .15s,background .15s,box-shadow .15s}.lobby-input::placeholder{color:var(--text-muted)}.lobby-input:focus{background:var(--surface-2);border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-dim)}@keyframes shuffle-spin{0%{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(1.2)}to{transform:rotate(360deg) scale(1)}}.btn-small{padding:8px 14px;font-size:var(--text-xs);min-height:36px;letter-spacing:.1em}.lobby-status{text-align:center;font-size:12px;color:var(--text-muted);margin-top:18px;font-weight:500;letter-spacing:.01em}.waiting-wrapper{max-width:640px;width:100%;margin:0 auto;display:flex;flex-direction:column;gap:22px}.waiting-header{text-align:left}.waiting-title{font-family:var(--font-display);font-size:28px;font-weight:400;letter-spacing:.01em;text-transform:uppercase;color:var(--ink);margin:0 0 4px}.waiting-count{font-family:var(--font-display);font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--copper-hi)}.waiting-tagline{margin:6px 0 0;font-size:14px;color:var(--ink-muted);font-style:italic}.seat-table{position:relative;padding:18px;border-radius:var(--radius);background:var(--felt-color);background-image:radial-gradient(oklch(0% 0 0 / .22) .8px,transparent .8px),radial-gradient(oklch(100% 0 0 / .03) .8px,transparent .8px);background-size:3px 3px,5px 5px;background-position:0 0,1px 2px;border:1px solid var(--felt-edge);box-shadow:inset 0 1px #ffffff0a,0 2px #0009,0 16px 32px -12px #0000008c;overflow:hidden}.seat-table-felt{position:relative;min-height:72px;display:flex;align-items:center;justify-content:center;padding:14px 8px}.seat-ring{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:12px}@media(min-width:640px){.seat-ring{grid-template-columns:repeat(4,1fr)}}.seat{position:relative;padding:14px 12px 12px;background:#251d19d9;border:1px solid oklch(40% .02 55 / .6);border-radius:4px;min-height:74px;display:flex;flex-direction:column;gap:6px;transition:border-color .15s,background .2s}.seat--filled{background:#312620eb;border-color:var(--copper-lo)}.seat--you{border-color:var(--copper);background:var(--copper-wash)}.seat--empty{background:transparent;border-style:dashed;border-color:#564a438c;opacity:.75}.seat-empty-label{margin:auto;font-family:var(--font-display);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted)}.seat-name{font-family:var(--font-display);font-size:14px;font-weight:400;color:var(--ink);line-height:1.15;word-break:break-word}.seat--you .seat-name{color:var(--copper-hi)}.seat-pills{display:flex;gap:4px;flex-wrap:wrap}.seat-pill{display:inline-flex;align-items:center;padding:2px 6px;font-size:9px;font-weight:400;font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;line-height:1.3;border-radius:2px;background:#39312c;color:var(--ink-dim);border:1px solid var(--border)}.seat-pill--host{background:var(--copper-wash);color:var(--copper-hi);border-color:var(--copper-lo)}.seat-pill--you{background:var(--copper);color:var(--copper-ink);border-color:var(--copper)}.seat-pill--ready{background:var(--forest-wash);color:var(--forest-hi);border-color:var(--forest)}.seat-pill--bot{background:var(--surface-3);color:var(--ink);border-color:var(--border-strong)}.seat-bank{margin-top:auto;font-family:var(--font-display);font-size:13px;color:var(--forest-hi);letter-spacing:.02em}.seat .presence-dot{position:absolute;top:8px;right:8px;width:8px;height:8px;border:2px solid oklch(24% .015 55)}.seat--new{animation:seat-fill .5s var(--ease-out-expo)}@keyframes seat-fill{0%{transform:scale(.85);opacity:0}to{transform:scale(1);opacity:1}}.idle-dice{display:flex;gap:8px;justify-content:center}.idle-dice .die{--size: 40px;--pip-size: 6px;--pip-pad: 7px;--pip-gap: 2px;border-radius:8px}.idle-dice .die.nudging{animation:idle-nudge .5s var(--ease-out-quart)}@keyframes idle-nudge{0%,to{transform:translateY(0)}35%{transform:translateY(-6px)}65%{transform:translateY(-1px)}}@media(max-width:400px){.idle-dice{gap:6px}.idle-dice .die{--size: 34px;--pip-size: 5px;--pip-pad: 6px;border-radius:7px}}.idle-cards{display:flex;justify-content:center;align-items:center;gap:0;position:relative;height:54px}.idle-card{width:36px;height:54px;border-radius:3px;box-shadow:var(--shadow-press);transition:transform .3s var(--ease-out-quart)}.idle-card[data-idx="0"]{transform:rotate(-10deg) translate(6px)}.idle-card[data-idx="1"]{transform:rotate(0) translate(0) translateY(-2px);z-index:2;margin-inline:-6px}.idle-card[data-idx="2"]{transform:rotate(10deg) translate(-6px)}.idle-card.nudging{animation:idle-card-nudge .55s var(--ease-out-quart)}@keyframes idle-card-nudge{0%{transform:translateY(0)}30%{transform:translateY(-5px) rotate(-1deg)}60%{transform:translateY(-1px) rotate(1deg)}to{transform:translateY(0)}}.idle-card .gin-card__svg{border-radius:3px}.waiting-tokens{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.waiting-token{display:flex;flex-direction:column;padding:8px 12px;background:var(--surface);border:1px solid var(--border);border-radius:3px;min-width:72px;box-shadow:0 1px #0006}.waiting-token__label{font-family:var(--font-display);font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);line-height:1.2}.waiting-token__value{font-family:var(--font-display);font-size:14px;color:var(--ink);letter-spacing:.02em;margin-top:2px}.waiting-token--on .waiting-token__value{color:var(--forest-hi)}.waiting-token--off .waiting-token__value{color:var(--ink-faint)}.waiting-token--editable{cursor:pointer;transition:border-color .15s,color .15s,background .12s}@media(hover:hover){.waiting-token--editable:hover{border-color:var(--copper)}.waiting-token--editable:hover .waiting-token__label{color:var(--copper-hi)}}.waiting-token--editable:focus-visible{outline:2px solid var(--copper);outline-offset:2px}.seat-kick-btn{position:absolute;bottom:6px;right:6px;width:22px;height:22px;padding:0;display:flex;align-items:center;justify-content:center;background:#1c1410cc;color:var(--ink-dim);border:1px solid var(--border);border-radius:50%;cursor:pointer;font-size:16px;line-height:1;font-family:var(--font-body);transition:color .12s,background .12s,border-color .12s,opacity .12s;z-index:2;opacity:0}@media(hover:hover){.seat:hover .seat-kick-btn,.seat:focus-within .seat-kick-btn,.seat-kick-btn:focus-visible{opacity:1}}@media(pointer:coarse){.seat-kick-btn{opacity:1}}.seat-kick-btn:focus-visible{color:var(--oxblood-ink);background:var(--oxblood);border-color:var(--oxblood);outline:none;opacity:1}@media(hover:hover){.seat-kick-btn:hover{color:var(--oxblood-ink);background:var(--oxblood);border-color:var(--oxblood);outline:none;opacity:1}}.lobby-toast{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom) + 24px);transform:translate(-50%,24px);padding:12px 18px;background:var(--surface);color:var(--ink);border:1px solid var(--border-strong);border-radius:4px;box-shadow:0 2px #00000073,0 8px 18px -4px #00000080;font-size:14px;z-index:1000;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s var(--ease-out-quart);max-width:92vw}.lobby-toast--visible{opacity:1;transform:translate(-50%)}.waiting-share{padding:14px 16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:10px}.share-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.share-link{flex:1;min-width:160px;font-family:var(--font-display);font-size:13px;color:var(--copper-hi);text-decoration:none;letter-spacing:.01em;word-break:break-all;user-select:all}@media(hover:hover){.share-link:hover{color:var(--copper);text-decoration:underline}}.share-action-btn{position:relative;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;background:var(--surface-2);color:var(--ink-dim);border:1px solid var(--border);border-radius:3px;cursor:pointer;transition:color .15s,border-color .15s;flex-shrink:0}@media(hover:hover){.share-action-btn:hover{color:var(--copper-hi);border-color:var(--copper)}}.share-action-btn[aria-expanded=true]{color:var(--copper-ink);background:var(--copper);border-color:var(--copper)}.share-action-btn__icon,.share-action-btn__check{display:block;width:16px;height:16px;background-color:currentColor;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain}.share-action-btn__icon[data-icon=copy]{-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='currentColor' d='M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='currentColor' d='M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z'/></svg>")}.share-action-btn__icon[data-icon=qr]{-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='currentColor' d='M3 11h8V3H3v8zm2-6h4v4H5V5zM3 21h8v-8H3v8zm2-6h4v4H5v-4zm8-12v8h8V3h-8zm6 6h-4V5h4v4zm0 10h2v2h-2zm-6-6h2v2h-2zm2 2h2v2h-2zm-2 2h2v2h-2zm2 2h2v2h-2zm2-2h2v2h-2zm0-4h2v2h-2zm2 2h2v2h-2z'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='currentColor' d='M3 11h8V3H3v8zm2-6h4v4H5V5zM3 21h8v-8H3v8zm2-6h4v4H5v-4zm8-12v8h8V3h-8zm6 6h-4V5h4v4zm0 10h2v2h-2zm-6-6h2v2h-2zm2 2h2v2h-2zm-2 2h2v2h-2zm2 2h2v2h-2zm2-2h2v2h-2zm0-4h2v2h-2zm2 2h2v2h-2z'/></svg>")}.share-action-btn__check{position:absolute;inset:0;margin:auto;width:16px;height:16px;opacity:0;transition:opacity .2s;-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='currentColor' d='M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='currentColor' d='M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z'/></svg>")}.share-action-btn--copied .share-action-btn__icon{opacity:0}.share-action-btn--copied .share-action-btn__check{opacity:1;color:var(--forest-hi)}.share-qr-panel{display:flex;flex-direction:column;align-items:center;gap:8px;padding:14px 10px 4px}.share-qr-canvas{background:#f5f1ea;padding:10px;border-radius:3px;box-shadow:0 1px #0006}.share-qr-canvas svg,.share-qr-canvas img{display:block;width:168px;height:168px}.share-qr-caption{font-size:12px;color:var(--ink-muted);margin:0}.waiting-footer{display:flex;flex-direction:column;gap:12px;align-items:stretch}.waiting-msg{margin:0;font-size:14px;color:var(--ink-muted);font-style:italic}.waiting-countdown{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:var(--copper-wash);border:1px solid var(--copper);border-radius:var(--radius-sm)}.waiting-countdown[hidden],.share-qr-panel[hidden]{display:none}.countdown-text{font-family:var(--font-display);font-size:14px;color:var(--copper-hi);letter-spacing:.06em;text-transform:uppercase}#countdown-num{display:inline-block;min-width:20px;text-align:center;font-size:18px;color:var(--copper);animation:countdown-tick 1s infinite}@keyframes countdown-tick{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.btn.btn-small{padding:8px 14px;min-height:34px;font-size:11px}.reactions-bar{position:fixed;bottom:0;left:50%;transform:translate(-50%);display:flex;gap:10px;padding:12px 20px;background:var(--surface);border:1px solid var(--border-strong);border-bottom:none;border-radius:var(--radius) var(--radius) 0 0;box-shadow:0 -2px #0000008c,0 -10px 22px -8px #00000080;z-index:50}.reaction-btn{width:44px;height:44px;display:flex;align-items:center;justify-content:center;font-size:22px;border-radius:50%;background:var(--surface-2);border:1px solid var(--border-strong);cursor:pointer;box-shadow:inset 0 1px #ffffff0f,0 1px #00000073;transition:transform .15s ease,background .15s ease,box-shadow .15s ease;user-select:none;-webkit-user-select:none}@media(hover:hover){.reaction-btn:hover{background:var(--surface-3);border-color:var(--copper-lo);transform:translateY(-2px);box-shadow:inset 0 1px #ffffff14,0 3px #00000073}}.reaction-btn:active{transform:translateY(1px) scale(.96);box-shadow:inset 0 1px #ffffff0a,0 0 #00000073}.reaction-btn--pop{animation:reaction-btn-pop .28s var(--ease-out-expo)}@keyframes reaction-btn-pop{0%{transform:scale(1)}45%{transform:scale(1.35)}to{transform:scale(1)}}.player-chip.chip--hit{animation:chip-hit .6s var(--ease-out-expo)}@keyframes chip-hit{0%{transform:translateY(0)}20%{transform:translateY(-4px) scale(1.04)}45%{transform:translateY(2px) scale(.98)}to{transform:translateY(0) scale(1)}}.reactions-bar--cooldown{opacity:.5;filter:grayscale(.5)}.reactions-bar--cooldown .reaction-btn{cursor:not-allowed}.reactions-bar:after{content:attr(data-cooldown);position:absolute;top:-22px;left:50%;transform:translate(-50%);font-family:var(--font-display);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--oxblood-hi);background:var(--surface);border:1px solid var(--oxblood);border-radius:3px;padding:3px 8px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .15s}.reactions-bar--cooldown:after{opacity:1}.reactions-bar--blocked{animation:reactions-bar-shake .4s ease-out}@keyframes reactions-bar-shake{0%,to{transform:translate(-50%)}20%{transform:translate(calc(-50% - 6px))}40%{transform:translate(calc(-50% + 6px))}60%{transform:translate(calc(-50% - 4px))}80%{transform:translate(calc(-50% + 4px))}}.result-ready-badge{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-left:6px;border-radius:50%;background:var(--forest);color:var(--forest-ink);font-size:11px;font-weight:700;line-height:1;vertical-align:middle}.result-row--ready:not(.winner){box-shadow:inset 3px 0 0 var(--forest)}@media(max-width:900px){.game-wrapper{padding:14px;gap:14px}.game-header{gap:10px}.header-right{order:2;width:100%}.players-strip{justify-content:flex-start}.table-felt{padding:28px 16px 32px}.die{--size: 56px;--pip-size: 9px;--pip-pad: 9px;--pip-gap: 3px;border-radius:11px}.die--banked{--size: 44px;--pip-size: 7px;--pip-pad: 7px;--pip-gap: 2px;border-radius:8px}.die-slot{--size: 44px;border-radius:8px}.dice-row{gap:10px;min-height:70px}.current-name{font-size:26px}.actions .btn{min-width:200px}.reaction-btn{width:38px;height:38px;font-size:18px}.reactions-bar{gap:6px;padding:8px 14px}.waiting-wrapper{padding:28px 22px}.waiting-title{font-size:24px}}@media(max-width:480px){.container{padding:20px 16px}.card{padding:20px}.count-selector{grid-template-columns:repeat(7,1fr);gap:6px}.player-inputs{grid-template-columns:1fr}.count-btn{padding:10px 0;font-size:14px}.table-felt{padding:22px 12px 26px}.die{--size: 46px;--pip-size: 7px;--pip-pad: 7px;--pip-gap: 2px;border-radius:9px}.die--banked{--size: 38px;--pip-size: 6px;--pip-pad: 6px;--pip-gap: 2px;border-radius:7px}.die-slot{--size: 38px;border-radius:7px}.dice-row{gap:8px;min-height:58px}.current-name{font-size:22px}.actions>.btn,.results-actions>.btn{min-width:100%;width:100%}.actions .tb-choices .btn{min-width:0;width:auto}.overlay-card{padding:32px 24px}.overlay-name{font-size:36px}.waiting-wrapper{padding:24px 18px}.waiting-title{font-size:22px}.waiting-share{flex-direction:column;align-items:flex-start;gap:6px}.reaction-btn{width:34px;height:34px;font-size:16px}.reactions-bar{gap:5px;padding:7px 12px}.result-row{grid-template-columns:28px 1fr auto;gap:10px;padding:14px 16px}.result-rank{font-size:18px}.result-name{font-size:15px}.result-dice{grid-column:1 / -1;justify-content:center;margin-top:6px;flex-wrap:wrap}.result-score{font-size:26px}}@media(pointer:coarse){.btn,.chip,.tab,button,[role=button],a.btn,.reaction-btn{min-height:44px}.btn,a.btn,.reaction-btn{min-width:44px}.toggle-info,.seat-kick-btn,.share-action-btn{min-height:0!important;min-width:0!important}.toggle-info,.share-action-btn{position:relative}.toggle-info:before,.seat-kick-btn:before,.share-action-btn:before{content:"";position:absolute;inset:-12px}}.connection-banner{position:fixed;left:50%;top:calc(env(safe-area-inset-top) + 12px);transform:translate(-50%,-24px);display:flex;align-items:center;gap:14px;padding:10px 14px 10px 16px;background:var(--oxblood);color:var(--oxblood-ink);border-radius:4px;box-shadow:0 2px #00000073,0 8px 18px -4px #00000080;font-family:var(--font-body);font-size:14px;z-index:1000;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s var(--ease-out-quart)}.connection-banner--visible{opacity:1;pointer-events:auto;transform:translate(-50%)}.connection-banner__retry{appearance:none;background:#ffffff24;color:inherit;border:1px solid oklch(100% 0 0 / .3);border-radius:3px;padding:6px 10px;font-family:var(--font-display);font-size:11px;text-transform:uppercase;letter-spacing:.06em;cursor:pointer;min-height:32px}@media(hover:hover){.connection-banner__retry:hover{background:#ffffff38}}.lobby-status{min-height:1.5em}.lobby-status--alert{display:flex;align-items:center;gap:12px;color:var(--oxblood-hi);font-weight:500}.chrome-cluster{position:fixed;top:0;left:0;right:0;z-index:500;display:flex;flex-direction:row;align-items:center;justify-content:flex-end;gap:8px;height:calc(env(safe-area-inset-top) + var(--chrome-h));padding:env(safe-area-inset-top) calc(env(safe-area-inset-right) + 14px) 0 calc(env(safe-area-inset-left) + 14px);pointer-events:none}.chrome-cluster>*{pointer-events:auto}.chrome-cluster .sfx-toggle,.chrome-cluster .chrome-btn{position:static}.chrome-cluster button{min-height:0;min-width:0}body{padding-top:calc(env(safe-area-inset-top) + var(--chrome-h))}@media(max-width:480px){:root{--chrome-h: 48px}}body[data-screen=game] .game-header,body[data-screen=gin-game] .game-header,body[data-screen=gin-game] .gin-wrapper{padding-top:var(--space-xs)}body[data-screen=game] .chrome-cluster,body[data-screen=gin-game] .chrome-cluster{gap:6px;padding-left:calc(env(safe-area-inset-left) + 12px);padding-right:calc(env(safe-area-inset-right) + 12px)}.chrome-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--surface);color:var(--ink-dim);border:1px solid var(--border);border-radius:4px;cursor:pointer;font-family:var(--font-display);font-size:16px;font-weight:700;transition:color .15s,border-color .15s;box-shadow:0 1px #0006}@media(hover:hover){.chrome-btn:hover{color:var(--copper);border-color:var(--copper)}}.help-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .18s var(--ease-out-quart)}.help-overlay[hidden]{display:none}.help-overlay--open{opacity:1;pointer-events:auto}.help-overlay__scrim{position:absolute;inset:0;background:#0000008c}.help-overlay__panel{position:relative;width:min(560px,calc(100vw - 32px));max-height:calc(100vh - 64px);max-height:calc(100svh - env(safe-area-inset-top) - 32px);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-drop);display:flex;flex-direction:column;overflow:hidden}.help-overlay__head{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--border)}.help-overlay__title{margin:0;font-family:var(--font-display);font-size:var(--text-xl);color:var(--copper-hi)}.help-overlay__close{background:transparent;border:1px solid var(--border);color:var(--ink-dim);width:32px;height:32px;border-radius:50%;cursor:pointer;font-size:20px;line-height:1}@media(hover:hover){.help-overlay__close:hover{color:var(--copper);border-color:var(--copper)}}.help-overlay__tabs{display:flex;gap:0;padding:0 var(--space-md);border-bottom:1px solid var(--border);background:var(--surface-2)}.help-overlay__tab{background:transparent;border:none;color:var(--ink-dim);padding:10px 14px;font-family:var(--font-display);font-size:11px;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.help-overlay__tab--active{color:var(--copper-hi);border-bottom-color:var(--copper-hi)}.help-overlay__body{padding:var(--space-md) var(--space-lg);overflow-y:auto;font-family:var(--font-body);color:var(--ink);font-size:var(--text-base);line-height:1.5}.help-overlay__body h3{font-family:var(--font-display);font-size:var(--text-lg);color:var(--copper-hi);margin:var(--space-md) 0 var(--space-xs)}.help-overlay__body h3:first-child{margin-top:0}.help-overlay__body p{margin:0 0 var(--space-sm)}.help-overlay__body .help-list{margin:0 0 var(--space-sm);padding-left:var(--space-lg)}.help-overlay__body .help-list li{margin-bottom:4px}.help-overlay__body kbd{font-family:var(--font-display);font-size:11px;padding:2px 6px;background:var(--surface-2);border:1px solid var(--border);border-radius:3px;color:var(--copper-hi)}.help-overlay__body .help-pill{display:inline-block;padding:1px 6px;border-radius:999px;font-family:var(--font-display);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.help-overlay__body .help-pill--set{background:var(--forest-wash);color:var(--forest-hi);border:1px solid var(--forest)}.help-overlay__body .help-pill--run{background:oklch(55% .14 240 / .15);color:oklch(58% .14 240);border:1px solid oklch(55% .14 240)}body.rules-page{padding-top:env(safe-area-inset-top)}.rules-page__head{display:flex;align-items:center;justify-content:space-between;max-width:680px;margin:0 auto;padding:var(--space-md)}.rules-page__brand{margin-bottom:0;text-decoration:none}.rules-page .btn{text-decoration:none}.rules-page__main{max-width:680px;margin:0 auto;padding:var(--space-lg) var(--space-md) var(--space-3xl)}.rules-page__main--short{padding-top:20vh;text-align:center}.rules-page__title{font-family:var(--font-display);font-weight:400;font-size:var(--text-2xl);line-height:1.15;color:var(--copper-hi)}.rules-page__lede{margin:var(--space-xs) 0 var(--space-lg);text-wrap:balance;color:var(--ink-dim);font-size:var(--text-lg)}.rules-page__toc{display:flex;flex-wrap:wrap;gap:var(--space-xs) var(--space-lg);padding-bottom:var(--space-md);border-bottom:1px solid var(--border)}.rules-page__toc a{color:var(--ink-dim);text-decoration-color:var(--border-strong);text-underline-offset:3px}.rules-page__section{padding:var(--space-xl) 0 0;overflow:visible;scroll-margin-top:var(--space-md)}.rules-page__section h2{margin-bottom:var(--space-md);font-family:var(--font-display);font-weight:400;font-size:var(--text-xl);color:var(--copper-hi)}.rules-page__foot{margin-top:var(--space-2xl);text-align:center}.solo-gin-btn{width:100%;margin-top:var(--space-md);font-size:var(--text-sm)}.share-table-btn{width:100%;margin-bottom:var(--space-sm);font-size:var(--text-base)}.share-table-btn--copied{background:var(--forest);border-color:var(--forest-hi)}.sfx-toggle{position:fixed;top:calc(env(safe-area-inset-top) + 14px);left:calc(env(safe-area-inset-left) + 14px);right:auto;bottom:auto;z-index:500;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--surface);color:var(--ink-dim);border:1px solid var(--border);border-radius:4px;cursor:pointer;transition:background .15s,color .15s,border-color .15s;box-shadow:0 1px #0006}@media(hover:hover){.sfx-toggle:hover{color:var(--copper);border-color:var(--copper)}}.sfx-toggle__icon{display:block;width:18px;height:18px;background-color:currentColor;-webkit-mask:var(--sfx-on-icon) center/contain no-repeat;mask:var(--sfx-on-icon) center/contain no-repeat;--sfx-on-icon: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='currentColor'><path d='M3 9v6h4l5 5V4L7 9H3zm13.5 3a4.5 4.5 0 00-2.5-4.03v8.06a4.5 4.5 0 002.5-4.03zm-2.5-9v2.06A7 7 0 0119 12a7 7 0 01-5 6.71V21a9 9 0 000-17.87z'/></svg>")}.sfx-toggle[aria-pressed=false] .sfx-toggle__icon{--sfx-on-icon: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='currentColor'><path d='M16.5 12a4.5 4.5 0 00-2.5-4.03v2.21l2.45 2.45c.03-.21.05-.42.05-.63zm2.5 0c0 .94-.2 1.82-.54 2.64l1.51 1.51A8.9 8.9 0 0021 12a9 9 0 00-7-8.77v2.06A7 7 0 0119 12zM4.27 3L3 4.27 7.73 9H3v6h4l5 5v-6.73l4.25 4.25c-.67.52-1.42.93-2.25 1.17v2.06a9 9 0 003.69-1.81L19.73 21 21 19.73 12 10.73 4.27 3zM12 4L9.91 6.09 12 8.18V4z'/></svg>")}.sfx-toggle[aria-pressed=false]{color:var(--ink-faint)}.table-felt{position:relative}.table-felt>.sfx-toggle{position:absolute;inset:14px 14px auto auto;width:32px;height:32px;z-index:5}.chrome-btn--on,.chrome-btn--on:hover{color:var(--copper-hi);border-color:var(--copper);background:var(--copper-wash)}#coach-toggle{display:none}body.training-mode[data-screen=game] #coach-toggle{display:flex}.coach-card{padding:var(--space-sm) var(--space-md);text-align:left;background:#1d140db8;border:1px solid var(--border);border-left:3px solid var(--copper);border-radius:var(--radius);box-shadow:var(--shadow-press);min-height:96px}.coach-drill{display:none}body.training-mode.coach-on[data-screen=game] .coach-drill{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 12px;margin-bottom:10px;background:#1d140db8;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-press)}.coach-drill__label{font-family:var(--font-display);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted)}.coach-drill__opts{display:flex;gap:4px;flex-wrap:wrap}.coach-drill__opt{min-width:30px;padding:3px 7px;font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;font-variant-numeric:tabular-nums;color:var(--ink-dim);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:color .15s,border-color .15s,background .15s}@media(hover:hover){.coach-drill__opt:hover{border-color:var(--copper-lo);color:var(--ink)}}.coach-drill__opt--active{color:var(--copper-ink);background:var(--copper);border-color:var(--copper)}.coach-card__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);flex-wrap:wrap;margin-bottom:var(--space-xs)}.coach-card__eyebrow{font-family:var(--font-display);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--copper-hi)}.coach-card__chips{display:flex;gap:6px;flex-wrap:wrap}.coach-chip{display:inline-flex;align-items:baseline;gap:5px;padding:2px 8px;background:var(--surface);border:1px solid var(--border);border-radius:999px;white-space:nowrap}.coach-chip__label{font-family:var(--font-display);font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted)}.coach-chip__val{font-size:var(--text-sm);color:var(--ink);font-weight:700}.coach-chip--target .coach-chip__val,.coach-chip--gold .coach-chip__val{color:var(--copper-hi)}.coach-card__advice{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:var(--text-base);color:var(--ink);line-height:1.45}.coach-card__verb{font-family:var(--font-display);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-dim)}.coach-card__then{color:var(--ink-muted);font-size:var(--text-sm)}.coach-dice{display:inline-flex;gap:4px;vertical-align:middle}.die--cmini{--size: 26px;--pip-size: 4px;--pip-pad: 5px;--pip-gap: 1px;border-radius:6px;box-shadow:inset 0 -1px 1px #917c674d,inset 0 1px #ffffffd9,0 1px #0006}.coach-apply{margin-left:auto;padding:4px 12px;font-family:var(--font-display);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--copper-hi);background:transparent;border:1px solid var(--copper-lo);border-radius:var(--radius-sm);cursor:pointer;transition:background .15s,border-color .15s}@media(hover:hover){.coach-apply:hover{background:var(--copper-wash);border-color:var(--copper)}}.coach-card__why{margin-top:var(--space-xs);font-size:var(--text-sm);color:var(--ink-dim);line-height:1.5}.coach-why__summary{margin-bottom:6px}.coach-why__list{list-style:none;display:flex;flex-direction:column;gap:5px;margin:0;padding:0}.coach-why__row{display:flex;align-items:baseline;gap:8px;line-height:1.45}.coach-why__vals{flex:0 0 auto;min-width:2.1em;color:var(--ink);font-variant-numeric:tabular-nums}.coach-why__verdict{flex:0 0 auto;font-family:var(--font-display);font-size:9px;letter-spacing:.08em;text-transform:uppercase;padding:1px 7px;border-radius:999px;border:1px solid}.coach-why__verdict--lock{color:var(--copper-hi);border-color:var(--copper-lo);background:var(--copper-wash)}.coach-why__verdict--bank{color:var(--forest-hi);border-color:#267b4c80;background:var(--forest-wash)}.coach-why__verdict--cup{color:var(--ink-muted);border-color:var(--border);background:transparent}.coach-why__primer{margin-top:7px;padding-top:6px;border-top:1px dashed var(--border);font-size:var(--text-xs);color:var(--ink-muted);font-style:italic;line-height:1.5}.coach-card__tip{margin-top:var(--space-xs);padding-top:6px;border-top:1px dashed var(--border);font-size:var(--text-xs);color:var(--ink-muted);font-style:italic;line-height:1.5}.coach-card__alts{display:flex;flex-direction:column;gap:4px;margin-top:var(--space-xs)}.coach-alt{display:flex;align-items:baseline;gap:10px;width:100%;padding:4px 8px;font-family:var(--font-body);font-size:var(--text-sm);text-align:left;color:var(--ink-dim);background:transparent;border:1px solid oklch(40% .02 55 / .5);border-radius:var(--radius-sm);cursor:pointer;transition:border-color .15s,background .15s}@media(hover:hover){.coach-alt:hover{border-color:var(--copper-lo);background:#2f272280}}.coach-alt__vals{font-weight:600;color:var(--ink);min-width:3.5em}.coach-alt__stat{margin-left:auto;color:var(--ink-muted)}.coach-alt__delta{color:var(--oxblood-hi);font-variant-numeric:tabular-nums}.coach-alt__cooked{font-family:var(--font-display);font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--oxblood-ink);background:var(--oxblood);padding:1px 6px;border-radius:999px}.coach-card__you{margin-top:var(--space-xs);padding-top:var(--space-xs);border-top:1px dashed var(--border);font-size:var(--text-sm);color:var(--ink-dim)}.coach-you--match{color:var(--forest-hi)}.coach-you--worse{color:var(--oxblood-hi)}.die--coach{position:relative}.die--coach:after{content:"";position:absolute;inset:-5px;border:2px dashed var(--copper);border-radius:15px;opacity:.85;pointer-events:none}.die--selected.die--coach:after{opacity:.3}@media(max-width:640px){.coach-card{padding:10px 12px;min-height:88px}.coach-card__advice{font-size:var(--text-sm)}.die--cmini{--size: 22px;--pip-size: 3px;--pip-pad: 4px;--pip-gap: 1px;border-radius:5px}.coach-apply{padding:3px 9px}}body.training-mode .turn-panel{height:min(500px,calc(100dvh - 130px))}@media(max-width:600px){body.training-mode .turn-panel{height:min(470px,calc(100dvh - 110px))}}.train-stat{min-width:0;padding:6px 12px}.train-stat .pill-value{font-size:var(--text-base)}.home{max-width:480px;padding-top:var(--space-lg)}.join-form{display:flex;flex-direction:column;gap:6px}.home-start{display:flex;flex-direction:column;gap:2px;width:100%;min-height:66px;white-space:normal}.btn-sub{font-family:var(--font-body);font-size:var(--text-xs);font-weight:500;text-transform:none;letter-spacing:0;opacity:.8}.join-row{display:flex;gap:var(--space-xs)}.join-code-input{flex:1;min-width:0;padding:10px 12px;font-family:var(--font-display);font-size:22px;letter-spacing:.3em;text-align:center;text-transform:uppercase}.join-code-input::placeholder{color:var(--ink-faint)}.join-row .btn{min-width:96px}.home .lobby-status{margin:0;min-height:1.5em;font-size:var(--text-sm)}.home .lobby-status--alert{display:block}.home-solo{display:flex;flex-direction:column;gap:var(--space-xs);padding-top:var(--space-md);border-top:1px dashed var(--border)}.home-solo [hidden]{display:none!important}.home .play-money-note{margin-top:var(--space-lg)}.link-btn{align-self:center;padding:8px 10px;background:none;border:0;color:var(--ink-dim);font-family:var(--font-body);font-size:var(--text-sm);text-decoration:underline;text-decoration-color:var(--border-strong);text-underline-offset:3px;cursor:pointer}@media(hover:hover){.link-btn:hover{color:var(--ink);text-decoration-color:var(--copper)}}.table-code{align-self:stretch;display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-sm);padding-bottom:10px;border-bottom:1px dashed var(--border)}.table-code[hidden]{display:none}.table-code__label{font-family:var(--font-display);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted)}.table-code__value{font-family:var(--font-display);font-size:clamp(32px,9vw,44px);letter-spacing:.18em;line-height:1;color:var(--copper-hi)}.screen[data-screen=game]{height:calc(100svh - env(safe-area-inset-top) - var(--chrome-h));min-height:0}@media(max-width:480px){.screen[data-screen=game]{height:calc(100svh - env(safe-area-inset-top) - var(--chrome-h))}}@media(max-height:520px){.screen[data-screen=game]{height:auto;min-height:520px}}.dice-table{min-height:0;max-width:560px;gap:10px;padding:8px 14px calc(12px + env(safe-area-inset-bottom,0px))}.dice-table .game-header{flex-wrap:nowrap;align-items:center;gap:8px}.dice-table .pill-label{font-size:9px;margin-bottom:3px}.dice-table .pill-value{font-size:var(--text-lg)}.dice-table .players-strip{justify-content:flex-start}.dice-table .players-strip>:first-child{margin-left:auto}.dice-table .players-strip{padding:9px 2px 3px}.dice-table .player-chip{min-width:0;max-width:128px;padding:5px 22px 5px 9px}.dice-table .chip-name{font-size:11px}.dice-table .chip-balance{font-size:var(--text-sm)}.dice-table .chip-score{position:absolute;top:-9px;right:-5px;z-index:3;margin:0;padding:2px 6px;font-size:12px;animation:none}.dice-table .chip-score.dq{font-size:10px}.dice-table .chip-you{align-self:flex-start;margin:2px 0 0;padding:1px 6px;font-size:9px}.dice-table .train-stat{flex:1 1 0;min-width:0;align-items:center;padding:4px 6px}.dice-table .train-stat .pill-label{font-size:8.5px;letter-spacing:.08em}.dice-table .train-stat .pill-value{font-size:var(--text-sm)}.dice-table .table{flex:1 1 auto;min-height:0;align-items:stretch}.dice-table .table-felt{display:flex;flex-direction:column;min-height:0;padding:12px 14px;overflow:visible}.dice-table .turn-panel{flex:1 1 auto;min-height:0;height:auto;gap:10px;align-items:stretch}.felt-info{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:26px}.felt-info__who{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-sm);font-weight:600;color:var(--ink)}.felt-info__roll{font-weight:500;color:var(--ink-on-felt)}.felt-info__who .lows-first{color:var(--copper-hi)}.beat-chip{flex:none;padding:3px 10px;border-radius:999px;background:var(--ink);color:var(--copper-ink);font-size:12px;font-weight:600;white-space:nowrap;box-shadow:var(--shadow-press)}.beat-chip b{font-family:var(--font-display);font-weight:400}.cup{--cup-die: 72px;position:relative;flex:1 1 auto;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px}.cup .dice-row{max-width:calc(3 * var(--cup-die) + 2 * 14px);min-height:calc(var(--cup-die) + 12px);gap:16px 14px}.cup .dice-row[data-count="4"]:not([data-lows]){max-width:calc(2 * var(--cup-die) + 14px)}.cup .die{--size: var(--cup-die)}.cup .tb-badge{top:0}@media(max-width:480px){.cup{--cup-die: 58px}.cup .die{--pip-size: 9px;--pip-pad: 9px;--pip-gap: 3px;border-radius:11px}}@media(max-width:480px)and (max-height:700px){.cup{--cup-die: 50px}.cup .die{--pip-size: 8px;--pip-pad: 8px}}.tray{--tray-die: 46px;flex:none;display:flex;align-items:center;gap:6px;padding:8px 10px;border-radius:var(--radius);background:#132717;box-shadow:inset 0 2px 4px #0006,0 1px #ffffff0d}.tray__group{display:flex;gap:5px}.tray__sep{align-self:stretch;width:1px;margin:0 3px;background:#ffffff1f}.tray-slot{position:relative;flex:none;width:var(--tray-die);height:var(--tray-die);border-radius:8px;background:#1a2e1e;box-shadow:inset 0 2px 3px #0006}.tray-slot:not(:empty){background:none;box-shadow:none}.tray-slot--socket:empty:before{content:attr(data-need);position:absolute;inset:0;display:grid;place-items:center;border:1.5px dashed oklch(62% .15 27 / .7);border-radius:inherit;font-family:var(--font-display);font-size:calc(var(--tray-die) * .42);color:#df695e}.tray-slot .die{--size: var(--tray-die);--pip-size: calc(var(--tray-die) * .15);--pip-pad: calc(var(--tray-die) * .17);--pip-gap: 2px;border-radius:8px}.tray-slot--wrong:after{content:"";position:absolute;inset:-3px;border:2px solid var(--oxblood-hi);border-radius:10px;pointer-events:none}.tray__score{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;gap:3px;line-height:1}.tray__score-label{font-family:var(--font-display);font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-on-felt)}.tray__score-value{min-width:2ch;font-family:var(--font-display);font-size:calc(var(--tray-die) * .62);font-variant-numeric:tabular-nums;text-align:right;color:var(--ink)}.tray__score--pending .tray__score-value,.tray__score-value.score-value--empty{color:var(--ink-on-felt)}.tray__score.qualified .tray__score-value{color:var(--forest-hi)}.tray__score-value.score-value--empty{font-family:var(--font-body);font-size:calc(var(--tray-die) * .5)}.tray__score-value.score-value--cooked{font-size:calc(var(--tray-die) * .44);letter-spacing:.04em;color:var(--oxblood-hi)}@media(max-width:480px){.tray{--tray-die: 36px;gap:4px;padding:7px 8px}.tray__group{gap:4px}}@media(max-width:360px){.dice-table{padding-left:10px;padding-right:10px}.dice-table .table-felt{padding:10px}.tray{--tray-die: 28px;gap:3px;padding:6px}.tray__group{gap:3px}}@media(max-width:480px)and (max-height:600px){.cup{--cup-die: 44px;gap:6px}.cup .dice-row{row-gap:12px}.cup .die{--pip-size: 7px;--pip-pad: 7px;--pip-gap: 2px;border-radius:9px}}.turn-line{flex:none;height:44px;display:flex;align-items:center;justify-content:center}.turn-line .hint{margin:0}.coach-line:not(.hidden)~.hint{display:none}.coach-line{display:flex;align-items:center;gap:10px;width:100%;height:100%;padding:0 12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--ink-dim);font-family:var(--font-body);font-size:13.5px;line-height:1.3;text-align:left;cursor:pointer}@media(hover:hover){.coach-line:hover{border-color:var(--copper-lo);color:var(--ink)}}.coach-line__tag{flex:none;padding:2px 7px;border:1px solid var(--copper-lo);border-radius:999px;font-family:var(--font-display);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--copper-hi)}.coach-line__text{flex:1 1 auto;min-width:0}.coach-line__text b{color:var(--ink);font-weight:700}.coach-line__text .coach-dice{vertical-align:middle}.coach-line__more{flex:none;font-size:12px;font-weight:600;color:var(--copper-hi)}.dice-table .actions{flex:none;max-width:none;min-height:58px;padding-top:0;gap:0;justify-content:center}.dice-table .actions>.btn{min-width:0;width:100%}.btn.btn--instruct,.btn-primary.btn--instruct:disabled{opacity:1;filter:none;background:var(--surface);color:var(--ink-dim);border:1px solid var(--border);box-shadow:none;font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;text-transform:none;letter-spacing:0;cursor:default}.dice-table .reactions-bar{position:relative;left:auto;transform:none;width:100%;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));justify-items:center;align-items:center;gap:4px;padding:0;background:none;border:0;box-shadow:none}.dice-table .reactions-bar--blocked{animation-name:reactions-bar-nudge}@keyframes reactions-bar-nudge{0%,to{transform:none}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}.dice-table .reaction-btn{width:100%;min-width:0;max-width:52px;height:auto;min-height:0;aspect-ratio:1}.sheet-layer{position:fixed;inset:0;z-index:70;display:flex;align-items:flex-end;justify-content:center}.sheet-layer__scrim{position:absolute;inset:0;background:#08050399}.sheet-layer__panel{position:relative;width:100%;max-width:560px;max-height:86dvh;overflow-y:auto;overscroll-behavior:contain;padding:16px 18px calc(20px + env(safe-area-inset-bottom,0px));background:var(--surface);border:1px solid var(--border);border-bottom:0;border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:0 -2px #00000080,0 -16px 32px -12px #0000008c}.sheet-layer--in .sheet-layer__panel{animation:sheet-up .32s var(--ease-out-expo)}.sheet-layer--in .sheet-layer__scrim{animation:sheet-fade .2s ease-out}@keyframes sheet-up{0%{transform:translateY(100%)}}@keyframes sheet-fade{0%{opacity:0}}.sheet-layer__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.sheet-layer__title{font-family:var(--font-display);font-size:14px;letter-spacing:.12em;text-transform:uppercase;color:var(--copper-hi)}.sheet-layer__close{width:36px;height:36px;border:1px solid var(--border);border-radius:50%;background:var(--surface-2);color:var(--ink-dim);font-size:20px;line-height:1;cursor:pointer}@media(hover:hover){.sheet-layer__close:hover{color:var(--ink);border-color:var(--border-strong)}}#coach-sheet .coach-card{min-height:0;padding:0;background:none;border:0;box-shadow:none}#coach-sheet .coach-drill{margin-bottom:12px}#coach-sheet .coach-card__eyebrow{display:none}.sheet-layer__panel.results-wrapper{max-width:560px;max-height:90dvh;margin:0;padding:18px 18px calc(20px + env(safe-area-inset-bottom,0px));gap:16px}.sheet-layer__panel .results-title{font-size:26px}.results-recap{display:grid;gap:4px;margin:10px 0 0;padding:0;list-style:none;font-size:var(--text-sm);font-style:italic;color:var(--ink-dim)}.results-recap[hidden]{display:none}.result-dice .die-slot{--size: 26px;border-radius:4px}.sheet-layer__panel .result-row{grid-template-columns:20px minmax(0,1fr) auto auto;gap:10px;padding:10px 12px}.sheet-layer__panel .result-dice{grid-column:auto;margin:0;flex-wrap:nowrap;justify-content:flex-end;gap:2px}.sheet-layer__panel .result-dice .die,.sheet-layer__panel .result-dice .die-slot{--size: 22px;--pip-size: 3px;--pip-pad: 3.5px}.sheet-layer__panel .result-score{min-width:2ch;font-size:22px}.die[data-value="1"] .pip,.die[data-value="4"] .pip{background:radial-gradient(circle,#cc3430,#970818 70%)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.screen[data-screen=lobby],.screen[data-screen=waiting],.screen[data-screen=setup],.screen[data-screen=tables]{height:calc(100svh - env(safe-area-inset-top) - var(--chrome-h));min-height:0}@media(max-width:480px){.screen[data-screen=lobby],.screen[data-screen=waiting],.screen[data-screen=setup],.screen[data-screen=tables]{height:calc(100svh - env(safe-area-inset-top) - var(--chrome-h))}}@media(max-height:480px){.screen[data-screen=lobby],.screen[data-screen=waiting],.screen[data-screen=setup],.screen[data-screen=tables]{height:auto;min-height:480px}}.home{width:100%;max-width:440px;height:100%;margin:0 auto;display:flex;flex-direction:column;justify-content:center;--home-gap: clamp(8px, 1.5dvh, 16px);gap:var(--home-gap);padding:clamp(4px,1.2dvh,20px) 16px calc(clamp(8px,1.4dvh,16px) + env(safe-area-inset-bottom,0px));overflow-y:auto}.home>*{flex:none}.home-hero{text-align:center}.home-hero .brand{margin-bottom:clamp(4px,1dvh,12px)}.home-hero .logo{margin:0;font-size:clamp(42px,9.5dvh,92px);line-height:.95}.home-hero .tagline{display:grid;max-width:30ch;margin:clamp(6px,1.2dvh,12px) auto 0;font-size:clamp(14px,2.2dvh,17px);line-height:1.4;text-wrap:balance}.tagline__game{grid-area:1 / 1;visibility:hidden}body:not([data-game=gin]):not([data-game=dealer]) .tagline__game[data-game=dice],body[data-game=dealer] .tagline__game[data-game=dealer],body[data-game=gin] .tagline__game[data-game=gin]{visibility:visible}.home .home-mat{--mat-die: clamp(32px, min(11vw, 6dvh), 50px);flex:1 1 0;min-height:calc(var(--mat-die) * 1.6 + 16px);max-height:150px;margin:4px;padding:8px;display:flex;align-items:center;justify-content:center;border:0;border-radius:18px;background-color:var(--felt-color);background-image:radial-gradient(oklch(0% 0 0 / .22) .8px,transparent .8px),radial-gradient(oklch(100% 0 0 / .03) .8px,transparent .8px);background-size:4px 4px,11px 11px;background-position:0 0,2px 3px;box-shadow:inset 0 3px #00000059,0 0 0 4px #342215,0 6px 0 4px #180c05}.home-mat__show{display:flex;align-items:center;justify-content:center;gap:clamp(5px,1.6vw,10px)}.home-mat .die{--size: var(--mat-die);--pip-size: calc(var(--size) * .15);--pip-pad: calc(var(--size) * .17);--pip-gap: 2px;border-radius:calc(var(--size) * .2)}.home-mat .gin-card{width:calc(var(--mat-die) * 1.05);aspect-ratio:2 / 3;height:auto}.home .game-type-picker{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:0;padding:4px;background:var(--surface);border:1px solid var(--border);border-radius:14px}.home .game-type-option{min-height:clamp(38px,5.6dvh,46px);padding:6px 8px;background:none;border:0;border-radius:10px;box-shadow:none;font-family:var(--font-body);font-size:clamp(13px,4.2vw,15px);white-space:nowrap;font-weight:600;color:var(--ink-muted);transform:none}.home .game-type-option--active{background:var(--surface-2);color:var(--ink);box-shadow:0 2px #00000073}.home .join-form .field-label{margin:0;flex:none;white-space:nowrap}.home .lobby-input{min-height:44px;padding:8px 12px}.chrome-brand,.name-tag{display:none}body[data-screen=lobby] .chrome-brand{display:inline-block;margin:0 auto 0 0;padding:3px 8px 2px;font-size:10px;letter-spacing:.16em}body[data-screen=lobby] .name-tag{display:inline-flex}body[data-screen=waiting] .chrome-cluster .name-tag{display:inline-flex;order:-1;margin-right:auto}body[data-screen=waiting] .chrome-cluster .table-leave{order:-2;margin-right:0}body[data-screen=lobby] #help-btn,body[data-screen=lobby] #sfx-toggle,body[data-screen=gin-game] #help-btn,body[data-screen=waiting][data-game=gin] #help-btn{display:none}.name-tag{align-items:center;gap:8px;min-width:0;max-width:15rem;height:38px;padding:3px 12px 3px 4px;background:var(--surface);border:1px solid var(--border);border-radius:999px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:border-color .15s}@media(hover:hover){.name-tag:hover{border-color:var(--ink-faint)}}.name-tag:focus-visible{outline:2px solid var(--copper-hi);outline-offset:2px}.name-tag__initial{flex:none;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--copper);color:var(--copper-ink);font-family:var(--font-display);font-size:12px;box-shadow:inset 0 -2px #00000040}.name-tag__txt{display:flex;flex-direction:column;min-width:0;line-height:1.15}.name-tag__label{font-family:var(--font-display);font-size:8.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint)}.name-tag__name{display:flex;align-items:center;gap:5px;min-width:0;font-family:var(--font-body);font-size:14px;font-weight:600;white-space:nowrap}#name-tag-name{min-width:0;overflow:hidden;text-overflow:ellipsis;padding-bottom:.2em;margin-bottom:-.2em}.name-tag__name svg{flex:none;color:var(--ink-faint)}.me-sheet{display:flex;flex-direction:column;gap:10px;max-width:440px}.me-sheet .field-label{margin:4px 0 0}.me-name-row{display:flex;gap:8px}.me-name-row .lobby-input{flex:1 1 auto;min-width:0;min-height:48px;padding:8px 14px;font-size:17px;font-weight:600}.me-shuffle{flex:none;width:48px;height:48px;display:grid;place-items:center;padding:0;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:22px;line-height:1;cursor:pointer}.me-shuffle.rolling{animation:shuffle-spin .4s ease-out}.me-volume{display:flex;align-items:center;gap:12px;min-height:44px}.me-volume__icon{flex:none;font-size:18px}.me-volume input[type=range]{flex:1 1 auto;min-width:0;height:32px;margin:0;accent-color:var(--copper);cursor:pointer}.me-volume__value{flex:none;min-width:3.2em;text-align:right;font-family:var(--font-display);font-size:13px;color:var(--ink-dim);font-variant-numeric:tabular-nums}.me-row{display:flex;align-items:center;justify-content:space-between;min-height:50px;margin-top:4px;padding:0 16px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);color:var(--ink);font-family:var(--font-body);font-size:16px;font-weight:600;text-align:left;cursor:pointer}.me-row b{color:var(--ink-faint)}.me-done{width:100%;margin-top:6px}.home-actions{display:flex;flex-direction:column;gap:clamp(6px,1.2dvh,10px)}.home .home-start{width:100%;min-height:clamp(54px,8.6dvh,66px)}.home-solo-btn{width:100%;min-height:44px}.home-actions [hidden],.home-foot [hidden]{display:none!important}.home-panels{display:grid}.home-panel{grid-area:1 / 1;min-width:0;display:flex;flex-direction:column;gap:var(--home-gap)}.home-panel--off{visibility:hidden}.home-start .btn-sub:has(.chip){display:inline-flex;align-items:center;justify-content:center;gap:6px}.home-start .chip--mini{--chip: 14px}.home-dealer-note{margin:0;text-align:center;font-size:15px;font-style:italic;color:var(--ink-dim)}.home .join-form{display:flex;flex-direction:row;align-items:center;gap:10px}.home .join-row{flex:1 1 auto;min-width:0}.home .join-code-input{padding:6px 10px;font-size:20px}.home .join-row .btn{min-width:76px;min-height:44px}.home .lobby-status{min-height:1.3em;margin:0;font-size:13px;text-align:center}.home-foot{display:flex;justify-content:center;align-items:center;flex-wrap:nowrap;gap:14px;font-size:13px}.home-foot .link-btn,.home-foot .play-money-note{white-space:nowrap}@media(max-width:360px){.home-foot{gap:8px}.home-foot,.home-foot .link-btn,.home-foot .play-money-note{font-size:12px}}.home-foot .link-btn{padding:6px 2px;font-size:13px}.home-foot .play-money-note{margin:0;font-size:12px}@media(max-height:530px){.home .home-mat{display:none}}.screen[data-screen=waiting] .waiting-wrapper{width:100%;max-width:560px;height:100%;margin:0 auto;display:flex;flex-direction:column;gap:clamp(8px,1.5dvh,14px);padding:clamp(4px,1.2dvh,16px) 16px calc(clamp(8px,1.4dvh,16px) + env(safe-area-inset-bottom,0px))}.screen[data-screen=waiting] .waiting-wrapper>*{flex:none}.screen[data-screen=waiting] .waiting-header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:2px 10px}.screen[data-screen=waiting] .waiting-title{margin:0;font-size:clamp(16px,min(5vw,3.2dvh),26px);white-space:nowrap}.screen[data-screen=waiting] .waiting-count{white-space:nowrap}.screen[data-screen=waiting] .waiting-tagline{flex:1 1 100%;margin:2px 0 0;font-size:13px}.screen[data-screen=waiting] .waiting-share{position:relative;gap:8px;padding:12px 14px}.screen[data-screen=waiting] .table-code{padding-bottom:6px}.screen[data-screen=waiting] .table-code__value{font-size:clamp(32px,6.4dvh,52px)}.screen[data-screen=waiting] .share-link{min-width:0;font-size:12px}.screen[data-screen=waiting] .share-row{flex-wrap:nowrap;gap:8px;align-items:stretch}.screen[data-screen=waiting] .share-table-btn{flex:1 1 auto;min-width:0;min-height:44px;padding:8px 12px}.screen[data-screen=waiting] .share-action-btn{width:44px;height:44px}.screen[data-screen=waiting] .share-qr-panel{position:absolute;top:calc(100% + 8px);left:0;right:0;z-index:30;padding:16px 12px 12px;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-drop)}.screen[data-screen=waiting] .seat-table{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;gap:8px;padding:12px}.screen[data-screen=waiting] .seat-ring{flex:0 1 auto;min-height:0;margin:0;overflow-y:auto;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:max-content;gap:8px;align-content:start}.screen[data-screen=waiting] .seat{min-height:48px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name name" "pills bank";align-items:center;gap:4px 8px;padding:8px 10px}.screen[data-screen=waiting] .seat-name{grid-area:name;padding-right:14px;overflow-wrap:anywhere}.screen[data-screen=waiting] .seat-pills{grid-area:pills}.screen[data-screen=waiting] .seat-bank{grid-area:bank;margin:0}.screen[data-screen=waiting] .seat--empty{display:flex;min-height:44px}.screen[data-screen=waiting] .seat-table-felt{flex:1 1 auto;min-height:0;padding:0}.screen[data-screen=waiting] .waiting-tokens{display:flex;flex-wrap:nowrap;align-items:stretch;gap:6px}.screen[data-screen=waiting] .waiting-token{flex:1 1 0;min-width:auto;min-height:44px;padding:6px 8px}@media(max-width:370px){.screen[data-screen=waiting] .waiting-tokens{gap:5px}.screen[data-screen=waiting] .waiting-token{padding:6px}.screen[data-screen=waiting] .waiting-token__row{gap:2px}.screen[data-screen=waiting] .waiting-token__row .waiting-token__value{font-size:13px}.screen[data-screen=waiting] .token-step{width:22px;height:22px;font-size:14px}.screen[data-screen=waiting] .token-step:before{inset:-11px}}.screen[data-screen=waiting] .waiting-footer{gap:6px}.screen[data-screen=waiting] .waiting-msg{min-height:1.3em;font-size:13px;text-align:center}.waiting-actions{display:flex;gap:10px}.waiting-actions #back-to-lobby-btn{display:none}.waiting-actions #start-game-btn,.waiting-actions #ready-btn{flex:1 1 auto}@media(max-height:640px){.screen[data-screen=waiting] .waiting-tagline{display:none}}.screen[data-screen=waiting] .seat-table{gap:0}.screen[data-screen=waiting] .seat-table-felt{flex:1 1 0;overflow:hidden;container:idle-felt / size}@container idle-felt (max-height: 45.5px){.idle-dice{display:none}}@media(min-width:401px){@container idle-felt (max-height: 51.5px){.idle-dice{display:none}}}@container idle-felt (max-height: 65px){.idle-cards{display:none}}.screen[data-screen=setup] .setup-form{width:100%;max-width:520px;height:100%;margin:0 auto;display:flex;flex-direction:column;gap:clamp(10px,2dvh,18px);padding:clamp(4px,1.2dvh,16px) 16px calc(clamp(8px,1.4dvh,16px) + env(safe-area-inset-bottom,0px))}.screen[data-screen=setup] .setup-form>*{flex:none}.setup-top{display:flex;align-items:center;gap:12px;min-height:40px}.setup-top .link-btn{flex:none;padding-left:0}.setup-title{margin:0;font-family:var(--font-display);font-size:clamp(15px,2.6dvh,20px);font-weight:400;letter-spacing:.02em;color:var(--ink)}.screen[data-screen=setup] .field,.screen[data-screen=setup] .count-selector{gap:6px}.screen[data-screen=setup] .count-btn{min-height:44px;padding:0}.screen[data-screen=setup] .setup-names{flex:1 1 auto;min-height:0}.screen[data-screen=setup] .player-inputs{flex:1 1 auto;min-height:0;overflow-y:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-content:start}.screen[data-screen=setup] .player-input{min-height:44px;padding:0 10px}.screen[data-screen=setup] .player-input input{min-width:0;width:100%}.setup-rules{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}.setup-rules .money-input{min-height:44px;padding:0 10px}.setup-rules .money-input input{min-width:0;width:100%}.setup-rules .toggle-row{min-height:44px;padding:0;justify-content:center}.screen[data-screen=setup] .setup-start{width:100%}@media(max-height:600px){.screen[data-screen=setup] .player-inputs{gap:6px}.screen[data-screen=setup] .player-input{min-height:42px}}.table-leave,.table-meta{display:none}body[data-screen=game] .table-leave,body[data-screen=gin-game] .table-leave,body[data-screen=waiting] .table-leave,body[data-screen=setup] .table-leave,body[data-screen=tables] .table-leave,body[data-screen=game] .table-meta[data-for=game],body[data-screen=gin-game] .table-meta[data-for=gin-game]{display:flex}body[data-screen=waiting] .table-leave,body[data-screen=setup] .table-leave,body[data-screen=tables] .table-leave{margin-right:auto}.table-leave{flex:none;color:var(--ink)}.table-meta{flex:0 1 auto;min-width:0;height:36px;margin-right:auto;gap:1px;background:var(--border);border:1px solid var(--border);border-radius:4px;overflow:hidden;box-shadow:0 1px #0006}.table-meta__item{display:flex;align-items:center;gap:6px;min-width:0;padding:0 10px;background:var(--surface);font-family:var(--font-display);font-size:15px;color:var(--ink);white-space:nowrap}.table-meta__item b{font-weight:400}.table-meta__label{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted)}.table-meta__item--pot{background:var(--copper-wash);color:var(--copper-hi)}.table-meta__item--pot .table-meta__label{color:var(--copper-hi)}.table-meta__item--practice{display:none;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--copper-hi)}body.training-mode .table-meta[data-for=game] .table-meta__item{display:none}body.training-mode .table-meta[data-for=game] .table-meta__item--practice{display:flex}.dice-table .game-header{display:block;flex:none}.dice-table .players-strip{display:grid;grid-template-columns:repeat(var(--cols, 4),minmax(0,1fr));gap:6px;overflow:visible;padding:9px 0 0}.dice-table .players-strip{row-gap:12px}.dice-table .players-strip:has(>.player-chip:nth-child(5):not(.player-chip--invite)){padding-top:3px}.dice-table .players-strip>:first-child{margin-left:0}.dice-table .player-chip{max-width:none;padding:5px 18px 5px 9px}.dice-table .chip-score{white-space:nowrap}.dice-table .player-chip{container:chip / inline-size}@container chip (max-width: 41px){.dice-table .player-chip .chip-score,.dice-table .player-chip .chip-score.dq{right:-2px;padding:2px 3px;font-size:9px;letter-spacing:0}}.player-chip--gone{opacity:.45}.chip-score.chip-score--left,.chip-score.chip-score--next{background:var(--surface-2);color:var(--ink-dim);border-color:var(--border-strong);font-size:10px}.chip-balance--up{color:var(--forest-hi)}.chip-balance--down{color:#eca19a}.gin-table .game-header{display:block}.dice-table .reactions-bar{position:relative;left:auto;transform:none;width:100%;display:flex;justify-content:center;padding:0;background:none;border:0;box-shadow:none}.react-toggle{display:inline-flex;align-items:center;gap:8px;height:46px;padding:0 22px 0 16px;border-radius:999px;background:var(--surface);border:1px solid var(--border-strong);color:var(--ink);font-family:var(--font-display);font-size:14px;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 2px #00000073;cursor:pointer;transition:border-color .15s,color .15s}.react-toggle__face{font-size:22px;line-height:1}.react-toggle[aria-expanded=true]{border-color:var(--copper);color:var(--copper-hi)}.react-toggle:active{transform:translateY(1px);box-shadow:0 1px #00000073}.react-tray{position:absolute;left:0;right:0;bottom:calc(100% + 10px);z-index:20;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:4px;padding:8px;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:0 2px #00000080,0 14px 26px -12px #0009;animation:react-tray-in .18s var(--ease-out-quart)}.react-tray[hidden]{display:none}@keyframes react-tray-in{0%{opacity:0;transform:translateY(8px)}}.dice-table .reaction-btn{justify-self:center;font-size:22px}.reaction-burst{position:absolute;bottom:24%;z-index:15;display:flex;flex-direction:column;align-items:center;pointer-events:none;animation:reaction-burst 1.9s var(--ease-out-quart) forwards}.reaction-burst__emoji{font-size:56px;line-height:1;filter:drop-shadow(0 3px 0 oklch(0% 0 0 / .45))}.reaction-burst__name{max-width:9em;margin-top:4px;padding:2px 8px;overflow:hidden;border-radius:999px;background:#140e0ae0;color:var(--ink);font-family:var(--font-display);font-size:10px;letter-spacing:.08em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.reaction-burst__combo{position:absolute;top:-6px;right:-20px;font-family:var(--font-display);font-size:16px;color:var(--copper-hi);text-shadow:0 1px 0 oklch(0% 0 0 / .6)}@keyframes reaction-burst{0%{opacity:0;transform:translate(-50%,30px) scale(.4)}14%{opacity:1;transform:translate(-50%) scale(1.12)}24%{transform:translate(-50%,-6px) scale(1)}75%{opacity:1;transform:translate(-50%,-70px) scale(1)}to{opacity:0;transform:translate(-50%,-100px) scale(.92)}}@keyframes reaction-burst-still{0%,to{opacity:0;transform:translate(-50%)}15%,80%{opacity:1;transform:translate(-50%)}}@media(prefers-reduced-motion:reduce){.reaction-burst{animation-name:reaction-burst-still;animation-timing-function:linear}}.confirm-layer{z-index:900}.confirm-sheet{display:flex;flex-direction:column;gap:8px;max-width:440px}.confirm-sheet__title{margin:4px 0 0;font-family:var(--font-display);font-size:var(--text-lg);font-weight:400;color:var(--ink)}.confirm-sheet__body{margin:0;color:var(--ink-dim)}.confirm-sheet__actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px}.confirm-sheet__actions .btn{min-width:0;width:100%}.results-stake{display:flex;align-items:center;justify-content:center;gap:10px;margin:4px 0 12px}.results-stake[hidden]{display:none}.results-stake__label{margin-right:auto;font-family:var(--font-display);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted)}.results-stake__value{min-width:6.5em;text-align:center;font-family:var(--font-display);font-size:18px;color:var(--copper-hi)}.results-stake__ante{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted)}.results-stake__value b{font-weight:400}.results-stake__step{width:40px;height:40px;min-height:0;min-width:0;display:grid;place-items:center;border:1px solid var(--border-strong);border-radius:50%;background:var(--surface-2);color:var(--ink);font-family:var(--font-display);font-size:20px;line-height:1;box-shadow:0 1px #00000073;cursor:pointer}.results-stake__step:active{transform:translateY(1px)}.results-ask{display:grid;gap:8px;margin:0;padding:10px 12px;border:1px solid var(--copper);border-radius:var(--radius-sm);background:var(--surface-2)}.results-ask[hidden],.results-ask__btn[hidden]{display:none}.results-ask__line{margin:0;font-family:var(--font-body);font-size:15px;line-height:1.35;color:var(--ink);text-wrap:pretty}.results-ask__line b{color:var(--copper-hi);font-weight:700}.results-ask__actions{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:8px}.results-ask__btn{min-height:40px;padding:8px;white-space:normal;text-wrap:balance}.results-ask__btn--yes{color:var(--copper-hi);border-color:var(--copper)}.dice-row[data-lows]{max-width:100%;gap:12px 14px}.lows-die{--lows-die: calc(var(--cup-die, 72px) * var(--lows-share, .62));display:grid;justify-items:center;gap:8px;width:calc(var(--lows-die) + 18px)}.die.die--lows{--size: var(--lows-die);--pip-size: calc(var(--size) * .155);--pip-pad: calc(var(--size) * .16);--pip-gap: calc(var(--size) * .05);border-radius:calc(var(--size) * .19)}.lows-die__name{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-body);font-size:13px;line-height:1.2;color:var(--ink-on-felt)}.lows--settled .lows-die:not(.lows-die--first) .die{opacity:.55}.lows--settled .lows-die.lows-die--out .die,.lows-die--out .die{opacity:.32}.lows-die--out .lows-die__name{opacity:.6}.lows-die--first .die{transform:translateY(-6px);box-shadow:inset 0 -2px 2px #7b5c3e66,inset 0 1px #fffffff2,0 0 0 2px var(--copper),0 6px #00000073}.lows-die--first .lows-die__name{color:var(--copper-hi);font-weight:700}.die.die--unrolled{background:#1c3121;box-shadow:inset 0 3px 5px #0006,inset 0 -2px 1px #ffffff0a,0 1px #ffffff0d}.die.die--unrolled .pip{display:none}.die.die--tap{cursor:pointer;outline:2px dashed var(--copper);outline-offset:3px}.die.die--tap:focus-visible{outline-style:solid}.overlay-lows{--cup-die: 64px;min-height:0;margin:10px 0 14px}.overlay-lows[hidden]{display:none}.overlay-lows .lows-die__name{color:var(--ink-dim)}.results-list--again .result-row{animation:none}.sheet-layer__panel.results-wrapper>*{flex-shrink:0}.sheet-layer__panel.results-wrapper .results-list{flex:0 1 auto;min-height:52px;overflow-y:auto;overscroll-behavior:contain}@media(max-height:640px){.sheet-layer__panel.results-wrapper{gap:10px;padding-top:14px}.sheet-layer__panel .results-title{font-size:22px}.results-recap{margin-top:6px}.sheet-layer__panel .result-row{padding:7px 10px}.results-stake{margin:0}}.connection-banner,.lobby-toast{left:12px;right:12px;width:max-content;max-width:calc(100% - 24px);margin-inline:auto}.connection-banner{top:calc(env(safe-area-inset-top) + var(--chrome-h) + 6px);transform:translateY(-12px)}.connection-banner--visible{transform:none}.lobby-toast{transform:translateY(24px)}.lobby-toast--visible{transform:none}body[data-screen=game] .lobby-toast,body[data-screen=gin-game] .lobby-toast{top:calc(env(safe-area-inset-top) + var(--chrome-h) + 6px);bottom:auto;transform:translateY(-12px)}body[data-screen=game] .lobby-toast--visible,body[data-screen=gin-game] .lobby-toast--visible{transform:none}.home-mat .mat-hop{animation:mat-hop .62s var(--ease-out-quart) both}.home-mat .mat-slide{animation:mat-slide .9s var(--ease-out-quart) both}@keyframes mat-slide{0%,to{transform:translate(0)}45%,60%{transform:translate(var(--slide-x, 0px))}}@keyframes mat-hop{0%,to{transform:translateY(0)}32%{transform:translateY(-14px)}56%{transform:translateY(0) scaleX(1.08) scaleY(.92)}76%{transform:translateY(-3px)}}html,body{overscroll-behavior-y:none}html{-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;text-size-adjust:100%}.dice-table,.gin-table,.home-mat{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}@media(pointer:coarse){input,select,textarea{font-size:max(16px,1em)}}.help-overlay__close,.sheet-layer__close,.results-stake__step{min-height:0;min-width:0}.rotate-note{display:none}@media(orientation:landscape)and (max-height:500px){body[data-screen=game] .rotate-note,body[data-screen=gin-game] .rotate-note{position:fixed;inset:0;z-index:950;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:var(--bg);color:var(--ink);font-family:var(--font-display);font-size:16px;letter-spacing:.06em;text-transform:uppercase}}.rotate-note__icon{width:34px;height:56px;border:3px solid var(--copper-hi);border-radius:7px;animation:rotate-note 2.4s var(--ease-out-quart) infinite}@keyframes rotate-note{0%,20%{transform:rotate(-90deg)}55%,to{transform:rotate(0)}}.dice-table .cup{contain:size layout style;--lows-share: 1}.dice-table .cup .die{--pip-size: calc(var(--size) * .155);--pip-pad: calc(var(--size) * .16);--pip-gap: calc(var(--size) * .05);border-radius:calc(var(--size) * .19)}body{--column: 560px}body[data-screen=lobby]{--column: 440px}body[data-screen=waiting]{--column: 640px}body[data-screen=gin-game]{--column: 860px}body[data-screen=tables]{--column: 1040px}body[data-screen] .chrome-cluster{padding-left:max(calc(env(safe-area-inset-left) + 12px),calc((100vw - var(--column)) / 2 + 14px));padding-right:max(calc(env(safe-area-inset-right) + 12px),calc((100vw - var(--column)) / 2 + 14px))}.dice-table,.gin-table{max-height:900px;margin-block:auto}#waiting-seats{overflow-x:hidden}.join-code-input[type=search]{-webkit-appearance:none;appearance:none}.join-code-input::-webkit-search-cancel-button,.join-code-input::-webkit-search-decoration,.join-code-input::-webkit-search-results-button,.join-code-input::-webkit-search-results-decoration{-webkit-appearance:none;display:none}.chrome-cluster{background-color:var(--bg);background-image:radial-gradient(oklch(0% 0 0 / .25) 1px,transparent 1px),radial-gradient(oklch(0% 0 0 / .15) 1px,transparent 1px);background-size:3px 3px,7px 7px;background-position:0 0,1px 2px}body{background-attachment:scroll}.cup .die,.tray .die,.home-mat .die{will-change:transform,rotate,scale,translate}.die.newly-banked{animation:bank-drop .3s linear}@keyframes bank-drop{0%{transform:translateY(-40px) scale(1.1);animation-timing-function:cubic-bezier(.55,0,1,.45)}55%{transform:translateY(0) scale(1);animation-timing-function:ease-out}70%{transform:translateY(0) scaleX(1.06) scaleY(.9);animation-timing-function:ease-out}to{transform:translateY(0) scale(1)}}@keyframes halo-breathe{0%,to{opacity:0}50%{opacity:1}}.gin-pile__cards--drawable{animation:none;box-shadow:0 0 0 2px var(--copper-hi)}.gin-pile__cards--discardable{animation:none;box-shadow:0 0 0 2px var(--oxblood-hi)}.gin-pile__cards--drawable:after,.gin-pile__cards--discardable:after,.gin-meld--hint:after{content:"";position:absolute;inset:0;border-radius:inherit;opacity:0;pointer-events:none;animation:halo-breathe 1.6s var(--ease-out-quart) 2}.gin-pile__cards--drawable:after{border-radius:6px;box-shadow:0 0 0 6px #c56c2159}.gin-pile__cards--discardable:after{border-radius:6px;box-shadow:0 0 0 6px #932b2a4d;animation-duration:1.2s}.gin-meld--hint{position:relative;animation:none}.gin-meld--hint:after{inset:-1px;box-shadow:0 0 0 4px #c56c216b;animation-duration:1.5s}.gin-card--must-play:after{box-shadow:inset 0 0 0 4px var(--oxblood-hi);animation:must-play-breathe .85s var(--ease-out-quart) 2}@keyframes must-play-breathe{0%,to{opacity:1}50%{opacity:.55}}@media(max-width:360px){.screen[data-screen=waiting] .share-table-btn{padding-inline:8px;font-size:13px;letter-spacing:.02em}.screen[data-screen=waiting] .share-table-btn>span[aria-hidden=true]{display:none}}.dice-table .players-strip.players-strip--invite{grid-template-columns:repeat(var(--cols, 4),minmax(0,1fr)) 44px}#gin-players-strip.gin-strip--invite{grid-template-columns:repeat(var(--n, 2),minmax(0,1fr)) 44px}.players-strip--invite>.player-chip--invite,.gin-strip--invite>.gin-chip--invite{grid-column:-2;grid-row:1}.player-chip.player-chip--invite,.gin-chip.gin-chip--invite{display:grid;place-items:center;min-width:0;min-height:0;padding:0;background:transparent;border:1px dashed var(--border-strong);border-radius:4px;box-shadow:none;color:var(--copper-hi);font-family:var(--font-display);font-size:22px;line-height:1;cursor:pointer}.player-chip.player-chip--invite:active,.gin-chip.gin-chip--invite:active{transform:translateY(1px)}.invite-sheet{display:flex;flex-direction:column;gap:12px;max-width:480px}.invite-sheet .table-code{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.invite-sheet .share-row{display:flex;flex-wrap:nowrap;gap:8px;align-items:stretch}.invite-sheet .share-table-btn{flex:1 1 auto;min-width:0;width:auto;margin:0;min-height:44px;padding:8px 12px}.invite-note{margin:0;color:var(--ink-dim);font-size:var(--text-sm)}.invite-lobby{width:100%}.invite-lobby[hidden]{display:none}.nb{white-space:nowrap}#turn-hint,.help-overlay__body p,.help-overlay__body li,.coach-card,.coach-line__text,.results-recap,.gin-meld-empty,.invite-note,.results-ask__line,.confirm-sheet p{text-wrap:pretty}.result-streak,.gin-chip__hand,.gin-player-melds__count{font-style:normal}#pot-amount,#round-number,#gin-round-number,.chip-balance,.chip-score,.result-score,.results-stake__value,.tray__score-value,.beat-chip b,.tb-badge__text,.waiting-count,.train-line,.gin-chip__score,.gin-chip__round,.gin-chip__deadwood,#gin-stock-count,#gin-discard-count{font-variant-numeric:tabular-nums}.players-strip .train-line{grid-column:1 / -1;align-self:center;margin:0;font-family:var(--font-body);font-size:14px;line-height:1.3;color:var(--ink-dim);text-align:center}body.training-mode .dice-table .players-strip{height:56px;padding-top:4px}.coach-verdict{grid-column:1 / -1;align-self:center;min-width:0;height:52px;display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;column-gap:11px;padding:0 12px 0 10px;border:1px solid var(--border);border-radius:14px;background:var(--surface);text-align:left}.coach-verdict--miss{border-color:color-mix(in oklch,var(--oxblood-hi) 55%,var(--border))}.coach-verdict__mark{width:30px;height:30px;border-radius:50%;display:grid;place-items:center}.coach-verdict__mark svg{width:15px;height:15px}.coach-verdict--miss .coach-verdict__mark,.coach-verdict__dot--miss{background:var(--oxblood);color:var(--oxblood-ink)}.coach-verdict--hit .coach-verdict__mark,.coach-verdict__dot--hit{background:var(--forest);color:#ecf9ee}.coach-verdict--recap .coach-verdict__mark{background:var(--surface-3);color:var(--ink);font-family:var(--font-display);font-size:14px}.coach-verdict__text{min-width:0;display:grid;gap:3px}.coach-verdict__head,.coach-verdict__sub{white-space:nowrap}.coach-verdict__head{font-size:15px;font-weight:700;line-height:1.2;color:var(--ink)}.coach-verdict__sub{font-size:13px;line-height:1.25;color:var(--ink-dim)}.coach-verdict__sub b{color:var(--ink)}.coach-verdict .coach-dice{gap:2px;vertical-align:-4px}.coach-verdict .die--cmini{--size: 15px;--pip-size: 3px;--pip-pad: 3px;--pip-gap: 1px;border-radius:4px}.coach-verdict__dots{display:inline-flex;gap:2px;margin-left:4px;vertical-align:-2px}.coach-verdict__dot{width:13px;height:13px;border-radius:50%;display:inline-grid;place-items:center}.coach-verdict__dot svg{width:8px;height:8px}@media(max-width:360px){.coach-verdict{grid-template-columns:26px minmax(0,1fr);column-gap:9px;padding-left:8px}.coach-verdict__mark{width:26px;height:26px}.coach-verdict__head{font-size:14px}.coach-verdict__sub{font-size:12px}}.tb-badge__unit{font-size:12px;opacity:.7}.chip-name,.seat-name,.result-name,.reaction-burst__name,.gin-chip__name{font-family:var(--font-body);font-weight:600;text-transform:none;letter-spacing:0}.chip-name{font-size:13px}.seat-name{font-size:15px}.result-name{font-size:16px}.reaction-burst__name{font-size:12px}.gin-chip__name{font-size:14px}.result-row.winner{border-left-color:transparent;background:#322318}.result-row--ready:not(.winner){box-shadow:none}.sheet-layer__panel .result-score.dq{font-size:12px;letter-spacing:.04em;white-space:nowrap}.result-score.dq.result-score--out{color:var(--ink-dim)}@media(max-width:480px){.sheet-layer__panel .result-row{grid-template-columns:20px minmax(0,1fr) auto;grid-template-areas:"rank name score" "rank dice score";row-gap:5px;column-gap:10px;padding:8px 12px}.sheet-layer__panel .result-rank{grid-area:rank;align-self:start;line-height:1.3}.sheet-layer__panel .result-name-col{grid-area:name}.sheet-layer__panel .result-dice{grid-area:dice;justify-content:flex-start}.sheet-layer__panel .result-score{grid-area:score;align-self:center}.sheet-layer__panel .result-streak{display:none}}#replay-btn{flex-direction:column;gap:2px}#replay-btn .btn-sub{display:block}#gin-round-end-wrap:not(:empty){padding:0;background:#08050399}.gin-round-end{width:100%;max-width:560px;max-height:90dvh;align-items:stretch;padding:18px 18px calc(20px + env(safe-area-inset-bottom,0px));border-bottom:0;border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:0 -2px #00000080,0 -12px 24px -12px #00000080;animation:sheet-up .32s var(--ease-out-expo)}.gin-round-end__title{font-family:var(--font-body);font-style:italic;font-weight:400;font-size:26px;color:var(--ink);text-align:left}.gin-round-end .gin-summary{max-width:none}.gin-next-round{width:100%;flex-direction:column;gap:2px}.gin-next-round .btn-sub{display:block}.gin-player-melds__count:empty{display:none}.table-meta{height:auto;gap:0;background:none;border:0;border-radius:0;box-shadow:none;overflow:visible}.table-meta__item,.table-meta__item--pot{padding:0;background:none}.table-meta__item+.table-meta__item:before{content:"\b7";margin:0 8px;color:var(--ink-faint)}.table-meta__item.table-meta__item--practice:before,.table-meta__item.table-meta__item--dealer:before{content:none}.table-meta__item--pot{color:var(--copper-hi)}.brand,body[data-screen=lobby] .chrome-brand{padding:0;border:0}.sfx-toggle__icon{--sfx-on-icon: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'><path d='M4 9.5v5h3.5L12 19V5L7.5 9.5H4z'/><path d='M15.5 9a4 4 0 0 1 0 6M18.5 6.5a7.5 7.5 0 0 1 0 11'/></svg>")}.sfx-toggle[aria-pressed=false] .sfx-toggle__icon{--sfx-on-icon: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'><path d='M4 9.5v5h3.5L12 19V5L7.5 9.5H4z'/><path d='M16 9.5l5 5M21 9.5l-5 5'/></svg>")}.btn.btn--instruct,.btn-primary.btn--instruct:disabled{background:none;border-color:transparent;font-style:italic;font-weight:400;color:var(--ink-dim)}:root{--ink-muted: oklch(64% .02 75);--ink-on-felt: oklch(72% .025 80);--pip-red: oklch(50% .18 27);--scrim: oklch(12% .01 55 / .6);--shadow-lift: 0 4px 0 oklch(0% 0 0 / .45), 0 8px 12px -6px oklch(0% 0 0 / .45);--shadow-drop: 0 8px 0 oklch(0% 0 0 / .4), 0 12px 12px -8px oklch(0% 0 0 / .45);--felt-shadow: inset 0 1px 0 oklch(100% 0 0 / .04), 0 2px 0 oklch(0% 0 0 / .6), 0 12px 12px -10px oklch(0% 0 0 / .5)}.btn-sub,.seat.seat--empty{opacity:1}.seat--empty .seat-empty-label{color:var(--ink-muted)}.screen[data-screen=waiting] .seat--empty:has(.seat-add-bot){flex-direction:column;align-items:center;justify-content:center;gap:6px;padding-block:8px}.seat--empty:has(.seat-add-bot) .seat-empty-label{margin:0}.seat-add-bot{min-height:36px;padding:0 16px;border:1px dashed var(--copper-hi);border-radius:999px;background:transparent;font:600 14px var(--font-body);color:var(--copper-hi);cursor:pointer}.seat-add-bot:active{background:var(--copper-wash)}.bot-picker{display:grid;gap:10px;padding-top:4px}.bot-picker__opt{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 12px;padding:14px 16px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2);color:var(--ink);text-align:left;cursor:pointer}.bot-picker__opt:active{border-color:var(--copper-hi)}.bot-picker__opt b{font-family:var(--font-display);font-weight:400;font-size:16px;letter-spacing:.04em}.bot-picker__opt span{grid-column:1;font-size:14px;color:var(--ink-dim)}.bot-picker__opt i{grid-row:1 / span 2;grid-column:2;font-style:normal;font-size:22px;color:var(--copper-hi)}.bot-picker__note{margin:4px 2px 0;font-size:13px;line-height:1.4;color:var(--ink-muted)}.sheet-layer__scrim,.help-overlay__scrim,#gin-round-end-wrap:not(:empty){background:var(--scrim)}.overlay{background:#080503eb}.sheet-layer{z-index:600}#results-sheet{z-index:70}[tabindex="-1"]:focus-visible{outline:none}.btn.btn-quiet-danger{color:var(--oxblood-hi);border-color:#8c3432b3}.btn:disabled,.btn-primary:disabled{opacity:1;filter:none;background:none;border:1px dashed var(--border-strong);box-shadow:none;color:var(--ink-muted);font-family:var(--font-body);font-style:italic;font-weight:600;text-transform:none;letter-spacing:0;cursor:not-allowed}.btn:disabled .btn-sub{font-style:normal}.btn.btn--instruct:disabled,.btn-primary.btn--instruct:disabled{border-color:transparent}.results-list{background:#1d1713}.seat--you{background:#3f2717}.die[data-value="1"] .pip,.die[data-value="4"] .pip{background:radial-gradient(circle,oklch(56% .18 27) 0%,var(--pip-red) 70%)}.ink-h{fill:var(--pip-red)}.ink-d{fill:#1b589e}.ink-c{fill:#09672e}.gin-group-chip--valid.gin-group-chip--run,.gin-group-chip--valid.gin-group-chip--set{border-color:var(--border-strong);background:var(--surface-2)}.gin-group-chip--valid.gin-group-chip--run .gin-group-chip__kind,.gin-group-chip--valid.gin-group-chip--set .gin-group-chip__kind{background:var(--ink);color:var(--copper-ink)}.help-overlay__body .help-pill--run,.help-overlay__body .help-pill--set{background:var(--surface-2);color:var(--ink);border:1px solid var(--border-strong)}.gin-card__back-paper{fill:#642724;stroke:#e1d6c2;stroke-width:1.4}.gin-card__back-inner{stroke:#e1d6c28c}.gin-card__back-tagline{fill:#e1d6c2cc}.die--ghost{opacity:1;filter:none;background:linear-gradient(160deg,#c2bdb7,#a8a49e)}@keyframes ghost-fade-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.die--selected{box-shadow:inset 0 -2px 2px #7b5c3e66,inset 0 1px #fffffff2,0 0 0 2px var(--copper),0 8px #00000073,0 12px 12px -6px #00000080}.overlay-card{box-shadow:0 6px #00000073,0 12px 12px -8px #00000080,0 0 0 1px #ffffff0d}.sheet-layer__panel{box-shadow:0 -2px #00000080,0 -8px 12px -8px #00000080}.die--selected.die--coach:after{opacity:0}.coach-drill__opts{flex:1 1 100%;display:grid;grid-template-columns:max-content max-content repeat(7,minmax(0,1fr));gap:4px}.coach-drill__opt{min-width:0;padding:4px 0;text-align:center}.coach-drill__opt[data-drill=chase],.coach-drill__opt[data-drill=""]{padding-inline:6px}@media(max-width:359px){.coach-drill__opts{grid-template-columns:repeat(14,minmax(0,1fr))}.coach-drill__opt{grid-column:span 2}.coach-drill__opt[data-drill=chase],.coach-drill__opt[data-drill=""]{grid-column:span 7}}.waiting-token__row{display:flex;align-items:center;justify-content:space-between;gap:4px}.waiting-token__row .waiting-token__value{min-width:20px;text-align:center;white-space:nowrap}.token-step{position:relative;flex:none;display:grid;place-items:center;width:28px;height:28px;min-width:0;min-height:0;padding:0;border:1px solid var(--border-strong);border-radius:50%;background:var(--surface-2);color:var(--ink);font-family:var(--font-display);font-size:16px;line-height:1;cursor:pointer}.token-step:active{transform:translateY(1px)}.token-step:before{content:"";position:absolute;inset:-8px}.waiting-token--editable:not(.waiting-token--stepper){border-color:#8c5c3ab3}.ante-stepper{display:flex;align-items:center;gap:16px}.ante-stepper__value{min-width:3.5ch;text-align:center;font-family:var(--font-display);font-weight:400;font-size:22px;color:var(--copper-hi);font-variant-numeric:tabular-nums}.seat-ring .seat--empty{grid-column:1 / -1}:root{--r-sticker: 3px;--r-control: 6px;--r-panel: 10px;--r-felt: 16px;--surface-2: oklch(30% .015 55);--surface-3: oklch(37% .015 55);--gutter: 16px}.gin-pile__label,.field-label,.pill-label,.section-label,.overlay-label,.waiting-token__label,.coach-drill__label,.coach-card__eyebrow,.coach-chip__label,.table-code__label,.tray__score-label,.name-tag__label,.table-meta__label,.results-stake__label,.results-stake__ante,.seat-empty-label{font-family:var(--font-body);font-weight:700;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-dim)}.btn-ghost,.btn-small,.react-toggle,.coach-apply,.connection-banner__retry,.help-overlay__tab,.home-solo-btn{font-family:var(--font-body);font-weight:600;text-transform:none;letter-spacing:0;font-size:15px}.chip-score,.seat-pill,.chip-you,.coach-why__verdict,.coach-alt__cooked,.gin-group-chip__kind,.help-overlay__body .help-pill{border-radius:var(--r-sticker);font-size:11px;letter-spacing:.04em}.dice-table .chip-score.dq,.dice-table .chip-you{font-size:11px}.sheet-layer__title,.help-overlay__title{font-size:18px;letter-spacing:.04em;color:var(--ink)}.help-overlay__body h3{font-family:var(--font-body);font-weight:700;font-size:17px;text-transform:none;letter-spacing:0;color:var(--ink)}.chrome-btn,.gin-card__rank{font-weight:400}.table-meta__item--pot,.results-stake__value,.ante-stepper__value,.table-code__value,.coach-line__more,.brand,body[data-screen=lobby] .chrome-brand{color:var(--ink)}.seat:not(.seat--empty){border-color:var(--border)}.seat--you .seat-name{color:var(--ink)}.die--coach:after{border-color:var(--ink-on-felt)}.btn,.btn-large,.chrome-btn,.sfx-toggle,.share-action-btn,.waiting-token,.seat,.player-chip,.gin-chip,.lobby-input,.coach-line,.results-ask,.results-ask__btn,.sheet-layer__close,.help-overlay__close,.results-stake__step,.token-step{border-radius:var(--r-control)}.sheet-layer__panel,.overlay-card,.help-overlay__panel,.gin-round-end{border-radius:var(--r-panel) var(--r-panel) 0 0}.overlay-card,.help-overlay__panel{border-radius:var(--r-panel)}.table-felt{border-radius:var(--r-felt)}.tb-badge{border-radius:var(--r-sticker)}.gin-chip--active{box-shadow:inset 0 0 0 2px var(--copper);background:#3f2717}.gin-chip--active:before{display:none}.chrome-cluster{padding-left:calc(env(safe-area-inset-left) + var(--gutter));padding-right:calc(env(safe-area-inset-right) + var(--gutter))}.dice-table{padding-left:var(--gutter);padding-right:var(--gutter)}.dice-table .game-header{padding-inline:0}.dice-table .players-strip{padding-left:0;padding-right:0}.gin-wrapper{padding-left:var(--gutter);padding-right:var(--gutter)}.gin-actions .btn,.gin-actions__note{max-width:none}.screen[data-screen=setup] .setup-rules{order:1}.screen[data-screen=setup] .setup-names{order:2}.screen[data-screen=setup] .setup-form>.btn{order:3}.table-meta__item--pot .table-meta__label,.gin-pile__count,.player-num{color:var(--ink-dim)}.sheet-layer__panel .results-eyebrow{display:none}@media(max-width:360px){.home-foot{gap:8px}.home-foot .link-btn,.home-foot .play-money-note{font-size:12px}}@media(max-width:380px){.home-foot{flex-wrap:wrap;row-gap:0}.home-foot .play-money-note{flex-basis:100%;text-align:center}}.home .home-mat{container-type:inline-size;max-height:clamp(150px,24dvh,240px)}@supports (width: 1cqw){.home-mat__show{--mat-die: clamp(28px, min((100cqw - 50px) / 6.4, 8dvh), 64px)}}.confirm-sheet__actions .confirm-alt{grid-column:1 / -1}.confirm-sheet__actions .confirm-alt[hidden]{display:none}.results-stake__send{margin-right:auto;min-height:40px;padding:6px 12px;color:var(--copper-hi);border-color:var(--copper);font-size:14px}.results-stake__send[hidden],.results-stake--draft .results-stake__label{display:none}.results-stake--draft .results-stake__value b{text-decoration:underline dashed var(--ink-muted);text-underline-offset:4px}.tray--last .tray__score-label{max-width:10ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.felt-info .beat-chip{flex:0 1 auto;min-width:0;max-width:62%;overflow:hidden;text-overflow:ellipsis}.overlay-card .btn[hidden]{display:none}.overlay-card,.home-mat{position:relative}.dice-gl{position:absolute;left:0;top:0;z-index:3;pointer-events:none}.die.die--cubed{visibility:hidden;animation:none}.cup .dice-row[data-scatter]{position:absolute;inset:0;max-width:none;min-height:0;display:block}.cup .dice-row[data-scatter]>.die{position:absolute}:where(.dice-art) .die[data-value]:where(:not(.die--busted,.die--ghost)){background:var(--die-face) center / 100% 100% no-repeat;border-radius:calc(var(--size) / 6);box-shadow:0 calc(var(--size) * .03) 0 #0000004d,0 calc(var(--size) * .08) calc(var(--size) * .14) calc(var(--size) * -.03) #00000073}:where(.dice-art) .die[data-value]:where(:not(.die--busted,.die--ghost)) .pip{visibility:hidden}:where(.dice-art-mystery) .die--mystery{background:var(--die-face-mystery) center / 100% 100% no-repeat;border-color:transparent;border-radius:calc(var(--size) / 6);box-shadow:0 calc(var(--size) * .03) 0 #0000004d,0 calc(var(--size) * .08) calc(var(--size) * .14) calc(var(--size) * -.03) #00000073}:where(.dice-art-mystery) .die--mystery:before{content:none}:where(.dice-art) .die[data-value="1"]{--die-face: var(--die-face-1)}:where(.dice-art) .die[data-value="2"]{--die-face: var(--die-face-2)}:where(.dice-art) .die[data-value="3"]{--die-face: var(--die-face-3)}:where(.dice-art) .die[data-value="4"]{--die-face: var(--die-face-4)}:where(.dice-art) .die[data-value="5"]{--die-face: var(--die-face-5)}:where(.dice-art) .die[data-value="6"]{--die-face: var(--die-face-6)}:where(.dice-art) .die--selected[data-value]{box-shadow:0 0 0 2px var(--copper),0 8px #00000073,0 12px 12px -6px #00000080}:where(.dice-art) .die--revealed[data-value]{box-shadow:0 0 0 2px var(--copper),0 6px #00000080,0 12px 12px -6px #0000008c}@media(hover:hover){:where(.dice-art) .die--active[data-value]:hover:not(.rolling){box-shadow:0 5px #00000080,0 14px 22px -6px #0000008c}}.home-doors{display:grid;grid-template-columns:1fr 1fr;gap:8px}.home-doors [hidden]{display:none!important}.home .home-door{width:100%;min-height:clamp(46px,6.8dvh,56px);flex-direction:column;gap:1px;padding:6px 8px;white-space:normal}.home-door__title{font-size:15px;font-weight:600;line-height:1.2}.home-door__sub{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:500;line-height:1.2;color:var(--ink-dim)}.home-door__dot{display:none;width:7px;height:7px;border-radius:50%;background:var(--forest-hi)}.home-door--live .home-door__dot{display:inline-block}.seg{display:flex;gap:4px;padding:4px;background:var(--surface);border:1px solid var(--border);border-radius:12px}.seg[hidden]{display:none}.seg-opt{flex:1 1 0;min-width:0;min-height:40px;padding:6px 10px;border:0;border-radius:8px;background:none;color:var(--ink-dim);font-family:var(--font-body);font-size:15px;font-weight:600;white-space:nowrap;cursor:pointer}.seg-opt--on{background:var(--surface-2);color:var(--ink);box-shadow:0 2px #00000073}.seg-opt:disabled{cursor:default}.who-joins{align-self:stretch;display:flex;align-items:center;gap:12px;margin-top:4px}.who-joins[hidden],.who-joins__note[hidden]{display:none}.who-joins__label{flex:none;font-family:var(--font-body);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-dim)}.who-joins__seg{flex:1 1 auto}.who-joins__seg .seg-opt--on[data-public="1"]{background:var(--copper-wash);box-shadow:inset 0 0 0 1.5px var(--copper)}.who-joins__note{margin:0;font-size:13px;color:var(--ink-dim)}.screen[data-screen=tables] .tables-wrapper{width:100%;max-width:560px;height:100%;margin:0 auto;display:flex;flex-direction:column;gap:12px;padding:clamp(4px,1.2dvh,16px) 16px calc(clamp(8px,1.4dvh,16px) + env(safe-area-inset-bottom,0px))}.tables-title{flex:none;margin:0;font-family:var(--font-display);font-weight:400;font-size:clamp(18px,min(5.4vw,3.4dvh),30px);white-space:nowrap}.tables-list{flex:1 1 auto;min-height:0;margin:0;padding:2px 2px 6px;overflow-y:auto;list-style:none;display:flex;flex-direction:column;gap:10px}.tables-list:empty{display:none}.tables-foot{flex:none}.tables-foot[hidden],.tables-empty[hidden]{display:none}.tables-foot .tables-start,.tables-empty .tables-practice{width:100%;min-height:48px}.ptable{flex:none;display:grid;grid-template-columns:44px minmax(0,1fr) auto;grid-template-areas:"glyph main join" "glyph seats seats" "glyph status status";align-items:center;column-gap:12px;row-gap:4px;padding:12px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-tag)}.ptable__glyph{grid-area:glyph;width:44px;height:44px;border-radius:9px;background:var(--felt-color);box-shadow:inset 0 1px 4px #00000080;display:flex;align-items:center;justify-content:center}.ptable__main{grid-area:main;min-width:0;display:flex;flex-direction:column;gap:2px}.ptable__name{font-size:16px;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ptable__game,.ptable__seats{font-size:13px;color:var(--ink-dim)}.ptable__seats{grid-area:seats;display:flex;align-items:center;gap:7px;white-space:nowrap}.ptable__pips{display:inline-flex;gap:3px}.ptable__pip{width:8px;height:8px;box-sizing:border-box;border-radius:50%;border:1.5px solid var(--ink-muted)}.ptable__pip--taken{border:0;background:var(--copper-hi)}.ptable__status{grid-area:status;display:flex;align-items:center;gap:6px;font-size:13px;color:var(--ink)}.ptable__status:before{content:"";flex:none;width:7px;height:7px;border-radius:50%;background:var(--forest-hi)}.ptable__status--playing:before{background:var(--amber)}.ptable .ptable__join{grid-area:join;min-height:44px;padding:0 16px;border:1.5px solid var(--copper);border-radius:8px;background:var(--copper-wash);color:var(--copper-hi);font-family:var(--font-body);font-size:15px;font-weight:600;letter-spacing:0;text-transform:none}@media(hover:hover){.ptable .ptable__join:hover{background:var(--copper);color:var(--copper-ink)}}@media(min-width:760px){.screen[data-screen=tables] .tables-wrapper{max-width:1040px}.tables-foot{align-self:center}.tables-foot .tables-start{width:auto;padding:0 28px}.ptable{grid-template-columns:48px minmax(0,2fr) minmax(150px,1.1fr) minmax(0,1.5fr) auto;grid-template-areas:"glyph main seats status join";column-gap:20px;padding:14px 16px 14px 14px}.ptable__glyph{width:48px;height:48px}.ptable__name{font-size:17px}.ptable__game,.ptable__seats,.ptable__status{font-size:14px}}.mini-die{width:24px;height:24px;box-sizing:border-box;padding:5px;border-radius:6px;background:#f2eee6;box-shadow:0 2px #00000073;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.mini-die i{border-radius:50%;background:var(--pip-red, oklch(50% .18 27))}.mini-die--one{grid-template-columns:5px;place-content:center}.mini-die--one i{height:5px}.mini-card{width:19px;height:26px;box-sizing:border-box;padding:3px 0 0 3px;border-radius:3px;background:#f2eee6;box-shadow:0 1px #00000080;font-family:var(--font-display);font-size:10px;line-height:1;color:#1a1512}.mini-card+.mini-card{margin:4px 0 0 -8px;box-shadow:-1px 1px #00000059,0 1px #00000080}.mini-card--red{color:var(--pip-red, oklch(50% .18 27))}.tables-empty{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;gap:12px}.tables-empty__felt{flex:1 1 auto;min-height:150px;max-height:340px;margin:4px;padding:24px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;text-align:center;border-radius:18px;background-color:var(--felt-color);background-image:radial-gradient(oklch(0% 0 0 / .22) .8px,transparent .8px),radial-gradient(oklch(100% 0 0 / .03) .8px,transparent .8px);background-size:4px 4px,11px 11px;background-position:0 0,2px 3px;box-shadow:inset 0 3px #00000059,0 0 0 4px #342215,0 6px 0 4px #180c05}.tables-empty__dice{display:flex;gap:10px}.tables-empty__dice .mini-die{width:40px;height:40px;padding:9px;gap:8px;border-radius:8px;box-shadow:inset 0 -3px #c5bdb0,0 3px #00000073}.tables-empty__dice .mini-die--one{grid-template-columns:7px}.tables-empty__dice .mini-die--one i{height:7px}.tables-empty__title{margin:0;max-width:16ch;font-family:var(--font-display);font-size:clamp(17px,2.6dvh,22px);line-height:1.3;color:var(--ink)}.tables-empty .tables-start-main{width:100%;min-height:clamp(54px,8.6dvh,66px);flex-direction:column;gap:2px;white-space:normal}@media(min-width:760px){.tables-empty{width:100%;max-width:560px;margin:0 auto}}.result-remove{margin:-12px -8px -12px 6px;padding:12px 8px;border:0;background:none;color:var(--ink-dim);font-family:var(--font-body);font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer}@media(hover:hover){.result-remove:hover{color:var(--oxblood-hi)}}.result-name{display:flex;align-items:center;min-width:0;overflow:visible}.result-name__text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-name .result-ready-badge,.result-name .result-remove,.result-name .bot-tag{flex:none}.bot-tag,.chip-bot{padding:1px 5px;font-family:var(--font-display);font-size:9px;font-weight:400;letter-spacing:.1em;text-transform:uppercase;line-height:1.3;border-radius:2px;background:var(--surface-3);color:var(--ink);border:1px solid var(--border-strong)}.bot-tag{margin-left:6px}.chip-bot{position:absolute;top:-8px;left:-4px;z-index:3;pointer-events:none}.result-note{font-size:13px;color:var(--ink-dim)}.result-row--next .result-rank{visibility:hidden}.join-asks{position:fixed;top:calc(env(safe-area-inset-top,0px) + var(--chrome-h) + 6px);left:50%;z-index:1300;width:min(calc(100% - 24px),520px);transform:translate(-50%);display:flex;align-items:center;gap:12px;padding:10px 10px 10px 14px;background:var(--surface-2);border:1px solid var(--border-strong);border-radius:12px;box-shadow:var(--shadow-lift)}.join-asks[hidden]{display:none}.join-asks__text{flex:1 1 auto;min-width:0;margin:0;display:flex;flex-direction:column;gap:1px}.join-asks__who{font-size:15px;font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.join-asks__more{font-size:12.5px;color:var(--ink-dim)}.join-asks__actions{flex:none;display:flex;gap:8px}.join-asks .btn{min-height:44px;padding:0 16px}.join-asks .join-asks__yes{font-size:13px}.ask-sheet__line{margin:4px 0 0;font-size:17px;font-weight:600;color:var(--ink)}.ask-sheet__note{margin:4px 0 16px;font-size:14px;color:var(--ink-dim)}.ask-sheet__cancel{width:100%;min-height:48px}.screen[data-screen=waiting] .seat-ring{min-height:76px}.screen[data-screen=waiting] .seat-table{min-height:102px}@media(max-height:700px){.screen[data-screen=waiting] .waiting-wrapper{gap:6px}.screen[data-screen=waiting] .waiting-share{gap:6px;padding:10px 12px}.screen[data-screen=waiting] .table-code{padding-bottom:4px}.screen[data-screen=waiting] .table-code__value{font-size:clamp(28px,5.4dvh,44px)}.screen[data-screen=waiting] .share-table-btn{margin-bottom:0}.screen[data-screen=waiting] .who-joins{margin-top:0}.screen[data-screen=waiting] .who-joins__note{display:none}}@media(max-height:600px){.screen[data-screen=waiting] .waiting-share{gap:4px;padding-block:8px}}.screen[data-screen=waiting] .share-qr-canvas svg,.screen[data-screen=waiting] .share-qr-canvas img{width:clamp(120px,100dvh - 360px,168px);height:clamp(120px,100dvh - 360px,168px)}.dice-row[data-lows]{--lows-cols: 4;--lows-rows: 2;display:grid;grid-template-columns:repeat(var(--lows-cols),max-content);justify-content:center;align-content:center;gap:12px 10px}.dice-row[data-lows][data-count="1"]{--lows-cols: 1;--lows-rows: 1}.dice-row[data-lows][data-count="2"]{--lows-cols: 2;--lows-rows: 1}.dice-row[data-lows][data-count="3"]{--lows-cols: 3;--lows-rows: 1}.dice-row[data-lows][data-count="4"]{--lows-cols: 4;--lows-rows: 1}.dice-row[data-lows][data-count="5"],.dice-row[data-lows][data-count="6"]{--lows-cols: 3}.dice-row[data-lows] .lows-die{--lows-cell-w: calc((100cqw - (var(--lows-cols) - 1) * 10px) / var(--lows-cols));--lows-w: min(var(--lows-cell-w), max(var(--lows-die) + 22px, 64px));width:var(--lows-w)}.overlay-lows[data-lows]{container:lows-card / inline-size}.overlay-lows[data-lows] .lows-die{--lows-die: min(var(--cup-die) * var(--lows-share, .62), var(--lows-cell-w) - 12px)}.cup__lows{display:contents}.dice-table .cup__lows:has(>.dice-row[data-lows]){position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;container:lows / size}.dice-table .cup__lows:has(>.dice-row[data-lows])>.section-label{display:none}.dice-table .cup__lows>.dice-row[data-lows]{--lows-lift: 8px;--lows-row-gap: 12px;--lows-name-gap: 8px;max-width:none;min-height:0;row-gap:var(--lows-row-gap);padding-top:var(--lows-lift)}.dice-table .cup__lows>.dice-row[data-lows] .lows-die{--lows-cell-h: calc((100cqh - var(--lows-lift) - (var(--lows-rows) - 1) * var(--lows-row-gap)) / var(--lows-rows));--lows-name: clamp(11px, var(--lows-cell-h) * .2, 13px);--lows-die: min(var(--cup-die), var(--lows-cell-w) - 12px, var(--lows-cell-h) - var(--lows-name-gap) - 1.2 * var(--lows-name));gap:var(--lows-name-gap)}@container lows (max-height: 160px){.dice-table .cup__lows>.dice-row[data-lows]{--lows-lift: 5px;--lows-row-gap: 8px;--lows-name-gap: 6px}.dice-table .cup__lows .lows-die--first .die{transform:none;box-shadow:inset 0 -2px 2px #7b5c3e66,inset 0 1px #fffffff2,0 0 0 2px var(--copper),0 3px #00000073}}.dice-table .cup__lows>.dice-row[data-lows] .lows-die__name{font-size:var(--lows-name)}.dice-row[data-lows] .die{min-width:0;min-height:0}.dice-row[data-lows] .die.die--tap:after{content:"";position:absolute;inset:-6px calc((var(--lows-die) - var(--lows-w)) / 2) -24px}.home{justify-content:safe center}@media(max-height:600px){.home{--home-gap: 6px;padding-top:4px}.home-hero .logo{font-size:clamp(40px,8dvh,92px)}.home-hero .tagline{max-width:44ch;margin-top:4px}.home .home-start{padding-block:10px}}.home-doors>.home-solo-btn,.home-doors>.home-solo-btn[hidden]{display:inline-flex!important;grid-area:1 / 2}.home-doors>.home-solo-btn[hidden]{visibility:hidden}@media(max-width:360px){.home .home-door{padding-inline:6px}.home-door__sub{font-size:12px}}:root{--join-bar-max: 74px}.join-asks{z-index:550}.join-asks__who,.join-asks__more{line-height:1.25}.join-asks__more{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}body:has(#join-asks:not([hidden])) #results-sheet .sheet-layer__panel.results-wrapper{max-height:min(90dvh,100dvh - env(safe-area-inset-top,0px) - var(--chrome-h) - 6px - var(--join-bar-max) - 8px)}.overlay-card{container:pass-card / inline-size}.overlay-name{font-size:min(clamp(36px,7vw,52px),100cqi / (var(--name-chars, 12) * .77));overflow-wrap:anywhere}@media(max-width:480px){.overlay-name{font-size:min(36px,100cqi / (var(--name-chars, 12) * .77))}}.chrome-cluster .chrome-btn,.chrome-cluster .sfx-toggle,.name-tag,.help-overlay__close,.results-stake__step{position:relative}.chrome-cluster .sfx-toggle{inset:auto}@media(pointer:coarse){.chrome-cluster .chrome-btn:before,.chrome-cluster .sfx-toggle:before{content:"";position:absolute;inset:-4px}.name-tag:before{content:"";position:absolute;inset:-3px 0}.help-overlay__close:before{content:"";position:absolute;inset:-6px}.results-stake__step:before{content:"";position:absolute;inset:-2px}}.dice-table .react-tray .reaction-btn{position:relative}.dice-table .react-tray .reaction-btn:before{content:"";position:absolute;inset:-6px -2px}@media(max-width:359px){.dice-table .react-tray{left:-14px;right:-14px;gap:2px;padding:6px 3px}.dice-table .react-tray .reaction-btn:before{inset:-6px -1px}}.results-stake__step{flex:none}@media(max-width:359px){.table-meta__item{gap:3px}.table-meta__item+.table-meta__item:before{margin:0 4px}.table-meta__label{font-size:11px;letter-spacing:0}}@media(max-width:400px){.results-stake--draft{gap:8px}.results-stake--draft .results-stake__send{white-space:normal;text-wrap:balance;line-height:1.15}.results-stake--draft .results-stake__ante{display:none}.results-stake--draft .results-stake__value{min-width:4em}}.die{--pip-d: calc(var(--size) * 11 / 72);--pip-m: calc(var(--size) * 12 / 72);--pip-g: calc(var(--size) * 4 / 72);padding:var(--pip-m);gap:var(--pip-g)}.die .pip{width:var(--pip-d);height:var(--pip-d)}@supports (left: round(1.5px,1px)){.die{--pip-cell: calc((var(--size) - 2 * var(--pip-m) - 2 * var(--pip-g)) / 3);--pip-at-0: round(calc(var(--pip-m) + (var(--pip-cell) - var(--pip-d)) / 2), 1px);--pip-at-1: round(calc(var(--pip-m) + var(--pip-cell) + var(--pip-g) + (var(--pip-cell) - var(--pip-d)) / 2), 1px);--pip-at-2: round(calc(var(--pip-m) + 2 * (var(--pip-cell) + var(--pip-g)) + (var(--pip-cell) - var(--pip-d)) / 2), 1px)}.die .pip{position:absolute}.die .pip:nth-child(3n+1){left:var(--pip-at-0)}.die .pip:nth-child(3n+2){left:var(--pip-at-1)}.die .pip:nth-child(3n){left:var(--pip-at-2)}.die .pip:nth-child(-n+3){top:var(--pip-at-0)}.die .pip:nth-child(n+4):nth-child(-n+6){top:var(--pip-at-1)}.die .pip:nth-child(n+7){top:var(--pip-at-2)}}.dealer-seat,.felt-print,.bet-circle,.felt-total,.felt-result,.felt-sweep,.seat-name--player,.dealer-sides,.dealer-change,.dealer-bank,.table-meta__item--dealer,body.dealer-mode .table-meta[data-for=game] .table-meta__item{display:none}body.dealer-mode .table-meta[data-for=game] .table-meta__item--dealer{display:flex;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--copper-hi)}body.dealer-mode[data-screen=game] #coach-toggle{display:none}body.dealer-mode[data-screen=game] .dealer-bank{position:relative;display:flex;flex:none;align-items:center;gap:7px;height:36px;padding:0 11px 0 9px;border:1px solid var(--border);border-radius:4px;background:var(--surface);box-shadow:0 1px #0006;font-family:var(--font-display);font-size:15px;color:var(--ink);font-variant-numeric:tabular-nums}.dealer-bank b{font-weight:400}.chip{--c: oklch(50% .14 252);--chip: 40px;position:relative;flex:none;display:grid;place-items:center;width:var(--chip);height:var(--chip);min-height:0;border-radius:50%;background:radial-gradient(circle,var(--c) 0 52%,oklch(96% .012 85) 53% 57%,transparent 58%),repeating-conic-gradient(from 12deg,var(--c) 0 26deg,oklch(96% .012 85) 26deg 34deg);box-shadow:inset 0 0 0 1.5px #00000047,0 3px color-mix(in oklch,var(--c) 65%,black),0 5px 4px #00000073;font-family:var(--font-display);font-size:calc(var(--chip) * .28);line-height:1;color:#fbf8f1;text-shadow:0 1px 0 oklch(0% 0 0 / .5);font-variant-numeric:tabular-nums}.chip--small{--c: oklch(52% .18 30)}.chip--house{--c: oklch(36% .07 160)}.chip--l2{translate:0 -3px;box-shadow:inset 0 0 0 1.5px #00000047,0 3px color-mix(in oklch,var(--c) 62%,black),0 6px color-mix(in oklch,var(--c) 48%,black),0 9px 6px #00000073}.chip--l3{translate:0 -6px;box-shadow:inset 0 0 0 1.5px #00000047,0 3px color-mix(in oklch,var(--c) 62%,black),0 6px color-mix(in oklch,var(--c) 48%,black),0 9px color-mix(in oklch,var(--c) 62%,black),0 12px color-mix(in oklch,var(--c) 45%,black),0 14px 6px #00000073}.chip--mini{--chip: 18px;font-size:0;box-shadow:inset 0 0 0 1px #0000004d}body.dealer-mode .dice-table .table{padding:8px;border-radius:34px;background:linear-gradient(180deg,#643d26,#391f13 55%,#26120c);box-shadow:inset 0 2px #8460478c,inset 0 -2px #00000080,0 14px 30px -12px #000000bf}body.dealer-mode .dice-table .table-felt{border:0;border-radius:27px;box-shadow:inset 0 4px 12px #00000073,inset 0 0 0 1px #00000059}body.dealer-mode .dice-table .game-header,body.dealer-mode .dice-table .felt-info,body.dealer-mode .dice-table .turn-line{display:none}body.dealer-mode .dice-table .turn-panel{gap:8px}body.dealer-mode .dealer-seat{position:relative;display:flex;flex:none;flex-direction:column;align-items:stretch;gap:6px}body.dealer-mode .seat-name--player{display:flex;flex:none}.seat-name{margin:0;display:flex;align-items:baseline;justify-content:center;gap:8px;line-height:1.25}.seat-name b{font-family:var(--font-display);font-weight:400;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:#f0e7d2d9}.seat-name span{font-size:14px;font-style:italic;color:#f0e7d29e}.seat-name .seat-name__hot{font-style:normal;font-weight:700;color:var(--copper-hi)}body.dealer-mode .dice-table .tray,body.dealer-mode .dealer-seat{--tray-die: clamp(26px, calc((100vw - 132px) / 6.8), 38px)}body.dealer-mode .dice-table .tray{padding-block:6px}body.dealer-mode .tray__score-label{display:none}body.dealer-betting .dice-table #tray,body.dealer-mode:not(.dealer-up) .tray--dealer{visibility:hidden}body.dealer-mode .felt-print{display:block;position:absolute;left:50%;top:var(--ring-y, 50%);z-index:-1;width:var(--ring, 280px);height:var(--ring, 280px);translate:-50% -50%;pointer-events:none;transition:opacity .3s}.felt-print svg{display:block;width:100%;height:100%;overflow:visible}.felt-print__line{fill:none;stroke:#f0e7d24d;stroke-width:1.5px}.felt-print__text{font-family:var(--font-display);font-size:12px;letter-spacing:3px;fill:#f0e7d299;text-anchor:middle}body.dealer-mode .bet-circle{display:flex;position:absolute;left:50%;top:50%;translate:-50% -50%;z-index:2;flex-direction:column;align-items:center;gap:calc(var(--ring, 280px) * .025);transition:opacity .3s}.bet-circle__label{font-family:var(--font-display);font-size:11px;letter-spacing:.24em;color:#f0e7d299}.bet-circle__amount{font-family:var(--font-display);font-size:calc(var(--ring, 280px) * .15);line-height:.9;color:var(--ink);text-shadow:0 2px 0 oklch(0% 0 0 / .35);font-variant-numeric:tabular-nums}.bet-circle__row{display:flex;align-items:center;gap:calc(var(--ring, 280px) * .05)}.bet-circle__chips{display:grid;place-items:center;width:calc(var(--ring, 280px) * .24);height:calc(var(--ring, 280px) * .24)}.bet-circle__chips .chip,.felt-sweep__stack .chip{--chip: calc(var(--ring, 280px) * .21)}.bet-step{width:44px;height:44px;padding:0;display:grid;place-items:center;border:1.5px solid oklch(93% .03 88 / .34);border-radius:50%;background:#00000024;color:var(--ink);font-size:24px;line-height:1;cursor:pointer;-webkit-tap-highlight-color:transparent}.bet-step:active:not(:disabled){background:#ffffff14}.bet-step:disabled{opacity:.3;cursor:default}body.dealer-playing .felt-print{opacity:.45}body.dealer-playing .bet-circle{z-index:0;opacity:.5}body.dealer-playing .bet-step,body.dealer-done .bet-circle{visibility:hidden}body.dealer-mode .dice-table .cup .dice-row{z-index:1}body.dealer-mode .dice-table .cup .dice-row:not([data-scatter]){position:relative}body.dealer-betting #rolling-dice,body.dealer-betting #rolling-label{visibility:hidden;pointer-events:none}body.dealer-mode .felt-total:not([hidden]){display:grid;position:absolute;left:50%;bottom:calc((var(--tray-die) + 12px) / 2);translate:-50% 50%;grid-template-columns:auto auto;align-items:baseline;justify-content:center;column-gap:8px;padding:2px 14px 4px;border-radius:12px;background:#091a0deb;pointer-events:none}.felt-total small{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:#f0e7d2a6}.felt-total b{font-family:var(--font-display);font-weight:400;font-size:calc(var(--tray-die) * .68);line-height:1;color:var(--ink)}.nq-spot,.nq-tag{display:none}body.dealer-mode:not(.dealer-up) .nq-spot{display:flex;position:absolute;left:50%;bottom:calc((var(--tray-die) + 12px) / 2);translate:-50% 50%;align-items:center;gap:10px;min-height:0;padding:5px 16px 5px 6px;border:1.5px dashed oklch(93% .03 88 / .34);border-radius:999px;background:linear-gradient(#0000001f,#0000001f),radial-gradient(oklch(0% 0 0 / .22) .8px,transparent .8px) 0 0 / 4px 4px,var(--felt-color);color:inherit;white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:opacity .3s}.nq-spot__slot{flex:none;width:30px;height:30px;display:grid;place-items:center;border:1.5px dashed oklch(93% .03 88 / .3);border-radius:50%}.nq-spot__slot .chip{--chip: 30px;font-size:9px}.nq-spot b{font-family:var(--font-display);font-weight:400;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:#f0e7d2d9}.nq-spot i{font-family:var(--font-display);font-style:normal;font-size:12px;color:var(--copper-hi)}.nq-spot--on{border-style:solid;border-color:var(--copper-hi);background:var(--copper-wash)}.nq-spot--on .nq-spot__slot{border:0}.nq-spot:disabled{cursor:default}body.dealer-playing .nq-spot{opacity:.55}@media(max-width:380px){body.dealer-mode:not(.dealer-up) .nq-spot{gap:8px;padding-right:12px}.nq-spot b{font-size:11px;letter-spacing:.1em}}.felt-total:not([hidden])~.nq-spot{visibility:hidden}body.dealer-up .nq-tag:not([hidden]){display:inline-flex;position:absolute;right:10px;top:calc(100% + 3px);align-items:center;gap:6px;padding:3px 10px 3px 4px;border:1px solid var(--copper-hi);border-radius:999px;background:#2a1c10;font-family:var(--font-display);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--copper-hi);white-space:nowrap}.nq-tag .chip--mini{--chip: 16px}body.dealer-up:has(#nq-tag:not([hidden])) .dice-table .cup{--toss-top: 42px}body.dealer-up .dice-table .cup{--toss-from: far}body.dealer-up:has(#nq-tag:not([hidden])) .dice-table .cup .dice-row:not([data-scatter]){translate:0 16px}.nq-tag--won,.nq-tag--lost,.nq-tag--back{padding-left:10px}.felt-note{display:none}body.dealer-up .felt-note:not([hidden]){display:flex;position:absolute;left:50%;top:calc(100% + 3px);z-index:2;translate:-50% 0;flex-direction:column;align-items:center;gap:2px;width:max-content;max-width:calc(100% - 16px);margin:0;padding:5px 14px 6px;border:1px solid var(--copper-hi);border-radius:12px;background:#2a1c10;text-align:center}.felt-note b{font-family:var(--font-display);font-weight:400;font-size:11px;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;color:#6fd087}.felt-note span{font-size:13px;line-height:1.25;white-space:nowrap;color:var(--ink)}@media(max-width:360px){.felt-note span{font-size:12px}}body.dealer-up:has(#felt-note:not([hidden])) .dice-table .cup{--toss-top: 66px}body.dealer-up:has(#felt-note:not([hidden])) .dice-table .cup .dice-row:not([data-scatter]){translate:0 30px}body.dealer-up:has(#felt-note:not([hidden])) .bet-circle{visibility:hidden}body.dealer-up .nq-tag--won:not([hidden]){border-color:#50986b;color:#6fd087}body.dealer-up .nq-tag--lost:not([hidden]){border-color:var(--border);color:var(--oxblood-hi)}.felt-total__note{grid-column:1 / -1;justify-self:center;margin-top:2px;font-size:12px;line-height:1.2;white-space:nowrap}.felt-total__note--won{color:#6fd087}.felt-total__note--lost{color:var(--oxblood-hi)}body.dealer-mode .felt-result:not([hidden]){display:flex;position:absolute;left:50%;top:50%;translate:-50% -50%;z-index:3;width:min(330px,94%);flex-direction:column;align-items:center;gap:6px;text-align:center}.felt-result__head{font-family:var(--font-display);font-size:22px;letter-spacing:.04em;color:var(--copper-hi)}.felt-result:has(.felt-result__num--lose) .felt-result__head{color:var(--ink)}.felt-result__num{font-family:var(--font-display);font-size:clamp(36px,6.5dvh,56px);line-height:1;text-shadow:0 3px 0 oklch(0% 0 0 / .35)}.felt-result__num--win{color:#6fd087}.felt-result__num--lose{color:var(--oxblood-hi)}.felt-result__num--push{font-family:var(--font-body);font-size:20px;text-shadow:none;color:var(--ink)}.felt-result__parts{font-size:15px;line-height:1.35;color:var(--ink);text-wrap:balance}.felt-result__parts[hidden]{display:none}.felt-result__parts span{white-space:nowrap}.felt-result__parts b{font-family:var(--font-display);font-weight:400}.felt-result__parts b.up{color:#6fd087}.felt-result__parts b.down{color:var(--oxblood-hi)}.felt-result__why{font-size:16px;line-height:1.35;color:var(--ink-dim);text-wrap:balance}body.dealer-mode .felt-sweep{display:block;position:absolute;inset:0;z-index:2;pointer-events:none}.felt-sweep__stack{position:absolute;left:50%;top:calc(50% + var(--ring, 280px) * .12);transform:translate(-50%,-50%);display:flex;gap:8px}body.dealer-mode .dealer-sides{display:block;flex:none;padding:10px 0 0}.dealer-sides__label{margin:0 0 8px;min-height:1.3em;text-align:center;font-size:13px;line-height:1.3;color:var(--ink-muted)}.dealer-sides__label b{font-family:var(--font-display);font-weight:400;color:var(--ink)}.dealer-sides__label b.up{color:#6fd087}.dealer-sides__label b.down{color:var(--oxblood-hi)}.dealer-sides__row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.side-tile{position:relative;height:54px;min-width:0;padding:0 4px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:1px solid var(--border);border-radius:14px;background:var(--surface);color:var(--ink);font-family:var(--font-body);font-size:clamp(13px,4vw,15px);font-weight:600;line-height:1.1;white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent}.side-tile i{font-family:var(--font-display);font-style:normal;font-weight:400;font-size:12px;line-height:1;color:var(--copper-hi)}.side-tile .chip--mini{position:absolute;top:-11px;right:-7px}.side-tile:disabled{cursor:default}.side-tile--on{border-color:var(--copper-hi);background:var(--copper-wash)}.side-tile--won{border-color:var(--forest);background:var(--forest-wash);color:#6fd087}.side-tile--won i{color:#6fd087}.side-tile--lost,.side-tile--off{opacity:.4}.side-tile--lost i{color:var(--oxblood-hi)}#action-btn.dealer-wait,#action-btn.dealer-wait:disabled{opacity:1;filter:none;background:none;border:1.5px dashed var(--border);box-shadow:none;color:var(--ink-muted);font-family:var(--font-body);font-style:italic;text-transform:none;letter-spacing:0}body.dealer-done .dice-table .actions{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:10px}body.dealer-done .dealer-change{display:flex}body.dealer-done .dealer-change{text-transform:none;letter-spacing:0;font-family:var(--font-body);font-size:16px}@media(max-height:640px){body.dealer-mode .dealer-sides{padding-top:6px}.dealer-sides__label{margin-bottom:5px}.side-tile{height:46px;gap:2px}body.dealer-mode .felt-result:not([hidden]){gap:3px}.felt-result__head{font-size:18px}.felt-result__num{font-size:32px}.felt-result__num--push{font-size:17px}.felt-result__parts{font-size:12px}.felt-result__why{font-size:14px}.felt-result:has(.felt-result__parts:not([hidden])) .felt-result__num{font-size:27px}.felt-result:has(.felt-result__parts:not([hidden])) .felt-result__why{font-size:13px}}.felt-print__text--inner{font-size:13px;letter-spacing:1.6px;fill:#f4ca84f2}body.dealer-table .dice-table .game-header{display:block}.seat-bet{display:inline-flex;align-items:center;gap:4px}.seat-bet .chip--mini{--chip: 12px}.seat-bet--none{color:var(--ink-faint)}.chip-score.chip-score--rolling{background:var(--surface-3);color:var(--ink-dim);border-color:var(--border-strong)}.chip-score.chip-score--ready{font-size:10px}body.dealer-ready .dice-table .actions{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:10px}body.dealer-ready .dealer-change{display:flex;text-transform:none;letter-spacing:0;font-family:var(--font-body);font-size:16px}.ptable__glyph--dealer .chip--mini{--chip: 24px}@media(max-height:600px){body.dealer-table .dice-table .players-strip{padding-top:8px}body.dealer-table .dice-table .player-chip{padding-block:2px}body.dealer-table .dice-table .chip-name{font-size:10px;line-height:1.2}body.dealer-table .dice-table .chip-balance{font-size:13px;line-height:1.15}body.dealer-table .dice-table .chip-score{top:-8px;padding:1px 5px;font-size:10px}body.dealer-table .side-tile{height:40px}body.dealer-table .dice-table #action-btn,body.dealer-table .dice-table .dealer-change{min-height:46px;padding-block:10px}body.dealer-table.dealer-done .nq-tag:not([hidden]){display:none}}
