@font-face{font-family:Vazirmatn;src:url(/fonts/vazirmatn-var.woff2) format("woff2-variations"),url(/fonts/vazirmatn-var.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap;ascent-override:100%;descent-override:34%;line-gap-override:0%}@font-face{font-family:Vazirmatn Fallback;src:local("Tahoma"),local("Segoe UI"),local("Roboto");size-adjust:92%;ascent-override:100%;descent-override:34%;line-gap-override:0%}@font-face{font-family:"Baloo Bhaijaan 2";src:url(/fonts/baloo-bhaijaan2-var.woff2) format("woff2-variations"),url(/fonts/baloo-bhaijaan2-var.woff2) format("woff2");font-weight:400 800;font-style:normal;font-display:swap}:root{color-scheme:dark;--bg: #2A66CF;--bg-mid: #2E4DBD;--bg-deep: #4A37A6;--bg-elev: #2D59C6;--ground-ink: #FFFFFF;--ground-muted: rgba(255, 255, 255, .88);--surface: #10306E;--surface-2: #17408A;--surface-3: #1E4FA3;--surface-glass: rgba(11, 35, 87, .94);--scrim: rgba(4, 14, 38, .7);--paper: #FFF6DC;--paper-2: #E3ECFF;--paper-ink: #0B2357;--paper-muted: #4A5E8C;--line: rgba(255, 255, 255, .12);--line-strong: rgba(255, 255, 255, .24);--line-accent: rgba(255, 196, 61, .55);--outline: #081A44;--outline-w: 3px;--edge: 5px;--edge-sm: 3px;--field: #081A44;--field-ink: #FFFFFF;--ink: #FFFFFF;--ink-muted: #C9DBF8;--ink-dim: #8FA9D9;--ink-invert: #0B2357;--stroke: var(--outline);--brand: #FFC43D;--brand-strong: #FFE07A;--brand-deep: #F08C1B;--brand-ink: #FFFFFF;--brand-soft: rgba(255, 196, 61, .18);--brand-glow: rgba(255, 196, 61, .4);--accent: #2BD4DB;--accent-soft: rgba(43, 212, 219, .16);--accent-deep: #0E8F96;--ok: #4CCF5A;--ok-deep: #1F8A2E;--ok-soft: rgba(76, 207, 90, .18);--warn: #FFB02E;--warn-soft: rgba(255, 176, 46, .18);--danger: #FF5D7A;--danger-deep: #B52546;--danger-soft: rgba(255, 93, 122, .18);--info: #3FA3FF;--info-soft: rgba(63, 163, 255, .18);--disabled-bg: #2A4170;--disabled-ink: rgba(255, 255, 255, .45);--tile-sky: #2F8CFF;--tile-sky-edge: #1658B8;--tile-rose: #FF5D7A;--tile-rose-edge: #B52546;--tile-leaf: #4CCF5A;--tile-leaf-edge: #1F8A2E;--tile-plum: #8A63FF;--tile-plum-edge: #4E33B3;--tile-sun: #FFC43D;--tile-sun-edge: #F08C1B;--tile-teal: #19C3C9;--tile-teal-edge: #0B7F86;--seat-1: #E2553F;--seat-2: #3E8FD0;--seat-3: #6FBF57;--seat-4: #E8B93F;--seat-5: #A96FD8;--seat-6: #E27FB0;--font: "Vazirmatn", "Vazirmatn Fallback", "IRANSansX", "IRANSans", system-ui, "Segoe UI", Tahoma, sans-serif;--font-num: var(--font);--font-display: "Baloo Bhaijaan 2", var(--font);--font-board: var(--font);--fs-hero: 2rem;--fs-display: 1.625rem;--fs-title: 1.25rem;--fs-head: 1.0625rem;--fs-body: .9375rem;--fs-sm: .8125rem;--fs-xs: .6875rem;--fw-regular: 400;--fw-medium: 500;--fw-bold: 700;--fw-black: 800;--lh-tight: 1.45;--lh-body: 1.75;--lh-flat: 1.2;--ls-none: 0;--ls-caps: .02em;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-8: 32px;--sp-10: 40px;--sp-12: 48px;--r-xs: 8px;--r-sm: 12px;--r-md: 14px;--r-lg: 18px;--r-xl: 26px;--r-pill: 999px;--sh-1: 0 1px 2px rgba(4, 14, 38, .3);--sh-2: 0 4px 14px rgba(4, 14, 38, .34);--sh-3: 0 12px 34px rgba(4, 14, 38, .44);--sh-4: 0 24px 64px rgba(4, 14, 38, .55);--sh-brand: 0 10px 30px -12px var(--brand-glow);--sh-inset: inset 0 1px 0 rgba(255, 255, 255, .08);--sh-edge: 0 var(--edge) 0 var(--outline);--sh-edge-sm: 0 var(--edge-sm) 0 var(--outline);--text-3d: 0 .09em 0 var(--outline);--panel-bg: linear-gradient(180deg, var(--surface-2) 0%, var(--surface) 62%);--panel-gloss: inset 0 2px 0 rgba(255, 255, 255, .1);--icon-xs: 14px;--icon-sm: 18px;--icon-md: 22px;--icon-lg: 26px;--icon-xl: 32px;--tap: 44px;--tap-lg: 52px;--dur-1: .11s;--dur-2: .2s;--dur-3: .32s;--dur-4: .56s;--ease: cubic-bezier(.22, 1, .36, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--ease-pop: cubic-bezier(.34, 1.46, .64, 1);--z-background: 0;--z-board: 1;--z-board-objects: 2;--z-board-overlay: 3;--z-hud: 10;--z-nav: 20;--z-fab: 25;--z-drawer: 30;--z-sheet: 40;--z-dialog: 50;--z-coach: 60;--z-toast: 70;--appbar-h: 56px;--tabbar-h: 66px;--page-max: 720px;--sheet-max: 620px;--safe-t: env(safe-area-inset-top, 0px);--safe-b: env(safe-area-inset-bottom, 0px);--safe-s: env(safe-area-inset-left, 0px);--safe-e: env(safe-area-inset-right, 0px);--ink-on-brand: #FFFFFF;--ink-on-accent: #04222A;--ink-on-ok: #FFFFFF;--ink-on-warn: #1B1204;--ink-on-danger: #FFFFFF;--ink-on-dark: #FFFFFF}html[data-appearance=light]{color-scheme:light;--bg: #EAF4FF;--bg-mid: #DCE5FF;--bg-deep: #E7DEFB;--ground-ink: #0B2357;--ground-muted: rgba(11, 35, 87, .74);--bg-elev: #D8E5FC;--surface: #FFFFFF;--surface-2: #EEF4FF;--surface-3: #DDE8FC;--surface-glass: rgba(255, 255, 255, .95);--scrim: rgba(8, 26, 68, .45);--line: rgba(8, 26, 68, .12);--line-strong: rgba(8, 26, 68, .22);--line-accent: rgba(240, 140, 27, .5);--field: #EEF4FF;--field-ink: #0B2357;--ink: #0B2357;--ink-muted: #3D5A8C;--ink-dim: #6A80AA;--ink-invert: #FFFFFF;--brand: #FFC43D;--brand-strong: #FFE07A;--brand-deep: #F08C1B;--brand-ink: #FFFFFF;--brand-soft: rgba(240, 140, 27, .14);--brand-glow: rgba(240, 140, 27, .3);--accent: #0E8F96;--accent-soft: rgba(14, 143, 150, .12);--ok: #2E9E3C;--warn: #C27A0A;--danger: #D8344F;--info: #1F6FD1;--disabled-bg: #D3DCEC;--disabled-ink: rgba(11, 35, 87, .4);--sh-1: 0 1px 2px rgba(8, 26, 68, .1);--sh-2: 0 4px 14px rgba(8, 26, 68, .12);--sh-3: 0 12px 34px rgba(8, 26, 68, .16);--sh-4: 0 24px 64px rgba(8, 26, 68, .2);--sh-inset: inset 0 1px 0 rgba(255, 255, 255, .7)}html[data-theme=dusk]{--bg: #120E1C;--bg-elev: #181228;--surface: #201735;--surface-2: #291E42;--surface-3: #332651;--brand: #E9A6D0;--brand-strong: #F4C0E0;--brand-deep: #A5628C;--brand-soft: rgba(233, 166, 208, .14);--brand-glow: rgba(233, 166, 208, .36);--accent: #7FA8F0}html[data-theme=parchment]{--bg: #1A1611;--bg-elev: #221C15;--surface: #2C251B;--surface-2: #372E22;--surface-3: #453A2B;--ink: #F6EEDD;--brand: #D9A441;--brand-deep: #A87B26;--accent: #9CBFA0}:root{--bp-xs: 380px;--bp-md: 720px;--bp-lg: 1024px}html[data-motion=off]{--dur-1: 1ms;--dur-2: 1ms;--dur-3: 1ms;--dur-4: 1ms}html[data-motion=off] *,html[data-motion=off] *:before,html[data-motion=off] *:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important;scroll-behavior:auto!important}@media (prefers-reduced-motion: reduce){html:not([data-motion=on]) *,html:not([data-motion=on]) *:before,html:not([data-motion=on]) *:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;height:100%;overscroll-behavior-y:none}html{font-size:16px;-webkit-text-size-adjust:100%;background:var(--bg)}body{font-family:var(--font);font-size:var(--fs-body);line-height:var(--lh-body);letter-spacing:var(--ls-none);color:var(--ink);background:transparent;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;font-variant-ligatures:common-ligatures contextual;font-variant-numeric:tabular-nums;font-kerning:normal}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(130% 90% at 50% 40%,transparent 55%,rgba(4,14,38,.32) 100%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='72' viewBox='0 0 72 72'%3E%3Cpath d='M36 2 70 36 36 70 2 36Z' fill='rgba(255,255,255,0.035)'/%3E%3Cpath d='M2 36 36 2 70 36' fill='none' stroke='rgba(255,255,255,0.11)' stroke-width='2.5'/%3E%3Cpath d='M70 36 36 70 2 36' fill='none' stroke='rgba(4,14,38,0.2)' stroke-width='2.5'/%3E%3C/svg%3E"),radial-gradient(120% 55% at 50% -5%,rgba(255,255,255,.2),transparent 60%),radial-gradient(70% 45% at 100% 105%,rgba(255,110,180,.22),transparent 70%),linear-gradient(165deg,var(--bg) 0%,var(--bg-mid) 55%,var(--bg-deep) 100%)}h1,h2,h3,h4,p,figure,ul,ol{margin:0;padding:0}ul,ol{list-style:none}h1,h2,h3{font-family:var(--font-display)}h1{font-size:var(--fs-display);font-weight:var(--fw-black);line-height:var(--lh-tight)}h2{font-size:var(--fs-title);font-weight:var(--fw-black);line-height:var(--lh-tight)}h3{font-size:var(--fs-head);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.u-stroke{color:var(--ink-on-dark);-webkit-text-stroke:.22em var(--stroke);paint-order:stroke fill;text-shadow:var(--text-3d)}.u-col>*,.u-row>*,.filter-row>*{min-width:0}p,.u-text{overflow-wrap:anywhere}a{color:var(--brand);text-decoration:none}button,input,select,textarea{font:inherit;color:inherit;margin:0}button{background:none;border:0;cursor:pointer}button,a,[role=button],[role=tab]{touch-action:manipulation}img,svg{display:block;max-width:100%}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:var(--r-xs)}::selection{background:var(--brand);color:var(--outline)}*{scrollbar-width:thin;scrollbar-color:var(--surface-3) transparent}*::-webkit-scrollbar{width:6px;height:6px}*::-webkit-scrollbar-thumb{background:var(--surface-3);border-radius:var(--r-pill)}.app{display:block;min-height:100dvh;max-width:var(--page-max);margin-inline:auto;position:relative;overflow-x:clip}.app.is-wide{max-width:none}.screen{display:flex;flex-direction:column;min-height:100dvh;padding-bottom:calc(var(--safe-b) + var(--sp-6))}.screen.has-tabbar{padding-bottom:calc(var(--tabbar-h) + var(--safe-b) + var(--sp-4))}.screen.has-dock{padding-bottom:0}.screen-body{flex:1;display:flex;flex-direction:column;gap:var(--sp-6);padding-inline:var(--sp-4);padding-block-start:var(--sp-4)}.screen-body>.bleed{margin-inline:calc(var(--sp-4) * -1)}.section{display:flex;flex-direction:column;gap:var(--sp-3)}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-3)}.section-title{font-family:var(--font-display);font-size:var(--fs-title);font-weight:var(--fw-black);line-height:var(--lh-flat);color:var(--ink-on-dark);-webkit-text-stroke:.2em var(--stroke);paint-order:stroke fill;text-shadow:var(--text-3d)}.section-more{font-family:var(--font-display);font-weight:var(--fw-bold);font-size:var(--fs-body);color:var(--brand);-webkit-text-stroke:.2em var(--stroke);paint-order:stroke fill;text-shadow:var(--text-3d);display:inline-flex;align-items:center;gap:var(--sp-1);min-height:var(--tap);padding-inline:var(--sp-1)}.section-sub{font-size:var(--fs-sm);color:var(--ground-muted)}.screen-body>:is(p,.u-muted),.section>:is(p,.u-muted){color:var(--ground-muted)}.u-row{display:flex;align-items:center;gap:var(--sp-2)}.u-col{display:flex;flex-direction:column;gap:var(--sp-2)}.u-between{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3)}.u-wrap{flex-wrap:wrap}.u-grow{flex:1;min-width:0}.u-center{text-align:center}.u-sm{font-size:var(--fs-sm)}.u-xs{font-size:var(--fs-xs)}.u-muted{color:var(--ink-muted)}.u-dim{color:var(--ink-dim)}.u-bold{font-weight:var(--fw-bold)}.u-num{font-variant-numeric:tabular-nums}.u-ltr{direction:ltr;text-align:start;unicode-bidi:isolate}.u-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.u-clamp-2,.u-clamp-3{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;line-height:var(--lh-tight)}.u-clamp-2{-webkit-line-clamp:2}.u-clamp-3{-webkit-line-clamp:3}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.divider{height:1px;background:var(--line);border:0;margin:var(--sp-2) 0}.icon{width:var(--icon-md);height:var(--icon-md);fill:currentColor;stroke:none;flex:none}.icon-sm{width:var(--icon-sm);height:var(--icon-sm)}.icon-lg{width:var(--icon-lg);height:var(--icon-lg)}.icon-fill{fill:currentColor;stroke:none}.scroller{display:flex;gap:var(--sp-3);overflow-x:auto;scroll-snap-type:x proximity;padding-inline:var(--sp-4);padding-block:var(--sp-1) var(--sp-2);scrollbar-width:none}.scroller::-webkit-scrollbar{display:none}.scroller>*{scroll-snap-align:start}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes pop{0%{transform:scale(.9);opacity:0}to{transform:none;opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{to{background-position-x:-200%}}@keyframes pulse-ring{0%{box-shadow:0 0 0 0 var(--brand-glow)}70%{box-shadow:0 0 0 12px transparent}to{box-shadow:0 0 0 0 transparent}}.anim-rise{animation:rise var(--dur-2) var(--ease) both}.appbar{position:sticky;top:0;z-index:var(--z-hud);display:grid;grid-template-columns:var(--tap) 1fr auto;align-items:center;gap:var(--sp-2);min-height:calc(var(--appbar-h) + var(--safe-t));padding:var(--safe-t) var(--sp-3) 0;background:linear-gradient(var(--surface-2),var(--surface));border-bottom:var(--outline-w) solid var(--outline);box-shadow:0 4px #040e2638;transition:background-color var(--dur-2) var(--ease),border-color var(--dur-2) var(--ease)}.appbar.is-flat{background:transparent;border-bottom-color:transparent;box-shadow:none}.appbar-title{font-family:var(--font-display);font-size:var(--fs-title);font-weight:var(--fw-black);line-height:var(--lh-flat);text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.appbar-sub{display:block;font-size:var(--fs-xs);color:var(--ink-muted);font-weight:var(--fw-regular)}.appbar-actions{display:flex;align-items:center;gap:var(--sp-1);justify-self:end}.appbar-lead{justify-self:start}.icon-btn{display:inline-grid;place-items:center;width:var(--tap);height:var(--tap);border-radius:var(--r-md);color:var(--ink);transition:background var(--dur-1) var(--ease),transform var(--dur-1) var(--ease)}.icon-btn:hover{background:var(--surface-2)}.icon-btn:active{transform:scale(.92)}.icon-btn.is-round{border-radius:var(--r-pill)}.icon-btn[disabled]{color:var(--disabled-ink);pointer-events:none}.icon-btn .badge-dot{position:absolute;margin-block-start:-18px;margin-inline-start:18px;width:8px;height:8px;border-radius:var(--r-pill);background:var(--danger)}.tabbar{position:fixed;inset-inline:0;bottom:0;z-index:var(--z-nav);display:flex;align-items:stretch;gap:2px;max-width:var(--page-max);margin-inline:auto;padding-bottom:var(--safe-b);background:var(--outline);border-top:var(--outline-w) solid var(--outline)}.tabbar[hidden]{display:none}.tab-item{position:relative;flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;min-height:var(--tabbar-h);padding-block:var(--sp-1);background:linear-gradient(var(--surface-2),var(--surface));box-shadow:inset 0 2px #ffffff14;color:var(--ink-on-dark);transition:flex-grow var(--dur-2) var(--ease),background var(--dur-2) var(--ease)}.tab-art{width:34px;height:34px;filter:drop-shadow(0 3px 0 rgba(4,14,38,.35)) saturate(.85) brightness(.92);transition:transform var(--dur-2) var(--ease-pop),width var(--dur-2) var(--ease),height var(--dur-2) var(--ease)}.tab-label{font-family:var(--font-display);font-size:var(--fs-sm);font-weight:var(--fw-black);line-height:var(--lh-flat);-webkit-text-stroke:.2em var(--stroke);paint-order:stroke fill;text-shadow:0 2px 0 var(--outline);display:none}.tab-face{display:block;border-radius:50%;overflow:hidden;border:2px solid var(--outline);background:var(--tile-sky);box-shadow:inset 0 0 0 2px #ffffff8c}.tab-face>img{display:block;width:100%;height:100%}.tab-item:hover .tab-art{filter:drop-shadow(0 3px 0 rgba(4,14,38,.35))}.tab-item:active .tab-art{transform:scale(.9)}.tab-item.is-active{flex-grow:1.75;background:linear-gradient(var(--tile-sky),var(--tile-sky-edge));box-shadow:inset 0 2px #ffffff59,inset 0 -4px #040e2640}.tab-item.is-active .tab-art{width:48px;height:48px;margin-block-start:-20px;filter:drop-shadow(0 4px 0 rgba(4,14,38,.4));transform:translateY(-2px)}.tab-item.is-active .tab-label{display:block}.tab-item.is-active:before,.tab-item.is-active:after{content:"";position:absolute;inset-block-start:36%;inline-size:7px;block-size:11px;background:var(--ink-on-dark);opacity:.85}.tab-item.is-active:before{inset-inline-start:8px;clip-path:polygon(100% 0,100% 100%,0 50%)}.tab-item.is-active:after{inset-inline-end:8px;clip-path:polygon(0 0,0 100%,100% 50%)}[dir=rtl] .tab-item.is-active:before{clip-path:polygon(0 0,0 100%,100% 50%)}[dir=rtl] .tab-item.is-active:after{clip-path:polygon(100% 0,100% 100%,0 50%)}.tab-badge{position:absolute;top:6px;inset-inline-end:calc(50% - 26px);min-width:20px;height:20px;padding-inline:5px;border-radius:var(--r-pill);border:2px solid var(--outline);background:var(--danger);color:var(--ink-on-dark);font-family:var(--font);font-size:11px;font-weight:var(--fw-black);display:grid;place-items:center}.swipe-peek{position:fixed;top:0;bottom:0;overflow:hidden;pointer-events:none;will-change:transform}.enter-from-right{animation:enter-right var(--dur-2) var(--ease) both}.enter-from-left{animation:enter-left var(--dur-2) var(--ease) both}@keyframes enter-right{0%{transform:translate(28%);opacity:0}}@keyframes enter-left{0%{transform:translate(-28%);opacity:0}}.btn{--btn-top: var(--surface-3);--btn-face: var(--surface-2);--btn-ink: var(--ink);display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);min-height:var(--tap);padding-inline:var(--sp-4);border:var(--outline-w) solid var(--outline);border-radius:var(--r-md);background:linear-gradient(var(--btn-top) 0 50%,var(--btn-face) 50%);color:var(--btn-ink);font-family:var(--font-display);font-size:var(--fs-body);font-weight:var(--fw-black);line-height:var(--lh-flat);box-shadow:var(--sh-edge),inset 0 -4px #040e2624,inset 0 3px #ffffff38;transition:transform var(--dur-1) var(--ease),box-shadow var(--dur-1) var(--ease),filter var(--dur-1) var(--ease),opacity var(--dur-1) var(--ease);user-select:none;-webkit-tap-highlight-color:transparent}.btn:hover{filter:brightness(1.06)}.btn:active{transform:translateY(var(--edge-sm));box-shadow:0 calc(var(--edge) - var(--edge-sm)) 0 var(--outline),inset 0 -2px #040e2624}.btn-primary,.btn-accent,.btn-danger,.btn-warn,.btn-ok{--btn-ink: var(--ink-on-dark);-webkit-text-stroke:.2em var(--stroke);paint-order:stroke fill;text-shadow:var(--text-3d)}.btn-primary{--btn-top: var(--brand);--btn-face: var(--brand-deep)}.btn-accent{--btn-top: var(--tile-teal);--btn-face: var(--tile-teal-edge)}.btn-danger{--btn-top: var(--tile-rose);--btn-face: var(--tile-rose-edge)}.btn-warn{--btn-top: var(--warn);--btn-face: var(--brand-deep)}.btn-ok{--btn-top: var(--tile-leaf);--btn-face: var(--tile-leaf-edge)}.btn-ghost{--btn-top: rgba(8, 26, 68, .32);--btn-face: rgba(8, 26, 68, .32);--btn-ink: var(--ink-on-dark);border-width:2px;border-color:var(--line-strong);box-shadow:none}.btn-ghost:active{transform:translateY(1px);box-shadow:none}.btn-quiet{--btn-top: transparent;--btn-face: transparent;border-color:transparent;box-shadow:none;color:var(--ink-muted);font-weight:var(--fw-bold)}.btn-quiet:active{transform:none;box-shadow:none;opacity:.7}.btn-lg{min-height:var(--tap-lg);font-size:var(--fs-title);border-radius:var(--r-lg);padding-inline:var(--sp-5)}.btn-sm{min-height:38px;padding-inline:var(--sp-3);font-size:var(--fs-sm);border-radius:var(--r-sm);--edge: 4px}.btn-xs{min-height:32px;padding-inline:var(--sp-2);font-size:var(--fs-xs);border-radius:var(--r-xs);border-width:2px;--edge: 3px;--edge-sm: 2px}.btn-block{display:flex;width:100%}.btn[disabled],.btn.is-disabled{--btn-top: var(--disabled-bg);--btn-face: var(--disabled-bg);color:var(--disabled-ink);-webkit-text-stroke:0;box-shadow:var(--sh-edge-sm);filter:none;cursor:not-allowed;transform:none}.btn.is-disabled{pointer-events:auto}.btn.is-active{box-shadow:var(--sh-edge),0 0 0 3px var(--brand)}.btn .icon{width:var(--icon-sm);height:var(--icon-sm)}.btn-primary .icon,.btn-accent .icon,.btn-danger .icon,.btn-warn .icon,.btn-ok .icon{filter:drop-shadow(0 2px 0 var(--outline))}.sticky-actions{position:sticky;bottom:0;z-index:var(--z-hud);display:flex;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4) calc(var(--sp-3) + var(--edge) + var(--safe-b));margin-block-start:auto;background:linear-gradient(to top,var(--bg-deep) 58%,transparent)}.sticky-actions>.btn{flex:1}.card{background:var(--panel-bg);border:var(--outline-w) solid var(--outline);border-radius:var(--r-lg);box-shadow:var(--sh-edge),var(--panel-gloss);overflow:hidden}.card-pad{padding:var(--sp-4)}.card-tint{background:linear-gradient(180deg,var(--surface-2),var(--surface))}.panel{background:var(--panel-bg);border:var(--outline-w) solid var(--outline);border-radius:var(--r-lg);box-shadow:var(--sh-edge),var(--panel-gloss);padding:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-3)}.panel-title{font-family:var(--font-display);font-size:var(--fs-head);font-weight:var(--fw-black)}.panel.is-locked{opacity:.55}.panel.is-locked .chip,.panel.is-readonly .chip{cursor:default}.panel.is-readonly .chip:not(.chip-brand){opacity:.5}.is-lock-note{align-items:center;width:100%;text-align:start;color:inherit;cursor:pointer;border-color:var(--brand, var(--line))}.list{display:flex;flex-direction:column;background:var(--panel-bg);border:var(--outline-w) solid var(--outline);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-edge),var(--panel-gloss)}.list-row{display:flex;align-items:center;gap:var(--sp-3);width:100%;min-height:var(--tap-lg);padding:var(--sp-3) var(--sp-4);text-align:start;color:inherit;border-bottom:1px solid var(--line);transition:background var(--dur-1) var(--ease)}.list-row:last-child{border-bottom:0}.list-row:hover{background:var(--surface-2)}.list-row:active{background:var(--surface-3)}.list-row .icon{color:var(--ink-muted)}.list-row-main{flex:1;min-width:0;display:flex;flex-direction:column}.list-row-title{font-weight:var(--fw-bold)}.list-row-sub{font-size:var(--fs-sm);color:var(--ink-muted)}.list-row-end{display:flex;align-items:center;gap:var(--sp-2);color:var(--ink-dim);font-size:var(--fs-sm)}.list-row .chev{color:var(--ink-dim)}.banner{display:flex;align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-3) var(--sp-4);border-radius:var(--r-lg);background:var(--panel-bg);border:var(--outline-w) solid var(--outline);box-shadow:var(--sh-edge),var(--panel-gloss);text-align:start;color:inherit}.banner-icon{width:44px;height:44px;border-radius:var(--r-md);display:grid;place-items:center;background:var(--surface-2);border:2px solid var(--outline);color:var(--brand);flex:none}.banner-main{flex:1;min-width:0;display:flex;flex-direction:column}.banner-title{font-family:var(--font-display);font-size:var(--fs-head);font-weight:var(--fw-black);line-height:var(--lh-flat)}.banner-sub{font-size:var(--fs-sm);color:var(--ink-muted)}.banner.is-brand{background:linear-gradient(var(--brand) 0 50%,var(--brand-deep) 50%);color:var(--ink-on-dark);transition:transform var(--dur-1) var(--ease),box-shadow var(--dur-1) var(--ease)}.banner.is-brand:active{transform:translateY(var(--edge-sm));box-shadow:var(--sh-edge-sm),var(--panel-gloss)}.banner.is-brand .banner-title,.banner.is-brand .banner-sub{color:var(--ink-on-dark);-webkit-text-stroke:.2em var(--stroke);paint-order:stroke fill;text-shadow:var(--text-3d)}.banner.is-brand .banner-icon{background:var(--surface);color:var(--brand)}.banner.is-warn{background:linear-gradient(var(--warn-soft),var(--warn-soft)),var(--surface)}.banner.is-danger{background:linear-gradient(var(--danger-soft),var(--danger-soft)),var(--surface)}.acc{border:var(--outline-w) solid var(--outline);border-radius:var(--r-md);background:var(--panel-bg);overflow:hidden;box-shadow:var(--sh-edge-sm),var(--panel-gloss)}.acc+.acc{margin-block-start:var(--sp-3)}.acc summary{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);min-height:var(--tap);padding:var(--sp-2) var(--sp-4);font-weight:var(--fw-medium);cursor:pointer;list-style:none}.acc summary::-webkit-details-marker{display:none}.acc summary:after{content:"";width:8px;height:8px;border-inline-end:2px solid var(--ink-dim);border-block-end:2px solid var(--ink-dim);transform:rotate(45deg);transition:transform var(--dur-2) var(--ease);flex:none}.acc[open] summary:after{transform:rotate(-135deg)}.acc-body{padding:0 var(--sp-4) var(--sp-4);color:var(--ink-muted);font-size:var(--fs-sm);white-space:pre-line}.chip{display:inline-flex;align-items:center;gap:var(--sp-1);padding:3px var(--sp-2);border-radius:var(--r-pill);background:var(--surface-2);border:2px solid var(--outline);font-family:var(--font-display);font-size:var(--fs-xs);font-weight:var(--fw-bold);color:var(--ink-muted);white-space:nowrap}.chip-ok{background:var(--tile-leaf-edge);color:var(--ink-on-dark)}.chip-warn{background:var(--brand-deep);color:var(--ink-on-dark)}.chip-danger{background:var(--tile-rose-edge);color:var(--ink-on-dark)}.chip-brand{background:var(--brand);color:var(--outline)}.badge{display:inline-flex;align-items:center;gap:3px;padding:2px var(--sp-2);border-radius:var(--r-pill);font-size:var(--fs-xs);font-weight:var(--fw-bold);background:var(--outline);color:var(--ink-on-dark)}.badge-free{background:var(--ok);color:var(--ink-on-ok)}.badge-plus{background:linear-gradient(135deg,var(--brand-strong),var(--brand-deep));color:var(--brand-ink)}.dot{width:8px;height:8px;border-radius:var(--r-pill);background:var(--ink-dim);flex:none}.dot-on{background:var(--ok);box-shadow:0 0 0 3px var(--ok-soft)}.dot-off{background:var(--ink-dim)}.avatar{--size: 44px;position:relative;width:var(--size);height:var(--size);border-radius:var(--r-pill);display:grid;place-items:center;overflow:hidden;background:var(--surface-2);flex:none}.avatar svg,.avatar img{width:100%;height:100%;display:block}.avatar-xs{--size: 28px}.avatar-sm{--size: 36px}.avatar-lg{--size: 64px}.avatar-xl{--size: 96px}.avatar{box-shadow:0 0 0 2px var(--outline)}.avatar.is-plus{box-shadow:0 0 0 2px var(--outline),0 0 0 4px var(--brand)}.avatar-status{position:absolute;inset-block-end:0;inset-inline-end:0;width:12px;height:12px;border-radius:var(--r-pill);border:2px solid var(--surface);background:var(--ink-dim)}.avatar-status.is-on{background:var(--ok)}.identity{display:flex;align-items:center;gap:var(--sp-3);min-width:0}.identity-main{min-width:0;display:flex;flex-direction:column}.identity-name{font-weight:var(--fw-bold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.identity-sub{font-size:var(--fs-sm);color:var(--ink-muted)}.field{display:flex;flex-direction:column;gap:var(--sp-2)}.field-label{font-size:var(--fs-sm);color:var(--ink-muted);font-weight:var(--fw-bold)}.input{width:100%;min-height:var(--tap);padding:0 var(--sp-3);border-radius:var(--r-md);background:var(--field);border:var(--outline-w) solid var(--outline);box-shadow:inset 0 3px #00000040;color:var(--field-ink);transition:border-color var(--dur-2) var(--ease),box-shadow var(--dur-2) var(--ease)}.input::placeholder{color:var(--ink-dim)}.input:focus{outline:none;border-color:var(--brand);box-shadow:inset 0 3px #00000040,0 0 0 3px var(--brand-soft)}.input-code{text-align:center;letter-spacing:.5em;padding-inline-start:.5em;font-weight:var(--fw-black);font-size:var(--fs-title);direction:ltr}.input-lg{min-height:calc(var(--tap) + 8px);font-size:var(--fs-head);font-weight:var(--fw-bold)}.input-search{padding-inline-start:var(--sp-8)}.search-wrap{position:relative}.search-wrap .icon{position:absolute;inset-inline-start:var(--sp-3);top:50%;transform:translateY(-50%);color:var(--ink-dim);pointer-events:none}.switch{position:relative;width:46px;height:28px;border-radius:var(--r-pill);background:var(--field);border:2px solid var(--outline);transition:background var(--dur-2) var(--ease);flex:none}.switch:after{content:"";position:absolute;top:2px;inset-inline-start:2px;width:22px;height:22px;border-radius:var(--r-pill);background:var(--ink);transition:transform var(--dur-2) var(--ease)}.switch.is-on{background:var(--tile-leaf)}.switch.is-on:after{background:var(--ink-on-dark);transform:translate(calc(18px * var(--dir-x, -1)))}.seg{display:flex;gap:2px;padding:3px;background:var(--field);border:2px solid var(--outline);border-radius:var(--r-md)}.seg-opt{flex:1;min-height:38px;padding-inline:var(--sp-2);border-radius:var(--r-sm);font-family:var(--font-display);font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--ink-dim);transition:background var(--dur-2) var(--ease),color var(--dur-2) var(--ease);white-space:nowrap}.seg-opt.is-active{background:linear-gradient(var(--surface-3),var(--surface-2));color:var(--ink-on-dark);box-shadow:inset 0 -3px #040e264d}.tabs{display:flex;gap:var(--sp-1);overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--line)}.tabs::-webkit-scrollbar{display:none}.tab{position:relative;min-height:var(--tap);padding-inline:var(--sp-3);color:var(--ink-muted);font-family:var(--font-display);font-size:var(--fs-body);font-weight:var(--fw-bold);white-space:nowrap}.tab.is-active{color:var(--ink)}.tab.is-active:after{content:"";position:absolute;inset-inline:var(--sp-2);bottom:-2px;height:4px;border-radius:var(--r-pill);background:var(--brand)}.meter{height:14px;border-radius:var(--r-pill);background:var(--field);border:2px solid var(--outline);overflow:hidden}.meter>i{display:block;height:100%;border-radius:inherit;background:linear-gradient(var(--brand-strong),var(--brand-deep));box-shadow:inset 0 -3px #040e262e;transition:width var(--dur-3) var(--ease)}.meter.is-thin{height:10px}.meter.is-danger>i{background:var(--danger)}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:var(--sp-2)}.stat{background:var(--panel-bg);border:var(--outline-w) solid var(--outline);border-radius:var(--r-md);box-shadow:var(--sh-edge-sm),var(--panel-gloss);padding:var(--sp-3);display:flex;flex-direction:column;gap:2px}.stat-v{font-family:var(--font-display);font-size:var(--fs-title);font-weight:var(--fw-black);line-height:var(--lh-flat);font-variant-numeric:tabular-nums}.stat-k{font-size:var(--fs-xs);color:var(--ink-muted)}.stat.is-brand .stat-v{color:var(--brand)}.state-box{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-3);padding:var(--sp-10) var(--sp-5);text-align:center;min-height:220px;flex:1}.state-art{width:112px;height:112px;max-width:45%;filter:drop-shadow(0 6px 0 rgba(4,14,38,.25))}.state-title{font-family:var(--font-display);font-size:var(--fs-title);font-weight:var(--fw-black);color:var(--ground-ink)}.state-text{color:var(--ground-muted);font-size:var(--fs-sm);max-width:34ch}:is(.panel,.card,.sheet,.dialog) .state-title{color:var(--ink)}:is(.panel,.card,.sheet,.dialog) .state-text{color:var(--ink-muted)}.spinner{width:30px;height:30px;border-radius:var(--r-pill);border:3px solid var(--surface-3);border-top-color:var(--brand);animation:spin .78s linear infinite}.skeleton{border-radius:var(--r-md);background:linear-gradient(90deg,var(--surface) 40%,var(--surface-3) 50%,var(--surface) 60%);background-size:200% 100%;animation:shimmer 1.4s linear infinite}.sk-line{height:12px}.sk-title{height:18px;width:55%}.sk-card{height:148px}.sk-tile{height:190px;width:172px;flex:none}.conn-badge{position:fixed;top:calc(var(--safe-t) + var(--sp-2));inset-inline:var(--sp-3);z-index:var(--z-toast);width:max-content;max-width:min(92vw,520px);margin-inline:auto;display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-pill);font-size:var(--fs-xs);line-height:var(--lh-flat);box-shadow:var(--sh-2);animation:rise var(--dur-2) var(--ease)}.conn-badge[hidden]{display:none}.conn-badge.is-busy{background:var(--surface-3);color:var(--ink)}.conn-badge.is-warn{background:var(--warn);color:var(--ink-on-warn)}.conn-badge.is-danger{background:var(--danger);color:var(--ink-on-danger)}.conn-badge.is-info{background:var(--brand);color:var(--ink-on-brand)}.conn-title{flex:none;font-weight:var(--fw-bold);white-space:nowrap}.conn-hint{min-width:0;opacity:.82;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conn-count{flex:none;opacity:.82;white-space:nowrap}.conn-retry{flex:none;min-height:28px;padding:0 var(--sp-3);border-radius:var(--r-pill);background:#0000002e;color:inherit;font-size:var(--fs-xs);font-weight:var(--fw-bold)}.conn-retry:active{background:#0000004d}.conn-spin{flex:none;width:13px;height:13px;border-radius:50%;border:2px solid currentColor;border-top-color:transparent;opacity:.9;animation:conn-spin .72s linear infinite}@keyframes conn-spin{to{transform:rotate(360deg)}}[data-motion=off] .conn-spin,[data-motion=off] .conn-badge{animation:none}@media (prefers-reduced-motion: reduce){.conn-spin,.conn-badge{animation:none}}@media (max-width: 380px){.conn-hint{display:none}}.toast-host{position:fixed;inset-inline:0;bottom:calc(var(--tabbar-h) + var(--safe-b) + var(--sp-3));z-index:var(--z-toast);display:flex;justify-content:center;padding-inline:var(--sp-4);pointer-events:none}.toast{max-width:460px;padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);background:var(--surface);color:var(--ink-on-dark);border:var(--outline-w) solid var(--outline);box-shadow:var(--sh-edge-sm),var(--sh-3);font-family:var(--font-display);font-size:var(--fs-body);font-weight:var(--fw-bold);line-height:var(--lh-tight);animation:rise var(--dur-2) var(--ease-pop)}.toast-ok{background:var(--tile-leaf-edge)}.toast-warn{background:var(--brand-deep)}.toast-danger{background:var(--tile-rose-edge)}.overlay{position:fixed;inset:0;z-index:var(--z-sheet);display:flex;align-items:flex-end;justify-content:center}.overlay .scrim{position:absolute;inset:0;background:var(--scrim);opacity:0;transition:opacity var(--dur-3) var(--ease);backdrop-filter:blur(2px)}.overlay.is-open .scrim{opacity:1}.sheet{position:relative;width:100%;max-width:var(--sheet-max);max-height:88dvh;display:flex;flex-direction:column;background:var(--panel-bg);border-radius:var(--r-xl) var(--r-xl) 0 0;border:var(--outline-w) solid var(--outline);border-bottom:0;box-shadow:var(--sh-4);transform:translateY(100%);transition:transform var(--dur-3) var(--ease);padding-bottom:var(--safe-b)}.overlay.is-open .sheet{transform:none}.overlay.is-closing .sheet{transform:translateY(100%)}.overlay.is-closing .scrim{opacity:0}.sheet-grip{width:44px;height:6px;border-radius:var(--r-pill);background:var(--surface-3);margin:var(--sp-2) auto 0;flex:none}.sheet-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4) var(--sp-2)}.sheet-title{font-family:var(--font-display);font-size:var(--fs-title);font-weight:var(--fw-black);line-height:var(--lh-flat)}.sheet-sub{font-size:var(--fs-sm);color:var(--ink-muted)}.sheet-body{padding:0 var(--sp-4) var(--sp-5);overflow-y:auto;display:flex;flex-direction:column;gap:var(--sp-3);-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.dialog{position:relative;width:calc(100% - var(--sp-8));max-width:420px;margin:auto;padding:var(--sp-5);background:var(--panel-bg);border:var(--outline-w) solid var(--outline);border-radius:var(--r-xl);box-shadow:var(--sh-edge),var(--sh-4);display:flex;flex-direction:column;gap:var(--sp-3);animation:pop var(--dur-2) var(--ease-pop)}.overlay.is-dialog{align-items:center}.dialog-title{font-family:var(--font-display);font-size:var(--fs-title);font-weight:var(--fw-black);line-height:var(--lh-flat);text-align:center}.dialog-body{color:var(--ink-muted);font-size:var(--fs-sm);text-align:center}.dialog-actions{display:flex;gap:var(--sp-2);margin-block-start:var(--sp-2)}.dialog-actions>.btn{flex:1}.ad-card{position:relative;display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-3);background:var(--surface-2);border:1px dashed var(--line-strong);border-radius:var(--r-lg);overflow:hidden}.ad-card.ad-game{cursor:pointer}.ad-card.ad-game:active{background:var(--surface-3)}.ad-label{position:absolute;inset-block-start:var(--sp-2);inset-inline-end:var(--sp-2);z-index:2;padding:2px var(--sp-2);font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--ink-invert);background:var(--ink-muted);border-radius:var(--r-sm)}.ad-body{display:flex;align-items:center;gap:var(--sp-3)}.ad-title{font-size:var(--fs-body);font-weight:var(--fw-bold)}.ad-sub{font-size:var(--fs-sm);color:var(--ink-muted)}.ad-icon{display:grid;place-items:center;inline-size:46px;block-size:46px;color:var(--brand);background:var(--brand-soft);border-radius:var(--r-md);flex:none}.ad-plus{border-color:var(--line-accent)}.ad-art{position:relative;aspect-ratio:16 / 9;border-radius:var(--r-md);overflow:hidden;background:var(--surface-3)}.ad-art>*{inline-size:100%;block-size:100%;object-fit:cover}.ad-dialog{display:flex;flex-direction:column;gap:var(--sp-3);inline-size:min(94vw,420px)}.ad-note{text-align:center}.ad-slot{min-block-size:180px;display:grid}.ad-close{align-self:stretch}.ad-close[disabled]{color:var(--disabled-ink);background:var(--disabled-bg);cursor:default}.game-card{display:flex;flex-direction:column;text-align:start;color:inherit;background:var(--panel-bg);border:var(--outline-w) solid var(--outline);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-edge),var(--panel-gloss);transition:transform var(--dur-1) var(--ease),box-shadow var(--dur-1) var(--ease)}.game-card:hover{filter:brightness(1.05)}.game-card:active{transform:translateY(var(--edge-sm));box-shadow:var(--sh-edge-sm),var(--panel-gloss)}.gc-tile{width:172px;flex:none}.gc-row{width:100%;flex-direction:row}.gc-row .gc-cover{width:116px;flex:none}.gc-cover{position:relative;aspect-ratio:16 / 10;background:var(--surface-2);overflow:hidden;border-block-end:var(--outline-w) solid var(--outline)}.gc-row .gc-cover{border-block-end:0;border-inline-end:var(--outline-w) solid var(--outline)}.gc-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(4,14,38,.6),transparent 50%)}.gc-art,.gc-art svg,.gc-photo{width:100%;height:100%;display:block;object-fit:cover}.gc-type{width:100%;height:100%;display:grid;place-items:center;padding:var(--sp-3);background:radial-gradient(120% 90% at 18% 12%,color-mix(in srgb,var(--a) 55%,transparent),transparent 70%),radial-gradient(120% 90% at 84% 88%,color-mix(in srgb,var(--b) 45%,transparent),transparent 70%),var(--surface-2)}.gc-type-name{font-family:var(--font-display);font-weight:var(--fw-black);font-size:var(--fs-title);line-height:1.15;text-align:center;color:var(--ink);text-wrap:balance}.gc-row .gc-type-name{font-size:var(--fs-body)}.gc-online{position:absolute;bottom:var(--sp-2);inset-inline-start:var(--sp-2);z-index:1;display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-xs);font-weight:var(--fw-bold);color:var(--ink-on-dark)}.gc-online:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--ok)}.gc-body{padding:var(--sp-3);display:flex;flex-direction:column;gap:var(--sp-1);flex:1;min-width:0}.gc-name{font-family:var(--font-display);font-size:var(--fs-head);font-weight:var(--fw-black);line-height:var(--lh-flat)}.gc-tag{font-size:var(--fs-sm);color:var(--ink-muted);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.gc-meta{display:flex;gap:var(--sp-3);font-size:var(--fs-xs);color:var(--ink-dim);margin-block-start:auto}.gc-meta span{display:inline-flex;align-items:center;gap:3px}.hud .appbar-title{text-align:start}.hud-avatar{position:relative}.hud-level{position:absolute;inset-block-end:-4px;inset-inline-start:-4px;min-inline-size:22px;block-size:22px;padding-inline:4px;display:grid;place-items:center;border-radius:var(--r-pill);border:2px solid var(--outline);background:var(--tile-plum);font-family:var(--font-display);font-size:var(--fs-xs);font-weight:var(--fw-black);line-height:1;color:var(--ink-on-dark)}.hud-info{display:flex;flex-direction:column;gap:3px;min-width:0}.hud-name{font-family:var(--font-display);font-size:var(--fs-body);font-weight:var(--fw-black);line-height:var(--lh-flat);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hud-xp{position:relative;height:18px;max-inline-size:180px}.hud-xp>i{background:linear-gradient(var(--tile-leaf),var(--tile-leaf-edge))}.hud-xp-text{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--font-display);font-size:var(--fs-xs);font-weight:var(--fw-black);line-height:1;color:var(--ink-on-dark);-webkit-text-stroke:.2em var(--stroke);paint-order:stroke fill;direction:ltr}.ad-card{display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-3);border-radius:var(--r-lg);border:var(--outline-w) dashed var(--line-strong);background:var(--surface)}.ad-card-top{display:flex;align-items:center;gap:var(--sp-3)}.ad-card-art{inline-size:88px;aspect-ratio:4 / 3;flex:none;display:grid;place-items:center;border-radius:var(--r-sm);border:2px solid var(--outline);overflow:hidden;background:var(--surface-2)}.ad-card-art>img:not(.ui-art){width:100%;height:100%;object-fit:cover}.ad-card-copy{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:2px}.ad-card-copy .ad-label{position:static}.ad-card-name{font-family:var(--font-display);font-size:var(--fs-head);font-weight:var(--fw-black);line-height:var(--lh-flat)}.ad-card-tag{font-size:var(--fs-xs);color:var(--ink-muted);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.ad-card-actions{display:flex;gap:var(--sp-2);padding-block-end:4px}.ad-card-actions>.btn{flex:1}.pager{display:flex;align-items:center;justify-content:center;gap:var(--sp-3);padding-block:var(--sp-3)}.pager-at{color:var(--ink-muted);font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.arena{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2)}.arena-plaque{position:relative;z-index:2;display:flex;align-items:center;gap:var(--sp-2);margin-block-end:-26px;padding:var(--sp-1) var(--sp-5);border-radius:var(--r-lg);border:var(--outline-w) solid var(--outline);background:linear-gradient(var(--tile-sky) 0 50%,var(--tile-sky-edge) 50%);box-shadow:var(--sh-edge-sm),var(--panel-gloss);max-inline-size:calc(100% - 96px)}.arena-name{font-size:var(--fs-display);font-weight:var(--fw-black);line-height:1.3;color:var(--ink-on-dark);-webkit-text-stroke:.2em var(--stroke);paint-order:stroke fill;text-shadow:var(--text-3d);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.arena-count{flex:none;padding:0 var(--sp-2);border-radius:var(--r-pill);background:var(--outline);color:var(--ink-on-dark);font-size:var(--fs-xs);font-weight:var(--fw-bold);font-variant-numeric:tabular-nums}.arena-stage{position:relative;align-self:stretch}.arena-track{display:grid;grid-auto-flow:column;grid-auto-columns:100%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;border-radius:var(--r-xl);border:4px solid var(--outline);box-shadow:0 7px 0 var(--outline),var(--sh-3);background:var(--surface)}.arena-track::-webkit-scrollbar{display:none}.arena-slide{position:relative;scroll-snap-align:center;aspect-ratio:4 / 3;color:inherit;overflow:hidden}.arena-slide:after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 0 3px #ffffff47;background:linear-gradient(to top,rgba(8,26,68,.78),transparent 34%)}.arena-art{position:absolute;inset:0}.arena-art>*{width:100%;height:100%;display:block;object-fit:cover}.arena-facts{position:absolute;z-index:1;inset-inline:var(--sp-3);inset-block-end:var(--sp-3);display:flex;flex-wrap:wrap;gap:var(--sp-2)}.arena-fact{display:inline-flex;align-items:center;gap:4px;padding:2px var(--sp-2);border-radius:var(--r-pill);border:2px solid var(--outline);background:#081a44d1;color:var(--ink-on-dark);font-size:var(--fs-xs);font-weight:var(--fw-bold)}.arena-fact.is-live{background:var(--tile-leaf-edge);font-family:var(--font-display)}.arena-arrow{position:absolute;z-index:2;inset-block-start:calc(50% - 24px);inline-size:48px;block-size:48px;display:grid;place-items:center;border-radius:var(--r-pill);border:var(--outline-w) solid var(--outline);background:linear-gradient(var(--paper) 0 50%,var(--paper-2) 50%);color:var(--paper-ink);box-shadow:0 4px 0 var(--outline);transition:transform var(--dur-1) var(--ease),opacity var(--dur-2) var(--ease)}.arena-arrow:first-of-type{inset-inline-start:-10px}.arena-arrow:last-of-type{inset-inline-end:-10px}.arena-arrow:active{transform:translateY(3px);box-shadow:0 1px 0 var(--outline)}.arena-arrow:disabled{opacity:0;pointer-events:none}.arena-tag{margin-block-start:var(--sp-2);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--ground-ink);text-align:center;text-wrap:balance}.battle{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2)}.btn-play{width:min(100%,340px);min-height:68px;border-width:4px;border-radius:var(--r-lg);font-size:var(--fs-hero);--edge: 7px}.battle-note{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--ground-muted)}.slots{align-self:stretch;display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-2);margin-block-start:var(--sp-2);padding-block-end:var(--edge)}.slot{--tile: var(--tile-sky);--tile-lo: var(--tile-sky-edge);display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:2px;aspect-ratio:1;padding:var(--sp-1) 2px var(--sp-2);border-radius:var(--r-md);border:var(--outline-w) solid var(--outline);background:radial-gradient(90% 80% at 50% 10%,rgba(255,255,255,.32),transparent 62%),var(--tile);box-shadow:var(--sh-edge),inset 0 -5px 0 var(--tile-lo);color:var(--ink-on-dark);transition:transform var(--dur-1) var(--ease),box-shadow var(--dur-1) var(--ease)}.slot:active{transform:translateY(var(--edge-sm));box-shadow:var(--sh-edge-sm),inset 0 -5px 0 var(--tile-lo)}.slot.is-leaf{--tile: var(--tile-leaf);--tile-lo: var(--tile-leaf-edge)}.slot.is-plum{--tile: var(--tile-plum);--tile-lo: var(--tile-plum-edge)}.slot.is-sun{--tile: var(--tile-sun);--tile-lo: var(--tile-sun-edge)}.slot-art{width:40px;height:40px;flex:1 1 auto;min-height:0;object-fit:contain;filter:drop-shadow(0 3px 0 rgba(4,14,38,.25))}.slot-label{font-family:var(--font-display);font-size:var(--fs-xs);font-weight:var(--fw-black);line-height:var(--lh-flat);text-align:center;white-space:nowrap;-webkit-text-stroke:.22em var(--stroke);paint-order:stroke fill;text-shadow:var(--text-3d)}.home-ad:empty{display:none}.ng{display:flex;flex-direction:column;gap:var(--sp-3);padding-block-end:var(--edge)}.ng-games{display:flex;gap:var(--sp-2);overflow-x:auto;scrollbar-width:none;margin-inline:calc(var(--sp-4) * -1);padding:var(--sp-1) var(--sp-4) var(--sp-2)}.ng-games::-webkit-scrollbar{display:none}.ng-game{flex:none;inline-size:104px;display:flex;flex-direction:column;gap:var(--sp-1);color:var(--ink-muted);text-align:center}.ng-game-cover{aspect-ratio:16 / 11;border-radius:var(--r-md);border:var(--outline-w) solid var(--outline);overflow:hidden;background:var(--surface-2);transition:box-shadow var(--dur-1) var(--ease),transform var(--dur-1) var(--ease)}.ng-game-cover>*{width:100%;height:100%;object-fit:cover;display:block}.ng-game-name{font-family:var(--font-display);font-size:var(--fs-xs);font-weight:var(--fw-bold);line-height:var(--lh-tight);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ng-game:not(.is-on) .ng-game-cover{filter:saturate(.55) brightness(.8)}.ng-game.is-on{color:var(--ink)}.ng-game.is-on .ng-game-cover{box-shadow:0 0 0 3px var(--brand),0 4px 0 3px var(--outline);transform:translateY(-2px)}.ng-meta{font-size:var(--fs-sm);color:var(--ink-muted);text-align:center}.ng-start{min-height:60px;font-size:var(--fs-title)}.ng-modes{display:flex;flex-direction:column;gap:var(--sp-2)}.ng-mode{--tile: var(--tile-sky);display:flex;align-items:center;gap:var(--sp-3);inline-size:100%;min-height:60px;padding:var(--sp-2) var(--sp-3);border-radius:var(--r-md);border:var(--outline-w) solid var(--outline);background:linear-gradient(var(--surface-3) 0 50%,var(--surface-2) 50%);box-shadow:var(--sh-edge-sm),var(--panel-gloss);color:var(--ink);text-align:start;transition:transform var(--dur-1) var(--ease),box-shadow var(--dur-1) var(--ease),filter var(--dur-1) var(--ease)}.ng-mode:hover{filter:brightness(1.08)}.ng-mode:active{transform:translateY(2px);box-shadow:0 1px 0 var(--outline)}.ng-mode.is-leaf{--tile: var(--tile-leaf)}.ng-mode.is-plum{--tile: var(--tile-plum)}.ng-mode.is-sun{--tile: var(--tile-sun)}.ng-mode-art{inline-size:44px;block-size:44px;flex:none;display:grid;place-items:center;border-radius:var(--r-sm);border:2px solid var(--outline);background:var(--tile)}.ng-mode-main{flex:1;min-width:0;display:flex;flex-direction:column}.ng-mode-main b{font-family:var(--font-display);font-size:var(--fs-head);font-weight:var(--fw-black);line-height:var(--lh-flat)}.ng-mode-main span{font-size:var(--fs-xs);color:var(--ink-muted)}.ng-mode .icon{color:var(--ink-dim);flex:none}.join-row{display:flex;gap:var(--sp-2);padding-block-end:var(--edge)}.join-row .input{flex:1;min-width:110px;min-height:var(--tap-lg)}.quest-panel{display:flex;flex-direction:column;padding:var(--sp-1) var(--sp-4);border-radius:var(--r-lg);border:var(--outline-w) solid var(--outline);background:var(--paper);color:var(--paper-ink);box-shadow:var(--sh-edge),var(--panel-gloss)}.quest{display:flex;align-items:center;gap:var(--sp-3);padding-block:var(--sp-3)}.quest+.quest{border-top:2px dashed rgba(11,35,87,.16)}.quest-ic{width:44px;height:44px;flex:none;border-radius:var(--r-sm);display:grid;place-items:center;background:var(--paper-2);border:2px solid rgba(11,35,87,.18)}.quest-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--sp-1)}.quest-title{font-family:var(--font-display);font-weight:var(--fw-black);font-size:var(--fs-body);line-height:var(--lh-flat)}.quest-bar{display:flex;align-items:center;gap:var(--sp-2)}.quest-bar .meter{flex:1;height:16px;background:var(--paper-2)}.quest-count{font-size:var(--fs-xs);font-weight:var(--fw-bold);color:var(--paper-muted);font-variant-numeric:tabular-nums}.quest-reward{flex:none;padding:2px var(--sp-2);border-radius:var(--r-pill);border:2px solid var(--outline);background:var(--tile-plum);color:var(--ink-on-dark);font-family:var(--font-display);font-size:var(--fs-xs);font-weight:var(--fw-black);white-space:nowrap}.quest.is-done .quest-title{color:var(--paper-muted)}.quest.is-done .meter>i{background:linear-gradient(var(--tile-leaf),var(--tile-leaf-edge))}.quest.is-done .quest-reward{background:var(--tile-leaf-edge)}.outcome-dot{width:12px;height:12px;border-radius:var(--r-pill);flex:none;background:var(--ink-dim);border:2px solid var(--outline)}.outcome-dot.is-win{background:var(--ok)}.outcome-dot.is-lose{background:var(--danger)}.outcome-dot.is-draw{background:var(--warn)}.card-grid{display:flex;flex-direction:column;gap:var(--sp-3)}.filter-row{display:flex;gap:var(--sp-2);overflow-x:auto;scrollbar-width:none;padding-block:2px}.filter-row::-webkit-scrollbar{display:none}.filter-row .chip{min-height:34px;padding-inline:var(--sp-3);flex:none}.num-row{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.num-row .chip{inline-size:var(--tap);block-size:var(--tap);padding:0;justify-content:center;font-size:var(--fs-sm)}.screen-detail .screen-body{gap:var(--sp-5)}.dt-bar.is-top .appbar-title{opacity:0}.dt-bar.is-top .appbar-lead{border-radius:var(--r-pill);background:#081a448c;color:var(--ink-on-dark)}.dt-hero{position:relative;margin-block-start:calc(var(--sp-4) * -1 - var(--appbar-h) - var(--safe-t));border-block-end:var(--outline-w) solid var(--outline);background:var(--surface-2);overflow:hidden}.detail-art,.detail-art svg,.detail-art img{width:100%;height:auto;display:block;aspect-ratio:16 / 10;object-fit:cover}.dt-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(8,26,68,.55) 0%,transparent 45%);pointer-events:none}.dt-head{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);margin-block-start:calc(var(--sp-5) * -1 - 26px);position:relative;z-index:1;text-align:center}.dt-plaque{max-inline-size:100%;padding:var(--sp-1) var(--sp-5);border-radius:var(--r-lg);border:var(--outline-w) solid var(--outline);background:linear-gradient(var(--tile-sky) 0 50%,var(--tile-sky-edge) 50%);box-shadow:var(--sh-edge-sm),var(--panel-gloss)}.dt-name{font-family:var(--font-display);font-size:var(--fs-display);font-weight:var(--fw-black);line-height:1.3;color:var(--ink-on-dark);-webkit-text-stroke:.2em var(--stroke);paint-order:stroke fill;text-shadow:var(--text-3d);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dt-tagline{color:var(--ground-ink);font-weight:var(--fw-bold);text-wrap:balance}.dt-live{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--sp-2)}.dt-live-chip{display:inline-flex;align-items:center;gap:var(--sp-1);padding:2px var(--sp-3);border-radius:var(--r-pill);border:2px solid var(--outline);background:var(--field);color:var(--field-ink);font-size:var(--fs-xs);font-weight:var(--fw-bold)}.dt-live-chip.is-on:before{content:"";inline-size:8px;block-size:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 2px var(--ok-soft)}.dt-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-2)}.dt-stat{--tile: var(--tile-sky);--tile-lo: var(--tile-sky-edge);display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--sp-2) var(--sp-1) var(--sp-3);border-radius:var(--r-lg);border:var(--outline-w) solid var(--outline);background:linear-gradient(var(--tile) 0 58%,var(--tile-lo) 58%);box-shadow:var(--sh-edge-sm),inset 0 2px #ffffff4d;color:var(--ink-on-dark);text-align:center}.dt-stat.is-sun{--tile: var(--tile-sun);--tile-lo: var(--tile-sun-edge)}.dt-stat.is-leaf{--tile: var(--tile-leaf);--tile-lo: var(--tile-leaf-edge)}.dt-stat-art{filter:drop-shadow(0 3px 0 rgba(4,14,38,.3))}.dt-stat-v,.dt-stat-k{-webkit-text-stroke:.2em var(--stroke);paint-order:stroke fill;text-shadow:var(--text-3d)}.dt-stat-v{font-family:var(--font-display);font-size:var(--fs-title);font-weight:var(--fw-black);line-height:var(--lh-flat)}.dt-stat-k{font-size:var(--fs-xs);font-weight:var(--fw-bold)}.dt-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-2)}.dt-link{display:flex;flex-direction:column;align-items:center;gap:var(--sp-1);padding:var(--sp-3) var(--sp-1);border-radius:var(--r-lg);border:var(--outline-w) solid var(--outline);background:var(--panel-bg);box-shadow:var(--sh-edge-sm),var(--panel-gloss);color:var(--ink-on-dark);transition:transform var(--dur-1) var(--ease)}.dt-link:active{transform:translateY(2px)}.dt-link-art{filter:drop-shadow(0 3px 0 rgba(4,14,38,.35))}.dt-link-label{font-family:var(--font-display);font-size:var(--fs-sm);font-weight:var(--fw-black)}.detail-desc{color:var(--ink);font-size:var(--fs-body);line-height:var(--lh-body)}.dt-actions{display:grid;grid-template-columns:72px minmax(0,1fr) 72px;align-items:end;gap:var(--sp-2)}.dt-actions.is-pair{grid-template-columns:minmax(0,1fr) 72px}.sticky-actions>.dt-play{width:100%;min-height:72px}.pitch-box{padding:var(--sp-4);border-radius:var(--r-lg);background:var(--panel-bg);border:var(--outline-w) solid var(--outline);box-shadow:var(--sh-edge-sm),var(--panel-gloss);font-size:var(--fs-sm);line-height:var(--lh-body)}.rules-list{display:flex;flex-direction:column;gap:var(--sp-2)}.tut-list{display:flex;flex-direction:column;gap:var(--sp-3)}.tut-step{display:flex;gap:var(--sp-3)}.tut-num{width:28px;height:28px;flex:none;border-radius:var(--r-pill);display:grid;place-items:center;background:var(--brand);color:var(--brand-ink);font-weight:var(--fw-bold);font-size:var(--fs-sm)}.tut-body{font-size:var(--fs-sm);color:var(--ink-muted)}.legal-note{font-size:var(--fs-xs);color:var(--ink-dim);padding:var(--sp-3);border:1px dashed var(--line-strong);border-radius:var(--r-md)}.code-card{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);padding:var(--sp-4);padding-block-end:calc(var(--sp-4) + var(--edge));border-radius:var(--r-xl);border:var(--outline-w) solid var(--outline);background:radial-gradient(120% 90% at 50% 0%,var(--surface-3),var(--surface) 70%);box-shadow:var(--sh-edge),var(--panel-gloss);text-align:center}.code-label{font-family:var(--font-display);font-weight:var(--fw-black);color:var(--ink-muted)}.code-ticket{display:flex;gap:var(--sp-2);padding-block:var(--sp-1)}.code-char{inline-size:56px;aspect-ratio:4 / 5;display:grid;place-items:center;border-radius:var(--r-md);border:var(--outline-w) solid var(--outline);background:linear-gradient(var(--paper) 0 50%,var(--paper-2) 50%);box-shadow:0 4px 0 var(--outline);color:var(--paper-ink);font-family:var(--font-display);font-size:var(--fs-hero);font-weight:var(--fw-black);line-height:1;transition:transform var(--dur-1) var(--ease)}.code-ticket:active .code-char{transform:translateY(2px)}.code-hint{font-size:var(--fs-xs);color:var(--ink-dim)}.code-card .btn{margin-block-start:var(--sp-2)}.code-value{font-family:var(--font-display);font-size:var(--fs-display);font-weight:var(--fw-black);letter-spacing:.08em;direction:ltr;color:var(--brand)}.seat-list{display:flex;flex-direction:column;gap:var(--sp-3)}.seat{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3);border-radius:var(--r-lg);background:var(--panel-bg);border:var(--outline-w) solid var(--outline);box-shadow:var(--sh-edge-sm),var(--panel-gloss)}.seat.is-me{background:linear-gradient(var(--surface-3),var(--surface-2))}.seat b{font-family:var(--font-display);font-weight:var(--fw-black)}.seat-face{position:relative;flex:none}.seat-face .avatar,.seat-face .seat-avatar{box-shadow:0 0 0 2px var(--outline),0 0 0 5px var(--line-strong)}.seat.is-empty{border-style:dashed;border-color:var(--line-strong);background:transparent;box-shadow:none}.seat.is-add{inline-size:100%;color:inherit;text-align:start;background:#081a444d;border:var(--outline-w) dashed var(--line-strong);box-shadow:none;transition:background var(--dur-1) var(--ease),border-color var(--dur-2) var(--ease),transform var(--dur-1) var(--ease)}.seat.is-add:hover{background:#081a4473;border-color:var(--brand)}.seat.is-add:active{transform:scale(.99)}.seat-avatar.is-add{background:linear-gradient(var(--brand) 0 50%,var(--brand-deep) 50%);color:var(--ink-on-dark);box-shadow:0 0 0 2px var(--outline)}.seat-avatar{width:40px;height:40px;flex:none;border-radius:var(--r-pill);display:grid;place-items:center;background:var(--surface-2);color:var(--ink-muted)}.seat-dot{width:12px;height:12px;border-radius:var(--r-pill);flex:none;border:2px solid var(--outline)}.player-card{display:flex;flex-direction:column;align-items:center;gap:var(--sp-3);padding-block-end:var(--sp-4);border-radius:var(--r-xl);border:var(--outline-w) solid var(--outline);background:var(--panel-bg);box-shadow:var(--sh-edge),var(--panel-gloss);overflow:hidden;text-align:center}.player-card.is-loading{padding:var(--sp-5);align-items:stretch}.player-banner{align-self:stretch;block-size:96px;background:radial-gradient(120% 140% at 85% 0%,rgba(255,255,255,.35),transparent 55%),linear-gradient(120deg,var(--tile-sky),var(--tile-plum));border-block-end:var(--outline-w) solid var(--outline)}.player-face{position:relative;margin-block-start:-64px}.player-face .avatar{--size: 108px;box-shadow:0 0 0 4px var(--outline),0 6px 0 4px var(--outline)}.player-face .avatar.is-plus{box-shadow:0 0 0 4px var(--outline),0 0 0 7px var(--brand),0 6px 0 7px var(--outline)}.player-level{position:absolute;inset-block-end:-2px;inset-inline-start:-6px;min-inline-size:36px;block-size:36px;padding-inline:6px;display:grid;place-items:center;border-radius:var(--r-pill);border:var(--outline-w) solid var(--outline);background:linear-gradient(var(--tile-plum) 0 50%,var(--tile-plum-edge) 50%);font-family:var(--font-display);font-size:var(--fs-head);font-weight:var(--fw-black);line-height:1;color:var(--ink-on-dark);-webkit-text-stroke:.18em var(--stroke);paint-order:stroke fill;text-shadow:var(--text-3d)}.player-id{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);padding-inline:var(--sp-4);min-width:0;max-inline-size:100%}.player-name-row{display:flex;align-items:center;justify-content:center;gap:var(--sp-1);min-width:0;max-inline-size:100%}.player-name-row:before{content:"";inline-size:var(--tap);flex:none}.player-name{font-size:var(--fs-display);font-weight:var(--fw-black);line-height:var(--lh-flat);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-rename{color:var(--ink-dim)}.player-tags{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--sp-2)}.player-tag{display:inline-flex;align-items:center;gap:5px;block-size:30px;padding-inline:var(--sp-3);border-radius:var(--r-pill);border:2px solid var(--outline);background:var(--field);color:var(--ink-on-dark);font-family:var(--font-display);font-size:var(--fs-sm);font-weight:var(--fw-bold);line-height:1;white-space:nowrap}.player-tag .icon{width:14px;height:14px}.player-tag.is-code{font-family:var(--font);font-variant-numeric:tabular-nums;letter-spacing:.04em}.player-tag.is-code .icon{color:var(--ink-dim)}.player-tag.is-plus{background:linear-gradient(var(--brand) 0 50%,var(--brand-deep) 50%);-webkit-text-stroke:.2em var(--stroke);paint-order:stroke fill;text-shadow:var(--text-3d)}.player-tag.is-linked{background:var(--tile-leaf-edge)}.player-tag.is-guest,.player-tag.is-guest .icon{color:var(--brand)}button.player-tag{transition:transform var(--dur-1) var(--ease),filter var(--dur-1) var(--ease)}button.player-tag:hover{filter:brightness(1.15)}button.player-tag:active{transform:translateY(1px)}.player-xp{align-self:stretch;display:flex;flex-direction:column;gap:var(--sp-1);padding-inline:var(--sp-4)}.player-xp-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-3)}.player-xp-head b{font-family:var(--font-display);font-weight:var(--fw-black)}.player-xp-head span{font-size:var(--fs-xs);color:var(--ink-muted)}.player-xp .meter>i{background:linear-gradient(var(--tile-leaf),var(--tile-leaf-edge))}.profile-tabs{position:sticky;top:calc(var(--appbar-h) + var(--safe-t) + var(--sp-2));z-index:2;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:var(--sp-1);padding:4px;border-radius:var(--r-lg);border:var(--outline-w) solid var(--outline);background:var(--field);box-shadow:var(--sh-2)}.profile-tab{min-height:40px;padding-inline:var(--sp-1);border-radius:var(--r-md);color:var(--ink-dim);font-family:var(--font-display);font-size:var(--fs-sm);font-weight:var(--fw-black);white-space:nowrap;transition:color var(--dur-2) var(--ease)}.profile-tab:hover{color:var(--ink-on-dark)}.profile-tab.is-active{color:var(--ink-on-dark);background:linear-gradient(var(--brand) 0 50%,var(--brand-deep) 50%);box-shadow:inset 0 0 0 2px var(--outline);-webkit-text-stroke:.2em var(--stroke);paint-order:stroke fill;text-shadow:var(--text-3d)}.profile-panel{display:flex;flex-direction:column;gap:var(--sp-6)}.profile-panel.is-entering{animation:panel-in var(--dur-2) var(--ease)}@keyframes panel-in{0%{opacity:0;transform:translateY(6px)}}[data-motion=off] .profile-panel.is-entering{animation:none}.stat-cards{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-3)}.stat-card{--tile: var(--tile-sky);--tile-lo: var(--tile-sky-edge);position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:var(--sp-3) var(--sp-4) var(--sp-4);border-radius:var(--r-lg);border:var(--outline-w) solid var(--outline);background:radial-gradient(90% 90% at 75% 0%,rgba(255,255,255,.28),transparent 60%),var(--tile);box-shadow:var(--sh-edge),inset 0 -5px 0 var(--tile-lo);color:var(--ink-on-dark);overflow:hidden}.stat-card.is-sun{--tile: var(--tile-sun);--tile-lo: var(--tile-sun-edge)}.stat-card.is-rose{--tile: var(--tile-rose);--tile-lo: var(--tile-rose-edge)}.stat-card.is-plum{--tile: var(--tile-plum);--tile-lo: var(--tile-plum-edge)}.stat-card-art{position:absolute;inset-block-start:var(--sp-2);inset-inline-end:var(--sp-2);width:40px;height:40px;transform:rotate(8deg);filter:drop-shadow(0 3px 0 rgba(4,14,38,.25))}.stat-card-v,.stat-card-k{-webkit-text-stroke:.2em var(--stroke);paint-order:stroke fill;text-shadow:var(--text-3d)}.stat-card-v{font-family:var(--font-display);font-size:var(--fs-hero);font-weight:var(--fw-black);line-height:1.15;font-variant-numeric:tabular-nums}.stat-card-k{font-family:var(--font-display);font-size:var(--fs-sm);font-weight:var(--fw-bold)}.rating-card{flex-direction:row;align-items:center;gap:var(--sp-3);cursor:pointer;text-align:start}.rating-card b{font-family:var(--font-display);font-weight:var(--fw-black)}.rating-card:active{transform:translateY(var(--edge-sm));box-shadow:var(--sh-edge-sm),var(--panel-gloss)}.plus-banner{display:flex;align-items:center;gap:var(--sp-3);inline-size:100%;padding:var(--sp-3) var(--sp-4);border-radius:var(--r-lg);border:var(--outline-w) solid var(--outline);background:linear-gradient(var(--brand) 0 50%,var(--brand-deep) 50%);box-shadow:var(--sh-edge),var(--panel-gloss);color:var(--ink-on-dark);text-align:start;transition:transform var(--dur-1) var(--ease),box-shadow var(--dur-1) var(--ease)}.plus-banner:hover{filter:brightness(1.06)}.plus-banner:active{transform:translateY(var(--edge-sm));box-shadow:var(--sh-edge-sm),var(--panel-gloss)}.plus-banner-art{width:44px;height:44px;flex:none;filter:drop-shadow(0 3px 0 rgba(4,14,38,.25))}.plus-banner-main{flex:1;min-width:0;display:flex;flex-direction:column}.plus-banner-main,.plus-banner .icon{-webkit-text-stroke:.2em var(--stroke);paint-order:stroke fill;text-shadow:var(--text-3d)}.plus-banner-main b{font-family:var(--font-display);font-size:var(--fs-head);font-weight:var(--fw-black);line-height:var(--lh-flat)}.plus-banner-main span{font-family:var(--font-display);font-size:var(--fs-sm);font-weight:var(--fw-bold)}.plus-banner .icon{filter:drop-shadow(0 2px 0 var(--outline))}.account-card{display:flex;align-items:center;flex-wrap:wrap;gap:var(--sp-3);padding:var(--sp-4);border-radius:var(--r-lg);border:var(--outline-w) solid var(--outline);background:var(--panel-bg);box-shadow:var(--sh-edge),var(--panel-gloss)}.account-card-art{width:44px;height:44px;flex:none}.account-card-main{flex:1 1 180px;min-width:0;display:flex;flex-direction:column;gap:2px}.account-card-main b{font-family:var(--font-display);font-weight:var(--fw-black);line-height:var(--lh-tight)}.account-card-main span{font-size:var(--fs-sm);color:var(--ink-muted)}.account-card .btn{flex:none}.account-perks{display:flex;flex-direction:column;gap:var(--sp-2);font-size:var(--fs-sm);color:var(--ink-muted)}.account-perks li{display:flex;gap:var(--sp-2)}.account-perks li:before{content:"\2713";color:var(--ok);font-weight:var(--fw-bold)}.settings{display:flex;flex-direction:column;gap:var(--sp-6)}.avatar-edit{position:relative;flex:none;border-radius:var(--r-pill);color:inherit}.avatar-edit:focus-visible{outline:3px solid var(--brand);outline-offset:5px}.avatar-edit-badge{position:absolute;inset-block-end:2px;inset-inline-end:-2px;width:32px;height:32px;border-radius:var(--r-pill);display:grid;place-items:center;background:linear-gradient(var(--brand) 0 50%,var(--brand-deep) 50%);color:var(--ink-on-dark);border:var(--outline-w) solid var(--outline)}.kv{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3)}.kv .meter{flex:1}.sub-card{display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-4);border-radius:var(--r-lg);background:var(--panel-bg);border:var(--outline-w) solid var(--outline);box-shadow:var(--sh-edge),var(--panel-gloss)}.sub-card.is-paid{box-shadow:var(--sh-edge),0 0 0 3px var(--brand)}.sub-head{display:flex;align-items:center;gap:var(--sp-3)}.sub-head-main{flex:1;min-width:0;display:flex;flex-direction:column}.sub-head-main b{font-family:var(--font-display);font-size:var(--fs-title);font-weight:var(--fw-black);line-height:var(--lh-flat)}.sub-head-main span{font-size:var(--fs-xs);color:var(--ink-dim)}.sub-perks{padding:0;box-shadow:none}.sub-perk{padding-block:var(--sp-2)}.sub-perk .icon{color:var(--brand)}.sub-actions{display:flex;flex-direction:column;gap:var(--sp-3);padding-block-end:var(--edge)}.ach-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--sp-3)}.ach-rail{display:flex;gap:var(--sp-3);overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;padding-inline:var(--sp-4);padding-block-end:var(--edge);scroll-padding-inline:var(--sp-4)}.ach-rail::-webkit-scrollbar{display:none}.ach-rail>.ach{flex:none;inline-size:136px;scroll-snap-align:start}.ach{display:flex;flex-direction:column;align-items:center;gap:var(--sp-1);padding:var(--sp-3);border-radius:var(--r-lg);background:var(--panel-bg);border:var(--outline-w) solid var(--outline);box-shadow:var(--sh-edge-sm),var(--panel-gloss);text-align:center}.ach svg{width:56px;height:56px}.ach:not(.is-on) svg{filter:grayscale(.85);opacity:.55}.ach-title{font-family:var(--font-display);font-size:var(--fs-sm);font-weight:var(--fw-black);line-height:var(--lh-tight)}.ach-desc{font-size:var(--fs-xs);color:var(--ink-muted);min-height:2.6em}.ach-done{display:inline-flex;align-items:center;gap:4px;padding:2px var(--sp-2);border-radius:var(--r-pill);border:2px solid var(--outline);background:var(--tile-leaf-edge);font-family:var(--font-display);font-size:var(--fs-xs);font-weight:var(--fw-bold)}.ach-meter{display:flex;align-items:center;gap:var(--sp-2);width:100%}.ach-meter .meter{flex:1}.ach-count{font-size:var(--fs-xs);color:var(--ink-dim);font-variant-numeric:tabular-nums}.match-list{display:flex;flex-direction:column;border-radius:var(--r-lg);border:var(--outline-w) solid var(--outline);background:var(--panel-bg);box-shadow:var(--sh-edge),var(--panel-gloss);overflow:hidden}.match-row{display:flex;align-items:center;gap:var(--sp-3);inline-size:100%;padding:var(--sp-2) var(--sp-3);color:inherit;text-align:start;transition:background var(--dur-1) var(--ease)}.match-row+.match-row{border-top:2px dashed var(--line)}.match-row:hover{background:var(--surface-2)}.match-thumb{inline-size:48px;block-size:48px;flex:none;border-radius:var(--r-sm);border:2px solid var(--outline);overflow:hidden;display:grid;place-items:center;background:var(--surface-2)}.match-thumb>*{width:100%;height:100%;object-fit:cover}.match-thumb>.ui-art{width:32px;height:32px}.match-main{flex:1;min-width:0;display:flex;flex-direction:column}.match-game{font-family:var(--font-display);font-weight:var(--fw-black);line-height:var(--lh-tight);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.match-sub{font-size:var(--fs-xs);color:var(--ink-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.match-outcome{flex:none;min-inline-size:52px;padding:3px var(--sp-2);border-radius:var(--r-pill);border:2px solid var(--outline);text-align:center;color:var(--ink-on-dark);font-family:var(--font-display);font-size:var(--fs-sm);font-weight:var(--fw-black);-webkit-text-stroke:.2em var(--stroke);paint-order:stroke fill;text-shadow:var(--text-3d)}.match-outcome.is-win{background:var(--tile-leaf)}.match-outcome.is-lose{background:var(--tile-rose)}.match-outcome.is-draw{background:var(--tile-sun)}.friend-row{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2) 0;border-bottom:2px dashed var(--line);text-align:start;color:inherit;width:100%}.friend-row:last-child{border-bottom:0}.notify-dot{width:10px;height:10px;border-radius:var(--r-pill);flex:none;background:var(--line)}.notify-dot.is-unread{background:var(--brand);box-shadow:0 0 0 2px var(--outline)}.screen-invite .panel{gap:var(--sp-3);padding-block:var(--sp-5)}.invite-prompt{gap:var(--sp-4)}.invite-prompt .sticky-actions{position:static;padding-inline:0;background:none}.face-picker{gap:var(--sp-4)}.face-preview{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2)}.face-name{font-size:var(--fs-head)}.face-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:var(--sp-2)}.face-opt{position:relative;display:grid;place-items:center;padding:var(--sp-2);border-radius:var(--r-lg);background:var(--surface-2);border:2px solid transparent;transition:border-color var(--dur-1) var(--ease),transform var(--dur-1) var(--ease)}.face-opt:hover{border-color:var(--line-strong)}.face-opt:active{transform:scale(.96)}.face-opt.is-on{border-color:var(--brand);background:var(--brand-soft)}.face-auto{position:absolute;inset-block-end:4px;font-size:10px;font-weight:var(--fw-bold);padding:0 var(--sp-2);border-radius:var(--r-pill);background:var(--surface);color:var(--ink-muted)}.face-actions{margin-inline:calc(var(--sp-4) * -1)}.credit-link{color:var(--brand);align-self:flex-start}.credit-license{margin:0;white-space:pre-wrap;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:var(--fs-xs);line-height:1.6;color:var(--ink-muted);text-align:left}.tn-ic{display:grid;place-items:center;width:36px;height:36px;border-radius:var(--r-md);background:var(--brand-soft);color:var(--brand);flex:none}.tn-rank{width:1.75em;text-align:center;color:var(--ink-dim)}.tn-champ{display:flex;align-items:center;gap:var(--sp-2);color:var(--brand)}.bracket{display:flex;gap:var(--sp-3);overflow-x:auto;padding-bottom:var(--sp-2);scrollbar-width:thin}.bracket-col{display:flex;flex-direction:column;justify-content:space-around;gap:var(--sp-2);min-width:9.5rem}.bracket-head{text-align:center}.bracket-match{display:flex;flex-direction:column;gap:2px;padding:var(--sp-2);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2)}.bracket-match.is-live{border-color:var(--brand)}.bracket-side{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-1);font-size:var(--fs-sm);color:var(--ink-muted)}.bracket-side.is-won{color:var(--ink);font-weight:var(--fw-bold)}.board-lead{display:flex;align-items:center;gap:var(--sp-2)}.board-rank{min-width:1.75em;text-align:center;color:var(--ink-dim);font-size:var(--fs-sm)}.board-rank.is-podium{color:var(--brand);font-weight:var(--fw-black)}.bracket-side.is-me{color:var(--brand)}.list-row.is-danger .list-row-title,.list-row.is-danger .icon{color:var(--danger)}.paywall{gap:var(--sp-4)}.price-picker{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--sp-3) var(--sp-2);padding-block:var(--sp-2)}.price-opt{position:relative;padding:var(--sp-3) var(--sp-2);border-radius:var(--r-md);background:var(--panel-bg);border:1px solid var(--line);color:var(--ink-muted);text-align:center}.price-opt.is-active{border-color:var(--brand);color:var(--ink);box-shadow:0 0 0 3px var(--brand-soft)}.po-save{position:absolute;top:-9px;inset-inline-start:50%;transform:translate(50%);background:var(--ok);color:var(--ink-on-ok);font-size:10px;font-weight:var(--fw-bold);padding:1px var(--sp-2);border-radius:var(--r-pill);white-space:nowrap}.po-period{font-size:var(--fs-xs)}.po-price{font-size:var(--fs-sm);font-weight:var(--fw-bold);margin-block-start:2px}.plan-card{position:relative;display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-4);border-radius:var(--r-lg);background:var(--panel-bg);border:1px solid var(--line)}.plan-card.is-current{border-color:var(--ok)}.plan-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-3)}.plan-name{font-size:var(--fs-head);font-weight:var(--fw-bold)}.plus-hero{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);padding:var(--sp-5) var(--sp-4) var(--sp-4);border-radius:var(--r-xl);background:radial-gradient(120% 90% at 50% 0%,var(--brand-soft),transparent 70%),var(--surface);border:1px solid var(--line-accent);box-shadow:var(--sh-brand);text-align:center}.plus-crown{width:56px;height:56px;border-radius:var(--r-pill);display:grid;place-items:center;background:var(--brand);color:var(--brand-ink);box-shadow:0 8px 24px -8px var(--brand-glow)}.plus-title{font-size:var(--fs-display);font-weight:var(--fw-black)}.plus-perks{display:flex;flex-direction:column;gap:var(--sp-3);inline-size:100%;margin-block-start:var(--sp-2);text-align:start}.plus-perk{display:flex;align-items:center;gap:var(--sp-3)}.plus-perk-ic{width:40px;height:40px;flex:none;border-radius:var(--r-md);display:grid;place-items:center;background:var(--surface-2);color:var(--brand)}.plus-perk-copy{gap:2px;min-width:0}.plus-pill{display:inline-flex;align-items:center;gap:var(--sp-1);block-size:34px;padding-inline:var(--sp-2) var(--sp-3);border:2px solid var(--outline);border-radius:var(--r-pill);background:var(--field);color:var(--brand);font-family:var(--font-display);font-size:var(--fs-sm);font-weight:var(--fw-black);white-space:nowrap;cursor:pointer}.plus-pill:hover{filter:brightness(1.15)}.coin-pill{display:inline-flex;align-items:center;gap:var(--sp-1);block-size:30px;padding-inline:0 var(--sp-3);border:2px solid var(--outline);border-radius:var(--r-pill);background:var(--field);color:var(--ink-on-dark);font-family:var(--font-display);font-size:var(--fs-sm);font-weight:var(--fw-black);line-height:1;white-space:nowrap;direction:ltr}button.coin-pill{cursor:pointer}button.coin-pill:hover{filter:brightness(1.15)}.coin-pill .coin-art{inline-size:30px;block-size:30px;margin-inline-start:-8px;filter:drop-shadow(0 2px 0 var(--outline))}.coin-num{-webkit-text-stroke:.2em var(--stroke);paint-order:stroke fill;text-shadow:var(--text-3d)}.coin-pill.is-small{block-size:24px;font-size:var(--fs-xs);padding-inline-end:var(--sp-2)}.coin-pill.is-small .coin-art{inline-size:22px;block-size:22px;margin-inline-start:-5px}.hud-coins{display:inline-flex;padding-inline-start:6px}.quest-rewards{display:flex;flex-direction:column;align-items:flex-end;gap:var(--sp-1);flex:none}.coin-hero{display:grid;place-items:center;padding-block:var(--sp-2)}.coin-hero-art{filter:drop-shadow(0 6px 0 var(--outline));animation:coin-spin 2.4s var(--ease) infinite}@keyframes coin-spin{0%,70%,to{transform:rotateY(0)}85%{transform:rotateY(180deg)}}@media (prefers-reduced-motion: reduce){.coin-hero-art{animation:none}}.coin-rule{display:flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-sm)}.coin-soon{padding:var(--sp-2) var(--sp-3);border-radius:var(--r-md);background:var(--surface-2)}.plus-pill.is-plus{background:linear-gradient(var(--brand) 0 50%,var(--brand-deep) 50%);color:var(--ink-on-dark);-webkit-text-stroke:.2em var(--stroke);paint-order:stroke fill;text-shadow:var(--text-3d)}.plus-pill.is-free{background:var(--tile-leaf-edge);color:var(--ink-on-dark)}.sub-reward{gap:var(--sp-2);margin-block-start:var(--sp-3)}.free-note{display:flex;align-items:flex-start;gap:var(--sp-2);font-size:var(--fs-sm);color:var(--ink-muted)}.free-note .icon{color:var(--ok);flex:none;margin-block-start:2px}.sub-foot{gap:var(--sp-2)}.fair-note{font-size:var(--fs-xs);color:var(--ok);background:var(--ok-soft);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-sm);text-align:center}.welcome-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:calc(var(--safe-t) + var(--sp-3)) var(--sp-4) 0}.welcome-brand{font-family:var(--font-display);font-size:var(--fs-title);font-weight:var(--fw-black);line-height:var(--lh-flat);color:var(--ink-on-dark);-webkit-text-stroke:.2em var(--stroke);paint-order:stroke fill;text-shadow:var(--text-3d)}.screen-welcome .screen-body{justify-content:center}.welcome-stage{display:flex;flex-direction:column;gap:var(--sp-5)}.welcome-art{aspect-ratio:16 / 11;border-radius:var(--r-xl);overflow:hidden;background:var(--surface);border:var(--outline-w) solid var(--outline);box-shadow:var(--sh-edge),var(--panel-gloss)}.welcome-art img{width:100%;height:100%;display:block;object-fit:cover;-webkit-user-drag:none;user-select:none}.welcome-copy{display:flex;flex-direction:column;gap:var(--sp-2);align-items:center;text-align:center}.welcome-title{font-family:var(--font-display);font-size:var(--fs-display);font-weight:var(--fw-black);line-height:var(--lh-flat);color:var(--ink-on-dark);-webkit-text-stroke:.2em var(--stroke);paint-order:stroke fill;text-shadow:var(--text-3d);text-wrap:balance}.welcome-body{color:var(--ground-muted);max-inline-size:34ch;text-wrap:pretty}.welcome-art.enter-next,.welcome-copy.enter-next{animation:welcome-in-next var(--dur-3) var(--ease) both}.welcome-art.enter-prev,.welcome-copy.enter-prev{animation:welcome-in-prev var(--dur-3) var(--ease) both}@keyframes welcome-in-next{0%{transform:translate(-18%);opacity:0}}@keyframes welcome-in-prev{0%{transform:translate(18%);opacity:0}}[dir=ltr] .welcome-art.enter-next,[dir=ltr] .welcome-copy.enter-next{animation-name:welcome-in-prev}[dir=ltr] .welcome-art.enter-prev,[dir=ltr] .welcome-copy.enter-prev{animation-name:welcome-in-next}.welcome-foot{display:flex;flex-direction:column;gap:var(--sp-4);padding:var(--sp-3) var(--sp-4) calc(var(--safe-b) + var(--sp-4))}.welcome-steps{display:flex;gap:var(--sp-2);justify-content:center}.welcome-step{inline-size:34px;block-size:10px;border-radius:var(--r-pill);border:2px solid var(--outline);background:var(--field);transition:background var(--dur-2) var(--ease),inline-size var(--dur-2) var(--ease)}.welcome-step.is-done{background:var(--brand-deep)}.welcome-step.is-on{inline-size:56px;background:var(--brand)}.welcome-next{justify-content:center}@media (prefers-reduced-motion: reduce){.welcome-art.enter-next,.welcome-copy.enter-next,.welcome-art.enter-prev,.welcome-copy.enter-prev{animation:none}}[data-motion=off] .welcome-art,[data-motion=off] .welcome-copy{animation:none}.screen-name .screen-body{justify-content:center;gap:var(--sp-5);max-width:460px;margin-inline:auto;width:100%;padding-block-start:calc(var(--safe-t) + var(--sp-6))}.name-copy{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);text-align:center}.name-card{padding-inline:var(--sp-4)}.name-card .player-banner{margin-inline:calc(var(--sp-4) * -1)}.name-preview{max-inline-size:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.name-preview.is-empty{opacity:.45}.name-form{align-self:stretch;display:flex;flex-direction:column;gap:var(--sp-4);text-align:start}.screen-auth .screen-body{max-width:460px;margin-inline:auto;width:100%}.auth-panel{padding:var(--sp-5) var(--sp-4)}.auth-form{display:flex;flex-direction:column;gap:var(--sp-4)}.auth-hero{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);text-align:center}.auth-hero-art{inline-size:96px;block-size:96px;display:grid;place-items:center;border-radius:50%;border:var(--outline-w) solid var(--outline);background:radial-gradient(circle at 50% 35%,var(--tile-sun),var(--tile-sun-edge) 70%);box-shadow:var(--sh-edge),0 0 0 6px var(--brand-soft)}.auth-hero-art img{filter:drop-shadow(0 4px 0 rgba(4,14,38,.25));transform:rotate(-12deg)}.auth-title{font-size:var(--fs-display);font-weight:var(--fw-black);line-height:var(--lh-flat)}.auth-sub{color:var(--ink-muted);font-size:var(--fs-sm);max-width:32ch}.auth-perks{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-2)}.auth-perks li{display:flex;flex-direction:column;align-items:center;gap:var(--sp-1);padding:var(--sp-2);border-radius:var(--r-md);background:var(--surface-2);border:2px solid var(--outline);font-size:var(--fs-xs);line-height:var(--lh-tight);color:var(--ink-muted);text-align:center}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-1);padding:4px;border-radius:var(--r-lg);border:var(--outline-w) solid var(--outline);background:var(--field)}.auth-tab{min-height:42px;border-radius:var(--r-md);color:var(--ink-dim);font-family:var(--font-display);font-weight:var(--fw-black)}.auth-tab.is-active{color:var(--ink-on-dark);background:linear-gradient(var(--brand) 0 50%,var(--brand-deep) 50%);box-shadow:inset 0 0 0 2px var(--outline);-webkit-text-stroke:.2em var(--stroke);paint-order:stroke fill;text-shadow:var(--text-3d)}.auth-fields{display:flex;flex-direction:column;gap:var(--sp-3)}.auth-fields .input{min-height:56px;font-size:var(--fs-head)}.auth-fields>.btn{margin-block-start:var(--sp-1)}.auth-code-step{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);text-align:center}.auth-code-head{display:flex;flex-direction:column;align-items:center;gap:2px}.auth-code-title{font-family:var(--font-display);font-size:var(--fs-title);font-weight:var(--fw-black)}.auth-sent-row{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:var(--sp-1)}.auth-sent{font-size:var(--fs-sm);color:var(--ink-muted)}.auth-sent-row .link-btn{min-height:32px;padding:0 var(--sp-1)}.auth-resend:disabled{color:var(--ink-dim);text-decoration:none;cursor:default}.otp{position:relative;inline-size:100%;max-inline-size:320px}.otp-row{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--sp-2)}.otp-box{aspect-ratio:4 / 5;display:grid;place-items:center;border-radius:var(--r-md);border:var(--outline-w) solid var(--outline);background:var(--field);box-shadow:inset 0 3px #00000040;color:var(--field-ink);font-family:var(--font-display);font-size:var(--fs-hero);font-weight:var(--fw-black);transition:box-shadow var(--dur-1) var(--ease),transform var(--dur-1) var(--ease)}.otp-box.is-filled{background:var(--surface-3);color:var(--ink)}.otp-box.is-caret{box-shadow:inset 0 3px #00000040,0 0 0 3px var(--brand)}.otp.has-error .otp-box{box-shadow:inset 0 3px #00000040,0 0 0 2px var(--danger)}.otp-input{position:absolute;inset:0;inline-size:100%;opacity:0;font-size:16px;caret-color:transparent}.auth-links{display:flex;flex-wrap:wrap;gap:var(--sp-1) var(--sp-3);justify-content:center}.auth-nocode{flex-wrap:wrap}.auth-nocode .banner-main{min-width:12rem}.auth-nocode .btn{flex:none;margin-inline-start:auto}.sheet-title:empty{display:none}.field-error{color:var(--danger);font-size:var(--fs-xs);min-height:1em}.field-hint{color:var(--ink-dim);font-size:var(--fs-xs)}.field.has-error .input{border-color:var(--danger)}.link-btn{background:none;border:0;padding:var(--sp-2);min-height:var(--tap);color:var(--brand);font:inherit;font-family:var(--font-display);font-weight:var(--fw-bold);font-size:var(--fs-sm);cursor:pointer}.link-btn:hover{text-decoration:underline}.link-btn[hidden]{display:none}.btn.is-loading{opacity:.6;pointer-events:none}.screen-match{position:relative;height:100dvh;min-height:100dvh;max-height:100dvh;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto minmax(0,1fr);padding-inline:var(--safe-s) var(--safe-e);background:transparent}.screen.screen-match{padding-bottom:calc(var(--safe-b) + var(--edge) + 2px)}.match-bar{grid-row:1;display:grid;grid-template-columns:auto auto minmax(0,1fr) auto auto;grid-template-areas:"exit pause title chat players" "turn turn  turn  turn turn";align-items:center;column-gap:var(--sp-1);row-gap:var(--sp-2);padding:calc(var(--safe-t) + var(--sp-1)) var(--sp-2) var(--sp-2);flex:none;background:linear-gradient(var(--surface-2),var(--surface));border-block-end:var(--outline-w) solid var(--outline);box-shadow:0 4px #040e2638}.mb-exit{grid-area:exit}.mb-pause{grid-area:pause}.mb-chat{grid-area:chat}.mb-players{grid-area:players}.match-title{grid-area:title;text-align:center;font-family:var(--font-display);font-size:var(--fs-head);font-weight:var(--fw-black);line-height:var(--lh-flat);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.turn-pill{grid-area:turn;min-width:0;display:flex;align-items:center;gap:var(--sp-3);min-height:52px;padding:var(--sp-1) var(--sp-3) var(--sp-1) var(--sp-2);border-radius:var(--r-lg);border:var(--outline-w) solid var(--outline);background:linear-gradient(var(--surface-3) 0 50%,var(--surface-2) 50%);box-shadow:var(--sh-edge-sm);transition:background var(--dur-2) var(--ease)}.turn-pill.is-mine{background:linear-gradient(var(--brand) 0 50%,var(--brand-deep) 50%);animation:turn-glow 2.4s var(--ease) infinite}.turn-pill.is-mine .turn-name,.turn-pill.is-mine .turn-state{color:var(--ink-on-dark);-webkit-text-stroke:.2em var(--stroke);paint-order:stroke fill;text-shadow:var(--text-3d)}.turn-pill.is-over{background:linear-gradient(var(--tile-leaf) 0 50%,var(--tile-leaf-edge) 50%)}@keyframes turn-glow{0%,to{box-shadow:var(--sh-edge-sm),0 0 0 0 var(--brand-glow)}50%{box-shadow:var(--sh-edge-sm),0 0 0 6px transparent}}.turn-avatar{display:flex;flex:none}.turn-avatar .avatar,.turn-avatar .seat-avatar{box-shadow:0 0 0 2px var(--outline),0 0 0 5px var(--seat, var(--brand)),0 0 0 7px var(--outline)}.turn-avatar{padding:5px}.turn-avatar .seat-avatar{width:36px;height:36px}.turn-pill>.u-col{gap:0}.turn-name{font-family:var(--font-display);font-size:var(--fs-title);font-weight:var(--fw-black);line-height:var(--lh-flat);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.turn-state{color:var(--ink-muted);font-weight:var(--fw-bold)}.turn-state:empty{display:none}.turn-clock{flex:none;padding:2px var(--sp-2);border-radius:var(--r-pill);border:2px solid var(--outline);background:var(--field);color:var(--field-ink);font-family:var(--font-display);font-size:var(--fs-body);font-weight:var(--fw-black)}.turn-clock:empty{display:none}.turn-clock.is-low{background:var(--danger);color:var(--ink-on-dark)}.timer-bar{grid-row:2;height:6px;background:var(--field);flex:none}.timer-fill{display:block;height:100%;width:100%;background:linear-gradient(var(--brand-strong),var(--brand-deep));transform-origin:right center;transition:transform .48s linear}[dir=ltr] .timer-fill{transform-origin:left center}.timer-fill.is-low{background:var(--danger)}.match-stage{grid-row:3;min-height:0;min-width:0;display:flex;flex-direction:column;position:relative;z-index:var(--z-board)}.match-bar,.game-chrome{width:100%;max-width:var(--page-max);margin-inline:auto}.game-dock{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2);margin-block-start:auto;padding:var(--sp-2) var(--sp-3);background:var(--panel-bg);border:var(--outline-w) solid var(--outline);border-block-end:none;border-radius:var(--r-lg) var(--r-lg) 0 0;box-shadow:var(--panel-gloss);color:var(--ink-on-dark);max-block-size:46dvh;overflow-y:auto;overscroll-behavior:contain}.screen-match .game-dock{margin-block-end:calc(-1 * (var(--safe-b) + var(--edge) + 2px));padding-block-end:calc(var(--sp-2) + var(--safe-b) + var(--edge) + 2px)}.game-dock>.btn{flex:1 1 auto}.game-dock:empty{display:none}.game-wait{flex:1 1 100%;min-block-size:calc(var(--tap) + var(--edge));display:grid;place-items:center;margin:0;padding:var(--sp-1) var(--sp-2);text-align:center;color:var(--ink-on-dark);font-size:var(--fs-sm);font-weight:var(--fw-bold)}.game-hint{flex:1 1 100%;color:var(--ink-muted);font-size:var(--fs-xs);text-align:center}.seat-chip{display:inline-flex;align-items:center;gap:var(--sp-1);padding:2px var(--sp-2);border-radius:var(--r-pill);border:2px solid var(--outline);background:var(--field);color:var(--field-ink);font-size:var(--fs-sm);font-weight:var(--fw-bold);white-space:nowrap}.seat-chip:before{content:"";flex:none;inline-size:12px;block-size:12px;border-radius:50%;background:var(--seat, var(--brand));box-shadow:0 0 0 2px var(--outline)}.seat-chip.is-me{background:var(--brand);color:var(--outline)}.seat-chip.is-turn{box-shadow:0 0 0 2px var(--brand)}.screen-match[data-conn=offline] .game-chrome,.screen-match[data-conn=reconnecting] .game-chrome{opacity:.5;pointer-events:none}.match-paused{position:absolute;inset:0;z-index:var(--z-dialog, 60);display:grid;place-items:center;padding:var(--sp-4);background:color-mix(in srgb,var(--bg) 72%,transparent)}.match-paused[hidden]{display:none}.match-paused-card{display:flex;flex-direction:column;align-items:center;gap:var(--sp-3);width:min(340px,100%);padding:var(--sp-6) var(--sp-5);border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh-3);text-align:center}.match-paused-badge{width:60px;height:60px;display:grid;place-items:center;border-radius:var(--r-pill);background:var(--surface-2);color:var(--brand)}.match-paused-card .btn{width:100%}.match-feed,.match-side-chat{display:none}@media (min-width: 1024px){.screen-match{--match-side: clamp(330px, 26vw, 420px);--match-feed: clamp(220px, 17vw, 300px);grid-template-columns:minmax(0,1fr) var(--match-side);grid-template-rows:auto auto auto auto minmax(170px,1fr);column-gap:var(--sp-3);padding-inline:calc(var(--safe-s) + var(--sp-3)) calc(var(--safe-e) + var(--sp-3))}.screen-match>.match-bar,.screen-match>.timer-bar{grid-column:1 / -1}.screen-match>.match-stage{display:contents}.screen-match .match-stage>.game-chrome{grid-column:2;max-width:none;margin-inline:0;margin-block-start:var(--sp-2)}.screen-match .match-stage>.game-dock{max-block-size:52dvh;margin-block-end:0;padding-block-end:var(--sp-2);border-block-end:var(--outline-w) solid var(--outline);border-radius:var(--r-lg)}.screen-match .match-stage>:not(.game-chrome){grid-column:1;grid-row:3 / -1;min-block-size:0;margin-block:var(--sp-2) calc(var(--sp-2) - var(--safe-b) - var(--edge) - 2px)}.screen-match .tt-viewport{padding-inline-start:calc(var(--match-feed) + var(--sp-4))}.match-side-chat{grid-column:2;grid-row:5;display:flex;flex-direction:column;gap:var(--sp-2);min-block-size:0;margin-block:var(--sp-2) 0;padding:var(--sp-2) var(--sp-3);border-radius:var(--r-lg);border:var(--outline-w) solid var(--outline);background:var(--panel-bg);box-shadow:var(--panel-gloss);color:var(--ink-on-dark)}.match-side-title{font-family:var(--font-display);font-size:var(--fs-body);font-weight:var(--fw-black)}.match-side-chat .chat-list{flex:1;min-block-size:0;max-height:none}.match-side-chat .emoji-btn{width:34px;height:34px;font-size:17px}.screen-match .mb-chat{visibility:hidden}.match-feed{grid-column:1;grid-row:3 / -1;justify-self:start;align-self:center;z-index:2;display:flex;flex-direction:column;gap:var(--sp-1);inline-size:var(--match-feed);margin-inline:var(--sp-4);pointer-events:none}.feed-line{padding:var(--sp-1) var(--sp-3);border-radius:var(--r-md);border:2px solid var(--outline);background:color-mix(in srgb,var(--surface) 88%,transparent);color:var(--ink-on-dark);font-size:var(--fs-sm);line-height:var(--lh-body);box-shadow:var(--sh-edge-sm);animation:feed-in var(--dur-3) var(--ease) both,feed-out var(--dur-4) var(--ease) var(--feed-ms, 9s) forwards}.feed-line:nth-last-child(2){opacity:.85}.feed-line:nth-last-child(3){opacity:.7}.feed-line:nth-last-child(4){opacity:.55}.feed-line:nth-last-child(5){opacity:.4}}@keyframes feed-in{0%{transform:translateY(8px);opacity:0}}@keyframes feed-out{to{transform:translateY(-6px);opacity:0}}@media (prefers-reduced-motion: reduce){.feed-line{animation:feed-out 1ms linear var(--feed-ms, 9s) forwards}}.log-list,.chat-list{display:flex;flex-direction:column;gap:var(--sp-1);max-height:46dvh;overflow-y:auto;font-size:var(--fs-sm)}.log-line{color:var(--ink-muted);padding:var(--sp-1) var(--sp-2);border-radius:var(--r-xs)}.log-line:nth-child(odd){background:var(--surface)}.chat-wrap{display:flex;flex-direction:column;gap:var(--sp-2)}.chat-line{padding:var(--sp-1) var(--sp-2);background:var(--surface);border-radius:var(--r-sm)}.chat-form{display:flex;gap:var(--sp-2)}.chat-form .input{flex:1}.emoji-row{display:flex;gap:var(--sp-1);flex-wrap:wrap}.emoji-btn{width:40px;height:40px;border-radius:var(--r-sm);background:var(--surface);border:1px solid var(--line);font-size:20px}.emoji-pop{position:fixed;bottom:30dvh;font-size:40px;z-index:var(--z-toast);animation:emoji-fly 1.6s var(--ease) forwards;pointer-events:none}@keyframes emoji-fly{0%{opacity:0;transform:translateY(20px) scale(.6)}20%{opacity:1;transform:translateY(0) scale(1.1)}to{opacity:0;transform:translateY(-90px) scale(1)}}.dialog-end{align-items:stretch;padding-block-start:var(--sp-6);overflow:visible}.end-hero{position:relative;align-self:center;inline-size:132px;block-size:132px;margin-block-start:-76px;display:grid;place-items:center;border-radius:50%;border:var(--outline-w) solid var(--outline);background:radial-gradient(circle at 50% 40%,var(--hero-hi, var(--surface-3)),var(--hero-lo, var(--surface)) 70%);box-shadow:var(--sh-edge),0 0 0 8px var(--hero-glow, transparent);animation:end-pop var(--dur-4) var(--ease-pop) both}.dialog-end.is-win{--hero-hi: var(--brand-strong);--hero-lo: var(--brand-deep);--hero-glow: var(--brand-soft)}.dialog-end.is-draw{--hero-hi: var(--tile-sky);--hero-lo: var(--tile-sky-edge);--hero-glow: var(--info-soft)}.end-art{filter:drop-shadow(0 6px 0 rgba(4,14,38,.25))}.dialog-end.is-win .end-art{animation:end-wiggle 1.6s var(--ease) .4s both}@keyframes end-pop{0%{transform:scale(.4);opacity:0}}@keyframes end-wiggle{0%,to{transform:rotate(0)}20%{transform:rotate(-8deg) scale(1.05)}40%{transform:rotate(6deg) scale(1.05)}60%{transform:rotate(-3deg)}}.end-title{text-align:center;font-size:var(--fs-hero);font-weight:var(--fw-black);line-height:var(--lh-flat);color:var(--ink-on-dark);-webkit-text-stroke:.2em var(--stroke);paint-order:stroke fill;text-shadow:var(--text-3d)}.dialog-end.is-win .end-title{color:var(--brand)}.end-scores{display:flex;flex-direction:column;gap:var(--sp-2);margin-block:var(--sp-1)}.end-row{display:flex;align-items:center;gap:var(--sp-2);min-height:48px;padding:var(--sp-1) var(--sp-3);border-radius:var(--r-md);border:2px solid var(--outline);background:var(--surface-2);font-size:var(--fs-sm)}.end-row.is-me{background:linear-gradient(var(--brand) 0 50%,var(--brand-deep) 50%);color:var(--ink-on-dark)}.end-row.is-me .end-name,.end-row.is-me .end-score,.end-row.is-me .end-rank{-webkit-text-stroke:.2em var(--stroke);paint-order:stroke fill;text-shadow:var(--text-3d)}.end-rank{inline-size:28px;text-align:center;font-family:var(--font-display);font-weight:var(--fw-black);color:var(--ink-dim)}.end-medal{inline-size:28px;block-size:28px;flex:none}.end-row .seat-dot{background:var(--seat, var(--line-strong))}.end-name{font-family:var(--font-display);font-weight:var(--fw-black)}.end-score{font-family:var(--font-display);font-size:var(--fs-head)}.kz-dice-layer,.dice-throw{pointer-events:none}.dice-die{--dice-face: #EFE5CB;--dice-pip: #353535}.dice-throw.is-settled .dice-die{filter:drop-shadow(0 0 6px rgba(255,226,160,.45))}.kz-stage{transition:transform .42s var(--ease)}.kz-stage.is-cinematic{transform:scale(1.045)}.kz-stage.is-cinematic .kz-board{pointer-events:none}@media (prefers-reduced-motion: reduce){.kz-stage,.kz-stage.is-cinematic{transition:none;transform:none}}[data-motion=off] .kz-stage.is-cinematic{transform:none}.fp-hand{pointer-events:none;filter:drop-shadow(0 -4px 7px rgba(0,0,0,.38))}.fp-arm{opacity:.96}.tt-viewport{--tt-dock: 0px;position:relative;overflow:hidden;min-height:0;min-width:0;box-sizing:border-box;inline-size:100%;max-inline-size:100%;block-size:100%;max-block-size:100%;padding-block-end:var(--tt-dock);touch-action:none;overscroll-behavior:contain;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;contain:layout paint;cursor:grab;background:radial-gradient(120% 90% at 50% 12%,rgba(255,255,255,.05),transparent 65%),var(--table-felt, #1B2A22);box-shadow:inset 0 0 0 var(--outline-w) var(--outline),inset 0 0 24px #00000059}.tt-viewport.is-dragging{cursor:grabbing}.tt-board{position:absolute;left:50%;top:50%;transform-origin:50% 50%;transform-style:preserve-3d;box-shadow:0 26px 34px #0000008c,0 6px 12px #00000059;backface-visibility:hidden}.tt-viewport.is-dragging .tt-board{will-change:transform}.tt-overlay{position:absolute;left:50%;top:50%;transform-origin:50% 50%;transform-style:preserve-3d;backface-visibility:hidden;pointer-events:none;z-index:2}.tt-overlay>svg{display:block;overflow:visible}.tt-3d{position:absolute;inset:0;pointer-events:none;z-index:3}.cr-layer{position:absolute;inset:0;z-index:3;display:grid;place-items:center;pointer-events:none}.cr-layer.is-open{background:radial-gradient(120% 90% at 50% 50%,transparent 18%,rgba(6,10,8,.58) 78%);transition:background var(--dur-2) var(--ease)}.cr-card{width:min(46vw,210px);aspect-ratio:100 / 140;perspective:900px}.cr-flip{position:relative;width:100%;height:100%;transform-style:preserve-3d}.cr-flip.is-flipped{transform:rotateY(180deg)}.cr-side{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden}.cr-side svg{width:100%;height:100%}.cr-face{transform:rotateY(180deg)}.card-body{font-weight:var(--fw-medium)}[data-motion=off] .cr-flip.is-flipped,[data-motion=off] .cr-flip{transition:none}.tt-board>svg{display:block;width:100%;height:100%}[data-motion=off] .tt-board{transition:none}:root{--kz-sea: #123A4C;--kz-sea-deep: #07202C;--kz-sea-foam: rgba(180, 226, 238, .22);--kz-sand: #E6CE9B;--kz-ink: #10161C;--kz-forest: #2E6B45;--kz-forest-2: #1D4A2F;--kz-hills: #B9663A;--kz-hills-2: #8C4525;--kz-pasture: #7FB259;--kz-pasture-2: #5D8C3F;--kz-fields: #E0B54A;--kz-fields-2: #B98A24;--kz-mountains: #7C8B99;--kz-mountains-2: #5A6874;--kz-desert: #D9C79C;--kz-desert-2: #B9A578;--kz-lumber: #3F7A46;--kz-brick: #C05A31;--kz-wool: #9FCF7E;--kz-grain: #E3B93F;--kz-ore: #8A8F98;--kz-dev: #E2A84C}.kz-host{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;height:100%;min-height:0}.kz-stage{position:relative;min-height:0;overflow:hidden;border-radius:var(--r-lg);margin-inline:var(--sp-2);isolation:isolate;z-index:var(--z-board);background:radial-gradient(120% 90% at 50% 42%,var(--kz-sea),var(--kz-sea-deep) 76%);box-shadow:inset 0 0 70px #00000080}.kz-table{--table-felt: #0B1218;position:absolute;inset:0;border-radius:var(--r-lg)}.kz-host.is-sea .kz-table{background:var(--kz-sea-deep)}.kz-host.is-sea .kz-deck{box-shadow:none}.kz-deck{user-select:none}.kz-board{width:100%;height:100%;display:block;z-index:var(--z-board-objects)}.kz-hint-bar{position:absolute;inset-inline:var(--sp-3);bottom:var(--sp-3);pointer-events:none;display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-2) var(--sp-2) var(--sp-3);border-radius:var(--r-pill);background:var(--surface-glass);backdrop-filter:blur(10px);border:1px solid var(--line-accent);color:var(--ink);font-size:var(--fs-sm);text-align:center;box-shadow:var(--sh-2);animation:rise var(--dur-2) var(--ease);z-index:var(--z-board-overlay)}.kz-hint-bar[hidden]{display:none}.kz-hint-close{pointer-events:auto;flex:0 0 auto;display:grid;place-items:center;width:28px;height:28px;border-radius:var(--r-pill);background:var(--surface-2);border:1px solid var(--line);color:var(--ink-muted)}.kz-spot{cursor:pointer;animation:spot-pulse 1.8s var(--ease-in-out) infinite}.kz-spot-road{stroke-opacity:.55}.kz-spot-quiet{animation:none;opacity:.5}.kz-spot-quiet:hover{opacity:.95}@keyframes spot-pulse{0%,to{opacity:.55}50%{opacity:1}}.kz-ghost{cursor:pointer}.kz-token{pointer-events:none}.kz-hex polygon{transition:filter var(--dur-2) var(--ease)}.kz-dock{display:flex;flex-direction:column;gap:var(--sp-2);margin-block-start:var(--sp-2);padding:var(--sp-2) var(--sp-3) var(--sp-1);background:var(--panel-bg);border:var(--outline-w) solid var(--outline);border-block-end:none;border-radius:var(--r-lg) var(--r-lg) 0 0;box-shadow:var(--panel-gloss);position:relative;z-index:var(--z-hud);max-height:46dvh;overflow-y:auto;overscroll-behavior:contain}.screen-match .kz-dock{margin-block-end:calc(-1 * (var(--safe-b) + var(--edge) + 2px));padding-block-end:calc(var(--sp-1) + var(--safe-b) + var(--edge) + 2px)}.kz-dock-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:var(--sp-2)}.kz-dock-head>.kz-dice{justify-self:end}.kz-dock-handle{display:flex;align-items:center;gap:var(--sp-2);align-self:center;padding:2px var(--sp-3);min-height:30px;border-radius:var(--r-pill);background:var(--field);border:2px solid var(--outline);color:var(--field-ink);font-size:var(--fs-xs);font-weight:var(--fw-bold)}.kz-host.is-collapsed .kz-dice,.kz-host.is-collapsed .kz-costs{display:none}.kz-host.is-collapsed .kz-hand{gap:2px}.kz-host.is-collapsed .kz-card{width:54px;margin-inline-start:-16px}.kz-players{display:flex;gap:var(--sp-2);overflow-x:auto;scrollbar-width:none;padding-block:2px}.kz-players::-webkit-scrollbar{display:none}.kz-player{display:flex;align-items:center;gap:var(--sp-2);min-width:140px;padding:var(--sp-1) var(--sp-2);border-radius:var(--r-md);background:var(--panel-bg);border:2px solid var(--outline);box-shadow:var(--sh-edge-sm),var(--panel-gloss),inset 0 0 0 3px var(--seat);transition:box-shadow var(--dur-2) var(--ease),transform var(--dur-2) var(--ease)}.kz-player.is-turn{border-color:var(--seat);box-shadow:var(--sh-edge-sm),0 0 0 3px var(--outline),inset 0 0 0 3px var(--seat),0 6px 18px -6px var(--seat);transform:translateY(-2px)}.kz-player.is-me{background:linear-gradient(var(--surface-3),var(--surface-2))}.kz-p-avatar{display:flex;flex:none;margin:3px;border-radius:var(--r-pill);box-shadow:0 0 0 2px var(--outline),0 0 0 5px var(--seat),0 0 0 7px var(--outline)}.kz-p-avatar .seat-avatar,.kz-p-avatar>.icon{color:var(--ink-on-dark)}.kz-p-name{font-family:var(--font-display);font-size:var(--fs-sm);font-weight:var(--fw-black);color:var(--ink-on-dark)}.kz-p-stats{display:flex;gap:var(--sp-2);font-size:var(--fs-xs);color:var(--ink-muted);align-items:center}.kz-p-stats span{display:inline-flex;align-items:center;gap:2px}.kz-p-vp,.kz-p-title{color:var(--brand);font-weight:var(--fw-bold)}.kz-dice{display:flex;align-items:center;gap:var(--sp-2);justify-content:center}.kz-die{width:30px;height:30px;border-radius:var(--r-sm);display:grid;place-items:center;background:var(--surface-2);border:1px solid var(--line-strong);font-weight:var(--fw-black);animation:pop var(--dur-3) var(--ease-pop)}.kz-dice-total{color:var(--brand);font-size:var(--fs-head)}.kz-hand{display:flex;align-items:center;gap:var(--sp-1);overflow-x:auto;scrollbar-width:none;padding-block:2px}.kz-hand::-webkit-scrollbar{display:none}.kz-fan{display:flex;align-items:flex-end;margin-inline:auto}.kz-fan>.kz-card:first-child{margin-inline-start:0}.kz-card{position:relative;flex:0 0 auto;width:74px;margin-inline-start:-18px;border-radius:var(--r-sm);transition:transform var(--dur-1) var(--ease),filter var(--dur-1) var(--ease)}.kz-card>svg{width:100%;height:auto;display:block}.kz-card:hover{transform:translateY(-6px);z-index:1}.kz-card-n{position:absolute;inset-block-start:3px;inset-inline-start:3px;min-width:26px;height:26px;padding-inline:5px;display:grid;place-items:center;border-radius:var(--r-pill);background:var(--outline);border:2px solid var(--ink-on-dark);color:var(--ink-on-dark);font-family:var(--font-display);font-size:var(--fs-body);font-weight:var(--fw-black);line-height:1;box-shadow:0 2px #040e2673}.kz-card.is-empty{opacity:.38}.kz-card.is-empty .kz-card-n{background:var(--surface-2);border-color:var(--line-strong)}.kz-i{display:inline-flex}.kz-stock{display:flex;gap:var(--sp-2);flex-wrap:wrap;font-size:var(--fs-xs);color:var(--ink-muted);align-items:center}.kz-stock span{display:inline-flex;align-items:center;gap:2px}.kz-vp{color:var(--brand);font-weight:var(--fw-bold)}.kz-actions{display:flex;align-items:center;gap:var(--sp-2);overflow-x:auto;scrollbar-width:none;padding-block:var(--sp-1) var(--sp-2);position:sticky;bottom:0;z-index:1;background:var(--surface)}.kz-actions::-webkit-scrollbar{display:none}.kz-actions .btn{flex:0 0 auto;min-height:46px}.kz-actions .kz-end{margin-inline-start:auto}.kz-wait{flex:1;color:var(--ink-on-dark);font-size:var(--fs-sm);font-weight:var(--fw-bold);text-align:center;padding:var(--sp-2)}.kz-picker-row{display:flex;align-items:center;gap:var(--sp-2)}.kz-picker-val{min-width:24px;text-align:center}.kz-res-row{display:flex;gap:var(--sp-2);overflow-x:auto;scrollbar-width:none}.kz-res-row::-webkit-scrollbar{display:none}.kz-res-btn{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:68px;padding:var(--sp-2);border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line);color:var(--ink);font-size:var(--fs-xs)}.kz-res-btn.is-picked{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-soft)}.kz-res-btn.is-off,.kz-res-btn[disabled]{opacity:.45}.kz-dev-card{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3);border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line)}.kz-dev-card.is-off{opacity:.6}.kz-dev-face{flex:0 0 auto;width:56px}.kz-dev-face>svg{width:100%;height:auto;display:block}.kz-dev-played{display:flex;flex-wrap:wrap;gap:var(--sp-1)}.kz-dev-played .kz-dev-face{width:46px}.kz-terms{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap;padding:var(--sp-1) 0}.kz-terms-side{display:inline-flex;align-items:center;gap:var(--sp-1)}.kz-terms-item{display:inline-flex;align-items:center;gap:2px}.kz-terms-arrow{color:var(--ink-dim)}.kz-offer{display:flex;flex-direction:column;gap:var(--sp-1);padding:var(--sp-2);border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line-accent)}.kz-offer-head{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.kz-offer-rows{display:flex;flex-direction:column;gap:2px}.kz-offer-row{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-1) var(--sp-2);border-radius:var(--r-sm);background:var(--surface-2);font-size:var(--fs-sm);flex-wrap:wrap}.kz-offer-row.is-accept{border-inline-start:3px solid var(--ok)}.kz-offer-row.is-decline{border-inline-start:3px solid var(--danger);opacity:.7}.kz-offer-row.is-counter{border-inline-start:3px solid var(--brand)}.kz-offer-row.is-waiting{border-inline-start:3px solid var(--line-strong)}.chip.is-picked{border-color:var(--brand);color:var(--brand);box-shadow:0 0 0 2px var(--brand-soft)}@media (max-height: 560px),(orientation: landscape) and (max-height: 480px){.kz-dock{max-height:52dvh;gap:var(--sp-1);padding-block:var(--sp-1)}.match-bar{padding-block:var(--sp-1)}.kz-dock-handle{min-height:22px}.kz-player{min-width:108px;padding:var(--sp-1)}.kz-players{gap:var(--sp-1)}.kz-actions .btn{min-height:40px}.kz-die{width:26px;height:26px}.kz-card{width:58px;margin-inline-start:-16px}.kz-costs{padding:2px}.kz-cost{min-width:66px}}@media (max-width: 380px){.kz-card{width:62px;margin-inline-start:-18px}}@media (min-width: 720px){.kz-dock{flex-direction:row;flex-wrap:wrap;align-items:center}.kz-hand{flex:1 1 280px}.kz-costs{flex:1 1 300px}.kz-actions{flex:1 1 100%}.kz-card{width:86px;margin-inline-start:-20px}}@media (min-width: 1024px){.kz-top{padding:0}.kz-players{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.kz-player{min-width:0}.screen-match .match-stage>.kz-dock{flex-direction:column;flex-wrap:nowrap;align-items:stretch;max-height:52dvh;margin-block-end:0;padding-block-end:var(--sp-2);border-block-end:var(--outline-w) solid var(--outline);border-radius:var(--r-lg)}.kz-hand,.kz-costs{flex:initial}.kz-card{width:64px;margin-inline-start:-14px}.kz-actions{flex:initial;flex-wrap:wrap}.kz-actions .btn{flex:1 1 auto}.kz-stage{margin-inline:0}}.kz-top{padding:var(--sp-1) var(--sp-3) 0;position:relative;z-index:var(--z-hud)}.kz-top:empty{display:none}.kz-build-layer{position:absolute;inset:0;z-index:var(--z-board-overlay)}.kz-build-scrim{position:absolute;inset:0}.kz-build-pop{position:absolute;transform:translate(-50%,calc(-100% - 14px));display:flex;gap:var(--sp-1);padding:var(--sp-1);border-radius:var(--r-md);background:var(--surface-glass);backdrop-filter:blur(10px);border:1px solid var(--line-accent);box-shadow:var(--sh-3);animation:pop var(--dur-2) var(--ease-pop)}.kz-offer-pop{position:absolute;inset-block-start:var(--sp-2);inset-inline-end:var(--sp-2);z-index:6;inline-size:min(190px,56%);display:flex;flex-direction:column;gap:6px;padding:var(--sp-2) var(--sp-2) 10px;border-radius:var(--r-lg);border:var(--outline-w) solid var(--outline);background:var(--panel-bg);box-shadow:var(--sh-edge-sm),var(--panel-gloss),inset 0 0 0 3px var(--seat);color:var(--ink-on-dark)}.kz-offer-pop.is-new{animation:kz-offer-in var(--dur-3) var(--ease-pop) both}@keyframes kz-offer-in{0%{opacity:0;transform:translateY(-10px) scale(.94)}}.kz-offer-head{display:flex;align-items:center;gap:6px;font-size:var(--fs-xs);min-width:0}.kz-offer-dot{flex:none;inline-size:12px;block-size:12px;border-radius:50%;background:var(--seat);box-shadow:0 0 0 2px var(--outline)}.kz-offer-pop .kz-terms{justify-content:center;font-size:var(--fs-sm)}.kz-offer-note{color:var(--ink-muted);margin:0;font-size:var(--fs-xs);text-align:center}.kz-offer-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px}.kz-offer-actions .btn{min-block-size:36px;block-size:36px;padding-inline:var(--sp-2);font-size:var(--fs-sm)}.kz-offer-more{border:0;background:none;color:var(--brand);font:inherit;font-size:var(--fs-xs);font-weight:var(--fw-bold);cursor:pointer;padding:0}@media (prefers-reduced-motion: reduce){.kz-offer-pop.is-new{animation:none}}.kz-build-btn{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:76px;min-height:64px;padding:var(--sp-2);border-radius:var(--r-sm);background:var(--surface-2);border:1px solid var(--line-strong);color:var(--ink)}.kz-build-btn:active{transform:scale(.96)}.kz-build-name{font-size:var(--fs-xs);font-weight:var(--fw-bold)}.kz-cost-row{display:inline-flex;align-items:center;gap:1px}.kz-costs{display:flex;align-items:stretch;gap:var(--sp-1);overflow-x:auto;scrollbar-width:none;padding:var(--sp-1);border-radius:var(--r-md);background:var(--field);border:2px solid var(--outline);cursor:pointer}.kz-costs::-webkit-scrollbar{display:none}.kz-cost{display:flex;flex-direction:column;gap:1px;flex:1 1 0;min-width:74px;padding:2px var(--sp-1);border-radius:var(--r-sm);background:var(--surface-2);border:1px solid transparent;opacity:.62}.kz-cost.is-ready{opacity:1;border-color:var(--line-accent)}.kz-cost-head{display:inline-flex;align-items:center;gap:3px;color:var(--ink-muted);font-size:var(--fs-xs)}.kz-cost-label{white-space:nowrap}.kz-costs-more{display:flex;align-items:center;color:var(--ink-dim)}.kz-help-row{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2);border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line)}.kz-help-icon{display:flex;color:var(--brand)}.kz-steal-fan{display:flex;justify-content:center;flex-wrap:wrap;gap:var(--sp-1);padding-block:var(--sp-2)}.kz-steal-card{width:62px;padding:0;border:none;background:none;border-radius:var(--r-sm);transition:transform var(--dur-1) var(--ease),opacity var(--dur-2) var(--ease)}.kz-steal-card>svg{width:100%;height:auto;display:block}.kz-steal-card:hover:not([disabled]){transform:translateY(-8px)}.kz-steal-card.is-dimmed{opacity:.28}.kz-steal-card.is-picked{transform:translateY(-10px) scale(1.06)}.kz-steal-card.is-revealed{animation:pop var(--dur-3) var(--ease-pop)}.kz-fx-layer{position:fixed;inset:0;pointer-events:none;z-index:var(--z-toast);overflow:hidden}.kz-fx-card{position:absolute;top:0;left:0;will-change:transform,opacity;filter:drop-shadow(0 6px 12px rgba(0,0,0,.45))}.kz-fx-card>svg{width:100%;height:auto;display:block}.kz-hex.is-firing .kz-token{animation:kz-fire var(--dur-4) var(--ease) 2}.kz-hex.is-firing polygon:nth-of-type(2){filter:brightness(1.28)}.kz-hex.is-short .kz-token{animation:kz-shake var(--dur-3) var(--ease) 2}@keyframes kz-fire{0%,to{transform:scale(1)}40%{transform:scale(1.22)}}@keyframes kz-shake{0%,to{transform:translate(0)}25%{transform:translate(-3px)}75%{transform:translate(3px)}}.kz-piece.is-placing,.kz-road.is-placing{transform-box:fill-box;transform-origin:50% 100%;animation:kz-place var(--dur-3) var(--ease-pop)}@keyframes kz-place{0%{transform:translateY(-16%) scale(.45);opacity:0}to{transform:none;opacity:1}}.kz-player.is-acting{transform:translateY(-4px) scale(1.03)}.kz-player.is-hit{animation:kz-shake var(--dur-3) var(--ease) 2}.kz-player.is-crowned{box-shadow:0 0 0 2px var(--brand),0 8px 22px -8px var(--brand)}.kz-player.is-offering{box-shadow:0 0 0 2px var(--seat)}.kz-player.is-gained-seat,.kz-card.is-gained{animation:pop var(--dur-3) var(--ease-pop)}.kz-card.is-gained .kz-card-n{background:var(--brand);color:var(--ink-on-brand)}@media (prefers-reduced-motion: reduce){.kz-hex.is-firing .kz-token,.kz-hex.is-short .kz-token,.kz-player.is-hit,.kz-player.is-gained-seat,.kz-card.is-gained,.kz-piece.is-placing,.kz-road.is-placing,.kz-build-pop{animation:none}.kz-player.is-acting{transform:none}}[data-motion=off] .kz-hex.is-firing .kz-token,[data-motion=off] .kz-hex.is-short .kz-token,[data-motion=off] .kz-player.is-hit,[data-motion=off] .kz-player.is-gained-seat,[data-motion=off] .kz-card.is-gained,[data-motion=off] .kz-piece.is-placing,[data-motion=off] .kz-road.is-placing,[data-motion=off] .kz-build-pop{animation:none}.kz-editor{gap:var(--sp-4)}.kz-editor-stage{border-radius:var(--r-lg);overflow:hidden;background:var(--kz-sea, #23506B)}.kz-editor-board{display:block;inline-size:100%;max-block-size:46vh}.kz-editor-hex,.kz-editor-port{cursor:pointer}.kz-editor-hex:focus-visible,.kz-editor-port:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.kz-editor-hex.is-empty polygon{transition:fill var(--dur-1) var(--ease-out)}.kz-editor-hex.is-empty:hover polygon{fill:#fff3}.kz-editor-port:hover circle{stroke:var(--brand)}.kz-bag-left{margin-inline-start:var(--sp-2);opacity:.7;font-size:var(--fs-xs)}.kz-editor-bags .chip.is-empty{opacity:.38;cursor:default}.eq-board{display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-3) var(--sp-3) 0;flex:1;min-height:0;overflow-y:auto}.eq-status{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.eq-reserve{color:var(--brand)}.eq-table{--table-felt: #14202B;border-radius:var(--r-sm);flex:1 1 auto;block-size:auto;min-block-size:min(38dvh,460px)}.eq-map{user-select:none}.eq-cell{cursor:pointer}.eq-cell path{transition:filter var(--dur-1) var(--ease),fill-opacity var(--dur-1) var(--ease)}.eq-cell.is-source path{filter:brightness(1.16) saturate(1.1)}.eq-cell.is-picked path{filter:brightness(1.3) saturate(1.2)}.eq-cell.is-target path{filter:brightness(1.22)}.eq-cell:focus-visible{outline:none}.eq-layer-owner,.eq-layer-labels{pointer-events:none}.eq-name{font-weight:var(--fw-bold);text-anchor:middle;fill:#fff;fill-opacity:.96;pointer-events:none;paint-order:stroke;stroke:#0009;stroke-width:2.6px;letter-spacing:.2px}.eq-count{font-weight:800;text-anchor:middle;fill:#fff;pointer-events:none;paint-order:stroke;stroke:#00000080;stroke-width:2px}.eq-army{transition:r var(--dur-1) var(--ease)}.eq-dice{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.eq-loss{padding:0 var(--sp-2);border-radius:var(--r-pill);font-weight:var(--fw-bold);font-size:var(--fs-sm)}.eq-loss.is-atk{background:var(--danger);color:#fff}.eq-loss.is-def{background:var(--surface-2);color:var(--ink)}.eq-cards{display:flex;flex-direction:column;gap:var(--sp-2)}.eq-hand{display:flex;justify-content:center;padding-block:var(--sp-2) var(--sp-1);min-height:96px}.eq-card{flex:0 0 auto;width:68px;padding:0;border:none;background:none;border-radius:var(--r-sm);cursor:pointer;transition:transform var(--dur-1) var(--ease),filter var(--dur-1) var(--ease)}.eq-card+.eq-card{margin-inline-start:-18px}.eq-card:hover{transform:translateY(-4px)}.eq-card.is-picked{transform:translateY(-12px);filter:drop-shadow(0 0 6px var(--brand-glow))}.eq-card:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.eq-card .card-face{width:100%;height:auto;display:block}.card-title,.card-footer{font-weight:var(--fw-bold)}.eq-dock{flex-direction:column;align-items:stretch;flex:none}.screen-match .eq-board{margin-block-end:calc(-1 * (var(--safe-b) + var(--edge) + 2px))}.screen-match .eq-dock{margin-block-end:0}.eq-actions{display:flex;gap:var(--sp-2);flex-wrap:wrap}.eq-actions>.btn{flex:1 1 auto}.eq-mission{white-space:normal;text-align:start;line-height:1.5}.rs-board{display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-3) var(--sp-3) 0;flex:1;min-height:0;overflow-y:auto}.rs-status{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.rs-money{color:var(--brand)}.rs-table{--table-felt: #1A1F26;border-radius:var(--r-sm);flex:1 1 auto;block-size:auto;min-block-size:min(38dvh,460px)}.rs-map{user-select:none}.rs-lot{cursor:default}.rs-lot.is-open{cursor:pointer}.rs-hit{fill:transparent;stroke:none}.rs-hit,.rs-lot-art,.rs-tile-art{transition:filter var(--dur-1) var(--ease),stroke var(--dur-1) var(--ease)}.rs-lot.is-open .rs-hit{stroke:var(--brand);stroke-width:3}.rs-lot.is-open .rs-lot-art{filter:brightness(1.14)}.rs-lot.is-picked .rs-hit{stroke:var(--brand-strong);stroke-width:4}.rs-lot.is-offered .rs-hit{stroke:var(--brand);stroke-width:3;stroke-dasharray:5 3}.rs-lot:focus-visible{outline:none}.rs-lot:focus-visible .rs-hit{stroke:var(--brand);stroke-width:4}.rs-lot-no{font-weight:var(--fw-bold);fill:#3a3126;pointer-events:none;letter-spacing:-.5px}.rs-year-no,.rs-bill-no{font-weight:var(--fw-bold);pointer-events:none}.rs-street{font-size:15px;font-weight:var(--fw-bold);letter-spacing:2px;fill:var(--r-paper);fill-opacity:.5;pointer-events:none;text-transform:uppercase}.rs-dock{flex-direction:column;align-items:stretch;flex:none}.screen-match .rs-board{margin-block-end:calc(-1 * (var(--safe-b) + var(--edge) + 2px))}.screen-match .rs-dock{margin-block-end:0}.rs-pickbar{display:flex;flex-direction:column;gap:var(--sp-2)}.rs-tiles{display:flex;flex-direction:column;gap:var(--sp-1)}.rs-tiles .u-row{flex-wrap:wrap;gap:var(--sp-2)}.rs-tile{display:inline-flex;align-items:center;gap:var(--sp-1);padding:var(--sp-1) var(--sp-2);border-radius:var(--r-sm);border:2px solid var(--outline);background:var(--field);color:var(--field-ink);font-size:var(--fs-xs);font-weight:var(--fw-bold)}.rs-ic{display:inline-grid;place-items:center}.rs-offers{display:flex;flex-direction:column;gap:var(--sp-2)}.rs-offer{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2);border:2px solid var(--outline);border-radius:var(--r-md);background:var(--field)}.rs-offer.is-mine{border-color:var(--brand);background:var(--brand-soft)}.rs-builder{gap:var(--sp-2)}.rs-pick{display:flex;flex-wrap:wrap;gap:var(--sp-1)}.rs-craft-pick{display:flex;align-items:center;gap:var(--sp-2);justify-content:flex-start}.rs-actions{display:flex;gap:var(--sp-2);flex-wrap:wrap}.rs-actions>.btn{flex:1 1 auto}@media (max-width: 380px){.rs-street{font-size:13px;letter-spacing:1px}}.dl-host{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:var(--sp-2);height:100%;min-height:0;padding:var(--sp-2) var(--sp-2) 0}.dl-table{--table-felt: #1C2620;border-radius:var(--r-sm);min-height:0}.dl-board{user-select:none}.dl-cell{transition:fill var(--dur-2) var(--ease)}.dl-cell.is-goal{filter:brightness(1.06)}.dl-dot{opacity:.85;animation:dl-pulse 1.8s var(--ease) infinite}@keyframes dl-pulse{0%,to{opacity:.55}50%{opacity:.95}}.dl-slot{opacity:.9}.dl-wall.is-ghost{opacity:.75;animation:dl-ghost 1.1s var(--ease) infinite alternate}@keyframes dl-ghost{to{opacity:.4}}@media (prefers-reduced-motion: reduce){.dl-wall.is-ghost{animation:none}}.dl-status{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.dl-dists{display:flex;gap:var(--sp-1)}.dl-dist small{font-size:var(--fs-xs);opacity:.7}.dl-actions.game-dock{display:grid;grid-template-columns:1fr 1fr;align-items:stretch}.dl-actions>.btn{min-width:0;padding-inline:var(--sp-2)}.dl-line{grid-column:1 / -1;min-block-size:var(--tap);margin:0;display:flex;align-items:center;justify-content:center;gap:var(--sp-2);text-align:center;font-size:var(--fs-sm);color:var(--ink-muted)}.dl-line>.btn{flex:1 1 0;min-width:0;block-size:var(--tap);min-block-size:0}.dl-line{block-size:var(--tap)}@media (max-width: 380px){.dl-host{padding:var(--sp-1) var(--sp-1) 0}}.mn-host{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:var(--sp-2);height:100%;min-height:0;padding:var(--sp-2) var(--sp-2) 0}.mn-stage{position:relative;min-height:0;min-width:0;display:grid;grid-template-rows:minmax(0,1fr)}.mn-table{--table-felt: #16241C;border-radius:var(--r-sm);min-height:0}.mn-board{user-select:none}.mn-name{font-weight:var(--fw-bold);text-transform:uppercase}.mn-price{font-weight:var(--fw-bold)}.mn-corner-title{font-weight:var(--fw-black);text-transform:uppercase}.mn-corner-note{opacity:.8;text-transform:uppercase}.mn-go,.mn-wordmark{font-weight:var(--fw-black)}.mn-tagline{opacity:.8}.mn-deck-label{font-weight:var(--fw-black);text-transform:uppercase}.mn-piece-out{fill:none!important;stroke:#10140f;stroke-opacity:.85}.mn-piece-in{fill:currentColor}.mn-metal-in{fill:#8e959d!important;stroke:none}.mn-metal-lit{fill:#d7dde3!important;fill-opacity:.85;stroke:none}.mn-token{filter:drop-shadow(0 3px 4px rgba(0,0,0,.5));transition:filter var(--dur-2) var(--ease)}.mn-token.is-active{filter:drop-shadow(0 0 8px var(--brand-glow)) drop-shadow(0 3px 4px rgba(0,0,0,.5))}.mn-token.is-out{opacity:.3;filter:grayscale(1)}.mn-pick{filter:drop-shadow(0 0 6px var(--brand-glow))}.mn-hits rect{cursor:pointer}.mn-detail{position:absolute;inset-block-start:var(--sp-2);inset-inline-start:var(--sp-2);width:max-content;max-width:46%;display:flex;flex-direction:column;gap:1px;padding:var(--sp-1) var(--sp-3) var(--sp-2);border-radius:var(--r-xs);background:#fbf8f0;color:#1b241d;border:1px solid rgba(27,36,29,.22);border-top:6px solid var(--group, rgba(27, 36, 29, .3));box-shadow:0 6px 16px #00000073;text-align:center;pointer-events:none;z-index:2;font-size:var(--fs-xs);line-height:1.5}.mn-detail b{font-size:var(--fs-sm)}.mn-detail .u-dim{color:#1b241d99}.mn-detail .chip{padding:0 6px;background:#1b241d14;color:#1b241d;border:none;border-inline-start:3px solid var(--seat, rgba(27, 36, 29, .3))}.mn-status{display:flex;flex-direction:column;gap:var(--sp-1)}.mn-players{display:flex;gap:var(--sp-1);overflow-x:auto;scrollbar-width:none}.mn-players::-webkit-scrollbar{display:none}.mn-player{flex:0 0 auto;min-width:92px;display:flex;flex-direction:column;padding:var(--sp-1) var(--sp-2);border-radius:var(--r-md);background:var(--panel-bg);border:2px solid var(--outline);box-shadow:var(--sh-edge-sm),var(--panel-gloss),inset 0 0 0 3px var(--seat, var(--brand));color:var(--ink-on-dark);font-size:var(--fs-xs)}.mn-player>b{display:flex;align-items:center;gap:var(--sp-1)}.mn-player>b:before{content:"";flex:none;inline-size:11px;block-size:11px;border-radius:50%;background:var(--seat, var(--brand));box-shadow:0 0 0 2px var(--outline)}.mn-player.is-turn{border-color:var(--seat, var(--brand));box-shadow:var(--sh-edge-sm),0 0 0 3px var(--outline),inset 0 0 0 3px var(--seat, var(--brand))}.mn-player.is-me{background:linear-gradient(var(--surface-3),var(--surface-2))}.mn-player.is-out{opacity:.45}.mn-player .u-num{font-family:var(--font-display);font-size:var(--fs-body);font-weight:var(--fw-black);color:var(--brand)}.mn-roll{display:inline-flex;align-items:center;gap:3px}.mn-roll-die{display:inline-grid;place-items:center;min-width:16px;height:16px;padding:0 2px;border-radius:3px;background:#f4efe4;color:#24201a;font-size:10px;font-weight:var(--fw-bold);box-shadow:inset 0 -1px #0003}.mn-actions>.btn{min-height:48px}.mn-offer.game-dock{border-color:var(--brand);box-shadow:var(--panel-gloss),inset 0 0 0 2px var(--brand-soft)}.mn-manage-row{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2);border-radius:var(--r-sm);background:var(--surface);border:1px solid var(--line)}.mn-swatch{flex:none;width:10px;height:34px;border-radius:3px;border:1px solid var(--line)}@media (max-width: 720px){.mn-detail{max-width:62%;font-size:10px}}@media (max-width: 380px){.mn-host{padding:var(--sp-1) var(--sp-1) 0}.mn-player{min-width:76px}.mn-actions{gap:var(--sp-1)}}
