@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/games/assets/pixelify-sans-cyrillic-400-normal-Ckz2YJkH.woff2) format("woff2"),url(/games/assets/pixelify-sans-cyrillic-400-normal-DfOZNMlW.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/games/assets/pixelify-sans-latin-ext-400-normal-DdH6zlBQ.woff2) format("woff2"),url(/games/assets/pixelify-sans-latin-ext-400-normal-BkfTUL4s.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/games/assets/pixelify-sans-latin-400-normal-DLrIX9QE.woff2) format("woff2"),url(/games/assets/pixelify-sans-latin-400-normal-JapMNN6Z.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/games/assets/pixelify-sans-cyrillic-600-normal-BhqNJYOZ.woff2) format("woff2"),url(/games/assets/pixelify-sans-cyrillic-600-normal-B3EuUOZG.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/games/assets/pixelify-sans-latin-ext-600-normal-Dha6RiOG.woff2) format("woff2"),url(/games/assets/pixelify-sans-latin-ext-600-normal-CDaIumwU.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/games/assets/pixelify-sans-latin-600-normal-Dd_Dy7u5.woff2) format("woff2"),url(/games/assets/pixelify-sans-latin-600-normal-BNlgYbDL.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/games/assets/pixelify-sans-cyrillic-700-normal-CYtG5Rfp.woff2) format("woff2"),url(/games/assets/pixelify-sans-cyrillic-700-normal-BrZTw8tu.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/games/assets/pixelify-sans-latin-ext-700-normal-ClyJstAh.woff2) format("woff2"),url(/games/assets/pixelify-sans-latin-ext-700-normal-BadXkHzZ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/games/assets/pixelify-sans-latin-700-normal-D3Xxx3QE.woff2) format("woff2"),url(/games/assets/pixelify-sans-latin-700-normal-BctWAS0u.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Silkscreen;font-style:normal;font-display:swap;font-weight:400;src:url(/games/assets/silkscreen-latin-ext-400-normal-2T9bWrxp.woff2) format("woff2"),url(/games/assets/silkscreen-latin-ext-400-normal-Drdn_BEM.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Silkscreen;font-style:normal;font-display:swap;font-weight:400;src:url(/games/assets/silkscreen-latin-400-normal-CtPo2yA5.woff2) format("woff2"),url(/games/assets/silkscreen-latin-400-normal-D0DfPJut.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/games/assets/nunito-sans-cyrillic-ext-400-normal-El6lRT8b.woff2) format("woff2"),url(/games/assets/nunito-sans-cyrillic-ext-400-normal-fk07B0hk.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/games/assets/nunito-sans-cyrillic-400-normal-DUb-KqT8.woff2) format("woff2"),url(/games/assets/nunito-sans-cyrillic-400-normal-DDHmqnIJ.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/games/assets/nunito-sans-vietnamese-400-normal-V2dSmW1H.woff2) format("woff2"),url(/games/assets/nunito-sans-vietnamese-400-normal-D5dwM7ZL.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/games/assets/nunito-sans-latin-ext-400-normal-BoHsJHPR.woff2) format("woff2"),url(/games/assets/nunito-sans-latin-ext-400-normal-CHwj-NZB.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/games/assets/nunito-sans-latin-400-normal-AkRraKH2.woff2) format("woff2"),url(/games/assets/nunito-sans-latin-400-normal-DY9yCUyQ.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/games/assets/nunito-sans-cyrillic-ext-600-normal-CVjnjZn6.woff2) format("woff2"),url(/games/assets/nunito-sans-cyrillic-ext-600-normal-DZXkk6dX.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/games/assets/nunito-sans-cyrillic-600-normal-D4TuIAT6.woff2) format("woff2"),url(/games/assets/nunito-sans-cyrillic-600-normal-CKMyzy87.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/games/assets/nunito-sans-vietnamese-600-normal-DD7cNabE.woff2) format("woff2"),url(/games/assets/nunito-sans-vietnamese-600-normal-BW3IEr32.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/games/assets/nunito-sans-latin-ext-600-normal-nHO2odcJ.woff2) format("woff2"),url(/games/assets/nunito-sans-latin-ext-600-normal-DEh-VjuY.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/games/assets/nunito-sans-latin-600-normal-BtVRvDNj.woff2) format("woff2"),url(/games/assets/nunito-sans-latin-600-normal-DLks-Kj1.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/games/assets/nunito-sans-cyrillic-ext-700-normal-GO46tfsI.woff2) format("woff2"),url(/games/assets/nunito-sans-cyrillic-ext-700-normal-Cqve7k0J.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/games/assets/nunito-sans-cyrillic-700-normal-BJ2iHHyS.woff2) format("woff2"),url(/games/assets/nunito-sans-cyrillic-700-normal-DG2UZxR9.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/games/assets/nunito-sans-vietnamese-700-normal-CZwaiz_e.woff2) format("woff2"),url(/games/assets/nunito-sans-vietnamese-700-normal-BwTSkH1V.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/games/assets/nunito-sans-latin-ext-700-normal-DBq_Pukt.woff2) format("woff2"),url(/games/assets/nunito-sans-latin-ext-700-normal-jHN8vCOt.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/games/assets/nunito-sans-latin-700-normal-CICRJDmU.woff2) format("woff2"),url(/games/assets/nunito-sans-latin-700-normal-CLVG92B9.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/games/assets/nunito-sans-cyrillic-ext-800-normal-suUH8DVf.woff2) format("woff2"),url(/games/assets/nunito-sans-cyrillic-ext-800-normal-DlIrhRQ2.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/games/assets/nunito-sans-cyrillic-800-normal-COys2OwR.woff2) format("woff2"),url(/games/assets/nunito-sans-cyrillic-800-normal-x7mxdBjZ.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/games/assets/nunito-sans-vietnamese-800-normal-CfdX2BhI.woff2) format("woff2"),url(/games/assets/nunito-sans-vietnamese-800-normal-hO2TqS3m.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/games/assets/nunito-sans-latin-ext-800-normal-DWckPAf3.woff2) format("woff2"),url(/games/assets/nunito-sans-latin-ext-800-normal-DG0lbXwA.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/games/assets/nunito-sans-latin-800-normal-MgCk9Q3Y.woff2) format("woff2"),url(/games/assets/nunito-sans-latin-800-normal-DOf_K5Iw.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--plant-dark: #9c4a1e;--plant-mid: #e07a2f;--plant-light: #f6a95b;--grid-dark: #2c5aa0;--grid-mid: #4a8ad8;--grid-light: #8cc0f0;--dc-dark: #4d3a8c;--dc-mid: #7b5fd0;--dc-light: #b49cf5;--town-dark: #1f7a4d;--town-mid: #34b36a;--town-light: #8fe0a8;--power-dark: #c99a1a;--power-mid: #ffd23f;--power-light: #fff1a8;--money-dark: #1f7f86;--money-mid: #2fb8b0;--money-light: #8fe6dc;--grass-dark: #4f7d32;--grass-mid: #6f9e3d;--grass-light: #98c25a;--dirt-dark: #7a5a3c;--dirt-mid: #a07a52;--dirt-light: #c9a273;--stone-dark: #5f6680;--stone-mid: #9aa1b8;--stone-light: #d4d8e4;--ink-dark: #1b1a24;--ink-mid: #2d2f40;--ink-light: #3b3f54;--cream-dark: #e9e2cf;--cream-mid: #f6f1e3;--cream-light: #fffdf6;--status-good: #3bb273;--status-warn: #f2a33a;--status-critical: #e5484d;--company-0: #e07a2f;--company-1: #4a8ad8;--company-2: #7b5fd0;--company-3: #34b36a;--company-4: #e5484d;--company-5: #2fb8b0;--font-pixel: "Pixelify Sans", "Silkscreen", ui-monospace, monospace;--font-caps: "Silkscreen", "Pixelify Sans", ui-monospace, monospace;--font-num: "Silkscreen", "Pixelify Sans", ui-monospace, monospace;--font-body: "Nunito Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--text-sm: 14px;--text-md: 16px;--text-lg: 18px;--text-xl: 22px;--text-2xl: 28px;--text-3xl: 40px;--text-hero: clamp(44px, 9vw, 88px);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--radius: 12px;--radius-sm: 8px;--radius-xs: 6px;--radius-pill: 999px;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--dur-fast: .12s;--dur: .22s;--dur-slow: .4s;--topbar-h: 64px;--rail-w: 84px;--sheet-w: 380px;--tabbar-h: 64px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px);--z-map: 0;--z-sheet: 20;--z-bar: 30;--z-menu: 40;--z-overlay: 60;--z-toast: 80}:root,:root[data-theme=light]{color-scheme:light;--bg: var(--cream-mid);--bg-deep: var(--cream-dark);--surface: var(--cream-light);--surface-2: var(--cream-mid);--surface-3: var(--cream-dark);--surface-sunken: #efe8d5;--border: #ddd4bd;--border-strong: #c9bfa4;--text: var(--ink-dark);--text-muted: #565c74;--text-faint: #6b718a;--text-on-accent: var(--ink-dark);--accent: var(--power-mid);--accent-strong: var(--power-dark);--accent-soft: var(--power-light);--focus: var(--grid-dark);--money: var(--money-dark);--money-bg: color-mix(in srgb, var(--money-mid) 16%, transparent);--good: #1f7a4d;--good-icon: var(--status-good);--warn: #8a5300;--warn-icon: #d98a1c;--critical: #b3262b;--critical-icon: var(--status-critical);--info: var(--grid-dark);--info-icon: var(--grid-mid);--plant-ink: var(--plant-dark);--grid-ink: var(--grid-dark);--dc-ink: var(--dc-dark);--town-ink: var(--town-dark);--power-ink: #8a6a0e;--shadow: 0 2px 0 rgba(27, 26, 36, .1), 0 2px 2px rgba(27, 26, 36, .06);--shadow-raised: 0 2px 0 rgba(27, 26, 36, .12), 0 8px 24px rgba(27, 26, 36, .12);--scrim: rgba(27, 26, 36, .42);--map-ground: var(--grass-mid);--map-ground-2: var(--grass-light)}:root[data-theme=dark]{color-scheme:dark;--bg: var(--ink-dark);--bg-deep: #14131b;--surface: var(--ink-mid);--surface-2: #34374a;--surface-3: var(--ink-light);--surface-sunken: #23242f;--border: #44485f;--border-strong: #565b75;--text: var(--cream-light);--text-muted: var(--stone-light);--text-faint: var(--stone-mid);--text-on-accent: var(--ink-dark);--accent: var(--power-mid);--accent-strong: var(--power-light);--accent-soft: color-mix(in srgb, var(--power-mid) 22%, transparent);--focus: var(--power-mid);--money: var(--money-light);--money-bg: color-mix(in srgb, var(--money-mid) 18%, transparent);--good: var(--town-light);--good-icon: var(--status-good);--warn: #ffc77a;--warn-icon: var(--status-warn);--critical: #ff9a9d;--critical-icon: var(--status-critical);--info: var(--grid-light);--info-icon: var(--grid-mid);--plant-ink: var(--plant-light);--grid-ink: var(--grid-light);--dc-ink: var(--dc-light);--town-ink: var(--town-light);--power-ink: var(--power-mid);--shadow: 0 2px 0 rgba(0, 0, 0, .35), 0 2px 2px rgba(0, 0, 0, .2);--shadow-raised: 0 2px 0 rgba(0, 0, 0, .4), 0 10px 28px rgba(0, 0, 0, .4);--scrim: rgba(10, 10, 16, .6);--map-ground: #3e5f2a;--map-ground-2: #4f7d32}:root[data-reduced-motion=true]{--dur-fast: 0ms;--dur: 0ms;--dur-slow: 0ms}@media(prefers-reduced-motion:reduce){:root:not([data-reduced-motion=false]){--dur-fast: 0ms;--dur: 0ms;--dur-slow: 0ms}}@media(max-width:640px){:root{--topbar-h: 96px;--tabbar-h: 64px}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:var(--text-md);line-height:1.45;font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior:none;transition:background-color var(--dur) var(--ease-out),color var(--dur) var(--ease-out)}h1,h2,h3,h4{margin:0;font-family:var(--font-pixel);font-weight:600;line-height:1.15;letter-spacing:.01em}h1{font-size:var(--text-2xl)}h2{font-size:var(--text-xl)}h3{font-size:var(--text-lg)}h4{font-size:var(--text-md)}p{margin:0}button,input,select,textarea{font:inherit;color:inherit;font-variant-numeric:tabular-nums}button{cursor:pointer}button:disabled{cursor:not-allowed}input[type=number]{-moz-appearance:textfield;appearance:textfield}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}a{color:var(--grid-ink)}img,svg,canvas{display:block}:focus{outline:none}:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:var(--radius-xs)}::selection{background:var(--accent-soft);color:var(--text)}.num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;white-space:nowrap}.pixel{font-family:var(--font-pixel)}.pixel.num,.pixel .num,h1 .num,h2 .num,h3 .num{font-family:var(--font-num);letter-spacing:-.02em}.caps{font-family:var(--font-caps);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.02em}.muted{color:var(--text-muted)}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}:root[data-reduced-motion=true] *,:root[data-reduced-motion=true] *:before,:root[data-reduced-motion=true] *:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.app{min-height:100%;height:100%}.icon{flex:none;image-rendering:pixelated}.inline-icon{display:inline-block;vertical-align:-3px}.btn{--btn-bg: var(--surface);--btn-fg: var(--text);--btn-edge: var(--border-strong);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:40px;padding:0 var(--space-4);border:1px solid var(--btn-edge);border-radius:var(--radius-sm);background:var(--btn-bg);color:var(--btn-fg);font-weight:700;font-size:var(--text-sm);line-height:1.1;box-shadow:0 2px 0 var(--btn-edge);transition:transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),background-color var(--dur) var(--ease-out),opacity var(--dur) var(--ease-out);user-select:none;white-space:nowrap}.btn:hover:not(:disabled){background:color-mix(in srgb,var(--btn-bg) 88%,var(--text))}.btn:active:not(:disabled){transform:translateY(2px);box-shadow:0 0 0 var(--btn-edge)}.btn:disabled{opacity:.5;box-shadow:none}.btn-sm{min-height:32px;padding:0 var(--space-3)}.btn-md{font-size:var(--text-md)}.btn-lg{min-height:48px;padding:0 var(--space-5);font-size:var(--text-md);font-weight:800}.btn-block{width:100%}.btn-primary{--btn-bg: var(--accent);--btn-fg: var(--text-on-accent);--btn-edge: var(--power-dark)}.btn-primary:hover:not(:disabled){background:color-mix(in srgb,var(--power-mid) 85%,white)}.btn-money{--btn-bg: var(--money-mid);--btn-fg: var(--ink-dark);--btn-edge: var(--money-dark)}.btn-danger{--btn-bg: var(--status-critical);--btn-fg: #fff;--btn-edge: #a8282c}.btn-ghost{--btn-bg: transparent;--btn-edge: transparent;box-shadow:none}.btn-ghost:hover:not(:disabled){background:var(--surface-3)}.btn-label{display:inline-flex;align-items:center}.icon-btn{--btn-bg: transparent;--btn-fg: var(--text);--btn-edge: transparent;position:relative;display:inline-grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid var(--btn-edge);border-radius:var(--radius-sm);background:var(--btn-bg);color:var(--btn-fg);transition:background-color var(--dur) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.icon-btn:hover:not(:disabled){background:var(--surface-3)}.icon-btn:active:not(:disabled){transform:translateY(1px)}.icon-btn:disabled{opacity:.4}.icon-btn.btn-secondary{--btn-bg: var(--surface);--btn-edge: var(--border-strong);box-shadow:0 2px 0 var(--border-strong)}.icon-btn[aria-pressed=true]{background:var(--surface-3)}.icon-btn-sm{width:32px;height:32px}.icon-btn-lg{width:48px;height:48px}.icon-btn-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 4px;border-radius:var(--radius-pill);background:var(--grid-dark);color:#fff;font-size:var(--text-sm);font-weight:800;line-height:18px;text-align:center}.link-btn{align-self:flex-start;padding:0;border:0;background:none;color:var(--grid-ink);font-size:var(--text-sm);font-weight:700;text-decoration:underline;text-underline-offset:3px}.field{display:flex;flex-direction:column;gap:var(--space-1)}.field-label,.stepper-label{font-size:var(--text-sm);font-weight:700;color:var(--text)}.field-desc,.stepper-hint{font-size:var(--text-sm);color:var(--text-muted)}.field-desc.is-error{color:var(--critical)}.input{min-height:44px;padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-sunken);color:var(--text);font-size:var(--text-md);transition:border-color var(--dur) var(--ease-out)}.input::placeholder{color:var(--text-faint)}.input:focus-visible{border-color:var(--focus);outline-offset:0}.input[aria-invalid=true]{border-color:var(--critical-icon)}.check{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);cursor:pointer}.check input{width:18px;height:18px;accent-color:var(--money-mid)}.stepper{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.stepper.is-disabled{opacity:.6}.stepper-control{display:flex;align-items:stretch;height:40px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-sunken);overflow:hidden}.stepper-control:focus-within{border-color:var(--focus);box-shadow:0 0 0 2px color-mix(in srgb,var(--focus) 40%,transparent)}.stepper-btn{display:grid;place-items:center;width:40px;border:0;background:var(--surface-2);color:var(--text);touch-action:manipulation}.stepper-btn:hover:not(:disabled){background:var(--surface-3)}.stepper-btn:disabled{color:var(--text-faint);opacity:.5}.stepper-input{flex:1;min-width:48px;width:0;padding:0 var(--space-2);border:0;background:transparent;font-weight:800;font-size:var(--text-lg);text-align:right}.stepper-input:focus-visible{outline:none}.stepper-unit{display:flex;align-items:center;padding-right:var(--space-2);color:var(--text-muted);font-size:var(--text-sm);font-weight:700}.segmented-field{display:flex;flex-direction:column;gap:var(--space-2)}.segmented{display:flex;gap:2px;padding:3px;border-radius:var(--radius-sm);background:var(--surface-sunken);border:1px solid var(--border)}.segmented-option{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-1);min-height:36px;padding:0 var(--space-3);border:0;border-radius:var(--radius-xs);background:transparent;color:var(--text-muted);font-size:var(--text-sm);font-weight:700;transition:background-color var(--dur) var(--ease-out),color var(--dur) var(--ease-out)}.segmented-option:hover:not(:disabled):not(.is-checked){color:var(--text)}.segmented-option.is-checked{background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.segmented-option:disabled{opacity:.45}.toggle-field,.settings-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.toggle-text{display:flex;flex-direction:column;gap:2px}.toggle{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1);border:0;border-radius:var(--radius-pill);background:none;color:var(--text-muted);font-size:var(--text-sm);font-weight:700}.toggle-track{position:relative;width:44px;height:26px;border-radius:var(--radius-pill);background:var(--surface-3);border:1px solid var(--border-strong);transition:background-color var(--dur) var(--ease-out)}.toggle-thumb{position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:var(--surface);box-shadow:var(--shadow);transition:transform var(--dur) var(--ease-spring)}.toggle.is-on{color:var(--text)}.toggle.is-on .toggle-track{background:var(--money-mid);border-color:var(--money-dark)}.toggle.is-on .toggle-thumb{transform:translate(18px)}.toggle-state{min-width:2.2em;text-align:left}.chip{--chip-icon: var(--info-icon);--chip-bg: color-mix(in srgb, var(--grid-mid) 12%, var(--surface));--chip-edge: color-mix(in srgb, var(--grid-mid) 40%, var(--border));position:relative;display:inline-flex;align-items:center;gap:6px;flex:none;min-height:32px;max-width:100%;padding:4px 12px 4px 8px;border:1px solid var(--chip-edge);border-radius:var(--radius-pill);background:var(--chip-bg);color:var(--text);font-size:var(--text-sm);font-weight:700;line-height:1.2;white-space:nowrap}.chip-icon{color:var(--chip-icon)}.chip-value{color:var(--text-muted);font-weight:600}.chip-warn{--chip-icon: var(--warn-icon);--chip-bg: color-mix(in srgb, var(--status-warn) 16%, var(--surface));--chip-edge: color-mix(in srgb, var(--status-warn) 55%, var(--border))}.chip-critical{--chip-icon: var(--critical-icon);--chip-bg: color-mix(in srgb, var(--status-critical) 13%, var(--surface));--chip-edge: color-mix(in srgb, var(--status-critical) 55%, var(--border))}.chip-ok{--chip-icon: var(--good-icon);--chip-bg: color-mix(in srgb, var(--status-good) 12%, var(--surface));--chip-edge: color-mix(in srgb, var(--status-good) 45%, var(--border))}.chip-action{cursor:pointer;transition:transform var(--dur-fast) var(--ease-out)}.chip-action:hover{transform:translateY(-1px)}.chip-action:active{transform:translateY(1px)}@media(hover:hover){.chip[data-detail]:hover:after,.chip[data-detail]:focus-visible:after{content:attr(data-detail);position:absolute;top:calc(100% + 8px);left:0;z-index:var(--z-menu);width:max-content;max-width:320px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--ink-mid);color:var(--cream-light);box-shadow:var(--shadow-raised);font-weight:600;white-space:normal;pointer-events:none}}.tag{display:inline-block;margin-left:var(--space-2);padding:0 6px;border-radius:var(--radius-xs);font-size:var(--text-sm);font-weight:700;vertical-align:1px}.tag-warn{background:color-mix(in srgb,var(--status-warn) 22%,transparent);color:var(--warn)}.tag-critical{background:color-mix(in srgb,var(--status-critical) 18%,transparent);color:var(--critical)}.delta{display:inline-flex;align-items:center;gap:2px;font-size:var(--text-sm);font-weight:800}.delta-up{color:var(--good)}.delta-down{color:var(--critical)}.delta-flat{color:var(--text-muted)}.money{color:var(--money)}.is-negative{color:var(--critical)!important}.strong{font-weight:800}.row-between{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.row-gap{display:flex;flex-wrap:wrap;gap:var(--space-2)}.plain-list{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding:0;list-style:none}.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2) var(--space-4);margin:0}.facts-3{grid-template-columns:repeat(3,minmax(0,1fr))}.facts>div{display:flex;flex-direction:column;gap:2px;min-width:0}.facts dt{color:var(--text-muted);font-size:var(--text-sm)}.facts dd{margin:0;font-weight:800;font-size:var(--text-lg)}.panel-stack{display:flex;flex-direction:column;gap:var(--space-3)}.panel-lead{color:var(--text-muted);font-size:var(--text-sm)}.panel{--tone: var(--border);display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.panel-sunken{background:var(--surface-sunken);box-shadow:none}.panel-plant{border-top:3px solid var(--plant-mid)}.panel-grid{border-top:3px solid var(--grid-mid)}.panel-dc{border-top:3px solid var(--dc-mid)}.panel-town{border-top:3px solid var(--town-mid)}.panel-money{border-top:3px solid var(--money-mid)}.panel-power{border-top:3px solid var(--power-mid)}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);font-size:var(--text-sm)}.panel-title{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-lg)}.alloc-row{display:grid;grid-template-columns:minmax(0,1fr);gap:4px}.alloc-note{display:flex;flex-wrap:wrap;align-items:center;gap:4px var(--space-3);color:var(--text);font-size:var(--text-sm)}.alloc-sum{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:700;color:var(--good)}.alloc-sum.is-idle{color:var(--warn)}.build-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.build-card{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1);padding:var(--space-3);border:1px solid var(--border);border-left:4px solid var(--hue);border-radius:var(--radius-sm);background:var(--surface-2)}.build-card .icon{color:var(--hue)}.build-name{font-weight:800}.build-meta{color:var(--text-muted);font-size:var(--text-sm)}.build-card .btn{margin-top:var(--space-1);align-self:stretch}.loan-row{display:flex;flex-direction:column;gap:var(--space-2);padding-bottom:var(--space-3);border-bottom:1px dashed var(--border)}.loan-row:last-child{padding-bottom:0;border-bottom:0}.loan-head{font-size:var(--text-sm)}.table-wrap{overflow-x:auto;margin:0 calc(-1 * var(--space-2))}.table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.table th,.table td{padding:6px var(--space-2);border-bottom:1px solid var(--border);text-align:left;white-space:nowrap}.table thead th{color:var(--text-muted);font-weight:700}.table tbody th{font-weight:700}.table .r{text-align:right}.cell-sub{display:block;font-size:var(--text-sm);font-weight:600;line-height:1.1}.leaders{font-size:var(--text-sm);gap:2px}.rank-list{display:flex;flex-direction:column;gap:4px;margin:0;padding:0;list-style:none}.rank-list li{display:flex;align-items:center;gap:var(--space-2);padding:6px var(--space-2);border-radius:var(--radius-sm)}.rank-list li.is-me{background:var(--accent-soft);font-weight:800}.rank-pos{font-size:var(--text-lg);color:var(--text-muted)}.rank-swatch{width:12px;height:12px;border-radius:3px}.rank-pos{min-width:2.4em}.rank-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rank-price{font-weight:800;font-size:var(--text-md)}.tabs{display:flex;gap:var(--space-1)}.tabs-vertical{flex-direction:column}.tab{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:72px;padding:var(--space-2) var(--space-1);border:1px solid transparent;border-radius:var(--radius);background:transparent;color:var(--text-muted);font-size:var(--text-sm);font-weight:700;transition:background-color var(--dur) var(--ease-out),color var(--dur) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.tab:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.tab.is-selected{background:var(--surface-3);border-color:var(--border-strong);color:var(--text)}.tab:disabled{opacity:.4}.tab-kbd{position:absolute;top:4px;right:6px;font-family:var(--font-caps);font-size:var(--text-sm);line-height:1;color:var(--text-faint)}.tab-badge{position:absolute;top:6px;left:6px;min-width:20px;height:20px;padding:0 5px;border-radius:var(--radius-pill);background:var(--grid-dark);color:#fff;font-size:var(--text-sm);font-weight:800;line-height:20px}.tab .tab-icon{color:inherit}.tab.is-selected .tab-icon{color:var(--power-ink)}.game{display:grid;grid-template-rows:auto auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);height:100vh;height:100dvh;overflow:hidden;background:var(--bg)}.game-chrome{position:relative;z-index:var(--z-bar);display:contents}.game-main{position:relative;display:flex;min-height:0}.map-area{position:relative;flex:1;min-width:0;overflow:hidden;background:radial-gradient(circle at 1px 1px,color-mix(in srgb,var(--map-ground-2) 55%,transparent) 1px,transparent 0) 0 0 / 16px 16px,var(--map-ground)}.topbar{position:relative;z-index:var(--z-bar);display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);min-height:var(--topbar-h);padding:var(--space-2) var(--space-4);padding-top:calc(var(--space-2) + var(--safe-top));padding-left:calc(var(--space-4) + var(--safe-left));padding-right:calc(var(--space-4) + var(--safe-right));background:var(--surface);border-bottom:1px solid var(--border);box-shadow:var(--shadow)}.tb-stats{display:flex;align-items:center;gap:var(--space-6);min-width:0}.stat{display:flex;flex-direction:column;gap:0;min-width:0}.stat-label{color:var(--text-muted);font-size:var(--text-sm);line-height:1.1}.stat-value{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-pixel);font-size:var(--text-xl);line-height:1.2;white-space:nowrap}.stat-of{color:var(--text-muted);font-size:var(--text-sm);font-family:var(--font-body);font-weight:700}.stat-sub{color:var(--text-muted);font-size:var(--text-sm);line-height:1}.stat-money .stat-value{color:var(--money)}.season-icon{color:var(--town-mid)}.season-1{color:var(--power-dark)}.season-2{color:var(--plant-mid)}.season-3{color:var(--grid-mid)}.tb-actions{display:flex;align-items:center;gap:var(--space-4);flex:none}.tb-buttons{display:flex;align-items:center;gap:var(--space-1)}.projection{display:flex;flex-direction:column;align-items:flex-end;padding:4px var(--space-3);border-radius:var(--radius-sm);background:var(--surface-sunken);border:1px solid var(--border)}.projection-label{color:var(--text-muted);font-size:var(--text-sm);font-weight:700;line-height:1.1}.projection-value{font-family:var(--font-body);font-weight:800;font-size:var(--text-lg);line-height:1.2}.projection.is-up .projection-value{color:var(--good)}.projection.is-down .projection-value,.projection.is-down .projection-label{color:var(--critical)}.lock-wrap{margin-left:var(--space-2)}.lock-btn{min-width:132px}.chips{position:relative;z-index:calc(var(--z-bar) - 1);display:flex;align-items:center;gap:var(--space-2);min-height:48px;padding:var(--space-2) var(--space-4);padding-left:calc(var(--space-4) + var(--safe-left));overflow-x:auto;background:color-mix(in srgb,var(--bg) 92%,transparent);border-bottom:1px solid var(--border);scrollbar-width:none}.chips::-webkit-scrollbar{display:none}#lock-reason{white-space:normal}.dock{position:relative;z-index:var(--z-sheet);display:flex;flex:none}.rail{display:flex;flex-direction:column;width:var(--rail-w);padding:var(--space-2);padding-right:calc(var(--space-2) + var(--safe-right));background:var(--surface);border-left:1px solid var(--border)}.sheet{position:absolute;top:var(--space-3);right:calc(var(--rail-w) + var(--space-3));bottom:var(--space-3);display:flex;flex-direction:column;width:min(var(--sheet-w),calc(100vw - var(--rail-w) - 2 * var(--space-3)));border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);box-shadow:var(--shadow-raised);animation:sheet-in-side var(--dur) var(--ease-out);overflow:hidden}@keyframes sheet-in-side{0%{opacity:0;transform:translate(16px)}}.sheet-grip{display:none}.sheet-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-3) var(--space-3) var(--space-3) var(--space-4);border-bottom:1px solid var(--border);background:var(--surface)}.sheet-title{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-xl)}.sheet-title .icon{color:var(--power-ink)}.sheet-body{flex:1;min-height:0;padding:var(--space-3);overflow-y:auto;overscroll-behavior:contain}.sheet-forced{border-color:color-mix(in srgb,var(--status-critical) 60%,var(--border))}.sheet-forced .sheet-title .icon{color:var(--critical-icon)}.dialog{width:min(480px,calc(100vw - 2 * var(--space-4)));max-height:calc(100dvh - 2 * var(--space-4));padding:0;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);box-shadow:var(--shadow-raised)}.dialog[open]{animation:pop-in var(--dur) var(--ease-out)}.dialog::backdrop{background:var(--scrim)}@keyframes pop-in{0%{opacity:0;transform:translateY(8px) scale(.98)}}.dialog-card{display:flex;flex-direction:column}.dialog-head{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-4) var(--space-3) var(--space-5);border-bottom:1px solid var(--border)}.dialog-title{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-xl)}.dialog-body{padding:var(--space-5)}.dialog-foot{display:flex;justify-content:flex-end;padding:var(--space-3) var(--space-5) var(--space-5)}.settings-grid{display:flex;flex-direction:column;gap:var(--space-5)}.menu-wrap{position:relative}.menu{position:absolute;top:calc(100% + 6px);right:0;z-index:var(--z-menu);display:flex;flex-direction:column;min-width:220px;padding:var(--space-1);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-raised);animation:pop-in var(--dur-fast) var(--ease-out)}.menu-item{display:flex;align-items:center;gap:var(--space-3);min-height:44px;padding:var(--space-2) var(--space-3);border:0;border-radius:var(--radius-sm);background:none;font-weight:700;text-align:left}.menu-item:hover,.menu-item:focus-visible{background:var(--surface-3);outline-offset:-2px}.menu-item-text{display:flex;flex-direction:column}.menu-item-hint{color:var(--text-muted);font-size:var(--text-sm);font-weight:600}.title{position:relative;display:flex;flex-direction:column;align-items:center;gap:var(--space-6);min-height:100%;padding:calc(var(--space-6) + var(--safe-top)) var(--space-4) calc(var(--space-6) + var(--safe-bottom));background:radial-gradient(ellipse at 50% -20%,color-mix(in srgb,var(--power-mid) 22%,transparent),transparent 60%),var(--bg);overflow-x:hidden}.title-top{position:absolute;top:calc(var(--space-4) + var(--safe-top));right:calc(var(--space-4) + var(--safe-right))}.title-hero{display:flex;flex-direction:column;align-items:center;gap:var(--space-8);margin-top:var(--space-8);text-align:center}.title-tagline{max-width:560px;color:var(--text-muted);font-size:var(--text-lg)}.logo{position:relative;display:flex;align-items:center;gap:var(--space-3)}.logo-word{font-family:var(--font-pixel);font-weight:700;line-height:.95;letter-spacing:.02em;color:var(--text)}.logo-hero .logo-word{font-size:var(--text-hero);text-shadow:4px 4px 0 var(--power-mid),8px 8px 0 var(--plant-mid)}:root[data-theme=dark] .logo-hero .logo-word{text-shadow:4px 4px 0 var(--power-dark),8px 8px 0 var(--plant-dark)}.logo-bolt{display:grid;place-items:center;color:var(--power-mid);filter:drop-shadow(3px 3px 0 var(--power-dark))}.logo-hero .logo-bolt{width:88px;height:88px;border-radius:20px;background:var(--ink-mid);box-shadow:0 4px 0 var(--ink-dark);animation:bolt-pulse 2.4s var(--ease-in-out) infinite}@keyframes bolt-pulse{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.logo-small .logo-word{font-size:var(--text-2xl)}.logo-dots{position:absolute;left:104px;right:8px;bottom:-22px;display:flex;justify-content:space-between}.logo-dots i{width:8px;height:8px;background:var(--power-mid);box-shadow:0 2px 0 var(--power-dark);animation:dot-flow 1.6s steps(4) infinite}@keyframes dot-flow{0%,to{opacity:.25}50%{opacity:1}}.title-scene{display:flex;justify-content:center;width:100vw;overflow:hidden;border-block:4px solid var(--ink-mid);background:var(--grass-mid)}.title-scene canvas{width:1728px;height:256px;max-width:none;image-rendering:pixelated}:root[data-theme=dark] .title-scene canvas{filter:brightness(.72) saturate(.9) hue-rotate(-8deg)}.title-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-4);width:100%;max-width:980px}.card{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.card-title{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xl)}.card-title .icon{color:var(--power-ink)}.card-desc{color:var(--text-muted);font-size:var(--text-sm)}.card-resume{border-color:color-mix(in srgb,var(--power-mid) 60%,var(--border));box-shadow:0 2px 0 var(--power-dark)}.card-wide{width:min(560px,100%)}.resume-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2) var(--space-4);margin:0}.resume-facts dt{color:var(--text-muted)}.resume-facts dd{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:800;font-size:var(--text-lg)}.solo-form{display:flex;flex-direction:column;gap:var(--space-3)}.multi-actions{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}.title-foot{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-2) var(--space-6);margin-top:auto;color:var(--text-muted);font-size:var(--text-sm);text-align:center}.screen-center{display:grid;place-items:center;min-height:100%;padding:calc(var(--space-6) + var(--safe-top)) var(--space-4) calc(var(--space-6) + var(--safe-bottom))}.pmap{position:absolute;inset:0;overflow:auto;padding:var(--space-4)}.pmap-inner{display:flex;flex-direction:column;gap:var(--space-3);max-width:760px;margin:0 auto}.pmap-links{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:0;padding:0;list-style:none}.pmap-link{display:inline-flex;align-items:center;gap:var(--space-2);padding:6px var(--space-3);border-radius:var(--radius-pill);background:var(--surface);box-shadow:var(--shadow);font-size:var(--text-sm);font-weight:700}.pmap-link .icon{color:var(--grid-mid)}.pmap-link.is-none{opacity:.7}.pmap-pending{color:var(--grid-ink);font-weight:700}.pmap-plot{display:grid;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius);background:color-mix(in srgb,var(--dirt-mid) 35%,transparent);border:2px dashed color-mix(in srgb,var(--dirt-dark) 50%,transparent)}.lot{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:116px;padding:var(--space-2);border-radius:var(--radius-sm);text-align:center}.lot-empty{border:2px dashed color-mix(in srgb,var(--stone-mid) 70%,transparent);background:color-mix(in srgb,var(--stone-light) 25%,transparent);color:var(--ink-light)}:root[data-theme=dark] .lot-empty{color:var(--stone-light)}.lot-building{border:1px solid var(--border);border-bottom:4px solid var(--hue);background:var(--surface);color:var(--text);box-shadow:var(--shadow);transition:transform var(--dur-fast) var(--ease-out)}.lot-building .icon{color:var(--hue)}.lot-building:hover{transform:translateY(-2px)}.lot-building.is-selected{outline:3px solid var(--power-mid);outline-offset:2px}.lot-building.is-busy{background:repeating-linear-gradient(135deg,var(--surface) 0 10px,var(--surface-2) 10px 20px)}.lot-pending{border:2px dashed var(--hue);background:color-mix(in srgb,var(--surface) 70%,transparent);color:var(--text)}.lot-pending .icon{color:var(--hue)}.lot-name{font-weight:800;font-size:var(--text-sm)}.lot-meta{color:var(--text-muted);font-size:var(--text-sm)}.lot-empty .lot-meta{color:inherit}.pmap-foot{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface) 85%,transparent);font-size:var(--text-sm)}.bcard{position:absolute;left:var(--space-4);bottom:var(--space-4);z-index:5;display:flex;flex-direction:column;gap:var(--space-3);width:min(320px,calc(100% - 2 * var(--space-4)));padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-raised);animation:pop-in var(--dur) var(--ease-out)}.bcard-head{display:flex;align-items:center;justify-content:space-between}.bcard-head h3{display:inline-flex;align-items:center;gap:var(--space-2)}@media(min-width:641px){.game-main:has(.dock.has-sheet) .pmap{padding-right:calc(var(--sheet-w) + var(--space-6))}}.overlay{position:fixed;inset:0;z-index:var(--z-overlay);display:grid;place-items:center;padding:calc(var(--space-4) + var(--safe-top)) var(--space-4) calc(var(--space-4) + var(--safe-bottom));background:var(--scrim);animation:fade-in var(--dur) var(--ease-out);overflow-y:auto}@keyframes fade-in{0%{opacity:0}}.overlay-card{width:min(980px,100%);padding:var(--space-6);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-raised);animation:pop-in var(--dur-slow) var(--ease-out)}.results{display:flex;flex-direction:column;gap:var(--space-5)}.results-head{display:flex;flex-direction:column;gap:var(--space-1)}.results-profit{font-size:var(--text-3xl)}.results-profit.is-up .num{color:var(--good)}.results-profit.is-down .num{color:var(--critical)}.results-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--space-5)}.results-grid section{display:flex;flex-direction:column;gap:var(--space-3);font-size:var(--text-sm)}.results-grid h3{font-size:var(--text-lg)}.results-foot{display:flex;justify-content:flex-end}.bars{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding:0;list-style:none}.bars li{display:grid;grid-template-columns:9.5em 1fr 4.5em;align-items:center;gap:var(--space-2)}.bar-track{position:relative;height:12px;border-radius:3px;background:var(--surface-sunken)}.bar-track:before{content:"";position:absolute;top:-2px;bottom:-2px;left:50%;width:2px;background:var(--border-strong)}.bar{position:absolute;top:0;bottom:0;border-radius:2px;transition:width var(--dur-slow) var(--ease-out)}.bar-up{left:50%;background:var(--status-good)}.bar-down{right:50%;background:var(--status-critical)}.bar-value{text-align:right}@media(max-width:640px){.topbar{flex-direction:column;align-items:stretch;gap:var(--space-2);padding:var(--space-2) var(--space-3);padding-top:calc(var(--space-2) + var(--safe-top))}.tb-stats{flex-wrap:wrap;justify-content:space-between;gap:2px var(--space-2)}.stat-value{font-size:var(--text-lg);gap:4px}.stat-of{font-size:var(--text-sm)}.stat-rank .stat-of,.stat-sub,.stat-price .delta .num{display:none}.tb-actions{justify-content:space-between;gap:var(--space-2)}.projection{flex-direction:column;align-items:flex-start;gap:0;min-width:0;padding:2px var(--space-2)}.projection-label,.projection-value{white-space:nowrap}.projection-value{font-size:var(--text-md)}.tb-buttons{gap:0}.lock-wrap{margin-left:var(--space-1)}.lock-btn{min-width:0;min-height:44px;padding:0 var(--space-3)}.chips{min-height:44px;padding:6px var(--space-3)}.game-main{flex-direction:column}.dock{position:static;display:block}.rail{position:relative;z-index:calc(var(--z-sheet) + 1);flex-direction:row;width:auto;padding:var(--space-1) var(--space-2) calc(var(--space-1) + var(--safe-bottom));border-left:0;border-top:1px solid var(--border)}.rail .tabs{flex-direction:row;width:100%}.rail .tab{flex:1;min-height:56px;padding:4px}.tab-kbd{display:none}.sheet{top:auto;left:0;right:0;bottom:calc(var(--tabbar-h) + var(--safe-bottom));width:auto;max-height:min(72%,560px);height:auto;border-radius:var(--radius) var(--radius) 0 0;border-bottom:0;animation-name:sheet-in-bottom}.sheet-grip{display:block;width:40px;height:4px;margin:8px auto 0;border-radius:var(--radius-pill);background:var(--border-strong)}.sheet-head{padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4)}.sheet-title{font-size:var(--text-lg)}@keyframes sheet-in-bottom{0%{opacity:0;transform:translateY(24px)}}.facts-3{grid-template-columns:repeat(2,minmax(0,1fr))}.overlay{place-items:start center}.overlay-card{padding:var(--space-4)}.results-profit{font-size:var(--text-2xl)}.results-foot{position:sticky;bottom:calc(-1 * var(--space-4));margin:0 calc(-1 * var(--space-4)) calc(-1 * var(--space-4));padding:var(--space-3) var(--space-4) var(--space-4);border-top:1px solid var(--border);border-radius:0 0 var(--radius) var(--radius);background:var(--surface)}.results-foot .btn{width:100%}.bars li{grid-template-columns:8em 1fr 4em}.title-hero{margin-top:var(--space-10)}.logo-hero .logo-bolt{width:64px;height:64px}.logo-hero .logo-bolt .icon{width:48px;height:48px}.logo-dots{left:76px}.title-tagline{font-size:var(--text-md)}.pmap{padding:var(--space-3)}.pmap-plot{gap:var(--space-2);padding:var(--space-2)}.lot{min-height:92px;padding:4px}.lot .icon{width:24px;height:24px}}@media(max-width:640px)and (max-height:700px){.sheet{max-height:64%}}@media(min-width:641px)and (max-width:1100px){.tb-stats{gap:var(--space-4)}.stat-value{font-size:var(--text-lg)}.projection-label{display:none}.lock-btn{min-width:0}}@media(min-width:641px)and (max-width:860px){.stat-rank,.stat-sub{display:none}}.lvl-chip{display:inline-block;padding:0 6px;border-radius:4px;background:var(--surface-sunken, color-mix(in srgb, var(--text) 8%, transparent));color:var(--text-muted);font-size:var(--text-sm);font-weight:800;line-height:1.4;vertical-align:2px;white-space:nowrap;font-variant-numeric:tabular-nums}.lvl-chip.lvl-3{background:var(--power-mid);color:var(--ink-dark)}.land-facts dd{font-size:var(--text-lg)}.land-new{color:var(--money)}.land-of{color:var(--text-muted);font-size:var(--text-sm);font-weight:700}.land-facts dd.is-negative{color:var(--critical)}.land-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3)}.land-panel .field-desc .icon{vertical-align:-3px}.upg-levels{display:grid;gap:var(--space-1);margin:0 0 var(--space-2);padding:0;list-style:none;font-size:var(--text-sm)}.tstrip{position:sticky;top:calc(-1 * var(--space-3));z-index:3;display:flex;flex-direction:column;gap:2px;margin:calc(-1 * var(--space-3)) calc(-1 * var(--space-3)) 0;padding:var(--space-2) var(--space-4) var(--space-2);border-bottom:1px solid var(--border);background:var(--surface);box-shadow:0 2px color-mix(in srgb,var(--text) 4%,transparent)}.tstrip-main{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.tstrip-label{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:700;font-size:var(--text-sm)}.tstrip-label .icon{color:var(--money-mid);align-self:center}.tstrip-value{color:var(--money);font-size:var(--text-2xl);line-height:1}.tstrip-sub{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:2px var(--space-3);color:var(--text-muted);font-size:var(--text-sm);font-weight:600}.tstrip-sub .delta-up,.tstrip-sub .delta-down{font-weight:800}.tstrip-warn{display:flex;align-items:flex-start;gap:var(--space-2);color:var(--critical);font-size:var(--text-sm);font-weight:700}.tstrip-warn .icon{color:var(--critical-icon);margin-top:2px}.pnote{display:flex;align-items:flex-start;gap:var(--space-2);font-size:var(--text-sm);color:var(--text)}.pnote-icon{margin-top:2px;color:var(--info-icon)}.pnote-warn .pnote-icon{color:var(--warn-icon)}.pnote-warn{color:var(--warn);font-weight:700}.pnote-critical .pnote-icon{color:var(--critical-icon)}.pnote-critical{color:var(--critical);font-weight:700}.pnote-ok .pnote-icon{color:var(--good-icon)}.tag-plain{background:var(--surface-3);color:var(--text-muted)}.tag-me{background:var(--accent-soft);color:var(--text)}.ss{display:flex;flex-direction:column;gap:0;min-width:0;user-select:none;-webkit-user-select:none}.ss.is-disabled .ss-knob{cursor:default;opacity:.6}.ss-empty{padding:var(--space-2) 0}.ss-markers{position:relative;height:20px}.ss-markers.is-empty{height:4px}.ss-marker-label{position:absolute;bottom:2px;transform:translate(-50%);padding:0 4px;border-radius:var(--radius-xs);background:var(--surface-3);color:var(--text);font-size:var(--text-sm);font-weight:700;line-height:16px;white-space:nowrap}.ss-track{position:relative;height:40px;border-radius:var(--radius-sm);background:var(--surface-sunken);box-shadow:inset 0 0 0 1px var(--border);overflow:hidden}.ss-seg,.ss-idle,.ss-unavail{position:absolute;top:0;bottom:0;display:flex;align-items:center;justify-content:center;gap:4px;overflow:hidden;transition:left var(--dur-fast) var(--ease-out),width var(--dur-fast) var(--ease-out)}.ss-seg{box-shadow:inset -2px 0 0 var(--surface);font-weight:800;font-size:var(--text-sm)}.ss-seg.is-active{filter:brightness(1.06)}.ss-seg-num{font-weight:800}.ss-idle{background:repeating-linear-gradient(135deg,transparent 0 5px,color-mix(in srgb,var(--text) 10%,transparent) 5px 7px);color:var(--text-muted)}.ss-unavail{background:repeating-linear-gradient(45deg,var(--surface-3) 0 5px,color-mix(in srgb,var(--text) 18%,var(--surface-3)) 5px 7px);color:var(--text-muted);box-shadow:inset 2px 0 0 var(--surface)}.ss-seg-text{padding:0 4px;border-radius:var(--radius-xs);background:color-mix(in srgb,var(--surface) 80%,transparent);font-size:var(--text-sm);font-weight:700;white-space:nowrap}.ss-marker{position:absolute;top:0;bottom:0;width:2px;margin-left:-1px;background:var(--text);pointer-events:none}.ss-knobs{position:relative;height:50px}.ss-leaders{position:absolute;top:0;left:0;overflow:visible}.ss-leaders line{stroke:var(--text-muted);stroke-width:1.5}.ss-knob{position:absolute;top:14px;display:grid;place-items:center;width:32px;height:32px;border:2px solid var(--surface);border-radius:var(--radius-sm);box-shadow:0 0 0 1px var(--border-strong),0 2px 0 var(--border-strong);transform:translate(-50%);cursor:grab;touch-action:none;user-select:none;transition:left var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.ss-knob:before{content:"";position:absolute;inset:-8px -4px}.ss-knob:hover{transform:translate(-50%) translateY(-1px)}.ss-knob.is-dragging{cursor:grabbing;transform:translate(-50%) scale(1.12);z-index:2;transition:none}.ss-knob:focus-visible{outline:3px solid var(--focus);outline-offset:2px;z-index:2}.ss-knob.is-locked{opacity:.45;cursor:not-allowed}.ss-msg{display:none;align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--status-warn) 14%,var(--surface));color:var(--text);font-size:var(--text-sm);font-weight:700}.ss-msg.is-shown{display:flex}.ss-msg-icon{margin-top:2px;color:var(--warn-icon)}.ss-legend{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}.ss-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto auto;align-items:center;gap:var(--space-2);padding:6px 0;border-top:1px solid var(--border)}.ss-row.is-active{background:linear-gradient(90deg,var(--accent-soft),transparent)}.ss-swatch{display:grid;place-items:center;width:28px;height:28px;border-radius:var(--radius-xs)}.ss-swatch-idle{background:repeating-linear-gradient(135deg,var(--surface-sunken) 0 4px,color-mix(in srgb,var(--text) 16%,var(--surface-sunken)) 4px 6px);box-shadow:inset 0 0 0 1px var(--border)}.ss-row-text{display:flex;flex-direction:column;min-width:0}.ss-row-label{font-weight:700;font-size:var(--text-sm)}.ss-row-detail{color:var(--text-muted);font-size:var(--text-sm);line-height:1.3}.ss-row.is-locked .ss-row-detail{color:var(--warn);font-weight:700}.ss-row-value{font-weight:800;font-size:var(--text-md);text-align:right}.ss-row-btns{display:flex;gap:2px;min-width:66px}.ss-btn{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--border);border-radius:var(--radius-xs);background:var(--surface-2);color:var(--text);touch-action:manipulation}.ss-btn:hover:not(:disabled){background:var(--surface-3)}.ss-btn:disabled{opacity:.35}.alloc-summary{display:flex;flex-direction:column;gap:2px;padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.alloc-summary-main{display:flex;align-items:baseline;gap:var(--space-2);font-weight:700;font-size:var(--text-sm)}.alloc-profit{font-size:var(--text-2xl);line-height:1}.alloc-profit.is-up{color:var(--good)}.alloc-profit.is-down{color:var(--critical)}.alloc-summary-sub{display:flex;flex-wrap:wrap;gap:2px var(--space-3);font-size:var(--text-sm)}.alloc-summary-sub .num{font-weight:800}.chip-wrap{display:flex;flex-direction:column;gap:4px;width:100%}.chip-wrap .chip{align-self:flex-start}.chip-detail{padding-left:var(--space-2);color:var(--text-muted);font-size:var(--text-sm)}.rent-cost{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:700}.rent-cost .icon{color:var(--money-mid)}.bcards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.bcard-build{position:relative;display:flex;flex-direction:column;align-items:stretch;gap:4px;min-width:0;padding:var(--space-2);border:1px solid var(--border);border-top:3px solid var(--hue);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);text-align:left;cursor:grab;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:manipulation;transition:transform var(--dur-fast) var(--ease-out),box-shadow var(--dur) var(--ease-out)}.bcard-build:hover:not(.is-blocked){transform:translateY(-2px);box-shadow:var(--shadow-raised)}.bcard-build:active:not(.is-blocked){cursor:grabbing}.bcard-build.is-armed{transform:scale(1.03);box-shadow:var(--shadow-raised);outline:3px solid var(--accent);outline-offset:1px}.bcard-build.is-blocked{cursor:not-allowed}.bcard-build.is-blocked .bcard-art,.bcard-build.is-blocked .bcard-cost{opacity:.5}.bcard-build.is-blocked .bcard-art .sprite{filter:grayscale(.7)}.bcard-art{position:relative;display:flex;align-items:flex-end;justify-content:center;height:100px;border-radius:var(--radius-sm);background:linear-gradient(to bottom,transparent 55%,color-mix(in srgb,var(--grass-dark) 40%,transparent) 100%),var(--map-ground);overflow:hidden}.bcard-art-small{padding-bottom:14px}.bcard-art-small .sprite{transform-origin:bottom center}.bcard-art .icon{margin-bottom:30px;color:var(--cream-light)}.sprite{display:inline-block;flex:none;background-repeat:no-repeat;image-rendering:pixelated;image-rendering:crisp-edges}.bcard-count{position:absolute;top:6px;right:6px;padding:0 6px;border-radius:var(--radius-pill);background:var(--accent);color:var(--text-on-accent);font-size:var(--text-sm);font-weight:800}.bcard-name{font-weight:800;font-size:var(--text-sm);line-height:1.2}.bcard-cost{color:var(--money);font-size:var(--text-xl);line-height:1.1}.bcard-facts{display:flex;flex-direction:column;gap:2px;font-size:var(--text-sm)}.bcard-facts>span{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.bcard-facts .icon{color:var(--hue)}.bcard-foot{display:inline-flex;align-items:center;gap:4px;margin-top:2px;padding-top:4px;border-top:1px dashed var(--border);color:var(--text-muted);font-size:var(--text-sm);font-weight:700}.bcard-foot.is-short{color:var(--critical)}.bcard-foot.is-short .icon{color:var(--critical-icon)}.upg-list{gap:0}.upg-row{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:var(--space-3);padding:6px 0;border-top:1px solid var(--border)}.upg-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:var(--radius-xs);background:color-mix(in srgb,var(--hue) 18%,var(--surface));color:var(--hue)}.upg-row .toggle-field{gap:var(--space-2)}.upg-row .field-desc{font-variant-numeric:tabular-nums}.link-list{gap:0}.link-row{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) 0;border-top:1px solid var(--border)}.link-row:first-child{border-top:0;padding-top:0}.link-row:last-child{padding-bottom:0}.link-head{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:var(--space-2)}.link-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:var(--radius-xs);background:color-mix(in srgb,var(--grid-mid) 18%,var(--surface));color:var(--grid-ink)}.link-title{display:flex;flex-direction:column;min-width:0;font-size:var(--text-sm);line-height:1.25}.link-now{display:flex;flex-direction:column;align-items:flex-end;font-size:var(--text-sm);line-height:1.25}.link-now .strong{font-size:var(--text-md)}.link-controls{display:grid;grid-template-columns:minmax(0,150px) minmax(0,1fr);align-items:center;gap:var(--space-3)}.link-pending{display:inline-flex;align-items:center;gap:4px;font-size:var(--text-sm);font-weight:700}.link-pending .icon{color:var(--plant-mid)}.link-match{font-size:var(--text-sm)}.order-list{gap:0}.order-row{display:grid;grid-template-columns:20px minmax(0,1fr) auto 32px;align-items:center;gap:var(--space-2);min-height:40px;border-bottom:1px solid var(--border);font-size:var(--text-sm)}.order-icon{color:var(--text-muted)}.order-cost{font-weight:700}.order-total{border-bottom:0;font-weight:800}.order-total .order-cost{font-weight:800;font-size:var(--text-md)}.risk-view{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-sm);background:var(--surface-sunken);border:1px solid var(--border)}.rv-rate{display:flex;flex-direction:column;gap:2px}.rv-rate-value{font-size:var(--text-2xl);line-height:1}.rv-unit{font-family:var(--font-body);font-size:var(--text-sm);font-weight:700;color:var(--text-muted);letter-spacing:0}.rv-rate-why{color:var(--text-muted);font-size:var(--text-sm);line-height:1.35}.rv-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2) var(--space-4);margin:0}.rv-fact{display:flex;flex-direction:column;min-width:0}.rv-fact dt{color:var(--text-muted);font-size:var(--text-sm)}.rv-fact dd{margin:0;font-weight:800;font-size:var(--text-lg)}.rv-fact dd.rv-sub{font-weight:600;font-size:var(--text-sm);color:var(--text-muted)}.rv-cost{display:flex;flex-direction:column;gap:6px}.rv-cost-label{font-size:var(--text-sm);font-weight:700}.rv-level{display:inline-flex;align-items:center;gap:4px;font-size:var(--text-sm);font-weight:800}.rv-level-ok{color:var(--good)}.rv-level-ok .icon{color:var(--good-icon)}.rv-level-warn{color:var(--warn)}.rv-level-warn .icon{color:var(--warn-icon)}.rv-level-critical{color:var(--critical)}.rv-level-critical .icon{color:var(--critical-icon)}.rv-bar{position:relative;display:flex;height:12px;border-radius:var(--radius-pill);overflow:hidden;background:var(--surface-3)}.rv-bar-zone{height:100%}.rv-zone-ok{background:color-mix(in srgb,var(--status-good) 18%,var(--surface-3))}.rv-zone-warn{background:color-mix(in srgb,var(--status-warn) 20%,var(--surface-3));box-shadow:inset 2px 0 0 var(--surface-sunken)}.rv-zone-critical{background:color-mix(in srgb,var(--status-critical) 18%,var(--surface-3));box-shadow:inset 2px 0 0 var(--surface-sunken)}.rv-bar-fill{position:absolute;top:0;bottom:0;left:0;min-width:0;border-radius:var(--radius-pill);transition:width var(--dur-slow) var(--ease-out)}.rv-fill-ok{background:var(--status-good)}.rv-fill-warn{background:var(--status-warn)}.rv-fill-critical{background:var(--status-critical)}.rv-bar-was{position:absolute;top:0;bottom:0;width:2px;margin-left:-1px;background:var(--text)}.rv-drag{font-size:var(--text-sm)}.loan-list{gap:0}.loan-item{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) 0;border-top:1px solid var(--border)}.loan-item:first-child{border-top:0;padding-top:0}.loan-item:last-child{padding-bottom:0}.loan-top{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px var(--space-2)}.loan-principal{font-size:var(--text-xl)}.loan-meta{flex:1;color:var(--text-muted);font-size:var(--text-sm);font-weight:700}.loan-item .tag{margin-left:0}.share-impact{display:flex;flex-direction:column;gap:4px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--surface-sunken);border:1px solid var(--border);font-size:var(--text-sm)}.share-price,.share-cash{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px var(--space-2)}.share-price .strong,.share-cash .strong{font-size:var(--text-md)}.share-price>.muted:first-child,.share-cash>.muted:first-child{min-width:3.2em}.share-arrow{color:var(--text-muted);font-weight:800}.review{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3) var(--space-3);margin:0}.review>div{display:flex;flex-direction:column;min-width:0}.review dt{color:var(--text-muted);font-size:var(--text-sm)}.review dd{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 6px;margin:0;font-weight:800;font-size:var(--text-lg)}.review-of{font-size:var(--text-sm);font-weight:700}.review-price .delta{font-size:var(--text-sm)}.pool-legend{display:flex;gap:var(--space-4);color:var(--text-muted);font-size:var(--text-sm);font-weight:700}.pool-legend>span{display:inline-flex;align-items:center;gap:6px}.key{display:inline-block;flex:none}.key-line{width:16px;height:2px;border-radius:1px;background:var(--pl, var(--text-muted))}.key-band{width:14px;height:10px;border-radius:2px;background:color-mix(in srgb,var(--pb, var(--text-muted)) 40%,transparent);box-shadow:inset 0 1px 0 var(--pl, var(--text-muted))}.pool-list{gap:0}.pool-card{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) 0;border-top:1px solid var(--border)}.pool-card:first-child{border-top:0;padding-top:var(--space-1)}.pool-card:last-child{padding-bottom:0}.pool-head{display:grid;grid-template-columns:24px auto minmax(0,1fr) auto;align-items:center;gap:var(--space-2)}.pool-icon{display:grid;place-items:center;width:24px;height:24px;border-radius:var(--radius-xs);color:var(--ink-dark)}.pool-ai .pool-icon,.pool-otherDc .pool-icon{color:var(--cream-light)}.pool-name{font-size:var(--text-md)}.pool-buys{font-size:var(--text-sm)}.pool-demand{font-size:var(--text-md)}.pool-facts{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:var(--space-2) var(--space-3);margin:0;font-size:var(--text-sm)}.pool-facts>div{display:flex;flex-direction:column;min-width:0}.pool-facts dt{color:var(--text-muted)}.pool-facts dd{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 6px;margin:0}.pool-vs{font-weight:700;color:var(--text-muted)}.pool-leaders{display:flex;flex-wrap:wrap;align-items:center;gap:4px var(--space-2);font-size:var(--text-sm)}.pool-leaders-label{color:var(--text-muted)}.leader-list{display:flex;flex-wrap:wrap;gap:4px;margin:0;padding:0;list-style:none}.leader-list li{display:inline-flex;align-items:center;gap:4px;padding:1px 8px 1px 6px;border-radius:var(--radius-pill);background:var(--surface-2);border:1px solid var(--border);font-weight:600}.leader-list li.is-me{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 60%,var(--border));font-weight:800}.leader-pos{color:var(--text-muted);font-weight:800}.leader-dot{display:inline-block;flex:none;width:10px;height:10px;border-radius:50%;box-shadow:0 0 0 2px var(--surface)}.pool-citizens{--pl: var(--town-ink);--pb: var(--town-mid)}.pool-otherDc{--pl: var(--grid-ink);--pb: var(--grid-mid)}.pool-cloud{--pl: var(--grid-mid);--pb: var(--grid-light)}.pool-btc{--pl: var(--power-ink);--pb: var(--power-mid)}.pool-ai{--pl: var(--dc-ink);--pb: var(--dc-mid)}:root[data-theme=dark] .pool-cloud{--pl: var(--grid-light);--pb: var(--grid-mid)}.pchart{position:relative;min-width:0}.pchart svg{overflow:visible;cursor:crosshair;touch-action:pan-y}.pchart svg:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:var(--radius-xs)}.pchart-grid{stroke:var(--border);stroke-width:1;shape-rendering:crispEdges}.pchart-tick{fill:var(--text-muted);font-family:var(--font-body);font-size:14px;font-weight:600;font-variant-numeric:tabular-nums}.pchart-line{fill:none;stroke:var(--pl);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.pchart-band{fill:var(--pb);fill-opacity:.35}.pchart-band-top{fill:none;stroke:var(--pl);stroke-width:1;stroke-opacity:.7;stroke-linejoin:round}.pchart-dot{fill:var(--pl);stroke:var(--surface);stroke-width:2}.pchart-dot-me{fill:var(--pb);stroke:var(--surface);stroke-width:2}.pchart-cross line{stroke:var(--text-muted);stroke-width:1}.pchart-tip{position:absolute;top:-6px;z-index:4;display:flex;flex-direction:column;gap:1px;padding:6px 10px;border-radius:var(--radius-sm);background:var(--ink-mid);color:var(--cream-light);box-shadow:var(--shadow-raised);font-size:var(--text-sm);line-height:1.3;transform:translate(-50%,-100%);pointer-events:none;white-space:nowrap}:root[data-theme=dark] .pchart-tip{background:var(--cream-light);color:var(--ink-dark)}.pchart-tip-head{font-weight:700;opacity:.8}.pchart-tip-row{display:inline-flex;align-items:center;gap:6px}.price-list{display:flex;flex-direction:column;gap:2px;margin:0;padding:0;list-style:none}.price-row{display:grid;grid-template-columns:2.4em 10px minmax(0,1fr) auto;grid-template-areas:"pos dot name val" "pos . spark val";align-items:center;gap:0 var(--space-2);padding:6px var(--space-2);border-radius:var(--radius-sm)}.price-row>.price-pos{grid-area:pos}.price-row>.leader-dot{grid-area:dot}.price-name{grid-area:name}.price-spark{grid-area:spark;display:flex;padding-top:2px}.price-val{grid-area:val}.price-row.is-me{background:var(--accent-soft)}.price-pos{color:var(--text-muted);font-size:var(--text-md)}.price-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700;font-size:var(--text-sm)}.price-name .tag{margin-left:6px}.price-val{display:flex;flex-direction:column;align-items:flex-end;line-height:1.2}.price-val .delta{font-size:var(--text-sm)}.spark{overflow:visible}.spark path{fill:none;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.spark circle{stroke:var(--surface);stroke-width:2}.price-row.is-me .spark circle{stroke:var(--accent-soft)}@media(max-width:640px){.review{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2)}.review dd{font-size:var(--text-md)}.tstrip-value{font-size:var(--text-xl)}}@media(max-width:360px){.bcards{grid-template-columns:minmax(0,1fr)}.review{grid-template-columns:repeat(2,minmax(0,1fr))}}.finance-panel .segmented-option{padding:0 var(--space-2);white-space:nowrap}.rs-overlay{--rs-dim-lo: rgba(27, 26, 36, .16);--rs-dim-hi: rgba(27, 26, 36, .46);position:fixed;inset:0;z-index:var(--z-overlay);display:flex;justify-content:flex-end;align-items:stretch;padding:calc(var(--topbar-h) + var(--space-3) + var(--safe-top)) var(--space-4) calc(var(--space-4) + var(--safe-bottom));background:linear-gradient(90deg,var(--rs-dim-lo) 0%,var(--rs-dim-lo) 35%,var(--rs-dim-hi) 100%);animation:rs-fade var(--dur) var(--ease-out)}.rs-overlay:focus{outline:none}:root[data-theme=dark] .rs-overlay{--rs-dim-lo: rgba(10, 10, 16, .24);--rs-dim-hi: rgba(10, 10, 16, .62)}@keyframes rs-fade{0%{opacity:0}}.rs-card{display:flex;flex-direction:column;width:min(580px,100%);height:min(100%,820px);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-raised);overflow:hidden;animation:rs-card-in var(--dur-slow) var(--ease-out)}@keyframes rs-card-in{0%{opacity:0;transform:translate(24px)}}.rs-head{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5) var(--space-5) var(--space-3)}.rs-head-row{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.rs-title{font-size:var(--text-xl)}.rs-hero{display:grid;grid-template-columns:1.2fr 1.3fr .9fr;gap:var(--space-2);margin:0}.rs-hero-item{display:flex;flex-direction:column;gap:2px;min-width:0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--surface-sunken)}.rs-hero-item dt{font-family:var(--font-caps);font-size:var(--text-sm);text-transform:uppercase;color:var(--text-muted)}.rs-hero-item dd{display:flex;align-items:baseline;flex-wrap:wrap;gap:var(--space-2);margin:0;font-size:var(--text-xl);line-height:1.1}.rs-hero-item.is-up dd{color:var(--good)}.rs-hero-item.is-down dd{color:var(--critical)}.rs-hero-of{font-size:var(--text-sm);color:var(--text-muted)}.rs-happened{display:flex;flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;font-size:var(--text-sm)}.rs-happen{display:flex;align-items:flex-start;gap:var(--space-2);padding:4px var(--space-2);border-radius:var(--radius-xs);border-left:3px solid var(--rs-tone, var(--border-strong));background:color-mix(in srgb,var(--rs-tone, var(--border)) 10%,transparent)}.rs-happen .icon{margin-top:2px;color:var(--rs-tone)}.rs-happen-good{--rs-tone: var(--good-icon)}.rs-happen-warn{--rs-tone: var(--warn-icon)}.rs-happen-critical{--rs-tone: var(--critical-icon)}.rs-happen-info{--rs-tone: var(--info-icon)}.rs-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-1);padding:0 var(--space-5);border-bottom:1px solid var(--border)}.rs-step-tab{position:relative;display:flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:6px 4px 10px;border:0;background:none;color:var(--text-muted);font-size:var(--text-sm);font-weight:700}.rs-step-tab:hover,.rs-step-tab.is-selected{color:var(--text)}.rs-step-num{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:var(--radius-pill);background:var(--surface-3);font-size:var(--text-sm);line-height:1}.rs-step-tab.is-selected .rs-step-num{background:var(--accent);color:var(--text-on-accent)}.rs-step-bar{position:absolute;left:4px;right:4px;bottom:0;height:3px;border-radius:2px 2px 0 0;background:var(--surface-3);overflow:hidden}.rs-step-fill{display:block;width:0;height:100%;background:var(--accent-strong)}.rs-step-tab.is-seen .rs-step-fill{width:100%}.rs-step-tab .rs-step-fill.is-playing{width:0;animation-name:rs-step-fill;animation-timing-function:linear;animation-fill-mode:forwards}@keyframes rs-step-fill{to{width:100%}}.rs-body{flex:1 1 auto;min-height:0;overflow-y:auto;padding:var(--space-4) var(--space-5)}.rs-beat{display:flex;flex-direction:column;gap:var(--space-3);min-height:300px}.is-all .rs-beat{min-height:0}.is-all .rs-beat+.rs-beat{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--border)}.rs-beat-anim{animation:rs-beat-in var(--dur-slow) var(--ease-out)}@keyframes rs-beat-in{0%{opacity:0;transform:translateY(6px)}}.rs-beat-title{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-lg)}.rs-beat-title .icon{color:var(--power-ink)}.rs-beat-body{display:flex;flex-direction:column;gap:var(--space-3);font-size:var(--text-sm)}.rs-lead,.rs-driver{color:var(--text-muted);font-size:var(--text-sm)}.rs-driver{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--surface-sunken);color:var(--text)}.rs-track{position:relative;height:14px;border-radius:3px;background:var(--surface-sunken)}.rs-zero{position:absolute;top:-3px;bottom:-3px;width:2px;margin-left:-1px;background:var(--border-strong)}.rs-grow{animation:rs-grow .52s var(--ease-out) both;animation-delay:calc(var(--i, 0) * .11s + .12s)}.rs-grow.from-left{transform-origin:left center}.rs-grow.from-right{transform-origin:right center}@keyframes rs-grow{0%{transform:scaleX(0)}}.rs-demand{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding:0;list-style:none}.rs-demand li{display:grid;grid-template-columns:8.5em minmax(0,1fr) 8em;align-items:center;gap:var(--space-3)}.rs-pool{display:flex;flex-direction:column;min-width:0}.rs-pool-name{display:inline-flex;align-items:center;gap:6px;font-weight:700;white-space:nowrap}.rs-pool-sub{display:flex;flex-wrap:wrap;column-gap:6px;color:var(--text-muted)}.rs-pool-sub .num+.num{color:var(--text)}.rs-fill{position:absolute;top:0;bottom:0;border-radius:3px;background:var(--hue)}.rs-expect{position:absolute;top:-4px;bottom:-4px;width:0;margin-left:-1px;border-left:2px dashed var(--text)}.rs-demand-val{display:flex;flex-direction:column;align-items:flex-end;text-align:right}.rs-vs{display:inline-flex;align-items:center;gap:2px;white-space:nowrap;color:var(--text-muted)}.rs-vs-up{color:var(--good)}.rs-vs-down{color:var(--critical)}.rs-legend{display:flex;align-items:center;flex-wrap:wrap;gap:6px;color:var(--text-muted)}.rs-key{display:inline-block;width:16px;height:10px;border-radius:2px;margin-left:var(--space-2)}.rs-key:first-child{margin-left:0}.rs-key-fill{background:linear-gradient(90deg,var(--town-mid),var(--dc-mid))}.rs-key-expect{width:0;height:14px;border-left:2px dashed var(--text);border-radius:0}.rs-stacks{display:flex;flex-direction:column;gap:var(--space-2)}.rs-stack-row{display:grid;grid-template-columns:5.5em minmax(0,1fr);align-items:center;gap:var(--space-3)}.rs-stack-label{font-weight:700;color:var(--text-muted)}.rs-stack{display:flex;gap:2px;min-width:4px;height:22px}.rs-seg{flex-basis:0;min-width:3px;border-radius:3px}.rs-money-cols{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5)}.rs-col-title{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-2);font-size:var(--text-md)}.rs-col-title .num{font-family:var(--font-body);font-weight:800;letter-spacing:0}.rs-lines{display:flex;flex-direction:column;gap:4px;margin:0;padding:0;list-style:none}.rs-lines li{display:flex;align-items:center;gap:6px}.rs-lines li.is-zero{color:var(--text-muted)}.rs-lines li>.num:last-child,.rs-lines li>span:last-child{margin-left:auto}.rs-line-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rs-swatch{flex:none;width:10px;height:10px;border-radius:2px}.rs-line-icon{color:var(--text-muted)}.rs-profit{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:2px var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:var(--surface-sunken)}.rs-profit-label{display:inline-flex;align-items:center;gap:6px;font-weight:800;font-size:var(--text-md)}.rs-profit-val{justify-self:end;font-size:var(--text-2xl)}.rs-profit.is-up .rs-profit-val,.rs-profit.is-up .rs-profit-label .icon{color:var(--good)}.rs-profit.is-down .rs-profit-val,.rs-profit.is-down .rs-profit-label .icon{color:var(--critical)}.rs-profit-sub{grid-column:1 / -1;justify-self:end;color:var(--text-muted)}.rs-price-move{display:flex;align-items:baseline;flex-wrap:wrap;gap:var(--space-2);font-size:var(--text-2xl)}.rs-price-old,.rs-price-arrow{color:var(--text-muted)}.rs-price-move .delta{font-size:var(--text-md)}.rs-fall{display:flex;flex-direction:column;gap:6px;margin:0;padding:0;list-style:none}.rs-fall li{display:grid;grid-template-columns:10.5em minmax(0,1fr) 4.5em;align-items:center;gap:var(--space-3)}.rs-fall li.is-zero .rs-fall-label{color:var(--text-muted)}.rs-fall-label{display:inline-flex;align-items:center;gap:6px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rs-step{position:absolute;top:1px;bottom:1px;border-radius:2px}.rs-step.is-up{background:var(--status-good)}.rs-step.is-down{background:var(--status-critical)}.rs-step.rs-total{top:-1px;bottom:-1px;background:var(--text)}.rs-fall-val{text-align:right;color:var(--text-muted)}.rs-fall-val.is-up{color:var(--good);font-weight:700}.rs-fall-val.is-down{color:var(--critical);font-weight:700}.rs-fall-total{margin-top:4px;padding-top:8px;border-top:1px solid var(--border);font-weight:800}.rs-fall-total .rs-fall-val{color:var(--text)}.rs-rank-cols{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4)}.rs-rank-cols>section{min-width:0}.rs-rank{display:flex;flex-direction:column;gap:4px;margin:0;padding:0;list-style:none}.rs-rank li{display:flex;align-items:center;gap:var(--space-2);padding:4px var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-md);animation:rs-beat-in var(--dur-slow) var(--ease-out) both;animation-delay:calc(var(--i, 0) * 90ms)}.rs-rank li.is-me{background:var(--accent-soft);font-weight:800}.rs-rank-pos{min-width:2.2em;font-size:var(--text-lg);color:var(--text-muted)}.rs-moved{display:inline-flex;align-items:center;justify-content:center;min-width:2.2em;font-size:var(--text-sm);font-weight:800}.rs-moved.is-up{color:var(--good)}.rs-moved.is-down{color:var(--critical)}.rs-moved.is-flat{color:var(--text-faint)}.rs-rank-name{display:flex;align-items:center;gap:var(--space-2);flex:1;min-width:0;overflow:hidden;white-space:nowrap}.rs-you{padding:0 6px;border-radius:var(--radius-xs);background:var(--accent);color:var(--text-on-accent);font-size:var(--text-sm);font-weight:800}.rs-rank-price{display:flex;align-items:baseline;gap:var(--space-2)}.rs-rank-price .delta{min-width:4.2em;justify-content:flex-end}.rs-leaders{display:flex;flex-direction:column;gap:4px;margin:0;padding:0;list-style:none}.rs-leaders li{display:grid;grid-template-columns:7.5em minmax(0,1fr) auto;align-items:center;gap:var(--space-2);padding:2px var(--space-2)}.rs-leader{display:inline-flex;align-items:center;gap:6px;min-width:0;overflow:hidden;white-space:nowrap}.rs-leader.is-me{font-weight:800}.rs-leader.is-me .icon{color:var(--power-ink)}.rs-foot{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5) var(--space-4);border-top:1px solid var(--border)}.rs-keys{margin-right:auto;font-size:var(--text-sm)}.rs-keys kbd,.tut-bubble kbd{display:inline-block;min-width:1.6em;padding:0 5px;margin:0 2px;border:1px solid var(--border-strong);border-bottom-width:2px;border-radius:4px;font-family:var(--font-body);font-size:var(--text-sm);line-height:1.4;text-align:center}@media(hover:none){.rs-keys{visibility:hidden}}@media(min-width:641px)and (max-width:1023px){.rs-overlay{justify-content:center;background:var(--rs-dim-hi)}}@media(max-width:640px){.rs-overlay{padding:0;background:var(--surface)}.rs-card{width:100%;max-height:none;height:100%;margin:0;border:0;border-radius:0;box-shadow:none;animation-name:rs-sheet-in}@keyframes rs-sheet-in{0%{opacity:0;transform:translateY(24px)}}.rs-head{gap:var(--space-2);padding:calc(var(--space-3) + var(--safe-top)) var(--space-4) var(--space-2)}.rs-hero-item{padding:6px var(--space-2)}.rs-hero-item dd{font-size:var(--text-lg);gap:4px}.rs-hero-item .delta .num{font-size:var(--text-sm)}.rs-steps{padding:0 var(--space-2)}.rs-step-tab{flex-direction:column;gap:2px;min-height:52px}.rs-body{padding:var(--space-3) var(--space-4)}.rs-beat{min-height:0}.rs-demand li{grid-template-columns:7em minmax(0,1fr) 6.6em;gap:var(--space-2)}.rs-money-cols{grid-template-columns:1fr;gap:var(--space-3)}.rs-fall li{grid-template-columns:9.4em minmax(0,1fr) 3.6em;gap:var(--space-2)}.rs-rank li{gap:6px;padding-inline:4px}.rs-rank-pos,.rs-moved{min-width:1.9em}.rs-rank-price{gap:6px}.rs-rank-price .delta{min-width:3.4em}.rs-leaders li{grid-template-columns:6.5em minmax(0,1fr) auto}.rs-foot{padding:var(--space-3) var(--space-4) calc(var(--space-3) + var(--safe-bottom))}.rs-keys{display:none}.rs-finish{flex:1}}.fs-lead{display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--text-sm)}.fs-meter{--p: 0;display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border:1px solid color-mix(in srgb,var(--status-critical) 40%,var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb,var(--status-critical) 7%,var(--surface))}.fs-meter.is-ok{border-color:color-mix(in srgb,var(--status-good) 50%,var(--border));background:color-mix(in srgb,var(--status-good) 8%,var(--surface))}.fs-meter-row{display:flex;align-items:baseline;gap:var(--space-2);font-size:var(--text-sm)}.fs-meter-label{margin-right:auto;font-weight:800}.fs-meter-arrow{color:var(--text-muted)}.fs-after{font-size:var(--text-xl)}.fs-bar{position:relative;height:10px;border-radius:var(--radius-pill);background:var(--surface-3);overflow:hidden}.fs-bar-fill{position:absolute;inset:0;transform-origin:left center;transform:scaleX(var(--p));background:var(--status-warn);transition:transform var(--dur-slow) var(--ease-out)}.fs-meter.is-ok .fs-bar-fill{background:var(--status-good)}.fs-meter-sub{display:flex;align-items:center;gap:6px;font-size:var(--text-sm);font-weight:700;color:var(--warn)}.fs-meter-sub .icon{color:var(--warn-icon)}.fs-meter.is-ok .fs-meter-sub{color:var(--good)}.fs-meter.is-ok .fs-meter-sub .icon{color:var(--good-icon)}.fs-list{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding:0;list-style:none}.fs-item{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:var(--space-3);min-height:56px;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;transition:border-color var(--dur) var(--ease-out),background-color var(--dur) var(--ease-out)}.fs-item:hover{border-color:var(--border-strong)}.fs-item.is-on{border-color:color-mix(in srgb,var(--money-mid) 70%,var(--border));background:var(--money-bg)}.fs-check{position:absolute;opacity:0;width:1px;height:1px}.fs-item:has(.fs-check:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.fs-art{position:relative;display:grid;place-items:center;width:44px;height:44px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--hue) 22%,var(--surface));color:color-mix(in srgb,var(--hue) 70%,var(--text))}.fs-big{position:absolute;bottom:-6px;padding:0 4px;border-radius:4px;background:var(--text);color:var(--surface);font-size:var(--text-sm);font-weight:800;line-height:1.2}.fs-big.is-l3{background:var(--power-mid);color:var(--ink-dark)}.fs-info{display:flex;flex-direction:column;min-width:0;font-size:var(--text-sm)}.fs-name{font-weight:800;font-size:var(--text-md)}.fs-sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fs-value{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.fs-toggle{display:inline-flex;align-items:center;gap:4px;min-width:4.4em;justify-content:center;padding:1px 8px;border:1px solid var(--border-strong);border-radius:var(--radius-pill);font-size:var(--text-sm);font-weight:800;color:var(--text-muted)}.fs-toggle.is-on{border-color:var(--money-dark);background:var(--money-mid);color:var(--ink-dark)}.fs-foot{position:sticky;bottom:calc(-1 * var(--space-3));display:flex;flex-direction:column;gap:var(--space-2);margin:0 calc(-1 * var(--space-3)) calc(-1 * var(--space-3));padding:var(--space-3);border-top:1px solid var(--border);background:var(--surface);font-size:var(--text-sm)}.fs-issue{display:block;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--info-icon) 12%,transparent)}.fs-issue .icon{display:inline-block;vertical-align:-3px;color:var(--info-icon)}.es{display:flex;flex-direction:column;gap:var(--space-5);width:min(1180px,100%);margin:0 auto;padding:calc(var(--space-6) + var(--safe-top)) var(--space-4) calc(var(--space-8) + var(--safe-bottom))}.es-head{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center}.es-title{display:inline-flex;align-items:center;gap:var(--space-3);font-size:var(--text-3xl)}.es-title:focus,.es-title:focus-visible{outline:none}.es-col{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}.es-title.is-win .icon{color:var(--power-ink)}.es-sub{max-width:60ch;color:var(--text-muted)}.es-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);gap:var(--space-4)}.es-card{display:flex;flex-direction:column;gap:var(--space-3);min-width:0;padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.es-card-title{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-lg)}.es-card-title .icon{color:var(--power-ink)}.es-podium{display:flex;align-items:flex-end;justify-content:center;gap:var(--space-2);margin:var(--space-2) 0 0;padding:0;list-style:none}.es-step{display:flex;flex:1 1 0;flex-direction:column;align-items:center;gap:4px;min-width:0;text-align:center;animation:es-rise var(--dur-slow) var(--ease-out) both}.es-step-1{animation-delay:.24s}.es-step-2{animation-delay:.12s}@keyframes es-rise{0%{opacity:0;transform:translateY(16px)}}.es-step-name{display:inline-flex;align-items:center;gap:6px;max-width:100%;font-size:var(--text-sm);font-weight:700}.es-step-name{display:block;line-height:1.25}.es-step-name svg{display:inline-block;margin-right:4px;vertical-align:-1px}.es-step-name span{overflow-wrap:anywhere}.es-step.is-me .es-step-name{font-weight:800}.es-step-price{font-size:var(--text-xl)}.es-step-1 .es-step-price{font-size:var(--text-2xl)}.es-block{display:grid;place-items:start center;width:100%;padding-top:var(--space-2);border:2px solid var(--ink-dark);border-bottom:0;border-radius:6px 6px 0 0;background:var(--co);box-shadow:inset 0 4px #ffffff47,inset -6px 0 #00000024;color:var(--ink-dark);font-size:var(--text-2xl)}.es-block .num{padding:0 8px;border-radius:4px;background:#fffdf6d9}.es-step-1 .es-block{height:132px}.es-step-2 .es-block{height:96px}.es-step-3 .es-block{height:68px}.es-step.is-me .es-block{outline:3px solid var(--accent);outline-offset:2px}.es-podium-card .es-podium{border-bottom:3px solid var(--text)}.es-rest{margin-top:var(--space-2)}.es-chart{position:relative;width:100%}.es-chart svg{display:block;overflow:visible;touch-action:pan-y}.es-chart svg:focus-visible{outline:3px solid var(--focus);outline-offset:4px}.es-grid-lines line{stroke:var(--border);stroke-width:1}.es-grid-lines line.is-base{stroke:var(--border-strong);stroke-width:2}.es-grid-lines text,.es-end-label text{fill:var(--text-muted);font-family:var(--font-body);font-size:14px;font-variant-numeric:tabular-nums}.es-line-path{fill:none;stroke:currentColor;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.es-line-halo{fill:none;stroke:var(--surface);stroke-width:5;stroke-linejoin:round}.es-line.is-me .es-line-path{stroke-width:3.5}.es-line.is-me .es-line-halo{stroke-width:7}.es-marker{fill:currentColor;stroke:var(--surface);stroke-width:2}.es-end-label line{stroke-width:1.5}.es-end-label text{fill:var(--text);font-weight:700}.es-end-label text.es-end-price{fill:var(--text-muted);font-weight:600}.es-end-label.is-me text{font-weight:800}.es-cross line{stroke:var(--text-muted);stroke-width:1;stroke-dasharray:3 3}.es-tip{position:absolute;top:0;z-index:2;min-width:190px;margin-left:14px;padding:var(--space-2) var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow-raised);font-size:var(--text-sm);pointer-events:none}.es-tip.is-left{transform:translate(calc(-100% - 28px))}.es-tip-title{margin-bottom:4px;font-weight:800}.es-tip ul{display:flex;flex-direction:column;gap:2px;margin:0;padding:0;list-style:none}.es-tip li{display:flex;align-items:center;gap:6px}.es-tip li.is-me{font-weight:800}.es-tip-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.es-legend{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-4);margin:0;padding:0;list-style:none;font-size:var(--text-sm)}.es-legend li{display:inline-flex;align-items:center;gap:6px}.es-legend li.is-me{font-weight:800}.es-table summary{cursor:pointer;color:var(--grid-ink);font-size:var(--text-sm);font-weight:700}.es-table-scroll{margin-top:var(--space-2);overflow-x:auto}.es-table table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.es-table th,.es-table td{padding:4px 8px;border-bottom:1px solid var(--border);text-align:right;white-space:nowrap}.es-table th:first-child{text-align:left}.es-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);margin:0}.es-stats>div{display:flex;flex-direction:column;gap:2px;padding:var(--space-3);border-radius:var(--radius-sm);background:var(--surface-sunken)}.es-stats dt{font-size:var(--text-sm);color:var(--text-muted)}.es-stats dd{display:flex;align-items:baseline;flex-wrap:wrap;gap:var(--space-2);margin:0;font-size:var(--text-xl)}.es-stat-sub{font-family:var(--font-body);font-size:var(--text-sm);color:var(--text-muted);letter-spacing:0}.es-card-img{display:grid;place-items:center;width:100%;overflow:hidden;border-radius:var(--radius-sm);background:var(--ink-dark);color:var(--stone-light)}.es-card-img img{width:100%;height:auto}.es-share-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.es-share-actions a.btn{text-decoration:none}.es-share-actions a.btn.is-disabled{opacity:.5;pointer-events:none}.es-seed{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--surface-sunken)}.es-seed-value{margin-right:auto;font-size:var(--text-xl)}.es-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-3)}@media(max-width:900px){.es-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:640px){.es{gap:var(--space-4);padding-inline:var(--space-3)}.es-title{font-size:var(--text-2xl)}.es-card{padding:var(--space-4)}.es-step-price,.es-step-1 .es-step-price{font-size:var(--text-lg)}.es-actions .btn{flex:1 1 100%}}.tut-ring{position:fixed;z-index:calc(var(--z-overlay) + 9);border:3px solid var(--accent);border-radius:12px;box-shadow:0 0 0 4px color-mix(in srgb,var(--power-mid) 30%,transparent);pointer-events:none;animation:tut-pulse 1.6s var(--ease-in-out) infinite}@keyframes tut-pulse{50%{box-shadow:0 0 0 9px color-mix(in srgb,var(--power-mid) 0%,transparent)}}.tut-bubble{--arrow: 24px;position:fixed;z-index:calc(var(--z-overlay) + 10);display:flex;flex-direction:column;gap:var(--space-2);width:min(300px,calc(100vw - 16px));padding:var(--space-3) var(--space-4) var(--space-3);border:2px solid var(--ink-dark);border-radius:var(--radius);background:var(--power-light);color:var(--ink-dark);box-shadow:0 3px 0 var(--ink-dark),0 10px 28px #1b1a2440;animation:tut-in var(--dur-slow) var(--ease-spring)}@keyframes tut-in{0%{opacity:0;transform:scale(.94)}}.tut-step{color:#6b5308}.tut-text{font-size:var(--text-md);font-weight:600;line-height:1.4}.tut-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-top:2px}.tut-actions .btn-primary{--btn-bg: var(--ink-dark);--btn-fg: var(--cream-light);--btn-edge: #000}.tut-actions .btn-primary:hover:not(:disabled){background:var(--ink-light)}.tut-skip{margin-left:auto;align-self:center;color:var(--ink-light)}.tut-bubble :focus-visible{outline-color:var(--grid-dark)}.tut-arrow{position:absolute;width:14px;height:14px;background:var(--power-light);border:2px solid var(--ink-dark);transform:rotate(45deg)}.no-arrow .tut-arrow{display:none}.tut-bottom .tut-arrow{top:-9px;left:calc(var(--arrow) - 7px);border-right:0;border-bottom:0}.tut-top .tut-arrow{bottom:-9px;left:calc(var(--arrow) - 7px);border-left:0;border-top:0}.tut-left .tut-arrow{right:-9px;top:calc(var(--arrow) - 7px);border-left:0;border-bottom:0}.tut-right .tut-arrow{left:-9px;top:calc(var(--arrow) - 7px);border-right:0;border-top:0}:root[data-theme=dark] .tut-bubble{border-color:#000;box-shadow:0 3px #000,0 10px 28px #00000080}.fs-shares{display:grid;gap:var(--space-1);padding:var(--space-3);border-radius:12px;border:1px solid var(--border);background:var(--surface-2)}.fs-shares.is-on{border-color:var(--money-mid, var(--border-strong))}.fs-shares p{margin:0}.fs-shares-title{display:flex;align-items:center;gap:var(--space-2)}.fs-or{margin:var(--space-2) 0 0;font-size:var(--text-sm)}.cmap{position:absolute;inset:0;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent;cursor:grab}.cmap:focus{outline:none}.cmap.is-panning{cursor:grabbing}.cmap.is-over-building{cursor:pointer}.map-canvas{position:absolute;top:0;left:0;image-rendering:pixelated}.map-lots{position:absolute;top:0;left:0;width:0;height:0}.map-lot{position:absolute;padding:0;border:0;border-radius:var(--radius-sm);background:transparent;pointer-events:none}.map-lot:focus-visible{outline:2px dashed var(--cream-light);outline-offset:-7px;box-shadow:inset 0 0 0 5px color-mix(in srgb,var(--ink-dark) 45%,transparent);border-radius:var(--radius-sm)}.mcard{position:absolute;z-index:6;display:flex;flex-direction:column;gap:var(--space-3);width:300px;max-height:calc(100% - 16px);overflow-y:auto;padding:var(--space-3) var(--space-4) var(--space-4);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);box-shadow:var(--shadow-raised);animation:mcard-in var(--dur) var(--ease-out);touch-action:auto;user-select:text;-webkit-user-select:text;cursor:auto}@keyframes mcard-in{0%{opacity:0;transform:translateY(6px) scale(.98)}}.mcard.is-phone{max-height:min(60%,420px)}.mcard-head{display:flex;align-items:center;gap:var(--space-3)}.mcard-badge{display:grid;flex:none;place-items:center;width:36px;height:36px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--hue) 18%,var(--surface));border:1px solid color-mix(in srgb,var(--hue) 50%,var(--border));color:var(--hue)}.mcard-title{flex:1;min-width:0}.mcard-title h3{margin:0;font-size:var(--text-lg);line-height:1.15}.mcard-sub{margin:0;color:var(--text-muted);font-size:var(--text-sm)}.mcard-status{display:flex;align-items:flex-start;gap:var(--space-2);margin:0;padding:6px var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:700;line-height:1.35}.mcard-status .icon{flex:none;margin-top:2px}.mcard-status.is-ok{background:color-mix(in srgb,var(--status-good) 12%,var(--surface));color:var(--good)}.mcard-status.is-ok .icon{color:var(--good-icon)}.mcard-status.is-busy{background:color-mix(in srgb,var(--power-mid) 18%,var(--surface));color:var(--text)}.mcard-status.is-busy .icon{color:var(--power-ink)}.mcard-status.is-warn{background:color-mix(in srgb,var(--status-warn) 16%,var(--surface));color:var(--warn)}.mcard-status.is-warn .icon{color:var(--warn-icon)}.mcard-facts{gap:var(--space-3) var(--space-4)}.mcard-facts dd{font-size:var(--text-md)}.mcard-facts dd.mcard-small,.mcard-small,.mcard-dim{color:var(--text-muted);font-size:var(--text-sm);font-weight:600}.mcard-foot{margin:0;padding-top:var(--space-2);border-top:1px solid var(--border);color:var(--text-muted);font-size:var(--text-sm);line-height:1.35}.mcard-foot .num{color:var(--text);font-weight:700}.mcard-action{display:flex;flex-direction:column;gap:var(--space-2)}.mcard-note{margin:0;color:var(--text-muted);font-size:var(--text-sm)}.cmap-banner{position:absolute;top:var(--space-3);left:50%;z-index:7;display:inline-flex;align-items:center;gap:var(--space-2);max-width:calc(100% - 24px);min-height:40px;padding:4px 6px 4px 14px;border:1px solid color-mix(in srgb,var(--power-mid) 60%,var(--border));border-radius:var(--radius-pill);background:var(--surface);color:var(--text);box-shadow:var(--shadow-raised);font-size:var(--text-sm);font-weight:700;white-space:nowrap;transform:translate(-50%);animation:mcard-in var(--dur) var(--ease-out);cursor:auto}.cmap-banner>.icon{flex:none;color:var(--power-ink)}.cmap-banner>span{overflow:hidden;text-overflow:ellipsis}.cmap-banner:not(:has(button)){padding-right:14px}.cmap-failed{position:absolute;top:var(--space-4);left:var(--space-4);right:var(--space-4);display:flex;align-items:center;gap:var(--space-2);margin:0;padding:var(--space-3) var(--space-4);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);font-size:var(--text-sm)}.gt-drag-ghost{position:fixed;top:0;left:0;z-index:var(--z-toast);display:flex;flex-direction:column;align-items:center;gap:6px;pointer-events:none;opacity:.95;filter:drop-shadow(0 6px 10px rgba(27,26,36,.28));transition:opacity var(--dur-fast) var(--ease-out);will-change:transform}.gt-drag-ghost.is-over-lot .gt-drag-ghost-art{opacity:0}.gt-drag-ghost-art{transition:opacity var(--dur-fast) var(--ease-out)}.gt-drag-ghost-art{background-repeat:no-repeat;image-rendering:pixelated}.gt-drag-ghost-cap{display:inline-flex;align-items:center;gap:6px;padding:2px 10px;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);color:var(--text);box-shadow:var(--shadow);font-size:var(--text-sm);font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.gt-drag-ghost-blocked{display:none;align-items:center;gap:6px}.gt-drag-ghost.is-blocked .gt-drag-ghost-text{display:none}.gt-drag-ghost.is-blocked .gt-drag-ghost-blocked{display:inline-flex}.gt-drag-ghost.is-blocked .gt-drag-ghost-cap{border-color:color-mix(in srgb,var(--status-critical) 60%,var(--border));color:var(--critical)}.gt-drag-ghost.is-blocked .gt-drag-ghost-art{opacity:.55;filter:grayscale(1)}:root.gt-dragging,:root.gt-dragging *{cursor:grabbing!important}:root.gt-dragging.gt-drag-blocked,:root.gt-dragging.gt-drag-blocked *{cursor:not-allowed!important}@media(max-width:640px){:root.gt-dragging .game-main .sheet,:root.gt-placing .game-main .sheet{opacity:0;pointer-events:none;transform:translateY(24px);transition:opacity var(--dur) var(--ease-out),transform var(--dur) var(--ease-out)}.cmap-banner{top:var(--space-2)}}.mcard-money{color:var(--money);font-weight:700}@media(max-width:640px){.mcard{gap:var(--space-2);padding:var(--space-3)}.mcard-badge{width:32px;height:32px}.mcard-facts{gap:var(--space-2) var(--space-3)}.mcard-facts dt,.mcard-facts dd{font-size:var(--text-sm)}.mcard-facts dd:not(.mcard-small){font-size:var(--text-md)}.mcard-status{padding:4px var(--space-2)}}.mcard-facts.is-3{grid-template-columns:repeat(3,minmax(0,1fr))}.cmap.is-over-sale{cursor:pointer}.map-lot.is-sale:focus-visible{outline-offset:-4px}.cmap-banner.is-notice{white-space:normal}.mp-card-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2)}.mp-badge{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:2px 10px 2px 8px;border:1px dashed color-mix(in srgb,var(--dc-mid) 60%,var(--border));border-radius:var(--radius-pill);background:color-mix(in srgb,var(--dc-mid) 12%,var(--surface));color:var(--dc-ink);font-size:var(--text-sm);font-weight:800;white-space:nowrap}.mp-preview{display:flex;gap:var(--space-2);margin:0;padding:var(--space-3);list-style:none;border-radius:var(--radius-sm);background:var(--surface-sunken);border:1px solid var(--border)}.mp-preview li{display:grid;flex:1;place-items:center;height:36px;border-radius:var(--radius-xs);background:color-mix(in srgb,var(--seat) 22%,var(--surface));border:2px solid color-mix(in srgb,var(--seat) 70%,var(--border));color:color-mix(in srgb,var(--seat) 70%,var(--text))}.mp-preview li.is-bot{border-style:dashed;background:transparent;opacity:.75}.mp-card.is-offline .multi-actions{margin-top:auto}.mp-offline{display:flex;align-items:flex-start;gap:var(--space-2);margin:0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--grid-mid) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--grid-mid) 35%,var(--border));color:var(--text);font-size:var(--text-sm);font-weight:700}.mp-offline .icon{margin-top:2px;color:var(--info-icon)}.mp-rejoin{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--power-mid) 14%,var(--surface));border:1px solid color-mix(in srgb,var(--power-mid) 55%,var(--border))}.mp-rejoin-text{display:flex;flex-direction:column;gap:2px;min-width:0}.mp-rejoin-label{color:var(--text-muted)}.mp-rejoin-room{display:flex;align-items:baseline;flex-wrap:wrap;gap:0 var(--space-2);min-width:0}.mp-code-inline{font-size:var(--text-lg);letter-spacing:.08em}.mp-rejoin-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}.mp-form{display:flex;flex-direction:column;gap:var(--space-3)}.mp-form .toggle-field{gap:var(--space-3)}.mp-code-input{font-family:var(--font-num);font-size:var(--text-xl);letter-spacing:.3em;text-transform:uppercase;font-variant-numeric:tabular-nums}.mp-code-input::placeholder{color:color-mix(in srgb,var(--text-faint) 55%,transparent)}.mp-error{display:flex;align-items:flex-start;gap:var(--space-2);margin:0;color:var(--critical);font-size:var(--text-sm);font-weight:700}.mp-error:empty{display:none}.mp-error .icon{margin-top:2px;color:var(--critical-icon)}.lobby{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);min-height:100%;padding:calc(var(--space-4) + var(--safe-top)) var(--space-4) calc(var(--space-6) + var(--safe-bottom));background:radial-gradient(ellipse at 50% -20%,color-mix(in srgb,var(--dc-mid) 18%,transparent),transparent 60%),var(--bg)}.lobby-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);width:100%;max-width:920px}.lobby-top .btn .icon{color:var(--text-muted)}.lobby-top .btn-label,.lobby-copy .btn-label{display:inline-flex;align-items:center;gap:var(--space-2)}.lobby-card{width:100%;max-width:920px;gap:var(--space-5);padding:var(--space-6)}.lobby-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-4)}.lobby-head .card-title{font-size:var(--text-2xl)}.lobby-head .card-title .icon{color:var(--dc-ink)}.lobby-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-6)}.lobby-code-block{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}.lobby-label{color:var(--text-muted)}.lobby-code{display:flex;gap:6px;margin:0}.lobby-code-tile{display:grid;flex:1;place-items:center;max-width:64px;aspect-ratio:4 / 5;border-radius:var(--radius-sm);background:var(--ink-mid);box-shadow:inset 0 -4px #00000047,0 2px 0 var(--ink-dark);color:var(--power-mid);font-family:var(--font-num);font-size:clamp(28px,4.4vw,40px);line-height:1;text-shadow:2px 2px 0 var(--power-dark)}:root[data-theme=dark] .lobby-code-tile{background:var(--ink-dark);box-shadow:inset 0 -4px #00000059,0 0 0 1px var(--border)}.lobby-copy{display:flex;flex-wrap:wrap;gap:var(--space-2)}.lobby-copy .btn{flex:1 1 auto}.lobby-link-fallback .num{word-break:break-all;white-space:normal;color:var(--text)}.lobby-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2);margin:var(--space-1) 0 0}.lobby-facts>div{display:flex;flex-direction:column;gap:2px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--surface-sunken);border:1px solid var(--border)}.lobby-facts dt{color:var(--text-muted)}.lobby-facts dd{margin:0;font-weight:800}.lobby-seats{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}.lobby-seats-title{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2);font-size:var(--text-lg)}.lobby-seats-title .num{font-family:var(--font-body);font-size:var(--text-sm);font-weight:700}.lobby-seat-list{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding:0;list-style:none}.lobby-seat{display:flex;align-items:center;gap:var(--space-3);min-height:52px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);animation:lobby-seat-in var(--dur-slow) var(--ease-out)}@keyframes lobby-seat-in{0%{opacity:0;transform:translateY(6px)}}.lobby-seat.is-me{border-color:color-mix(in srgb,var(--power-mid) 70%,var(--border));box-shadow:inset 3px 0 0 var(--power-mid)}.lobby-seat.is-open{background:transparent;border-style:dashed;animation:none}.lobby-avatar{display:grid;flex:none;place-items:center;width:36px;height:36px;border-radius:var(--radius-xs);background:var(--seat);box-shadow:inset 0 -3px #00000040;color:var(--cream-light)}.lobby-avatar.is-open{background:transparent;border:2px dashed var(--border-strong);box-shadow:none;color:var(--text-faint)}.lobby-seat-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:800}.lobby-seat-tags{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:var(--space-1) var(--space-2)}.lobby-tag{display:inline-flex;align-items:center;gap:4px;padding:1px 8px;border-radius:var(--radius-pill);font-size:var(--text-sm);font-weight:800;white-space:nowrap}.lobby-tag.is-me{background:color-mix(in srgb,var(--power-mid) 30%,transparent);color:var(--text)}.lobby-tag.is-host{background:color-mix(in srgb,var(--plant-mid) 18%,transparent);color:var(--plant-ink)}.lobby-presence{display:inline-flex;align-items:center;gap:6px;color:var(--text-muted);font-size:var(--text-sm);font-weight:700;white-space:nowrap}.lobby-dot{width:10px;height:10px;border-radius:50%}.lobby-presence.is-here .lobby-dot{background:var(--status-good);box-shadow:0 0 0 3px color-mix(in srgb,var(--status-good) 25%,transparent)}.lobby-presence.is-here{color:var(--good)}.lobby-presence.is-away .lobby-dot{border:2px solid var(--text-faint)}.lobby-presence.is-bot .lobby-dot{border-radius:2px;background:var(--stone-mid)}.lobby-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3) var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--border)}.lobby-plan{display:flex;flex-direction:column;gap:2px;min-width:0}.lobby-plan .field-desc:empty{display:none}.lobby-foot .btn-lg{min-width:200px}.lobby-wait{display:flex;align-items:center;gap:var(--space-2);margin:0;font-weight:800}.lobby-wait-icon{color:var(--dc-ink);animation:lobby-turn 2.4s steps(8) infinite}@keyframes lobby-turn{0%,40%{transform:rotate(0)}60%,to{transform:rotate(180deg)}}.lobby-test{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px dashed color-mix(in srgb,var(--dc-mid) 60%,var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb,var(--dc-mid) 7%,var(--surface))}.lobby-test-title{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-md);color:var(--dc-ink)}.lobby-test-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.lobby-rules{display:flex;align-items:flex-start;gap:var(--space-2);max-width:920px;width:100%;margin:0;color:var(--text-muted);font-size:var(--text-sm)}.lobby-rules .icon{margin-top:2px;color:var(--info-icon)}.net-chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.mp-status{display:flex;align-items:center;gap:var(--space-2);min-width:0}.mp-status .net-chips{flex-wrap:nowrap}.mp-clock{--clock-fg: var(--text);--clock-icon: var(--dc-ink);--clock-bg: var(--surface-sunken);--clock-edge: var(--border);display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:4px var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--clock-edge);background:var(--clock-bg);color:var(--clock-fg);font-weight:800;white-space:nowrap}.mp-clock .icon{color:var(--clock-icon)}.mp-clock-time{font-family:var(--font-num);font-size:var(--text-lg);line-height:1}.mp-clock.is-over .mp-clock-time{font-family:var(--font-body);font-size:var(--text-sm)}.mp-clock-word{color:var(--text-muted);font-size:var(--text-sm)}.mp-clock.is-warn{--clock-fg: var(--warn);--clock-icon: var(--warn-icon);--clock-bg: color-mix(in srgb, var(--status-warn) 16%, var(--surface));--clock-edge: color-mix(in srgb, var(--status-warn) 60%, var(--border))}.mp-clock.is-critical{--clock-fg: var(--critical);--clock-icon: var(--critical-icon);--clock-bg: color-mix(in srgb, var(--status-critical) 14%, var(--surface));--clock-edge: color-mix(in srgb, var(--status-critical) 60%, var(--border));animation:mp-clock-pulse 1s var(--ease-in-out) infinite}.mp-clock.is-warn .mp-clock-word,.mp-clock.is-critical .mp-clock-word{color:inherit}@keyframes mp-clock-pulse{50%{box-shadow:0 0 0 3px color-mix(in srgb,var(--status-critical) 30%,transparent)}}.mp-locks{display:inline-flex;align-items:center;gap:var(--space-2)}.mp-lock-list{display:flex;margin:0;padding:0;list-style:none}.mp-lock{position:relative;display:grid;place-items:center;width:28px;height:28px;margin-left:4px;border-radius:50%;border:2px dashed color-mix(in srgb,var(--seat) 75%,var(--border));background:var(--surface);color:var(--text-muted);font-size:var(--text-sm);font-weight:800;line-height:1}.mp-lock:first-child{margin-left:0}.mp-lock.is-locked{border-style:solid;border-color:var(--surface);background:var(--seat);color:var(--cream-light);text-shadow:0 1px 0 rgba(0,0,0,.35)}.mp-lock.is-me{outline:2px solid var(--text);outline-offset:1px;z-index:1}.mp-lock-badge{position:absolute;right:-6px;bottom:-6px;display:grid;place-items:center;width:16px;height:16px;border-radius:50%;background:var(--status-good);color:var(--cream-light);box-shadow:0 0 0 2px var(--surface)}.mp-lock-badge .icon{width:12px;height:12px}.mp-lock-count{display:inline-flex;align-items:center;gap:4px;color:var(--text-muted);font-size:var(--text-sm);font-weight:800}@media(min-width:641px)and (max-width:1100px){.mp-clock-word,.mp-lock-list{display:none}}@media(max-width:760px){.lobby-grid{grid-template-columns:minmax(0,1fr);gap:var(--space-5)}}@media(max-width:640px){.lobby{padding:calc(var(--space-3) + var(--safe-top)) var(--space-3) calc(var(--space-5) + var(--safe-bottom));gap:var(--space-3)}.lobby-card{padding:var(--space-4);gap:var(--space-4)}.lobby-head .card-title{font-size:var(--text-xl)}.lobby-code-tile{font-size:30px}.lobby-seat{flex-wrap:wrap;row-gap:var(--space-1)}.lobby-seat-name{flex:1 1 5em}.lobby-seat-tags{margin-left:auto}.lobby-foot .btn-lg{width:100%}.mp-rejoin{flex-wrap:wrap}.mp-rejoin .btn{flex:1 1 100%}.topbar:has(.mp-status) .projection-label{display:none}.tb-actions:has(>.mp-status){flex-wrap:wrap;row-gap:var(--space-2)}.tb-actions>.mp-status{flex:1 1 100%;gap:var(--space-2)}.mp-clock{min-height:36px;padding:2px var(--space-3)}.mp-clock-time{font-size:var(--text-md)}.mp-status .net-chips{min-width:0;overflow:hidden}}.dock.has-term{position:static}.map-area.is-covered{visibility:hidden}.term{position:absolute;z-index:var(--z-sheet);top:0;left:0;bottom:0;right:var(--rail-w);display:flex;flex-direction:column;min-width:0;background:var(--bg);border-top:1px solid var(--border);animation:term-in var(--dur) var(--ease-out)}@keyframes term-in{0%{opacity:0;transform:translateY(8px)}}.term-head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);padding-left:calc(var(--space-4) + var(--safe-left));border-bottom:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow)}.term-back{flex:none}.term-back .icon{transform:rotate(-90deg)}.term-titles{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.term-title{align-self:flex-start;display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-xl)}.term-title:focus{outline:none}.term-title:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:var(--radius-xs)}.term-title .icon{color:var(--power-ink)}.term-badge{padding:1px 8px;border:1px solid var(--border-strong);border-radius:var(--radius-pill);color:var(--text-muted);background:var(--surface-sunken);font-size:var(--text-sm);line-height:1.3}.term-sub{margin:0;color:var(--text-muted);font-size:var(--text-sm)}.term-esc{flex:none;padding:2px 8px;border:1px solid var(--border-strong);border-bottom-width:2px;border-radius:var(--radius-xs);background:var(--surface-2);color:var(--text-muted);font-family:var(--font-caps);font-size:var(--text-sm)}.term-body{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.term-inner{max-width:1320px;margin:0 auto;padding:var(--space-4);padding-left:calc(var(--space-4) + var(--safe-left))}.aterm{display:flex;flex-direction:column;gap:var(--space-4)}.aterm-bar{position:sticky;top:0;z-index:3;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-2) var(--space-6);margin:calc(-1 * var(--space-4)) calc(-1 * var(--space-4)) 0;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);background:var(--bg)}.aterm-profit{display:flex;align-items:baseline;gap:var(--space-2)}.aterm-k{color:var(--text-muted);font-weight:700}.aterm-profit-v{font-size:var(--text-2xl)}.aterm-profit-v.is-up{color:var(--good)}.aterm-profit-v.is-down{color:var(--critical)}.aterm-stats{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-6);margin:0}.aterm-stats>div{display:flex;flex-direction:column}.aterm-stats dt{color:var(--text-muted);font-size:var(--text-sm)}.aterm-stats dd{margin:0;font-weight:800}.aterm-stats>.is-bad dd,.aterm-stats>.is-bad dt{color:var(--critical)}.aterm-actions{display:flex;gap:var(--space-2)}.aterm-from{grid-column:1 / -1;margin:0;font-size:var(--text-sm)}.aterm-key{display:flex;flex-wrap:wrap;gap:2px var(--space-4);margin:calc(-1 * var(--space-2)) 0 0;color:var(--text-muted);font-size:var(--text-sm)}.aterm-key>span{display:inline-flex;align-items:center;gap:6px}.aterm-key-floor,.aterm-key-block,.aterm-key-demand{display:inline-block;flex:none;width:14px;height:14px;border-radius:3px}.aterm-key-floor{border-right:2px solid var(--text);background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--ink-dark) 45%,transparent) 0 2px,transparent 2px 6px),var(--plant-light)}.aterm-key-block{border:1px solid var(--border-strong);background:repeating-linear-gradient(135deg,var(--border-strong) 0 2px,transparent 2px 6px)}.aterm-key-demand{width:2px;border-radius:0;border-left:2px dashed var(--text-muted)}.aterm-alerts{display:flex;flex-direction:column;gap:var(--space-2)}.aflow{display:grid;grid-template-columns:minmax(0,1fr) 60px minmax(0,1fr);align-items:start;gap:0}.aflow-col{min-width:0}.aflow-head{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:var(--space-2)}.aflow-total{font-size:var(--text-sm)}.aflow-link{display:flex;flex-direction:column;align-items:center;gap:2px;margin-top:132px;color:var(--dc-ink);font-size:var(--text-sm);font-weight:800}.aflow-link .icon,.aflow-to{transform:rotate(90deg)}.aflow-to{color:var(--dc-ink)}.aflow-free{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid color-mix(in srgb,var(--status-critical) 45%,var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb,var(--status-critical) 10%,var(--surface));color:var(--critical);font-size:var(--text-sm)}.aflow-free p{flex:1;margin:0}.aflow-free-icon{flex:none;color:var(--critical-icon)}.apower{margin:0;font-size:var(--text-sm);color:var(--text-muted)}.apower .strong{color:var(--text)}.arows{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}.arow{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) 0;border-top:1px solid var(--border)}.arow-rent{margin-top:var(--space-1);border-top:2px dashed var(--border)}.arow-head{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:var(--space-2) var(--space-3)}.arow-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:var(--radius-xs);color:var(--ink-dark)}.pool-ai .arow-icon,.pool-otherDc .arow-icon{color:var(--cream-light)}.arow-name{display:flex;flex-direction:column;min-width:0}.arow-name h4{font-size:var(--text-md)}.arow-rate{color:var(--text-muted);font-size:var(--text-sm);white-space:normal}.arow-rate strong{color:var(--text)}.arow-proj{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:flex-end;gap:0 6px;font-size:var(--text-sm);text-align:right}.arow-proj-k{color:var(--text-muted)}.arow-proj .money{font-weight:800}.arow-facts{display:flex;flex-wrap:wrap;gap:2px var(--space-4);margin:0;font-size:var(--text-sm)}.arow-facts>div{display:inline-flex;align-items:center;gap:6px}.arow-facts dt{color:var(--text-muted)}.arow-facts dd{margin:0;font-weight:700}.arow-facts .is-floor dt:before{content:"";display:inline-block;width:12px;height:12px;margin-right:6px;vertical-align:-1px;border-radius:2px;border-right:2px solid var(--text);background:repeating-linear-gradient(135deg,var(--text-muted) 0 2px,transparent 2px 5px)}.arow-facts .is-over dt,.arow-facts .is-over dd{color:var(--warn)}.arow-auto-bar{height:8px;border-radius:var(--radius-pill);background:var(--surface-sunken);border:1px solid var(--border);overflow:hidden}.arow-auto-bar>span{display:block;height:100%;background:var(--dc-light);transition:width var(--dur) var(--ease-out)}.arow-auto-note{margin:0;color:var(--text-muted);font-size:var(--text-sm)}.mws{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:0 var(--space-3)}.mws-main{position:relative;min-width:0;padding:4px 0 20px}.mws-track{position:relative;height:28px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-sunken);cursor:pointer;touch-action:none}.mws.is-disabled .mws-track{cursor:default;opacity:.7}.mws-track:focus{outline:none}.mws-track:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.mws-fill{position:absolute;top:0;left:0;bottom:0;border-radius:7px 0 0 7px;background:var(--mws);transition:width var(--dur-fast) var(--ease-out)}.mws-floor{position:absolute;top:0;left:0;bottom:0;border-right:2px solid var(--text);border-radius:7px 0 0 7px;background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--ink-dark) 45%,transparent) 0 2px,transparent 2px 6px)}.mws-block{position:absolute;top:0;right:0;bottom:0;border-radius:0 7px 7px 0;background:repeating-linear-gradient(135deg,var(--border-strong) 0 2px,transparent 2px 6px)}.mws-demand{position:absolute;top:-5px;bottom:-5px;width:0;border-left:2px dashed var(--text-muted)}.mws-thumb{position:absolute;top:50%;width:18px;height:36px;border:2px solid var(--text);border-radius:var(--radius-xs);background:var(--surface);box-shadow:var(--shadow);transform:translate(-50%,-50%);transition:left var(--dur-fast) var(--ease-out);pointer-events:none}.mws-track:focus-visible .mws-thumb{background:var(--accent)}.mws-scale{position:absolute;left:0;right:0;bottom:0;height:18px;pointer-events:none}.mws-scale>span{position:absolute;top:0;transform:translate(-50%);color:var(--text-muted);font-size:var(--text-sm);font-weight:700;line-height:18px}.mws-scale-floor{color:var(--text)!important}.mws-ctl{display:flex;align-items:center;gap:4px;padding-top:2px}.mws-value{min-width:4.8em;font-weight:800;text-align:center}.mws-msg{grid-column:1 / -1;display:flex;align-items:center;gap:6px;margin:0;color:var(--info);font-size:var(--text-sm)}.mws-msg:not(.is-shown){height:0;overflow:hidden}.mws-msg .icon{flex:none;color:var(--info-icon)}.bbar{display:flex;flex-direction:column;gap:var(--space-2)}.bbar-track{display:flex;height:30px;overflow:hidden;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-sunken)}.bbar-seg{display:grid;place-items:center;min-width:0;background:var(--bb);color:var(--ink-dark);box-shadow:inset -2px 0 0 var(--surface);transition:width var(--dur) var(--ease-out)}.bbar-seg:last-child{box-shadow:none}.bbar-bad{background:repeating-linear-gradient(135deg,var(--status-critical) 0 5px,color-mix(in srgb,var(--status-critical) 55%,var(--surface)) 5px 10px);color:var(--cream-light)}.bbar-idle{background:color-mix(in srgb,var(--text-muted) 22%,var(--surface-sunken))}.bbar-off{background:repeating-linear-gradient(135deg,var(--border-strong) 0 2px,transparent 2px 6px)}.bbar-legend{display:flex;flex-wrap:wrap;gap:2px var(--space-4);margin:0;padding:0;list-style:none;font-size:var(--text-sm)}.bbar-item{display:inline-flex;align-items:center;gap:6px}.bbar-item.is-zero{color:var(--text-muted)}.bbar-key{flex:none;width:12px;height:12px;border-radius:3px;background:var(--bb);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--text) 25%,transparent)}.bbar-key.bbar-idle,.bbar-key.bbar-off,.bbar-key.bbar-bad{background-size:auto}.bbar-mw{font-weight:800}.bbar-item-bad:not(.is-zero){color:var(--critical);font-weight:800}.bbar-note .tag,.bbar-note{color:var(--text-muted)}.mterm{display:flex;flex-direction:column;gap:var(--space-4)}.mterm-review{gap:var(--space-2)}.mterm-review-list{grid-template-columns:repeat(6,minmax(0,1fr))}.mterm-legend{display:flex;flex-wrap:wrap;gap:4px var(--space-4);color:var(--text-muted);font-size:var(--text-sm);font-weight:700}.mterm-legend>span{display:inline-flex;align-items:center;gap:6px}.mterm-legend .key-line,.ochart-tip .key-line{height:3px;background:var(--text)}:root[data-theme=dark] .ochart-tip .key-line{background:var(--ink-dark)}.ochart-key{width:12px;height:12px;border-radius:3px}.mt-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}.mt-wrap:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:var(--radius-xs)}.mt{width:100%;min-width:940px;border-collapse:separate;border-spacing:0;font-size:var(--text-sm)}.mt th,.mt td{padding:8px 10px;border-bottom:1px solid var(--border);text-align:right;vertical-align:middle;white-space:nowrap}.mt thead th{color:var(--text-muted);font-weight:700;border-bottom:2px solid var(--border-strong)}.mt .mt-co{position:sticky;left:0;z-index:1;text-align:left;background:var(--surface);box-shadow:inset -1px 0 0 var(--border)}.mt-th{display:inline-flex;align-items:center;gap:4px}.mt-th-icon{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:4px;color:var(--ink-dark)}.mt-co-in{display:inline-flex;align-items:center;gap:var(--space-2)}.mt-pos{color:var(--text-muted);font-family:var(--font-num)}.mt-name{font-weight:800}.mt tbody tr.is-me>*{background:linear-gradient(var(--accent-soft),var(--accent-soft)),var(--surface)}.mt-price-in{display:inline-flex;align-items:center;gap:var(--space-2)}.mt-price-v{display:inline-flex;flex-direction:column;align-items:flex-end;line-height:1.2}.mt-off{color:var(--text-muted)}.mt-arrow{color:var(--text-faint)}.mt-used.is-idle{color:var(--warn)}.mt-unalloc{display:inline-flex;align-items:center;gap:4px;color:var(--critical);font-weight:800}.mt-unalloc .icon{color:var(--critical-icon)}.mt tfoot th,.mt tfoot td{border-bottom:0;color:var(--text-muted);font-weight:700}.mt tfoot td strong{color:var(--text)}.mt-gap{display:block;font-weight:800}.mt-gap.is-ok{color:var(--good)}.mt-gap.is-short{color:var(--warn)}.mt-key{margin:var(--space-2) 0 0;font-size:var(--text-sm);white-space:normal}.mpool .pool-head{grid-template-columns:24px minmax(0,auto) minmax(0,1fr) auto}.mpool .pool-name{min-width:0}.mpools{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(380px,100%),1fr));gap:var(--space-3)}.mpool{display:flex;flex-direction:column;gap:var(--space-2);min-width:0;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2)}.mpool-status{display:inline-flex;align-items:center;gap:4px;padding:1px 8px 1px 6px;border-radius:var(--radius-pill);font-size:var(--text-sm);font-weight:800;white-space:nowrap}.mpool-status.is-ok{color:var(--good);background:color-mix(in srgb,var(--status-good) 14%,transparent)}.mpool-status.is-ok .icon{color:var(--good-icon)}.mpool-status.is-short{color:var(--warn);background:color-mix(in srgb,var(--status-warn) 16%,transparent)}.mpool-status.is-short .icon{color:var(--warn-icon)}.mpool-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2) var(--space-3);margin:0;font-size:var(--text-sm)}.mpool-facts>div{display:flex;flex-direction:column;min-width:0}.mpool-facts dt{color:var(--text-muted)}.mpool-facts dd{display:flex;flex-wrap:wrap;align-items:center;gap:0 6px;margin:0;font-weight:700}.mpool-meter{display:inline-block;width:36px;height:8px;overflow:hidden;border-radius:var(--radius-pill);background:var(--surface-sunken);box-shadow:inset 0 0 0 1px var(--border-strong)}.mpool-meter>span{display:block;height:100%;background:var(--pb, var(--text-muted))}.ochart svg{display:block}.ochart-layer{fill-opacity:.78;stroke:var(--surface-2);stroke-width:1;stroke-linejoin:round}.ochart-layer.is-me{fill-opacity:.95}.ochart .ochart-demand{stroke:var(--text);stroke-width:2.5}.ochart .pchart-dot{fill:var(--text);stroke:var(--surface-2)}.ochart-tip-total{margin-top:2px;font-weight:700}@media(max-width:1100px)and (min-width:641px){.aflow{grid-template-columns:minmax(0,1fr);gap:var(--space-2)}.aflow-link{flex-direction:row;justify-content:center;margin-top:0}.aflow-link .icon{transform:rotate(180deg)}.mterm-review-list{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:640px){.term{right:0;bottom:calc(var(--tabbar-h) + var(--safe-bottom))}.term-head{gap:var(--space-2);padding:var(--space-2) var(--space-3)}.term-title{font-size:var(--text-lg)}.term-sub,.term-esc,.term-badge{display:none}.term-inner{padding:var(--space-3)}.aterm-bar{position:static;grid-template-columns:minmax(0,1fr) auto;margin:calc(-1 * var(--space-3)) calc(-1 * var(--space-3)) 0;padding:var(--space-3)}.aterm-stats{grid-column:1 / -1;grid-row:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-1) var(--space-3)}.aterm-actions{grid-column:2;grid-row:1}.aterm-profit{flex-wrap:wrap;gap:0 var(--space-2)}.aterm-k{white-space:nowrap}.aterm-profit-v{font-size:var(--text-xl)}.aterm-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-1) var(--space-2)}.aflow{grid-template-columns:minmax(0,1fr);gap:var(--space-2)}.aflow-link{flex-direction:row;justify-content:center;margin-top:0}.aflow-link .icon{transform:rotate(180deg)}.aflow-col.panel{padding:var(--space-3)}.aflow-free{flex-wrap:wrap}.arow-head{grid-template-columns:28px minmax(0,1fr)}.arow-proj{grid-column:2;justify-content:flex-start;text-align:left}.mws-value{min-width:4em}.mterm-review-list{grid-template-columns:repeat(3,minmax(0,1fr))}.mpool-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.mpool .pool-buys{display:none}.mpool .pool-head{grid-template-columns:24px minmax(0,1fr) auto}.mt-wrap{overflow:visible}.mt{min-width:0}.mt thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.mt,.mt tbody,.mt tfoot{display:block}.mt tr{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2) var(--space-3);padding:var(--space-3) var(--space-2);border-bottom:1px solid var(--border)}.mt tbody tr.is-me{border-radius:var(--radius-sm);background:var(--accent-soft)}.mt tbody tr.is-me>*{background:none}.mt th,.mt td{display:block;padding:0;border:0;text-align:left}.mt .mt-co{position:static;grid-column:1 / -1;background:none;box-shadow:none}.mt .mt-price{grid-column:1 / -1}.mt td[data-label]:before{content:attr(data-label);display:block;color:var(--text-muted);font-weight:600}.mt td:empty,.mt .mt-foot-round,.mt .mt-price:before{display:none!important}.mt-price-v{flex-direction:row;align-items:baseline;gap:var(--space-2)}.mt-gap{display:inline;margin-left:6px}.mterm-pools .panel-head,.mterm-companies .panel-head{flex-wrap:wrap}}.arules{margin:0;padding:var(--space-3) var(--space-4);border-radius:12px;border:1px solid var(--border);background:var(--surface-2)}.arules-title{display:flex;align-items:center;gap:8px;margin:0 0 8px;font-size:15px}.arules-list{margin:0;padding-left:20px;display:grid;gap:4px;font-size:14px;line-height:1.45}
