@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%}:root{color-scheme:dark;--bg: #0E1116;--bg-elev: #141922;--surface: #19202B;--surface-2: #212A38;--surface-3: #2B3646;--surface-glass: rgba(25, 32, 43, .72);--scrim: rgba(6, 9, 13, .68);--line: rgba(255, 255, 255, .09);--line-strong: rgba(255, 255, 255, .16);--line-accent: rgba(226, 168, 76, .34);--ink: #F2F5F9;--ink-muted: #A9B5C6;--ink-dim: #75839A;--ink-invert: #0E1116;--brand: #E2A84C;--brand-strong: #F0BE6B;--brand-deep: #A9761F;--brand-ink: #1A1206;--brand-soft: rgba(226, 168, 76, .14);--brand-glow: rgba(226, 168, 76, .38);--accent: #4FB6C9;--accent-soft: rgba(79, 182, 201, .14);--accent-deep: #2C8496;--ok: #4FC98A;--ok-soft: rgba(79, 201, 138, .14);--warn: #E9AE45;--warn-soft: rgba(233, 174, 69, .14);--danger: #EF5F52;--danger-soft: rgba(239, 95, 82, .14);--info: #5AA9E6;--info-soft: rgba(90, 169, 230, .14);--disabled-bg: rgba(255, 255, 255, .05);--disabled-ink: rgba(242, 245, 249, .34);--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-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: 6px;--r-sm: 10px;--r-md: 14px;--r-lg: 20px;--r-xl: 28px;--r-pill: 999px;--sh-1: 0 1px 2px rgba(0, 0, 0, .3);--sh-2: 0 4px 14px rgba(0, 0, 0, .34);--sh-3: 0 12px 34px rgba(0, 0, 0, .44);--sh-4: 0 24px 64px rgba(0, 0, 0, .55);--sh-brand: 0 10px 30px -12px var(--brand-glow);--sh-inset: inset 0 1px 0 rgba(255, 255, 255, .06);--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: 62px;--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: #1B1204;--ink-on-accent: #04222A;--ink-on-ok: #06231A;--ink-on-warn: #1B1204;--ink-on-danger: #FFFFFF;--ink-on-dark: #FFFFFF}html[data-appearance=light]{color-scheme:light;--bg: #F4F1EA;--bg-elev: #FAF8F3;--surface: #FFFFFF;--surface-2: #F1EDE4;--surface-3: #E6E0D3;--surface-glass: rgba(255, 255, 255, .78);--scrim: rgba(32, 26, 18, .42);--line: rgba(28, 22, 14, .1);--line-strong: rgba(28, 22, 14, .2);--line-accent: rgba(169, 118, 31, .4);--ink: #1C232E;--ink-muted: #566275;--ink-dim: #7C889A;--ink-invert: #FFFFFF;--brand: #B07A1D;--brand-strong: #8E6113;--brand-deep: #6E4B0C;--brand-ink: #FFFFFF;--brand-soft: rgba(176, 122, 29, .12);--brand-glow: rgba(176, 122, 29, .3);--accent: #1F7E90;--accent-soft: rgba(31, 126, 144, .12);--ok: #2E8F5E;--warn: #B57B14;--danger: #C6392C;--info: #2A72AF;--disabled-bg: rgba(28, 22, 14, .06);--disabled-ink: rgba(28, 35, 46, .38);--sh-1: 0 1px 2px rgba(40, 32, 20, .1);--sh-2: 0 4px 14px rgba(40, 32, 20, .12);--sh-3: 0 12px 34px rgba(40, 32, 20, .16);--sh-4: 0 24px 64px rgba(40, 32, 20, .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}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:radial-gradient(1200px 620px at 50% -12%,rgba(226,168,76,.1),transparent 62%),var(--bg);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;font-variant-ligatures:common-ligatures contextual;font-variant-numeric:tabular-nums;font-kerning:normal}h1,h2,h3,h4,p,figure,ul,ol{margin:0;padding:0}ul,ol{list-style:none}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-bold);line-height:var(--lh-tight)}h3{font-size:var(--fs-head);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.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}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-soft)}*{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}.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-size:var(--fs-head);font-weight:var(--fw-bold);letter-spacing:-.01em}.section-more{font-size:var(--fs-sm);color:var(--brand);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(--ink-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:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;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:var(--surface-glass);backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);border-bottom:1px solid var(--line)}.appbar.is-flat{background:transparent;border-bottom-color:transparent;backdrop-filter:none}.appbar-title{font-size:var(--fs-head);font-weight:var(--fw-bold);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:grid;grid-auto-flow:column;grid-auto-columns:1fr;max-width:var(--page-max);margin-inline:auto;padding-bottom:var(--safe-b);background:var(--surface-glass);backdrop-filter:blur(16px) saturate(140%);-webkit-backdrop-filter:blur(16px) saturate(140%);border-top:1px solid var(--line)}.tabbar[hidden]{display:none}.tab-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:var(--tabbar-h);color:var(--ink-dim);font-size:var(--fs-xs);font-weight:var(--fw-medium);position:relative;transition:color var(--dur-2) var(--ease)}.tab-item .icon{width:var(--icon-md);height:var(--icon-md)}.tab-item.is-active{color:var(--brand)}.tab-item.is-active:before{content:"";position:absolute;top:0;inline-size:28px;block-size:3px;border-radius:var(--r-pill);background:var(--brand);box-shadow:0 0 12px var(--brand-glow);animation:pop var(--dur-2) var(--ease-pop)}.tab-item:active{transform:scale(.94)}.tab-badge{position:absolute;top:8px;inset-inline-end:calc(50% - 20px);min-width:16px;height:16px;padding-inline:4px;border-radius:var(--r-pill);background:var(--danger);color:var(--ink-on-dark);font-size:10px;font-weight:var(--fw-bold);display:grid;place-items:center}.btn{--btn-bg: 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-radius:var(--r-md);background:var(--btn-bg);color:var(--btn-ink);font-size:var(--fs-body);font-weight:var(--fw-bold);border:1px solid var(--line);box-shadow:var(--sh-inset);transition:transform var(--dur-1) var(--ease),background var(--dur-1) var(--ease),box-shadow var(--dur-2) var(--ease),opacity var(--dur-1) var(--ease);user-select:none}.btn:hover{background:var(--surface-3)}.btn:active{transform:scale(.97)}.btn-primary{--btn-bg: linear-gradient(180deg, var(--brand-strong), var(--brand));--btn-ink: var(--brand-ink);border-color:transparent;box-shadow:var(--sh-brand),var(--sh-inset)}.btn-primary:hover{filter:brightness(1.05)}.btn-accent{--btn-bg: var(--accent);--btn-ink: var(--ink-on-accent);border-color:transparent}.btn-danger{--btn-bg: var(--danger);--btn-ink: var(--ink-on-danger);border-color:transparent}.btn-warn{--btn-bg: var(--warn);--btn-ink: var(--ink-on-warn);border-color:transparent}.btn-ghost{--btn-bg: transparent;border-color:var(--line);box-shadow:none}.btn-quiet{--btn-bg: transparent;border-color:transparent;box-shadow:none;color:var(--ink-muted);font-weight:var(--fw-medium)}.btn-lg{min-height:var(--tap-lg);font-size:var(--fs-head);border-radius:var(--r-lg)}.btn-sm{min-height:38px;padding-inline:var(--sp-3);font-size:var(--fs-sm);border-radius:var(--r-sm)}.btn-xs{min-height:32px;padding-inline:var(--sp-2);font-size:var(--fs-xs);border-radius:var(--r-xs)}.btn-block{display:flex;width:100%}.btn[disabled],.btn.is-disabled{background:var(--disabled-bg);color:var(--disabled-ink);border-color:transparent;box-shadow:none;filter:none;cursor:not-allowed}.btn.is-disabled{pointer-events:auto}.btn.is-active{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-soft)}.btn .icon{width:var(--icon-sm);height:var(--icon-sm)}.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(--safe-b));margin-block-start:auto;background:linear-gradient(to top,var(--bg) 62%,transparent)}.sticky-actions>.btn{flex:1}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-1);overflow:hidden}.card-pad{padding:var(--sp-4)}.card-tint{background:linear-gradient(180deg,var(--surface-2),var(--surface))}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-3)}.panel-title{font-size:var(--fs-head);font-weight:var(--fw-bold)}.list{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}.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-medium)}.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(--surface);border:1px solid var(--line);text-align:start;color:inherit}.banner-icon{width:40px;height:40px;border-radius:var(--r-md);display:grid;place-items:center;background:var(--brand-soft);color:var(--brand);flex:none}.banner-main{flex:1;min-width:0;display:flex;flex-direction:column}.banner-title{font-weight:var(--fw-bold)}.banner-sub{font-size:var(--fs-sm);color:var(--ink-muted)}.banner.is-brand{background:linear-gradient(135deg,var(--brand-soft),transparent 70%),var(--surface);border-color:var(--line-accent)}.banner.is-warn{border-color:var(--warn);background:var(--warn-soft)}.banner.is-danger{border-color:var(--danger);background:var(--danger-soft)}.acc{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);overflow:hidden}.acc+.acc{margin-block-start:var(--sp-2)}.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:1px solid var(--line);font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--ink-muted);white-space:nowrap}.chip-ok{background:var(--ok-soft);color:var(--ok);border-color:transparent}.chip-warn{background:var(--warn-soft);color:var(--warn);border-color:transparent}.chip-danger{background:var(--danger-soft);color:var(--danger);border-color:transparent}.chip-brand{background:var(--brand-soft);color:var(--brand);border-color:transparent}.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:#00000073;color:var(--ink-on-dark);backdrop-filter:blur(6px)}.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{width:100%;height:100%}.avatar-xs{--size: 28px}.avatar-sm{--size: 36px}.avatar-lg{--size: 64px}.avatar-xl{--size: 96px}.avatar.is-plus{box-shadow:0 0 0 2px var(--brand),0 0 18px -4px var(--brand-glow)}.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-medium)}.input{width:100%;min-height:var(--tap);padding:0 var(--sp-3);border-radius:var(--r-md);background:var(--surface-2);border:1px solid var(--line);color:var(--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: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-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(--surface-3);border:1px solid var(--line);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(--brand)}.switch.is-on:after{background:var(--brand-ink);transform:translate(calc(18px * var(--dir-x, -1)))}.seg{display:flex;gap:2px;padding:3px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-md)}.seg-opt{flex:1;min-height:38px;padding-inline:var(--sp-2);border-radius:var(--r-sm);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--ink-muted);transition:background var(--dur-2) var(--ease),color var(--dur-2) var(--ease);white-space:nowrap}.seg-opt.is-active{background:var(--surface);color:var(--ink);box-shadow:var(--sh-1)}.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-size:var(--fs-sm);font-weight:var(--fw-medium);white-space:nowrap}.tab.is-active{color:var(--ink)}.tab.is-active:after{content:"";position:absolute;inset-inline:var(--sp-2);bottom:-1px;height:2px;border-radius:var(--r-pill);background:var(--brand)}.meter{height:8px;border-radius:var(--r-pill);background:var(--surface-2);overflow:hidden}.meter>i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand-deep),var(--brand-strong));transition:width var(--dur-3) var(--ease)}.meter.is-thin{height:5px}.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(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--sp-3);display:flex;flex-direction:column;gap:2px}.stat-v{font-size:var(--fs-title);font-weight:var(--fw-black);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:148px;max-width:55%;opacity:.95}.state-title{font-size:var(--fs-head);font-weight:var(--fw-bold)}.state-text{color:var(--ink-muted);font-size:var(--fs-sm);max-width:34ch}.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-3);color:var(--ink);box-shadow:var(--sh-3);border-inline-start:3px solid var(--brand);font-size:var(--fs-sm);animation:rise var(--dur-2) var(--ease)}.toast-ok{border-inline-start-color:var(--ok)}.toast-warn{border-inline-start-color:var(--warn)}.toast-danger{border-inline-start-color:var(--danger)}.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(--bg-elev);border-radius:var(--r-xl) var(--r-xl) 0 0;border:1px solid var(--line);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:40px;height:4px;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-size:var(--fs-title);font-weight:var(--fw-bold)}.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}.dialog{position:relative;width:calc(100% - var(--sp-8));max-width:420px;margin:auto;padding:var(--sp-5);background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--r-xl);box-shadow: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-size:var(--fs-title);font-weight:var(--fw-bold);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}.game-card{display:flex;flex-direction:column;text-align:start;color:inherit;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-1);transition:transform var(--dur-2) var(--ease),box-shadow var(--dur-2) var(--ease),border-color var(--dur-2) var(--ease)}.game-card:hover{transform:translateY(-2px);box-shadow:var(--sh-3);border-color:var(--line-strong)}.game-card:active{transform:scale(.98)}.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}.gc-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.55),transparent 58%)}.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-weight:var(--fw-bold);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-size:var(--fs-body);font-weight:var(--fw-bold)}.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}.gc-foot{display:flex;align-items:center;gap:var(--sp-2)}.gc-diff{font-size:var(--fs-xs);color:var(--ink-dim)}.bars{display:inline-flex;gap:2px;align-items:flex-end}.bar{width:3px;height:7px;border-radius:1px;background:var(--surface-3)}.bar:nth-child(2){height:9px}.bar:nth-child(3){height:11px}.bar:nth-child(4){height:13px}.bar:nth-child(5){height:15px}.bar.is-on{background:var(--brand)}.spotlight{position:relative}.spot-track{display:grid;grid-auto-flow:column;grid-auto-columns:100%;gap:var(--sp-3);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;border-radius:var(--r-xl)}.spot-track::-webkit-scrollbar{display:none}.spot-slide{scroll-snap-align:center;position:relative;border-radius:var(--r-xl);overflow:hidden;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh-3);isolation:isolate}.spot-art{aspect-ratio:16 / 9}.spot-art>*{width:100%;height:100%;display:block;object-fit:cover}.spot-art:after{content:"";position:absolute;inset-block-start:0;inset-inline:0;aspect-ratio:16 / 9;background:linear-gradient(to top,var(--surface) 4%,transparent 62%)}.spot-copy{position:relative;margin-block-start:-14%;padding:var(--sp-4) var(--sp-5) var(--sp-5);display:flex;flex-direction:column;gap:var(--sp-2);align-items:flex-start}.spot-name{font-size:var(--fs-display);font-weight:var(--fw-black);line-height:1.25;letter-spacing:-.02em;text-wrap:balance}.spot-tag{color:var(--ink-muted);font-size:var(--fs-body);max-width:42ch}.spot-actions{display:flex;gap:var(--sp-2);width:100%;margin-block-start:var(--sp-2)}.spot-actions>.btn{flex:1}.spot-dots{display:flex;justify-content:center;gap:var(--sp-2);padding-block-start:var(--sp-3)}.spot-dot{inline-size:8px;block-size:8px;border-radius:50%;border:0;padding:0;background:var(--line-strong);transition:background var(--dur-2) var(--ease),inline-size var(--dur-2) var(--ease)}.spot-dot:before{content:"";position:absolute;inline-size:44px;block-size:44px;transform:translate(-18px,-18px)}.spot-dot.is-on{background:var(--brand);inline-size:22px;border-radius:var(--r-pill)}@media (max-width: 380px){.spot-name{font-size:var(--fs-title)}.spot-actions{flex-direction:column}}.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}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-2)}.quick-tile{display:flex;flex-direction:column;align-items:center;gap:var(--sp-1);padding:var(--sp-4) var(--sp-2);border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line);color:inherit;text-align:center;min-height:108px;transition:transform var(--dur-1) var(--ease),border-color var(--dur-2) var(--ease)}.quick-tile:active{transform:scale(.97)}.quick-tile:hover{border-color:var(--line-accent)}.quick-tile b{font-size:var(--fs-sm)}.quick-ic{width:40px;height:40px;border-radius:var(--r-md);display:grid;place-items:center;background:var(--brand-soft);color:var(--brand)}.join-box{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap;padding:var(--sp-4);border-radius:var(--r-lg);background:linear-gradient(135deg,var(--accent-soft),transparent 68%),var(--surface);border:1px solid var(--line)}.join-copy{display:flex;flex-direction:column;flex:1 1 160px}.join-row{display:flex;gap:var(--sp-2);flex:1 1 200px}.join-row .input{flex:1;min-width:110px}.quest-panel{gap:var(--sp-4)}.quest{display:flex;align-items:center;gap:var(--sp-3)}.quest-ic{width:34px;height:34px;flex:none;border-radius:var(--r-sm);display:grid;place-items:center;background:var(--surface-2);color:var(--ink-muted)}.quest.is-done .quest-ic{background:var(--ok-soft);color:var(--ok)}.quest.is-done{opacity:.72}.outcome-dot{width:10px;height:10px;border-radius:var(--r-pill);flex:none;background:var(--ink-dim)}.outcome-dot.is-win{background:var(--ok);box-shadow:0 0 0 3px var(--ok-soft)}.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)}.detail-hero{position:relative;margin-block-start:calc(var(--sp-4) * -1);border-radius:0 0 var(--r-xl) var(--r-xl);overflow:hidden;background:var(--surface-2)}.detail-art,.detail-art svg{width:100%;height:auto;display:block;aspect-ratio:16 / 9;object-fit:cover}.detail-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,var(--bg) 2%,transparent 55%)}.detail-name{font-size:var(--fs-display);font-weight:var(--fw-black)}.detail-desc{color:var(--ink-muted);font-size:var(--fs-body);line-height:var(--lh-body)}.spec-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(84px,1fr));gap:var(--sp-2)}.spec{padding:var(--sp-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);display:flex;flex-direction:column;gap:2px}.spec-k{font-size:var(--fs-xs);color:var(--ink-dim)}.spec-v{font-size:var(--fs-sm);font-weight:var(--fw-bold)}.pitch-box{padding:var(--sp-4);border-radius:var(--r-md);background:var(--brand-soft);border-inline-start:3px solid var(--brand);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;align-items:center;gap:var(--sp-3);padding:var(--sp-4);border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line)}.code-card.is-hero{background:linear-gradient(135deg,var(--brand-soft),transparent 70%),var(--surface);border-color:var(--line-accent)}.code-value{font-size:var(--fs-display);font-weight:var(--fw-black);letter-spacing:.28em;direction:ltr;color:var(--brand)}.seat-list{display:flex;flex-direction:column;gap:var(--sp-2)}.seat{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);border-inline-start:4px solid var(--seat, var(--line))}.seat.is-me{background:var(--surface-2)}.seat.is-empty{border-style:dashed;opacity:.9}.seat-avatar{width:36px;height:36px;flex:none;border-radius:var(--r-pill);display:grid;place-items:center;background:var(--surface-2);color:var(--ink-muted)}.seat-dot{width:10px;height:10px;border-radius:var(--r-pill);flex:none}.profile-head{padding:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-4)}.profile-head-top{display:flex;align-items:center;gap:var(--sp-3)}.profile-name{font-size:var(--fs-title);font-weight:var(--fw-black)}.profile-level{display:flex;flex-direction:column;gap:var(--sp-2)}.profile-quick{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-2)}.profile-tabs{margin-block:calc(var(--sp-2) * -1) 0;padding-inline:var(--sp-4);position:sticky;top:calc(var(--appbar-h) + var(--safe-t));background:var(--bg);z-index:2}.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:linear-gradient(135deg,var(--brand-soft),transparent 62%),var(--surface);border:1px solid var(--line-accent)}.sub-card.is-paid{box-shadow:var(--sh-brand)}.sub-actions{display:flex;gap:var(--sp-2);flex-wrap:wrap}.sub-actions>.btn{flex:1 1 auto}.ach-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--sp-2)}.ach{display:flex;flex-direction:column;align-items:center;gap:var(--sp-1);padding:var(--sp-3);border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line);text-align:center}.ach svg{width:52px;height:52px}.ach:not(.is-on){opacity:.72}.ach.is-on{border-color:var(--line-accent)}.ach-title{font-size:var(--fs-sm)}.ach-desc{min-height:2.4em}.ach-meter{display:flex;align-items:center;gap:var(--sp-2);width:100%}.ach-meter .meter{flex:1}.friend-row{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2) 0;border-bottom:1px solid var(--line);text-align:start;color:inherit;width:100%}.friend-row:last-child{border-bottom:0}.notify-dot{width:8px;height:8px;border-radius:var(--r-pill);flex:none;background:var(--line)}.notify-dot.is-unread{background:var(--brand)}.screen-invite .panel{gap:var(--sp-3);padding-block:var(--sp-5)}.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)}.rating-card{align-items:center;gap:var(--sp-3);cursor:pointer}.rating-card:active{transform:scale(.99)}.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:flex;gap:var(--sp-2);overflow-x:auto;scrollbar-width:none;padding-block:var(--sp-2)}.price-picker::-webkit-scrollbar{display:none}.price-opt{position:relative;flex:1 0 108px;padding:var(--sp-3) var(--sp-2);border-radius:var(--r-md);background:var(--surface);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(--surface);border:1px solid var(--line)}.plan-card.is-featured{border-color:var(--brand);box-shadow:var(--sh-brand)}.plan-card.is-current{border-color:var(--ok)}.plan-flag{position:absolute;top:0;inset-inline-end:var(--sp-4);transform:translateY(-50%);background:var(--brand);color:var(--brand-ink);font-size:var(--fs-xs);font-weight:var(--fw-bold);padding:2px var(--sp-3);border-radius:var(--r-pill)}.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)}.plan-price-box{text-align:end}.plan-price{font-size:var(--fs-title);font-weight:var(--fw-black);color:var(--brand)}.plan-period{font-size:var(--fs-xs);color:var(--ink-dim)}.plan-feats{display:flex;flex-direction:column;gap:var(--sp-2);font-size:var(--fs-sm)}.plan-feats li{display:flex;align-items:center;gap:var(--sp-2);color:var(--ink-muted)}.plan-feats .icon{color:var(--ok)}.table-wrap{overflow-x:auto;border-radius:var(--r-md);border:1px solid var(--line)}.compare-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm);min-width:320px}.compare-table th,.compare-table td{padding:var(--sp-2) var(--sp-3);text-align:center;border-bottom:1px solid var(--line)}.compare-table th:first-child,.compare-table td:first-child{text-align:start;color:var(--ink-muted)}.compare-table thead th{background:var(--surface-2);font-weight:var(--fw-bold)}.compare-yes{color:var(--ok);font-weight:var(--fw-bold)}.compare-no{color:var(--ink-dim)}.store-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:var(--sp-2)}.store-item{display:flex;flex-direction:column;align-items:center;gap:var(--sp-1);padding:var(--sp-3);border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line);color:inherit}.store-item.is-owned{border-color:var(--ok)}.si-art{font-size:26px}.si-name{font-size:var(--fs-xs);text-align:center}.si-price{font-size:var(--fs-xs);color:var(--brand);font-weight:var(--fw-bold)}.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}.screen-welcome .screen-body{justify-content:center;gap:var(--sp-5)}.welcome-art{border-radius:var(--r-xl);overflow:hidden;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh-3)}.welcome-art svg{width:100%;height:auto;display:block}.welcome-copy{display:flex;flex-direction:column;gap:var(--sp-3);align-items:flex-start}.welcome-mark{width:36px;height:36px;border-radius:var(--r-md);display:grid;place-items:center;background:var(--brand-soft);color:var(--brand)}.welcome-title{font-size:var(--fs-display);font-weight:var(--fw-black);text-wrap:balance}.welcome-body{color:var(--ink-muted)}.welcome-name{width:100%}.welcome-foot{align-items:center}.welcome-dots{display:flex;gap:var(--sp-1);flex:1;justify-content:center}.welcome-dot{width:7px;height:7px;border-radius:var(--r-pill);background:var(--surface-3)}.welcome-dot.is-on{background:var(--brand);width:20px}.welcome-foot .btn-primary{flex:0 0 auto}.screen-auth .screen-body{max-width:460px;margin-inline:auto;width:100%}.auth-note{padding:var(--sp-3);border-radius:var(--r-md);background:var(--brand-soft);color:var(--ink-muted);font-size:var(--fs-sm)}.auth-form{display:flex;flex-direction:column;gap:var(--sp-4)}.auth-title{font-size:var(--fs-title);font-weight:var(--fw-black)}.auth-sub{color:var(--ink-muted);font-size:var(--fs-sm)}.auth-fields{display:flex;flex-direction:column;gap:var(--sp-4)}.auth-send{align-self:flex-start}.auth-links{display:flex;flex-wrap:wrap;gap:var(--sp-3);justify-content:center;padding-block:var(--sp-2)}.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-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-bottom:0;padding-inline:var(--safe-s) var(--safe-e);background:radial-gradient(120% 70% at 50% 0%,rgba(226,168,76,.07),transparent 62%),var(--bg)}.match-bar{grid-row:1;display:flex;align-items:center;gap:var(--sp-2);padding:calc(var(--safe-t) + var(--sp-2)) var(--sp-2) var(--sp-2);flex:none}.turn-pill{flex:1;min-width:0;display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-1) var(--sp-3);border-radius:var(--r-pill);background:var(--surface);border:1px solid var(--line);border-inline-start:3px solid var(--seat, var(--brand));transition:box-shadow var(--dur-2) var(--ease),background var(--dur-2) var(--ease)}.turn-pill.is-mine{background:linear-gradient(90deg,var(--brand-soft),var(--surface));border-color:var(--brand);animation:pulse-ring 2.4s var(--ease) infinite}.turn-pill.is-over{border-color:var(--ok)}.turn-avatar{display:flex;flex:none}.turn-name{font-size:var(--fs-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.turn-state{color:var(--ink-dim)}.turn-clock{font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--ink-muted)}.turn-clock.is-low{color:var(--danger)}.timer-bar{grid-row:2;height:3px;background:var(--surface-2);flex:none}.timer-fill{display:block;height:100%;background:linear-gradient(90deg,var(--brand-deep),var(--brand-strong));transition:width .48s linear}.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}.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%}.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}.end-badge{width:68px;height:68px;margin-inline:auto;border-radius:var(--r-pill);display:grid;place-items:center;background:var(--surface-2);color:var(--ink-muted);animation:pop var(--dur-4) var(--ease-pop)}.end-badge.is-win{background:var(--brand);color:var(--brand-ink);box-shadow:0 0 34px -6px var(--brand-glow)}.end-badge.is-lose{background:var(--surface-3)}.end-scores{display:flex;flex-direction:column;gap:var(--sp-1)}.end-row{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-sm);background:var(--surface);font-size:var(--fs-sm)}.end-row.is-me{border:1px solid var(--brand)}.end-rank{width:18px;color:var(--ink-dim);font-size:var(--fs-xs)}.kz-dice-layer,.dice-throw{pointer-events:none}.dice-die{--dice-face: #F4EFE4;--dice-pip: #24201A}.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: calc(var(--tap) + var(--sp-2) + var(--sp-3));position:relative;overflow:hidden;min-height:0;min-width:0;aspect-ratio:var(--tt-aspect, auto);box-sizing:border-box;inline-size:100%;max-inline-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)}.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}.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-cam{position:absolute;inset-block-end:var(--sp-2);inset-inline-end:var(--sp-3);z-index:2;display:flex;flex-direction:column;align-items:flex-end;gap:var(--sp-2);pointer-events:none}.tt-cam>*{pointer-events:auto}.tt-cam-row{display:flex;gap:var(--sp-1);padding:var(--sp-1);border-radius:var(--r-pill);background:color-mix(in srgb,var(--surface) 82%,transparent);border:1px solid var(--line);box-shadow:var(--sh-2)}.tt-btn{width:var(--tap);height:var(--tap);display:grid;place-items:center;border-radius:var(--r-pill);color:var(--ink-muted);transition:background var(--dur-1) var(--ease),color var(--dur-1) var(--ease)}.tt-btn:active{background:var(--surface-3);color:var(--ink)}@media (hover: hover){.tt-btn:hover{background:var(--surface-2);color:var(--ink)}}.tt-btn[aria-expanded=true]{background:var(--brand-soft);color:var(--brand)}.tt-views{display:grid;grid-template-columns:repeat(3,var(--tap));gap:var(--sp-1);padding:var(--sp-1);border-radius:var(--r-md);background:color-mix(in srgb,var(--surface) 92%,transparent);border:1px solid var(--line);box-shadow:var(--sh-3);animation:tt-views-in var(--dur-2) var(--ease)}@keyframes tt-views-in{0%{opacity:0;transform:translateY(6px) scale(.96)}to{opacity:1;transform:none}}[data-motion=off] .tt-views{animation:none}@media (prefers-reduced-motion: reduce){.tt-views{animation: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-rows:minmax(var(--kz-stage-min, 38dvh),1fr) auto;height:100%;min-height:0;--kz-stage-min: 38dvh}.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: var(--kz-sea-deep);position:absolute;inset:0;border-radius:var(--r-lg)}.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;padding: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-spot{cursor:pointer;animation:spot-pulse 1.8s var(--ease-in-out) infinite}.kz-spot-road{stroke-opacity:.55}@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);padding:var(--sp-2) var(--sp-3) calc(var(--sp-2) + var(--safe-b));background:linear-gradient(to top,var(--bg-elev),transparent);position:relative;z-index:var(--z-hud);max-height:52dvh;overflow-y:auto;overscroll-behavior:contain}.kz-dock-handle{display:flex;align-items:center;gap:var(--sp-2);align-self:center;padding:2px var(--sp-3);min-height:28px;border-radius:var(--r-pill);background:var(--surface);border:1px solid var(--line);color:var(--ink-muted);font-size:var(--fs-xs)}.kz-host.is-collapsed{--kz-stage-min: 56dvh}.kz-host.is-collapsed .kz-players,.kz-host.is-collapsed .kz-dice{display:none}.kz-host.is-collapsed .kz-hand{gap:2px}.kz-host.is-collapsed .kz-card{width:40px;margin-inline-start:-12px}.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:132px;padding:var(--sp-2);border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line);border-inline-start:3px solid var(--seat);transition:box-shadow var(--dur-2) var(--ease),transform var(--dur-2) var(--ease)}.kz-player.is-turn{box-shadow:0 0 0 1px var(--seat),0 6px 18px -8px var(--seat);transform:translateY(-2px)}.kz-player.is-me{background:var(--surface-2)}.kz-p-avatar{display:flex}.kz-p-name{font-size:var(--fs-xs)}.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{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;padding-inline-start:14px}.kz-card{position:relative;flex:0 0 auto;width:52px;margin-inline-start:-14px;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-end:-4px;inset-inline-end:-4px;min-width:20px;padding:0 4px;border-radius:var(--r-pill);background:var(--surface-3);border:1px solid var(--line);color:var(--ink);font-size:var(--fs-xs);text-align:center}.kz-card.is-empty{opacity:.38}.kz-card.is-empty .kz-card-n{background:var(--surface-2)}.kz-i{display:inline-flex}.kz-stock{display:flex;gap:var(--sp-2);margin-inline-start:auto;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;gap:var(--sp-2);overflow-x:auto;scrollbar-width:none;padding-block:var(--sp-1);position:sticky;bottom:0;z-index:1;background:var(--bg-elev)}.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{color:var(--ink-dim);font-size:var(--fs-sm);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-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-host{--kz-stage-min: 40dvh}.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}}@media (min-width: 720px){.kz-dock{flex-direction:row;flex-wrap:wrap;align-items:center}.kz-players{flex:1 1 320px}.kz-hand{flex:1 1 280px}.kz-actions{flex:1 1 100%}}.eq-board{display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-3);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:none;max-block-size:min(58dvh,560px)}.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-actions{display:flex;gap:var(--sp-2);flex-wrap:wrap}.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);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:none;max-block-size:min(56dvh,520px)}.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-pickbar{display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-2);border:1px solid var(--line-accent);border-radius:var(--r-md);background:var(--surface)}.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);background:var(--surface-2);font-size:var(--fs-xs)}.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:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.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}@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)}.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:.7}.dl-status{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.dl-dists{display:flex;gap:var(--sp-1)}.dl-dist{display:flex;align-items:baseline;gap:3px;padding:2px var(--sp-2);border-radius:var(--r-pill);background:var(--surface);border:1px solid var(--line);border-inline-start:3px solid var(--seat, var(--brand));font-size:var(--fs-sm)}.dl-dist.is-me{border-color:var(--brand);background:var(--brand-soft)}.dl-dist small{font-size:var(--fs-xs);opacity:.65}.dl-actions{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap;padding-bottom:var(--safe-b)}@media (max-width: 380px){.dl-host{padding:var(--sp-1)}.dl-actions .u-xs{display:none}}.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)}.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{opacity:.78;font-weight:var(--fw-regular)}.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:84px;display:flex;flex-direction:column;padding:2px var(--sp-2);border-radius:var(--r-sm);background:var(--surface);border:1px solid var(--line);border-inline-start:3px solid var(--seat, var(--brand));font-size:var(--fs-xs)}.mn-player.is-turn{background:var(--brand-soft);border-color:var(--brand)}.mn-player.is-me b{color:var(--brand)}.mn-player.is-out{opacity:.45}.mn-player .u-num{font-size:var(--fs-sm);font-weight:var(--fw-bold)}.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{display:flex;align-items:center;justify-content:flex-start;gap:var(--sp-2);flex-wrap:wrap;padding:var(--sp-2) var(--sp-1) calc(var(--sp-1) + var(--safe-b));border-top:1px solid var(--line)}.mn-actions .btn-primary{box-shadow:var(--sh-brand)}.mn-offer{padding:var(--sp-2);border-radius:var(--r-sm);background:var(--brand-soft);border:1px solid var(--brand)}.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)}.mn-player{min-width:68px}.mn-actions{gap:var(--sp-1)}}
