.lb-card{max-width:560px}.lb-head{align-items:center;gap:12px;display:flex}.lb-head h1{text-align:center;flex:1;margin:0;font-size:clamp(26px,5vw,40px)}.lb-head .ghost-btn{white-space:nowrap}.lb-spacer{width:64px}.lb-scope{justify-content:center;align-items:center;gap:10px;display:flex}.lb-scope label{color:var(--lobby-ink-soft);text-transform:uppercase;letter-spacing:.08em;font-size:13px;font-weight:700}.lb-scope select{border:1px solid var(--lobby-line);background:var(--lobby-well);color:var(--lobby-ink);border-radius:10px;padding:.5rem .8rem;font-family:inherit;font-size:.95rem}.lb-scope select:focus{border-color:var(--lobby-accent);box-shadow:var(--lobby-ring);outline:none}.lb-table{border-collapse:collapse;width:100%;color:var(--lobby-ink)}.lb-table th{text-align:right;text-transform:uppercase;letter-spacing:.06em;color:var(--lobby-ink-dim);border-bottom:1px solid var(--lobby-line-soft);padding:6px 10px;font-size:11px;font-weight:700}.lb-table th:first-child,.lb-table th:nth-child(2){text-align:left}.lb-table td{text-align:right;border-bottom:1px solid var(--lobby-line-soft);font-variant-numeric:tabular-nums;padding:9px 10px}.lb-table tr:last-child td{border-bottom:0}.lb-rank{color:var(--lobby-gold);width:2rem;font-weight:800;text-align:left!important}.lb-name{font-weight:700;text-align:left!important}.lb-elo{color:var(--lobby-win);font-weight:700}.pcard{appearance:none;cursor:default;transition:transform calc(.18s / var(--anim-speed)) cubic-bezier(.2, .7, .3, 1), filter calc(.18s / var(--anim-speed));background:0 0;border:0;flex-shrink:0;padding:0;line-height:0;position:relative}.pcard.card-lg{width:calc(98px * var(--card-scale))}.pcard.card-md{width:calc(78px * var(--card-scale))}.pcard.card-sm{width:calc(60px * var(--card-scale))}.pcard img{width:100%;height:auto;box-shadow:var(--shadow-card), inset 0 0 0 1px #0000000f;background:#fff;border-radius:7px;display:block}.hand-you .pcard img{box-shadow:2px 3px 5px #00000047,0 12px 18px #0000003d,inset 0 0 0 1px #00000012}.pcard.is-clickable{cursor:pointer}.pcard.is-clickable:hover{transform:translateY(-12px)}.pcard.is-clickable:hover img{filter:saturate(1.03)brightness(1.02);box-shadow:0 2px 4px #0000003d, 0 12px 24px #00000061, 0 0 0 2px color-mix(in oklab, var(--accent) 22%, transparent)}.pcard.is-raise{transform:translateY(-22px)}.pcard.is-selected img{outline:2px solid var(--accent);outline-offset:2px;box-shadow:0 0 0 4px color-mix(in oklab, var(--accent) 22%, transparent), 0 14px 28px #0000005c;border-radius:8px}.pcard.is-selected{z-index:5;transform:translateY(-22px)}.pcard.is-selected:after{content:"✓";transform-origin:50%;background:linear-gradient(180deg, color-mix(in oklab, var(--accent) 90%, white), var(--accent));width:22px;height:22px;color:var(--accent-ink);border:1px solid color-mix(in oklab, var(--felt) 65%, white);animation:selectedBadgePop calc(.2s / var(--anim-speed)) ease;pointer-events:none;border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:800;line-height:1;display:flex;position:absolute;top:-11px;right:-5px;transform:translateY(0)scale(1);box-shadow:0 5px 14px #00000052}.pcard.is-dim{opacity:.42;filter:grayscale(.4);pointer-events:none}.pcard.is-dim.is-clickable{cursor:not-allowed}.hand-you .pcard.is-clickable{z-index:2}.hand-you .pcard.is-selected{z-index:8}.pcard.is-soft img{opacity:.84}.pcard.is-lit img{outline:2px solid var(--gold);outline-offset:2px;box-shadow:0 0 0 4px color-mix(in oklab, var(--gold) 35%, transparent), var(--shadow-card);border-radius:8px}.pcard.is-lit{z-index:3;transform:translateY(-8px)}.pcard.play-card{animation:cardSlam calc(.34s / var(--anim-speed)) cubic-bezier(.2, .85, .3, 1.05)}@keyframes cardSlam{0%{opacity:0;transform:translateY(-38px)scale(1.05)}52%{opacity:1;transform:translateY(3px)scale(.97,.91)}72%{transform:translateY(0)scaleY(1.035)}to{transform:none}}.hand{justify-content:center;align-items:flex-end;min-height:10px;display:flex}.hand-you{--hand-card-gap:clamp(2px, calc(3px * var(--card-scale)), 6px);gap:var(--hand-card-gap)}.hand-you .pcard{margin:0}.hand-opp .pcard{margin:0 -14px}.hand-opp{transition:opacity calc(.3s / var(--anim-speed));position:relative}.hand-opp.thinking{opacity:.92}@keyframes selectedBadgePop{0%{opacity:0;transform:translateY(7px)scale(.65)}65%{transform:translateY(-1px)scale(1.12)}to{opacity:1;transform:translateY(0)scale(1)}}.hist-summary{text-align:center;color:var(--lobby-ink-soft);font-variant-numeric:tabular-nums;margin:2px 0 12px;font-size:1rem}.hist-summary b{color:var(--lobby-ink)}.hist-win{color:var(--lobby-win);font-weight:800;text-align:left!important}.hist-loss{color:var(--lobby-loss);font-weight:800;text-align:left!important}.hist-opp{font-weight:700;text-align:left!important}.hist-elo{font-variant-numeric:tabular-nums;font-weight:700}.hist-elo-up{color:var(--lobby-win)}.hist-elo-down{color:var(--lobby-loss)}.hist-clickable{cursor:pointer}.hist-clickable:hover{background:var(--lobby-well)}.hist-clickable:focus-visible{outline:2px solid var(--lobby-accent);outline-offset:-2px}.rp-card{max-width:1080px}.rp-summary{text-align:center;color:var(--lobby-ink);font-variant-numeric:tabular-nums;margin:2px 0 16px;font-size:1.05rem}.rp-summary b{color:var(--lobby-ink)}.rp-winner{color:var(--lobby-win);font-weight:700}.rp-dot{vertical-align:middle;font-size:.72em}.rp-body{align-items:flex-start;gap:24px;display:flex}.rp-rounds{flex-direction:column;flex:1;gap:14px;min-width:0;display:flex}.rp-round{border:1px solid color-mix(in oklab, #14271b 72%, var(--lobby-brass) 28%);background:radial-gradient(125% 130% at 50% 6%,#ffeeae0d,#0000 70%),repeating-linear-gradient(90deg,#ffffff04 0 1px,#0000 1px 5px),repeating-linear-gradient(0deg,#00000006 0 1px,#0000 1px 8px),radial-gradient(135% 130% at 50% 12%,#3d6640 0%,#2c5333 48%,#1d3c27 100%);border-radius:14px;padding:16px 18px;scroll-margin-top:16px;position:relative;box-shadow:0 0 0 1px #e6b85614,0 16px 36px #0000006b,inset 0 1px #ffffff0d,inset 0 -26px 48px #00000026}.rp-round:before{content:"";pointer-events:none;border:1px solid color-mix(in oklab, #14271b 52%, var(--lobby-brass) 24%);opacity:.55;border-radius:9px;position:absolute;inset:7px}.rp-round-head{border-bottom:1px solid color-mix(in oklab, var(--lobby-brass) 30%, transparent);flex-wrap:wrap;align-items:center;gap:8px 16px;margin-bottom:10px;padding-bottom:8px;display:flex}.rp-round-no{color:var(--lobby-ink);font-size:1.05rem;font-weight:800}.rp-meta{color:var(--lobby-ink-soft);font-size:.9rem}.rp-meta b{color:var(--lobby-ink)}.rp-starter{align-items:center;gap:6px;display:inline-flex}.rp-block{margin:8px 0}.rp-section{text-transform:uppercase;letter-spacing:.06em;color:color-mix(in oklab, var(--lobby-ink-soft) 62%, var(--lobby-gold));margin:10px 0 6px;font-size:11px;font-weight:700}.rp-row{flex-wrap:wrap;align-items:center;gap:10px;padding:4px 0;display:flex}.rp-label{min-width:96px;color:var(--lobby-ink-soft);font-size:.9rem;font-weight:700}.rp-cards{gap:4px;display:inline-flex}.rp-river{flex-wrap:wrap;gap:10px;display:flex}.rp-river-item{flex-direction:column;align-items:center;gap:2px;display:flex}.rp-zoom{transition:transform calc(.16s / var(--anim-speed,1)) cubic-bezier(.2, .7, .3, 1);transform-origin:50%;border-radius:8px;display:inline-flex;position:relative}.rp-zoom:hover{z-index:40;transform:scale(2.4)}.rp-zoom:hover .pcard img{box-shadow:0 16px 34px #0000008c}.rp-count{color:var(--lobby-ink-soft);font-variant-numeric:tabular-nums;font-size:.8rem}.rp-pts{color:#1b3a24;background:var(--lobby-win);border-radius:999px;padding:0 6px;font-size:.72rem;font-weight:800;line-height:1.4}.rp-show-row .rp-score{text-align:right;min-width:1.8rem;color:var(--lobby-win);font-variant-numeric:tabular-nums;font-weight:800}.rp-show-crib .rp-label{color:var(--lobby-brass)}.rp-groups{flex-wrap:wrap;gap:6px;display:inline-flex}.rp-chip{color:var(--lobby-ink);background:var(--lobby-well);border:1px solid var(--lobby-line-soft);border-radius:999px;padding:1px 8px;font-size:.78rem;font-weight:700}.rp-none{color:var(--lobby-ink-dim);font-size:.82rem;font-style:italic}.rp-nav{flex-direction:column;flex:0 0 136px;align-self:flex-start;gap:2px;max-height:calc(100vh - 32px);display:flex;position:sticky;top:16px;overflow-y:auto}.rp-nav-title{text-transform:uppercase;letter-spacing:.06em;color:var(--lobby-ink-dim);padding:2px 12px 6px;font-size:11px;font-weight:700}.rp-nav-link{text-align:left;cursor:pointer;width:100%;color:var(--lobby-ink-soft);background:0 0;border:0;border-left:2px solid #0000;border-radius:0 8px 8px 0;padding:7px 12px;font-family:inherit;font-size:.92rem;font-weight:700;transition:all .12s}.rp-nav-link:hover{background:var(--lobby-well);color:var(--lobby-ink)}.rp-nav-link.is-active{color:var(--lobby-accent);background:color-mix(in oklab, var(--lobby-accent) 14%, transparent);border-left-color:var(--lobby-accent)}@media (width<=760px){.rp-body{display:block}.rp-nav{display:none}}.profile-field{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.profile-label{color:var(--lobby-ink-dim);text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:700}.profile-value{color:var(--lobby-ink);word-break:break-all;font-weight:600}.profile-section{border:1px solid var(--lobby-line);background:var(--lobby-well);text-align:left;border-radius:12px;padding:16px}.profile-section h2{color:var(--lobby-ink);margin:0 0 6px;font-size:1.1rem}.profile-section p{color:var(--lobby-ink-soft);margin:0 0 12px;font-size:.9rem;line-height:1.45}.profile-edit-row{align-items:stretch;gap:8px;display:flex}.profile-load-error{align-items:center;gap:10px;margin:0 0 12px;display:flex}.profile-load-error .lobby-error{flex:1;margin:0}.profile-edit-row input{border:1px solid var(--lobby-line);min-width:0;color:var(--lobby-ink);font:inherit;background:#00000029;border-radius:10px;flex:1;padding:.65rem .9rem}.profile-edit-row input:focus{border-color:var(--lobby-accent);box-shadow:var(--lobby-ring);outline:none}.profile-edit-row input:disabled{opacity:.68;cursor:not-allowed}.profile-save-btn{border:1px solid var(--lobby-accent);background:color-mix(in oklab, var(--lobby-accent) 18%, transparent);color:var(--lobby-ink);font:inherit;border-radius:10px;padding:.65rem 1rem;font-weight:700;transition:all .15s}.profile-save-btn:hover:not(:disabled){background:color-mix(in oklab, var(--lobby-accent) 30%, transparent)}.profile-save-btn:disabled{opacity:.55;cursor:not-allowed}.profile-section .profile-help{color:var(--lobby-ink-dim);margin:9px 0 0;font-size:.78rem}.profile-section .profile-success{color:var(--lobby-win);margin:9px 0 0;font-size:.82rem;font-weight:700}.profile-danger{background:#e74c3c0f;border:1px solid #e74c3c59;border-radius:12px;margin-top:22px;padding:16px}.profile-danger h2{color:#e74c3c;margin:0 0 6px;font-size:1.1rem}.profile-danger p{color:var(--lobby-ink-soft);margin:0 0 12px;font-size:.9rem;line-height:1.4}.danger-btn{color:#ff6b5e;cursor:pointer;background:#e74c3c26;border:1px solid #e74c3c;border-radius:10px;padding:.6rem 1rem;font-family:inherit;font-weight:700}.danger-btn:hover:not(:disabled){background:#e74c3c47}.danger-btn:disabled{opacity:.6;cursor:default}.profile-confirm{flex-wrap:wrap;align-items:center;gap:10px;display:flex}@media (width<=520px){.profile-edit-row{flex-direction:column}}.lobby-announce{border:1px solid var(--lobby-line);background:color-mix(in oklab, var(--lobby-brass) 9%, var(--lobby-well));box-shadow:var(--lobby-panel-bevel);text-align:left;color:var(--lobby-ink-soft);border-radius:12px;align-items:center;gap:10px;padding:9px 12px 9px 11px;font-size:13px;line-height:1.4;display:flex}.lobby-announce-tag{text-transform:uppercase;letter-spacing:.12em;color:var(--lobby-cta-ink);background:var(--lobby-brass);border-radius:999px;flex:none;padding:3px 7px;font-size:9px;font-weight:800}.lobby-announce-text{flex:1;min-width:0}.lobby-announce-text b{color:var(--lobby-ink)}.lobby-announce-x{color:var(--lobby-ink-dim);cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;padding:0 3px;font-size:18px;line-height:1;transition:color .15s}.lobby-announce-x:hover{color:var(--lobby-ink)}.lobby-stat{font-variant-numeric:tabular-nums;align-items:center;gap:7px;display:inline-flex}.lobby-stat b{color:var(--lobby-ink-soft);font-weight:700}.lobby-stat-sep{opacity:.45}.lobby-stat-dot{background:var(--lobby-accent);width:6px;height:6px;box-shadow:0 0 6px color-mix(in oklab, var(--lobby-accent) 60%, transparent);border-radius:50%;flex:none}.lobby-searching{color:var(--lobby-ink-soft);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;gap:8px;margin:-4px 0 0;font-size:13px;display:flex}.lobby-searching b{color:var(--lobby-accent-2);font-weight:800}.on-lobby{--lobby-bg:#16161a;--lobby-bg-2:#1f1d20;--lobby-bg-edge:#0d0d0f;--lobby-well:#ffffff0d;--lobby-well-2:#ffffff14;--lobby-accent:#f2761a;--lobby-accent-2:#ff8c2b;--lobby-accent-ink:#1a0d03;--lobby-gold:#f0c24b;--lobby-brass:#d9a441;--lobby-cta-grad:linear-gradient(180deg, #e8b84b 0%, #cfa049 52%, #c8862f 100%);--lobby-cta-ink:#1a0d03;--lobby-ink:#eceae6;--lobby-ink-soft:#b8b0a6;--lobby-ink-dim:#9c9389;--lobby-line:#d9a44157;--lobby-line-soft:#ffffff1a;--lobby-win:#54c98a;--lobby-loss:#e74c3c;--lobby-danger:#ff6b6b;--lobby-card-bg:#1412149e;--lobby-cta-bevel:inset 0 1px 0 #fff0d28c, inset 0 -2px 4px #00000059;--lobby-cta-glow:0 6px 18px #e8b84b66;--lobby-panel-bevel:inset 0 1px 0 #ffe0be1a;--lobby-shadow-deep:0 26px 70px #0000009e, 0 2px 0 #0006;--lobby-ring:0 0 0 1px var(--lobby-accent), 0 0 12px #f2761a66;--accent:var(--lobby-accent);--accent-ink:var(--lobby-accent-ink);isolation:isolate;background:radial-gradient(ellipse 62% 54% at 50% 38%, #f2761a16 0%, #d9a44106 43%, transparent 74%), radial-gradient(ellipse 112% 66% at 50% 116%, #c8862f0e 0%, transparent 68%), linear-gradient(180deg, var(--lobby-bg-2) 0%, var(--lobby-bg) 48%, var(--lobby-bg-edge) 100%);min-height:100vh;color:var(--lobby-ink);position:relative;overflow-x:clip}.on-lobby:before{content:"";z-index:-2;pointer-events:none;opacity:.46;background:repeating-linear-gradient(92deg,#ffffff04 0 1px,#0000 1px 9px),repeating-linear-gradient(0deg,#00000029 0 1px,#0000 1px 7px);position:absolute;inset:0;-webkit-mask-image:radial-gradient(90% 82% at 50% 48%,#000 0 34%,#000000c2 62%,#0000 100%);mask-image:radial-gradient(90% 82% at 50% 48%,#000 0 34%,#000000c2 62%,#0000 100%)}.on-lobby:after{content:"";z-index:-1;pointer-events:none;background:radial-gradient(54% 34% at 50% 0,#f2761a13,#0000 72%),linear-gradient(#4a311d24,#09090b09 58%,#0000 100%);border-top:1px solid #d9a44124;border-radius:50% 50% 0 0/18% 18% 0 0;width:min(1540px,118vw);height:clamp(330px,38vw,560px);position:absolute;bottom:clamp(-300px,-18vw,-190px);left:50%;transform:translate(-50%);box-shadow:inset 0 1px #ffe1bc0b,0 -28px 90px #0003}.lobby{z-index:1;place-items:center;min-height:100vh;padding:32px 16px;display:grid;position:relative}.lobby-card{background:var(--lobby-card-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--lobby-line);box-shadow:var(--lobby-shadow-deep), var(--lobby-panel-bevel);text-align:center;width:100%;max-width:680px;color:var(--lobby-ink);border-radius:26px;flex-direction:column;gap:18px;padding:clamp(28px,5vw,52px);animation:.5s both fadeInUp;display:flex}.lobby-card:not(.lb-card):not(.lobby-center){position:relative}.lobby-card:not(.lb-card):not(.lobby-center):before{content:"";background:linear-gradient(90deg, transparent, var(--lobby-brass), transparent);opacity:.8;border-radius:2px;height:2px;position:absolute;top:0;left:18%;right:18%}.lobby-logo{filter:drop-shadow(0 4px 14px #00000080);height:84px;margin:0 auto 2px}.lobby-card h1{margin:0}.lobby-title>span,.lobby-card h1:not(.lobby-title),.lb-head h1{font-family:"Cinzel", var(--display);text-transform:uppercase;letter-spacing:.04em;color:var(--lobby-gold);background:linear-gradient(#ffe9c2 0%,#f0c24b 48%,#cfa049 100%);-webkit-text-fill-color:transparent;filter:drop-shadow(0 2px 2px #0006);-webkit-background-clip:text;background-clip:text;font-weight:700}.lobby-title{justify-items:center;gap:9px;display:grid}.lobby-title>span{font-size:clamp(34px,6vw,54px);line-height:1.04}.lobby-card h1:not(.lobby-title){font-size:clamp(34px,6vw,54px)}.lobby-title small{color:var(--lobby-brass);font-family:var(--font);letter-spacing:.46em;text-transform:uppercase;align-items:center;gap:10px;font-size:11px;font-weight:800;line-height:1;display:flex}.lobby-title small:before,.lobby-title small:after{content:"";background:linear-gradient(90deg, transparent, color-mix(in oklab, var(--lobby-brass) 72%, transparent));width:28px;height:1px}.lobby-title small:after{transform:scaleX(-1)}.lobby-sub{color:var(--lobby-ink-soft);max-width:46ch;margin:0 auto;font-size:16px;line-height:1.6}.lobby-sub b{color:var(--lobby-ink)}.lobby-field{text-align:left;flex-direction:column;gap:8px;display:flex}.lobby-field label{text-transform:uppercase;letter-spacing:.06em;color:var(--lobby-ink-soft);font-size:12px;font-weight:700}.lobby-field input{border:1px solid var(--lobby-line);background:var(--lobby-well);color:var(--lobby-ink);border-radius:10px;padding:.7rem .9rem;font-family:inherit;font-size:1rem}.lobby-field input:focus{border-color:var(--lobby-accent);background:var(--lobby-well-2);box-shadow:var(--lobby-ring);outline:none}.lobby-field input::placeholder{color:var(--lobby-ink-dim)}.lobby-field input[readonly]{color:var(--lobby-ink-soft);cursor:default}.lobby-field-note{color:var(--lobby-ink-dim);margin:-1px 0 0;font-size:.78rem;line-height:1.35}.mode-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.mode{background:var(--lobby-well);border:1.5px solid var(--lobby-line);cursor:pointer;color:var(--lobby-ink);border-radius:18px;flex-direction:column;align-items:center;gap:9px;padding:20px 14px;transition:all .15s;display:flex}.mode:hover{border-color:var(--lobby-accent);background:color-mix(in oklab, var(--lobby-accent) 8%, transparent);transform:translateY(-3px)}.mode.is-active{border-color:var(--lobby-accent);background:color-mix(in oklab, var(--lobby-accent) 14%, transparent)}.lobby-icon{width:16px;height:16px;display:block}.mode-ico{border:1px solid var(--lobby-line-soft);width:46px;height:46px;color:var(--lobby-brass);background:radial-gradient(circle at 36% 24%, #fff1, transparent 54%), var(--lobby-well);border-radius:13px;place-items:center;transition:all .15s;display:grid}.mode-ico .lobby-icon{width:25px;height:25px}.mode:hover .mode-ico,.mode.is-active .mode-ico{border-color:color-mix(in oklab, var(--lobby-accent) 64%, transparent);color:var(--lobby-accent-2);background:color-mix(in oklab, var(--lobby-accent) 12%, transparent);box-shadow:0 0 16px color-mix(in oklab, var(--lobby-accent) 16%, transparent)}.mode-name{white-space:nowrap;font-size:15px;font-weight:700}.mode-desc{color:var(--lobby-ink-dim);font-size:12px;line-height:1.4}.diff-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.diff-btn{background:var(--lobby-well);border:1px solid var(--lobby-line);color:var(--lobby-ink-soft);border-radius:10px;flex-direction:column;align-items:center;gap:2px;padding:.6rem .5rem;transition:all .15s;display:flex}.diff-btn:hover{background:var(--lobby-well-2);color:var(--lobby-ink)}.diff-active{background:color-mix(in oklab, var(--lobby-accent) 14%, transparent)!important;border-color:var(--lobby-accent)!important;color:var(--lobby-ink)!important}.diff-label{font-size:.9rem;font-weight:700}.diff-desc{opacity:.7;font-size:.7rem}.lobby-len{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}.len-label{color:var(--lobby-ink-soft);text-transform:uppercase;letter-spacing:.08em;font-size:13px;font-weight:700}.seg{background:var(--lobby-well);border:1px solid var(--lobby-line);border-radius:99px;padding:4px;display:inline-flex}.seg button{color:var(--lobby-ink-soft);white-space:nowrap;background:0 0;border-radius:99px;padding:9px 18px;font-size:14px;font-weight:700;transition:all .15s}.seg button.on{background:color-mix(in oklab, var(--lobby-accent) 20%, transparent);color:var(--lobby-ink);box-shadow:inset 0 0 0 1px color-mix(in oklab, var(--lobby-accent) 45%, transparent)}.lobby-cta{letter-spacing:.01em;background:var(--lobby-cta-grad);color:var(--lobby-cta-ink);box-shadow:var(--lobby-cta-bevel), var(--lobby-cta-glow);border-radius:12px;padding:.9rem;font-size:1.1rem;font-weight:800;transition:all .15s}.lobby-cta:hover:not(:disabled){filter:brightness(1.04);box-shadow:var(--lobby-cta-bevel), 0 9px 24px #e8b84b85;transform:translateY(-2px)}.lobby-cta:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.lobby-divider{text-align:center;color:var(--lobby-ink-dim);align-items:center;gap:.5rem;font-size:.75rem;display:flex}.lobby-divider:before,.lobby-divider:after{content:"";background:var(--lobby-line-soft);flex:1;height:1px}.join-row{gap:8px;display:flex}.code-input{border:1px solid var(--lobby-line);background:var(--lobby-well);color:var(--lobby-ink);letter-spacing:.2em;text-transform:uppercase;text-align:center;border-radius:10px;flex:1;padding:.65rem .9rem;font-size:1.1rem;font-weight:700}.code-input:focus{border-color:var(--lobby-accent);box-shadow:var(--lobby-ring);outline:none}.code-input::placeholder{color:var(--lobby-ink-dim);letter-spacing:normal}.join-btn{background:var(--lobby-cta-grad);color:var(--lobby-cta-ink);box-shadow:var(--lobby-cta-bevel), var(--lobby-cta-glow);border-radius:10px;padding:0 1.2rem;font-weight:700;transition:all .15s}.join-btn:hover:not(:disabled){transform:translateY(-1px)}.join-btn:disabled{opacity:.5;cursor:not-allowed}.lobby-status{color:var(--lobby-brass);text-align:center;margin:0;font-size:.85rem}.lobby-error{color:var(--lobby-danger);text-align:center;margin:0;font-size:.85rem}.link-btn{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.lobby-links{flex-wrap:wrap;justify-content:center;gap:4px;margin-top:6px;display:flex}.lobby-nav-link{color:var(--lobby-ink-soft);background:0 0;border-radius:7px;align-items:center;gap:6px;padding:5px 8px;font-size:.86rem;font-weight:700;transition:all .15s;display:inline-flex}.lobby-nav-link .lobby-icon{color:var(--lobby-brass);opacity:.82;transition:all .15s}.lobby-nav-link:hover{background:var(--lobby-well);color:var(--lobby-ink)}.lobby-nav-link:hover .lobby-icon{color:var(--lobby-accent-2);opacity:1}.lobby-leaderboard{color:var(--lobby-brass);font-weight:700;text-decoration:none}.lobby-leaderboard:hover{text-decoration:underline}.start-loading .dots{animation:1s infinite pulse}.lobby-heritage{border-top:1px solid var(--lobby-line-soft);color:var(--lobby-ink-dim);flex-direction:column;align-items:center;gap:5px;margin-top:6px;padding-top:14px;font-size:11px;line-height:1.4;display:flex}.lobby-heritage-mark{text-transform:uppercase;letter-spacing:.24em;color:var(--lobby-brass);font-size:10px;font-weight:700}.lobby-heritage-also{letter-spacing:.02em}.lobby-heritage-game{color:var(--lobby-ink-soft);font-weight:600}.on-lobby .setup-field{text-align:left;flex-direction:column;gap:.6rem;display:flex}.on-lobby .setup-sub{color:var(--lobby-ink-soft);margin:0;font-size:.9rem}.on-lobby .setup-field input{border:1px solid var(--lobby-line);background:var(--lobby-well);color:var(--lobby-ink);border-radius:10px;padding:.65rem .9rem;font-family:inherit;font-size:1rem}.on-lobby .setup-field input:focus{border-color:var(--lobby-accent);box-shadow:var(--lobby-ring);outline:none}.on-lobby .mode-tabs{grid-template-columns:1fr 1fr;gap:6px;display:grid}.on-lobby .mode-tab{background:var(--lobby-well);border:1px solid var(--lobby-line);color:var(--lobby-ink-soft);border-radius:10px;padding:.55rem .4rem;font-size:.85rem;font-weight:700;transition:all .15s}.on-lobby .mode-tab:hover{background:var(--lobby-well-2);color:var(--lobby-ink)}.on-lobby .mode-active{background:color-mix(in oklab, var(--lobby-accent) 14%, transparent)!important;border-color:var(--lobby-accent)!important;color:var(--lobby-ink)!important}.on-lobby .start-btn{background:var(--lobby-cta-grad);color:var(--lobby-cta-ink);box-shadow:var(--lobby-cta-bevel), var(--lobby-cta-glow);border-radius:10px;padding:.8rem;font-size:1.05rem;font-weight:800;transition:all .15s}.on-lobby .start-btn:hover:not(:disabled){filter:brightness(1.04);transform:translateY(-1px)}.on-lobby .start-btn:disabled{opacity:.6;cursor:not-allowed}.on-lobby .setup-error{color:var(--lobby-danger);text-align:center;margin:0;font-size:.85rem}.lobby-center{align-items:center;gap:14px}.lobby-spinner{border:3px solid #ffffff26;border-top-color:var(--lobby-accent);border-radius:50%;width:38px;height:38px;margin:6px auto;animation:.9s linear infinite spin}.code-display{font-family:var(--display);letter-spacing:.3em;color:var(--lobby-gold);background:var(--lobby-well);border:1px dashed var(--lobby-gold);cursor:pointer;border-radius:12px;padding:.6rem 1.2rem .6rem 1.5rem;font-size:2.4rem;font-weight:800;transition:all .15s}.code-display:hover{background:var(--lobby-well-2)}.ghost-btn{border:1px solid var(--lobby-line-soft);color:var(--lobby-ink-soft);background:0 0;border-radius:10px;padding:.6rem 1.4rem;font-weight:600;transition:all .15s}.ghost-btn:hover{background:var(--lobby-well);color:var(--lobby-ink)}.lobby-hint{color:var(--lobby-ink-dim);margin:0;font-size:.85rem}.lobby-msg{color:var(--lobby-ink-soft);margin:0}@media (width<=620px){.mode-grid{grid-template-columns:1fr}}.scoreboard{border-radius:var(--radius);background:linear-gradient(180deg, #ffe3a40f, transparent 34%), radial-gradient(120% 120% at 0% 0%, color-mix(in oklab, var(--gold) 10%, transparent), transparent 50%), var(--sb-bg);color:var(--sb-ink);border:1px solid color-mix(in oklab, var(--line) 74%, var(--gold) 18%);padding:7px;position:relative;overflow:hidden;box-shadow:0 14px 32px #0000003d,inset 0 1px #ffffff0e,inset 0 -12px 26px #00000029}.scoreboard:before{content:"";border-radius:calc(var(--radius) - 7px);pointer-events:none;border:1px solid #ffffff0b;position:absolute;inset:7px}.sb-team{border-radius:13px;grid-template-columns:38px 1fr auto;align-items:center;gap:11px;padding:13px 14px;display:grid;position:relative}.sb-lead{background:linear-gradient(90deg,oklab(100% 0 5.96046e-8/.08),#0000 72%)}.sb-rank{color:#fff;border-radius:9px;place-items:center;width:30px;height:30px;font-size:15px;font-weight:800;display:grid;box-shadow:inset 0 1px #ffffff47,0 5px 12px #0000003d}.sb-main{flex-direction:column;gap:6px;min-width:0;display:flex}.sb-name{white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:8px;min-width:0;font-size:16px;font-weight:700;display:flex;overflow:hidden}.sb-deal{letter-spacing:.08em;background:oklab(100% 0 5.96046e-8/.18);border-radius:5px;padding:2px 6px;font-size:9px;font-weight:800}.sb-track{background:oklab(100% 0 5.96046e-8/.12);border-radius:3px;height:4px;overflow:hidden}.sb-fill{height:100%;transition:width calc(.8s / var(--anim-speed)) cubic-bezier(.22, 1, .36, 1);border-radius:3px}.sb-score{font-family:var(--display);text-align:right;font-variant-numeric:tabular-nums;text-shadow:0 2px 6px #0000005c;min-width:46px;font-size:28px;font-weight:800}.sb-divider{text-align:center;letter-spacing:.12em;text-transform:uppercase;color:color-mix(in oklab, var(--sb-ink) 70%, transparent);padding:2px 0;font-size:10px;font-weight:900}.sb-divider span{padding:0 10px;display:inline-block}@media (width>=1800px) and (height>=1050px){.sb-team{gap:13px;padding:15px 16px}.sb-rank{border-radius:10px;width:34px;height:34px;font-size:17px}.sb-name{gap:9px;font-size:19px}.sb-deal{padding:3px 8px;font-size:11px}.sb-score{min-width:54px;font-size:34px}.sb-divider{font-size:11px}}.pegboard-wrap{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;width:100%;min-height:0;display:flex}.cribsvg{filter:drop-shadow(0 1px #ffffff14)drop-shadow(0 12px 20px #00000057);width:auto;max-width:100%;height:auto;max-height:100%;display:block}.pb-legend{color:var(--ink-soft);justify-content:space-between;align-items:center;gap:8px;width:100%;margin-top:0;padding:2px 2px 0;font-size:12px;display:flex}.pb-legend span{align-items:center;gap:6px;display:inline-flex}.pb-legend i{border-radius:50%;width:10px;height:10px;box-shadow:0 0 0 2px #ffffff14,0 2px 6px #00000040}.pb-legend b{font-family:var(--display);color:var(--ink);font-size:14px}.pb-target{text-transform:uppercase;letter-spacing:.06em;opacity:.7;font-size:11px}@media (width>=1800px) and (height>=1050px){.pb-legend{font-size:14px}.pb-legend b{font-size:16px}.pb-legend i{width:12px;height:12px}.pb-target{font-size:12px}}.rd-scrim{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:60;animation:fadeIn calc(.3s / var(--anim-speed));background:#0a0f0c8c;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.rd-card{background:var(--surface,#fff);color:var(--ink);border:1px solid var(--line,var(--felt-edge));box-shadow:var(--shadow);width:min(680px,100%);max-height:88vh;animation:calloutPop calc(.35s / var(--anim-speed));border-radius:20px;padding:22px 26px 24px;overflow-y:auto}.rd-head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.rd-head h2{font-family:var(--display);margin:0;font-size:26px}.rd-close{appearance:none;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:6px 8px;font-size:20px;line-height:1}.rd-close:hover{color:var(--ink)}.rd-label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);font-size:11px;font-weight:700}.rd-starter{align-items:center;gap:12px;padding-bottom:14px;display:flex}.rd-player{border-top:1px solid var(--line,var(--felt-edge));margin-top:4px;padding-top:16px}.rd-player h3{font-family:var(--display);align-items:center;gap:10px;margin:0 0 10px;font-size:18px;display:flex}.rd-crib h4{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);align-items:center;gap:8px;margin:4px 0 8px;font-size:13px;display:flex}.rd-score{font-family:var(--display);color:var(--accent-ink,#1c1303);background:var(--gold);border-radius:99px;padding:2px 10px;font-size:14px;font-weight:700}.rd-hand{flex-wrap:wrap;gap:4px;margin-bottom:10px;display:flex}.rd-crib{margin-top:12px}.rd-table{border-collapse:collapse;width:100%;margin-bottom:4px;font-size:13px}.rd-table th{text-align:left;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.09em;border-bottom:1px solid var(--line,var(--felt-edge));padding:4px 8px;font-size:10px}.rd-table td{border-bottom:1px solid color-mix(in oklab, var(--ink) 10%, transparent);vertical-align:middle;padding:7px 8px}.rd-table tr:last-child td{border-bottom:0}.rd-combos{flex-wrap:wrap;gap:14px;display:flex}.rd-combo{gap:2px;display:flex}.rd-type{white-space:nowrap;font-weight:600}.rd-pts{text-align:right;font-family:var(--display);color:var(--accent-2);font-weight:700}.rd-empty{color:var(--ink-soft);margin:2px 0 8px;font-size:13px;font-style:italic}.rd-total{text-align:right;color:var(--ink-soft);margin-top:8px;font-size:14px}.rd-total b{font-family:var(--display);color:var(--ink);margin-left:4px;font-size:18px}.rd-card .rd-hand .pcard{width:46px}.rd-card .rd-combo .pcard{width:36px}.rd-card .rd-starter .pcard{width:46px}.rd-card .pcard img{border-radius:3px}.rd-zoom{display:inline-flex;position:relative}.rd-zoom .pcard{transition:transform calc(.16s / var(--anim-speed)) cubic-bezier(.2, .7, .3, 1);transform-origin:50%}.rd-zoom:hover{z-index:40}.rd-zoom:hover .pcard{transform:scale(2.4)}.rd-zoom:hover .pcard img{outline:1.5px solid var(--ink-soft);box-shadow:0 14px 32px #00000080}.rd-zoom.rd-own-you:hover .pcard img{outline-color:var(--peg-you,#d23b3b)}.rd-zoom.rd-own-opp:hover .pcard img{outline-color:var(--peg-bob,#2f6fd0)}.rd-actions{border-top:1px solid var(--line,var(--felt-edge));justify-content:flex-end;align-items:center;gap:12px;margin-top:22px;padding-top:14px;display:flex}.rd-ready{color:var(--accent-2);margin-right:auto;font-size:13px;font-weight:800}.counting{--reward-face:"Fraunces", "Hoefler Text", Georgia, "Times New Roman", serif;--opp-silver:#b9cbd7;--opp-silver-bright:#eff7fb;--opp-silver-deep:#667e8d;--show-tone:var(--gold);--show-tone-glow:var(--gold);--stage-light-core:#ffe9ad;--stage-light-mid:#e1aa50;--stage-light-wide:#a56b30;background:var(--felt);border:1px solid var(--felt-edge);border-radius:var(--radius);box-shadow:var(--shadow);text-align:center;isolation:isolate;flex-direction:column;flex:1;justify-content:center;padding:clamp(24px,3.4vw,52px);display:flex;position:relative;overflow:hidden}.counting[data-owner=opp]{--show-tone:var(--opp-silver);--show-tone-glow:color-mix(in oklab, var(--opp-silver) 58%, var(--peg-bob));--stage-light-core:#e9fbff;--stage-light-mid:#91dcff;--stage-light-wide:#4d99d0}.counting:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(circle at 50% 47%, color-mix(in oklab, var(--show-tone-glow) 11%, transparent), transparent 28%), linear-gradient(110deg, transparent 0 22%, #ffffff06 47%, transparent 70%);opacity:.8;position:absolute;inset:0}.counting-head{justify-items:center;display:grid}.counting-kicker{letter-spacing:.18em;text-transform:uppercase;color:var(--gold);align-items:center;gap:10px;margin-bottom:11px;font-family:Cinzel,Georgia,Times New Roman,serif;font-size:13.5px;font-weight:700;display:flex}.counting-kicker span{background:linear-gradient(90deg, transparent, var(--gold));opacity:.7;width:26px;height:1px;display:block}.counting-kicker span:last-child{transform:scaleX(-1)}.counting-title-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;display:flex}.counting-title-row h2{font-family:var(--display);letter-spacing:-.035em;color:color-mix(in oklab, var(--ink) 88%, var(--show-tone));text-shadow:0 2px 10px color-mix(in oklab, var(--show-tone-glow) 15%, transparent);margin:0;font-size:clamp(29px,3.3vw,42px);line-height:1.05}.counting-order{border:1px solid color-mix(in oklab, var(--show-tone) 30%, transparent);background:color-mix(in oklab, var(--felt-edge) 24%, transparent);color:var(--ink-soft);font-family:var(--display);letter-spacing:.1em;text-transform:uppercase;border-radius:999px;align-items:baseline;gap:3px;padding:5px 9px;font-size:10px;font-weight:800;display:inline-flex}.counting-order b{color:var(--show-tone);font-size:14px}.counting-order i{opacity:.5;font-style:normal}.counting-sub{min-height:17px;color:color-mix(in oklab, var(--ink-soft) 88%, var(--show-tone));letter-spacing:.08em;text-transform:uppercase;margin:10px 0 0;font-size:12px;font-weight:700}.counting-route{text-align:left;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;width:min(100%,1040px);margin:31px auto 28px;padding:0;list-style:none;display:grid}.counting-route li{--route-tone:var(--gold);--route-glow:var(--gold);border:1px solid color-mix(in oklab, var(--ink-soft) 17%, transparent);background:color-mix(in oklab, var(--felt-edge) 20%, transparent);min-width:0;color:var(--ink-soft);transition:border-color calc(.25s / var(--anim-speed)) ease, background calc(.25s / var(--anim-speed)) ease, transform calc(.25s / var(--anim-speed)) ease;border-radius:11px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 14px;display:grid}.counting-route li.route-opp{--route-tone:var(--opp-silver);--route-glow:color-mix(in oklab, var(--opp-silver) 58%, var(--peg-bob))}.counting-route li.is-active{border-color:color-mix(in oklab, var(--route-tone) 64%, transparent);background:color-mix(in oklab, var(--route-tone) 10%, transparent);transform:translateY(-2px);box-shadow:0 7px 18px #00000024}.counting-route li.is-complete{border-color:color-mix(in oklab, var(--route-tone) 27%, transparent);background:color-mix(in oklab, var(--route-tone) 7%, transparent)}.counting-route li.is-waiting{opacity:.58}.route-index{border:1px solid color-mix(in oklab, currentColor 43%, transparent);width:27px;height:27px;color:inherit;font-family:var(--display);border-radius:50%;place-items:center;font-size:12px;font-weight:800;display:grid}.is-active .route-index{border-color:var(--route-tone);color:var(--route-tone);animation:routePulse calc(1.1s / var(--anim-speed)) ease-in-out infinite}.is-complete .route-index{border-color:color-mix(in oklab, var(--route-tone) 65%, transparent);background:color-mix(in oklab, var(--route-tone) 18%, transparent);color:var(--route-tone)}.is-complete .route-index:after{content:"✓";font-size:14px;line-height:1}.route-copy{gap:1px;min-width:0;display:grid}.route-copy small{color:inherit;letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:800}.route-copy b{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:800;overflow:hidden}.route-score{color:var(--ink-soft);font-family:var(--display);font-size:12px;font-weight:800}.is-active .route-score,.is-complete .route-score{color:var(--route-tone)}.route-opp.is-active .route-copy b,.route-opp.is-complete .route-copy b{color:color-mix(in oklab, var(--ink) 84%, var(--opp-silver))}.counting-stage{isolation:isolate;width:min(100%,1120px);min-height:calc((160px * var(--card-scale)) + 150px);flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:clamp(34px,5vw,76px);margin:0 auto 34px;display:flex;position:relative}.counting-stage:before{content:"";background:radial-gradient(ellipse 36% 42% at 50% 46%, color-mix(in oklab, var(--stage-light-core) 22%, transparent), transparent 74%), radial-gradient(ellipse 68% 60% at 50% 54%, color-mix(in oklab, var(--stage-light-mid) 15%, transparent), transparent 78%), radial-gradient(ellipse 94% 76% at 50% 60%, color-mix(in oklab, var(--stage-light-wide) 9%, transparent), transparent 82%);filter:blur(12px);opacity:.9;pointer-events:none;z-index:0;border-radius:50%;width:min(78vw,820px);height:270px;position:absolute;top:34%;left:57%;transform:translate(-50%,-50%)}.count-starter,.count-hand-wrap{z-index:1;flex-direction:column;align-items:center;gap:16px;display:flex;position:relative}.count-hand{z-index:1;gap:11px;display:flex;position:relative}.count-hand:before{content:"";background:radial-gradient(44% 64% at 50% 42%, color-mix(in oklab, var(--stage-light-core) 28%, transparent), transparent 70%), radial-gradient(62% 82% at 50% 54%, color-mix(in oklab, var(--stage-light-mid) 20%, transparent), transparent 76%), radial-gradient(82% 104% at 50% 62%, color-mix(in oklab, var(--stage-light-wide) 11%, transparent), transparent 82%);z-index:-2;pointer-events:none;border-radius:22px/46%;width:calc(100% + clamp(56px,8vw,140px));height:calc(100% + 62px);position:absolute;top:52%;left:50%;transform:translate(-50%,-50%);box-shadow:inset 0 1px #ffffff0f,inset 0 -16px 32px #0000002b}.count-hand:after{content:"";filter:blur(4px);z-index:-1;pointer-events:none;background:radial-gradient(#00000070,#0000 70%);border-radius:50%;width:86%;height:22px;position:absolute;bottom:-13px;left:50%;transform:translate(-50%)}.count-starter{z-index:1}.count-starter:after{content:"";filter:blur(4px);z-index:-1;pointer-events:none;background:radial-gradient(#00000057,#0000 72%);border-radius:50%;width:76%;height:17px;position:absolute;bottom:-11px;left:50%;transform:translate(-50%)}.counting .pcard.card-lg{width:calc(116px * var(--card-scale))}.counting[data-owner=opp] .pcard.is-lit img{outline-color:var(--opp-silver);box-shadow:0 0 0 4px color-mix(in oklab, var(--opp-silver) 34%, transparent), var(--shadow-card)}.counting[data-owner=opp] .pcard.is-soft img{box-shadow:var(--shadow-card), inset 0 0 0 1px color-mix(in oklab, var(--opp-silver) 38%, #0000001f)}.counting-glow{background:radial-gradient(ellipse 40% 46% at 50% 54%, color-mix(in oklab, var(--stage-light-core) 32%, transparent), transparent 72%), radial-gradient(ellipse 76% 68% at 50% 58%, color-mix(in oklab, var(--stage-light-mid) 20%, transparent), transparent 78%);filter:blur(9px);opacity:.58;pointer-events:none;z-index:0;border-radius:50%;width:min(76vw,760px);height:240px;position:absolute;top:50%;left:56%;transform:translate(-50%,-50%)}.counting.is-scoring .counting-glow{animation:countingBloom calc(.7s / var(--anim-speed)) ease-out both}.counting[data-impact=big] .counting-glow{background:radial-gradient(ellipse 40% 46% at 50% 54%, color-mix(in oklab, var(--stage-light-core) 48%, transparent), transparent 72%), radial-gradient(ellipse 78% 70% at 50% 58%, color-mix(in oklab, var(--stage-light-mid) 30%, transparent), transparent 80%)}.counting[data-side=opp] .counting-glow{opacity:.66;background:radial-gradient(40% 46% at 50% 54%,oklab(97.6025% -.016562 -.0105686/.38),#0000 72%),radial-gradient(78% 70% at 50% 58%,oklab(81.7861% -.0580782 -.0880225/.24),#0000 80%)}.counting[data-side=opp][data-impact=big] .counting-glow{background:radial-gradient(40% 46% at 50% 54%,oklab(98.4273% -.0133207 -.00681943/.54),#0000 72%),radial-gradient(80% 72% at 50% 58%,oklab(79.903% -.0612363 -.0979561/.34),#0000 80%)}.score-reward{pointer-events:none;z-index:5;position:absolute;top:calc(100% + 24px);left:50%}.coin-flash{background:radial-gradient(circle, color-mix(in oklab, var(--gold) 82%, white) 0%, color-mix(in oklab, var(--gold) 42%, transparent) 40%, transparent 70%), radial-gradient(circle, oklab(70.6197% .0483574 .125877/.24), transparent 78%);width:140px;height:140px;animation:goldFlash calc(.5s / var(--anim-speed)) ease-out both;border-radius:50%;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}.score-coin{border:2px solid color-mix(in oklab, var(--gold) 58%, #5a3f08);color:#3a2a06;background:radial-gradient(120% 120% at 32% 24%, #ffe9a8, var(--gold) 56%, #966b22 100%);width:56px;height:56px;box-shadow:0 8px 18px color-mix(in oklab, var(--gold) 45%, #00000080), inset 0 2px 3px #ffffffbf, inset 0 -5px 7px #5a3c0a80;font-family:var(--display);animation:chaChing calc(.55s / var(--anim-speed)) cubic-bezier(.2, 1.5, .4, 1) both;border-radius:50%;place-items:center;font-size:21px;font-weight:900;display:grid;position:absolute;top:0;left:0;overflow:hidden}.score-coin:after{content:"";animation:coinShine calc(.5s / var(--anim-speed)) ease-out both;animation-delay:calc(80ms / var(--anim-speed));background:linear-gradient(115deg,#0000 34%,#ffffffe6 50%,#0000 64%);border-radius:50%;position:absolute;inset:0}.coin-sparks{position:absolute;top:0;left:0}.coin-sparks i{--ang:calc(var(--i) * 45deg);background:radial-gradient(circle, #fff 10%, var(--gold) 60%, transparent 72%);width:6px;height:6px;animation:sparkFly calc(.55s / var(--anim-speed)) ease-out both;border-radius:50%;margin:-3px;position:absolute;top:0;left:0}.score-reward[data-big] .score-coin{width:72px;height:72px;font-size:26px}.score-reward[data-big] .coin-flash{width:210px;height:210px}.score-reward[data-big] .coin-sparks i{width:7px;height:7px}.reward-opp .score-coin{color:#20303a;background:radial-gradient(120% 120% at 32% 24%, #f9fdff, var(--opp-silver) 56%, var(--opp-silver-deep) 100%);border-color:color-mix(in oklab, var(--opp-silver) 68%, #455d6b);box-shadow:0 0 0 2px color-mix(in oklab, var(--peg-bob) 26%, transparent), 0 8px 18px #0000004d, inset 0 2px 3px #ffffffb3, inset 0 -5px 7px #29332e61}.reward-opp .coin-flash{background:radial-gradient(circle, color-mix(in oklab, var(--opp-silver-bright) 88%, white) 0%, color-mix(in oklab, var(--opp-silver) 46%, transparent) 40%, transparent 70%), radial-gradient(circle, oklab(81.128% -.0644343 -.0912447/.36), transparent 80%);opacity:.9}.reward-opp .coin-sparks i{background:radial-gradient(circle, #fff 10%, var(--opp-silver) 60%, transparent 72%)}.reward-opp .coin-sparks{opacity:.86}.score-type{z-index:4;color:#0000;background:linear-gradient(100deg, color-mix(in oklab, var(--ink) 86%, var(--gold)) 0%, #fff6d8 48%, color-mix(in oklab, var(--ink) 86%, var(--gold)) 78%);filter:drop-shadow(0 3px 14px color-mix(in oklab, var(--gold) 56%, #0000004d)) drop-shadow(0 -1px 1px #ffffff2e);font-family:var(--reward-face);font-optical-sizing:auto;letter-spacing:.005em;pointer-events:none;text-transform:uppercase;white-space:nowrap;animation:scoreTypePop calc(.46s / var(--anim-speed)) cubic-bezier(.16, 1.7, .3, 1) both, shimmer calc(1.6s / var(--anim-speed)) linear calc(.12s / var(--anim-speed)) both;background-size:220% 100%;-webkit-background-clip:text;background-clip:text;font-size:clamp(34px,5.4vw,58px);font-weight:900;line-height:1;position:absolute;top:calc(100% + 64px);left:50%;transform:translate(-50%)}.counting[data-side=opp] .score-type{background:linear-gradient(100deg, color-mix(in oklab, var(--ink) 62%, var(--peg-bob)) 0%, #e6ecf2 48%, color-mix(in oklab, var(--ink) 62%, var(--peg-bob)) 78%);filter:drop-shadow(0 3px 14px color-mix(in oklab, var(--peg-bob) 44%, #0000006b)) drop-shadow(0 -1px 1px #ffffff14);background-size:220% 100%;-webkit-background-clip:text;background-clip:text}.segment-total{z-index:6;border:1px solid color-mix(in oklab, var(--gold) 58%, transparent);background:radial-gradient(circle at 50% 8%, color-mix(in oklab, var(--gold) 28%, transparent), transparent 65%), color-mix(in oklab, var(--felt-edge) 88%, transparent);pointer-events:none;min-width:196px;animation:totalStamp calc(2.1s / var(--anim-speed)) cubic-bezier(.18, 1.08, .32, 1) both;border-radius:16px;justify-items:center;padding:16px 26px 18px;display:grid;position:absolute;top:calc(100% + 16px);left:50%;transform:translate(-50%);box-shadow:0 18px 38px #00000057,inset 0 1px #ffffff1f}.segment-total small,.segment-total em{color:var(--ink-soft);letter-spacing:.13em;text-transform:uppercase;font-size:10px;font-style:normal;font-weight:800}.segment-total b{color:var(--gold);font-family:var(--display);letter-spacing:-.08em;text-shadow:0 3px 18px color-mix(in oklab, var(--gold) 26%, transparent);font-size:52px;line-height:1}.segment-total.is-zero{border-color:color-mix(in oklab, var(--gold) 22%, transparent);background:radial-gradient(circle at 50% 8%, color-mix(in oklab, var(--gold) 12%, transparent), transparent 65%), color-mix(in oklab, var(--felt-edge) 80%, transparent)}.segment-total.is-zero b{font-family:var(--reward-face);font-optical-sizing:auto;letter-spacing:.01em;text-transform:uppercase;color:color-mix(in oklab, var(--gold) 50%, var(--ink-soft));text-shadow:0 2px 12px color-mix(in oklab, var(--gold) 14%, transparent);font-size:31px;font-weight:900}.segment-total.is-opp:not(.is-zero){border-color:color-mix(in oklab, var(--opp-silver) 48%, transparent);background:radial-gradient(circle at 50% 8%, color-mix(in oklab, var(--opp-silver) 22%, transparent), transparent 65%), color-mix(in oklab, var(--felt-edge) 86%, var(--peg-bob));animation:totalStamp calc(2.1s / var(--anim-speed)) cubic-bezier(.18, 1.08, .32, 1) both, threatGlow calc(1.3s / var(--anim-speed)) ease-in-out both}.segment-total.is-opp:not(.is-zero) b{color:color-mix(in oklab, var(--opp-silver-bright) 74%, var(--peg-bob));text-shadow:0 3px 18px color-mix(in oklab, var(--peg-bob) 30%, transparent)}.segment-total.is-opp.is-zero{border-color:color-mix(in oklab, var(--opp-silver) 24%, transparent);background:radial-gradient(circle at 50% 8%, color-mix(in oklab, var(--opp-silver) 12%, transparent), transparent 65%), color-mix(in oklab, var(--felt-edge) 80%, transparent)}.segment-total.is-opp.is-zero b{color:color-mix(in oklab, var(--opp-silver) 62%, var(--ink-soft));text-shadow:0 2px 12px color-mix(in oklab, var(--opp-silver) 15%, transparent)}@keyframes threatGlow{0%{box-shadow:0 18px 38px #00000057,inset 0 1px #ffffff1a}55%{box-shadow:0 20px 46px #00000070, inset 0 1px #ffffff1a, 0 0 30px 2px color-mix(in oklab, var(--peg-bob) 38%, transparent)}to{box-shadow:0 18px 40px #0000005c, inset 0 1px #ffffff1a, 0 0 14px 0 color-mix(in oklab, var(--peg-bob) 14%, transparent)}}.counting-ledger{border:1px solid color-mix(in oklab, var(--ink-soft) 17%, transparent);background:color-mix(in oklab, var(--felt-edge) 24%, transparent);border-radius:13px;width:min(100%,820px);margin:0 auto;padding:15px 18px 17px;box-shadow:inset 0 1px #ffffff0a}.ledger-head{color:var(--ink-soft);letter-spacing:.13em;text-transform:uppercase;justify-content:space-between;gap:12px;margin-bottom:11px;font-size:10px;font-weight:800;display:flex}.ledger-head b{color:var(--gold);font-variant-numeric:tabular-nums}.counting-progress{background:color-mix(in oklab, var(--ink-soft) 14%, transparent);border-radius:999px;height:4px;overflow:hidden}.counting-progress span{border-radius:inherit;background:linear-gradient(90deg, color-mix(in oklab, var(--gold) 58%, var(--accent)), var(--gold));width:100%;height:100%;box-shadow:0 0 18px color-mix(in oklab, var(--gold) 48%, transparent), inset 0 0 6px #ffffff1a;transform:scaleX(var(--show-progress,0));transform-origin:0;transition:transform calc(.38s / var(--anim-speed)) cubic-bezier(.2, .8, .3, 1);display:block}.counting-tally{grid-template-columns:1fr 1fr;gap:22px;margin-top:13px;display:grid}.tally{text-align:left;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;column-gap:8px;min-width:0;padding:5px 9px;display:grid}.tally span{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:800;overflow:hidden}.tally b{color:var(--accent-2);font-family:var(--display);font-variant-numeric:tabular-nums;grid-row:span 2;font-size:27px}.tally small{color:var(--ink-soft);letter-spacing:.1em;text-transform:uppercase;font-size:9px;font-weight:800}.tally-you b{color:var(--gold)}.tally-opp span{color:color-mix(in oklab, var(--ink) 86%, var(--opp-silver))}.tally-opp b{color:var(--opp-silver-bright);text-shadow:0 2px 14px color-mix(in oklab, var(--opp-silver) 20%, transparent)}.tally-opp small{color:color-mix(in oklab, var(--ink-soft) 80%, var(--opp-silver))}.counting-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;min-height:40px;margin-top:23px;display:flex}.counting-hint{color:var(--ink-soft);font-size:14px;animation:1.6s infinite pulse}.counting-auto{color:var(--ink-soft);font-size:13px;font-weight:700}.counting-auto b{color:var(--accent-2);font-variant-numeric:tabular-nums}.counting-ready{color:var(--accent-2);text-shadow:0 1px 8px color-mix(in oklab, var(--gold) 30%, transparent);font-size:13px;font-weight:800}.counting-details-link{appearance:none;color:var(--ink-soft);letter-spacing:.02em;text-underline-offset:3px;text-decoration:underline;-webkit-text-decoration-color:color-mix(in oklab, var(--ink-soft) 38%, transparent);text-decoration-color:color-mix(in oklab, var(--ink-soft) 38%, transparent);cursor:pointer;transition:color calc(.2s / var(--anim-speed)) ease, text-decoration-color calc(.2s / var(--anim-speed)) ease;background:0 0;border:0;padding:4px 2px;font-family:inherit;font-size:13px;font-weight:700}.counting-details-link:hover{color:var(--ink);-webkit-text-decoration-color:color-mix(in oklab, var(--ink-soft) 70%, transparent);text-decoration-color:color-mix(in oklab, var(--ink-soft) 70%, transparent)}.btn-continue{position:relative;overflow:hidden}.btn-continue .continue-fill{transform-origin:0;transform:scaleX(var(--continue-progress,1));background:linear-gradient(90deg, color-mix(in oklab, var(--gold) 42%, transparent), color-mix(in oklab, var(--gold) 20%, transparent));pointer-events:none;transition:transform .24s linear;position:absolute;inset:0}.btn-continue .continue-label{z-index:1;align-items:baseline;gap:8px;display:inline-flex;position:relative}.btn-continue .continue-secs{font-variant-numeric:tabular-nums;opacity:.9;font-size:.92em}.zone-label{color:var(--ink-soft);letter-spacing:.09em;text-transform:uppercase;white-space:nowrap;font-size:13px;font-weight:700}.count-hand-wrap .zone-label{color:var(--show-tone);text-shadow:0 2px 10px color-mix(in oklab, var(--show-tone-glow) 20%, transparent)}@keyframes routePulse{0%,to{box-shadow:0 0 0 0 color-mix(in oklab, var(--route-tone) 0%, transparent)}50%{box-shadow:0 0 0 5px color-mix(in oklab, var(--route-glow) 18%, transparent)}}@keyframes countingBloom{0%{opacity:.28;transform:translate(-50%,-50%)scale(.74)}48%{opacity:.88}to{opacity:.45;transform:translate(-50%,-50%)scale(1.18)}}@keyframes totalStamp{0%{opacity:0;transform:translate(-50%)translateY(10px)scale(.8)}12%{opacity:1;transform:translate(-50%)translateY(0)scale(1.06)}20%{transform:translate(-50%)translateY(0)scale(1)}90%{opacity:1;transform:translate(-50%)translateY(0)scale(1)}to{opacity:0;transform:translate(-50%)translateY(-6px)scale(.98)}}@media (width<=820px){.counting{justify-content:flex-start;padding:18px 14px}.counting-route{gap:6px;margin:18px auto 16px}.counting-route li{gap:6px;padding:7px}.route-index{width:23px;height:23px;font-size:11px}.route-copy b{display:none}.counting-stage{gap:16px;min-height:276px}.counting .pcard.card-lg{width:min(calc(98px * var(--card-scale)), 21vw)}.count-hand{gap:5px}.score-reward{top:calc(100% + 18px)}.score-type{font-size:clamp(26px,8.5vw,40px);top:calc(100% + 52px)}}@keyframes scoreTypePop{0%{opacity:0;transform:translate(-50%)translateY(8px)scale(.62)}60%{opacity:1;transform:translate(-50%)translateY(0)scale(1.12)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}@media (width>=1800px) and (height>=1050px){.counting{padding:clamp(40px,4.2vw,68px)}.counting:before{background:repeating-linear-gradient(90deg, #ffffff02 0 1px, transparent 1px 6px), repeating-linear-gradient(0deg, #00000003 0 1px, transparent 1px 7px), repeating-linear-gradient(92deg, #ffffff02 0 1px, transparent 1px 9px), radial-gradient(circle at 50% 47%, color-mix(in oklab, var(--show-tone-glow) 14%, transparent), transparent 32%), radial-gradient(ellipse 96% 92% at 50% 50%, transparent 66%, #0000001f 100%), linear-gradient(110deg, transparent 0 20%, #ffffff08 46%, transparent 68%);opacity:.9}.counting-kicker{text-shadow:0 2px 8px color-mix(in oklab, var(--gold) 18%, #0006), 0 0 12px color-mix(in oklab, var(--gold) 8%, transparent);gap:13px;margin-bottom:15px;font-size:16px}.counting-kicker span{width:34px}.counting-title-row{gap:18px}.counting-title-row h2{text-shadow:0 3px 16px color-mix(in oklab, var(--show-tone-glow) 16%, #00000080), 0 0 18px color-mix(in oklab, var(--show-tone-glow) 9%, transparent);font-size:clamp(38px,3.8vw,52px)}.counting-order{padding:6px 11px;font-size:11px}.counting-order b{font-size:17px}.counting-sub{margin-top:12px;font-size:14px}.counting-route{gap:18px;margin:54px auto 46px}.counting-route li{background:linear-gradient(180deg, #ffffff03 0%, #ffffff01 14%, transparent 30%), color-mix(in oklab, var(--felt-edge) 20%, transparent);transition:border-color calc(.25s / var(--anim-speed)) ease, background calc(.25s / var(--anim-speed)) ease, transform calc(.25s / var(--anim-speed)) ease, box-shadow calc(.25s / var(--anim-speed)) ease;padding:16px 18px;box-shadow:0 4px 12px #0000001f,inset 0 1px 1px #ffffff0f}.counting-route li.is-active{box-shadow:0 9px 22px #0000002e, inset 0 1px 1px #ffffff0f, 0 0 16px color-mix(in oklab, var(--route-glow) 12%, transparent);transform:translateY(-3px)}.route-index{width:31px;height:31px;font-size:14px}.is-complete .route-index:after{font-size:16px}.route-copy small{font-size:11px}.route-copy b,.route-score,.zone-label{font-size:15px}.counting-stage{min-height:calc((182px * var(--card-scale)) + 202px);gap:clamp(44px,5.6vw,92px);margin-bottom:54px}.count-hand{gap:15px}.count-hand:before{height:calc(100% + 84px);box-shadow:inset 0 1px #ffffff0f,inset 0 -22px 44px #0000002e}.count-hand:after{filter:blur(5px);height:30px;bottom:-17px}.count-starter:after{filter:blur(5px);height:23px;bottom:-14px}.counting .pcard.card-lg{width:calc(130px * var(--card-scale))}.score-type{filter:drop-shadow(0 4px 18px color-mix(in oklab, var(--gold) 60%, #0006)) drop-shadow(0 0 22px color-mix(in oklab, var(--gold) 12%, transparent)) drop-shadow(0 -1px 1px #ffffff38);font-size:clamp(48px,6.2vw,76px);top:calc(100% + 76px)}.counting[data-side=opp] .score-type{filter:drop-shadow(0 4px 18px color-mix(in oklab, var(--peg-bob) 48%, #00000080)) drop-shadow(0 0 18px color-mix(in oklab, var(--peg-bob) 10%, transparent)) drop-shadow(0 -1px 1px #ffffff1f)}.score-coin{font-size:24px}.score-reward[data-big] .score-coin{width:84px;height:84px;font-size:32px}.segment-total{background:linear-gradient(180deg, #ffffff04 0%, #ffffff02 14%, transparent 32%), radial-gradient(circle at 50% 6%, color-mix(in oklab, var(--gold) 30%, transparent), transparent 66%), color-mix(in oklab, var(--felt-edge) 88%, transparent);min-width:232px;box-shadow:0 22px 50px #0006, inset 0 1px 2px #ffffff24, 0 0 26px color-mix(in oklab, var(--gold) 10%, transparent);border-radius:18px;padding:20px 34px 22px}.segment-total small,.segment-total em{font-size:11px}.segment-total b{text-shadow:0 4px 20px color-mix(in oklab, var(--gold) 28%, #0000004d), 0 0 16px color-mix(in oklab, var(--gold) 12%, transparent);font-size:66px}.segment-total.is-zero b{font-size:38px}.segment-total.is-opp:not(.is-zero){box-shadow:0 22px 50px #0006, inset 0 1px 2px #ffffff1f, 0 0 22px color-mix(in oklab, var(--peg-bob) 12%, transparent)}.counting-ledger{background:linear-gradient(180deg, #ffffff02 0%, #ffffff01 12%, transparent 28%), color-mix(in oklab, var(--felt-edge) 24%, transparent);border-radius:15px;width:min(100%,900px);padding:18px 22px 20px;box-shadow:0 6px 16px #00000024,inset 0 1px 1px #ffffff0f}.ledger-head{gap:14px;margin-bottom:13px;font-size:11px}.counting-progress{height:5px}.counting-progress span{box-shadow:0 0 20px color-mix(in oklab, var(--gold) 52%, transparent), inset 0 0 8px #ffffff1f}.counting-tally{gap:26px;margin-top:15px}.tally span{font-size:16px}.tally b{font-size:34px}.tally small{font-size:10px}.counting-actions{gap:18px;margin-top:34px}.counting-hint{font-size:15px}.counting-auto,.counting-ready,.counting-details-link{font-size:14px}}@media (width>=2600px) and (height>=1450px){.counting{padding:clamp(56px,4.4vw,84px)}.counting-title-row h2{font-size:clamp(50px,4.1vw,62px)}.score-type{font-size:clamp(64px,6.8vw,92px)}.score-coin{font-size:28px}.score-reward[data-big] .score-coin{width:96px;height:96px;font-size:38px}.segment-total b{font-size:78px}.segment-total.is-zero b{font-size:44px}.tally b{font-size:40px}.counting .pcard.card-lg{width:calc(146px * var(--card-scale))}.counting-stage{min-height:calc((204px * var(--card-scale)) + 206px)}}.chat-dock{z-index:30;flex-direction:column;align-items:flex-end;gap:12px;display:flex;position:absolute;bottom:clamp(14px,2.4vw,40px);right:clamp(14px,2.4vw,46px)}.chat-pill{background:var(--surface);color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow);transition:transform calc(.15s / var(--anim-speed)), border-color calc(.15s / var(--anim-speed));border-radius:99px;align-items:center;gap:9px;padding:12px 20px;font-size:15px;font-weight:700;display:inline-flex}.chat-pill:hover{border-color:var(--accent);transform:translateY(-2px)}.chat-pill.is-open{align-self:flex-end}.chat-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.chat-count{background:var(--accent);color:var(--accent-ink);border-radius:99px;margin-left:2px;padding:1px 7px;font-size:11px;font-weight:800}.chat{background:var(--surface);border:1px solid var(--line);width:320px;max-width:min(320px,100vw - 28px);box-shadow:var(--shadow);max-height:min(40vh,360px);animation:chatPop calc(.22s / var(--anim-speed)) cubic-bezier(.2, 1.2, .4, 1);border-radius:16px;flex-direction:column;display:flex;overflow:hidden}.chat-head{border-bottom:1px solid var(--line);align-items:center;gap:9px;padding:12px 14px;display:flex}.chat-title{flex:1;font-size:14px;font-weight:700}.chat-body{flex-direction:column;flex:1;gap:10px;min-height:120px;padding:12px 14px;display:flex;overflow-y:auto}.chat-empty{color:var(--ink-soft);text-align:center;margin:auto;font-size:13px}.chat-msg{flex-direction:column;max-width:80%;display:flex}.chat-msg.me{align-self:flex-end;align-items:flex-end}.chat-msg.them{align-self:flex-start}.chat-bubble{word-break:break-word;border-radius:12px;padding:8px 12px;font-size:13px;line-height:1.4}.chat-msg.them .chat-bubble{background:var(--surface-2);color:var(--ink);border-bottom-left-radius:3px}.chat-msg.me .chat-bubble{background:var(--accent);color:var(--accent-ink);border-bottom-right-radius:3px}.chat-time{color:var(--ink-soft);margin-top:3px;font-size:10px}.chat-foot{border-top:1px solid var(--line);gap:8px;padding:10px;display:flex}.chat-foot input{border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:10px;outline:none;flex:1;padding:9px 12px;font-family:inherit;font-size:13px}.chat-foot input:focus{border-color:var(--accent)}.chat-send{background:var(--accent);color:var(--accent-ink);border:0;border-radius:10px;width:38px;font-size:14px}.settings{position:relative}.settings-gear{background:color-mix(in oklab, var(--ink) 8%, transparent);width:38px;height:38px;color:var(--ink);transition:background calc(.15s / var(--anim-speed));border-radius:50%;place-items:center;font-size:18px;line-height:1;display:grid}.settings-gear:hover{background:color-mix(in oklab, var(--ink) 16%, transparent)}.settings-scrim{z-index:90;position:fixed;inset:0}.settings-panel{z-index:91;background:var(--surface);width:min(320px,100vw - 24px);max-height:min(78vh,640px);color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow);animation:chatPop calc(.2s / var(--anim-speed)) cubic-bezier(.2, 1.2, .4, 1);border-radius:16px;flex-direction:column;display:flex;position:fixed;top:64px;right:clamp(12px,3vw,32px);overflow:hidden}.settings-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:14px 16px;font-size:15px;display:flex}.settings-x{color:var(--ink-soft);background:0 0;border-radius:6px;width:26px;height:26px;font-size:16px}.settings-x:hover{background:color-mix(in oklab, var(--ink) 8%, transparent);color:var(--ink)}.settings-body{flex-direction:column;gap:14px;padding:8px 16px 18px;display:flex;overflow-y:auto}.settings-section{letter-spacing:.07em;text-transform:uppercase;color:var(--ink-soft);padding-top:8px;font-size:11px;font-weight:700}.settings-section:first-child{padding-top:0}.settings-field{flex-direction:column;gap:8px;display:flex}.settings-label{justify-content:space-between;align-items:baseline;font-size:14px;font-weight:600;display:flex}.settings-val{color:var(--ink-soft);font-variant-numeric:tabular-nums;font-weight:500}.settings-field input[type=range]{width:100%;accent-color:var(--accent);height:22px}.seg-row{background:color-mix(in oklab, var(--ink) 8%, transparent);border-radius:10px;gap:6px;padding:4px;display:flex}.seg{color:var(--ink-soft);transition:background calc(.15s / var(--anim-speed)), color calc(.15s / var(--anim-speed));background:0 0;border-radius:7px;flex:1;padding:8px 6px;font-size:13px;font-weight:700}.seg.on{background:var(--accent);color:var(--accent-ink)}.swatch-row{gap:8px;display:flex}.swatch{height:40px;box-shadow:0 0 0 1px var(--line);transition:box-shadow calc(.15s / var(--anim-speed)), transform calc(.12s / var(--anim-speed));background:0 0;border-radius:8px;flex:1;display:flex;overflow:hidden}.swatch:hover{transform:translateY(-1px)}.swatch.on{box-shadow:0 0 0 2.5px var(--accent)}.swatch i{flex:1;display:block}.settings-toggle-row{justify-content:space-between;align-items:center;font-size:14px;font-weight:600;display:flex}.settings-toggle{background:color-mix(in oklab, var(--ink) 22%, transparent);width:42px;height:24px;transition:background calc(.15s / var(--anim-speed));border-radius:999px;flex-shrink:0;position:relative}.settings-toggle.on{background:var(--accent)}.settings-toggle i{width:18px;height:18px;transition:transform calc(.15s / var(--anim-speed));background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #0000004d}.settings-toggle.on i{transform:translate(18px)}.game{background:radial-gradient(900px 420px at 50% -80px, color-mix(in oklab, var(--gold) 9%, transparent), transparent 62%), radial-gradient(760px 520px at 15% 24%, color-mix(in oklab, var(--accent) 8%, transparent), transparent 68%), linear-gradient(90deg, #00000047, transparent 16%, transparent 84%, #00000047);flex-direction:column;min-height:100vh;display:flex}.topbar{z-index:30;background:linear-gradient(180deg, color-mix(in oklab, var(--bg) 96%, black), color-mix(in oklab, var(--bg) 86%, transparent));border-bottom:1px solid color-mix(in oklab, var(--line) 72%, var(--gold) 18%);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);align-items:center;gap:24px;min-height:54px;padding:9px clamp(16px,4vw,40px);display:flex;position:sticky;top:0;box-shadow:0 10px 28px #0000002e}.brand{align-items:center;gap:10px;font-weight:800;display:flex}.brand-logo{filter:drop-shadow(0 3px 7px #00000059);width:auto;height:32px;display:block}.brand-name{letter-spacing:-.01em;font-size:17px;font-family:var(--display)}.topbar-right{align-items:center;gap:12px;margin-left:auto;display:flex}.topbar-user{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;max-width:30vw;font-size:13px;overflow:hidden}.quit-btn{background:color-mix(in oklab, var(--danger) 16%, transparent);width:34px;height:34px;color:var(--danger);border:1px solid color-mix(in oklab, var(--danger) 30%, transparent);transition:background calc(.15s / var(--anim-speed));border-radius:50%;place-items:center;font-size:.95rem;display:grid}.quit-btn:hover{background:color-mix(in oklab, var(--danger) 30%, transparent)}.stage{width:100%;max-width:var(--maxw);flex:1;margin:0 auto;padding:clamp(10px,1.15vw,18px) clamp(12px,1.45vw,24px) clamp(6px,.75vw,12px)}.play-stage{grid-template-columns:minmax(0,1fr) clamp(310px,19vw,356px);align-items:stretch;gap:clamp(18px,1.6vw,28px);display:grid}.table-col{flex-direction:column;justify-content:stretch;min-width:0;display:flex;position:relative}.show-curtain-layer{z-index:20;flex-direction:column;display:flex;position:absolute;inset:0}.show-curtain-layer>.felt{flex:1}.phase-cue{--phase-cue-color:var(--gold);--phase-cue-duration:1.08s;z-index:24;border-radius:var(--radius);pointer-events:none;background:radial-gradient(circle at 50% 50%, color-mix(in oklab, var(--phase-cue-color) 15%, #08120c8c), #060d093d 34%, transparent 72%);animation:phaseCueLife calc(var(--phase-cue-duration) / var(--anim-speed)) ease-out both;place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.phase-cue-step-1{--phase-cue-color:var(--peg-you,var(--gold))}.phase-cue-step-2{--phase-cue-color:var(--gold)}.phase-cue-step-3{--phase-cue-color:color-mix(in oklab, var(--gold) 76%, white);--phase-cue-duration:3.58s;background:radial-gradient(ellipse 66% 88% at 50% 52%, color-mix(in oklab, var(--phase-cue-color) 13%, #08120c6b), transparent 72%);height:clamp(206px,42%,348px);padding-bottom:clamp(18px,2.4vh,30px);animation-name:phaseCueShowLife;inset:auto 0 0}.phase-cue-step-3:before{content:none}.phase-cue:before{content:"";aspect-ratio:1;opacity:.34;background:repeating-conic-gradient(from 2deg, color-mix(in oklab, var(--phase-cue-color) 18%, transparent) 0 7deg, transparent 7deg 19deg);width:min(700px,72%);animation:phaseCueRays calc(var(--phase-cue-duration) / var(--anim-speed)) ease-out both;border-radius:50%;position:absolute;-webkit-mask-image:radial-gradient(circle,#000 0 14%,#0000 66%);mask-image:radial-gradient(circle,#000 0 14%,#0000 66%)}.phase-cue-card{border-block:1px solid color-mix(in oklab, var(--phase-cue-color) 52%, transparent);text-align:center;text-shadow:0 3px 13px #00000080;min-width:min(420px,74vw);animation:phaseCueCardIn calc(var(--phase-cue-duration) / var(--anim-speed)) cubic-bezier(.18, .88, .28, 1) both;background:linear-gradient(90deg,#0000,#08100b9e 18%,#08100bb8 50%,#08100b9e 82%,#0000);justify-items:center;padding:22px 44px 19px;display:grid;position:relative}.phase-cue-step-3 .phase-cue-card{animation-name:phaseCueShowCardIn}.phase-cue-kicker{color:var(--phase-cue-color);letter-spacing:.19em;text-transform:uppercase;align-items:center;gap:9px;font-size:10px;font-weight:900;display:flex}.phase-cue-kicker span{background:linear-gradient(90deg, transparent, var(--phase-cue-color));width:25px;height:1px}.phase-cue-kicker span:last-child{transform:scaleX(-1)}.phase-cue-card strong{max-width:min(700px,82vw);color:var(--ink);font-family:var(--display);letter-spacing:-.045em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;margin-top:7px;font-size:clamp(35px,4.2vw,58px);font-weight:800;line-height:.96;overflow:hidden}.phase-cue-card p{color:color-mix(in oklab, var(--ink-soft) 84%, var(--phase-cue-color));letter-spacing:.045em;margin:9px 0 0;font-size:13px;font-weight:700}.phase-cue-progress{gap:5px;margin-top:15px;display:flex}.phase-cue-progress i{background:color-mix(in oklab, var(--ink-soft) 18%, transparent);border-radius:999px;width:20px;height:3px}.phase-cue-progress i.is-past{background:color-mix(in oklab, var(--phase-cue-color) 40%, transparent)}.phase-cue-progress i.is-current{background:var(--phase-cue-color);box-shadow:0 0 12px color-mix(in oklab, var(--phase-cue-color) 58%, transparent)}.phase-cue-countdown-row{align-items:center;gap:12px;display:flex}.phase-cue-countdown{color:color-mix(in oklab, var(--ink-soft) 78%, var(--phase-cue-color));letter-spacing:.16em;text-transform:uppercase;align-items:baseline;gap:10px;margin-top:13px;font-size:11px;font-weight:800;display:inline-flex}.phase-cue-countdown b{color:var(--phase-cue-color);font-family:var(--display);font-variant-numeric:tabular-nums;letter-spacing:-.01em;text-shadow:0 0 16px color-mix(in oklab, var(--phase-cue-color) 50%, transparent);animation:phaseCueTick calc(.4s / var(--anim-speed)) ease-out;font-size:30px;font-weight:900;line-height:1}.phase-cue-countdown b em{opacity:.72;margin-left:1px;font-size:.46em;font-style:normal}.phase-cue-skip{border:0;border-bottom:1px solid color-mix(in oklab, var(--phase-cue-color) 42%, transparent);color:color-mix(in oklab, var(--ink-soft) 82%, var(--phase-cue-color));letter-spacing:.11em;pointer-events:auto;text-transform:uppercase;z-index:1;background:0 0;border-radius:0;margin-top:13px;padding:4px 8px;font-size:11px;font-weight:800;position:relative}.phase-cue-skip:hover{color:var(--phase-cue-color)}@keyframes phaseCueTick{0%{opacity:.35;transform:scale(1.32)}to{opacity:1;transform:scale(1)}}@keyframes phaseCueLife{0%{opacity:0}11%,68%{opacity:1}to{opacity:0}}@keyframes phaseCueShowLife{0%{opacity:0}11%,to{opacity:1}}@keyframes phaseCueCardIn{0%{opacity:0;transform:translateY(7px)scale(.94)}18%{opacity:1;transform:translateY(0)scale(1.025)}32%,74%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-6px)scale(.99)}}@keyframes phaseCueShowCardIn{0%{opacity:0;transform:translateY(7px)scale(.94)}18%{opacity:1;transform:translateY(0)scale(1.025)}32%,to{opacity:1;transform:translateY(0)scale(1)}}@keyframes phaseCueRays{0%{opacity:0;transform:scale(.72)rotate(-7deg)}22%{opacity:.34}to{opacity:0;transform:scale(1.12)rotate(4deg)}}@media (prefers-reduced-motion:reduce){.phase-cue{opacity:0;animation:none}.phase-cue:before,.phase-cue-card{animation:none}}.felt{background:radial-gradient(78% 62% at 50% 46%, #ffeeae0d, transparent 73%), linear-gradient(180deg, #ffffff07, transparent 24%, transparent 76%, #00000014), repeating-linear-gradient(90deg, #ffffff04 0 1px, transparent 1px 5px), repeating-linear-gradient(0deg, #00000003 0 1px, transparent 1px 8px), repeating-linear-gradient(92deg, #ffffff02 0 1px, transparent 1px 9px), var(--felt);border:1px solid color-mix(in oklab, var(--felt-edge) 84%, var(--gold) 16%);border-radius:var(--radius);min-height:min(680px,100vh - 82px);height:var(--table-height);animation:fadeIn calc(.35s / var(--anim-speed)) ease;grid-template-rows:minmax(185px,.62fr) minmax(240px,.78fr) minmax(310px,.95fr);gap:clamp(10px,1vw,18px);padding:clamp(18px,1.8vw,28px);display:grid;position:relative;overflow:hidden;box-shadow:0 0 0 1px #e6b8561a,0 0 0 7px #1610096b,0 22px 48px #0000005c,0 5px 12px #00000042,inset 0 1px #ffffff0d,inset 0 24px 52px #ffffff06,inset 0 -32px 58px #00000026}.felt:before{content:"";border:1px solid color-mix(in oklab, var(--felt-edge) 58%, var(--gold) 22%);border-radius:calc(var(--radius) - 7px);pointer-events:none;opacity:.76;position:absolute;inset:12px;box-shadow:inset 0 0 0 1px #ffffff06,inset 0 0 34px #00000017}.felt:after{content:"";pointer-events:none;mix-blend-mode:multiply;opacity:.32;background:radial-gradient(92% 88%,#0000 64%,#00000029 100%),linear-gradient(90deg,#00000012,#0000 12% 88%,#00000012);position:absolute;inset:0}.zone{z-index:1;position:relative}.zone-opp,.zone-you{flex-direction:column;align-items:center;display:flex}.zone-opp{align-self:center}.zone-head{justify-content:center;align-items:center;gap:10px;margin-bottom:12px;display:flex}.zone-label{letter-spacing:.16em;text-transform:uppercase;color:color-mix(in oklab, var(--ink-soft) 84%, var(--gold));white-space:nowrap;text-shadow:0 1px 2px #00000047;font-size:11px;font-weight:900}.zone-you{isolation:isolate;justify-content:flex-end;align-self:end;padding:8px clamp(10px,2vw,22px) 4px}.zone-you:before{content:"";filter:blur(20px);width:min(860px,92%);height:90px;box-shadow:none;z-index:-1;background:#0003;border:0;border-radius:50%;position:absolute;bottom:36px;left:50%;transform:translate(-50%)}.zone-you:after{content:"";opacity:.72;z-index:-2;pointer-events:none;background:radial-gradient(80% 85% at 50% 8%,#ffe29011,#0000 72%),linear-gradient(#161c0f38,#0000000f);border:1px solid #dfb04b14;border-radius:28px 28px 22px 22px;width:min(820px,90%);height:118px;position:absolute;bottom:0;left:50%;transform:translate(-50%);box-shadow:inset 0 1px #ffffff06,inset 0 18px 26px #00000012}.zone-you .zone-head{margin-bottom:14px}.felt-play .zone-you{transform:translateY(clamp(10px,1.35vh,20px))}.opponent-status{min-height:29px;color:color-mix(in oklab, var(--ink) 88%, var(--gold));letter-spacing:.015em;white-space:nowrap;background:linear-gradient(#4c422ca3,#1e1b15b8);border:1px solid #dfb04b38;border-radius:999px;align-items:center;gap:9px;margin:-3px 0 12px;padding:6px 13px 7px 11px;font-size:12px;font-weight:800;display:inline-flex;box-shadow:0 6px 16px #0003,inset 0 1px #ffefbd14}.opponent-status .think-dots{--dot-size:5px;margin:0 19px 0 11px}.crib-badge{letter-spacing:.06em;text-transform:uppercase;color:var(--accent-ink);background:var(--accent);border-radius:99px;padding:3px 8px;font-size:10px;font-weight:800}.plate{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff7df;background:linear-gradient(#5d4e2cdb,#2d2316eb);border:1px solid #dfb04b57;border-radius:99px;align-items:center;gap:10px;min-height:38px;padding:5px 12px 5px 5px;display:inline-flex;box-shadow:0 9px 20px #00000047,inset 0 1px #ffefbd29,inset 0 -1px #00000057}.plate-avatar{width:30px;height:30px;font-family:var(--display);color:#fff;text-shadow:0 1px 1px #00000073;background:radial-gradient(120% 120% at 30% 18%,#e9cf84,#a2732d 62%,#4b3014 100%);border:1px solid #ffebae85;border-radius:50%;flex-shrink:0;place-items:center;font-size:10px;font-weight:900;display:grid;box-shadow:inset 0 1px #ffffff42,inset 0 -4px 8px #00000052,0 2px 6px #00000061}.plate-opp .plate-avatar{background:radial-gradient(120% 120% at 30% 18%,#e3e8ee,#80899a 62%,#3d4350 100%);border-color:#ffffff75}.plate-name{font-family:var(--display);color:#fff9e8;text-shadow:0 1px 2px #00000080;font-size:14px;font-weight:800}.plate-score{font-family:var(--display);color:#241803;text-align:center;background:linear-gradient(#f4d777,#d8a83f);border:1px solid #51350985;border-radius:99px;min-width:28px;margin-left:2px;padding:3px 8px 4px;font-size:16px;font-weight:900;box-shadow:0 2px 7px #00000047,inset 0 1px #ffffff6b}.plate.is-turn{border-color:#ffd666b8;box-shadow:0 0 0 2px #ebb74338,0 10px 26px #00000057,0 0 18px #ebb74329,inset 0 1px #ffefbd33,inset 0 -1px #00000057}.plate-score{animation:scoreBump calc(.5s / var(--anim-speed)) cubic-bezier(.2, 1.4, .4, 1)}@keyframes scoreBump{0%{transform:scale(1)}28%{box-shadow:0 0 0 4px color-mix(in oklab, var(--gold) 42%, transparent), 0 2px 7px #00000047, inset 0 1px 0 #ffffff6b;transform:scale(1.3)}to{transform:scale(1)}}.hand-you.is-waiting{opacity:.6;filter:saturate(.92);transition:opacity calc(.25s / var(--anim-speed)) ease}.zone-mid{grid-template-columns:minmax(170px,.22fr) minmax(760px,1fr) minmax(180px,.24fr);align-self:center;place-items:center;gap:clamp(22px,3vw,68px);width:96%;max-width:1500px;margin:0 auto;display:grid}.zone-mid>.mid-side:first-child{justify-self:start}.zone-mid>.mid-side:last-child{justify-self:end}.mid-side{min-width:120px;box-shadow:none;isolation:isolate;background:0 0;border:0;border-radius:0;flex-direction:column;align-items:center;gap:9px;padding:0;display:flex;position:relative}.mid-side:after{content:"";filter:blur(16px);z-index:-1;pointer-events:none;background:#0000002e;border-radius:50%;width:126%;height:48px;position:absolute;bottom:-18px;left:50%;transform:translate(-50%)}.crib-deal-you,.crib-deal-opp{transition:transform calc(.35s / var(--anim-speed)) cubic-bezier(.2, .7, .3, 1)}.crib-deal-you{transform:translateY(18px)}.crib-deal-opp{transform:translateY(-18px)}.mid-play{width:min(100%,1120px);min-height:220px;box-shadow:none;isolation:isolate;background:0 0;border:0;border-radius:0;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:12px clamp(12px,1.5vw,22px);display:flex;position:relative}.mid-play:before{content:"";opacity:.55;z-index:-1;pointer-events:none;background:radial-gradient(#0001,#0000 68%);border-radius:999px;position:absolute;inset:12% 7%}.play-head{align-items:center;gap:14px;margin-bottom:4px;display:flex}.mid-play-live{gap:clamp(26px,2.3vh,42px)}.mid-play-live .play-head{z-index:2;margin-bottom:0;position:relative}.mid-play-live .play-row{margin-top:clamp(4px,.8vh,12px)}.count-chip{font-family:var(--display);color:var(--ink-soft);background:linear-gradient(180deg, color-mix(in oklab, var(--ink) 12%, transparent), color-mix(in oklab, var(--ink) 5%, transparent));border:1px solid color-mix(in oklab, var(--ink) 18%, transparent);border-radius:99px;align-items:center;gap:8px;padding:6px 16px;font-size:15px;font-weight:700;display:inline-flex;box-shadow:inset 0 1px #ffffff14,0 3px 9px #00000038}.count-chip b{color:var(--ink);animation:countTick calc(.34s / var(--anim-speed)) cubic-bezier(.2, 1.5, .4, 1);font-size:22px;display:inline-block}.count-chip-muted b{animation:none}.count-chip.hot{color:#2a1d04;background:linear-gradient(180deg, color-mix(in oklab, var(--gold) 92%, white), var(--gold));border-color:color-mix(in oklab, var(--gold) 55%, #5a3f08);box-shadow:0 0 0 3px color-mix(in oklab, var(--gold) 22%, transparent), 0 6px 18px color-mix(in oklab, var(--gold) 48%, transparent), inset 0 1px 0 #ffffff8c;animation:pop calc(.4s / var(--anim-speed))}.count-chip.hot b{color:#2a1d04}.count-chip[data-heat=mid]{color:#2e2009;background:linear-gradient(180deg, color-mix(in oklab, var(--gold) 46%, var(--ink-soft)), color-mix(in oklab, var(--gold) 30%, transparent));border-color:color-mix(in oklab, var(--gold) 42%, transparent)}.count-chip[data-heat=mid] b{color:#241804}.count-chip[data-heat=high]{color:#2a1304;animation:countPulse calc(.66s / var(--anim-speed)) ease-in-out infinite;background:linear-gradient(oklab(80.6301% .0793991 .101986),#ef7322);border-color:oklab(58.3651% .104386 .109766);box-shadow:0 0 0 3px oklab(74.9893% .105758 .129456/.24),0 6px 18px oklab(72.4291% .125026 .134892/.45),inset 0 1px #ffffff80}.count-chip[data-heat=high] b{color:#2a1304}.count-chip.count-chip-muted{opacity:.24;filter:saturate(.5);transition:opacity calc(.18s / var(--anim-speed)) ease, filter calc(.18s / var(--anim-speed)) ease, transform calc(.18s / var(--anim-speed)) ease;animation:none;transform:scale(.96);box-shadow:inset 0 1px #ffffff0a,0 2px 6px #00000024}.count-chip-river{color:color-mix(in oklab, var(--ink-soft) 78%, var(--gold));border-color:color-mix(in oklab, var(--gold) 26%, transparent);background:linear-gradient(180deg, color-mix(in oklab, var(--gold) 13%, transparent), color-mix(in oklab, var(--ink) 5%, transparent))}.count-chip-river b{color:var(--gold)}.felt-play-curtain .zone-opp,.felt-play-curtain .zone-you{visibility:hidden;pointer-events:none}.felt-play-curtain .zone-mid{transform:translateY(clamp(-86px,-7vh,-54px))}.felt-play-curtain .play-row{filter:saturate(.96)brightness(.98)}@keyframes countPulse{0%,to{transform:scale(1)}50%{transform:scale(1.07)}}@keyframes countTick{0%{transform:translateY(2px)scale(.66)}58%{transform:translateY(0)scale(1.24)}to{transform:scale(1)}}.play-row{flex-wrap:nowrap;justify-content:center;align-items:center;gap:0;width:100%;min-height:178px;display:flex;position:relative}.play-row .pile-item:not(:first-child){margin-left:calc(-26px * var(--card-scale))}.play-empty{color:color-mix(in oklab, var(--ink-soft) 84%, var(--gold));opacity:.92;text-align:center;font-size:14px;font-style:italic}.hand-you .hand-slot{display:flex;position:relative}.play-preview{z-index:60;pointer-events:none;white-space:nowrap;font-family:var(--display);font-variant-numeric:tabular-nums;animation:previewPop calc(.2s / var(--anim-speed)) cubic-bezier(.2, 1.5, .4, 1);border-radius:99px;padding:5px 11px;font-size:14px;font-weight:900;line-height:1;position:absolute;bottom:calc(100% + 9px);left:50%;transform:translate(-50%);box-shadow:0 8px 18px #00000057}.play-preview-safe{color:#fff7df;background:linear-gradient(#483c23f7,#221c14f7);border:1px solid #dfb04b6b}.play-preview-bust{color:#ffd9d2;background:linear-gradient(180deg, color-mix(in oklab, var(--danger) 52%, #2a1414), color-mix(in oklab, var(--danger) 30%, #170c0c));border:1px solid color-mix(in oklab, var(--danger) 55%, transparent)}.play-preview-hit{color:#2a1d04;background:linear-gradient(180deg, color-mix(in oklab, var(--gold) 92%, white), var(--gold));border:1px solid color-mix(in oklab, var(--gold) 55%, #5a3f08);box-shadow:0 0 0 3px color-mix(in oklab, var(--gold) 24%, transparent), 0 8px 20px color-mix(in oklab, var(--gold) 46%, transparent)}@keyframes previewPop{0%{opacity:0;transform:translate(-50%)translateY(6px)scale(.8)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}.pile-item{transition:transform calc(.2s / var(--anim-speed)) cubic-bezier(.2, .7, .3, 1);position:relative}.pile-item:before{content:"";aspect-ratio:1;background:radial-gradient(circle, color-mix(in oklab, var(--land,#d23b3b) 38%, transparent) 0%, transparent 62%);opacity:0;pointer-events:none;width:132%;animation:pileLand calc(.55s / var(--anim-speed)) ease-out both;border-radius:50%;position:absolute;top:54%;left:50%;transform:translate(-50%,-50%)}.pile-you{--land:var(--peg-you,#d23b3b);transform:translateY(5px)}.pile-opp{--land:var(--peg-bob,#2f6fd0);transform:translateY(-5px)}@keyframes pileLand{0%{opacity:0;transform:translate(-50%,-50%)scale(.45)}24%{opacity:.7}to{opacity:0;transform:translate(-50%,-50%)scale(1.3)}}.play-row .pile-you .pcard img{outline:2px solid var(--peg-you,#d23b3b);outline-offset:0}.play-row .pile-opp .pcard img{outline:2px solid var(--peg-bob,#2f6fd0);outline-offset:0}.pile-pts{z-index:80;isolation:isolate;background:var(--score-bg);color:var(--score-ink);border:1px solid var(--score-line);font-family:var(--display);text-align:center;min-width:34px;text-shadow:var(--score-text-shadow);box-shadow:0 0 0 2px #0000003d, 0 8px 18px #0000005c, 0 0 18px var(--score-glow), inset 0 1px 0 #ffffff80;animation:peggingScoreBadge calc(1.55s / var(--anim-speed)) cubic-bezier(.18, .9, .2, 1) both;pointer-events:none;border-radius:99px;padding:7px 10px;font-size:1rem;font-weight:900;line-height:1;position:absolute;top:-32px;left:50%;overflow:hidden;transform:translate(-50%)}.pile-pts:before{content:"";z-index:-1;animation:scoreBadgeShine calc(1.2s / var(--anim-speed)) ease-out 80ms both;background:linear-gradient(110deg,#0000 34%,#ffffff8c 48%,#0000 62%);position:absolute;inset:-45% -70%;transform:translate(-80%)}.pile-pts-you{--score-bg:linear-gradient(180deg, #ffe998, #d8a83f 72%, #9a641b);--score-ink:#221604;--score-line:#5c3a07a8;--score-glow:color-mix(in oklab, var(--gold) 48%, transparent);--score-text-shadow:0 1px 0 #ffffff47}.pile-pts-opp{--score-bg:linear-gradient(180deg, #fbfdff, #c7d0d9 70%, #838d98);--score-ink:#17202a;--score-line:#323c468a;--score-glow:#d8e7f552;--score-text-shadow:0 1px 0 #ffffff80}.crib-pile{width:calc(108px * var(--card-scale));height:calc(146px * var(--card-scale));position:relative}.crib-pile .crib-card{transform:translate(calc(var(--i) * 4px), calc(var(--i) * -3px)) rotate(calc(var(--i) * 1.2deg));position:absolute}.crib-owner{color:color-mix(in oklab, var(--ink-soft) 82%, var(--gold));white-space:nowrap;font-size:11px;font-weight:700;position:absolute;bottom:-24px;left:50%;transform:translate(-50%)}.think{color:var(--accent-2);white-space:nowrap;align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex;position:absolute;top:-26px;left:50%;transform:translate(-50%)}.think-dots{--dot-size:5px;width:var(--dot-size);height:var(--dot-size);background:var(--accent-2);animation:thinkingDots calc(1.25s / var(--anim-speed)) ease-in-out infinite;border-radius:50%;flex:none;margin-right:16px;display:inline-block;position:relative}.think-dots:before,.think-dots:after{content:"";width:var(--dot-size);height:var(--dot-size);background:var(--accent-2);animation:thinkingDots calc(1.25s / var(--anim-speed)) ease-in-out infinite;border-radius:50%;position:absolute;top:0}.think-dots:before{animation-delay:calc(-.18s / var(--anim-speed));left:8px}.think-dots:after{animation-delay:calc(-.36s / var(--anim-speed));left:16px}.callout{box-shadow:var(--shadow);animation:calloutPop calc(.4s / var(--anim-speed)) cubic-bezier(.2, 1.4, .4, 1) both;white-space:nowrap;border-radius:99px;padding:8px 16px;font-size:14px;font-weight:800;position:absolute;top:-6px;left:50%;transform:translate(-50%)}.co-kind-score{background:linear-gradient(180deg, color-mix(in oklab, var(--gold) 95%, white), var(--gold));color:#241803;border:1px solid color-mix(in oklab, var(--gold) 55%, #5a3f08);box-shadow:0 6px 18px color-mix(in oklab, var(--gold) 40%, transparent), inset 0 1px 0 #ffffff80}@keyframes thinkingDots{0%,to{opacity:.35;transform:translateY(0)}36%{opacity:1;transform:translateY(-2px)}68%{opacity:.62;transform:translateY(0)}}.callout.co-kind-score{box-shadow:0 0 0 3px color-mix(in oklab, var(--gold) 26%, transparent), 0 8px 20px color-mix(in oklab, var(--gold) 45%, transparent), inset 0 1px 0 #ffffff8c}.callout.co-kind-score:before{content:"";background:radial-gradient(circle, color-mix(in oklab, var(--gold) 88%, white) 0%, color-mix(in oklab, var(--gold) 52%, transparent) 38%, transparent 70%);width:150px;height:150px;animation:goldFlash calc(.55s / var(--anim-speed)) ease-out both;pointer-events:none;z-index:-1;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.score-callout{border:1px solid var(--score-line);background:var(--score-bg);min-width:150px;color:var(--score-ink);text-align:left;box-shadow:0 0 0 3px #0003, 0 14px 28px #00000057, 0 0 26px var(--score-glow), inset 0 1px 0 #ffffff7a;animation:peggingScoreCallout calc(2.6s / var(--anim-speed)) ease both;isolation:isolate;border-radius:999px;grid-template-columns:auto auto;grid-template-areas:"title points""actor actor";align-items:center;gap:1px 10px;padding:10px 18px 9px;display:inline-grid;top:-32px;overflow:hidden}.score-callout:before{content:"";z-index:-1;background:radial-gradient(circle at 50% 48%, var(--score-flash), transparent 58%), linear-gradient(110deg, transparent 38%, #ffffff6b 50%, transparent 62%);animation:scoreCalloutShine calc(2.4s / var(--anim-speed)) ease-out both;position:absolute;inset:-80% -35%;transform:translate(-24%)scale(.65)}.score-callout span{font-family:var(--display);letter-spacing:.01em;grid-area:title;font-size:15px;font-weight:900;line-height:1}.score-callout b{font-family:var(--display);grid-area:points;justify-self:end;font-size:22px;font-weight:950;line-height:1}.score-callout small{letter-spacing:.05em;text-transform:uppercase;opacity:.82;grid-area:actor;font-size:11px;font-weight:800;line-height:1}.score-callout-you{--score-bg:linear-gradient(180deg, #fff0a8, #dfad42 62%, #9c651d);--score-ink:#211604;--score-line:#664109b8;--score-glow:color-mix(in oklab, var(--gold) 55%, transparent);--score-flash:color-mix(in oklab, var(--gold) 52%, transparent)}.score-callout-opp{--score-bg:linear-gradient(180deg, #f8fbff, #c4ced8 64%, #76818c);--score-ink:#131b25;--score-line:#343d46a8;--score-glow:#d3e4f466;--score-flash:#e4eef86b}.go-stamp{pointer-events:none;z-index:30;isolation:isolate;--card-x:-72px;--card-y:15px;--card-rot:-5deg;--word-x:42px;--word-y:-4px;--coin-x:calc(var(--word-x) + 74px);--coin-y:calc(var(--word-y) - 50px);--word-size:clamp(56px, 8vw, 106px);--shock:190px;--spot:340px;--ko-metal:var(--gold);--ko-metal-hi:#fff6d8;--ko-metal-bright:#ffe9a8;--ko-metal-dark:#966b22;--ko-metal-border:#5a3f08;--ko-metal-ink:#3a2a06;--ko-metal-inset:#5a3c0a80;width:0;height:0;animation:goStampLife calc(2.6s / var(--anim-speed)) ease both;position:absolute;top:50%;left:50%}.go-stamp.is-you{--ko-edge:var(--peg-you,#d23b3b)}.go-stamp.is-opp{--ko-edge:var(--peg-bob,#2f6fd0);--ko-metal:#c7d0d9;--ko-metal-hi:#fff;--ko-metal-bright:#f8fbff;--ko-metal-dark:#74818e;--ko-metal-border:#4d5965;--ko-metal-ink:#17202a;--ko-metal-inset:#2d384385}.go-stamp.is-31{--word-size:clamp(68px, 9.4vw, 124px);--shock:238px;--spot:410px}.go-spot{width:var(--spot);height:var(--spot);background:radial-gradient(circle, color-mix(in oklab, var(--ko-metal) 20%, transparent) 0%, color-mix(in oklab, var(--ko-edge) 18%, transparent) 38%, transparent 70%);animation:goSpotBloom calc(.56s / var(--anim-speed)) ease-out both;z-index:0;border-radius:50%;position:absolute;top:0;left:0}.go-shock{width:var(--shock);height:var(--shock);background:radial-gradient(circle, color-mix(in oklab, var(--ko-metal) 86%, white) 0%, color-mix(in oklab, var(--ko-metal) 50%, transparent) 40%, transparent 70%);animation:goldFlash calc(.6s / var(--anim-speed)) ease-out calc(.18s / var(--anim-speed)) both;z-index:1;border-radius:50%;position:absolute;top:0;left:0}.go-card.pcard{z-index:2;animation:goStampCard calc(.36s / var(--anim-speed)) cubic-bezier(.18, .78, .26, 1) both;top:0;left:0;position:absolute!important}.go-card.pcard img{outline:2px solid color-mix(in oklab, var(--ko-edge) 82%, white);outline-offset:1px;box-shadow:0 3px 4px #00000047, 0 16px 25px #0000006b, 0 0 18px color-mix(in oklab, var(--ko-edge) 34%, transparent)}.go-word{z-index:3;font-family:var(--display);font-weight:900;font-size:var(--word-size);letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;background:linear-gradient(100deg, color-mix(in oklab, var(--ink) 78%, var(--ko-metal)) 0%, var(--ko-metal-hi) 48%, color-mix(in oklab, var(--ink) 78%, var(--ko-metal)) 78%);color:#0000;filter:drop-shadow(0 3px 0 #00000061) drop-shadow(0 11px 14px color-mix(in oklab, var(--ko-metal) 34%, transparent));animation: goSlam calc(.42s / var(--anim-speed)) cubic-bezier(.2, .85, .32, 1) calc(.1s / var(--anim-speed)) both, shimmer calc(1.45s / var(--anim-speed)) linear calc(.42s / var(--anim-speed)) both;background-size:220% 100%;-webkit-background-clip:text;background-clip:text;line-height:1;position:absolute;top:0;left:0}.go-coin-wrap{z-index:4;animation:goCoinLift calc(.54s / var(--anim-speed)) cubic-bezier(.2, 1.24, .32, 1) calc(.22s / var(--anim-speed)) both;position:absolute;top:0;left:0}.go-coin{width:52px;height:52px;font-family:var(--display);color:var(--ko-metal-ink);background:radial-gradient(120% 120% at 32% 24%, var(--ko-metal-bright), var(--ko-metal) 56%, var(--ko-metal-dark) 100%);border:2px solid color-mix(in oklab, var(--ko-metal) 58%, var(--ko-metal-border));box-shadow:0 8px 18px color-mix(in oklab, var(--ko-metal) 45%, #00000080), inset 0 2px 3px #ffffffbf, inset 0 -5px 7px var(--ko-metal-inset);animation:chaChing calc(.46s / var(--anim-speed)) cubic-bezier(.2, 1.45, .4, 1) calc(.22s / var(--anim-speed)) both;border-radius:50%;place-items:center;font-size:20px;font-weight:900;display:grid;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}.go-coin[data-big]{width:64px;height:64px;font-size:24px}.go-sparks{position:absolute;top:0;left:0}.go-sparks i{--ang:calc(var(--i) * 45deg);background:radial-gradient(circle, #fff 10%, var(--ko-metal) 60%, transparent 72%);width:6px;height:6px;animation:sparkFly calc(.52s / var(--anim-speed)) ease-out calc(.3s / var(--anim-speed)) both;border-radius:50%;margin:-3px;position:absolute;top:0;left:0}.go-actor{z-index:4;font-family:var(--display);letter-spacing:.055em;text-transform:uppercase;color:var(--ink);background:linear-gradient(180deg, color-mix(in oklab, var(--ko-edge) 34%, var(--surface)), color-mix(in oklab, var(--ko-edge) 18%, var(--surface)));border:1px solid color-mix(in oklab, var(--ko-edge) 68%, white 8%);white-space:nowrap;animation:goActorIn calc(.34s / var(--anim-speed)) ease-out calc(.38s / var(--anim-speed)) both;border-radius:99px;padding:6px 15px;font-size:12px;font-weight:900;position:absolute;top:0;left:0;box-shadow:0 6px 15px #0000004d,inset 0 1px #ffffff1f}@keyframes goStampLife{0%,84%{opacity:1;transform:none}to{opacity:0;transform:translateY(-12px)scale(.985)}}@keyframes goStampCard{0%{opacity:0;transform:translate(-50%, -50%) translate(var(--card-x), calc(var(--card-y) - 18px)) scale(.9) rotate(calc(var(--card-rot) - 2deg))}62%{opacity:1;transform:translate(-50%, -50%) translate(var(--card-x), var(--card-y)) scale(1.035) rotate(var(--card-rot))}to{opacity:1;transform:translate(-50%, -50%) translate(var(--card-x), var(--card-y)) scale(1) rotate(var(--card-rot))}}@keyframes goSlam{0%{opacity:0;transform:translate(-50%, -50%) translate(var(--word-x), calc(var(--word-y) - 12px)) scale(1.9) rotate(-9deg)}40%{opacity:1;transform:translate(-50%, -50%) translate(var(--word-x), var(--word-y)) scale(.9) rotate(2deg)}62%{transform:translate(-50%, -50%) translate(var(--word-x), var(--word-y)) scale(1.05) rotate(-1deg)}to{opacity:1;transform:translate(-50%, -50%) translate(var(--word-x), var(--word-y)) scale(1) rotate(0)}}@keyframes goSpotBloom{0%{opacity:0;transform:translate(-50%,-50%)scale(.6)}to{opacity:.9;transform:translate(-50%,-50%)scale(1)}}@keyframes goCoinLift{0%{opacity:0;transform:translate(calc(var(--word-x) + 32px), calc(var(--word-y) - 10px)) scale(.68)}56%{opacity:1;transform:translate(calc(var(--coin-x) + 4px), calc(var(--coin-y) - 5px)) scale(1.05)}to{opacity:1;transform:translate(var(--coin-x), var(--coin-y)) scale(1)}}@keyframes goActorIn{0%{opacity:0;transform:translate(calc(-50% + var(--word-x)), 76px) scale(.94)}to{opacity:1;transform:translate(calc(-50% + var(--word-x)), 68px) scale(1)}}@media (prefers-reduced-motion:reduce){.go-stamp{opacity:1;animation:none}.go-spot,.go-card.pcard,.go-word,.go-coin-wrap,.go-coin,.go-actor{animation:none}.go-shock,.go-sparks{display:none}.go-word{transform:translate(-50%, -50%) translate(var(--word-x), var(--word-y))}.go-card.pcard{transform:translate(-50%, -50%) translate(var(--card-x), var(--card-y)) rotate(var(--card-rot))}.go-coin-wrap{transform:translate(var(--coin-x), var(--coin-y))}.go-coin{transform:translate(-50%,-50%)}.go-actor{transform:translate(calc(-50% + var(--word-x)), 68px)}.go-spot{transform:translate(-50%,-50%)}}@keyframes peggingScoreBadge{0%{opacity:0;transform:translate(-50%,8px)scale(.62)}16%{opacity:1;transform:translate(-50%,-10px)scale(1.18)}34%{transform:translate(-50%,-6px)scale(.98)}58%,to{opacity:1;transform:translate(-50%,-6px)scale(1)}}@keyframes scoreBadgeShine{0%{opacity:0;transform:translate(-90%)}18%{opacity:.95}64%,to{opacity:0;transform:translate(82%)}}@keyframes peggingScoreCallout{0%{opacity:0;transform:translate(-50%,12px)scale(.82)}14%{opacity:1;transform:translate(-50%,-8px)scale(1.08)}28%{transform:translate(-50%,-4px)scale(1)}78%{opacity:1;transform:translate(-50%,-4px)scale(1)}to{opacity:0;transform:translate(-50%,-20px)scale(.98)}}@keyframes scoreCalloutShine{0%{opacity:0;transform:translate(-32%)scale(.55)}14%{opacity:.9}48%{opacity:.42;transform:translate(0)scale(1)}to{opacity:0;transform:translate(26%)scale(1.18)}}.actionbar{flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;margin-top:10px;display:flex}.actionbar-reserved{pointer-events:none;min-height:42px}.action-hint{color:var(--ink-soft);font-size:14px}.action-hint b{color:var(--ink);text-shadow:0 1px 2px #00000042}.btn{appearance:none;cursor:pointer;transition:filter calc(.15s / var(--anim-speed)), transform calc(.15s / var(--anim-speed)), box-shadow calc(.15s / var(--anim-speed));letter-spacing:.01em;white-space:nowrap;border:1px solid #0000;border-radius:12px;padding:11px 20px;font-size:14px;font-weight:800}.btn:disabled{opacity:.56;cursor:not-allowed;filter:saturate(.8)}.btn-lg{border-radius:14px;padding:14px 26px;font-size:16px}.btn-primary{background:linear-gradient(180deg, color-mix(in oklab, var(--accent) 90%, white), var(--accent));color:var(--accent-ink);border-color:color-mix(in oklab, var(--accent) 56%, black);box-shadow:0 8px 22px color-mix(in oklab, var(--accent) 34%, transparent), inset 0 1px 0 #ffffff75}.btn-primary:not(:disabled):hover{filter:brightness(1.06);transform:translateY(-1px)}.btn-ghost{background:color-mix(in oklab, var(--ink) 5%, transparent);color:var(--ink-soft);border-color:color-mix(in oklab, var(--line) 72%, transparent)}.btn-ghost:hover{color:var(--ink)}.turn-pill{border-radius:99px;padding:10px 18px;font-size:14px;font-weight:700}.turn-pill.your{color:var(--accent-ink);background:linear-gradient(180deg, color-mix(in oklab, var(--accent) 92%, white), var(--accent));border:1px solid color-mix(in oklab, var(--accent) 55%, #000);box-shadow:0 0 0 4px color-mix(in oklab, var(--accent) 14%, transparent), 0 8px 22px color-mix(in oklab, var(--accent) 42%, transparent), inset 0 1px 0 #ffffff80;letter-spacing:.015em;padding:12px 26px;font-size:15px;font-weight:800}.turn-pill.their{color:var(--ink-soft);background:color-mix(in oklab, var(--ink) 8%, transparent);border:1px solid color-mix(in oklab, var(--ink) 12%, transparent)}.turn-pill.turn-pill-go{color:#2a1304;letter-spacing:.015em;animation:countPulse calc(.9s / var(--anim-speed)) ease-in-out infinite;background:linear-gradient(oklab(79.6852% .0832723 .106961),#ef7322);border:1px solid oklab(58.3651% .104386 .109766);padding:12px 26px;font-size:15px;font-weight:800;box-shadow:0 0 0 4px oklab(74.9893% .105758 .129456/.16),0 8px 22px oklab(72.4291% .125026 .134892/.38),inset 0 1px #ffffff80}.cut-panel{background:radial-gradient(78% 62% at 50% 46%, #ffeeae0d, transparent 73%), linear-gradient(180deg, #ffffff07, transparent 24%, transparent 76%, #00000014), repeating-linear-gradient(90deg, #ffffff04 0 1px, transparent 1px 5px), repeating-linear-gradient(0deg, #00000003 0 1px, transparent 1px 8px), repeating-linear-gradient(92deg, #ffffff02 0 1px, transparent 1px 9px), var(--felt);border:1px solid color-mix(in oklab, var(--felt-edge) 84%, var(--gold) 16%);border-radius:var(--radius);text-align:center;min-height:min(680px,100vh - 82px);height:var(--table-height);animation:fadeIn calc(.35s / var(--anim-speed)) ease;flex:1;grid-template-rows:minmax(130px,.36fr) minmax(420px,1fr) minmax(92px,.28fr);place-items:center;gap:clamp(8px,1.1vw,18px);padding:clamp(22px,2.6vw,42px) clamp(18px,1.55vw,28px) clamp(18px,2.2vw,36px);display:grid;position:relative;overflow:hidden;box-shadow:0 0 0 1px #e6b8561a,0 0 0 7px #1610096b,0 22px 48px #0000005c,0 5px 12px #00000042,inset 0 1px #ffffff0d,inset 0 24px 52px #ffffff06,inset 0 -32px 58px #00000026}.cut-panel:before{content:"";border:1px solid color-mix(in oklab, var(--felt-edge) 58%, var(--gold) 22%);border-radius:calc(var(--radius) - 7px);pointer-events:none;opacity:.76;position:absolute;inset:12px;box-shadow:inset 0 0 0 1px #ffffff06,inset 0 0 34px #00000017}.cut-panel:after{content:"";pointer-events:none;mix-blend-mode:multiply;opacity:.32;background:radial-gradient(92% 88%,#0000 64%,#00000029 100%),linear-gradient(90deg,#00000012,#0000 12% 88%,#00000012);position:absolute;inset:0}.cut-panel h2{font-family:var(--display);margin:0;font-size:clamp(34px,3.2vw,54px)}.cut-panel .muted{color:var(--ink-soft);margin:8px 0 0;font-size:clamp(15px,1.1vw,20px)}.cut-copy{z-index:2;position:relative}.cut-deck-stage{width:min(100%, calc(1580px * var(--cut-card-scale)));max-width:100%;padding:calc(136px * var(--cut-card-scale)) 0 calc(34px * var(--cut-card-scale));z-index:1;position:relative;overflow:visible}.cut-deck-spread{width:max-content;min-width:min(100%, calc(1280px * var(--cut-card-scale)));padding:0 calc(24px * var(--cut-card-scale)) calc(48px * var(--cut-card-scale));z-index:1;justify-content:center;align-items:flex-end;margin:0 auto;display:flex;position:relative}.cut-deck-spread:after{content:"";filter:blur(17px);z-index:-1;background:#0000005c;border-radius:50%;height:42px;position:absolute;bottom:25px;left:18px;right:18px}.cut-deck-spread.is-live:before{content:"";inset:0 calc(24px * var(--cut-card-scale)) calc(48px * var(--cut-card-scale));z-index:150;pointer-events:none;mix-blend-mode:screen;animation:cutDeckShimmer calc(1.15s / var(--anim-speed)) .18s ease-out both;background:linear-gradient(108deg,#0000 38%,#fff1bc08 43%,#ffeca661 49%,#fffbda94 50%,#ffeca647 53%,#0000 61%) 170% 0/240% 100%;border-radius:10px;position:absolute}.cut-deck-spread .pcard{transform:translateY(var(--deck-y,0));z-index:var(--i)}.cut-deck-card.card-md{width:calc(clamp(104px, 6.15vw, 132px) * var(--cut-card-scale))}.cut-deck-spread .pcard:not(:first-child){margin-left:calc(clamp(-106px, -5.1vw, -88px) * var(--cut-card-scale))}.cut-deck-spread.is-live .pcard.is-clickable:hover{transform:translateY(calc(var(--deck-y,0px) - (24px * var(--cut-card-scale)))) scale(1.018);z-index:90}.cut-deck-spread.is-live .pcard.is-clickable:hover+.pcard.is-clickable{transform:translateY(calc(var(--deck-y,0px) - (7px * var(--cut-card-scale))))}.cut-deck-spread.is-live .pcard.is-clickable:has(+.pcard.is-clickable:hover){transform:translateY(calc(var(--deck-y,0px) - (7px * var(--cut-card-scale))))}.cut-deck-spread.is-live .pcard.is-clickable:hover img{box-shadow:0 6px 10px #00000047, 0 18px 26px #00000057, 0 0 0 2px color-mix(in oklab, var(--accent) 34%, transparent)}.cut-deck-card.is-pending-cut{transform:translateY(calc(var(--deck-y,0px) - (24px * var(--cut-card-scale))));pointer-events:none;animation:none;z-index:85!important}.cut-deck-card.is-pending-cut img{outline:1.5px solid var(--peg-you,#d23b3b);outline-offset:1px;box-shadow:0 0 0 2px color-mix(in oklab, var(--peg-you,#d23b3b) 26%, transparent), var(--shadow-card)}.cut-deck-card.is-cut{transform:translateY(calc(var(--deck-y,0px) - (54px * var(--cut-card-scale)))) scale(1.012);animation:cutCardRise calc(.58s / var(--anim-speed)) cubic-bezier(.18, .72, .18, 1) backwards;pointer-events:none;z-index:120!important}.cut-deck-card.is-cut img{outline:1.75px solid var(--peg-you,#d23b3b);outline-offset:1px;box-shadow:0 0 0 2px color-mix(in oklab, var(--peg-you,#d23b3b) 26%, transparent), 0 8px 14px #00000057}.cut-deck-card.is-opponent-cut img{outline-color:var(--peg-bob,#2f6fd0);box-shadow:0 0 0 2px color-mix(in oklab, var(--peg-bob,#2f6fd0) 28%, transparent), 0 8px 14px #00000057}.cut-deck-card.is-winning-cut img{filter:saturate(1.05)brightness(1.02)}.cut-deck-card.is-cut>.pcard-badge{left:50%;top:calc(-30px * var(--cut-card-scale));color:#fff;background:var(--peg-you,#d23b3b);text-shadow:0 1px 2px #00000073;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;border:1px solid #ffffff47;border-radius:99px;max-width:150px;padding:5px 10px;font-size:11.5px;font-weight:800;line-height:1;position:absolute;overflow:hidden;transform:translate(-50%);box-shadow:0 6px 14px #0000003d}.cut-deck-card.is-opponent-cut>.pcard-badge{color:#fff;background:var(--peg-bob,#2f6fd0)}@keyframes cutCardRise{0%{transform:translateY(var(--deck-y,0px)) scale(1)}44%{transform:translateY(calc(var(--deck-y,0px) - (42px * var(--cut-card-scale)))) scale(1.008)}to{transform:translateY(calc(var(--deck-y,0px) - (54px * var(--cut-card-scale)))) scale(1.012)}}@keyframes cutDeckShimmer{0%{opacity:0;background-position:170% 0}14%{opacity:.84}78%{opacity:.72}to{opacity:0;background-position:-72% 0}}.cut-pick-pill{animation:cutPickPillIn calc(.34s / var(--anim-speed)) cubic-bezier(.18, .88, .24, 1.08) both;align-items:center;gap:8px;display:inline-flex}.cut-pick-icon{transform-origin:58% 56%;animation:cutPickSnip calc(.54s / var(--anim-speed)) .24s cubic-bezier(.2, .9, .28, 1.1) both;font-size:19px;line-height:1;display:inline-block}@keyframes cutPickPillIn{0%{opacity:0;transform:translateY(5px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes cutPickSnip{0%,to{transform:rotate(-10deg)scale(1)}42%{transform:rotate(7deg)scale(1.12)}72%{transform:rotate(-4deg)scale(.98)}}@media (prefers-reduced-motion:reduce){.cut-deck-spread.is-live:before{display:none}}.cut-status{z-index:2;flex-wrap:wrap;justify-content:center;align-self:start;align-items:center;gap:12px;min-height:56px;display:flex;position:relative}.cut-status-complete .turn-pill{animation:none}.cut-winner-pill{--cut-winner-color:var(--accent);background:linear-gradient(180deg, color-mix(in oklab, var(--ink) 9%, transparent), color-mix(in oklab, var(--ink) 5%, transparent));border:1px solid color-mix(in oklab, var(--cut-winner-color) 78%, white 8%);box-shadow:0 0 0 1px color-mix(in oklab, var(--cut-winner-color) 22%, transparent), inset 0 1px 0 #ffffff14, 0 6px 14px #0003}.cut-winner-you{--cut-winner-color:var(--peg-you,#d23b3b)}.cut-winner-opp{--cut-winner-color:var(--peg-bob,#2f6fd0)}.cut-next{min-width:92px}.cut-auto{--cut-countdown-pct:100%;background:conic-gradient(color-mix(in oklab, var(--accent) 94%, white) var(--cut-countdown-pct), #ffffff1f 0), color-mix(in oklab, var(--surface) 72%, black);border:1px solid color-mix(in oklab, var(--accent) 48%, black);width:43px;height:43px;box-shadow:0 7px 17px #00000042, 0 0 18px color-mix(in oklab, var(--accent) 18%, transparent), inset 0 1px 0 #ffffff38;border-radius:50%;place-items:center;padding:3px;display:grid}.cut-auto:before{content:"";background:radial-gradient(circle at 35% 22%, #ffffff2e, transparent 46%), linear-gradient(180deg, color-mix(in oklab, var(--surface) 88%, black), color-mix(in oklab, var(--surface-2) 92%, black));border-radius:50%;grid-area:1/1;width:31px;height:31px;box-shadow:inset 0 1px 3px #00000057}.cut-auto span{z-index:1;font-family:var(--display);color:var(--ink);font-variant-numeric:tabular-nums;text-shadow:0 1px 2px #0000003d;grid-area:1/1;font-size:13px;font-weight:900;line-height:1}.rail{min-height:0;height:var(--table-height);border-radius:calc(var(--radius) + 4px);background:radial-gradient(120% 70% at 50% 0%, color-mix(in oklab, var(--gold) 8%, transparent), transparent 62%), color-mix(in oklab, var(--bg) 44%, transparent);border:1px solid color-mix(in oklab, var(--line) 54%, transparent);flex-direction:column;gap:14px;padding:8px;display:flex;box-shadow:0 16px 42px #00000038,inset 0 1px #ffffff09}.board-card{background:linear-gradient(180deg, color-mix(in oklab, var(--surface) 94%, white), var(--surface-2));border:1px solid color-mix(in oklab, var(--line) 82%, var(--gold) 12%);border-radius:var(--radius);flex-direction:column;flex:1;min-height:0;padding:16px;display:flex;box-shadow:0 10px 28px #00000030,inset 0 1px #ffffff0b}.board-card-head{letter-spacing:.11em;text-transform:uppercase;color:color-mix(in oklab, var(--ink-soft) 86%, var(--gold));margin-bottom:12px;font-size:11px;font-weight:900}.felt-over{background:radial-gradient(circle at 50% 48%, color-mix(in oklab, var(--gold) 13%, transparent), transparent 24%), var(--felt);place-items:center;display:grid}.over-felt-inner{opacity:.17;filter:drop-shadow(0 8px 18px #00000052);font-size:76px}.modal-scrim{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:50;animation:fadeIn calc(.3s / var(--anim-speed));background:#070c09a3;place-items:center;display:grid;position:fixed;inset:0}.result-scrim{background:radial-gradient(circle at 50% 47%, color-mix(in oklab, var(--gold) 10%, transparent), transparent 34%), #070c09ad;overflow:hidden}.modal{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);text-align:center;max-width:420px;animation:calloutPop calc(.4s / var(--anim-speed));border-radius:24px;padding:40px 48px}.result-modal{isolation:isolate;border-color:color-mix(in oklab, var(--gold) 40%, var(--line));background:radial-gradient(circle at 50% 0%, color-mix(in oklab, var(--gold) 15%, transparent), transparent 38%), linear-gradient(160deg, color-mix(in oklab, var(--surface) 94%, white), var(--surface-2));width:min(92vw,520px);max-width:none;animation:resultCardIn calc(.58s / var(--anim-speed)) cubic-bezier(.18, 1.18, .32, 1) both;border-radius:26px;padding:35px 36px 32px;position:relative;overflow:hidden;box-shadow:0 24px 58px #00000070,0 0 0 1px #ffe2970d,inset 0 1px #ffffff1f}.result-modal.lose{border-color:color-mix(in oklab, var(--line) 82%, var(--ink-soft));background:radial-gradient(circle at 50% 0%, color-mix(in oklab, var(--ink-soft) 9%, transparent), transparent 38%), linear-gradient(160deg, color-mix(in oklab, var(--surface) 94%, white), var(--surface-2))}.result-rays{z-index:0;opacity:.28;background:repeating-conic-gradient(from 4deg, color-mix(in oklab, var(--gold) 28%, transparent) 0 8deg, transparent 8deg 22deg);border-radius:50%;width:420px;height:420px;position:absolute;top:-160px;left:50%;transform:translate(-50%);-webkit-mask-image:radial-gradient(circle,#000 0 38%,#0000 72%);mask-image:radial-gradient(circle,#000 0 38%,#0000 72%)}.result-modal>:not(.result-rays){z-index:1;position:relative}.result-modal.lose .result-rays{opacity:.12;filter:saturate(.3)}.result-emblem{border:1px solid color-mix(in oklab, var(--gold) 62%, #624317);color:#4a3008;background:radial-gradient(circle at 34% 22%, #fff0ae, var(--gold) 46%, #b77b29 100%);width:76px;height:76px;box-shadow:0 0 0 6px color-mix(in oklab, var(--gold) 12%, transparent), 0 10px 22px color-mix(in oklab, var(--gold) 20%, #0000003d), inset 0 2px 2px #ffffffad, inset 0 -6px 9px #643c0a61;animation:resultEmblemIn calc(.66s / var(--anim-speed)) cubic-bezier(.16, 1.42, .34, 1) both;border-radius:50%;place-items:center;margin:0 auto 15px;display:grid}.result-emblem span{text-shadow:0 1px #ffffff61;font-size:38px;line-height:1}.result-modal.lose .result-emblem{border-color:color-mix(in oklab, var(--ink-soft) 48%, var(--line));color:color-mix(in oklab, var(--ink-soft) 86%, white);background:linear-gradient(160deg, color-mix(in oklab, var(--surface) 80%, white), var(--surface-2));box-shadow:0 0 0 6px color-mix(in oklab, var(--ink-soft) 8%, transparent), 0 10px 22px #00000038, inset 0 1px #ffffff24}.result-kicker{color:var(--gold);letter-spacing:.2em;text-transform:uppercase;margin:0 0 5px;font-size:10px;font-weight:900}.result-modal.lose .result-kicker{color:var(--ink-soft)}.result-modal h2{color:var(--ink);font-family:var(--display);letter-spacing:-.055em;margin:0;font-size:clamp(36px,5vw,48px);line-height:1}.result-summary{color:var(--ink-soft);margin:10px 0 17px;font-size:14px;font-weight:700}.result-margin{border:1px solid color-mix(in oklab, var(--gold) 28%, transparent);background:color-mix(in oklab, var(--gold) 9%, transparent);opacity:0;visibility:hidden;border-radius:999px;align-items:baseline;gap:7px;margin-bottom:18px;padding:7px 13px 8px;display:inline-flex;transform:translateY(5px)scale(.92)}.result-margin.is-revealed{visibility:visible;animation:resultMarginIn calc(.46s / var(--anim-speed)) cubic-bezier(.16, 1.34, .3, 1) both}.result-margin b{color:var(--gold);font-family:var(--display);font-variant-numeric:tabular-nums;font-size:20px}.result-margin span{color:var(--ink-soft);letter-spacing:.13em;text-transform:uppercase;font-size:10px;font-weight:900}.result-modal.lose .result-margin{border-color:color-mix(in oklab, var(--ink-soft) 18%, transparent);background:color-mix(in oklab, var(--ink-soft) 6%, transparent)}.result-modal.lose .result-margin b{color:var(--ink)}.result-scores{border:1px solid color-mix(in oklab, var(--line) 74%, transparent);background:color-mix(in oklab, var(--bg) 24%, transparent);border-radius:15px;gap:7px;margin-bottom:22px;padding:8px;display:grid}.result-score-row{min-height:52px;color:var(--ink-soft);border:1px solid #0000;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;padding:7px 11px 7px 13px;display:flex}.result-score-row.is-winner{border-color:color-mix(in oklab, var(--gold) 30%, transparent);background:linear-gradient(90deg, color-mix(in oklab, var(--gold) 12%, transparent), color-mix(in oklab, var(--gold) 4%, transparent))}.result-player{justify-items:start;gap:2px;display:grid}.result-player b{max-width:310px;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.result-player small{color:var(--ink-soft);letter-spacing:.13em;text-transform:uppercase;font-size:9px;font-weight:900}.result-score-row strong{color:color-mix(in oklab, var(--ink-soft) 90%, white);font-family:var(--display);font-variant-numeric:tabular-nums;font-size:25px}.result-score-row.is-winner strong{color:var(--gold);text-shadow:0 2px 12px color-mix(in oklab, var(--gold) 24%, transparent)}.result-replay{min-width:184px;transition:opacity calc(.24s / var(--anim-speed)) ease, filter calc(.24s / var(--anim-speed)) ease, transform calc(.24s / var(--anim-speed)) ease;padding-block:12px 11px;line-height:1.05;display:grid}.result-replay:disabled{cursor:wait;filter:saturate(.58);opacity:.5}.result-replay.is-ready{animation:resultReplayReady calc(.42s / var(--anim-speed)) cubic-bezier(.16, 1.24, .3, 1) both}.result-replay span{font-size:15px}.result-replay small{letter-spacing:.15em;opacity:.74;text-transform:uppercase;margin-top:4px;font-size:9px;font-weight:900}.result-confetti{pointer-events:none;position:absolute;inset:0;overflow:hidden}.result-confetti i{--confetti-color:var(--gold);top:-18px;left:var(--confetti-x);background:var(--confetti-color);width:8px;height:13px;box-shadow:0 0 10px color-mix(in oklab, var(--confetti-color) 28%, transparent);animation:resultConfettiFall calc(2.8s / var(--anim-speed)) cubic-bezier(.2, .58, .36, 1) var(--confetti-delay) both;border-radius:2px;position:absolute}.result-confetti i:nth-child(3n+2){--confetti-color:var(--peg-you,#d23b3b);width:6px;height:10px}.result-confetti i:nth-child(3n+3){--confetti-color:#f8e7ad;border-radius:50%;width:10px;height:6px}.result-confetti i:nth-child(4n){animation-duration:calc(3.3s / var(--anim-speed))}.modal-btns{justify-content:center;gap:12px;display:flex}@keyframes resultCardIn{0%{opacity:0;transform:translateY(22px)scale(.92)}68%{opacity:1;transform:translateY(-3px)scale(1.015)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes resultEmblemIn{0%{opacity:0;transform:translateY(12px)scale(.42)rotate(-12deg)}65%{opacity:1;transform:translateY(-2px)scale(1.08)rotate(4deg)}to{opacity:1;transform:translateY(0)scale(1)rotate(0)}}@keyframes resultMarginIn{0%{opacity:0;transform:translateY(5px)scale(.92)}68%{opacity:1;transform:translateY(-1px)scale(1.035)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes resultReplayReady{0%{transform:translateY(4px)scale(.96)}72%{transform:translateY(-1px)scale(1.025)}to{transform:translateY(0)scale(1)}}@keyframes resultConfettiFall{0%{opacity:0;transform:translateY(-14px)rotate(0)}12%{opacity:1}to{opacity:0;transform:translate3d(var(--confetti-drift), 102vh, 0) rotate(var(--confetti-spin))}}.opp-banner{text-align:center;border-radius:var(--radius-button);background:color-mix(in oklab, var(--gold) 16%, transparent);border:1px solid var(--gold);max-width:480px;color:var(--gold);margin:.5rem auto 0;padding:.5rem 1rem;font-size:.85rem;font-weight:600;animation:2s infinite pulse}.toast{z-index:200;animation:fadeInUp calc(.3s / var(--anim-speed)) ease;box-shadow:var(--shadow);border-radius:10px;padding:.6rem 1.4rem;font-size:.9rem;font-weight:600;position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%)}.toast-error{background:var(--danger);color:#fff}.board-loading{min-height:100vh;color:var(--ink-soft);background:var(--bg);background-image:var(--bg-grad);flex-direction:column;justify-content:center;align-items:center;gap:1rem;font-size:1.1rem;display:flex}.loader{border:3px solid color-mix(in oklab, var(--ink) 15%, transparent);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}.leave-screen{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1rem;min-height:100vh;padding:2rem;display:flex}.leave-screen h2{font-family:var(--display);margin:0;font-size:2rem}.leave-screen p{color:var(--ink-soft);margin:0}@media (width>=1200px){.felt .pcard.card-lg{width:calc(124px * var(--card-scale))}.felt .pcard.card-md{width:calc(96px * var(--card-scale))}.felt .pcard.card-sm{width:calc(70px * var(--card-scale))}.felt .hand-you{--hand-card-gap:clamp(3px, calc(4px * var(--card-scale)), 7px)}.felt .hand-you .pcard{margin-inline:0}.felt .hand-opp .pcard{margin-inline:calc(-18px * var(--card-scale))}.play-row .pile-item:not(:first-child){margin-left:calc(-28px * var(--card-scale))}.crib-pile{width:calc(138px * var(--card-scale));height:calc(178px * var(--card-scale))}}@media (width>=1700px){.felt .pcard.card-lg{width:calc(140px * var(--card-scale))}.felt .pcard.card-md{width:calc(108px * var(--card-scale))}.felt .pcard.card-sm{width:calc(76px * var(--card-scale))}.felt .hand-you{--hand-card-gap:clamp(4px, calc(5px * var(--card-scale)), 9px)}.felt .hand-you .pcard{margin-inline:0}.felt .hand-opp .pcard{margin-inline:calc(-22px * var(--card-scale))}.play-row .pile-item:not(:first-child){margin-left:calc(-34px * var(--card-scale))}.crib-pile{width:calc(156px * var(--card-scale));height:calc(202px * var(--card-scale))}}@media (width>=1800px) and (height>=1050px){.felt{grid-template-rows:minmax(185px,max-content) minmax(240px,max-content) minmax(310px,max-content);align-content:space-between}.felt .pcard.card-lg{width:calc(clamp(112px, calc(15.5vh - 66px), 232px) * var(--card-scale))}.felt .pcard.card-md{width:calc(clamp(90px, calc(12vh - 50px), 182px) * var(--card-scale))}.count-chip{padding:clamp(7px,.8vh,12px) clamp(18px,2vh,30px);font-size:clamp(17px,1.6vh,28px)}.count-chip b{font-size:clamp(26px,2.5vh,44px)}.play-row{min-height:clamp(158px,21.7vh - 92px,324px)}.play-row .pile-item:not(:first-child){margin-left:calc(-1.3vh * var(--card-scale))}.felt-play .zone-mid{padding-top:clamp(8px,2.4vh,64px)}.felt-play .mid-play-live{gap:clamp(24px,2.6vh,54px)}.plate{min-height:clamp(40px,3.6vh,56px)}.plate-avatar{width:clamp(32px,3vh,46px);height:clamp(32px,3vh,46px)}.plate-name{font-size:clamp(16px,1.5vh,25px)}.plate-score{min-width:clamp(30px,2.8vh,44px);font-size:clamp(18px,1.7vh,28px)}.crib-badge{padding:4px clamp(8px,1vh,12px);font-size:clamp(11px,1vh,16px)}.felt .zone-label{font-size:clamp(13px,1.2vh,20px)}.crib-owner{font-size:clamp(12px,1.1vh,18px)}.opponent-status{font-size:clamp(13px,1.3vh,21px)}.turn-pill.your,.turn-pill.turn-pill-go{padding:clamp(11px,1.2vh,18px) clamp(24px,2.4vh,38px);font-size:clamp(16px,1.6vh,26px)}.board-card-head{font-size:clamp(12px,1.1vh,18px)}}@media (width>=1101px){.game{height:100vh;overflow:hidden}.stage{min-height:0;overflow:hidden}.play-stage{min-height:0}}@media (width<=1100px){.play-stage{grid-template-columns:1fr}.felt{height:auto;min-height:58vh}.rail{flex-flow:wrap;align-items:flex-start;height:auto}.scoreboard{flex:260px}.board-card{flex:320px;align-items:center}.cribsvg{max-width:260px}}@media (width<=620px){.topbar-user{display:none}.result-modal{width:min(94vw,520px);padding:28px 18px 22px}.result-emblem{width:66px;height:66px;margin-bottom:13px}.result-emblem span{font-size:33px}.result-player b{max-width:58vw}.felt{grid-template-rows:auto auto auto;min-height:auto;padding:18px}.felt-play .zone-you{transform:none}.zone-you{padding-top:22px}.zone-you:before{width:100%;height:156px}.zone-mid{grid-template-columns:1fr;gap:18px}.mid-side{flex-direction:row;align-items:center;gap:14px}.mid-play{width:100%;min-height:132px}.mid-play-live{gap:18px}.crib-deal-you,.crib-deal-opp{transform:none}.rail{flex-direction:column}.scoreboard,.board-card{flex:100%}.stage{padding:12px}.chat-dock{position:fixed;bottom:14px;right:14px}}.app{min-height:100vh}:root{--font:"Manrope", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--display:"Space Grotesk", var(--font);--radius:16px;--radius-sm:10px;--radius-button:12px;--radius-panel:18px;--card-scale:1;--cut-card-scale:1;--anim-speed:1;--card-lg:98px;--card-md:78px;--card-sm:60px;--maxw:1760px;--table-height-max:1020px;--table-height:clamp(660px, calc(100dvh - 92px), var(--table-height-max));--panel-glass:color-mix(in oklab, var(--surface) 58%, transparent);--panel-glass-strong:color-mix(in oklab, var(--surface) 78%, transparent);--shadow-deep:0 18px 55px #0000006b, 0 4px 12px #00000042;--shadow-inner:inset 0 1px 0 #ffffff0f, inset 0 -18px 36px #00000029}@media (width>=1800px) and (height>=1050px){:root{--maxw:min(2180px, calc(100vw - 96px));--table-height-max:calc(100dvh - 92px)}}@media (width>=2600px) and (height>=1450px){:root{--maxw:min(2540px, calc(100vw - 112px))}}.theme-clean{--bg:oklch(97.2% .008 95);--bg-grad:radial-gradient(120% 80% at 50% -10%, oklch(99% .01 150) 0%, oklch(96.5% .008 95) 55%);--surface:#fff;--surface-2:oklch(97.5% .006 150);--felt:linear-gradient(170deg, oklch(96.5% .02 155), oklch(94.5% .03 158));--felt-edge:oklch(90% .03 155);--ink:oklch(26% .02 250);--ink-soft:oklch(50% .02 250);--line:oklch(90% .01 250);--accent:oklch(58% .12 156);--accent-2:oklch(52% .13 156);--accent-ink:#fff;--gold:oklch(70% .1 80);--hole:oklch(86% .02 155);--rail-board:linear-gradient(160deg, oklch(93% .03 90), oklch(88% .04 70));--shadow:0 1px 2px #141e190f, 0 8px 24px #141e1914;--shadow-card:0 1px 1px #0000001a, 0 6px 14px #141e1929;--sb-bg:linear-gradient(-60deg, oklch(30% .03 250) 53%, oklch(33% .03 250) 53%);--sb-ink:#fff;--danger:oklch(58% .18 25)}.theme-felt{--bg:oklch(20% .02 150);--bg-grad:radial-gradient(130% 90% at 50% -10%, oklch(28% .04 150) 0%, oklch(17% .02 150) 60%);--surface:oklch(30% .035 65);--surface-2:oklch(26% .03 65);--felt:radial-gradient(120% 125% at 50% 16%, #3f6840 0%, #2f5835 48%, #1f3f29 100%);--felt-edge:#142a1c;--ink:oklch(96% .02 90);--ink-soft:oklch(82% .03 90);--line:oklch(40% .04 65);--accent:oklch(74% .12 80);--accent-2:oklch(66% .13 70);--accent-ink:oklch(22% .04 70);--gold:oklch(80% .12 85);--hole:oklch(24% .05 60);--rail-board:linear-gradient(160deg, oklch(40% .06 60), oklch(30% .06 55));--shadow:0 2px 6px #0000004d, 0 14px 34px #00000059;--shadow-card:0 1px 1px #00000038, 0 7px 13px #00000047, 0 16px 24px #0000002e;--sb-bg:linear-gradient(-60deg, oklch(24% .04 60) 53%, oklch(28% .05 60) 53%);--sb-ink:oklch(96% .02 90);--danger:oklch(62% .18 25)}.theme-midnight{--bg:oklch(16% .012 260);--bg-grad:radial-gradient(130% 90% at 50% -10%, oklch(22% .03 250) 0%, oklch(14.5% .012 260) 60%);--surface:oklch(21.5% .018 260);--surface-2:oklch(25.5% .02 260);--felt:linear-gradient(168deg, oklch(24% .03 250), oklch(19% .022 258));--felt-edge:oklch(32% .03 250);--ink:oklch(95% .006 260);--ink-soft:oklch(70% .02 260);--line:oklch(32% .02 260);--accent:oklch(74% .11 200);--accent-2:oklch(68% .12 200);--accent-ink:oklch(16% .02 230);--gold:oklch(78% .09 90);--hole:oklch(30% .02 260);--rail-board:linear-gradient(160deg, oklch(28% .03 250), oklch(22% .025 258));--shadow:0 2px 8px #0006, 0 16px 40px #00000080;--shadow-card:0 1px 2px #0006, 0 8px 20px #00000080;--sb-bg:linear-gradient(-60deg, oklch(26% .025 260) 53%, oklch(30% .03 260) 53%);--sb-ink:oklch(95% .006 260);--danger:oklch(62% .18 25)}.high-contrast{--ink-soft:var(--ink);--line:color-mix(in oklab, var(--ink) 55%, transparent);--shadow-card:0 0 0 2px color-mix(in oklab, var(--ink) 35%, transparent), 0 8px 18px #00000080}.high-contrast .pcard img{outline:1px solid color-mix(in oklab, var(--ink) 40%, transparent)}*,:before,:after{box-sizing:border-box}html,body{height:100%;margin:0;padding:0}body{font-family:var(--font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;color:#fff;background:oklch(18% .02 150)}#root{min-height:100vh}.app{background:var(--bg);background-image:var(--bg-grad);min-height:100vh;color:var(--ink);background-attachment:fixed;flex-direction:column;display:flex}button{cursor:pointer;border:none;outline:none;font-family:inherit}button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background:var(--accent);color:var(--accent-ink)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.62}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes popIn{0%{opacity:0;transform:scale(.8)}60%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes scorePopIn{0%{opacity:0;transform:scale(0)translateY(8px)}60%{transform:scale(1.2)translateY(-2px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes dealIn{0%{transform:translateY(-26px)scale(.9)}to{transform:none}}@keyframes pop{0%{transform:scale(.7)}60%{transform:scale(1.12)}to{transform:scale(1)}}@keyframes floatUp{0%{opacity:0;transform:translate(-50%,10px)}20%{opacity:1}to{opacity:0;transform:translate(-50%,-34px)}}@keyframes calloutPop{0%{opacity:0;transform:translateY(8px)scale(.8)}to{opacity:1;transform:none}}@keyframes pegPop{0%{transform:translate(-50%,-50%)scale(.2)}70%{transform:translate(-50%,-50%)scale(1.25)}to{transform:translate(-50%,-50%)scale(1)}}@keyframes chatPop{0%{opacity:0;transform:translateY(10px)scale(.96)}to{opacity:1;transform:none}}@keyframes goldFlash{0%{opacity:.9;transform:translate(-50%,-50%)scale(.2)}55%{opacity:.4}to{opacity:0;transform:translate(-50%,-50%)scale(2.3)}}@keyframes chaChing{0%{opacity:0;transform:translate(-50%,-50%)scale(.2)rotate(-12deg)}45%{opacity:1;transform:translate(-50%,-50%)scale(1.25)rotate(7deg)}68%{transform:translate(-50%,-50%)scale(.94)rotate(-3deg)}to{opacity:1;transform:translate(-50%,-50%)scale(1)rotate(0)}}@keyframes coinShine{0%{transform:translate(-130%)}to{transform:translate(130%)}}@keyframes sparkFly{0%{transform:rotate(var(--ang)) translateY(-6px) scale(1);opacity:0}18%{opacity:1}to{transform:rotate(var(--ang)) translateY(-48px) scale(.2);opacity:0}}@keyframes shimmer{0%{background-position:180% 0}to{background-position:-60% 0}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
