@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/onest-cyrillic-ext-wght-normal-DOFToQv1.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/onest-cyrillic-wght-normal-DayYxulF.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/onest-math-wght-normal-Bl4ZGkZl.woff2)format("woff2-variations");unicode-range:U+302-303,U+305,U+307-308,U+310,U+312,U+315,U+31A,U+326-327,U+32C,U+32F-330,U+332-333,U+338,U+33A,U+346,U+34D,U+391-3A1,U+3A3-3A9,U+3B1-3C9,U+3D1,U+3D5-3D6,U+3F0-3F1,U+3F4-3F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE??}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/onest-symbols-wght-normal-DxQzqQfC.woff2)format("woff2-variations");unicode-range:U+1-C,U+E-1F,U+7F-9F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+28??,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B??,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F0??,U+1F100-1F1AD,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F7??,U+1F800-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FA89,U+1FA8F-1FAC6,U+1FACE-1FADC,U+1FADF-1FAE9,U+1FAF0-1FAF8,U+1FB??}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/onest-vietnamese-wght-normal-BBxOatbv.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/onest-latin-ext-wght-normal-QAhDxQuo.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/onest-latin-wght-normal-Dun_Rd-l.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-ext-wght-normal-DjL33-gN.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-wght-normal-BEAKL7Jp.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-vietnamese-wght-normal-6IgcOCM7.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-ext-wght-normal-DC-KSUi6.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-wght-normal-BgDaEnEv.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--brand-green:#1b5e3c;--brand-gold:#d4a73d;--gold-bright:#e6bb55;--off-white:#f5f1e8;--slate:#2e2e33;--room:#140e0a;--ink:#1e1510;--muted:#c9c2b4;--danger:#e8a3a3;--felt:#0f3d2e;--surface:#1c1a1ec2;--surface-strong:#201e23f0;--surface-inset:#ffffff0d;--hairline:#ffffff17;--hairline-gold:#d4a73d4d;--shadow-1:0 1px 2px #0000004d, 0 8px 24px #00000047;--shadow-2:0 2px 6px #0000004d, 0 24px 64px #00000075;--blur:saturate(160%) blur(18px);--radius-sm:10px;--radius:14px;--radius-lg:20px;--font-sans:"Geist Variable", "Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-display:"Onest Variable", "Onest", var(--font-sans);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:var(--font-sans);color:var(--off-white);background:var(--room);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}html,body,#root{height:100%;margin:0}.app{position:fixed;inset:0}.wordmark{z-index:2;font-family:var(--font-display);letter-spacing:.02em;color:var(--off-white);pointer-events:none;margin:0;font-size:1.25rem;font-weight:600;position:absolute;top:16px;left:20px}.wordmark span{color:var(--brand-gold)}.home-screen{box-sizing:border-box;background:radial-gradient(at 50% 0,#140e0a33,#140e0acc 72%);padding:88px clamp(16px,4vw,48px) 32px;position:absolute;inset:0;overflow-y:auto}.home-grid{grid-template-columns:minmax(0,340px) minmax(0,1fr);align-items:start;gap:24px;max-width:1080px;margin:0 auto;display:grid}.glass-card{box-sizing:border-box;border-radius:var(--radius-lg);background:var(--surface);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);border:1px solid var(--hairline);box-shadow:var(--shadow-2), inset 0 1px 0 #ffffff0f;padding:28px}.home-player{text-align:center;justify-items:center;gap:10px;display:grid}.home-avatar{background:var(--felt);width:128px;height:128px;box-shadow:0 0 0 3px var(--hairline-gold), var(--shadow-1);cursor:pointer;border:none;border-radius:50%;padding:0;transition:box-shadow .18s;overflow:hidden}.home-avatar:hover,.home-avatar:focus-visible{box-shadow:0 0 0 3px var(--brand-gold), var(--shadow-1);outline:none}.home-avatar .avatar-preview{border-radius:50%}.home-eyebrow{color:var(--brand-gold);letter-spacing:.12em;text-transform:uppercase;margin:8px 0 0;font-size:.75rem;font-weight:700}.home-player h2{font-family:var(--font-display);letter-spacing:-.02em;overflow-wrap:anywhere;margin:0;font-size:1.6rem;font-weight:650}.home-player .xp-bar{text-align:left;width:100%;margin:4px 0 0}.home-stats{grid-template-columns:repeat(3,1fr);gap:8px;width:100%;margin:0;display:grid}.home-stats>div{background:var(--surface-inset);border:1px solid var(--hairline);border-radius:12px;padding:10px 6px}.home-stats dt{color:var(--muted);font-size:.75rem}.home-stats dd{font-variant-numeric:tabular-nums;margin:2px 0 0;font-size:1.3rem;font-weight:700}.home-links{grid-template-columns:1fr 1fr;gap:8px;width:100%;margin-top:4px;display:grid}.home-links .btn{width:100%}.home-play h2{font-family:var(--font-display);letter-spacing:-.025em;margin:0 0 6px;font-size:2rem;font-weight:650}.home-play .lede{color:var(--muted);margin:0 0 22px;line-height:1.55}.home-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:6px;display:grid}.home-actions .btn{width:100%}@media (width<=860px){.home-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=520px){.home-actions{grid-template-columns:minmax(0,1fr)}}.overlay{background:radial-gradient(at 50% 0,#140e0a40,#140e0ad1 70%);place-items:center;padding:72px 16px 24px;display:grid;position:absolute;inset:0;overflow-y:auto}.panel{box-sizing:border-box;border-radius:var(--radius-lg);background:var(--surface);width:min(100%,460px);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);border:1px solid var(--hairline);box-shadow:var(--shadow-2), inset 0 1px 0 #ffffff0f;padding:32px}.panel h2{font-family:var(--font-display);letter-spacing:-.02em;margin:0 0 8px;font-size:1.75rem;font-weight:650;line-height:1.15}.panel .lede{color:var(--muted);margin:0 0 24px;line-height:1.55}.fine-print{color:var(--muted);margin:10px 0 0;font-size:.85rem}.notice{color:var(--danger);background:#8c2f2f40;border:1px solid #8c2f2f99;border-radius:8px;margin:16px 0 0;padding:10px 12px;line-height:1.4}.btn{box-sizing:border-box;min-height:44px;font:inherit;letter-spacing:-.005em;cursor:pointer;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-weight:600;transition:background-color .18s,border-color .18s,box-shadow .18s,filter .18s,transform .12s;display:inline-flex}.btn:hover:not(:disabled){filter:brightness(1.06)}.btn:active:not(:disabled){transform:scale(.98)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn:focus-visible,.avatar-option:focus-visible{outline:2px solid var(--brand-gold);outline-offset:2px}.btn-primary{background:linear-gradient(180deg, var(--gold-bright), var(--brand-gold));width:100%;color:var(--ink);box-shadow:inset 0 1px #ffffff59,0 6px 18px #d4a73d38}.btn-ghost{background:var(--surface-inset);border-color:var(--hairline);color:var(--off-white)}.btn-ghost:hover:not(:disabled){filter:none;background:#ffffff17}.field{gap:6px;margin-bottom:18px;display:grid}.field label,.field-label{font-size:.95rem;font-weight:600}.field input{box-sizing:border-box;border:1px solid var(--hairline);min-height:44px;color:var(--off-white);font:inherit;background:#00000047;border-radius:12px;padding:10px 14px;transition:border-color .15s,box-shadow .15s}.field input::placeholder{color:#c9c2b499}.field input:focus-visible{border-color:var(--brand-gold);outline:none;box-shadow:0 0 0 3px #d4a73d40}.field .hint{color:var(--muted);font-size:.85rem}.avatar-grid{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:10px;margin:8px 0 20px;display:grid}.avatar-option{border:1px solid var(--hairline);background:var(--surface-inset);color:var(--off-white);font:inherit;cursor:pointer;border-radius:14px;align-content:start;justify-items:center;gap:7px;padding:12px 6px 10px;font-size:.88rem;font-weight:550;transition:border-color .15s,background .15s;display:grid}.avatar-option:hover:not(:disabled){background:#ffffff14}.avatar-option[aria-checked=true]{border-color:var(--brand-gold);background:#d4a73d1f}.avatar-option[aria-checked=true] .portrait{box-shadow:0 0 0 2px var(--brand-gold), 0 4px 14px #d4a73d4d}.avatar-option .lock-note{text-align:center;line-height:1.25}.avatar-option:disabled{opacity:.45;cursor:not-allowed}.avatar-preview{border-radius:10px;max-width:100%;overflow:hidden}.profile-header{align-items:center;gap:18px;margin-bottom:20px;display:flex}.profile-header h2{margin:0}.level-chip{color:var(--brand-gold);background:#d4a73d1a;border-radius:999px;margin-top:6px;padding:3px 10px;font-size:.85rem;font-weight:600;display:inline-block}.stats{grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 20px;display:grid}.stats>div{text-align:center;background:#140e0a73;border-radius:10px;padding:10px}.stats dt{color:var(--muted);font-size:.8rem}.stats dd{font-variant-numeric:tabular-nums;margin:4px 0 0;font-size:1.35rem;font-weight:700}.status{color:var(--muted);font-size:1.05rem}.preview-row{justify-content:center;margin:8px 0 4px;display:flex}.swatches{gap:4px;display:flex}.swatches>span{border:1px solid #f5f1e859;border-radius:50%;width:18px;height:18px}.dev-box{border-top:1px dashed #f5f1e833;gap:8px;margin-top:20px;padding-top:16px;display:grid}.lock-note{color:var(--muted);font-size:.75rem}.section-title{margin:0 0 8px;font-size:1rem;font-weight:600}.empty-state{color:var(--muted);border:1px dashed #f5f1e840;border-radius:10px;margin:0 0 20px;padding:14px}.actions{flex-wrap:wrap;gap:10px;margin-bottom:10px;display:flex}.actions .btn-primary{flex:160px;width:auto}.panel-wide{width:min(100%,560px)}.divider{border:0;border-top:1px solid #f5f1e824;margin:22px 0}.segmented{border:1px solid var(--hairline);background:#00000047;border-radius:12px;flex-wrap:wrap;gap:4px;padding:4px;display:flex}.segmented button{min-width:64px;min-height:38px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;flex:auto;padding:8px 12px;font-weight:550;transition:background-color .18s,color .18s}.segmented button:hover:not(:disabled){color:var(--off-white);background:#ffffff0d}.segmented button[aria-checked=true]{border-color:var(--hairline-gold);color:var(--gold-bright);background:#ffffff1a;font-weight:650;box-shadow:0 1px 2px #0000004d}.segmented button:focus-visible{outline:2px solid var(--brand-gold);outline-offset:2px}.join-row{gap:8px;display:flex}.join-row input{text-transform:uppercase;letter-spacing:.12em;font-variant-numeric:tabular-nums;flex:1;min-width:0}.join-row .btn{flex:none}.invite-box{background:#140e0a8c;border:1px solid #d4a73d59;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:0 0 18px;padding:12px 14px;display:flex}.invite-code{letter-spacing:.18em;color:var(--brand-gold);font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:700}.table-meta{color:var(--muted);margin:0 0 14px}.seat-list{gap:8px;margin:0 0 18px;padding:0;list-style:none;display:grid}.seat{background:var(--surface-inset);border:1px solid var(--hairline);border-radius:12px;align-items:center;gap:12px;padding:10px 12px;transition:box-shadow .25s,border-color .25s;display:flex}.seat-open{color:var(--muted);background:0 0;border:1px dashed #f5f1e838}.seat-avatar{box-sizing:border-box;border:3px solid;border-radius:50%;flex:none;width:34px;height:34px}.seat-body{flex:1;min-width:0}.seat-name{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.badges{flex-wrap:wrap;gap:6px;margin-top:3px;display:flex}.badge{color:var(--muted);background:#f5f1e81a;border-radius:999px;padding:1px 8px;font-size:.75rem;font-weight:600}.badge-gold{color:var(--brand-gold);background:#d4a73d2e}.badge-ready{color:#9fe0b8;background:#2e7d4f4d}.badge-away{color:var(--danger);background:#8c2f2f4d}.avatar-change{justify-items:start;gap:8px;margin:-6px 0 16px;display:grid}.avatar-change .avatar-grid{width:100%;margin:0}.icon-btn{color:var(--off-white);font:inherit;cursor:pointer;background:0 0;border:1px solid #f5f1e840;border-radius:8px;padding:4px 10px;font-size:.85rem}.icon-btn:focus-visible{outline:2px solid var(--brand-gold);outline-offset:2px}.game-hud{box-sizing:border-box;pointer-events:none;grid-template:"left top right""left center right"minmax(0,1fr)"left bottom right"/minmax(230px,280px) minmax(0,1fr) minmax(250px,310px);gap:12px 16px;padding:60px 16px 16px;display:grid;position:absolute;inset:0}.game-hud>*{min-height:0}.game-hud .hud-panel,.game-hud button{pointer-events:auto}.hud-left{grid-area:left;align-self:start;min-height:0;max-height:100%;display:flex}.hud-left>.hud-panel{max-height:calc(100vh - 80px)}.hud-right{flex-direction:column;grid-area:right;gap:12px;display:flex;overflow-y:auto}.hud-top{grid-area:top;justify-self:center;width:min(100%,520px)}.hud-center{grid-area:center;place-self:center;width:min(100%,580px);min-height:0;max-height:100%;display:flex}.hud-center>.hud-panel{flex:1;max-height:100%}.hud-bottom{grid-area:bottom;justify-self:center;width:min(100%,640px)}@media (width<=960px){.game-hud{grid-template-rows:none;grid-template-columns:minmax(0,1fr);grid-template-areas:"top""bottom""center""left""right";overflow-y:auto}}.hud-panel{box-sizing:border-box;border-radius:var(--radius-lg);background:var(--surface-strong);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);border:1px solid var(--hairline);box-shadow:var(--shadow-2), inset 0 1px 0 #ffffff0f;padding:16px;overflow:auto}.action-panel{justify-items:center;gap:8px;padding:12px 14px;display:grid}.action-bar{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}.action-bar .btn-primary{width:auto}.action-panel .fine-print,.action-panel .notice,.action-panel .notice-soft{text-align:center;margin:0}.card-summary{color:var(--off-white);margin:6px 0 0;font-size:.92rem}.hud-panel h2{font-family:var(--font-display);margin:0 0 10px;font-size:1.15rem;font-weight:600}.ledger summary{cursor:pointer;list-style:none}.ledger summary::-webkit-details-marker{display:none}.ledger summary h2:after{content:" ▾";color:var(--muted);font-size:.8rem}.ledger:not([open]) summary h2:after{content:" ▸"}.ledger-cash{background:var(--surface-inset);border:1px solid var(--hairline);border-radius:12px;justify-content:space-between;align-items:baseline;padding:10px 12px;display:flex}.ledger-cash strong{font-variant-numeric:tabular-nums;color:var(--brand-gold);font-size:1.8rem}.ledger-list{margin:10px 0 4px}.ledger-list>div{border-bottom:1px solid #f5f1e814;justify-content:space-between;gap:10px;padding:5px 0;display:flex}.ledger-list dt{color:var(--muted)}.ledger-list dd{font-variant-numeric:tabular-nums;margin:0;font-weight:700}.ledger-heading{margin:16px 0 6px;font-size:.95rem;font-weight:600}.slots{gap:6px;display:grid}.slot{color:var(--muted);border:1px dashed #f5f1e838;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;display:flex}.slot-filled{color:var(--off-white);background:#d97b291a;border:1px solid #d97b29}.plain-list{gap:4px;margin:0;padding-left:18px;display:grid}.plain-list .badge{margin-left:6px}.notice-soft{color:var(--off-white);background:#d4a73d1f;border-radius:8px;margin:10px 0 0;padding:8px 10px;font-size:.9rem}.turn-banner{text-align:center;padding:10px 16px}.turn-banner h2{margin:0}.turn-banner.mine{border-color:var(--brand-gold);animation:2.4s ease-in-out infinite turn-pulse}@keyframes turn-pulse{0%,to{box-shadow:0 0 #d4a73d00}50%{box-shadow:0 0 0 5px #d4a73d40}}@media (prefers-reduced-motion:reduce){.turn-banner.mine{animation:none}}.turn-meta{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.9rem}.turn-actions{justify-content:center}.btn-small{border-radius:10px;min-height:34px;padding:6px 14px;font-size:.86rem}.card-face{color:#1e1510;background:#f5f1e8;border:1px solid #00000026;border-radius:14px;flex-shrink:0;width:230px;max-width:100%;overflow:hidden;box-shadow:0 12px 30px #00000073}.card-band{letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:8px;padding:8px 12px;font-size:.78rem;font-weight:700;display:flex}.card-body{text-align:center;padding:14px 14px 16px}.card-title{font-family:var(--font-display);margin:0;font-size:1.25rem}.card-amount-label{text-transform:uppercase;letter-spacing:.08em;color:#5a4a3e;margin-top:8px;font-size:.75rem}.card-amount{font-variant-numeric:tabular-nums;font-size:2.1rem;font-weight:800;line-height:1.1}.card-yield{color:#1f5c39;margin-top:4px;font-weight:600}.card-lesson{color:#4a3b30;margin:10px 0 0;font-size:.85rem;line-height:1.4}.card-caption{color:#5a4a3e;margin:10px 0 0;font-size:.8rem}.log-list{gap:5px;margin:0;padding-left:18px;font-size:.9rem;display:grid}.log-list li:first-child{color:var(--off-white);font-weight:600}.log-list li{color:var(--muted)}.log-rationale{color:var(--muted);font-size:.85rem;font-style:italic;font-weight:400;display:block}.seat-active{border-color:var(--brand-gold);box-shadow:0 0 0 1px var(--brand-gold), 0 0 22px #d4a73d2e}.players-panel .seat-list{gap:6px;margin:0}.players-panel .seat{gap:10px;padding:8px 10px}.players-panel .badges{gap:4px}.seat-figures{font-variant-numeric:tabular-nums;flex:none;justify-items:end;gap:1px;display:grid}.seat-figures strong{font-size:.98rem;font-weight:700}.seat-figures>span{color:var(--muted);font-size:.72rem}.portrait{box-shadow:0 0 0 2px var(--ring,var(--hairline-gold)), 0 2px 8px #00000059;border-radius:50%;flex:none;place-items:center;display:grid;position:relative;overflow:hidden}.portrait img{object-fit:cover;width:100%;height:100%}.portrait-initial{color:#fff;text-shadow:0 1px 2px #00000080;font-size:.95rem;font-weight:700}.game-log h2{margin:0}.log-toggle{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;padding:0;display:flex}.log-chevron{color:var(--muted);transition:transform .2s;transform:rotate(-90deg)}.log-toggle[aria-expanded=true] .log-chevron{transform:none}.log-latest{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:8px 0 0;font-size:.88rem;overflow:hidden}.game-log .log-list{margin-top:10px}.game-log .fine-print{margin:8px 0 0}.action-wait{color:var(--muted);margin:0;padding:8px 4px;font-size:.95rem}.action-tools{border-top:1px solid var(--hairline);flex-wrap:wrap;justify-content:center;gap:4px;width:100%;padding-top:8px;display:flex}.action-bar:empty{display:none}.action-bar:empty+.action-tools{border-top:0;padding-top:0}.tool-btn{min-height:34px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:.84rem;font-weight:550;transition:background .15s,color .15s;display:inline-flex}.tool-btn:hover{background:var(--surface-inset);color:var(--off-white)}.tool-btn[aria-pressed=true]{color:var(--gold-bright);background:#d4a73d24}.tool-btn:focus-visible{outline:2px solid var(--brand-gold);outline-offset:2px}.tool-leave:hover{color:#f2b8b5;background:#8c2f2f40}.seat-numbers{color:var(--muted);font-variant-numeric:tabular-nums;margin-top:4px;font-size:.85rem}.table-scroll{overflow-x:auto}.results-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;margin:6px 0 12px}.results-table th,.results-table td{text-align:left;border-bottom:1px solid #f5f1e81f;padding:8px}.results-table th{color:var(--muted);font-size:.85rem;font-weight:600}.results-table .winner td{color:var(--brand-gold);font-weight:700}.segmented button:disabled{opacity:.5;cursor:not-allowed}.lock-badge{color:var(--muted);background:#f5f1e81f;border-radius:999px;margin-left:6px;padding:1px 6px;font-size:.7rem;font-weight:600}.xp-bar{gap:6px;margin:0 0 16px;display:grid}.xp-bar-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.xp-bar-head .level-chip{margin-top:0}.xp-bar-head .fine-print{margin:0}.xp-track{background:#140e0a99;border:1px solid #d4a73d40;border-radius:999px;height:10px;overflow:hidden}.xp-fill{border-radius:inherit;background:linear-gradient(90deg, var(--brand-green), var(--brand-gold));height:100%;transition:width .6s ease-out}.xp-summary{background:#140e0a73;border:1px solid #d4a73d40;border-radius:12px;margin:4px 0 16px;padding:14px}.xp-summary h3{margin:0 0 8px;font-size:1rem}.xp-lines{gap:4px;margin:0 0 12px;padding:0;font-size:.9rem;list-style:none;display:grid}.xp-lines li{justify-content:space-between;gap:12px;display:flex}.xp-lines strong{color:var(--brand-gold);font-variant-numeric:tabular-nums}.level-up{border:1px solid var(--brand-gold);background:#d4a73d29;border-radius:10px;align-items:center;gap:12px;margin:0 0 12px;padding:10px 12px;animation:.5s ease-out level-up-in;display:flex}.level-up p{margin:4px 0 0}.level-up-badge{background:var(--brand-gold);width:40px;height:40px;color:var(--ink);border-radius:50%;flex:none;place-items:center;font-size:1.2rem;font-weight:800;display:grid}@keyframes level-up-in{0%{transform:scale(.94)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.level-up{animation:none}.xp-fill{transition:none}}.match-history{gap:6px;margin:0 0 20px;padding:0;list-style:none;display:grid}.match-history li{font-variant-numeric:tabular-nums;background:#140e0a73;border-radius:8px;flex-wrap:wrap;align-items:center;gap:10px;padding:8px 10px;display:flex}.history-rank{min-width:28px;font-weight:700}.history-rank.winner,.history-xp{color:var(--brand-gold);font-weight:600}.match-history time{margin:0 0 0 auto}.learn-sheet{z-index:10;background:radial-gradient(circle at 15% 0%, #1b5e3c47, transparent 45%), radial-gradient(circle at 90% 30%, #d4a73d14, transparent 40%), var(--room);color:var(--off-white);position:fixed;inset:0;overflow-y:auto}.learn-bar{z-index:1;background:#140e0aeb;border-bottom:1px solid #d4a73d2e;justify-content:space-between;align-items:center;padding:12px clamp(16px,4vw,48px);display:flex;position:sticky;top:0}.learn-bar .btn{width:auto}.learn-brand{font-family:var(--font-display);font-size:1.35rem;font-weight:700}.learn-brand span{color:var(--brand-gold)}.learn-content{max-width:1120px;margin:0 auto;padding:40px clamp(16px,4vw,48px) 64px}.learn-hero{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:center;gap:40px;margin-bottom:48px;display:grid}.learn-eyebrow{color:var(--brand-gold);letter-spacing:.12em;text-transform:uppercase;margin:0 0 10px;font-size:.8rem;font-weight:700}.learn-hero h2{font-family:var(--font-display);margin:0 0 16px;font-size:clamp(1.9rem,3.6vw,2.9rem);line-height:1.1}.learn-hero h2:focus{outline:none}.learn-intro{color:var(--muted);margin:0;font-size:1.05rem;line-height:1.6}.card-fan{height:230px;position:relative}.fan-card{background:var(--off-white);width:118px;height:166px;transform:translateX(-50%) rotate(var(--r));transform-origin:50% 120%;border-radius:12px;position:absolute;bottom:10px;left:50%;overflow:hidden;box-shadow:0 12px 28px #00000073}.fan-band{letter-spacing:.08em;text-align:center;text-transform:uppercase;padding:8px 0;font-size:.75rem;font-weight:700}.fan-icon{place-items:center;height:calc(100% - 34px);display:grid}.learn-section-title{font-family:var(--font-display);margin:0 0 18px;font-size:1.55rem;font-weight:600}.skill-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px;margin:0 0 56px;padding:0;list-style:none;display:grid}.skill-card{background:#2e2e33eb;border:1px solid #d4a73d29;border-radius:16px;align-content:start;gap:8px;padding:14px;display:grid}.skill-art{aspect-ratio:16/10;background:var(--felt);border-radius:12px;max-width:100%;padding:8px;box-shadow:inset 0 0 0 1px #d4a73d40}.skill-card h4{color:var(--brand-gold);margin:6px 0 0;font-size:1.08rem}.skill-card p{margin:0;line-height:1.5}.learn-impact{background:#2e2e33d9;border:1px solid #d4a73d33;border-radius:18px;padding:28px}.impact-stats{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;display:grid}.impact-stat{background:#140e0a73;border-radius:12px;gap:4px;padding:16px;display:grid}.impact-stat strong{color:var(--brand-gold);font-family:var(--font-display);font-size:2.6rem;line-height:1}.learn-cta{justify-content:center;margin-top:40px;display:flex}.learn-cta .btn{width:auto;padding-inline:36px}@media (width<=760px){.learn-hero{grid-template-columns:minmax(0,1fr);gap:24px}.card-fan{height:200px}}.auth-form{gap:12px;margin-top:8px;display:grid}.google-btn{color:#1f1f1f;background:#fff;border:1px solid #dadce0;gap:10px;width:100%;font-weight:600}.google-btn:hover:not(:disabled){filter:none;background:#f1f3f4}.auth-divider{color:var(--muted);align-items:center;gap:12px;margin:14px 0 4px;font-size:.85rem;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:#f5f1e833;flex:1;height:1px}.password-row{gap:8px;display:flex}.password-row input{flex:1;min-width:0}.password-row input::-ms-reveal{display:none}.password-row input::-ms-clear{display:none}.password-row .btn{flex:none;width:auto;min-width:64px}.how-to-buttons{flex-wrap:wrap;gap:8px;display:flex}.learn-link{width:100%;margin-top:16px}.learn-sheet a{color:var(--brand-gold)}.choice-actions{gap:10px;display:grid}.how-to-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.tutorial-dialog{border-color:var(--brand-gold);padding:14px 18px}.tutorial-dialog h2{font-family:var(--font-display);margin:2px 0 6px;font-size:1.25rem;font-weight:600}.tutorial-progress{color:var(--brand-gold);letter-spacing:.04em;margin:0;font-size:.8rem}.tutorial-body{margin:0 0 12px;line-height:1.45}.tutorial-nav{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.tutorial-nav .btn,.help-head .btn{width:auto}.tutorial-target:not(.hud-left),.hud-left.tutorial-target>.hud-panel{box-shadow:0 0 0 3px var(--brand-gold), 0 0 24px #d4a73d8c;animation:1.6s ease-in-out infinite tutorial-pulse}@keyframes tutorial-pulse{50%{box-shadow:0 0 0 3px var(--brand-gold), 0 0 6px #d4a73d40}}@media (prefers-reduced-motion:reduce){.tutorial-target:not(.hud-left),.hud-left.tutorial-target>.hud-panel{animation:none}}.help-wrap{border-radius:10px;display:inline-flex}.tutorial .hud-right{align-items:center}.help-q{background:var(--brand-gold);width:18px;height:18px;color:var(--ink);border-radius:50%;place-items:center;font-size:.75rem;font-weight:700;display:inline-grid}.dialog-backdrop{z-index:50;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0a08069e;place-items:center;padding:24px 16px;animation:.18s ease-out dialog-fade;display:grid;position:fixed;inset:0;overflow-y:auto}.dialog{box-sizing:border-box;border-radius:var(--radius-lg);background:var(--surface-strong);border:1px solid var(--hairline);width:min(100%,480px);max-height:calc(100dvh - 48px);box-shadow:var(--shadow-2), inset 0 1px 0 #ffffff0f;color:var(--off-white);padding:24px;animation:.22s ease-out dialog-rise;overflow-y:auto}.dialog h2{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:1.45rem;font-weight:650}.dialog-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.dialog-sub{color:var(--muted);margin:6px 0 0;line-height:1.5}.dialog-close{border:1px solid var(--hairline);background:var(--surface-inset);width:36px;height:36px;color:var(--off-white);cursor:pointer;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.dialog-close:hover{background:#ffffff1a}.dialog-close:focus-visible{outline:2px solid var(--brand-gold);outline-offset:2px}.dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.dialog-actions .btn{width:auto}@keyframes dialog-fade{0%{opacity:0}}@keyframes dialog-rise{0%{opacity:0;transform:translateY(10px)scale(.98)}}@media (prefers-reduced-motion:reduce){.dialog-backdrop,.dialog{animation:none}}.help-dialog{width:min(100%,820px)}.help-dialog .help-list{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;margin:20px 0 0;padding:0;list-style:none;display:grid}.help-dialog .help-item{color:#1e1510;background:linear-gradient(#fbf8f1,#efe8d9);border-radius:14px;flex-direction:column;display:flex;overflow:hidden;box-shadow:inset 0 1px #fff9,0 8px 22px #00000059}.help-dialog .help-chip{background:var(--card-accent);color:var(--card-ink);letter-spacing:.07em;text-transform:uppercase;border:0;border-radius:0;gap:8px;padding:10px 14px;font-size:.78rem;display:flex}.help-dialog .help-body{color:#3a2d23;margin:12px 14px 0;font-size:.9rem;line-height:1.5}.help-dialog .help-example{color:#5a4a3e;border-top:1px dashed #1e15102e;flex-wrap:wrap;gap:2px 8px;margin:auto 14px 14px;padding-top:12px;font-size:.8rem;display:flex}.help-dialog .help-example strong{color:#1e1510;font-variant-numeric:tabular-nums}.help-example-title{width:100%;margin-top:8px;font-weight:600}.turn-clock{--clock:var(--gold-bright);justify-items:center;gap:6px;width:min(100%,260px);margin:8px auto 2px;display:grid}.turn-clock.warn{--clock:#f0a24a}.turn-clock.danger{--clock:#ef6b5f}.turn-clock-time{font-family:var(--font-display);letter-spacing:.02em;font-variant-numeric:tabular-nums;color:var(--clock);font-size:2rem;font-weight:700;line-height:1}.turn-clock.danger .turn-clock-time{animation:1s ease-in-out infinite clock-pulse}.turn-clock.out .turn-clock-time{opacity:.75;animation:none}.turn-clock-track{background:#ffffff1a;border-radius:999px;width:100%;height:6px;overflow:hidden}.turn-clock-fill{border-radius:inherit;background:var(--clock);height:100%;box-shadow:0 0 12px var(--clock);transform-origin:0;transition:transform .25s linear,background .3s;display:block}@keyframes clock-pulse{50%{opacity:.55;transform:scale(1.06)}}.seat-portrait{flex:none;place-items:center;display:grid;position:relative}.clock-ring{pointer-events:none;width:calc(100% + 10px);height:calc(100% + 10px);position:absolute;inset:-5px;transform:rotate(-90deg)}.clock-ring circle{fill:none;stroke-width:3px}.clock-ring-track{stroke:#ffffff1f}.clock-ring-fill{stroke:var(--gold-bright);stroke-linecap:round;transition:stroke-dasharray .25s linear,stroke .3s}.clock-ring.warn .clock-ring-fill{stroke:#f0a24a}.clock-ring.danger .clock-ring-fill{stroke:#ef6b5f}.times-up{color:#f6c3bd;text-align:center;background:#ef6b5f24;border:1px solid #ef6b5f59;border-radius:10px;margin:0;padding:8px 12px;font-size:.9rem}@media (prefers-reduced-motion:reduce){.turn-clock.danger .turn-clock-time{animation:none}}.pinned-card{pointer-events:auto;grid-area:center;place-self:end start;justify-items:center;gap:8px;width:232px;padding:12px;animation:.35s ease-out pinned-in;display:grid}.pinned-card .card-face{width:100%}.pinned-card .card-lesson{font-size:.8rem}.pinned-label{color:var(--gold-bright);letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:700}.pinned-status{color:var(--off-white);text-align:center;margin:0;font-size:.85rem;line-height:1.35}@keyframes pinned-in{0%{opacity:0;transform:translateY(12px)rotate(-2deg)}}@media (width<=960px){.pinned-card{grid-area:auto;justify-self:center}}@media (prefers-reduced-motion:reduce){.pinned-card{animation:none}}.seat-last-card{background:var(--card-accent,#ffffff1a);max-width:100%;color:var(--card-ink,var(--off-white));text-overflow:ellipsis;white-space:nowrap;border-radius:999px;align-items:center;gap:4px;margin-top:4px;padding:1px 8px;font-size:.7rem;font-weight:700;display:inline-flex;overflow:hidden}.sound-settings{border:0;gap:2px;margin:18px 0;padding:0;display:grid}.sound-settings legend{margin-bottom:8px;padding:0}.switch-row{background:var(--surface-inset);cursor:pointer;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:10px 12px;display:flex}.switch-row>span{gap:2px;display:grid}.switch-row .fine-print{margin:0}.switch{appearance:none;cursor:pointer;background:#ffffff2e;border-radius:999px;flex:none;width:46px;height:28px;margin:0;transition:background .2s;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:22px;height:22px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 2px 6px #00000059}.switch:checked{background:var(--brand-gold)}.switch:checked:after{transform:translate(18px)}.switch:disabled{opacity:.45;cursor:default}.switch:focus-visible{outline:2px solid var(--gold-bright);outline-offset:2px}.next-game{border:1px solid var(--hairline-gold);text-align:center;background:#d4a73d1a;border-radius:14px;justify-items:center;gap:8px;margin:4px 0 14px;padding:14px;display:grid}.next-game-time{font-family:var(--font-display);color:var(--gold-bright);font-variant-numeric:tabular-nums;font-size:2.2rem;font-weight:700;line-height:1}.next-game .actions,.results-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.next-game .btn,.results-actions .btn{width:auto}.series-table{border-collapse:collapse;width:100%;margin:6px 0 14px;font-size:.9rem}.series-table th,.series-table td{border-bottom:1px solid var(--hairline);text-align:left;font-variant-numeric:tabular-nums;padding:6px 8px}.series-table .leader td{color:var(--gold-bright);font-weight:700}@media (width<=480px){.wordmark{top:calc(env(safe-area-inset-top) + 14px);font-size:1.05rem}.top-bar{top:calc(env(safe-area-inset-top) + 8px);right:10px}.top-bar .btn{min-height:32px;padding:0 12px;font-size:.82rem}}.game-hud.compact{padding:calc(env(safe-area-inset-top) + 56px) max(10px, env(safe-area-inset-right)) calc(env(safe-area-inset-bottom) + 8px) max(10px, env(safe-area-inset-left));grid-template:"top""center"minmax(0,1fr)"bottom"/minmax(0,1fr);gap:8px;overflow:hidden}.game-hud.compact .hud-top{gap:6px;width:100%;display:grid}.game-hud.compact .turn-banner{text-align:left;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0 12px;padding:8px 12px;display:grid}.game-hud.compact .turn-banner h2{font-size:1.02rem}.game-hud.compact .turn-meta{font-size:.78rem}.game-hud.compact .turn-clock{grid-area:1/2/span 2;width:84px;margin:0}.game-hud.compact .turn-clock-time{font-size:1.35rem}.game-hud.compact .card-summary{display:none}.game-hud.compact .commentary-caption{padding:8px 10px;font-size:.82rem}.game-hud.compact .hud-center{z-index:2;grid-area:center/1/bottom/1;width:100%}.game-hud.compact .hud-bottom{gap:8px;width:100%;min-height:0;display:grid}.game-hud.compact .action-panel{padding:10px}.game-hud.compact .action-bar{width:100%}.game-hud.compact .action-bar .btn{flex:auto;min-height:46px}.game-hud.compact .action-tools{gap:2px;padding-top:6px}.game-hud.compact .tool-btn{justify-content:center;min-width:44px;min-height:40px;padding:0 10px}.game-hud.compact .tool-label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.hud-tabs{background:var(--surface-strong);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);border:1px solid var(--hairline);box-shadow:var(--shadow-1);pointer-events:auto;border-radius:16px;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:4px;padding:4px;display:grid}.hud-tab{min-height:48px;color:var(--muted);font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:12px;justify-items:center;gap:2px;padding:6px 4px;font-size:.72rem;font-weight:600;display:grid;position:relative}.hud-tab[aria-pressed=true]{color:var(--gold-bright);background:#d4a73d24}.hud-tab:focus-visible{outline:2px solid var(--brand-gold);outline-offset:2px}.hud-tab-badge{box-sizing:border-box;color:#fff;text-align:center;background:#ef6b5f;border-radius:999px;min-width:16px;height:16px;padding:0 4px;font-size:.64rem;font-weight:700;line-height:16px;position:absolute;top:3px;left:calc(50% + 6px)}.hud-sheet{background:var(--surface-strong);min-height:0;max-height:min(58dvh,520px);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);border:1px solid var(--hairline);pointer-events:auto;border-radius:20px;flex-direction:column;padding:12px 14px 10px;animation:.24s ease-out sheet-up;display:flex;box-shadow:0 -8px 36px #00000073}.hud-sheet-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.hud-sheet-head h2{font-family:var(--font-display);margin:0;font-size:1.1rem;font-weight:650}.hud-sheet-body{overscroll-behavior:contain;min-height:0;overflow-y:auto}.hud-sheet .hud-panel{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:0;max-height:none;padding:0;overflow:visible}.hud-sheet .hud-panel>h2:first-child,.hud-sheet .table-talk>h2{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.hud-sheet .game-hud .table-talk,.hud-sheet .table-talk{min-height:0}.hud-sheet .talk-list{max-height:34dvh}@keyframes sheet-up{0%{opacity:0;transform:translateY(16px)}}.game-hud.compact.tutorial .hud-right{pointer-events:none;grid-area:center;justify-content:center;place-self:center;display:flex}.game-hud.compact .hud-right .card-face{width:min(58vw,200px)}.game-hud.compact .tutorial-dialog{padding:12px 14px}.game-hud.compact .tutorial-body{font-size:.9rem}.pinned-chip{border:1px solid var(--hairline);background:var(--surface-strong);max-width:100%;min-height:40px;-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);color:var(--off-white);font:inherit;text-align:left;box-shadow:var(--shadow-1);pointer-events:auto;cursor:pointer;border-radius:999px;grid-area:center;place-self:end start;align-items:center;gap:8px;padding:4px 14px 4px 4px;font-size:.82rem;display:flex}.pinned-chip-band{background:var(--card-accent);width:32px;height:32px;color:var(--card-ink);border-radius:50%;flex:none;place-items:center;display:grid}.pinned-chip strong{font-variant-numeric:tabular-nums}.pinned-chip-who{color:var(--muted);font-size:.7rem;display:block}.card-reveal{z-index:40;top:22%;bottom:34%;left:max(10px, env(safe-area-inset-left));right:max(10px, env(safe-area-inset-right));box-sizing:border-box;border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);cursor:pointer;background:#0a080699;place-items:center;animation:.18s ease-out dialog-fade;display:grid;position:fixed;container:reveal/size}.card-reveal-inner{box-sizing:border-box;grid-template-areas:"label""card""status";justify-items:center;gap:8px;width:100%;padding:12px;display:grid}.card-reveal .pinned-label{grid-area:label}.card-reveal-card{perspective:900px;grid-area:card;width:min(100%,340px)}.card-reveal .card-face{transform-origin:50% 100%;width:100%;animation:.5s ease-in-out reveal-flip}.card-reveal .card-band{padding:10px 14px;font-size:.85rem}.card-reveal .card-title{font-size:1.5rem}.card-reveal .card-amount-label{font-size:.8rem}.card-reveal .card-amount{font-size:2.9rem}.card-reveal .card-yield{font-size:1.05rem}.card-reveal .card-lesson{font-size:.9rem}.card-reveal .pinned-status{grid-area:status;max-width:340px;font-size:.9rem}.card-reveal-close{position:absolute;top:8px;right:8px}.card-reveal.tucking{animation:.24s ease-in forwards reveal-out}.card-reveal.tucking .card-face{animation:.24s ease-in forwards reveal-tuck}@keyframes reveal-flip{0%{opacity:.3;transform:translateY(18%)rotateY(-100deg)scale(.6)}}@keyframes reveal-out{to{opacity:0}}@keyframes reveal-tuck{to{transform:translate(-40%,45%)scale(.2)}}@container reveal (width>=600px) and (height>=620px){.card-reveal-card{width:min(100%,460px)}.card-reveal .pinned-label{font-size:.9rem}.card-reveal .card-band{padding:12px 18px;font-size:1rem}.card-reveal .card-body{padding:20px 22px 24px}.card-reveal .card-title{font-size:2rem}.card-reveal .card-amount-label{font-size:.95rem}.card-reveal .card-amount{font-size:3.8rem}.card-reveal .card-yield{font-size:1.3rem}.card-reveal .card-lesson{font-size:1.05rem}.card-reveal .pinned-status{max-width:460px;font-size:1.05rem}}@container reveal (height<=400px){.card-reveal .card-lesson{display:none}}@container reveal (height<=300px) and (width<=519px){.card-reveal .card-body{padding:8px 12px 10px}.card-reveal .card-title{font-size:1.2rem}.card-reveal .card-amount{font-size:2.2rem}}@container reveal (height<=300px) and (width>=520px){.card-reveal-inner{grid-template-columns:minmax(0,400px) minmax(0,220px);grid-template-areas:"card label""card status";justify-content:center;place-items:center start;gap:4px 16px;padding:4px 56px 4px 12px}.card-reveal .pinned-label{align-self:end}.card-reveal .pinned-status{text-align:left;align-self:start}.card-reveal-card{width:100%}.card-reveal .card-band{padding:6px 12px;font-size:.75rem}.card-reveal .card-body{text-align:left;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:16px;padding:6px 14px 8px;display:grid}.card-reveal .card-title{grid-area:1/1;font-size:1.1rem}.card-reveal .card-amount-label{grid-area:2/1;margin-top:0;font-size:.7rem}.card-reveal .card-yield{grid-area:3/1;margin-top:0;font-size:.85rem}.card-reveal .card-amount{grid-area:1/2/span 3;font-size:2.4rem}.card-reveal .card-caption{display:none}}@media (prefers-reduced-motion:reduce){.hud-sheet,.card-reveal,.card-reveal .card-face{animation:none!important}}.confirm-dialog .dialog-sub{margin-top:10px}.tool-end:hover{color:var(--gold-bright);background:#d4a73d24}.invite-card{border:1px solid var(--hairline-gold);background:#d4a73d12;border-radius:14px;gap:12px;margin:0 0 18px;padding:16px;display:grid}.invite-card h3{font-family:var(--font-display);margin:0;font-size:1.05rem;font-weight:650}.invite-card .fine-print{margin:2px 0 0}.invite-row{flex-wrap:wrap;align-items:center;gap:8px 10px;display:flex}.invite-row .btn{width:auto}.invite-link{border:1px solid var(--hairline);min-width:0;color:var(--off-white);text-overflow:ellipsis;white-space:nowrap;-webkit-user-select:all;user-select:all;background:#00000047;border-radius:10px;flex:220px;padding:9px 12px;font-size:.88rem;overflow:hidden}.invite-row .invite-code{font-size:1.2rem}.invite-input{border:1px solid var(--hairline-gold);min-width:0;min-height:36px;color:var(--off-white);font:inherit;letter-spacing:.12em;background:#00000047;border-radius:10px;flex:160px;padding:0 12px;font-weight:700}.invite-input:focus-visible{outline:none;box-shadow:0 0 0 3px #d4a73d40}.help-chip{border:1px solid #f5f1e840;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:.85rem;font-weight:700;display:inline-flex}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.table-talk{flex-direction:column;flex-shrink:0;gap:10px;min-height:0;display:flex}.game-hud .table-talk{flex:300px;min-height:250px}.table-talk h2{margin:0}.table-talk.embedded h2{font-family:var(--font-display);font-size:1.1rem;font-weight:600}.talk-scroll{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.talk-list{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#ffffff2e transparent;flex-direction:column;flex:1;gap:5px;min-height:120px;max-height:320px;margin:0 -4px;padding:2px 4px 6px;font-size:.9rem;list-style:none;display:flex;overflow-y:auto}.game-hud .talk-list{max-height:none}.table-talk.embedded .talk-list{max-height:200px}.talk-item{align-items:flex-end;gap:7px;margin-top:4px;animation:.22s ease-out talk-in;display:flex}.talk-item.grouped{margin-top:0}.talk-item.mine{justify-content:flex-end}@keyframes talk-in{0%{opacity:0;transform:translateY(6px)}}.talk-avatar,.talk-avatar-spacer{flex:none;width:26px;height:26px}.talk-avatar{color:#17110c;border-radius:50%;place-items:center;font-size:.78rem;font-weight:700;display:grid}.talk-bubble{border:1px solid var(--hairline);background:#ffffff13;border-radius:17px 17px 17px 6px;max-width:84%;padding:7px 11px 6px}.talk-item.grouped:not(.mine) .talk-bubble{border-radius:6px 17px 17px 6px}.talk-item.mine .talk-bubble{background:linear-gradient(#2b7d52,#1f6341);border-color:#6fcf9738;border-radius:17px 17px 6px}.talk-item.mine.grouped .talk-bubble{border-radius:17px 6px 6px 17px}.talk-name{color:var(--off-white);margin-bottom:1px;font-size:.74rem;font-weight:650;display:block}.talk-role{color:var(--muted);font-weight:400}.talk-text{color:var(--off-white);overflow-wrap:anywhere;line-height:1.4}.talk-time{float:right;color:#f5f1e880;font-variant-numeric:tabular-nums;margin:6px 0 -3px 10px;font-size:.66rem}.talk-item.commentator{border:1px solid var(--hairline-gold);background:linear-gradient(135deg,#d4a73d2b,#d4a73d0d);border-radius:14px;align-items:flex-start;gap:9px;margin-top:6px;padding:9px 11px}.talk-item.commentator .talk-bubble{background:0 0;border:0;border-radius:0;max-width:none;padding:0}.talk-item.commentator .talk-name{color:var(--gold-bright)}.talk-item.commentator .talk-text{display:block}.talk-empty{text-align:center;color:var(--muted);justify-items:center;gap:8px;margin:auto 0;padding:16px 10px;font-size:.85rem;line-height:1.45;display:grid}.talk-jump{border:1px solid var(--hairline-gold);background:var(--surface-strong);color:var(--gold-bright);font:inherit;white-space:nowrap;box-shadow:var(--shadow-1);cursor:pointer;border-radius:999px;padding:6px 12px;font-size:.78rem;font-weight:600;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.talk-form{background:var(--surface-inset);border:1px solid var(--hairline);border-radius:999px;align-items:center;gap:6px;padding:4px 4px 4px 14px;transition:border-color .15s,box-shadow .15s;display:flex}.talk-form:focus-within{border-color:var(--hairline-gold);box-shadow:0 0 0 3px #d4a73d2e}.talk-form input{min-width:0;min-height:36px;color:var(--off-white);font:inherit;background:0 0;border:0;outline:none;flex:1;padding:0;font-size:.92rem}.talk-form input::placeholder{color:#f5f1e873}.talk-form{position:relative}.talk-at{width:30px;height:30px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;padding:0;font-size:1rem;font-weight:700;display:grid}.talk-at:hover,.talk-at:focus-visible{background:var(--surface-inset);color:var(--gold-bright);outline:none}.mention-list{z-index:5;background:var(--surface-strong);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);border:1px solid var(--hairline);box-shadow:var(--shadow-2);border-radius:14px;margin:0;padding:4px;list-style:none;position:absolute;bottom:calc(100% + 6px);left:6px;right:6px}.mention-option{min-height:38px;color:var(--off-white);cursor:pointer;border-radius:10px;align-items:center;gap:8px;padding:4px 10px;font-size:.9rem;display:flex}.mention-option[aria-selected=true]{color:var(--gold-bright);background:#d4a73d24}.mention-option .talk-avatar{width:24px;height:24px;font-size:.72rem}.mention{color:var(--gold-bright);font-weight:700}.mention.me{background:#d4a73d38;border-radius:6px;padding:0 4px}.talk-item.mentions-me .talk-bubble{border-color:var(--brand-gold);box-shadow:0 0 0 1px var(--brand-gold)}.talk-count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.72rem}.talk-count.low{color:var(--danger)}.talk-send{background:linear-gradient(180deg, var(--gold-bright), var(--brand-gold));color:#1b140c;cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;padding:0;transition:transform .12s,opacity .15s;display:grid}.talk-send:disabled{opacity:.3;cursor:default}.talk-send:not(:disabled):active{transform:scale(.9)}.talk-send:focus-visible{outline:2px solid var(--gold-bright);outline-offset:2px}@media (prefers-reduced-motion:reduce){.talk-item{animation:none}}.mascot-icon{flex:none}.commentary-caption{border:1px solid var(--brand-gold);pointer-events:auto;background:#2e2e33f2;border-radius:14px;align-items:flex-start;gap:10px;margin-top:10px;padding:10px 14px;animation:.3s ease-out caption-in;display:flex;box-shadow:0 10px 30px #0006}.commentary-caption p{margin:0;line-height:1.4}.commentary-caption strong{color:var(--brand-gold)}@keyframes caption-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.commentary-caption{animation:none}}.top-bar{z-index:2;background:var(--surface);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);border:1px solid var(--hairline);box-shadow:var(--shadow-1);border-radius:999px;gap:4px;padding:4px;display:flex;position:absolute;top:12px;right:16px}.top-bar .btn{background:0 0;border-color:#0000;border-radius:999px;min-height:34px;padding:0 16px;font-size:.9rem}.top-bar .btn:hover{background:var(--surface-inset)}.drinks-dialog{width:min(100%,460px)}.drinks-list{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin:18px 0;padding:0;list-style:none;display:grid}.drink-option{border:1px solid var(--hairline);width:100%;color:var(--off-white);font:inherit;cursor:pointer;background:#ffffff0a;border-radius:14px;justify-items:center;gap:6px;padding:14px 10px;font-weight:600;display:grid}.drink-option:hover,.drink-option:focus-visible{border-color:var(--brand-gold)}.drink-option.chosen{border-color:var(--brand-gold);background:#d4a73d29}.drink-icon{font-size:1.7rem;line-height:1}.auth-layout{grid-template-columns:minmax(0,1fr) minmax(320px,430px);align-items:center;gap:26px;width:min(1080px,100%);display:grid}.game-preview{gap:12px;margin:0;display:grid}.preview-frame{aspect-ratio:1200/806;border:1px solid var(--hairline);border-radius:var(--radius-lg);background:var(--room);box-shadow:var(--shadow-2);position:relative;overflow:hidden}.preview-shot{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .6s;position:absolute;inset:0}.preview-shot.on{opacity:1}.game-preview figcaption{min-height:2.6em;color:var(--muted);text-align:center;font-size:.92rem;line-height:1.4}.preview-dots{justify-content:center;gap:8px;display:flex}.preview-dot{border:1px solid var(--hairline-gold);cursor:pointer;background:0 0;border-radius:50%;width:9px;height:9px;padding:0}.preview-dot.on{border-color:var(--brand-gold);background:var(--brand-gold)}@media (prefers-reduced-motion:reduce){.preview-shot{transition:none}}@media (width<=900px){.auth-layout{grid-template-columns:minmax(0,1fr);width:min(520px,100%)}}
