@font-face{font-family:"Baloo 2";font-style:normal;font-weight:400 800;font-display:swap;src:url(../fonts/baloo-2-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Baloo 2";font-style:normal;font-weight:400 800;font-display:swap;src:url(../fonts/baloo-2-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../fonts/nunito-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../fonts/nunito-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--cobalt-300:#5aa8f2;--cobalt-400:#349af5;--cobalt-500:#1f73cf;--cobalt-600:#1763bd;--cobalt-700:#1056b3;--cobalt-800:#0b408c;--navy-900:#10366c;--navy-950:#0a2550;--sun-200:#fff1a8;--sun-300:#ffe963;--sun-400:#ffd32d;--sun-500:#ffca26;--sun-800:#795000;--cream-50:#fffaf0;--cream-100:#fff5e1;--cream-200:#f7ecd6;--cream-300:#eadcc0;--coral-300:#ffb39c;--coral-400:#ff8f6d;--coral-500:#ff6f61;--coral-600:#e5573a;--coral-900:#9c2f1b;--mint-200:#d8f3de;--mint-400:#82ce91;--mint-600:#38b27a;--mint-800:#237a4f;--mint-900:#1c6a43;--sky-100:#e7f1fd;--sky-200:#cfe3f7;--sky-400:#8fd3ff;--slate-200:#d3dce5;--slate-500:#6d7f95;--ink:var(--navy-900);--ink-muted:#345273;--ink-soft:#48617b;--ink-on-color:#fff;--surface-page:var(--cobalt-600);--surface-paper:var(--cream-100);--surface-raised:var(--cream-50);--surface-sunken:#efe2c6;--surface-cool:var(--sky-100);--surface-ink:#123b6c;--scrim:#0a2a5a66;--line:#e3d6bb;--action-primary:linear-gradient(var(--sun-300), var(--sun-500));--action-primary-ink:#09295d;--action-secondary:linear-gradient(#fffaf0, #f4e8cf);--action-structure:linear-gradient(var(--cobalt-400), var(--cobalt-700));--action-cool:linear-gradient(#e9f2fb, #d3e4f4);--action-danger:linear-gradient(#ffe4da, #fbd0c3);--team-blue:linear-gradient(#3f8ff0, #1d5fc4);--team-coral:linear-gradient(var(--coral-400), var(--coral-600));--team-b-ink:var(--ink-on-color);--team-b-banner:var(--coral-300);--team-b-banner-edge:var(--coral-900);--focus-ring:var(--cobalt-500);--focus-halo:var(--cream-50);--focus-lift:translateY(-3px);--success:var(--mint-800);--danger:#a81c29;--warning:#b5561f;--rarity-common:var(--slate-500);--rarity-rare:#2f7fe4;--rarity-epic:#8a55e0;--rarity-legend:#e8961a;--rarity-common-chip:#56677c;--rarity-rare-chip:var(--cobalt-600);--rarity-legend-ink:#4a2a00;--rarity-rare-a:#2f7fe455;--rarity-epic-a:#8a55e055;--rarity-legend-a:#e8961a77;--kraft-50:#fbf3e2;--kraft-100:#f5e5c6;--kraft-200:#ecd5a8;--kraft-400:#d6b07a;--kraft-600:#a87a3e;--kraft-800:#6e4a1f;--kraft-600-a25:#a87a3e40;--kraft-edge:repeating-linear-gradient(90deg, var(--kraft-600) 0 2px, var(--kraft-200) 2px 5px);--tray:linear-gradient(#fffdf7, #f4e9d2);--pocket:radial-gradient(120% 95% at 50% 25%, #fff, #f2ece1 72%, #e6ddcd);--pocket-depth:inset 0 4px 8px #0a2a5a24, inset 0 -2px 0 #ffffffd9, 0 1px 0 #fffc;--glyph-ink:#0d2a55;--glyph-ink-2:#29497a;--glyph-face:#fffaf0;--glyph-key:linear-gradient(#fffefa, #efe2c3);--glyph-key-lip:#cdb88d;--glass:#fffaf0e0;--glass-solid:var(--cream-50);--glass-dark:#0a2550d9;--glass-dark-solid:var(--navy-950);--scrim-strong:#0a2550b3;--team-a-assist:#1b62c4;--team-b-assist:#e88a12;--slab:linear-gradient(var(--sun-300), var(--sun-500) 68%, #f3b41c);--slab-lip:#dc9f12;--white-a20:#fff3;--white-a60:#fff9;--ink-a08:#10366c14;--ink-a12:#10366c1f;--ink-a20:#10366c33;--shadow-deep:#062b6659;--sun-shadow:#79500055;--sun-shadow-soft:#79500033;--black-a35:#00000059;--black-a25:#00000040;--font-display:"Baloo 2", "Nunito", system-ui, sans-serif;--font-body:"Nunito", system-ui, "Segoe UI", sans-serif;--text-2xs:calc(11px * var(--text-scale));--text-xs:calc(12px * var(--text-scale));--text-sm:calc(14px * var(--text-scale));--text-md:calc(16px * var(--text-scale));--text-lg:calc(clamp(18px, .6vw + 14px, 22px) * var(--text-scale));--text-xl:calc(clamp(22px, 1.1vw + 15px, 30px) * var(--text-scale));--text-2xl:calc(clamp(28px, 2vw + 16px, 46px) * var(--text-scale));--text-3xl:calc(clamp(38px, 4vw + 14px, 88px) * var(--text-scale));--leading-tight:1.08;--leading:1.45;--text-scale:1;--hud-scale:1;--touch-scale:1;--fs-cap:calc(12px * var(--text-scale));--fs-sm:calc(14px * var(--text-scale));--fs-md:calc(16px * var(--text-scale));--fs-lg:calc(19px * var(--text-scale));--fs-xl:calc(24px * var(--text-scale));--fs-2xl:calc(32px * var(--text-scale));--fs-3xl:calc(44px * var(--text-scale));--fs-slab:calc(30px * var(--text-scale));--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;--gutter:clamp(12px, 2.2vw, 32px);--radius-sm:12px;--radius-md:20px;--radius-lg:28px;--radius-xl:40px;--radius-pill:999px;--bevel:inset 0 3px 5px #ffffffc4, inset 0 -5px 6px #78451228, 0 7px 12px #072b513d;--bevel-sm:inset 0 2px 3px #ffffffb8, inset 0 -3px 4px #78451222, 0 4px 8px #072b5133;--bevel-pressed:inset 0 3px 6px #0a2a5a33;--lift:0 8px 20px #092d5c40;--lift-lg:0 20px 60px #062b6666;--tap:44px;--tap-lg:56px;--ease-out:cubic-bezier(.2, .8, .3, 1);--ease-pop:cubic-bezier(.2, 1.6, .4, 1);--dur-fast:.12s;--dur:.2s;--dur-slow:.35s;--dur-flight:.55s;--ease-flight:cubic-bezier(.65, 0, .25, 1);--stagger:45ms;--ease-wobble:cubic-bezier(.3, 1.7, .5, 1);--topbar-h:68px;--hintbar-h:42px;--nav-h:68px;--slab-h:76px;--edge-x:calc(var(--gutter) + var(--safe-left));--edge-r:calc(var(--gutter) + var(--safe-right));--z-stage:-1;--z-hud-float:4;--z-banner:5;--z-stick:6;--z-toast:10;--z-warning:11;--z-prompt:12;--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)}html[data-text="115"]{--text-scale:1.15}html[data-text="130"]{--text-scale:1.3}html[data-hud="85"]{--hud-scale:.85}html[data-hud="115"]{--hud-scale:1.15}html[data-touch="85"]{--touch-scale:.85}html[data-touch="115"]{--touch-scale:1.15}html[data-touch="130"]{--touch-scale:1.3}html[data-assist]{--team-blue:linear-gradient(var(--team-a-assist), var(--team-a-assist));--team-coral:linear-gradient(var(--team-b-assist), var(--team-b-assist));--team-b-ink:var(--navy-950);--team-b-banner:var(--sun-300);--team-b-banner-edge:var(--sun-800)}@supports not ((-webkit-backdrop-filter:blur(4px)) or (backdrop-filter:blur(4px))){:root{--glass:var(--glass-solid);--glass-dark:var(--glass-dark-solid)}}@media (prefers-reduced-transparency:reduce){:root{--glass:var(--glass-solid);--glass-dark:var(--glass-dark-solid)}}html[data-gfx=battery]{--glass:var(--glass-solid);--glass-dark:var(--glass-dark-solid)}html[data-gfx=battery] *{-webkit-backdrop-filter:none!important}html[data-gfx=battery] ::backdrop{-webkit-backdrop-filter:none!important}*,:before,:after{box-sizing:border-box}html,body,#app{width:100%;height:100%;height:100dvh;margin:0;overflow:hidden}html{font-family:var(--font-body);font-size:var(--text-md);line-height:var(--leading);color:var(--ink);background:var(--surface-page);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%}body{overscroll-behavior:none}#app{isolation:isolate;color:var(--ink);position:relative}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--font-display);font-weight:800;line-height:var(--leading-tight);letter-spacing:-.01em}button,input,select{font:inherit;color:inherit;accent-color:var(--cobalt-600);caret-color:var(--cobalt-600)}button{cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:disabled{cursor:default}::selection{background:var(--sun-400);color:var(--ink)}:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px;box-shadow:0 0 0 3px var(--focus-halo)}canvas:focus-visible{outline-color:var(--focus-halo);outline-offset:-5px;box-shadow:none}*{scrollbar-width:thin;scrollbar-color:var(--cobalt-600) transparent}[hidden]{display:none!important}svg{flex-shrink:0}.icon{vertical-align:middle;width:22px;height:22px}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.num{font-variant-numeric:tabular-nums}.stage{z-index:var(--z-stage);position:absolute;inset:0;overflow:hidden}#city-canvas{touch-action:none;width:100%;height:100%;display:block}.in-game{-webkit-user-select:none;user-select:none}.boot,.fatal-screen{align-content:center;place-items:center;gap:var(--space-6);min-height:100%;padding:var(--space-8);color:var(--ink);display:grid}.fatal-screen{background:var(--surface-page) url(../art/plates/plate-loading-wide.webp) center / cover no-repeat;text-align:center}@media (orientation:portrait){.fatal-screen{background-image:url(../art/plates/plate-loading-tall.webp)}}.boot{padding:var(--space-6)}.boot progress{width:100%;height:14px;margin-top:var(--space-3);accent-color:var(--sun-500);display:block}.fatal-screen>div{background:var(--surface-paper);border-radius:var(--radius-xl);max-width:540px;padding:var(--space-8);box-shadow:var(--lift)}.fatal-screen h1{font-size:var(--text-2xl);margin:var(--space-4) 0}.fatal-screen p{margin:0 0 var(--space-6);line-height:1.6}@keyframes arrive{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:none}}@keyframes sheet-up{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}@keyframes pop{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.reduced-motion *,.reduced-motion :before,.reduced-motion :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.button{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--tap-lg);padding:var(--space-3) var(--space-6);border-radius:var(--radius-pill);background:var(--action-secondary);color:var(--action-primary-ink);box-shadow:var(--bevel);font-family:var(--font-display);font-size:var(--text-lg);text-align:center;transition:transform var(--dur-fast) var(--ease-out), filter var(--dur-fast) var(--ease-out);border:0;font-weight:800;line-height:1.1;text-decoration:none;display:inline-flex}.button .icon{width:1.1em;height:1.1em}.button.primary{background:var(--action-primary)}.button.secondary{background:var(--action-secondary)}.button.subtle{background:var(--action-cool);color:var(--ink)}.button.danger-button{background:var(--action-danger);color:var(--danger)}.button.full-width{width:100%}.button.small{min-height:var(--tap);padding:var(--space-2) var(--space-4);font-size:var(--text-md)}button:hover:not(:disabled){filter:brightness(1.06)}.button:hover:not(:disabled),.round-button:hover:not(:disabled),.card-button:hover:not(:disabled){transform:translateY(-2px)}.button:active:not(:disabled),.round-button:active:not(:disabled),.card-button:active:not(:disabled){transform:translateY(2px)}.button:disabled{filter:saturate(.3);opacity:.7}.round-button{border-radius:var(--radius-md);background:var(--action-structure);width:52px;height:52px;color:var(--ink-on-color);box-shadow:var(--bevel);font-family:var(--font-display);transition:transform var(--dur-fast) var(--ease-out), filter var(--dur-fast) var(--ease-out);border:0;flex-shrink:0;place-items:center;padding:0;font-weight:800;display:inline-grid}.round-button .icon{width:26px;height:26px}.round-button.paper{background:var(--action-secondary);color:var(--ink)}.text-button{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--tap);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--ink);font-family:var(--font-display);font-size:var(--text-md);background:0 0;border:0;font-weight:700;line-height:1.2;display:inline-flex}.text-button .icon{width:20px;height:20px}.text-button:hover:not(:disabled){background:#10366c0f}.text-button.danger{color:var(--danger)}.small-choice{min-height:var(--tap);padding:var(--space-2) var(--space-4);font-size:var(--text-md);box-shadow:var(--bevel-sm)}.small-choice[aria-pressed=true]{background:var(--action-primary)}.small-choice[aria-pressed=true]:not(:focus-visible){outline-offset:-5px;outline:3px solid #ffffffb0}.choice-group{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.choice-group>small,.field-label{font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);flex-basis:100%;font-weight:800}.tabs{gap:var(--space-1);padding:var(--space-1);border-radius:var(--radius-pill);background:var(--surface-sunken);box-shadow:var(--bevel-pressed);scrollbar-width:none;display:flex;overflow-x:auto}.tabs button{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--tap);padding:var(--space-2) var(--space-4);border-radius:var(--radius-pill);color:var(--ink-muted);font-family:var(--font-display);font-size:var(--text-md);white-space:nowrap;background:0 0;border:0;flex:1 0 auto;font-weight:800;display:inline-flex}.tabs button .icon{width:20px;height:20px}.tabs button[aria-selected=true],.tabs button[aria-pressed=true]{background:var(--action-structure);color:var(--ink-on-color);box-shadow:var(--bevel-sm)}.badge{align-items:center;gap:var(--space-1);padding:2px var(--space-3);border-radius:var(--radius-pill);background:var(--surface-cool);color:var(--ink);font-family:var(--font-display);font-size:var(--text-xs);white-space:nowrap;font-weight:800;line-height:1.6;display:inline-flex}.badge .icon{width:14px;height:14px}.badge.soon{background:var(--sun-200);color:var(--sun-800)}.badge.team{color:var(--cobalt-700);background:#dce9fb}.badge.turns{background:var(--mint-200);color:var(--mint-800)}.badge.coins{background:var(--sun-200);color:var(--sun-800)}.card{gap:var(--space-3);min-width:0;padding:var(--space-4);border-radius:var(--radius-lg);background:var(--surface-paper);color:var(--ink);box-shadow:var(--bevel);text-align:left;border:0;flex-direction:column;display:flex;position:relative}.card h3{font-size:var(--text-xl)}.card p{font-size:var(--text-sm);color:var(--ink-muted);line-height:1.4}.card-title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:800;line-height:var(--leading-tight);display:block}.card-text{font-size:var(--text-sm);color:var(--ink-muted);line-height:1.4;display:block}.card-button{cursor:pointer;transition:transform var(--dur-fast) var(--ease-out), filter var(--dur-fast) var(--ease-out)}.card-button:hover:not(:disabled):after{content:"";height:2px;position:absolute;top:100%;left:0;right:0}.card-art{aspect-ratio:176/90;border-radius:var(--radius-md);background:#f3e6cc;width:100%;display:block;overflow:hidden}.card-art>svg,.card-art>img{width:100%;height:100%;display:block}.card-art>img{object-fit:cover}.card-row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.card .button{margin-top:auto}#game-dialog{width:min(800px,100vw - 32px);max-width:none;max-height:calc(100dvh - 32px - var(--safe-top) - var(--safe-bottom));padding:var(--space-6) var(--space-8) var(--space-8);overscroll-behavior:contain;border-radius:var(--radius-xl);color:var(--ink);box-shadow:inset 0 3px 8px #fff, var(--lift-lg);scroll-padding-block:96px calc(var(--hintbar-h) + var(--space-3));background:linear-gradient(#fff8ea,#f7edda);border:0;margin:auto;overflow:auto}#game-dialog[open]{animation:arrive var(--dur) var(--ease-out)}#game-dialog::backdrop{background:var(--scrim);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}@supports (overlay:auto){#game-dialog{transition:opacity var(--dur-fast) ease-in, translate var(--dur-fast) ease-in, overlay var(--dur-fast) allow-discrete, display var(--dur-fast) allow-discrete}#game-dialog::backdrop{transition:opacity var(--dur-fast) ease-in, translate var(--dur-fast) ease-in, overlay var(--dur-fast) allow-discrete, display var(--dur-fast) allow-discrete}#game-dialog:not([open]){opacity:0;pointer-events:none;translate:0 10px}#game-dialog:not([open]):not(.in-shell){position:fixed;inset-block:0}#game-dialog:not([open])::backdrop{opacity:0}}#game-dialog.compact-dialog{width:min(480px,100vw - 32px)}#game-dialog.wide-dialog{width:min(1180px,100vw - 32px)}.dialog-top{top:calc(-1 * var(--space-6));z-index:2;align-items:center;gap:var(--space-3);margin:calc(-1 * var(--space-6)) calc(-1 * var(--space-8)) var(--space-5);padding:var(--space-6) var(--space-8) var(--space-3);background:linear-gradient(#fff8ea 75%,#fff8ea00);display:flex;position:sticky}.dialog-top>div{min-width:0;padding:var(--space-3) var(--space-5);border-radius:var(--radius-lg);background:var(--action-structure);box-shadow:var(--bevel);text-align:center;flex:1}.dialog-top h2{color:var(--cream-100);font-size:var(--text-2xl);overflow-wrap:anywhere}.dialog-top .round-button{background:var(--action-secondary);width:48px;height:48px;color:var(--ink)}.dialog-body{gap:var(--space-4);flex-direction:column;display:flex}.dialog-body>p,.dialog-intro{font-size:var(--text-md);color:var(--ink-muted);line-height:1.5}.dialog-footer{justify-content:space-between;align-items:center;gap:var(--space-3);font-size:var(--text-sm);color:var(--ink-soft);flex-wrap:wrap;display:flex}.stack-actions{gap:var(--space-3);flex-direction:column;display:flex}.dialog-emblem{border-radius:var(--radius-md);width:76px;height:76px;color:var(--cobalt-600);background:#dbeafb;place-items:center;margin:0 auto;display:grid;transform:rotate(-6deg)}.dialog-emblem .icon{width:34px;height:34px;transform:rotate(6deg)}.pause-dialog .dialog-intro{text-align:center}.pause-more{gap:var(--space-2);flex-wrap:wrap;display:flex}.pause-more .button{flex:128px}.small-note{font-size:var(--text-sm);color:var(--ink-soft);line-height:1.45}.inline-warning{font-size:var(--text-sm);color:var(--danger);font-weight:700}.section-head{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}@media (max-width:640px){#game-dialog,#game-dialog.compact-dialog,#game-dialog.wide-dialog{width:100%;max-height:calc(100dvh - var(--safe-top) - 12px);padding:var(--space-4) var(--space-4) calc(var(--space-6) + var(--safe-bottom));border-radius:var(--radius-lg) var(--radius-lg) 0 0;margin:auto 0 0}#game-dialog[open]{animation:sheet-up var(--dur-slow) var(--ease-out)}.dialog-top{top:calc(-1 * var(--space-4));margin:calc(-1 * var(--space-4)) calc(-1 * var(--space-4)) var(--space-4);padding:var(--space-4) var(--space-4) var(--space-2)}.dialog-top>div{padding:var(--space-2) var(--space-4);border-radius:var(--radius-md)}.dialog-top h2{font-size:var(--text-xl)}.dialog-top .round-button{width:var(--tap);height:var(--tap)}}.settings-list{flex-direction:column;display:flex}.setting-row{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--line);font-family:var(--font-display);font-size:var(--text-lg);font-weight:700;line-height:1.2;display:flex}.setting-row:last-child{border-bottom:0}.setting-row>span{align-items:center;gap:var(--space-2);min-width:0;display:flex}.setting-row>span:has(small){display:block}.setting-row small{margin-top:var(--space-1);max-width:440px;font-family:var(--font-body);font-size:var(--text-xs);color:var(--ink-soft);font-weight:600;line-height:1.45;display:block}.setting-row input[type=checkbox]{appearance:none;border-radius:var(--radius-pill);cursor:pointer;width:64px;height:36px;transition:background var(--dur) var(--ease-out);background:#b9bec5;border:0;flex-shrink:0;margin:0;position:relative;box-shadow:inset 0 2px 4px #29405c33}.setting-row input[type=checkbox]:after{content:"";background:var(--cream-100);width:28px;height:28px;transition:transform var(--dur) var(--ease-out);border-radius:50%;position:absolute;top:4px;left:4px;box-shadow:0 2px 4px #12323755}.setting-row input[type=checkbox]:checked{background:var(--cobalt-600)}.setting-row input[type=checkbox]:checked:after{transform:translate(28px)}.setting-row select{min-height:var(--tap);max-width:220px;padding:var(--space-2) var(--space-3);border:2px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--ink);font-family:var(--font-body);font-size:var(--text-md);cursor:pointer;flex-shrink:0;font-weight:700}.volume-row{display:block}.volume-row>span{justify-content:space-between}.volume-row output{font-family:var(--font-body);font-size:var(--text-sm);color:var(--ink-soft)}input[type=range]{width:100%;height:32px;margin:var(--space-2) 0 0;accent-color:var(--cobalt-600);cursor:pointer}.setting-advanced{padding:var(--space-3) 0;border-bottom:1px solid var(--line)}.setting-advanced>summary{min-height:var(--tap);font-family:var(--font-display);font-size:var(--text-md);color:var(--cobalt-700);cursor:pointer;align-items:center;font-weight:800;display:flex}.setting-advanced>small{font-size:var(--text-xs);color:var(--ink-soft);display:block}.setting-advanced .setting-row{font-size:var(--text-md)}.settings-save{font-size:var(--text-xs);color:var(--ink-soft)}kbd,.keycap{background:var(--surface-raised);min-width:26px;min-height:26px;color:var(--ink);font-family:var(--font-body);font-size:var(--text-xs);border:0;border-radius:7px;place-items:center;padding:2px 7px;font-weight:800;display:inline-grid;box-shadow:0 2px #10366c33}.progress-track{border-radius:var(--radius-pill);background:var(--slate-200);flex:1;min-width:30px;height:8px;overflow:hidden}.progress-track i{border-radius:inherit;background:var(--cobalt-600);width:0;height:100%;transition:width .1s linear;display:block}.toy-preview{place-items:center;min-width:0;display:grid;position:relative}.toy-preview canvas{object-fit:contain;width:100%;max-width:100%;height:auto;display:block}.preview-fallback{display:none}.toy-preview canvas:not([data-rendered])+.preview-fallback{opacity:.3;display:block;position:absolute}.toast{left:50%;bottom:max(var(--space-5), var(--safe-bottom));z-index:var(--z-toast);max-width:min(580px,100% - 32px);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);background:var(--surface-paper);color:var(--ink);box-shadow:var(--lift);font-weight:700;font-size:var(--text-sm);text-align:center;pointer-events:none;line-height:1.45;position:absolute;transform:translate(-50%)}#app[data-screen=results] .toast{top:max(var(--space-2), var(--safe-top));bottom:auto}.save-warning{top:max(var(--space-2), var(--safe-top));z-index:var(--z-warning);max-width:min(600px,100% - 30px);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:#713a23;box-shadow:var(--lift);font-size:var(--text-xs);background:#fff1cf;line-height:1.45;position:absolute;left:50%;transform:translate(-50%)}.audio-prompt{left:50%;bottom:max(78px, calc(var(--safe-bottom) + 65px));z-index:var(--z-prompt);max-width:calc(100% - 40px);min-height:var(--tap);padding:var(--space-2) var(--space-4);border-radius:var(--radius-pill);background:var(--action-primary);color:var(--action-primary-ink);box-shadow:var(--bevel);font-family:var(--font-display);font-weight:800;font-size:var(--text-sm);border:0;position:absolute;transform:translate(-50%)}@media (max-width:640px){.save-warning{top:auto;bottom:max(var(--space-2), var(--safe-bottom))}.tabs button{padding:var(--space-2) var(--space-3);font-size:var(--text-sm)}}@media (max-width:420px){.settings-tabs button .icon{display:none}}:is(.button,.round-button,.text-button,.card-button,.small-choice,.tabs button,.join-slot,.contract-card,.city-island,select,input,summary,a):focus-visible,#app[data-device=gamepad] :focus:not(canvas,dialog){outline:3px solid var(--focus-ring);outline-offset:3px;box-shadow:0 0 0 3px var(--focus-halo)}:is(.card-button,.contract-card,.city-island):focus-visible,#app[data-device=gamepad] :is(.card-button,.contract-card,.city-island):focus{transform:var(--focus-lift)}#app[data-device=touch] :focus-visible:not(input:is([type=text],[type=search],:not([type])),textarea){box-shadow:none;outline:none}.hud :is(button,a):focus-visible,#app[data-device=gamepad] .hud :focus:not(canvas){outline-color:var(--focus-halo);box-shadow:0 0 0 3px var(--focus-ring)}.tabs button:focus-visible,#app[data-device=gamepad] .tabs button:focus{outline-offset:-3px;box-shadow:inset 0 0 0 6px var(--focus-halo)}@media (orientation:landscape) and (max-height:560px){#game-dialog{max-height:calc(100dvh - 16px);padding:var(--space-3) var(--space-5) var(--space-5);border-radius:var(--radius-lg)}.dialog-top{top:calc(-1 * var(--space-3));margin:calc(-1 * var(--space-3)) calc(-1 * var(--space-5)) var(--space-3);padding:var(--space-3) var(--space-5) var(--space-2)}.dialog-top>div{padding:var(--space-1) var(--space-4);border-radius:var(--radius-md)}.dialog-top h2{font-size:var(--text-xl)}.dialog-top .round-button{width:var(--tap);height:var(--tap)}}.g{vertical-align:middle;color:var(--glyph-face);flex-shrink:0;justify-content:center;align-items:center;line-height:1;display:inline-flex}.g svg{width:14px;height:14px}.g.face{background:radial-gradient(circle at 35% 30%, var(--glyph-ink-2), var(--glyph-ink) 70%);width:26px;height:26px;box-shadow:inset 0 -2px 0 var(--black-a35), 0 1px 2px var(--shadow-deep);font:800 calc(14px * var(--text-scale))/1 var(--font-display);border-radius:50%}.g.shoulder{background:linear-gradient(var(--glyph-ink-2), var(--glyph-ink));min-width:36px;height:24px;box-shadow:inset 0 -2px 0 var(--black-a35), 0 1px 2px var(--shadow-deep);font:800 calc(11.5px * var(--text-scale))/1 var(--font-display);letter-spacing:.04em;border-radius:9px 9px 6px 6px;padding:0 7px}.g.shoulder.trigger{border-radius:6px 6px 10px 10px}.g.dpad{background:var(--glyph-ink);border-radius:7px;width:26px;height:26px}.g.dpad svg{width:18px;height:18px}.g.key{background:var(--glyph-key);min-width:28px;height:26px;color:var(--ink);box-shadow:inset 0 -3px 0 var(--glyph-key-lip), 0 1px 0 var(--ink-a20), 0 0 0 1px var(--ink-a12);font:800 calc(12.5px * var(--text-scale))/1 var(--font-display);letter-spacing:.02em;border-radius:7px;padding:0 7px}#app[data-device=touch] .g{display:none!important}.hintbar{align-items:center;gap:var(--space-2) var(--space-5);min-height:var(--hintbar-h);padding:var(--space-1) var(--space-5);background:var(--glass);-webkit-backdrop-filter:blur(10px)saturate(1.1);backdrop-filter:blur(10px)saturate(1.1);box-shadow:0 -1px 0 var(--ink-a08), 0 -6px 18px var(--ink-a08);font:800 var(--fs-sm)/1 var(--font-display);color:var(--ink);white-space:nowrap;flex-wrap:wrap;display:flex}.hintbar:empty{display:none}#app:is([data-device=mouse],[data-device=touch]) .hintbar{visibility:hidden}@media (hover:none) and (pointer:coarse){.hintbar{display:none}}.hintbar>span{align-items:center;gap:7px;display:inline-flex}.hintbar>span>.g+.g{margin-left:-3px}.dialog-hints{z-index:2;bottom:calc(-1 * var(--space-8));margin:var(--space-5) calc(-1 * var(--space-8)) calc(-1 * var(--space-8));border-radius:0 0 var(--radius-xl) var(--radius-xl);position:sticky}@media (max-width:640px){.dialog-hints{bottom:calc(-1 * (var(--space-6) + var(--safe-bottom)));margin:var(--space-4) calc(-1 * var(--space-4)) calc(-1 * (var(--space-6) + var(--safe-bottom)));border-radius:0}}@media (orientation:landscape) and (max-height:560px){.dialog-hints{bottom:calc(-1 * var(--space-5));margin:var(--space-3) calc(-1 * var(--space-5)) calc(-1 * var(--space-5));border-radius:0 0 var(--radius-lg) var(--radius-lg)}}.plate-dialog .dialog-hints{bottom:calc(-1 * max(var(--space-4), var(--safe-bottom)));margin:var(--space-4) calc(-1 * var(--gutter)) calc(-1 * max(var(--space-4), var(--safe-bottom)));border-radius:0}.map-dialog .dialog-hints{border-radius:0;flex:none;margin:0;position:static}.top-bar{z-index:30;height:calc(var(--topbar-h) + var(--safe-top));align-items:center;gap:var(--space-3);padding:var(--safe-top) var(--edge-r) 0 var(--edge-x);pointer-events:none;grid-template-columns:1fr auto 1fr;display:grid;position:absolute;top:0;left:0;right:0}.top-bar>*{pointer-events:auto}.top-bar .player{justify-self:start;align-items:center;gap:var(--space-3);border-radius:var(--radius-pill);background:var(--action-secondary);min-width:0;max-width:100%;min-height:52px;color:var(--ink);box-shadow:var(--bevel-sm);text-align:left;border:0;padding:4px 16px 4px 4px;display:flex}.top-bar .avatar{background:conic-gradient(var(--sun-500) 0 var(--xp,0%), var(--ink-a12) var(--xp,0%) 100%);border-radius:50%;flex-shrink:0;width:46px;height:46px;padding:4px;position:relative}.top-bar .avatar :is(img,canvas){object-fit:cover;background:var(--sky-200);width:100%;height:100%;box-shadow:inset 0 0 0 2px var(--cream-50);border-radius:50%;display:block}.top-bar .avatar b{background:var(--action-structure);min-width:24px;height:24px;color:var(--ink-on-color);font:800 calc(13px * var(--text-scale))/1 var(--font-display);box-shadow:0 0 0 2px var(--cream-50);border-radius:12px;place-items:center;padding:0 5px;display:grid;position:absolute;bottom:-5px;right:-7px}.top-bar .player strong{font:800 var(--fs-md)/1.1 var(--font-display);white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.top-bar .player small{color:var(--ink-soft);font-size:var(--fs-cap);white-space:nowrap;font-weight:800;display:block}.maintabs{border-radius:var(--radius-pill);background:var(--action-structure);box-shadow:var(--bevel), inset 0 -3px 0 var(--cobalt-800);align-items:center;gap:4px;padding:5px 6px;display:flex}.maintabs [role=tab]{border-radius:var(--radius-pill);min-height:46px;color:var(--ink-on-color);font:800 var(--fs-md)/1 var(--font-display);white-space:nowrap;background:0 0;border:0;align-items:center;gap:7px;padding:0 15px;display:inline-flex;position:relative}.maintabs [role=tab] .icon{width:19px;height:19px}.maintabs [role=tab][aria-selected=true]{background:var(--action-secondary);color:var(--ink);box-shadow:var(--bevel-sm)}.maintabs .g{margin:0 3px}.pip{background:var(--coral-500);width:10px;height:10px;box-shadow:0 0 0 2px var(--cobalt-600);border-radius:50%;position:absolute;top:3px;right:3px}.top-bar .topright{justify-self:end;align-items:center;gap:var(--space-2);display:flex}.top-bar .wallet{border-radius:var(--radius-pill);background:var(--action-secondary);min-height:52px;box-shadow:var(--bevel-sm);font:800 var(--fs-lg)/1 var(--font-display);align-items:center;gap:8px;padding:4px 4px 4px 8px;display:inline-flex}.top-bar .wallet img{width:32px;height:32px;filter:drop-shadow(0 2px 2px var(--sun-shadow))}.subhead{z-index:25;top:calc(var(--topbar-h) + var(--safe-top) + 6px);left:var(--edge-x);align-items:center;gap:var(--space-3);display:flex;position:absolute}.subhead .back{border-radius:var(--radius-pill);background:var(--action-secondary);min-height:48px;color:var(--ink);box-shadow:var(--bevel-sm);font:800 var(--fs-md)/1 var(--font-display);border:0;align-items:center;gap:8px;padding:0 16px 0 6px;display:inline-flex}.subtabs{border-radius:var(--radius-pill);background:var(--surface-sunken);box-shadow:inset 0 2px 4px var(--ink-a12), var(--bevel-sm);align-items:center;gap:4px;padding:5px;display:inline-flex}.subtabs [role=tab]{min-height:var(--tap);border-radius:var(--radius-pill);color:var(--ink-muted);font:800 var(--fs-sm)/1 var(--font-display);white-space:nowrap;background:0 0;border:0;align-items:center;gap:7px;padding:0 14px;display:inline-flex;position:relative}.subtabs [role=tab][aria-selected=true]{background:var(--action-structure);color:var(--ink-on-color);box-shadow:var(--bevel-sm)}.bottomnav{display:none}@media (max-width:640px) and (orientation:portrait){:root{--topbar-h:62px;--slab-h:70px}.top-bar{gap:var(--space-2);grid-template-columns:1fr auto}.top-bar .maintabs,.top-bar .desk-only{display:none}.bottomnav{z-index:30;padding:7px calc(8px + var(--safe-right)) calc(7px + var(--safe-bottom)) calc(8px + var(--safe-left));background:linear-gradient(var(--cobalt-500), var(--cobalt-700));box-shadow:0 -6px 18px var(--ink-a20), inset 0 3px 0 var(--white-a20);grid-template-columns:repeat(5,1fr);gap:2px;display:grid;position:absolute;bottom:0;left:0;right:0}.bottomnav button{min-height:54px;color:var(--sky-200);font:800 calc(12.5px * var(--text-scale))/1 var(--font-display);background:0 0;border:0;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:3px;display:flex;position:relative}.bottomnav button[aria-selected=true]{background:var(--action-secondary);color:var(--ink);box-shadow:var(--bevel-sm)}}@media (max-width:1100px) and (min-width:641px),(max-height:460px) and (orientation:landscape){.maintabs [role=tab] .t,.top-bar .player small{display:none}}.slot{z-index:26;right:var(--edge-r);bottom:calc(var(--hintbar-h) + var(--safe-bottom) + 14px);align-items:stretch;gap:var(--space-3);display:flex;position:absolute}#app[data-device=touch] .slot{bottom:calc(var(--safe-bottom) + 18px)}.slab{min-width:288px;min-height:var(--slab-h);background:var(--slab);color:var(--action-primary-ink);box-shadow:var(--bevel), inset 0 -6px 0 var(--slab-lip), var(--lift);text-align:left;border:0;border-radius:26px;justify-content:center;align-items:center;gap:14px;padding:0 26px 0 30px;display:flex;position:relative}.slab .lbl{flex-direction:column;gap:3px;min-width:0;display:flex}.slab .lbl strong{font:800 var(--fs-slab)/.95 var(--font-display);letter-spacing:.03em;white-space:nowrap;text-transform:uppercase}@media (max-width:640px){.slab .lbl strong{font-size:min(var(--fs-slab), 6vw)}}.slab .lbl small{max-width:300px;color:var(--action-primary-ink);font:800 var(--fs-cap)/1.1 var(--font-display);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.slab .g{margin-left:auto}.slab:active{transform:translateY(2px)}.slab:disabled{filter:saturate(.3);opacity:.7;cursor:default;animation:none}.slab:disabled:active{transform:none}.slab:focus-visible,#app[data-device=gamepad] .slab:focus{animation:1.8s ease-in-out infinite breathe}@keyframes breathe{0%,to{transform:translateY(-3px)scale(1)}50%{transform:translateY(-4px)scale(1.018)}}.chipbtn{min-width:104px;min-height:var(--slab-h);background:var(--action-secondary);color:var(--ink);box-shadow:var(--bevel), inset 0 -4px 0 var(--kraft-200);font:800 var(--fs-sm)/1.1 var(--font-display);text-align:center;border:0;border-radius:22px;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:8px 14px;display:flex;position:relative}.chipbtn>.g{position:absolute;top:6px;right:6px}.panel{border-radius:var(--radius-lg);background:linear-gradient(var(--cream-50), var(--cream-200));box-shadow:var(--bevel), var(--lift);position:relative}.kraft{background:linear-gradient(170deg, var(--kraft-50), var(--kraft-100));color:var(--ink);box-shadow:inset 0 2px 0 var(--white-a60), inset 0 -3px 0 var(--kraft-600-a25), var(--lift);border-radius:26px;position:relative}.kraft:before{content:"";background:var(--kraft-edge);opacity:.5;border-radius:0 0 5px 5px;height:5px;position:absolute;top:0;left:24px;right:24px}.cobalt-card{color:var(--ink-on-color);box-shadow:var(--bevel), var(--lift);background:radial-gradient(circle at 20% 15%, var(--white-a20) 0 1.5px, transparent 2px) 0 0 / 20px 20px, linear-gradient(135deg, var(--cobalt-500), var(--cobalt-800));border-radius:26px;position:relative}.tray{background:var(--tray);box-shadow:var(--bevel), var(--lift);border-radius:24px}.item{background:linear-gradient(var(--cream-50), var(--cream-100));color:var(--ink);box-shadow:var(--bevel-sm);text-align:left;border:0;border-radius:20px;flex-direction:column;gap:6px;padding:8px 8px 10px;display:flex;position:relative}.item .pocket{aspect-ratio:1/.78;background:var(--pocket);box-shadow:var(--pocket-depth);border-radius:15px;position:relative;overflow:hidden}.item.rare .pocket{box-shadow:var(--pocket-depth), inset 0 0 0 2px var(--rarity-rare-a)}.item.epic .pocket{box-shadow:var(--pocket-depth), inset 0 0 0 2px var(--rarity-epic-a)}.item.legendary .pocket{box-shadow:var(--pocket-depth), inset 0 0 0 2px var(--rarity-legend-a);background:radial-gradient(120% 95% at 50% 25%, var(--cream-50), var(--sun-200) 75%, var(--kraft-200))}.item.worn{box-shadow:0 0 0 3px var(--cobalt-500), var(--bevel-sm)}.item.trying .pocket:after{content:"";border:2px dashed var(--ink-a20);border-radius:11px;position:absolute;inset:5px}.price{background:var(--action-primary);height:30px;color:var(--action-primary-ink);box-shadow:0 0 0 2px var(--cream-50), 0 2px 4px var(--sun-shadow-soft);font:800 calc(15px * var(--text-scale))/1 var(--font-display);white-space:nowrap;border-radius:15px;align-items:center;gap:4px;padding:0 11px 0 4px;display:inline-flex}.price.short{background:var(--surface-sunken);color:var(--ink-soft)}.rarity{height:24px;color:var(--ink-on-color);font:800 calc(12px * var(--text-scale))/1 var(--font-display);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;box-shadow:0 0 0 2px var(--cream-50);border-radius:12px;align-items:center;gap:5px;padding:0 9px 0 6px;display:inline-flex}.rarity svg{width:14px;height:14px}.rarity.common{background:var(--rarity-common-chip)}.rarity.rare{background:var(--rarity-rare-chip)}.rarity.epic{background:var(--rarity-epic)}.rarity.legendary{background:linear-gradient(var(--sun-400), var(--rarity-legend));color:var(--rarity-legend-ink)}.hold{--hold:0;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;touch-action:none;position:relative}.hold .ring{background:conic-gradient(var(--danger) calc(var(--hold) * 1turn), var(--ink-a12) 0);width:26px;height:26px;-webkit-mask:radial-gradient(circle, transparent 8px, var(--ink) 9px);-webkit-mask:radial-gradient(circle, transparent 8px, var(--ink) 9px);mask:radial-gradient(circle, transparent 8px, var(--ink) 9px);border-radius:50%;flex-shrink:0}.round{background:var(--action-structure);width:48px;height:48px;color:var(--ink-on-color);box-shadow:var(--bevel-sm);border:0;border-radius:16px;flex-shrink:0;place-items:center;padding:0;display:grid}.round.paper{background:var(--action-secondary);color:var(--ink)}.round.small{border-radius:50%;width:44px;height:44px}.round .icon{stroke-width:2.1px;width:22px;height:22px}.round.lang{font:800 var(--fs-sm)/1 var(--font-display);letter-spacing:.04em}.btn{min-height:var(--tap);border-radius:var(--radius-pill);background:var(--action-secondary);color:var(--ink);box-shadow:var(--bevel-sm);font:800 var(--fs-md)/1 var(--font-display);white-space:nowrap;border:0;justify-content:center;align-items:center;gap:9px;padding:0 18px;display:inline-flex;position:relative}.btn .icon{stroke-width:2.2px;width:20px;height:20px;color:var(--cobalt-700)}:is(.btn,.round,.chipbtn,.item,.slotp):active{transform:translateY(2px)}.textbtn{min-height:var(--tap);color:var(--cobalt-700);font:800 var(--fs-sm)/1 var(--font-display);background:0 0;border:0;border-radius:14px;align-items:center;gap:6px;padding:0 10px;display:inline-flex}.textbtn .icon{width:18px;height:18px}.chip{border-radius:var(--radius-pill);background:var(--ink-a08);min-height:28px;color:var(--ink-muted);font:800 var(--fs-cap)/1 var(--font-display);white-space:nowrap;align-items:center;gap:6px;padding:0 11px;display:inline-flex}.cap{font:800 var(--fs-cap)/1.1 var(--font-display);letter-spacing:.09em;text-transform:uppercase;color:var(--ink-soft)}.meter{background:var(--ink-a12);height:10px;box-shadow:inset 0 2px 3px var(--ink-a12);border-radius:6px;display:block;position:relative;overflow:hidden}.meter>i{width:var(--v,0%);border-radius:inherit;background:linear-gradient(var(--cobalt-300), var(--cobalt-600));box-shadow:inset 0 2px 0 var(--white-a60);position:absolute;inset:0 auto 0 0}.meter.sun>i{background:linear-gradient(var(--sun-300), var(--sun-500))}.meter.mint>i{background:linear-gradient(var(--mint-400), var(--mint-600))}.glyph{display:inline-flex}.glyph:empty{display:none}.g.stick{background:radial-gradient(circle at 35% 30%, var(--glyph-ink-2), var(--glyph-ink) 70%);min-width:30px;height:26px;box-shadow:inset 0 -2px 0 var(--black-a35), 0 1px 2px var(--shadow-deep);font:800 calc(11.5px * var(--text-scale))/1 var(--font-display);border-radius:13px;padding:0 6px}.g.mouse{width:22px;height:26px;color:var(--ink)}.g.mouse svg{width:22px;height:26px}.g.mouse rect{fill:var(--cream-50)}[data-slot-device]{pointer-events:none;display:flex;position:absolute;top:-7px;right:-7px}[data-slot-device]:empty{display:none}.slot-device{background:var(--glyph-ink);min-width:22px;height:20px;color:var(--glyph-face);box-shadow:var(--bevel-sm);font:800 var(--text-2xs)/1 var(--font-body);border-radius:10px;justify-content:center;align-items:center;padding:0 4px;display:inline-flex}.slot-device .icon{width:14px!important;height:14px!important;color:inherit!important}.slot-device kbd{font:inherit;letter-spacing:.02em}.slot-device.none{background:var(--surface-sunken);color:var(--ink-muted);box-shadow:none}.chipbtn>.glyph{position:absolute;top:6px;right:6px}.slab>.glyph{margin-left:auto}.slab .icon.lead{fill:currentColor;stroke-width:2.4px;width:30px;height:30px}#app[data-device=touch] .notouch,#app[data-device=gamepad] .kbd-only,#app:not([data-device=gamepad]) .pad-only{display:none}.bind-head{align-items:center;gap:var(--space-2);margin:var(--space-4) 0 var(--space-1);font:800 var(--fs-lg)/1 var(--font-display);display:flex}.bind-head .icon{width:22px;height:22px}.bind-list{flex-direction:column;gap:2px;display:flex}.bind{align-items:center;gap:var(--space-3);width:100%;min-height:52px;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:16px;grid-template-columns:34px 1fr auto auto;padding:4px 8px 4px 6px;display:grid}.bind:hover,.bind:focus-visible,#app[data-device=gamepad] .bind:focus{background:var(--ink-a08)}.bind .ic{background:var(--sky-100);width:34px;height:34px;color:var(--cobalt-700);border-radius:11px;place-items:center;display:grid}.bind .ic .icon{width:19px;height:19px}.bind .nm{font:800 var(--fs-md)/1.1 var(--font-display)}.bind .nm small{font:700 var(--fs-cap)/1.2 var(--font-body);color:var(--ink-soft);margin-top:2px;display:block}.bind .cur{min-width:64px;font:800 var(--fs-sm)/1.1 var(--font-display);color:var(--ink-soft);justify-content:flex-end;align-items:center;gap:4px;display:flex}#app .bind .cur .g{display:inline-flex!important}.bind .chg{background:var(--ink-a08);min-height:40px;color:var(--cobalt-700);font:800 var(--fs-sm)/1 var(--font-display);border-radius:12px;align-items:center;padding:0 12px;display:inline-flex}.bind.listening{background:linear-gradient(var(--cream-50), var(--sun-200));box-shadow:0 0 0 3px var(--sun-400)}.bind.listening .cur{color:var(--sun-800)}.bind .dots i{background:var(--sun-800);border-radius:50%;width:6px;height:6px;margin:0 2px;animation:1s infinite bind-blink;display:inline-block}.bind .dots i:nth-child(2){animation-delay:.2s}.bind .dots i:nth-child(3){animation-delay:.4s}@keyframes bind-blink{50%{opacity:.2}}.reduced-motion .bind .dots i{animation:none}@media (max-width:640px){.bind{grid-template-columns:30px 1fr auto}.bind .chg{display:none}}.assist-sample{gap:var(--space-2);padding:var(--space-3) 0;flex-wrap:wrap;display:flex}.assist-sample .team{min-height:40px;color:var(--ink-on-color);font:800 var(--fs-md)/1 var(--font-display);border-radius:14px;align-items:center;padding:0 14px;display:inline-flex}.assist-sample .blue{background:var(--team-blue)}.assist-sample .coral{background:var(--team-coral);color:var(--team-b-ink)}.entry-help{margin:0 0 var(--space-2);font:700 var(--fs-sm)/1.4 var(--font-body);color:var(--ink-soft)}.entry-value{min-height:64px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--surface-sunken);box-shadow:var(--bevel-pressed);font:800 var(--fs-2xl)/1 var(--font-display);color:var(--ink);letter-spacing:.04em;overflow-wrap:anywhere;justify-content:center;align-items:center;gap:6px;display:flex}.entry-value.code i{background:var(--surface-raised);width:1.3em;height:1.5em;box-shadow:var(--bevel-sm);border-radius:10px;place-items:center;font-style:normal;display:grid}.entry-value .caret{box-shadow:0 0 0 3px var(--sun-400)}.entry-value.name .caret{background:var(--cobalt-600);width:3px;height:1em;box-shadow:none;display:inline-block}.entry-count{margin:var(--space-1) 0 var(--space-3);text-align:right;font:700 var(--fs-cap)/1 var(--font-body);color:var(--ink-soft);display:block}.entry-keys{grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:6px;display:grid}.entry-key{min-width:var(--tap);min-height:var(--tap);background:var(--glyph-key);color:var(--ink);box-shadow:inset 0 -3px 0 var(--glyph-key-lip);font:800 var(--fs-lg)/1 var(--font-display);cursor:pointer;border:0;border-radius:12px}.entry-key:disabled{opacity:.45;cursor:default}.entry-actions{gap:var(--space-2);margin-top:var(--space-4);flex-wrap:wrap;justify-content:flex-end;display:flex}.entry-actions .button.primary{min-width:120px}#app[data-screen=menu] .stage{background:radial-gradient(80% 70% at 40% 55%, var(--sky-100), var(--sky-200) 60%, var(--cobalt-400))}.menu-screen{touch-action:none;-webkit-user-select:none;user-select:none;position:absolute;inset:0;overflow:hidden}.box-space{pointer-events:none;left:calc(var(--edge-x) + 4vw);right:calc(var(--edge-r) + min(404px, 33vw) + 4vw);top:calc(var(--topbar-h) + var(--safe-top) + clamp(26px, 6vh, 52px));bottom:calc(var(--hintbar-h) + var(--safe-bottom) + 196px);position:absolute}.wordmark{z-index:6;pointer-events:none;font:800 clamp(20px, min(5.6vh, 7.5vw), 46px)/.84 var(--font-display);color:var(--sun-400);-webkit-text-stroke:.175em var(--navy-900);paint-order:stroke fill;letter-spacing:.01em;white-space:nowrap;filter:drop-shadow(0 .12em 0 var(--navy-950));flex-direction:column;align-items:center;display:flex;position:absolute;top:0;left:-999px;transform:translate(-50%,-50%)rotate(-2deg)}.wordmark b{color:var(--cream-50);font-size:.8em}.hero{pointer-events:none;position:absolute;inset:0}.hero>*>*,.hero .slot{pointer-events:auto}.side{z-index:6;top:calc(var(--topbar-h) + var(--safe-top) + 10px);right:var(--edge-r);flex-direction:column;gap:12px;width:min(404px,33vw);display:flex;position:absolute}.side .head{justify-content:space-between;align-items:center;gap:8px;display:flex}.side .head h2{font:800 var(--fs-lg)/1 var(--font-display)}.vitrin{flex-direction:column;gap:10px;padding:16px 16px 12px;display:flex}.vitrin .calm{color:var(--kraft-800);font:700 var(--fs-cap)/1.2 var(--font-body);align-items:center;gap:5px;display:inline-flex}.vitrin .calm .icon{width:15px;height:15px}.vitrin .grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.vitrin .item .pocket{aspect-ratio:1/.64;place-items:center;display:grid}.vitrin .item .pocket .rarity{z-index:1;position:absolute;top:6px;left:6px}.vitrin .item .toy-preview{width:100%;height:100%}.vitrin .item canvas{object-fit:contain;width:100%;height:100%}.vitrin .item .name{font:800 var(--fs-sm)/1.1 var(--font-display);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.vitrin .item .price img{width:22px;height:22px}.vitrin .foot{color:var(--kraft-800);font:700 var(--fs-cap)/1.2 var(--font-body);justify-content:space-between;align-items:center;gap:8px;display:flex}.goals{flex-direction:column;gap:10px;padding:14px 16px;display:flex}.goal-list{flex-direction:column;gap:10px;display:flex}.goal{font:700 var(--fs-sm)/1.2 var(--font-body);grid-template-columns:1fr auto;align-items:center;gap:5px 12px;display:grid}.goal .meter{height:9px}.goal .reward{color:var(--sun-800);font:800 var(--fs-sm)/1 var(--font-display);grid-area:1/2/span 2;align-items:center;gap:3px;display:flex}.goal .reward img{width:20px;height:20px}.goal .reward .icon{width:18px;height:18px}.goal.done span:first-child,.goal.done .reward{color:var(--mint-800)}.plate{z-index:6;left:var(--edge-x);bottom:calc(var(--hintbar-h) + var(--safe-bottom) + 14px);align-items:flex-end;gap:12px;display:flex;position:absolute}.carcard{flex-direction:column;justify-content:center;gap:7px;padding:12px 14px 12px 18px;display:flex}.carcard strong{font:800 var(--fs-xl)/1 var(--font-display);letter-spacing:.03em;text-transform:uppercase}.carcard .looks{flex-wrap:wrap;gap:6px;max-width:300px;display:flex}.carcard .acts{gap:6px;margin-top:2px;display:flex}.coop{grid-template-columns:repeat(4,minmax(54px,1fr));gap:6px;padding:10px 12px 12px;display:grid}.coop-label{contain:inline-size;color:var(--ink-soft);font:700 var(--fs-cap)/1.25 var(--font-body);grid-column:1/-1;justify-content:space-between;align-items:baseline;gap:6px;display:flex}.coop-label strong{color:var(--ink);font:800 var(--fs-sm)/1.1 var(--font-display)}.coop [data-slot-device]{position:static}.coop .slot-device.keyboard{height:auto;box-shadow:none;background:0 0;padding:0}.coop .slot-device .g.key{height:22px;font:inherit;padding:0 3px}.slotp{min-height:54px;color:var(--ink-soft);font:800 var(--fs-cap)/1.05 var(--font-display);text-align:center;background:0 0;border:0;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:5px 0;display:flex;position:relative}.slotp .icon{width:18px;height:18px;color:var(--cobalt-600)}.slotp.me,.slotp.joined{background:var(--action-structure);color:var(--ink-on-color);box-shadow:var(--bevel-sm)}.slotp.joined .icon{color:var(--ink-on-color)}.slotp.me b{font-size:var(--fs-md)}.slotp.open{border:2.5px dashed var(--ink-a20)}.slot .freeroam-chip .icon{width:24px;height:24px;color:var(--cobalt-700)}.slot .freeroam-chip span{white-space:nowrap}.chipbtn.next{text-align:left;flex-direction:row;justify-content:flex-start;gap:12px;width:300px;min-width:0;padding:8px 34px 8px 8px}.chipbtn.next .thumb{background:var(--sky-200);width:74px;height:58px;box-shadow:0 0 0 3px var(--cream-50), 0 2px 6px var(--ink-a20);border-radius:15px;flex-shrink:0;place-items:center;display:grid;overflow:hidden}.chipbtn.next .thumb :is(img,svg,picture){object-fit:cover;width:100%;height:100%;display:block}.chipbtn.next .thumb .icon{width:28px;height:28px;color:var(--cobalt-600)}.chipbtn.next .t{flex-direction:column;gap:3px;min-width:0;display:flex}.chipbtn.next .t strong{font:800 var(--fs-md)/1.05 var(--font-display);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.chipbtn.next .t small{color:var(--ink-soft);font:700 var(--fs-cap)/1.15 var(--font-body);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.chipbtn.next .swap{color:var(--cobalt-700);font:800 var(--fs-cap)/1 var(--font-display);align-items:center;gap:4px;display:none}.chipbtn.next .swap .icon{width:14px;height:14px}#app[data-device=touch] .chipbtn.next .swap{display:inline-flex}.screen-hints{z-index:25;padding-bottom:calc(var(--space-1) + var(--safe-bottom));padding-left:var(--edge-x);position:absolute;bottom:0;left:0;right:0}.enter>*{animation:rise .42s var(--ease-out) both}.enter>:nth-child(2){animation-delay:var(--stagger)}.enter>:nth-child(3){animation-delay:calc(var(--stagger) * 2)}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}html[data-text="115"] .goal:nth-child(3),html[data-text="130"] .goal:nth-child(3),html[data-text="115"] .top-bar .desk-only,html[data-text="130"] .top-bar .desk-only{display:none}@media (max-width:1500px){html[data-text="130"] .top-bar .player small{display:none}}.top-bar .player,.top-bar .who{min-width:0}@media (max-width:900px) and (min-width:641px),(max-height:460px) and (orientation:landscape){.top-bar .who{display:none}.top-bar .player{padding-right:4px}}#app:not([data-section=home]) .menu-screen :is(.hero,.wordmark,.screen-hints){visibility:hidden}@media (max-width:1100px) and (min-width:641px),(max-height:460px) and (orientation:landscape){.plate{display:none}.chipbtn.next{width:250px}.box-space{bottom:calc(var(--hintbar-h) + var(--safe-bottom) + var(--slab-h) + 36px)}}@media (min-width:1101px) and (min-height:461px){.hero{align-items:flex-end;gap:var(--space-3);padding:0 var(--edge-r) calc(var(--hintbar-h) + var(--safe-bottom) + 14px) var(--edge-x);display:flex}.plate,.hero .slot{position:relative;inset:auto}.plate{flex:1 1 0;min-width:0;container-type:inline-size}#app[data-device=touch] .hero .slot{bottom:calc(4px - var(--hintbar-h))}}@container (width<602px){.carcard .looks{display:none}}@container (width<420px){.carcard{display:none}}@container (width<433px){html[data-text="115"] .carcard{display:none}}@container (width<450px){html[data-text="130"] .carcard{display:none}}@container (width<258px){.coop{display:none}}@media (max-width:1000px) and (min-width:641px){.side{width:min(330px,40vw)}.box-space{right:calc(var(--edge-r) + min(330px, 40vw) + 3vw)}}@media (max-height:560px) and (min-width:641px){.goals{display:none}.vitrin .item .pocket{aspect-ratio:1/.62}}@media (max-width:640px) and (orientation:portrait){.box-space{left:var(--edge-x);right:var(--edge-r);top:calc(var(--topbar-h) + var(--safe-top) + 44px);bottom:calc(var(--nav-h) + var(--safe-bottom) + var(--slab-h) + 230px)}.side{top:auto;left:0;right:0;bottom:calc(var(--nav-h) + var(--safe-bottom) + var(--slab-h) + 84px);scroll-snap-type:x mandatory;scrollbar-width:none;touch-action:pan-x;flex-direction:row;gap:10px;width:auto;padding:4px 14px 10px;overflow-x:auto}.side>*{scroll-snap-align:start;flex:0 0 84%;height:132px}.vitrin{flex-direction:row;align-items:center;gap:12px;padding:12px 12px 12px 16px}.vitrin .head{flex-direction:column;flex-shrink:0;align-items:flex-start;gap:6px;width:92px}.vitrin .grid{flex:1;grid-template-columns:1fr;min-width:0}.vitrin .grid .item:nth-child(2),.vitrin .foot{display:none}.vitrin .item{grid-template-rows:auto auto;grid-template-columns:96px 1fr;align-items:center;column-gap:10px;padding:6px;display:grid}.vitrin .item .pocket{aspect-ratio:1/.86;grid-row:1/span 2}.vitrin .item .pocket .rarity{transform-origin:0 0;transform:scale(.78)}.vitrin .item .name{align-self:end}.vitrin .item .row{align-self:start}.goals{gap:7px;padding:12px 14px}.goal:nth-child(n+3){display:none}.goals .head h2{font-size:var(--fs-md)}.plate,.screen-hints{display:none}#app[data-device] .menu-screen .slot{left:calc(14px + var(--safe-left));right:calc(14px + var(--safe-right));bottom:calc(var(--nav-h) + var(--safe-bottom) + 12px);flex-wrap:wrap}.slot .slab{flex:1;min-width:0;padding:0 20px}.top-bar .player small{display:none}.chipbtn.next{order:-1;width:100%;min-height:58px;padding:6px 12px 6px 6px}.chipbtn.next .thumb{border-radius:12px;width:64px;height:46px}.chipbtn.next .t{flex-flow:wrap;align-items:baseline;gap:2px 8px}.chipbtn.next .swap{background:var(--ink-a08);border-radius:12px;margin-left:auto;padding:8px 10px}.slot .freeroam-chip{min-width:84px}html[data-text="130"] .side{display:none}html[data-text="115"] .side{bottom:calc(var(--nav-h) + var(--safe-bottom) + var(--slab-h) + 100px)}}@media (min-height:900px) and (min-width:1101px){.box-space{top:calc(var(--topbar-h) + var(--safe-top) + 11vh);bottom:calc(var(--hintbar-h) + var(--safe-bottom) + 196px + 7vh)}}@media (max-width:640px) and (orientation:portrait) and (max-height:700px){.side{display:none}.box-space{bottom:calc(var(--nav-h) + var(--safe-bottom) + var(--slab-h) + 96px)}}@media (max-height:460px) and (orientation:landscape){.side{display:none}.box-space{left:calc(var(--edge-x) + 2vw);right:44vw;top:calc(var(--topbar-h) + var(--safe-top) + 30px);bottom:calc(var(--safe-bottom) + var(--slab-h) + 30px)}.chipbtn.next{width:280px}.chipbtn.next .thumb{display:none}}.wipe{z-index:60;padding:var(--space-6);pointer-events:none;place-items:center;display:grid;position:fixed;inset:0}.wipe,.boot{background:radial-gradient(circle at 20% 15%, var(--white-a20) 0 1.5px, transparent 2px) 0 0 / 22px 22px, linear-gradient(135deg, var(--cobalt-500), var(--cobalt-800))}.wipe.run{animation:wipe-off .62s var(--ease-flight) .28s both}#game-dialog.under-wipe{visibility:hidden;transition:none}#game-dialog.under-wipe::backdrop{visibility:hidden;transition:none}@keyframes wipe-off{0%{clip-path:inset(0)}to{clip-path:inset(0 0 0 100%)}}.reduced-motion .wipe{display:none}@media (prefers-reduced-motion:reduce){.wipe{display:none}}.loading-card{align-items:center;gap:var(--space-5);width:min(640px,100%);padding:var(--space-5);display:flex}.loading-card .loading-art{aspect-ratio:16/10;border-radius:var(--radius-md);background:var(--sky-200);width:180px;box-shadow:0 0 0 3px var(--cream-50);flex-shrink:0;overflow:hidden}.loading-card .loading-art :is(img,svg,picture){object-fit:cover;width:100%;height:100%;display:block}.loading-card strong{font:800 var(--fs-xl)/1.05 var(--font-display);margin:4px 0 6px;display:block}.loading-card p{color:var(--ink-muted);font:700 var(--fs-sm)/1.35 var(--font-body)}.loading-card .loading-keys{min-height:0;margin-top:var(--space-3);box-shadow:none;background:0 0;padding:0;visibility:visible!important}@media (max-width:640px){.loading-card{text-align:center;flex-direction:column}.loading-card .loading-art{width:100%}.loading-card .loading-keys{justify-content:center}}#game-dialog.in-shell{z-index:28;inset:calc(var(--topbar-h) + var(--safe-top) + 8px) 0 calc(var(--hintbar-h) + var(--safe-bottom) + 8px);max-height:calc(100dvh - var(--topbar-h) - var(--safe-top) - var(--hintbar-h) - var(--safe-bottom) - 16px);position:fixed}#game-dialog.in-shell.plate-dialog,#game-dialog.in-shell.map-dialog[open]{width:100vw;height:auto;max-height:none;padding-top:var(--space-3);margin:0;bottom:0}@media (max-width:640px) and (orientation:portrait){#game-dialog.in-shell{bottom:calc(var(--nav-h) + var(--safe-bottom));max-height:calc(100dvh - var(--topbar-h) - var(--safe-top) - var(--nav-h) - var(--safe-bottom) - 8px)}#game-dialog.in-shell.plate-dialog,#game-dialog.in-shell.map-dialog[open]{bottom:calc(var(--nav-h) + var(--safe-bottom))}}.online-entry{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--surface-cool);box-shadow:var(--bevel-sm);display:flex}.online-entry strong{font-family:var(--font-display);font-size:var(--text-lg);display:block}.online-entry small{font-size:var(--text-sm);color:var(--ink-muted)}.mode-cards{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));display:grid}.mode-card{padding:var(--space-3);gap:var(--space-2)}.mode-card h3{font-size:var(--text-lg)}.mode-card p{font-size:var(--text-sm)}.mode-card .card-row{margin-top:auto}.setup-sheet{gap:var(--space-6);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;display:grid}.setup-sheet .card-art{aspect-ratio:176/110;box-shadow:var(--bevel)}.setup-options{gap:var(--space-4);flex-direction:column;display:flex}.setup-options .button.primary{margin-top:var(--space-2)}.look-row{align-items:end;gap:var(--space-2);flex-wrap:wrap;display:flex}.look-row>small{font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);flex-basis:100%;font-weight:800}.look-row label{gap:var(--space-1);min-width:0;font-size:var(--text-xs);color:var(--ink-soft);flex-direction:column;flex:120px;display:flex}.look-row select{min-height:var(--tap);padding:var(--space-2) var(--space-3);border:2px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--ink);font-family:var(--font-body);font-size:var(--text-sm);font-weight:700}.settings-tabs{border-radius:var(--radius-lg);flex-wrap:wrap;flex:none}.mode-card .card-title{font-size:var(--text-lg)}.garden{--map-ground:#aac9a8;--map-road:#758b84;--map-block:#e7bb94;--map-roof:#edd5a7}.harbor{--map-ground:#91b4ba;--map-road:#637b86;--map-block:#b8957b;--map-roof:#cdbe9f}.neon{--map-ground:#555874;--map-road:#393f57;--map-block:#8c88a4;--map-roof:#b1a6b5}.funfair{--map-ground:#a8cf92;--map-road:#7b8784;--map-block:#eab3a0;--map-roof:#f3d3a8}.snow{--map-ground:#e3ebf3;--map-road:#7c8a96;--map-block:#b98f6d;--map-roof:#f4f7fb}#game-dialog.map-dialog[open]{background:#51a9ec url(../art/plates/plate-map-wide.webp) 50%/cover no-repeat;border-radius:0;flex-direction:column;width:100vw;max-width:none;height:100dvh;max-height:100dvh;margin:0;padding:0;display:flex;overflow:hidden}.map-dialog .dialog-top{margin:max(var(--space-4), var(--safe-top)) var(--gutter) 0;background:0 0;flex:none;padding:0;position:relative;top:0}.map-dialog .dialog-top>div{background:var(--surface-paper);border:5px solid #fff;flex:0 auto;margin:0 auto;transform:rotate(-2deg)}.map-dialog .dialog-top h2{color:var(--ink)}.map-dialog .dialog-body{min-height:0;padding:var(--space-3) var(--gutter) max(var(--space-4), var(--safe-bottom));flex:1;overflow:auto}.map-dialog .dialog-intro{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--ink);font-size:var(--text-sm);background:#fff5e1e8;align-self:flex-start}.city-islands{gap:var(--space-4);flex:1;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;min-height:280px;display:grid}.city-island{justify-content:flex-end;gap:var(--space-2);min-height:260px;color:var(--ink);background:0 0;border:0;flex-direction:column;padding:0;display:flex;position:relative}.city-island>svg,.city-island>img,.city-island>picture{border-radius:var(--radius-lg);width:100%;height:calc(100% - 90px);box-shadow:var(--lift);background:#2f86b8;border:5px solid #fff;position:absolute;inset:0 0 90px}.city-island>img,.city-island>picture img{object-fit:cover}.city-island>picture{overflow:hidden}.city-island>picture img{width:100%;height:100%;display:block}.city-island.locked>svg,.city-island.locked>img,.city-island.locked>picture{filter:saturate(.35)brightness(.9)}.island-badge{top:var(--space-3);background:var(--cobalt-600);color:#fff;width:60px;height:60px;box-shadow:var(--lift);border:4px solid #fff;border-radius:50%;place-items:center;display:grid;position:absolute;left:50%;transform:translate(-50%)}.city-island.locked .island-badge{background:var(--slate-500)}.island-badge .icon{width:30px;height:30px}.city-label{min-height:82px;padding:var(--space-2);border-radius:var(--radius-lg);background:var(--surface-paper);box-shadow:var(--lift);transition:transform var(--dur-fast) var(--ease-out);border:4px solid #fff;flex-direction:column;justify-content:center;align-items:center;line-height:1.15;display:flex;position:relative}.city-island.unlocked .city-label{border-color:var(--sun-400)}.city-island.unlocked:hover .city-label{transform:translateY(-3px)}.city-label strong{font-family:var(--font-display);font-size:var(--text-lg)}.city-label>span{font-family:var(--font-display);font-size:var(--text-md)}.city-label small{font-size:var(--text-xs);color:var(--ink-muted)}.map-dialog .dialog-footer>span{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--surface-paper);color:var(--ink)}.daily-goals{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--surface-raised);box-shadow:var(--bevel-sm)}.daily-goals h3{justify-content:space-between;align-items:baseline;gap:var(--space-2);margin:0 0 var(--space-2);font-size:var(--text-md);display:flex}.daily-goals h3 small{font-family:var(--font-body);font-size:var(--text-xs);color:var(--warning)}.daily-goals ol{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.daily-goals li{align-items:center;gap:var(--space-3);font-size:var(--text-sm);grid-template-columns:minmax(0,1fr) minmax(60px,110px) auto;display:grid}.daily-goals li span:first-child{align-items:center;gap:var(--space-1);display:flex}.daily-goals .icon{width:16px;height:16px;color:var(--mint-800)}.daily-goals .meter{border-radius:var(--radius-pill);background:#e8dfc2;height:8px;display:block;overflow:hidden}.daily-goals .meter i{background:var(--mint-600);height:100%;display:block}.daily-goals b{font-variant-numeric:tabular-nums;font-size:var(--text-xs)}.daily-goals li.done{opacity:.75}#game-dialog[data-kind=contracts]{background:linear-gradient(#2675c9,#104b91)}#game-dialog[data-kind=contracts] .dialog-top{background:linear-gradient(#2675c9 75%,#2675c900)}#game-dialog[data-kind=contracts] .dialog-top>div{border:5px solid var(--sun-400);background:linear-gradient(#fff8e5,#f8e7bb);max-width:640px;margin:auto}#game-dialog[data-kind=contracts] .dialog-top h2{color:var(--ink)}#game-dialog[data-kind=contracts] .dialog-footer{color:#fff}.district-tabs{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(120px,1fr));display:grid}.district-tabs button{justify-content:center;align-items:center;gap:var(--space-2);min-height:56px;padding:var(--space-2);border-radius:var(--radius-md);color:#fff;box-shadow:var(--bevel-sm);font-family:var(--font-display);font-size:var(--text-md);background:linear-gradient(#4c8acb,#2d68a8);border:0;font-weight:800;line-height:1.1;display:flex}.district-tabs button span{font-size:var(--text-xs);opacity:.85}.district-tabs button.selected{background:var(--action-primary);color:var(--ink)}.district-tabs button:disabled{opacity:.7}.district-tabs .icon{width:16px;height:16px}.contract-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(min(100%,170px),1fr));display:grid}.contract-card{align-items:center;gap:var(--space-1);min-height:280px;padding:var(--space-4) var(--space-3);border-radius:var(--radius-lg);color:var(--ink);box-shadow:var(--bevel);text-align:center;background:linear-gradient(#e1eef6,#cee1ec);border:0;flex-direction:column;display:flex}.contract-card.current{outline:4px solid var(--sun-400);outline-offset:0;background:linear-gradient(#fff7de,#fff0c3)}.contract-card.locked{color:#233f5d;background:#b9c5d0}.contract-meta{justify-content:center;display:flex}.contract-meta>span{background:var(--cobalt-600);color:#fff;width:44px;height:44px;font-family:var(--font-display);font-size:var(--text-lg);border-radius:50%;place-items:center;font-weight:800;display:grid}.contract-meta>.icon{display:none}.contract-card>.toy-preview{width:100%;height:110px}.contract-card>.toy-preview canvas{max-height:110px}.contract-card>small{font-size:var(--text-xs);color:var(--ink-muted)}.contract-card>strong{font-family:var(--font-display);font-size:var(--text-lg);min-height:2.3em;line-height:1.15}.contract-reward{justify-content:center;align-items:center;gap:var(--space-1);width:100%;padding:var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-xs);background:#b6d1e3;margin-top:auto;font-weight:700;display:flex}.contract-card.current .contract-reward{background:var(--sun-400)}.contract-reward .icon{width:14px;height:14px;color:var(--sun-800)}.mini-stars{color:var(--sun-800);letter-spacing:2px;font-size:20px}.brief-kind{align-items:center;gap:var(--space-3);font-family:var(--font-display);font-size:var(--text-md);color:var(--cobalt-700);font-weight:800;display:flex}.brief-kind .icon{border-radius:var(--radius-sm);background:var(--sun-200);width:40px;height:40px;padding:8px}.brief-presentation{align-items:center;gap:var(--space-5);grid-template-columns:38% 1fr;display:grid}.brief-stats{border-radius:var(--radius-md);background:var(--surface-sunken);grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:hidden}.brief-stats>div{align-items:center;gap:var(--space-1);padding:var(--space-4) var(--space-2);text-align:center;flex-direction:column;display:flex}.brief-stats>div+div{border-left:1px solid var(--line)}@media (max-width:480px){.brief-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.brief-stats>div:nth-child(odd){border-left:0}.brief-stats>div:nth-child(n+3){border-top:1px solid var(--line)}}.brief-stats .icon{width:22px;height:22px;color:var(--cobalt-600)}.brief-stats small{font-size:var(--text-xs);color:var(--ink-soft)}.brief-stats strong{font-family:var(--font-display);font-size:var(--text-lg)}.tactical-tip{align-items:flex-start;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);background:var(--surface-cool);color:var(--ink-muted);font-size:var(--text-sm);line-height:1.5;display:flex}.tactical-tip .icon{width:20px;height:20px;color:var(--cobalt-600)}.brief-controls{text-align:center;font-size:var(--text-xs);color:var(--ink-soft)}#game-dialog.in-shell.shop-dialog{width:100vw;max-width:none;height:100dvh;max-height:none;box-shadow:none;pointer-events:none;background:0 0;border-radius:0;margin:0;padding:0;inset:0;overflow:hidden}.shop-dialog .dialog-top{clip-path:inset(50%);width:1px;height:1px;margin:0;padding:0;position:absolute;overflow:hidden}.shop-dialog .dialog-top .round-button{display:none}.shop-dialog .dialog-body{display:block;position:absolute;inset:0}.shop-dialog .dialog-hints{padding-left:var(--edge-x);padding-bottom:calc(var(--space-1) + var(--safe-bottom));pointer-events:auto;border-radius:0;margin:0;position:absolute;bottom:0;left:0;right:0}.shop{position:absolute;inset:0;overflow:hidden}.shop>:not(.box-space,.shop-live),.shop-live>*,.shop .scrim{pointer-events:auto}.shop-live{display:contents}.shop :is(.shelf,.teamview button,.subtabs [role=tab],.item){border:0}.shop .item{cursor:pointer}.shop .item .pocket{place-items:center;display:grid}.shop .item .pocket .toy-preview,.shop .item .pocket canvas{object-fit:contain;width:100%;height:100%}.shop .item .pocket .rarity{z-index:1;transform-origin:0 0;position:absolute;top:7px;left:7px;transform:scale(.9)}.shop .item .pocket .state{z-index:1;background:var(--action-structure);width:26px;height:26px;color:var(--ink-on-color);box-shadow:0 0 0 2px var(--cream-50);border-radius:50%;place-items:center;display:grid;position:absolute;top:7px;right:7px}.shop .item .pocket .state .icon{stroke-width:3px;width:15px;height:15px}.shop .item .name{font:800 calc(14px * var(--text-scale))/1.1 var(--font-display);white-space:nowrap;text-overflow:ellipsis;padding:0 3px;overflow:hidden}.shop .item .row{justify-content:space-between;align-items:center;gap:6px;min-height:30px;padding:0 2px;display:flex}.shop .item .tag,.detail .tag{height:26px;font:800 var(--fs-cap)/1 var(--font-display);letter-spacing:.04em;border-radius:13px;align-items:center;gap:4px;padding:0 10px;display:inline-flex}.shop .tag.owned{background:var(--mint-200);color:var(--mint-900)}.shop .tag.worn{background:var(--action-structure);color:var(--ink-on-color)}.shop .tag .icon{stroke-width:3px;width:14px;height:14px}.shop .price img{width:24px;height:24px}.shop .horn-art{place-items:center;width:100%;height:100%;display:grid}.shop .horn-art img{object-fit:contain;width:64%;height:64%}.shop .horn-art .icon{width:44px;height:44px;color:var(--cobalt-600)}.shop .slot{z-index:26}.shop-slab{flex:auto;gap:10px;min-width:0;padding:0 14px 0 22px}.shop-slab .lbl{flex:auto}.shop-slab .lbl strong{font-size:calc(26px * var(--text-scale));text-overflow:ellipsis;text-transform:uppercase;align-items:center;gap:6px;display:flex;overflow:hidden}.shop-slab .lbl small{max-width:none}.shop-slab .price-in{align-items:center;gap:3px;display:inline-flex}.shop-slab .price-in img{width:28px;height:28px}.shop-slab>.glyph{flex-shrink:0}.slab.shop-slab[aria-disabled=true]{background:var(--action-secondary);color:var(--ink-soft);box-shadow:var(--bevel), inset 0 -5px 0 var(--kraft-200);animation:none}.slab.shop-slab[aria-disabled=true] .lbl small{color:var(--ink-soft)}.shop .chipbtn .icon{stroke-width:2.2px;width:24px;height:24px;color:var(--cobalt-700)}.shop .confirm{z-index:30;right:var(--edge-r);bottom:calc(var(--hintbar-h) + var(--safe-bottom) + var(--slab-h) + 28px);flex-direction:column;gap:8px;width:420px;padding:16px;display:flex;position:absolute}.shop .confirm strong{font:800 var(--fs-lg)/1.15 var(--font-display)}.shop .confirm p{color:var(--ink-soft);font:700 var(--fs-sm)/1.35 var(--font-body)}#app[data-device=touch] .shop .confirm{bottom:calc(var(--safe-bottom) + var(--slab-h) + 30px)}.garage-v3 .box-space{left:calc(var(--edge-x) - 10px);right:calc(var(--edge-r) + 115px);position:absolute;top:-63vh;bottom:-23vh}.garage-v3[data-shelf=helmet] .box-space{left:calc(var(--edge-x) - 196px);right:calc(var(--edge-r) - 164px);top:-74vh;bottom:-42vh}.garage-v3 .turn-area{inset:calc(var(--topbar-h) + var(--safe-top)) 0 0;touch-action:none;position:absolute}.garage-v3 .shelves{top:calc(var(--topbar-h) + var(--safe-top) + 8px);left:var(--edge-x);bottom:calc(var(--hintbar-h) + var(--safe-bottom) + 14px);scrollbar-width:none;flex-direction:column;gap:3px;width:212px;padding:10px 8px;display:flex;position:absolute;overflow-y:auto}.garage-v3 .shelves .ends{justify-content:space-between;align-items:center;padding:0 6px 4px;display:flex}.garage-v3 .shelves .ends.last{justify-content:flex-end;margin-top:auto;padding:4px 6px 0}.garage-v3 .shelf{min-height:48px;color:var(--ink);text-align:left;font:800 var(--fs-sm)/1.1 var(--font-display);background:0 0;border-radius:16px;grid-template-columns:40px 1fr auto;align-items:center;gap:9px;padding:4px 10px 4px 4px;display:grid}.garage-v3 .shelf img,.garage-v3 .shelf .icon{object-fit:contain;width:40px;height:40px;filter:drop-shadow(0 2px 2px var(--ink-a20))}.garage-v3 .shelf small{color:var(--ink-soft);font:800 var(--fs-cap)/1 var(--font-display);font-variant-numeric:tabular-nums}.garage-v3 .shelf[aria-selected=true]{background:var(--action-structure);color:var(--ink-on-color);box-shadow:var(--bevel-sm)}.garage-v3 .shelf[aria-selected=true] small{color:var(--sky-200)}.garage-v3 .tray-panel{top:calc(var(--topbar-h) + var(--safe-top) + 8px);right:var(--edge-r);bottom:calc(var(--hintbar-h) + var(--safe-bottom) + var(--slab-h) + 28px);flex-direction:column;gap:10px;width:420px;padding:14px 14px 12px;display:flex;position:absolute}.garage-v3 .tray-panel>*{flex-shrink:0}.garage-v3 .trayhead{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.sort-btn{min-height:var(--tap);border-radius:var(--radius-pill);background:var(--action-secondary);color:var(--ink);box-shadow:var(--bevel-sm);font:800 var(--fs-sm)/1 var(--font-display);white-space:nowrap;border:0;flex-shrink:0;align-items:center;gap:6px;padding:0 14px;display:inline-flex}.sort-btn .icon{stroke-width:2.4px;width:18px;height:18px;color:var(--cobalt-700)}.market-v3 .gridwrap .head .tools{align-items:center;gap:8px;display:inline-flex}.garage-v3 .trayhead h2{font:800 var(--fs-xl)/1 var(--font-display)}.garage-v3 .trayhead small{color:var(--ink-soft);font:700 var(--fs-cap)/1.2 var(--font-body);margin-top:4px;display:block}.garage-v3 .grid{scrollbar-width:thin;min-height:0;-webkit-mask-image:linear-gradient(var(--ink) calc(100% - 28px), transparent);-webkit-mask-image:linear-gradient(var(--ink) calc(100% - 28px), transparent);mask-image:linear-gradient(var(--ink) calc(100% - 28px), transparent);flex:auto;grid-template-columns:repeat(3,minmax(0,1fr));align-content:start;gap:8px;margin:-4px;padding:4px 4px 24px;display:grid;overflow-y:auto}.garage-v3 .grid .item .pocket{aspect-ratio:1/.7}.garage-v3 .looksonly,.market-v3 .looks{background:var(--mint-200);color:var(--mint-900);font:800 var(--fs-cap)/1.25 var(--font-display);border-radius:14px;align-items:center;gap:8px;padding:8px 10px;display:flex}:is(.garage-v3 .looksonly,.market-v3 .looks) .icon{flex-shrink:0;width:18px;height:18px}.garage-v3 .tryon{z-index:8;left:calc(50% - 104px);top:calc(var(--topbar-h) + var(--safe-top) + 12px);border-radius:var(--radius-pill);background:var(--glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--bevel-sm), var(--lift);white-space:nowrap;align-items:center;gap:10px;padding:7px 16px 7px 8px;display:flex;position:absolute;transform:translate(-50%)}.garage-v3 .tryon .eye{background:var(--action-structure);width:36px;height:36px;color:var(--ink-on-color);border-radius:50%;place-items:center;display:grid}.garage-v3 .tryon .eye .icon{width:20px;height:20px}.garage-v3 .tryon .cap{margin-bottom:2px;display:block}.garage-v3 .tryon strong{font:800 var(--fs-lg)/1 var(--font-display)}.garage-v3 .teamview{z-index:8;left:calc(50% - 104px);bottom:calc(var(--hintbar-h) + var(--safe-bottom) + var(--slab-h) + 30px);border-radius:var(--radius-pill);background:var(--glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--bevel-sm);gap:4px;padding:4px;display:flex;position:absolute;transform:translate(-50%)}.garage-v3 .teamview button{border-radius:var(--radius-pill);min-height:44px;color:var(--ink-muted);font:800 var(--fs-sm)/1 var(--font-display);white-space:nowrap;background:0 0;align-items:center;gap:7px;padding:0 14px;display:inline-flex}.garage-v3 .teamview button[aria-pressed=true]{background:var(--action-structure);color:var(--ink-on-color);box-shadow:var(--bevel-sm)}.garage-v3 .team-dot{width:14px;height:14px;box-shadow:0 0 0 2px var(--cream-50);border-radius:50%}.garage-v3 .team-dot.t0{background:var(--sun-400)}.garage-v3 .team-dot.t1{background:var(--team-blue)}.garage-v3 .team-dot.t2{background:var(--team-coral)}.garage-v3 .turn{z-index:8;left:calc(50% + 120px);bottom:calc(var(--hintbar-h) + var(--safe-bottom) + var(--slab-h) + 30px);position:absolute}.shop .turn .icon{stroke-width:2.4px}@media (min-width:641px){.garage-v3 .slot{width:450px}}.market-v3:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(circle at 20% 15%, var(--white-a20) 0 1.5px, transparent 2px) 0 0 / 26px 26px, radial-gradient(120% 90% at 30% 0%, var(--cobalt-400), var(--cobalt-600) 55%, var(--cobalt-800));position:absolute;inset:0}.market-main{top:calc(var(--topbar-h) + var(--safe-top) + 8px);left:var(--edge-x);right:calc(var(--edge-r) + 432px);bottom:calc(var(--hintbar-h) + var(--safe-bottom) + 14px);flex-direction:column;gap:10px;display:flex;position:absolute}.market-main>*{flex-shrink:0}.market-v3 .feat{padding:14px 14px 12px}.market-v3 .feat .head{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:10px;display:flex}.market-v3 .feat h2{font:800 var(--fs-xl)/1 var(--font-display)}.market-v3 .feat .calm{color:var(--kraft-800);font:700 var(--fs-cap)/1.2 var(--font-body);align-items:center;gap:6px;display:inline-flex}.market-v3 .feat .calm .icon{width:15px;height:15px}.market-v3 .row4{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.market-v3 .feat .item .pocket{aspect-ratio:1/.62}.market-v3 .shelfbar{align-items:center;gap:8px;display:flex}.market-v3 .subtabs{border-radius:var(--radius-pill);background:var(--surface-sunken);min-width:0;box-shadow:inset 0 2px 4px var(--ink-a12), var(--bevel-sm);scrollbar-width:none;flex:1;align-items:center;gap:4px;padding:5px;display:flex;overflow-x:auto}.market-v3 .subtabs [role=tab]{border-radius:var(--radius-pill);min-height:44px;color:var(--ink-muted);font:800 var(--fs-sm)/1 var(--font-display);white-space:nowrap;background:0 0;flex-shrink:0;align-items:center;gap:7px;padding:0 14px;display:inline-flex;position:relative}.market-v3 .subtabs [role=tab] img{object-fit:contain;width:26px;height:26px;margin-left:-4px}.market-v3 .subtabs [role=tab][aria-selected=true]{background:var(--action-structure);color:var(--ink-on-color);box-shadow:var(--bevel-sm)}.market-v3 .gridwrap{flex-direction:column;flex:auto;gap:8px;min-height:0;padding:12px;display:flex;overflow:hidden}.market-v3 .gridwrap .head{justify-content:space-between;align-items:center;display:flex}.market-v3 .gridwrap h3{font:800 var(--fs-lg)/1 var(--font-display)}.market-v3 .grid{grid-template-columns:repeat(5,minmax(0,1fr));align-content:start;gap:8px;min-height:0;margin:-4px;padding:4px;display:grid;overflow-y:auto}.market-v3 .grid .item .pocket{aspect-ratio:1/.72}.market-v3 .detail{z-index:6;top:calc(var(--topbar-h) + var(--safe-top) + 8px);right:var(--edge-r);bottom:calc(var(--hintbar-h) + var(--safe-bottom) + var(--slab-h) + 28px);flex-direction:column;width:420px;display:flex;position:absolute;overflow:hidden}.market-v3 .detail .view{border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:radial-gradient(90% 80% at 50% 40%, var(--cream-50), var(--sky-100) 70%, var(--sky-200));flex:auto;place-items:center;min-height:150px;display:grid;position:relative;overflow:hidden}.market-v3 .detail .view .toy-preview,.market-v3 .detail .view canvas{object-fit:contain;width:100%;height:100%}.market-v3 .detail .view .horn-art img{width:46%;height:46%}.market-v3 .detail .view .rarity{transform-origin:0 0;position:absolute;top:14px;left:14px;transform:scale(1.15)}.market-v3 .detail .view .cat{position:absolute;top:12px;right:12px}.market-v3 .detail .view .turn{position:absolute;bottom:12px;right:12px}.market-v3 .detail .info{flex-direction:column;gap:8px;padding:12px 16px 14px;display:flex}.market-v3 .detail h2{font:800 var(--fs-2xl)/1 var(--font-display)}.market-v3 .detail .line{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.market-v3 .detail .legend{flex-wrap:wrap;gap:6px;display:flex}.market-v3 .detail .legend .rarity{transform-origin:0;margin-right:-8px;transform:scale(.86)}.market-v3 .detail.confirming .view{flex-basis:40%}.market-v3 .detail .confirm{width:auto;box-shadow:none;background:0 0;padding:0;position:static}.market-v3 .scrim{display:none}@media (min-width:641px){.market-v3 .slot{width:420px}}.earn-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.earn-list li{justify-content:space-between;align-items:center;gap:var(--space-3);background:var(--surface-raised);min-height:44px;box-shadow:var(--bevel-sm);font:700 var(--fs-md)/1.25 var(--font-body);border-radius:14px;padding:6px 14px;display:flex}.earn-list .coin-amount{color:var(--sun-800);font-size:var(--fs-md);flex-shrink:0}@media (max-width:1100px) and (min-width:641px),(max-height:560px) and (orientation:landscape),(max-width:640px) and (orientation:landscape){.garage-v3 .shelves{width:70px;padding:8px 6px}.garage-v3 .shelf{grid-template-columns:1fr;justify-items:center;padding:4px}.garage-v3 .shelf :is(span,small),.garage-v3 .shelves .ends .cap{display:none}.garage-v3 .tray-panel{width:330px}.garage-v3 .grid{grid-template-columns:repeat(2,minmax(0,1fr))}.garage-v3 .teamview,.garage-v3 .looksonly{display:none}.garage-v3 .tryon{left:calc(50% - 130px)}.garage-v3 .turn{left:auto;right:calc(var(--edge-r) + 344px)}.garage-v3 .box-space{left:calc(var(--edge-x) - 138px);right:calc(var(--edge-r) + 120px)}.garage-v3 .slot{width:400px}.market-main{right:calc(var(--edge-r) + 352px)}.market-v3 .detail,.shop .confirm,.market-v3 .slot{width:340px}.market-v3 .row4{grid-template-columns:repeat(2,minmax(0,1fr))}.market-v3 .row4 .item:nth-child(n+3){display:none}.market-v3 .grid{grid-template-columns:repeat(3,minmax(0,1fr))}.shop .chipbtn{min-width:84px;padding:8px}.shop-slab{padding:0 10px 0 16px}.shop-slab .lbl strong{font-size:calc(22px * var(--text-scale))}.shop-slab .price-in img{width:22px;height:22px}}@media (max-height:560px) and (orientation:landscape){.market-v3 .feat,.market-v3 .detail .legend,.market-v3 .detail .looks,.garage-v3 .trayhead small{display:none}.shop .item{gap:4px;padding:6px 6px 8px}.shop :is(.garage-v3 .grid,.market-v3 .grid) .item .pocket{aspect-ratio:1/.52}}@media (max-width:640px) and (orientation:portrait){.shop .slot{left:calc(14px + var(--safe-left));right:calc(14px + var(--safe-right));bottom:calc(var(--nav-h) + var(--safe-bottom) + 12px)!important}.shop .confirm{width:auto;left:10px;right:10px;bottom:calc(var(--nav-h) + var(--safe-bottom) + var(--slab-h) + 24px)!important}.shop-slab .lbl strong{font-size:calc(24px * var(--text-scale))}.shop-dialog .dialog-hints{display:none}.garage-v3 .box-space,.garage-v3[data-shelf=helmet] .box-space{height:70vh;inset:-21vh -49vw auto}.garage-v3[data-shelf=helmet] .box-space{height:91vh;top:-30vh;left:-74vw;right:-83vw}.garage-v3 .shelves{top:calc(var(--topbar-h) + var(--safe-top) + 39vh);width:auto;box-shadow:none;background:0 0;border-radius:0;flex-direction:row;gap:6px;padding:6px 12px;bottom:auto;left:0;right:0;overflow-x:auto}.garage-v3 .shelves .ends{display:none}.garage-v3 .shelf{background:var(--cream-50);box-shadow:var(--bevel-sm);flex:none;grid-template-columns:34px auto;padding:4px 12px 4px 4px}.garage-v3 .shelf img{width:34px;height:34px}.garage-v3 .shelf small{display:none}.garage-v3 .tray-panel{top:calc(var(--topbar-h) + var(--safe-top) + 39vh + 66px);width:auto;left:10px;right:10px;bottom:calc(var(--nav-h) + var(--safe-bottom) + var(--slab-h) + 22px);gap:8px;padding:10px}.garage-v3 .trayhead h2{font-size:var(--fs-lg)}.garage-v3 .grid{scroll-snap-type:x mandatory;-webkit-mask-image:linear-gradient(90deg, var(--ink) calc(100% - 30px), transparent);-webkit-mask-image:linear-gradient(90deg, var(--ink) calc(100% - 30px), transparent);mask-image:linear-gradient(90deg, var(--ink) calc(100% - 30px), transparent);align-items:flex-start;padding:4px 24px 4px 4px;display:flex;overflow:auto hidden}.garage-v3 .grid .item{scroll-snap-align:start;flex:0 0 31%}.garage-v3 .grid .item .pocket{aspect-ratio:1/.64}.garage-v3 .grid .item .pocket .rarity{transform:scale(.78)}.garage-v3 :is(.looksonly,.teamview){display:none}.garage-v3 .tryon{top:calc(var(--topbar-h) + var(--safe-top) + 39vh - 64px);left:50%}.garage-v3 .turn{bottom:auto;left:auto;right:14px;top:calc(var(--topbar-h) + var(--safe-top) + 39vh - 58px)}.market-main{left:10px;right:10px;bottom:calc(var(--nav-h) + var(--safe-bottom) + 10px);gap:8px}.market-v3 .feat{padding:10px}.market-v3 .feat .head{flex-direction:column;gap:4px;margin-bottom:6px}.market-v3 .feat h2{font-size:var(--fs-lg)}.market-v3 .row4{scroll-snap-type:x mandatory;scrollbar-width:none;display:flex;overflow-x:auto}.market-v3 .row4 .item{scroll-snap-align:start;flex:0 0 44%}.market-v3 .gridwrap{padding:10px}.market-v3 .grid{grid-template-columns:repeat(3,minmax(0,1fr))}.market-v3 .detail{z-index:35;width:auto;height:50%;padding-bottom:calc(var(--slab-h) + var(--safe-bottom) + 24px);box-shadow:0 -10px 30px var(--ink-a20);border-radius:28px 28px 0 0;inset:auto 0 0}.market-v3 .detail .view{min-height:0}.market-v3 .detail .info{gap:6px;padding:8px 14px}.market-v3 .detail h2{font-size:var(--fs-xl)}.market-v3 .detail :is(.legend,.looks),.market-v3:not(.sheet-open) :is(.detail,.slot){display:none}.market-v3.sheet-open .slot{z-index:40;bottom:calc(var(--safe-bottom) + 14px)!important}.market-v3.sheet-open .scrim{z-index:34;background:var(--scrim);border:0;display:block;position:absolute;inset:0}#app[data-sheet] .bottomnav{display:none}}@media (max-width:640px) and (orientation:portrait) and (max-height:700px){.garage-v3 .box-space,.garage-v3[data-shelf=helmet] .box-space{height:76vh;top:-25vh;left:-70vw;right:-70vw}.garage-v3 .shelves{top:calc(var(--topbar-h) + var(--safe-top) + 29vh)}.garage-v3 .tray-panel{top:calc(var(--topbar-h) + var(--safe-top) + 29vh + 62px)}.garage-v3 .tryon{top:calc(var(--topbar-h) + var(--safe-top) + 29vh - 60px)}.garage-v3 .turn{top:calc(var(--topbar-h) + var(--safe-top) + 29vh - 56px)}.garage-v3 .trayhead small{display:none}.garage-v3 .grid .item .pocket{aspect-ratio:1/.5}}@media (max-height:460px) and (orientation:landscape){.garage-v3 .tray-panel{width:300px;bottom:calc(var(--safe-bottom) + 10px)}.garage-v3 .slot{right:calc(var(--edge-r) + 312px);width:auto;bottom:calc(var(--safe-bottom) + 10px)!important}.garage-v3 .box-space{left:calc(var(--edge-x) - 40px);right:calc(var(--edge-r) + 130px);top:-52vh;bottom:2vh}.garage-v3 .tryon{display:none}.garage-v3 .turn{left:auto;right:calc(var(--edge-r) + 312px);bottom:calc(var(--safe-bottom) + var(--slab-h) + 22px)}.market-main{right:calc(var(--edge-r) + 312px)}.market-v3 .detail,.market-v3 .slot,.shop .confirm{width:300px}.market-v3 .detail .view{min-height:0}.market-v3 .detail h2{font-size:var(--fs-lg)}.market-v3 .detail .line .chip{display:none}.shop .chipbtn{min-width:64px}.shop .chipbtn>span:not(.glyph){clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.shop-slab .lbl strong{font-size:calc(20px * var(--text-scale))}}#game-dialog.plate-dialog{width:100vw;max-width:none;height:100dvh;max-height:none;padding:max(var(--space-4), var(--safe-top)) var(--gutter) max(var(--space-4), var(--safe-bottom));background:var(--surface-page) var(--plate) center / cover no-repeat;border-radius:0;margin:0}#game-dialog.profile-dialog{--plate:url(../art/plates/plate-profile-wide.webp)}.plate-dialog .dialog-top{margin:0 auto var(--space-4);background:0 0;max-width:720px;padding:0;position:relative;top:0}.plate-dialog .dialog-top>div{background:var(--surface-paper);border:6px solid var(--cobalt-600)}.plate-dialog .dialog-top h2{color:var(--ink)}.plate-dialog .dialog-body{max-width:960px;padding:var(--space-5);border-radius:var(--radius-xl);box-shadow:var(--bevel), var(--lift);background:#fff5e1f0;margin:0 auto}@media (orientation:portrait){#game-dialog.profile-dialog{--plate:url(../art/plates/plate-profile-tall.webp)}}@media (max-width:640px){.plate-dialog .dialog-body{padding:var(--space-4);border-radius:var(--radius-lg)}}.profile-dialog .dialog-body{gap:var(--space-4);flex-direction:column;display:flex}.wallet{align-items:baseline;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-pill);background:var(--action-primary);box-shadow:var(--bevel-sm);display:inline-flex}.wallet small{font-size:var(--text-sm);color:var(--sun-800);font-weight:700}.coin-amount{align-items:center;gap:var(--space-1);font-family:var(--font-display);font-variant-numeric:tabular-nums;font-weight:800;display:inline-flex}.wallet .coin-amount{font-size:var(--text-xl)}.coin-amount .icon{width:1.1em;height:1.1em;color:var(--sun-800)}.account-section{gap:var(--space-3);flex-direction:column;display:flex}.account-section h3{margin-top:var(--space-2);font-size:var(--text-lg)}.account-section .button.small{align-self:flex-start}.friend-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.friend-list li{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--surface-raised);grid-template-columns:12px 1fr auto;display:grid}.friend-list i{background:var(--slate-500);border-radius:50%;width:10px;height:10px}.friend-list i.online{background:var(--mint-600)}.friend-list small{color:var(--ink-soft)}.leaderboard{max-width:none;margin:0}.leaderboard li.mine{box-shadow:inset 0 0 0 2px var(--cobalt-500)}.shop-categories{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(min(100%,150px),1fr));display:grid}.shop-category{text-align:center;padding:var(--space-4) var(--space-3);align-items:center}.shop-category .icon{width:36px;height:36px;color:var(--cobalt-600)}.shop-category>img{object-fit:contain;filter:drop-shadow(0 4px 4px #0a2a5a33);width:84px;height:84px}.notice-card>img{object-fit:contain;flex-shrink:0;width:64px;height:64px}.shop-category strong{font-family:var(--font-display);font-size:var(--text-md);line-height:1.1}.notice-card{align-items:center;gap:var(--space-4);background:var(--surface-cool);flex-direction:row}.notice-card>.icon{width:40px;height:40px;color:var(--cobalt-600);flex-shrink:0}.notice-card strong{font-family:var(--font-display);font-size:var(--text-lg);display:block}.profile-head{align-items:center;gap:var(--space-4);grid-template-columns:140px 1fr;display:grid}.profile-head .toy-preview{border-radius:var(--radius-lg);background:var(--surface-cool);box-shadow:var(--bevel-sm)}.profile-head>div{min-width:0}.profile-head h3{font-size:var(--text-2xl);overflow-wrap:anywhere}.profile-head .badge{white-space:normal}.stat-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr));display:grid}.stat{text-align:center;align-items:center;gap:var(--space-1);padding:var(--space-3)}.stat .icon{width:26px;height:26px;color:var(--cobalt-600)}.stat strong{font-family:var(--font-display);font-size:var(--text-xl);font-variant-numeric:tabular-nums;line-height:1}.stat small{font-size:var(--text-xs);color:var(--ink-soft);font-weight:700}.cup-record{gap:var(--space-3);flex-direction:column;display:flex}.cup-record h3{font-size:var(--text-lg)}.cup-record h4{font-size:var(--text-sm);color:var(--ink-soft);margin:0}.cup-history{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.cup-history li{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--surface-raised);font-size:var(--text-sm);grid-template-columns:minmax(44px,auto) minmax(0,1fr) auto;display:grid}.cup-history li.champion{background:var(--sun-200);box-shadow:inset 0 0 0 2px var(--sun-400)}.cup-history .place{font-family:var(--font-display);font-size:var(--text-lg);color:var(--cobalt-600);font-variant-numeric:tabular-nums}.cup-history strong{overflow-wrap:anywhere}.cup-history small{color:var(--ink-soft);white-space:nowrap}.controls-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));display:grid}.controls-grid>div{padding:var(--space-4);border-radius:var(--radius-md);background:var(--surface-raised);box-shadow:var(--bevel-sm)}.controls-grid>div>span{align-items:center;gap:var(--space-1);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.controls-grid i{color:var(--ink-soft);margin-left:auto;font-style:normal}.controls-grid strong{font-family:var(--font-display);font-size:var(--text-md)}.control-explanation{align-items:flex-start;gap:var(--space-2);font-size:var(--text-sm);display:flex}.control-explanation .icon{width:22px;height:22px;color:var(--cobalt-600)}.about-car{max-width:220px;margin:0 auto}.credits-note{padding-top:var(--space-4);border-top:1px solid var(--line);font-size:var(--text-xs)!important}.join-slots{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid}.join-slot{gap:var(--space-1);padding:var(--space-4);border-radius:var(--radius-md);background:var(--surface-raised);color:var(--ink);text-align:left;border:3px dashed #c9bd98;display:grid}.join-slot strong{font-family:var(--font-display);font-size:var(--text-xl)}.join-slot small{font-size:var(--text-xs);color:var(--ink-soft)}.join-slot span{font-weight:800}.join-slot.joined{border-style:solid;border-color:var(--mint-600);background:#e6f8ee}.join-slot.joined span{color:var(--mint-800)}.online-start{align-items:end;gap:var(--space-3);grid-template-columns:1fr auto auto;display:grid}.online-join{gap:var(--space-1);font-size:var(--text-sm);color:var(--ink-soft);flex-direction:column;display:flex}.online-join input{width:100%;min-height:var(--tap-lg);padding:var(--space-1) var(--space-3);border:3px solid var(--sky-200);border-radius:var(--radius-md);color:var(--ink);font-family:var(--font-display);font-size:var(--text-xl);letter-spacing:.18em;text-transform:uppercase;background:#fff}.online-join input:focus{border-color:var(--cobalt-500);outline:none}.room-code{justify-content:center;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.room-code small{font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);font-weight:800}.room-code strong{padding:2px var(--space-5);border-radius:var(--radius-md);box-shadow:var(--bevel-sm);font-family:var(--font-display);font-size:var(--text-2xl);letter-spacing:.14em;background:#fff}.room-players{justify-content:center;gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.room-players li{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--surface-raised);display:flex}.room-players i,.party-standings i,.party-board i{background:var(--chip);border-radius:50%;flex-shrink:0;width:16px;height:16px;box-shadow:inset 0 -2px #0002}.room-players span{font-size:var(--text-xs);color:var(--ink-soft)}.open-rooms-section h3{font-size:var(--text-md)}.open-rooms{margin:var(--space-2) 0 0;gap:var(--space-2);max-height:200px;padding:0;list-style:none;display:grid;overflow:auto}.open-rooms li{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--surface-raised);font-size:var(--text-sm);grid-template-columns:auto 1fr auto auto;display:grid}.open-rooms strong{letter-spacing:.08em}.results-screen{padding:max(var(--space-5), var(--safe-top)) var(--space-4) max(var(--space-5), var(--safe-bottom));-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#17364569;place-items:center;display:grid;position:absolute;inset:0;overflow:auto}.results-card{width:min(560px,100%);padding:var(--space-6) var(--space-8);border-radius:var(--radius-xl);background:var(--surface-paper);box-shadow:var(--bevel), var(--lift-lg);text-align:center;animation:arrive var(--dur-slow) var(--ease-out)}.results-card>.eyebrow{font-size:var(--text-xs);letter-spacing:.1em;color:var(--ink-soft);font-weight:800;display:block}.results-card h1{margin:0 0 var(--space-3);font-size:var(--text-2xl);color:var(--ink)}.results-card>p{max-width:420px;font-size:var(--text-sm);color:var(--ink-muted);margin:auto;line-height:1.6}.result-stars{justify-content:center;align-items:center;gap:var(--space-2);min-height:60px;margin:var(--space-4) 0;color:var(--sun-400);filter:drop-shadow(0 3px 2px #a06c00);display:flex}.result-stars>span>.icon{color:#a6b6a7;fill:#e2e8d7;stroke-width:1.4px;width:48px;height:48px}.result-stars>span:nth-child(2){transform:translateY(-7px)scale(1.22)}.result-stars>span.earned>.icon{color:#b59228;fill:var(--sun-400)}.result-stars>.icon{width:58px;height:58px;color:var(--slate-500)}.result-stats{margin:var(--space-5) 0 var(--space-3);padding:var(--space-4) 0;border-radius:var(--radius-md);background:var(--surface-cool);grid-template-columns:repeat(3,1fr);display:grid}.result-stats>div+div{border-left:1px solid var(--sky-200)}.result-stats small{font-size:var(--text-2xs);letter-spacing:.06em;color:var(--ink-soft);font-weight:800;display:block}.result-stats strong{margin-top:var(--space-1);font-family:var(--font-display);font-size:var(--text-xl);font-variant-numeric:tabular-nums;display:block}.best-badge{align-items:center;gap:var(--space-1);font-size:var(--text-xs);letter-spacing:.06em;color:var(--mint-800);font-weight:800;display:inline-flex}.best-badge .icon{width:16px;height:16px}.result-actions{gap:var(--space-3);margin-top:var(--space-5);flex-direction:column;display:flex}.results-links{justify-content:center;gap:var(--space-2) var(--space-6);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.results-card>p.small-note{font-size:var(--text-xs)}.results-card>p.inline-warning{margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--line);color:#8a4430;font-size:var(--text-xs)}.party-standings{margin:var(--space-4) auto var(--space-3);gap:var(--space-2);text-align:left;max-width:380px;padding:0;list-style:none;display:grid}.party-standings li{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--surface-raised);font-size:var(--text-md);grid-template-columns:28px 18px 1fr auto;display:grid}.party-standings li:first-child{background:var(--sun-200);box-shadow:inset 0 0 0 2px var(--sun-400)}.party-standings .place{font-family:var(--font-display);font-size:var(--text-lg);color:var(--cobalt-600)}.party-standings.cup-out{opacity:.72;margin-top:0}.party-standings.cup-out li:first-child{background:var(--surface-raised);box-shadow:none}.results-card .party-standings:has(+.cup-out){max-height:min(34vh,320px);overflow-y:auto}.match-results .match-score{justify-content:center;align-items:center;gap:var(--space-4);margin:var(--space-4) 0 var(--space-5);display:flex}.match-results .match-score strong{font-family:var(--font-display);font-size:clamp(46px,6vw,80px);line-height:1}.match-results .match-score .team{padding:var(--space-1) var(--space-4);border-radius:var(--radius-md);color:#fff;font-family:var(--font-display);font-weight:800}.match-results .match-score .blue{background:var(--team-blue)}.match-results .match-score .coral{background:var(--team-coral);color:var(--team-b-ink)}.results-screen:has(.results-v3){-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;padding:0;display:block;overflow:hidden}.results-card.results-v3{width:auto;box-shadow:none;text-align:left;pointer-events:none;background:0 0;border-radius:0;padding:0;animation:none;position:absolute;inset:0}.results-v3>*{pointer-events:auto}.results-v3>.podium-space,.results-v3>.pins,.results-v3>.confetti{pointer-events:none}.results-v3 .rhead{z-index:20;top:calc(var(--safe-top) + 12px);pointer-events:none;flex-direction:column;align-items:center;gap:6px;display:flex;position:absolute;left:0;right:0}.results-v3 .rhead .chips{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.results-v3 .chip.dark{background:var(--glass-dark);color:var(--ink-on-color)}.results-v3 .chip.new{background:var(--coral-600);color:var(--ink-on-color);letter-spacing:.07em;text-transform:uppercase}.results-v3 .big{max-width:calc(100vw - 2 * var(--edge-x) - 220px);text-align:center;font:800 calc(64px * var(--text-scale))/.95 var(--font-display);color:var(--sun-400);-webkit-text-stroke:8px var(--navy-900);paint-order:stroke fill;letter-spacing:.01em;text-transform:uppercase;filter:drop-shadow(0 5px 0 var(--navy-950));margin:0}.results-v3 .big.team,.results-v3.lost .big{color:var(--cream-50)}.results-v3 .scorebug{box-shadow:var(--bevel), var(--lift);font:800 calc(30px * var(--text-scale))/1 var(--font-display);border-radius:18px;align-items:stretch;margin:0;display:flex;overflow:hidden}.results-v3 .scorebug span{color:var(--ink-on-color);align-items:center;gap:8px;padding:6px 16px;display:flex}.results-v3 .scorebug .b{background:var(--team-blue)}.results-v3 .scorebug .c{background:var(--team-coral);color:var(--team-b-ink)}.results-v3 .scorebug .mid{background:var(--cream-50);color:var(--ink);font-size:var(--fs-sm);text-transform:uppercase;padding:0 12px}.results-v3 .result-stars{min-height:0;margin:0}.results-v3 .result-stars>span>.icon{width:44px;height:44px}.results-v3 .rback{top:calc(var(--safe-top) + 12px)}.results-v3 .rback .back .disc{background:var(--action-structure);width:36px;height:36px;color:var(--ink-on-color);border-radius:50%;place-items:center;display:grid}.results-v3 .rback .back .icon{width:18px;height:18px}.results-v3 .wallet-r{z-index:22;top:calc(var(--safe-top) + 12px);right:var(--edge-r);position:absolute}.results-v3 .wallet{border-radius:var(--radius-pill);background:var(--action-secondary);min-height:52px;box-shadow:var(--bevel-sm);font:800 var(--fs-lg)/1 var(--font-display);align-items:center;gap:8px;padding:4px 18px 4px 8px;display:inline-flex}.results-v3 .wallet img{width:32px;height:32px;filter:drop-shadow(0 2px 2px var(--sun-shadow))}.results-v3 .podium-space{left:calc(var(--edge-x) + 316px);right:calc(var(--edge-r) + 408px);top:calc(var(--safe-top) + 190px);bottom:calc(var(--hintbar-h) + var(--safe-bottom) + var(--slab-h) + 24px);position:absolute}.results-v3[data-kind=mission].lost .podium-space{display:none}.results-v3 .rtabs{z-index:21;top:calc(var(--safe-top) + 122px);left:calc(var(--edge-x) + 12px);justify-content:space-between;width:276px;position:absolute}.results-v3:not(.has-stats) .rtabs{display:none}.results-v3 .rtabs [role=tab]{flex:1;justify-content:center}.results-v3 .stand{z-index:20;top:calc(var(--safe-top) + 110px);left:var(--edge-x);width:300px;bottom:calc(var(--hintbar-h) + var(--safe-bottom) + 14px);flex-direction:column;gap:8px;padding:12px;display:flex;position:absolute;overflow:hidden}.results-v3.has-stats .stand{padding-top:76px}.results-v3 .rpage{flex-direction:column;gap:6px;min-height:0;display:flex;overflow-y:auto}.results-v3.has-stats[data-page=summary] .page-stats,.results-v3.has-stats[data-page=stats] .page-summary{display:none}.results-v3 .rpage .cap{padding:2px 4px}.results-v3 .rpage>p.small-note,.results-v3 .stats-note{font:700 var(--fs-cap)/1.35 var(--font-body);color:var(--ink-muted)}.results-v3 .party-standings{flex-direction:column;gap:5px;max-width:none;margin:0;display:flex}.results-v3 .party-standings li.prow{background:var(--cream-50);min-height:40px;box-shadow:var(--bevel-sm);font:800 var(--fs-sm)/1 var(--font-display);border-radius:14px;grid-template-columns:22px 16px 1fr auto;align-items:center;gap:8px;padding:0 12px 0 8px;display:grid}.results-v3 .party-standings li.prow:first-child{background:var(--cream-50);box-shadow:var(--bevel-sm)}.results-v3 .party-standings li.prow.me{background:linear-gradient(var(--cream-50), var(--sun-200));box-shadow:0 0 0 3px var(--sun-400), var(--bevel-sm)}.results-v3 .party-standings .place{font-size:var(--fs-sm);color:var(--ink-soft);text-align:center}.results-v3 .party-standings strong{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.results-v3 .party-standings .mark{color:var(--ink-soft);font:800 var(--fs-cap)/1 var(--font-body);margin-right:6px;text-decoration:none}.results-v3 .party-standings li>span:last-child{font-variant-numeric:tabular-nums}.results-v3 .party-standings.cup-out{opacity:.78}.results-v3 .mvp{color:var(--sun-800)}.results-v3 .teamcol{flex-direction:column;gap:5px;display:flex}.results-v3 .teamcol h4{font:800 var(--fs-cap)/1 var(--font-display);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;margin:4px 0 0;padding:4px 6px;display:flex}.results-v3 .teamcol.team-0 h4{color:var(--cobalt-700)}.results-v3 .teamcol.team-1 h4{color:var(--coral-900)}.results-v3 .stable{flex-direction:column;gap:5px;display:flex}.results-v3 .trow{grid-template-columns:1fr repeat(var(--cols,2), 52px);background:var(--cream-50);min-height:36px;box-shadow:var(--bevel-sm);font:800 var(--fs-sm)/1 var(--font-display);border-radius:12px;align-items:center;gap:4px;padding:0 10px;display:grid}.results-v3 .trow>span:first-child{white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;display:flex;overflow:hidden}.results-v3 .trow>span:not(:first-child){text-align:center;font-variant-numeric:tabular-nums}.results-v3 .trow i{background:var(--chip);width:12px;height:12px;box-shadow:0 0 0 2px var(--cream-50), 0 0 0 3px var(--ink-a12);border-radius:50%;flex-shrink:0}.results-v3 .trow.head{min-height:20px;box-shadow:none;font:800 var(--fs-cap)/1 var(--font-display);color:var(--ink-soft);background:0 0}.results-v3 .trow.me{box-shadow:0 0 0 3px var(--sun-400), var(--bevel-sm)}.results-v3 .rsub{font:700 var(--fs-sm)/1.4 var(--font-body);color:var(--ink-muted);margin:0}.results-v3 .result-stats{background:0 0;flex-direction:column;gap:5px;margin:4px 0;padding:0;display:flex}.results-v3 .result-stats>div{background:var(--cream-50);min-height:40px;box-shadow:var(--bevel-sm);border-radius:14px;justify-content:space-between;align-items:center;padding:0 12px;display:flex}.results-v3 .result-stats>div+div{border-left:0}.results-v3 .result-stats small{font:800 var(--fs-cap)/1 var(--font-display)}.results-v3 .result-stats strong{font-size:var(--fs-lg);margin:0}.results-v3 .stand .textbtn{align-self:flex-start}.results-v3 .stand .inline-warning{font-size:var(--fs-cap);margin:0}.results-v3 .rewards{z-index:20;top:calc(var(--safe-top) + 110px);right:var(--edge-r);width:392px;bottom:calc(var(--hintbar-h) + var(--safe-bottom) + var(--slab-h) + 28px);flex-direction:column;gap:8px;padding:12px;display:flex;position:absolute;overflow-y:auto}.results-v3 .rewards>*{flex-shrink:0}.results-v3 .xp{border-radius:20px;grid-template-columns:64px 1fr;align-items:center;gap:12px;padding:12px;display:grid}.results-v3 .ring{background:conic-gradient(var(--sun-400) 0 var(--v), var(--white-a20) var(--v) 100%);border-radius:50%;place-items:center;width:64px;height:64px;display:grid;position:relative}.results-v3 .ring b{background:var(--navy-900);width:50px;height:50px;font:800 calc(24px * var(--text-scale))/1 var(--font-display);border-radius:50%;place-items:center;display:grid}.results-v3 .xp strong{font:800 var(--fs-lg)/1 var(--font-display);display:block}.results-v3 .xp small{font:700 var(--fs-cap)/1.2 var(--font-body);color:var(--sky-200);margin:3px 0 7px;display:block}.results-v3 .xp .meter{background:var(--white-a20)}.results-v3 .levelup{animation:pop .3s var(--ease-out);position:absolute;top:-10px;right:-8px;transform:rotate(8deg)}.results-v3 .xpchips{flex-wrap:wrap;gap:5px;display:flex}.results-v3 .xpchips span{background:var(--sky-100);min-height:26px;color:var(--cobalt-700);font:800 var(--fs-cap)/1 var(--font-display);border-radius:13px;align-items:center;gap:4px;padding:0 9px;display:inline-flex}.results-v3 .track{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.results-v3 .track div{background:var(--cream-50);box-shadow:var(--bevel-sm);font:800 var(--fs-cap)/1.2 var(--font-display);color:var(--ink-soft);border-radius:14px;flex-direction:column;gap:3px;padding:8px 10px;display:flex}.results-v3 .track div b{color:var(--ink);font-size:var(--fs-sm)}.results-v3 .track div.now{box-shadow:0 0 0 3px var(--sun-400), var(--bevel-sm);background:linear-gradient(var(--cream-50), var(--sun-200))}.results-v3 .track div span{align-items:center;gap:4px;display:inline-flex}.results-v3 .track :is(img,.icon){flex-shrink:0;width:18px;height:18px}.results-v3 .tally{background:var(--cream-50);box-shadow:var(--bevel-sm);border-radius:16px;flex-direction:column;gap:4px;padding:8px 10px;display:flex}.results-v3 .tally div{font:700 var(--fs-sm)/1.3 var(--font-body);justify-content:space-between;align-items:center;gap:8px;display:flex}.results-v3 .tally div b{font:800 var(--fs-sm)/1 var(--font-display);color:var(--sun-800);align-items:center;gap:4px;display:inline-flex}.results-v3 .tally div b img{width:18px;height:18px}.results-v3 .tally .total{border-top:2px dashed var(--ink-a12);font:800 var(--fs-md)/1 var(--font-display);margin-top:2px;padding-top:6px}.results-v3 .tally .total b{font-size:var(--fs-lg);color:var(--ink)}.results-v3 .tally .small-note{font-size:var(--fs-cap);margin:0}.results-v3 .cap-line{font:700 var(--fs-cap)/1 var(--font-body);color:var(--ink-soft);grid-template-columns:auto 1fr auto;align-items:center;gap:8px;display:grid}.results-v3 .cap-line .meter{height:8px}.results-v3 .pins{z-index:8;position:absolute;inset:0}.results-v3 .pins>*{visibility:hidden;white-space:nowrap;position:absolute;transform:translate(-50%,-100%)}.results-v3 .pins>[style*=left]{visibility:visible}.results-v3 .mvp-pin{border-radius:var(--radius-pill);background:var(--cream-50);box-shadow:var(--bevel-sm), var(--lift);font:800 var(--fs-sm)/1.05 var(--font-display);color:var(--ink);align-items:center;gap:8px;padding:6px 14px 6px 6px;display:flex}.results-v3 .mvp-pin .star{background:var(--action-primary);width:32px;height:32px;color:var(--action-primary-ink);border-radius:50%;place-items:center;display:grid}.results-v3 .mvp-pin .star .icon{fill:currentColor;width:18px;height:18px}.results-v3 .mvp-pin small{font:700 var(--fs-cap)/1 var(--font-body);color:var(--ink-soft);margin-top:2px;display:block}.results-v3 .side-pin .star{color:var(--ink-on-color);font:800 var(--fs-md)/1 var(--font-display)}.results-v3 .side-pin.team-0 .star{background:var(--team-blue)}.results-v3 .side-pin.team-1 .star{background:var(--team-coral);color:var(--team-b-ink)}.results-v3 .draw-pin{border-radius:var(--radius-pill);background:var(--navy-950);color:var(--ink-on-color);box-shadow:var(--lift);font:800 var(--fs-lg)/1 var(--font-display);letter-spacing:.08em;padding:6px 16px}.results-v3 .place-pin{border-radius:var(--radius-pill);background:var(--glass-dark-solid);color:var(--ink-on-color);font:800 var(--fs-sm)/1 var(--font-display);padding:5px 12px}.results-v3 .slot.result-actions{flex-direction:row;margin:0}.results-v3 .chipbtn .icon{width:24px;height:24px;color:var(--cobalt-700)}.results-v3 .slab .icon.lead{fill:none}.results-v3 .slab[aria-disabled=true]{filter:saturate(.35)}.results-v3 .cup-soon{z-index:26;right:var(--edge-r);bottom:calc(var(--hintbar-h) + var(--safe-bottom) + 14px);background:var(--cream-50);max-width:360px;box-shadow:var(--bevel), var(--lift);font:800 var(--fs-sm)/1.3 var(--font-display);color:var(--ink);border-radius:22px;padding:14px 18px;position:absolute}.results-v3 .results-hints{z-index:25;padding-bottom:calc(var(--space-1) + var(--safe-bottom));padding-left:var(--edge-x);padding-right:var(--edge-r);position:absolute;bottom:0;left:0;right:0}.results-v3 .results-hints .hint-note{font:700 var(--fs-cap)/1.2 var(--font-body);color:var(--ink-muted);margin-left:auto}.confetti{z-index:5;pointer-events:none;position:absolute;inset:0;overflow:hidden}.confetti i{border-radius:3px;animation:linear 2 fall;position:absolute;top:-20px}.confetti.burst{z-index:var(--z-toast);position:fixed}.confetti.burst i{animation-timing-function:cubic-bezier(.3,.2,.6,1);animation-iteration-count:1;animation-fill-mode:both}[data-gfx=battery] .confetti{display:none}.confetti .c0{background:var(--sun-400)}.confetti .c1{background:var(--cobalt-400)}.confetti .c2{background:var(--coral-400)}.confetti .c3{background:var(--mint-400)}.confetti .c4{background:var(--cream-50)}.confetti .c5{background:var(--sky-400)}@keyframes fall{to{transform:translate3d(var(--dx,30px), 110vh, 0) rotate(var(--r,540deg))}}.reduced-motion .confetti{display:none}@media (prefers-reduced-motion:reduce){.confetti{display:none}}@media (max-width:1100px) and (min-width:641px),(max-height:560px) and (orientation:landscape),(max-width:640px) and (orientation:landscape){.results-v3 .big{font-size:calc(46px * var(--text-scale));-webkit-text-stroke-width:6px}.results-v3 .rtabs,.results-v3:not(.has-stats) .rtabs{top:calc(var(--safe-top) + 96px);left:auto;right:var(--edge-r);width:340px;display:inline-flex}.results-v3 .stand,.results-v3 .rewards{top:calc(var(--safe-top) + 160px);left:auto;right:var(--edge-r);width:340px;bottom:calc(var(--hintbar-h) + var(--safe-bottom) + var(--slab-h) + 28px)}.results-v3.has-stats .stand{padding-top:12px}.results-v3.tabbed[data-page=summary] .stand,.results-v3[data-page=stats] .rewards{display:none}.results-v3.has-stats[data-page=stats] .page-summary{display:flex}.results-v3 .track{display:none}.results-v3 .podium-space{left:var(--edge-x);right:calc(var(--edge-r) + 356px);top:calc(var(--safe-top) + 150px)}}@media (max-height:560px) and (orientation:landscape){.results-v3 .rhead{top:calc(var(--safe-top) + 10px);left:calc(var(--edge-x) + 170px);right:calc(var(--edge-r) + 356px);gap:4px}.results-v3 .rhead .chips,.results-v3 .wallet-r{display:none}.results-v3 .big{max-width:100%;font-size:calc(32px * var(--text-scale));-webkit-text-stroke-width:5px}.results-v3 .scorebug{font-size:calc(20px * var(--text-scale))}.results-v3 .scorebug span{padding:4px 12px}.results-v3 .rtabs,.results-v3:not(.has-stats) .rtabs{top:calc(var(--safe-top) + 10px)}.results-v3 .stand,.results-v3 .rewards{top:calc(var(--safe-top) + 70px)}.results-v3 .podium-space{top:calc(var(--safe-top) + 96px);right:calc(var(--edge-r) + 356px)}.results-v3 .xpchips,.results-v3 .cap-line,.results-v3 .place-pin{display:none}}@media (max-width:640px) and (orientation:portrait){.results-v3 .rhead{top:calc(var(--safe-top) + 68px)}.results-v3 .big{max-width:calc(100vw - 24px);font-size:calc(42px * var(--text-scale));-webkit-text-stroke-width:6px}.results-v3 .scorebug{font-size:calc(22px * var(--text-scale))}.results-v3 .wallet-r{top:calc(var(--safe-top) + 10px)}.results-v3 .rback{top:calc(var(--safe-top) + 10px);left:calc(10px + var(--safe-left))}.results-v3 .podium-space{left:10px;right:10px;top:calc(var(--safe-top) + 170px);height:26vh;bottom:auto}.results-v3 .rtabs,.results-v3:not(.has-stats) .rtabs{top:calc(var(--safe-top) + 176px + 26vh);width:auto;display:inline-flex;left:10px;right:10px}.results-v3 .stand,.results-v3 .rewards{top:calc(var(--safe-top) + 236px + 26vh);width:auto;left:10px;right:10px;bottom:calc(var(--safe-bottom) + var(--slab-h) + 30px)}.results-v3.has-stats .stand{padding-top:12px}.results-v3.tabbed[data-page=summary] .stand,.results-v3[data-page=stats] .rewards{display:none}.results-v3.has-stats[data-page=stats] .page-summary{display:flex}.results-v3 .track,.results-v3 .place-pin{display:none}#app[data-device] .results-v3 .slot{left:calc(10px + var(--safe-left));right:calc(10px + var(--safe-right));bottom:calc(var(--safe-bottom) + 14px)}.results-v3 .slot .slab{flex:1;min-width:0;padding:0 20px}.results-v3 .slot .chipbtn{flex:0 34%;min-width:0}.results-v3 .slot .slab{gap:8px;padding:0 12px}.results-v3 .slot .slab .lbl strong{font-size:min(var(--fs-slab), 5.2vw);white-space:normal;text-wrap:balance}.results-v3 .slot .slab .lbl small{white-space:normal;text-overflow:clip}.results-v3 .results-hints{flex-wrap:nowrap}.results-v3 .results-hints>span:not(.hint-note,:last-child,:has(+.hint-note)){display:none}#app:is([data-device=keyboard],[data-device=gamepad]) .results-v3 .slot{bottom:calc(var(--hintbar-h) + var(--safe-bottom) + 4px)}#app:is([data-device=keyboard],[data-device=gamepad]) .results-v3 :is(.stand,.rewards){bottom:calc(var(--hintbar-h) + var(--safe-bottom) + var(--slab-h) + 30px)}.results-v3 .cup-soon{left:10px;right:10px;bottom:calc(var(--safe-bottom) + 14px);max-width:none}}@media (max-width:760px){.setup-sheet,.brief-presentation{grid-template-columns:1fr}.city-islands{grid-template-columns:1fr;grid-auto-flow:row}.city-island{min-height:190px}#game-dialog.map-dialog[open]{background-image:url(../art/plates/plate-map-tall.webp)}.online-start{grid-template-columns:1fr}.online-entry{flex-direction:column;align-items:stretch}.profile-head{grid-template-columns:96px 1fr}.contract-card{min-height:240px}.results-card{padding:var(--space-5) var(--space-4);border-radius:var(--radius-lg)}}@media (orientation:landscape) and (max-height:560px){.result-stars{margin:var(--space-2) 0;min-height:44px}.result-stars>span>.icon{width:34px;height:34px}.results-card{width:min(640px,100%);padding:var(--space-4) var(--space-6)}.result-stats{margin:var(--space-3) 0 var(--space-2);padding:var(--space-2) 0}.result-actions{margin-top:var(--space-3);flex-direction:row}.result-actions .button{min-height:var(--tap);font-size:var(--text-md);flex:1}}#game-dialog.in-shell.page-dialog{inset:calc(var(--topbar-h) + var(--safe-top)) 0 0;width:100vw;max-width:none;height:auto;max-height:none;padding:var(--space-2) var(--edge-r) 0 var(--edge-x);box-shadow:none;background:radial-gradient(circle at 20% 15%, var(--white-a20) 0 1.5px, transparent 2px) 0 0 / 26px 26px, radial-gradient(120% 90% at 30% 0%, var(--cobalt-400), var(--cobalt-600) 55%, var(--cobalt-800));border-radius:0;margin:0}@media (max-width:640px) and (orientation:portrait){#game-dialog.in-shell.page-dialog{bottom:calc(var(--nav-h) + var(--safe-bottom));padding:var(--space-2) 10px 0}}.page-dialog.in-shell .dialog-top{margin:0 0 var(--space-2);background:0 0;flex-direction:row-reverse;justify-content:flex-end;padding:0;position:relative;top:0}.page-dialog.in-shell .dialog-top>div{box-shadow:none;text-align:left;background:0 0;flex:0 auto;padding:0}.page-dialog.in-shell .dialog-top h2{color:var(--ink-on-color);font-size:var(--fs-xl);text-shadow:0 2px 0 var(--navy-950)}.page-dialog.in-shell .dialog-top .round-button{background:var(--action-secondary);color:var(--ink);box-shadow:var(--bevel-sm)}.page-dialog .dialog-body{gap:var(--space-3);width:100%;max-width:1180px;margin:0 auto}.page-dialog.in-shell .dialog-hints{margin:var(--space-3) calc(-1 * var(--edge-r)) 0 calc(-1 * var(--edge-x));border-radius:0;bottom:0}.page-dialog :is(.btn,.seg button,.devseg button,.bind):focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px;box-shadow:0 0 0 3px var(--focus-halo)}.settings-bar{justify-content:center;align-items:center;gap:var(--space-2);display:flex}.settings-dialog .settings-tabs{border-radius:var(--radius-pill);flex-wrap:nowrap;flex:0 auto;max-width:100%}.settings-dialog .settings-tabs [role=tab] .icon{width:19px;height:19px}.settings-page{align-items:start;gap:var(--space-3);margin-top:var(--space-1);grid-template-columns:minmax(0,1fr) minmax(300px,380px);display:grid}.settings-page[hidden]{display:none}.settings-rows{padding:var(--space-3);flex-direction:column;gap:2px;display:flex}.settings-rows .setting-row{min-height:56px;padding:var(--space-2) var(--space-3);font-size:var(--fs-md);border-bottom:0;border-radius:16px;font-weight:800}.settings-rows .setting-row:focus-within{background:var(--ink-a08)}.settings-rows .setting-row small{font-size:var(--fs-cap)}.settings-rows .setting-advanced{margin:0 var(--space-3);border-bottom:0}.settings-head{align-items:center;gap:var(--space-2);margin:var(--space-3) var(--space-3) 0;font:800 var(--fs-lg)/1 var(--font-display);display:flex}.settings-head .icon{width:22px;height:22px}.settings-rows .settings-save{font:700 var(--fs-cap)/1.3 var(--font-body);color:var(--mint-800)}.settings-links{gap:var(--space-2);padding:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.btn.danger{background:var(--action-danger);color:var(--danger)}.btn.danger .icon{color:var(--danger)}.page-reset{margin:var(--space-3) var(--space-3) var(--space-1);align-self:flex-start}.settings-side{gap:var(--space-3);padding:var(--space-4);flex-direction:column;display:flex;position:sticky;top:0}.settings-side h3{font:800 var(--fs-lg)/1 var(--font-display)}.side-note{font:700 var(--fs-sm)/1.45 var(--font-body);color:var(--ink-muted)}.recommend{align-items:center;gap:var(--space-2);font:700 var(--fs-sm)/1.4 var(--font-body);color:var(--ink-muted);flex-wrap:wrap;display:flex}.recommend .chip{background:var(--action-structure);color:var(--ink-on-color);font-size:var(--fs-sm)}.recommend .chip .icon{width:16px;height:16px}.settings-dialog .seg{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.settings-dialog .seg button{min-width:48px;min-height:var(--tap);background:var(--cream-50);color:var(--ink);box-shadow:var(--bevel-sm);font:800 var(--fs-md)/1 var(--font-display);cursor:pointer;border:0;border-radius:14px;padding:0 14px}.settings-dialog .seg button[aria-pressed=true]{background:var(--action-structure);color:var(--ink-on-color);box-shadow:var(--bevel-sm), inset 0 -3px 0 var(--cobalt-800)}.settings-dialog .seg button:disabled{cursor:default}.settings-dialog .volume-row{display:flex}.settings-dialog .range{align-items:center;gap:var(--space-3);flex:0 300px;min-width:200px;display:flex}.settings-dialog .range input[type=range]{--v:50%;appearance:none;background:0 0;flex:1;height:32px;margin:0}.settings-dialog .range input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--cobalt-600) var(--v), var(--ink-a12) var(--v));border-radius:5px;height:10px}.settings-dialog .range input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--cream-50);width:28px;height:28px;box-shadow:var(--bevel-sm), 0 0 0 3px var(--cobalt-600);border-radius:50%;margin-top:-9px}.settings-dialog .range input[type=range]::-moz-range-track{background:var(--ink-a12);border-radius:5px;height:10px}.settings-dialog .range input[type=range]::-moz-range-progress{background:var(--cobalt-600);border-radius:5px;height:10px}.settings-dialog .range input[type=range]::-moz-range-thumb{background:var(--cream-50);width:28px;height:28px;box-shadow:var(--bevel-sm), 0 0 0 3px var(--cobalt-600);border:0;border-radius:50%}.settings-dialog .range output{text-align:right;min-width:52px;font:800 var(--fs-md)/1 var(--font-display);color:var(--ink);font-variant-numeric:tabular-nums}.devseg{border-radius:var(--radius-pill);background:var(--surface-sunken);box-shadow:inset 0 2px 4px var(--ink-a12);grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;display:grid}.devseg button{min-height:var(--tap);padding:0 var(--space-2);border-radius:var(--radius-pill);color:var(--ink-muted);font:800 var(--fs-sm)/1 var(--font-display);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:7px;display:flex}.devseg button .icon{flex-shrink:0;width:19px;height:19px}.devseg button[aria-pressed=true]{background:var(--action-structure);color:var(--ink-on-color);box-shadow:var(--bevel-sm)}.settings-rows .bind-head{margin:var(--space-3) var(--space-2) var(--space-1)}.bind .chg{gap:6px}.bind .chg .icon{width:18px;height:18px}#app .settings-side :is(.pad-map,.key-map,.menu-map) .g{display:inline-flex!important}.pad-map{gap:var(--space-2) var(--space-3);grid-template-columns:1fr 1fr;display:grid}.pad-svg{grid-area:1/1/auto/-1;width:100%;height:auto;max-height:170px}.callouts.left{grid-area:2/1}.callouts.right{grid-area:2/2}.pad-svg .body{fill:var(--cream-50);stroke:var(--ink-a20);stroke-width:3px}.pad-svg .b{fill:var(--ink-a12)}.pad-svg .b.on{fill:var(--cobalt-500)}.pad-svg .cap{fill:var(--sky-100)}.callouts{font:800 var(--fs-cap)/1.15 var(--font-display);flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.callouts li{align-items:center;gap:7px;min-width:0;display:flex}.callouts .g.face,.callouts .g.dpad{width:24px;height:24px}.menu-map{font:700 var(--fs-sm)/2 var(--font-body);color:var(--ink-muted)}.menu-map .g{margin:0 2px}.key-map{align-items:center;gap:var(--space-3);flex-direction:column;display:flex}.key-t{flex-direction:column;align-items:center;gap:6px;display:flex}.key-row,.key-rest{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.key-cap{flex-direction:column;align-items:center;gap:4px;width:84px;display:flex}.key-cap .g.key{min-width:46px;height:40px;font-size:var(--fs-md)}.key-cap.wide{width:auto}.key-cap.wide .g.key{min-width:190px}.key-cap small{font:700 var(--fs-cap)/1.15 var(--font-body);color:var(--ink-soft);text-align:center}.touch-map{gap:var(--space-3);flex-direction:column;display:flex}.touch-map .phone{aspect-ratio:2;background:var(--sky-100);box-shadow:inset 0 0 0 6px var(--ink-a20);border-radius:22px;display:block;position:relative}.t-stick{width:64px;height:64px;box-shadow:inset 0 0 0 3px var(--ink-a20);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:16%;left:12%}.t-stick i{background:var(--sun-400);border-radius:50%;width:28px;height:28px}.t-arrows{font:800 var(--fs-xl)/1 var(--font-display);color:var(--cobalt-700);position:absolute;bottom:22%;left:10%}.t-buttons i{background:var(--sun-400);box-shadow:var(--bevel-sm);border-radius:50%;position:absolute}.t-buttons .pulse{width:56px;height:56px;bottom:14%;right:8%}.t-buttons .boost{width:44px;height:44px;box-shadow:var(--bevel-sm), 0 0 0 4px var(--cobalt-500);bottom:12%;right:30%}.t-buttons .horn{background:var(--cream-50);width:32px;height:32px;bottom:58%;right:13%}.touch-legend{font:700 var(--fs-sm)/1.4 var(--font-body);color:var(--ink-muted);flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.touch-legend b{font:800 var(--fs-md)/1.2 var(--font-display);color:var(--ink)}.access-preview{gap:var(--space-3);padding:var(--space-4);background:var(--cream-50);box-shadow:var(--bevel-sm);border-radius:18px;flex-direction:column;display:flex}.access-preview .sample{font:700 var(--fs-md)/1.4 var(--font-body)}.access-preview .assist-sample{padding:0}.access-preview .rarities{flex-wrap:wrap;gap:6px;display:flex}.profile-page{align-items:start;gap:var(--space-3);grid-template-columns:minmax(300px,400px) minmax(0,1fr);display:grid}.profile-col{gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.profile-col>.panel{gap:var(--space-3);padding:var(--space-4);flex-direction:column;display:flex}.profile-page h3{font:800 var(--fs-lg)/1.1 var(--font-display)}.profile-page h4{font:800 var(--fs-cap)/1.1 var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin:0}.pc-head{align-items:center;gap:var(--space-4);min-width:0;display:flex}.pc-avatar{background:conic-gradient(var(--sun-500) 0 var(--xp,0%), var(--ink-a12) var(--xp,0%) 100%);border-radius:50%;flex-shrink:0;width:112px;height:112px;padding:7px;position:relative}.pc-avatar .toy-preview{background:var(--sky-200);width:100%;height:100%;box-shadow:inset 0 0 0 3px var(--cream-50);border-radius:50%;overflow:hidden}.pc-avatar .toy-preview canvas{object-fit:cover;width:100%;height:100%}.pc-avatar b{background:var(--action-structure);min-width:34px;height:34px;color:var(--ink-on-color);box-shadow:0 0 0 3px var(--cream-50);font:800 var(--fs-md)/1 var(--font-display);border-radius:17px;place-items:center;padding:0 6px;display:grid;position:absolute;bottom:2px;right:-2px}.pc-who{flex-direction:column;align-items:flex-start;gap:6px;min-width:0;display:flex}.pc-who h3{font-size:var(--fs-2xl);overflow-wrap:anywhere}.pc-who .chip{white-space:normal}.pc-who .chip .icon{flex-shrink:0;width:14px;height:14px}.pc-fav{align-items:center;gap:var(--space-2);min-width:0;display:flex}.pc-fav .rec-art{width:48px}.pc-fav>span:last-child{flex-direction:column;gap:2px;min-width:0;display:flex}.pc-fav small{font:700 var(--fs-cap)/1.1 var(--font-body);color:var(--ink-soft)}.pc-fav strong{font:800 var(--fs-sm)/1.1 var(--font-display);overflow-wrap:anywhere}.pc-level{flex-direction:column;gap:6px;display:flex}.pc-level>span:first-child{justify-content:space-between;gap:var(--space-2);font:800 var(--fs-md)/1 var(--font-display);flex-wrap:wrap;display:flex}.pc-level .num{color:var(--ink-muted);font-variant-numeric:tabular-nums}.pc-level small{font:700 var(--fs-cap)/1.2 var(--font-body);color:var(--ink-soft)}.reward-track{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.reward-track li{align-items:center;gap:var(--space-2);background:var(--surface-sunken);min-height:40px;font:700 var(--fs-sm)/1.2 var(--font-body);border-radius:14px;grid-template-columns:minmax(64px,auto) auto 1fr;padding:4px 10px;display:grid}.reward-track li.item{background:var(--kraft-100);box-shadow:inset 0 0 0 2px var(--kraft-200);grid-template-columns:minmax(64px,auto) auto auto 1fr}.reward-track b{font:800 var(--fs-sm)/1 var(--font-display);color:var(--cobalt-700)}.reward-track small{white-space:nowrap;text-overflow:ellipsis;font-weight:800;overflow:hidden}.records-scroll{overflow-x:auto}.records-table{border-collapse:separate;border-spacing:0 4px;width:100%;font:800 var(--fs-md)/1.1 var(--font-display)}.records-table thead th{padding:0 var(--space-2) 2px;font-size:var(--fs-cap);letter-spacing:.06em;text-align:right;text-transform:uppercase;color:var(--ink-soft)}.records-table thead th:first-child{text-align:left}.records-table tbody th{align-items:center;gap:var(--space-3);padding:4px var(--space-2);text-align:left;display:flex}.records-table td{padding:4px var(--space-2);text-align:right;font-variant-numeric:tabular-nums}.records-table tbody :is(th,td){background:var(--surface-raised)}.records-table tbody th{border-radius:14px 0 0 14px}.records-table tbody td:last-child{border-radius:0 14px 14px 0}.rec-art{aspect-ratio:16/10;background:var(--sky-200);border-radius:10px;flex-shrink:0;width:64px;overflow:hidden}.rec-art>:is(img,svg,picture){object-fit:cover;width:100%;height:100%;display:block}.profile-page .stat-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,120px),1fr))}.profile-page .account-section h3{margin-top:0}.field-row{align-items:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}.field-row .online-join{flex:200px}.danger-zone{align-items:flex-start;gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--line);flex-direction:column;display:flex}#game-dialog.in-shell.page-dialog[open]{flex-direction:column;display:flex}.page-dialog.in-shell .dialog-body{flex:1 0 auto}.page-dialog.in-shell :is(.dialog-top,.dialog-hints){flex:none}.settings-rows .seg-row{flex-wrap:wrap}.settings-rows .seg-row>span:first-child{flex:220px}.settings-rows .seg-row .seg{margin-left:auto}@media (max-width:1100px){.settings-page,.profile-page{grid-template-columns:minmax(0,1fr)}.settings-side{position:static}}@media (max-width:640px){.settings-bar{justify-content:flex-start}.settings-dialog .settings-tabs{border-radius:var(--radius-lg);flex-wrap:wrap;justify-content:center}.settings-rows,.settings-rows .setting-row{padding:var(--space-2)}.settings-dialog :is(.seg-row,.volume-row){align-items:stretch;gap:var(--space-2);flex-direction:column}.settings-dialog .seg{justify-content:flex-start}.settings-dialog .range{flex-basis:auto;min-width:0}.devseg button span{font-size:var(--fs-cap)}.pc-avatar{width:88px;height:88px}}.cup-card{text-align:left;cursor:pointer;border:0;grid-template-columns:1fr 132px;align-items:center;min-height:104px;padding:12px 6px 12px 18px;display:none;overflow:hidden}.cup-card strong{font:800 var(--fs-lg)/1 var(--font-display);text-shadow:0 2px 0 var(--navy-950);display:block}.cup-card .cap{color:var(--sky-200);font:800 var(--fs-cap)/1.2 var(--font-display);letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px;display:block}.cup-card .path{font:800 var(--fs-sm)/1 var(--font-display);align-items:center;gap:5px;margin-top:9px;display:flex}.cup-card .path i{background:var(--white-a20);border-radius:8px;place-items:center;min-width:30px;height:24px;padding:0 5px;font-style:normal;display:grid}.cup-card .path i:last-child{background:var(--sun-400);color:var(--action-primary-ink)}.cup-card .path em{background:var(--white-a60);width:7px;height:2px}.cup-card img{width:150px;filter:drop-shadow(0 8px 10px var(--shadow-deep));margin:-16px -18px -24px 0;transform:rotate(5deg)}@media (min-height:820px) and (min-width:641px){.side .cup-card{display:grid}}.hud{pointer-events:none;--hud-top:max(var(--space-3), var(--safe-top));--hud-side:max(var(--gutter), var(--safe-left), var(--safe-right));--hud-bottom:34px;font-family:var(--font-body);position:absolute;inset:0}.hud button{pointer-events:auto}.hud-cluster{top:var(--hud-top);gap:var(--space-2);flex-direction:column;display:flex;position:absolute}.hud-left{left:var(--hud-side);max-width:min(480px,44vw)}:where([data-match]) .hud-left{max-width:min(480px, 44vw, calc(50% - min(280px, 23vw) - var(--space-3) - var(--hud-side)))}:where([data-match]) .hud-mission h2{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.hud-right{right:var(--hud-side);align-items:flex-end}.hud-title-group{align-items:flex-start;gap:var(--space-2);display:flex}.hud-mission{min-width:0;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);background:var(--surface-paper);box-shadow:var(--bevel);overflow-wrap:anywhere}.hud-mission small{font-size:var(--text-2xs);letter-spacing:.04em;color:var(--ink-soft);font-weight:800;display:block}.hud-mission h2{font-size:var(--text-xl)}.hud-mission p{font-size:var(--text-xs);color:var(--ink-muted);margin-top:2px;line-height:1.4}.objective-progress{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--surface-paper);box-shadow:var(--bevel-sm);margin-left:60px;display:flex}.objective-progress>span{font-size:var(--text-xs);white-space:nowrap;font-weight:800}.objective-progress>strong{font-family:var(--font-display);font-size:var(--text-md);white-space:nowrap;font-variant-numeric:tabular-nums}.hud-clock{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);background:var(--surface-paper);box-shadow:var(--bevel);display:flex}.hud-clock>.icon{width:24px;height:24px;color:var(--sun-500)}.hud-clock small{font-size:var(--text-2xs);letter-spacing:.06em;color:var(--ink-soft);font-weight:800;display:block}.hud-clock strong{font-family:var(--font-display);font-size:var(--text-2xl);font-variant-numeric:tabular-nums;line-height:1;display:block}.hud-clock .urgent{color:var(--coral-600)}.hud-tools{align-items:flex-start;gap:var(--space-2);display:flex}.hud-navigation{gap:var(--space-2);flex-direction:column;display:flex}.hud-navigation .round-button{width:var(--tap);height:var(--tap);border-radius:16px}.hud-navigation .icon{width:22px;height:22px}.minimap{background:var(--surface-paper);width:144px;box-shadow:var(--lift);border-radius:50%;padding:5px;overflow:hidden}.minimap canvas{border-radius:50%;width:100%;height:auto;display:block}.minimap>span{display:none}.match-board,.party-board{top:var(--hud-top);z-index:3;border-radius:var(--radius-lg);background:var(--surface-paper);box-shadow:var(--bevel), var(--lift);align-items:center;padding:6px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.match-board{gap:var(--space-2)}.match-board .team{justify-content:center;align-items:center;gap:var(--space-2);min-width:88px;padding:var(--space-1) var(--space-4);border-radius:var(--radius-md);color:#fff;font-family:var(--font-display);display:flex}.match-board .team strong{font-variant-numeric:tabular-nums;font-size:40px;line-height:1}.match-board .team i{opacity:.85;font-size:20px;font-style:normal}.match-board .blue{background:var(--team-blue)}.match-board .coral{background:var(--team-coral);color:var(--team-b-ink)}.match-board small{font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);white-space:nowrap;font-weight:800}.party-board{justify-content:center;gap:var(--space-1);flex-wrap:wrap;max-width:min(560px,46vw)}.party-board span{align-items:center;gap:var(--space-1);padding:3px var(--space-3) 3px 6px;border-radius:var(--radius-md);background:var(--surface-raised);font-family:var(--font-display);font-size:var(--text-sm);font-weight:700;line-height:1.1;display:flex}.party-board b{font-size:var(--text-xs);color:var(--ink-soft)}.party-board .out{opacity:.4;text-decoration:line-through}.party-board .holder{outline:2px solid var(--coral-400);background:#ffe3d6}.goal-banner{z-index:var(--z-banner);font-family:var(--font-display);color:var(--sun-400);-webkit-text-stroke:5px var(--cobalt-800);paint-order:stroke fill;text-shadow:0 6px 12px #17395f66;pointer-events:none;animation:goal-pop .45s var(--ease-pop);font-size:clamp(64px,12vw,150px);font-weight:800;line-height:1;position:absolute;top:40%;left:50%;transform:translate(-50%,-50%)rotate(-4deg)}.goal-banner.coral{color:var(--team-b-banner);-webkit-text-stroke-color:var(--team-b-banner-edge)}@keyframes goal-pop{0%{opacity:0;transform:translate(-50%,-50%)rotate(-4deg)scale(.3)}to{opacity:1;transform:translate(-50%,-50%)rotate(-4deg)scale(1)}}.goal-flash{z-index:var(--z-banner);pointer-events:none;background:var(--team-blue);opacity:0;animation:.7s ease-out goal-flash;position:absolute;inset:0}.goal-flash.coral{background:var(--team-coral)}@keyframes goal-flash{0%{opacity:.45}to{opacity:0}}.reduced-motion .goal-flash{animation:none}.replay-banner{left:var(--hud-side);bottom:calc(var(--safe-bottom) + 22px);z-index:var(--z-banner);max-width:calc((100% - 2 * var(--hud-side)) / var(--hud-scale));background:var(--navy-950);color:var(--ink-on-color);box-shadow:var(--lift);font:800 var(--fs-md)/1 var(--font-display);border-radius:16px;align-items:stretch;display:flex;position:absolute;overflow:hidden}.replay-banner .rb-tag{background:var(--coral-600);letter-spacing:.08em;text-transform:uppercase;flex:none;align-items:center;gap:8px;padding:0 14px;display:flex}.replay-banner .rb-tag i{background:var(--ink-on-color);border-radius:50%;width:10px;height:10px;animation:1s steps(2,jump-none) infinite rb-blink}@keyframes rb-blink{0%{opacity:1}to{opacity:.2}}.reduced-motion .replay-banner .rb-tag i{animation:none}.replay-banner .rb-goal{border-left:6px solid #0000;border-image:var(--team-blue) 1;white-space:nowrap;align-items:center;gap:12px;min-width:0;padding:10px 14px;display:flex}.replay-banner.coral .rb-goal{border-image-source:var(--team-coral)}.replay-banner .rb-goal b{text-overflow:ellipsis;min-width:0;font:inherit;text-transform:uppercase;letter-spacing:.04em;overflow:hidden}.replay-banner .rb-goal strong{font-size:calc(22px * var(--text-scale));font-variant-numeric:tabular-nums;flex:none}.replay-banner .rb-skip{background:var(--cream-50);min-height:40px;color:var(--ink);font:inherit;cursor:pointer;border:0;border-radius:12px;flex:none;align-items:center;gap:8px;margin:6px;padding:0 14px;display:inline-flex}@media (max-width:600px){.replay-banner{grid-template-columns:auto minmax(0,1fr);display:grid}.replay-banner .rb-skip{grid-column:1/-1;justify-self:start}}.hud-replay :is(.hud-legend,.hud-dials,.touch-controls,.hud-callout){visibility:hidden}.countdown{z-index:2;pointer-events:none;font-family:var(--font-display);place-items:center;font-weight:800;display:grid;position:absolute;inset:0}.countdown .count-num{aspect-ratio:1;background:var(--sun-400);width:clamp(120px,22vmin,200px);color:var(--navy-900);box-shadow:0 0 0 6px var(--navy-900), var(--lift-lg);font-variant-numeric:tabular-nums;animation:count-in .7s var(--ease-pop) both;border-radius:50%;place-items:center;font-size:clamp(72px,14vmin,128px);line-height:1;display:grid}.countdown .count-go{border-radius:var(--radius-md);background:var(--slab);color:var(--navy-900);box-shadow:0 0 0 6px var(--navy-900), var(--bevel), var(--lift-lg);letter-spacing:.02em;animation:go-in .8s var(--ease-pop) both;padding:.12em .6em .18em;font-size:clamp(56px,11vmin,104px);line-height:1}@keyframes count-in{0%{opacity:0;transform:scale(.35)}30%{opacity:1;transform:scale(1.12)}55%,80%{opacity:1;transform:scale(1)}to{opacity:.85;transform:scale(.9)}}@keyframes go-in{0%{opacity:0;transform:scale(.5)rotate(-6deg)}25%{opacity:1;transform:scale(1.1)rotate(2deg)}45%,75%{opacity:1;transform:scale(1)rotate(0)}to{opacity:0;transform:scale(1.05)}}.driving-hint,.nearby-contract{left:50%;bottom:calc(var(--hud-bottom) + var(--safe-bottom) + 92px);z-index:var(--z-hud-float);width:min(440px, calc(100% - 2 * var(--hud-side)));border-radius:var(--radius-md);background:var(--surface-paper);box-shadow:var(--bevel), var(--lift);position:absolute;transform:translate(-50%)}.driving-hint{padding:var(--space-3) var(--space-4) var(--space-1);pointer-events:auto}.driving-hint>div{align-items:center;gap:var(--space-3);display:flex}.driving-hint>div>.icon{width:26px;height:26px;color:var(--cobalt-600)}.driving-hint small{font-size:var(--text-2xs);letter-spacing:.06em;color:var(--ink-soft);margin-bottom:2px;font-weight:800;display:block}.driving-hint strong{font-size:var(--text-sm);font-weight:700;line-height:1.45;display:block}.driving-hint>.text-button{font-size:var(--text-sm);color:var(--ink-soft);margin-left:34px}.nearby-contract{align-items:center;gap:var(--space-3);width:auto;max-width:calc(100% - 2 * var(--hud-side));padding:var(--space-3) var(--space-4);background:var(--action-primary);color:var(--action-primary-ink);text-align:left;border:0;display:flex}.nearby-contract small{font-size:var(--text-xs);font-weight:700;display:block}.nearby-contract strong{font-family:var(--font-display);font-size:var(--text-md);margin-top:2px;display:block}.nearby-contract>.icon{width:20px;height:20px}.hud-bottom{left:50%;bottom:calc(var(--hud-bottom) + var(--safe-bottom));align-items:stretch;gap:var(--space-2);max-width:calc(100% - 2 * var(--hud-side));display:flex;position:absolute;transform:translate(-50%)}.car-status{min-width:0;padding:var(--space-3) 0;border-radius:var(--radius-md);background:var(--surface-ink);color:#fff;box-shadow:var(--lift);align-items:stretch;display:flex}.status-item{min-width:110px;padding:0 var(--space-4);align-content:center;gap:6px;display:grid;position:relative}.status-item+.status-item{border-left:1px solid #ffffff26}.status-item>span{align-items:center;gap:var(--space-1);font-family:var(--font-display);font-size:var(--text-xs);letter-spacing:.03em;font-weight:800;display:flex}.status-item>span .icon{width:16px;height:16px;color:var(--mint-400)}.status-item.boost>span .icon{color:var(--sun-400)}.status-item.pulse>span .icon{color:#c1b9f3}.status-meter{border-radius:var(--radius-pill);background:#426487;width:92px;height:7px;overflow:hidden}.status-meter i{border-radius:inherit;background:#8ad276;width:100%;height:100%;display:block}.status-meter .low{background:var(--coral-400)}.status-item.boost .status-meter i{background:var(--sun-400)}.status-item>strong{font-size:var(--text-xs);font-variant-numeric:tabular-nums}.status-item.pulse>strong{min-width:64px;font-size:var(--text-sm);color:#d3cafa}.status-item.pulse>strong.is-ready{color:#b6eda6}.status-item kbd{width:max-content;min-height:18px;box-shadow:none;background:#e4ecf2;padding:0 5px;font-size:10px}.speedometer{align-items:baseline;gap:var(--space-1);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--surface-ink);color:#fff;box-shadow:var(--lift);display:flex;position:relative}.speedometer>strong{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:44px;font-weight:800;line-height:1}.speedometer>span{font-size:var(--text-2xs);font-weight:800}.combo{right:0;bottom:calc(100% + var(--space-3));padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--sun-400);color:var(--ink);font-family:var(--font-display);font-size:var(--text-sm);white-space:nowrap;font-weight:800;position:absolute;transform:rotate(-4deg)}.control-strip{left:50%;bottom:max(4px, var(--safe-bottom));padding:2px var(--space-3);border-radius:var(--radius-pill);color:#fff;font-size:var(--text-2xs);white-space:nowrap;background:#10366cb0;font-weight:700;position:absolute;transform:translate(-50%)}.touch-controls{--touch-button:60px;left:max(var(--space-4), var(--safe-left));right:max(var(--space-4), var(--safe-right));bottom:max(var(--space-4), calc(var(--safe-bottom) + var(--space-2)));justify-content:space-between;align-items:flex-end;gap:var(--space-3);pointer-events:none;display:none;position:absolute}.touch-controls button{border-radius:var(--radius-md);background:var(--surface-paper);width:60px;height:60px;color:var(--ink);box-shadow:var(--bevel);-webkit-user-select:none;user-select:none;touch-action:none;pointer-events:auto;border:0;place-items:center;font-size:28px;font-weight:800;display:grid}.touch-controls button:active{box-shadow:var(--bevel-pressed);transform:translateY(2px)}.touch-controls .icon{width:28px;height:28px}.touch-steering,.touch-throttle{gap:var(--space-2);display:flex}.touch-throttle{flex-direction:column}.touch-powers{gap:var(--space-3);margin-left:auto;display:flex;position:relative}.touch-powers button{background:var(--action-primary);border-radius:50%}.hud:not([data-scheme=buttons]) .touch-powers button{width:68px;height:68px}#hud .touch-powers .touch-horn{right:0;bottom:calc(100% + var(--space-3));width:var(--tap);height:var(--tap);background:var(--action-secondary);position:absolute}#hud .touch-powers .touch-horn .icon{width:22px;height:22px}.touch-stick{pointer-events:none;opacity:.55;width:128px;height:128px;transition:opacity var(--dur-fast);background:#10366c30;border:3px solid #fff5e1b0;border-radius:50%;flex:none;position:relative;box-shadow:inset 0 0 0 12px #fff5e11a}.touch-stick i{background:var(--sun-400);border-radius:50%;width:56px;height:56px;margin:-28px;position:absolute;top:50%;left:50%;box-shadow:0 4px #10366c55,inset 0 -4px #0000001f}.touch-stick.is-active{z-index:var(--z-stick);opacity:1;transition:none;position:fixed;top:0;left:0;translate:-50% -50%}.hud[data-scheme=buttons] .touch-stick,.hud:not([data-scheme=buttons]) .touch-steering,.hud:not([data-scheme=buttons]) .touch-throttle{display:none}@media (pointer:coarse),(max-width:760px){.hud{--hud-bottom:var(--space-4)}.touch-controls{display:flex}.control-strip,.status-item kbd,.nearby-contract .keycap{display:none}}#app[data-input=touch] .hud{--hud-bottom:var(--space-4)}#app[data-input=touch] .touch-controls{display:flex}#app[data-input=touch] .control-strip,#app[data-input=touch] .status-item kbd,#app[data-input=touch] .nearby-contract .keycap{display:none}[data-match]:not([data-city]) .minimap,[data-match] .objective-progress,[data-match] .hud-navigation [data-action=contracts],[data-match] .status-item.health,[data-match] .nearby-contract{display:none!important}@media (orientation:portrait) and (max-width:760px){.hud,#app[data-input=touch] .hud{--hud-bottom:160px}.hud-left{right:calc(var(--hud-side) + 112px);max-width:none}.hud-tools{flex-direction:column-reverse;align-items:flex-end}.hud-navigation{flex-direction:row}.hud-mission{padding:var(--space-2) var(--space-3)}.hud-mission h2{font-size:var(--text-md)}.hud-mission p{display:none}.hud-title-group .round-button{width:var(--tap);height:var(--tap);border-radius:16px}.objective-progress{margin-left:0}.hud-clock{padding:var(--space-2) var(--space-3)}.hud-clock>.icon{display:none}.hud-clock strong{font-size:var(--text-xl)}.minimap{width:88px;padding:3px}.match-board,.party-board{top:calc(var(--hud-top) + 110px)}.match-board .team{min-width:58px;padding:2px var(--space-3)}.match-board .team strong{font-size:28px}.match-board small{display:none}.party-board{max-width:calc(100% - 2 * var(--hud-side));padding:4px}.party-board span{font-size:var(--text-xs);padding:2px var(--space-2) 2px 4px}.party-board b{display:none}.hud-bottom{width:calc(100% - 2 * var(--hud-side))}.car-status{padding:var(--space-2) 0;flex:1}.status-item{min-width:0;padding:0 var(--space-2);flex:1}.status-meter{width:100%}.speedometer>strong{font-size:30px}.driving-hint,.nearby-contract{top:calc(var(--hud-top) + 104px);bottom:auto;left:var(--hud-side);right:calc(var(--hud-side) + 3 * var(--tap) + 3 * var(--space-2));width:auto;max-width:none;transform:none}.driving-hint{padding:var(--space-2) var(--space-3) 0}.driving-hint>div>.icon{display:none}.driving-hint strong{font-size:var(--text-xs)}.driving-hint>.text-button{margin-left:0}}@media (orientation:landscape) and (max-height:560px){.hud{--hud-top:max(var(--space-2), var(--safe-top))}.hud-mission{padding:var(--space-1) var(--space-3)}.hud-mission h2{font-size:var(--text-md)}.hud-mission p{display:none}.hud-title-group .round-button{width:var(--tap);height:var(--tap);border-radius:16px}.objective-progress{padding:var(--space-1) var(--space-3);margin-left:52px}.hud-clock{padding:var(--space-1) var(--space-3)}.hud-clock strong{font-size:var(--text-xl)}.minimap{width:84px;padding:3px}.match-board .team strong{font-size:28px}.car-status{padding:var(--space-2) 0}.status-item{min-width:72px;padding:0 var(--space-2)}.status-meter{width:62px}.speedometer>strong{font-size:28px}.touch-controls{--touch-button:52px}.touch-controls button{width:52px;height:52px}.hud:not([data-scheme=buttons]) .touch-powers button{width:60px;height:60px}.touch-stick{width:112px;height:112px}.touch-throttle{flex-direction:row}.driving-hint,.nearby-contract{top:calc(var(--hud-top) + 84px);bottom:auto;left:var(--hud-side);width:min(380px,44%);transform:none}}@media (max-aspect-ratio:9/19){.hud,#app[data-input=touch] .hud{--hud-bottom:176px}}@media (min-aspect-ratio:21/9){.hud-left{max-width:34vw}:where([data-match]) .hud-left{max-width:min(34vw, calc(50% - min(280px, 23vw) - var(--space-3) - var(--hud-side)))}.hud-bottom{max-width:60vw}}.hud .hud-title-group .round-button,.hud .hud-navigation .round-button{background:var(--glass);width:48px;height:48px;color:var(--ink);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--bevel-sm);border-radius:16px}.hud .hud-title-group .round-button .icon,.hud .hud-navigation .round-button .icon{stroke-width:2.2px;width:22px;height:22px}.hud .hud-title-group [data-action=pause]{transition:opacity var(--dur) var(--ease-out)}#app:is([data-device=keyboard],[data-device=gamepad]):not([data-pointing]) .hud .hud-title-group [data-action=pause]:not(:focus-visible){opacity:0}.hud-mission,.objective-progress,.hud-clock{background:var(--glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--bevel-sm);border-radius:16px}[data-match] .hud-mission{align-self:center;padding:7px 14px}[data-match] .hud-mission h2{font:800 var(--fs-sm)/1.1 var(--font-display)}[data-match] .hud-mission :is(small,p){font-size:var(--fs-cap);font-weight:700}.hud-camera{background:var(--glass);min-height:48px;color:var(--ink);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--bevel-sm);font:800 var(--fs-sm)/1 var(--font-display);white-space:nowrap;pointer-events:auto;border:0;border-radius:16px;align-items:center;gap:8px;padding:0 12px;display:inline-flex}.hud-camera>.icon{stroke-width:2.2px;width:22px;height:22px}.hud-camera .g{transform:scale(.85)}[data-match] .hud-clock,[data-match] .hud-navigation [data-action=tutorial],[data-match] .hud-bottom,[data-match] .control-strip{display:none}@media (pointer:fine) and (min-width:761px){#app:not([data-input=touch])[data-match] .hud-multi .control-strip{display:block}}#hud .match-board{box-shadow:none;background:0 0;border-radius:0;flex-direction:column;gap:4px;padding:0}.match-board .bug-row{box-shadow:var(--bevel-sm), var(--lift);border-radius:16px;align-items:stretch;display:flex;overflow:hidden}#hud .match-board .team{min-width:92px;color:var(--ink-on-color);font:800 calc(30px * var(--text-scale))/1 var(--font-display);border-radius:0;gap:8px;padding:0 14px}#hud .match-board .coral{color:var(--team-b-ink)}#hud .match-board .blue{justify-content:flex-start}#hud .match-board .coral{justify-content:flex-end}#hud .match-board .team strong{font-size:inherit}#hud .match-board .team i{font-size:calc(17px * var(--text-scale));opacity:.95}.match-board .team b{font:800 var(--fs-cap)/1 var(--font-display);letter-spacing:.06em;text-transform:uppercase;opacity:.9}.bug-clock{background:var(--navy-950);min-width:84px;color:var(--ink-on-color);font:800 calc(24px * var(--text-scale))/1 var(--font-display);font-variant-numeric:tabular-nums;white-space:nowrap;place-items:center;padding:6px 12px;display:grid}.bug-clock.urgent{color:var(--coral-300)}#hud .bug-limit{border-radius:var(--radius-pill);background:var(--glass);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:var(--bevel-sm);color:var(--ink);font:800 var(--fs-cap)/1 var(--font-display);letter-spacing:.06em;text-transform:uppercase;padding:3px 10px}#hud .bug-limit:empty{display:none}.party-top{top:var(--hud-top);z-index:3;flex-direction:column;align-items:center;gap:5px;max-width:min(560px,46vw);display:flex;position:absolute;left:50%;transform:translate(-50%)}.party-clock{border-radius:var(--radius-pill);background:var(--navy-950);color:var(--ink-on-color);font:800 calc(22px * var(--text-scale))/1 var(--font-display);font-variant-numeric:tabular-nums;box-shadow:var(--lift);align-items:center;gap:8px;padding:5px 14px 5px 8px;display:flex}.party-clock .icon{width:20px;height:20px;color:var(--sun-300)}.party-clock.urgent{color:var(--coral-300)}.party-clock{position:relative}.party-clock .fuse{background:conic-gradient(var(--coral-400) 0 var(--v,100%), var(--white-a20) var(--v,100%) 100%);width:28px;height:28px;-webkit-mask:radial-gradient(circle, transparent 10px, var(--ink) 11px);-webkit-mask:radial-gradient(circle, transparent 10px, var(--ink) 11px);mask:radial-gradient(circle, transparent 10px, var(--ink) 11px);border-radius:50%;margin-top:-14px;display:none;position:absolute;top:50%;left:4px}.party-clock.fused .fuse{display:block}.party-clock.fused{padding-left:10px}.lives{border-radius:var(--radius-pill);background:var(--glass);box-shadow:var(--bevel-sm);color:var(--coral-500);font:800 calc(18px * var(--text-scale))/1 var(--font-display);gap:4px;padding:3px 10px;display:flex}.lives i{font-style:normal}.lives i.lost{color:var(--ink-a12)}.share{background:var(--ink-a12);width:min(300px,100%);height:14px;box-shadow:0 0 0 3px var(--cream-50), var(--lift);border-radius:7px;display:flex;overflow:hidden}.share i{height:100%;display:block}#hud .party-board{z-index:auto;max-width:100%;box-shadow:none;background:0 0;border-radius:0;gap:4px;padding:0;position:static;transform:none}#hud .party-board .leader{border-radius:var(--radius-pill);background:var(--glass);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);height:30px;box-shadow:var(--bevel-sm);font:800 var(--fs-cap)/1 var(--font-display);gap:6px;padding:0 10px 0 4px}.party-board .leader i{background:var(--chip);width:22px;height:22px;color:var(--navy-950);font:800 calc(12px * var(--text-scale))/1 var(--font-display);border-radius:50%;place-items:center;font-style:normal;display:grid}#hud .party-board .leader b{font:inherit;color:var(--ink)}#hud .party-board .leader .mark{color:var(--ink);font:800 calc(12px * var(--text-scale))/1 var(--font-body);text-decoration:none}#hud .party-board .leader.me{box-shadow:0 0 0 3px var(--sun-400), var(--bevel-sm)}#hud .party-board .leader.holder{outline:2px solid var(--coral-400)}.car-tags{z-index:1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.car-tag{border-radius:var(--radius-pill);background:var(--glass);min-width:24px;height:24px;box-shadow:var(--bevel-sm);color:var(--ink);font:800 calc(12px * var(--text-scale))/1 var(--font-body);place-items:center;padding:0 4px;text-decoration:none;display:grid;position:absolute;top:0;left:0}.car-tag.me{box-shadow:0 0 0 3px var(--sun-400), var(--bevel-sm)}.car-tag[hidden]{display:none}.hud-callout{z-index:var(--z-hud-float);max-width:calc(100% - 2 * var(--hud-side));border-radius:var(--radius-pill);background:var(--glass-dark);color:var(--ink-on-color);font:800 var(--fs-md)/1.2 var(--font-display);box-shadow:var(--lift);pointer-events:none;align-items:center;gap:10px;padding:8px 18px 8px 8px;display:flex;position:absolute;top:36%;left:50%;transform:translate(-50%,-50%)}.hud-callout .disc{background:var(--action-primary);width:36px;height:36px;color:var(--action-primary-ink);border-radius:50%;flex:none;place-items:center;display:grid}.hud-callout .disc .icon{width:20px;height:20px}.hud-skip{left:50%;bottom:calc(var(--safe-bottom) + 24%);z-index:var(--z-banner);min-height:var(--tap);border-radius:var(--radius-pill);background:var(--glass-dark);color:var(--ink-on-color);font:800 var(--fs-md)/1 var(--font-display);box-shadow:var(--lift);pointer-events:auto;border:0;align-items:center;gap:10px;padding:6px 18px 6px 8px;display:inline-flex;position:absolute;transform:translate(-50%)}#app[data-device=touch] .hud-skip{padding-left:18px}.hud-legend,.hud-dials{bottom:calc(12px + var(--safe-bottom));display:none;position:absolute}[data-match] .hud-legend{left:var(--hud-side);background:var(--glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--bevel-sm);border-radius:18px;flex-direction:column;gap:5px;padding:10px 12px;display:flex}.hud-legend>div{color:var(--ink);font:800 var(--fs-sm)/1 var(--font-display);align-items:center;gap:8px;display:flex}.hud-legend .gs{min-width:calc(62px * var(--text-scale));gap:3px;display:inline-flex}.hud-legend>small{color:var(--ink-soft);font:700 var(--fs-cap)/1.2 var(--font-body);margin-top:2px}[data-match] .hud-dials{right:calc(14px + var(--safe-right));align-items:flex-end;gap:12px;display:flex}.dial{--v:0%;background:var(--glass-dark);width:88px;height:88px;color:var(--ink-on-color);box-shadow:var(--lift);border-radius:50%;place-items:center;display:grid;position:relative}.dial:before{content:"";background:conic-gradient(var(--sun-400) 0 var(--v), var(--white-a20) var(--v) 100%);-webkit-mask:radial-gradient(circle, transparent 31px, var(--ink) 32px);-webkit-mask:radial-gradient(circle, transparent 31px, var(--ink) 32px);mask:radial-gradient(circle, transparent 31px, var(--ink) 32px);border-radius:50%;position:absolute;inset:6px}.dial.full:before{filter:drop-shadow(0 0 6px var(--sun-400))}.dial>.icon{stroke-width:2.4px;width:28px;height:28px;position:relative}.dial>b{font:800 calc(12px * var(--text-scale))/1 var(--font-display);margin-top:12px;position:absolute;top:50%}.dial>.glyph{position:absolute;bottom:-8px}.dial.small{width:68px;height:68px}.dial.small:before{background:conic-gradient(var(--cobalt-300) 0 var(--v), var(--white-a20) var(--v) 100%);-webkit-mask:radial-gradient(circle, transparent 22px, var(--ink) 23px);-webkit-mask:radial-gradient(circle, transparent 22px, var(--ink) 23px);mask:radial-gradient(circle, transparent 22px, var(--ink) 23px)}.dial.small>.icon{width:24px;height:24px}.hud-settled .hud-legend,#app[data-input=touch] :is(.hud-legend,.hud-dials){display:none!important}@media (pointer:coarse),(max-width:760px){.hud-legend,.hud-dials{display:none!important}}.touch-powers .lb,.stick-hint{display:none}#hud:not([data-scheme=buttons]) .touch-powers{flex:none;width:210px;height:210px;display:block;position:relative}#hud:not([data-scheme=buttons]) .touch-powers button{box-shadow:var(--bevel), var(--lift);border-radius:50%;position:absolute}#hud:not([data-scheme=buttons]) .touch-powers .touch-pulse{background:var(--action-primary);width:92px;height:92px;color:var(--action-primary-ink);bottom:34px;right:0}#hud:not([data-scheme=buttons]) .touch-powers .touch-pulse .icon{width:40px;height:40px}#hud:not([data-scheme=buttons]) .touch-powers .touch-boost{background:var(--action-structure);width:74px;height:74px;color:var(--ink-on-color);bottom:20px;right:104px}#hud:not([data-scheme=buttons]) .touch-powers .touch-boost .icon{width:32px;height:32px}#hud:not([data-scheme=buttons]) .touch-powers .touch-horn{background:var(--action-secondary);width:54px;height:54px;color:var(--ink);bottom:124px;right:120px}#hud:not([data-scheme=buttons]) .touch-powers .touch-horn .icon{width:24px;height:24px}.touch-boost,.touch-pulse{--v:100%}#hud[data-scheme=buttons] :is(.touch-boost,.touch-pulse){position:relative}#hud :is(.touch-boost,.touch-pulse):before{content:"";pointer-events:none;background:conic-gradient(var(--sun-400) 0 var(--v), var(--white-a60) var(--v) 100%);-webkit-mask:radial-gradient(closest-side, transparent calc(100% - 2px), var(--ink) calc(100% - 1px));-webkit-mask:radial-gradient(closest-side, transparent calc(100% - 2px), var(--ink) calc(100% - 1px));mask:radial-gradient(closest-side, transparent calc(100% - 2px), var(--ink) calc(100% - 1px));border-radius:50%;position:absolute;inset:-7px}#hud .touch-boost.full:before{filter:drop-shadow(0 0 7px var(--sun-400))}#hud .touch-pulse:before{background:conic-gradient(transparent 0 var(--v), var(--cobalt-600) var(--v) 100%);inset:-6px}#hud:not([data-scheme=buttons]) .touch-powers .lb{background:var(--glass-dark);color:var(--ink-on-color);font:800 calc(12px * var(--text-scale))/1.1 var(--font-display);white-space:nowrap;pointer-events:none;border-radius:8px;padding:2px 8px;display:block;position:absolute;bottom:-18px;left:50%;transform:translate(-50%)}#hud .touch-stick:not(.is-active){opacity:1;border:3px dashed var(--white-a60);box-shadow:none;background:0 0}#hud .touch-stick:not(.is-active) i{opacity:.55}#hud:not([data-scheme=buttons]) .stick-hint{background:var(--glass-dark);color:var(--ink-on-color);font:800 calc(12px * var(--text-scale))/1.2 var(--font-display);white-space:nowrap;border-radius:8px;padding:2px 10px;display:block;position:absolute;bottom:calc(100% + 8px);left:0}#hud .touch-stick.is-active .stick-hint,.hud-settled .stick-hint{display:none!important}@media (max-width:760px),(orientation:landscape) and (max-height:560px){.hud-camera{justify-content:center;width:48px;padding:0}#hud-camera-name,.hud-camera .glyph{display:none}}@media (orientation:portrait) and (max-width:760px){.party-top{top:calc(var(--hud-top) + 110px);max-width:calc(100% - 2 * var(--hud-side))}#hud .match-board .team{min-width:64px;font-size:calc(24px * var(--text-scale));padding:0 10px}.match-board .team b{display:none}.bug-clock{min-width:64px;font-size:calc(20px * var(--text-scale))}#hud .bug-limit{display:block}#hud .bug-limit:empty{display:none}#hud:not([data-scheme=buttons]) .touch-powers{width:140px;height:120px}#hud:not([data-scheme=buttons]) .touch-powers .touch-pulse{width:72px;height:72px;bottom:10px}#hud:not([data-scheme=buttons]) .touch-powers .touch-boost{width:58px;height:58px;bottom:0;right:80px}#hud:not([data-scheme=buttons]) .touch-powers .touch-horn{width:46px;height:46px;bottom:70px;right:88px}#hud:not([data-scheme=buttons]) .touch-powers .lb,#app:not([data-match]) .stick-hint{display:none}}@media (orientation:landscape) and (max-height:560px){#hud .match-board .team{min-width:74px;font-size:calc(24px * var(--text-scale));padding:0 10px}.match-board .team b,[data-match] .hud-mission :is(small,p){display:none}.bug-clock{min-width:68px;font-size:calc(20px * var(--text-scale))}.share{width:220px}#hud .party-board .leader{height:28px}.hud-callout{font-size:var(--fs-sm);top:30%}#hud:not([data-scheme=buttons]) .touch-powers{width:180px;height:156px}#hud:not([data-scheme=buttons]) .touch-powers .touch-pulse{width:80px;height:80px;bottom:30px}#hud:not([data-scheme=buttons]) .touch-powers .touch-boost{width:64px;height:64px;bottom:18px;right:90px}#hud:not([data-scheme=buttons]) .touch-powers .touch-horn{width:48px;height:48px;bottom:92px;right:104px}#hud:not([data-scheme=buttons]) .touch-powers .touch-horn .lb{display:none}}#game-dialog.pause-dialog[open]{display:flex}#game-dialog.pause-dialog{width:100vw;max-width:none;height:100dvh;max-height:none;padding:calc(var(--safe-top) + 16px) var(--gutter) calc(var(--slab-h) + var(--hintbar-h) + var(--safe-bottom) + 30px);box-shadow:none;background:0 0;border-radius:0;flex-direction:column;align-items:center;margin:0}#app[data-device=touch] #game-dialog.pause-dialog{padding-bottom:calc(var(--slab-h) + var(--safe-bottom) + 30px)}#game-dialog.pause-dialog::backdrop{background:var(--scrim-strong);-webkit-backdrop-filter:blur(3px)saturate(.8);backdrop-filter:blur(3px)saturate(.8)}.pause-dialog .dialog-top{border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--cream-50);width:min(720px,100%);margin:auto 0 0;padding:16px 16px 6px;position:static}.pause-dialog .dialog-top>div{box-shadow:none;text-align:left;background:0 0;padding:0}.pause-dialog .dialog-top h2{color:var(--ink);font:800 var(--fs-2xl)/1 var(--font-display)}.pause-dialog .dialog-body{border-radius:0 0 var(--radius-lg) var(--radius-lg);background:linear-gradient(var(--cream-50), var(--cream-200));width:min(720px,100%);box-shadow:var(--lift);gap:12px;margin:0 0 auto;padding:6px 16px 16px}.pause-grid{grid-template-columns:1fr 1fr;align-items:start;gap:12px;display:grid}.pause-card{background:var(--cream-50);box-shadow:var(--bevel-sm);border-radius:18px;flex-direction:column;gap:8px;padding:12px;display:flex}.pause-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.pause-head .chip .icon{width:16px;height:16px}.pause-goal{color:var(--ink);font:800 var(--fs-lg)/1.15 var(--font-display)}.pause-score{flex-wrap:wrap;gap:6px;display:flex}.pause-score .chip{background:var(--cream-50);color:var(--ink);box-shadow:var(--bevel-sm)}.pause-tip{color:var(--ink-muted);font:700 var(--fs-sm)/1.4 var(--font-body)}.pause-ctl{color:var(--ink);font:800 var(--fs-sm)/1.2 var(--font-display);grid-template-columns:auto 1fr;align-items:center;gap:6px 10px;display:grid}.pause-ctl>.icon{width:22px;height:22px;color:var(--cobalt-700)}#app:not([data-device=touch]) .touch-only{display:none}.pause-acts{flex-direction:column;gap:8px;display:flex}.pause-acts>.btn{min-height:52px;font-size:var(--fs-md);justify-content:flex-start}.pause-dialog .pause-more{gap:8px}.pause-dialog .pause-more .btn{flex:120px;justify-content:flex-start}.pause-slot .slab .lbl strong{text-transform:uppercase}.pause-dialog .dialog-hints{border-radius:0;margin:0;position:absolute;bottom:0;left:0;right:0}#game-dialog.pause-dialog{overflow:hidden}.pause-dialog .dialog-top{flex:none}.pause-dialog .dialog-body{overscroll-behavior:contain;flex:0 auto;min-height:0;overflow:auto}@media (max-width:640px){.pause-grid{grid-template-columns:1fr}.pause-dialog .pause-slot{left:var(--edge-x)}.pause-slot .slab{flex:1;min-width:0}}@media (max-height:460px){#game-dialog.pause-dialog{padding-top:calc(var(--safe-top) + 8px)}.pause-dialog .dialog-top{padding:10px 12px 4px}.pause-dialog .dialog-top h2{font-size:var(--fs-xl)}.pause-dialog .dialog-body{gap:8px;padding:4px 12px 12px}.pause-grid{gap:8px}.pause-tip{display:none}.pause-acts{gap:6px}.pause-acts>.btn{min-height:var(--tap);font-size:var(--fs-sm)}}#hud :is(.hud-left,.match-board,.party-top,.hud-callout){scale:var(--hud-scale);transform-origin:0 0}#hud .hud-right{scale:var(--hud-scale);transform-origin:100% 0}#hud :is(.hud-legend,.hud-bottom,.hud-skip,.replay-banner){scale:var(--hud-scale);transform-origin:0 100%}#hud .hud-dials{scale:var(--hud-scale);transform-origin:100% 100%}#hud .touch-powers,#hud .touch-throttle{scale:var(--touch-scale);transform-origin:100% 100%}#hud .touch-steering{scale:var(--touch-scale);transform-origin:0 100%}#hud[data-scheme=buttons] :is(.touch-steering,.touch-powers,.touch-throttle){scale:none}#hud[data-scheme=buttons] .touch-controls button{width:calc(var(--touch-button) * var(--touch-scale));height:calc(var(--touch-button) * var(--touch-scale))}#hud[data-scheme=buttons] .touch-powers .touch-horn{width:calc(var(--tap) * var(--touch-scale));height:calc(var(--tap) * var(--touch-scale))}html[data-hand=left] #hud .touch-controls{flex-direction:row-reverse}html[data-hand=left] #hud .touch-powers{scale:calc(-1 * var(--touch-scale)) var(--touch-scale);transform-origin:0 100%;translate:calc(100% * var(--touch-scale)) 0;margin-left:0;margin-right:auto}html[data-hand=left] #hud .touch-powers button{scale:-1 1}html[data-hand=left] #hud[data-scheme=buttons] .touch-powers{translate:100%;scale:-1 1}html[data-hand=left] #hud .touch-steering{transform-origin:100% 100%}html[data-hand=left] #hud .touch-throttle{transform-origin:0 100%}html[data-hand=left] #hud .stick-hint{left:auto;right:0}html[data-hand=left] #hud .stick-hint.left,html:not([data-hand=left]) #hud .stick-hint.right,html[data-flash=off] .goal-flash{display:none!important}#game-dialog.games-dialog.in-shell{width:100vw;max-width:none;height:100dvh;max-height:none;box-shadow:none;pointer-events:none;background:0 0;border-radius:0;margin:0;padding:0;animation:none;inset:0;overflow:visible}.games-dialog .dialog-body{display:block;position:absolute;inset:0}.games-dialog :is(.venues,.vpanel,.slot,.spanel,.dialog-top,.dialog-hints){pointer-events:auto}#game-dialog[data-kind=hub] .dialog-top{clip-path:inset(50%);width:1px;height:1px;margin:0;padding:0;position:absolute;overflow:hidden}#game-dialog[data-kind=hub] .dialog-top .round-button{display:none}.games-dialog .dialog-hints{z-index:24;padding-bottom:calc(var(--space-1) + var(--safe-bottom));border-radius:0;margin:0;position:fixed;bottom:0;left:0;right:0}.icon.flip{transform:scaleX(-1)}.stage-space{pointer-events:none;left:0;top:calc(var(--topbar-h) + var(--safe-top));right:calc(var(--edge-r) + 440px);bottom:calc(var(--hintbar-h) + var(--safe-bottom) + 160px);position:absolute}.preview-space{right:calc(var(--edge-r) + 472px);bottom:calc(var(--hintbar-h) + var(--safe-bottom) + 24px);top:calc(var(--topbar-h) + var(--safe-top) + 96px)}.venue-art{z-index:-1;background:var(--sky-200);position:fixed;inset:0}.venue-art img{object-fit:cover;filter:saturate(1.05);width:100%;height:100%}.venue-art .venue-still{position:absolute;inset:0}.venue-art .venue-still canvas{object-fit:cover;width:100%;height:100%}.venue-art .venue-still canvas:not([data-rendered]),.venue-art .preview-fallback{visibility:hidden}@media (max-width:640px) and (orientation:portrait){.venue-art .venue-still{height:50vh;bottom:auto}}.venue-art:after{content:"";background:linear-gradient(90deg, transparent 45%, var(--ink-a20));position:absolute;inset:0}.games .pin{z-index:5;border-radius:var(--radius-pill);background:var(--action-primary);color:var(--action-primary-ink);box-shadow:var(--bevel-sm), 0 6px 14px var(--ink-a20);font:800 var(--fs-md)/1 var(--font-display);white-space:nowrap;pointer-events:none;align-items:center;gap:8px;padding:6px 16px 6px 6px;display:inline-flex;position:fixed;top:0;left:-999px;transform:translate(-50%,-100%)}.games .pin:after{content:"";border:8px solid #0000;border-bottom:0;border-top-color:var(--sun-500);margin-left:-8px;position:absolute;bottom:-8px;left:50%}.games .pin .disc{background:var(--navy-900);width:34px;height:34px;color:var(--sun-300);border-radius:50%;place-items:center;display:grid}.games .pin .disc .icon{width:18px;height:18px}.games .pin{border-radius:16px}.games .pin .pt{flex-direction:column;gap:3px;display:flex}.games .pin .pt small{font:700 var(--fs-cap)/1.1 var(--font-body);opacity:.85}.games.still .pin{display:none}.venues{z-index:20;left:var(--edge-x);bottom:calc(var(--hintbar-h) + var(--safe-bottom) + 14px);align-items:flex-end;gap:6px;display:flex;position:absolute}.venues .vcards{align-items:flex-end;gap:6px;display:flex}.venues>.glyph{margin-bottom:30px}.vstep{display:none}.vcard{width:94px;height:112px;color:var(--ink-on-color);text-align:left;box-shadow:0 0 0 3px var(--cream-50), var(--lift);background:var(--cobalt-600);transition:width var(--dur) var(--ease-out), height var(--dur) var(--ease-out);border:0;border-radius:20px;flex-direction:column;justify-content:flex-end;padding:8px;display:flex;position:relative;overflow:hidden}.vcard img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.vcard:before{content:"";z-index:1;background:linear-gradient(transparent 30%, var(--glass-dark-solid) 92%);position:absolute;inset:0}.vcard>.vt{z-index:2;position:relative}.vcard strong{font:800 calc(15px * var(--text-scale))/1.05 var(--font-display);text-shadow:0 2px 0 var(--navy-950);display:block}.vcard small{color:var(--cream-50);font:700 var(--fs-cap)/1.1 var(--font-body);text-shadow:0 1px 0 var(--navy-950);margin-top:3px;display:block}.vcard[aria-selected=true]{width:136px;height:140px;box-shadow:0 0 0 4px var(--sun-400), var(--lift)}.vcard[aria-selected=true] strong{font-size:calc(18px * var(--text-scale))}.vcard>.chip.new{z-index:2;position:absolute;top:7px;left:7px}.chip .icon{stroke-width:2.2px;width:15px;height:15px}.chip.light{background:var(--cream-50);color:var(--ink);box-shadow:var(--bevel-sm)}.chip.dark{background:var(--glass-dark-solid);color:var(--ink-on-color)}.chip.new{background:var(--coral-900);color:var(--ink-on-color);letter-spacing:.07em;text-transform:uppercase}.vpanel{z-index:20;top:calc(var(--topbar-h) + var(--safe-top) + 8px);right:var(--edge-r);width:420px;bottom:calc(var(--hintbar-h) + var(--safe-bottom) + var(--slab-h) + 28px);flex-direction:column;gap:10px;padding:16px 16px 14px;display:flex;position:absolute;overflow:hidden}.vpanel>*{flex-shrink:0}.vhead{align-items:center;gap:12px;display:flex}.vhead .disc{background:var(--action-structure);width:52px;height:52px;color:var(--ink-on-color);box-shadow:var(--bevel-sm);border-radius:16px;flex-shrink:0;place-items:center;display:grid}.vhead .disc .icon{width:26px;height:26px}.vhead .vname{min-width:0}.vhead .h{font:800 var(--fs-xl)/1 var(--font-display);display:block}.vhead small{color:var(--ink-soft);font:700 var(--fs-sm)/1.3 var(--font-body);margin-top:3px;display:block}.vhead .chip{align-self:flex-start;margin-left:auto}.where{border-radius:var(--radius-pill);background:var(--surface-sunken);box-shadow:inset 0 2px 4px var(--ink-a12);grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.where button{border-radius:var(--radius-pill);min-height:44px;color:var(--ink-muted);font:800 var(--fs-sm)/1 var(--font-display);background:0 0;border:0;justify-content:center;align-items:center;gap:7px;display:flex}.where button .icon{width:18px;height:18px}.where button[aria-pressed=true]{background:var(--action-structure);color:var(--ink-on-color);box-shadow:var(--bevel-sm)}.vpanel .modes{scrollbar-width:thin;flex-direction:column;flex:0 auto;gap:7px;min-height:64px;margin:-7px;padding:7px;display:flex;overflow-y:auto}.mode{background:var(--cream-50);color:var(--ink);box-shadow:var(--bevel-sm);text-align:left;border:0;border-radius:18px;flex-shrink:0;grid-template-columns:68px 1fr auto;align-items:center;gap:11px;padding:7px 12px 7px 7px;display:grid}.mode .art{background:var(--sky-200);border-radius:13px;width:68px;height:52px;overflow:hidden}.mode .art :is(img,svg){object-fit:cover;width:100%;height:100%;display:block}.mode .txt{min-width:0}.mode strong{font:800 calc(17px * var(--text-scale))/1.1 var(--font-display);align-items:center;gap:7px;display:flex}.mode .chip.new{min-height:22px;padding:0 8px}.meta{color:var(--ink-soft);font:700 var(--fs-cap)/1.2 var(--font-body);flex-wrap:wrap;gap:4px 10px;margin-top:4px;display:flex}.meta .kind{color:var(--cobalt-700);align-items:center;gap:4px;font-weight:800;display:inline-flex}.meta .kind svg{width:12px;height:12px}.mode .radio{width:26px;height:26px;box-shadow:inset 0 0 0 3px var(--ink-a20);border-radius:50%}.mode[aria-checked=true]{background:linear-gradient(var(--cream-50), var(--sun-200));box-shadow:0 0 0 3px var(--sun-400), var(--bevel-sm)}.mode[aria-checked=true]:focus-visible,#app[data-device=gamepad] .mode[aria-checked=true]:focus{box-shadow:0 0 0 3px var(--sun-400), 0 0 0 6px var(--focus-halo), var(--bevel-sm)}.mode[aria-checked=true] .radio{background:var(--cobalt-600);box-shadow:inset 0 0 0 3px var(--cobalt-600), inset 0 0 0 8px var(--cream-50)}.stats3{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.stats3>span{background:var(--cream-50);box-shadow:var(--bevel-sm);border-radius:14px;padding:8px 10px}.stats3 b{font:800 var(--fs-lg)/1 var(--font-display);font-variant-numeric:tabular-nums;display:block}.stats3 small{color:var(--ink-soft);font:700 var(--fs-cap)/1.2 var(--font-body)}.detail{border-top:2px dashed var(--ink-a12);flex-direction:column;gap:8px;margin-top:auto;padding-top:10px;display:flex}.detail .row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.legend{font:800 var(--fs-sm)/1 var(--font-display);flex-wrap:wrap;gap:6px 14px;display:flex}.legend>span{color:var(--ink-muted);align-items:center;gap:6px;display:inline-flex}.districts{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.district{min-width:0;font:800 var(--fs-cap)/1.1 var(--font-display);flex-direction:column;gap:4px;display:flex}.district .img{height:50px;box-shadow:0 0 0 2px var(--cream-50), var(--bevel-sm);background:var(--sky-200);border-radius:11px;position:relative;overflow:hidden}.district img{object-fit:cover;width:100%;height:100%}.district.locked .img img{filter:grayscale()brightness(1.1)contrast(.7);opacity:.65}.district .lockb{color:var(--ink);place-items:center;display:grid;position:absolute;inset:0}.district .lockb .icon{background:var(--cream-50);box-sizing:content-box;border-radius:50%;width:20px;height:20px;padding:3px}.district .dn{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.district .bar{background:var(--ink-a12);border-radius:3px;height:5px;overflow:hidden}.district .bar i{background:var(--mint-600);height:100%;display:block}.nextm{background:var(--cream-50);color:var(--ink);box-shadow:var(--bevel-sm);text-align:left;border:0;border-radius:16px;grid-template-columns:auto 1fr;align-items:center;gap:12px;padding:10px 12px;display:grid}.nextm .num{background:var(--action-structure);width:44px;height:44px;color:var(--ink-on-color);font:800 var(--fs-lg)/1 var(--font-display);border-radius:14px;place-items:center;display:grid}.nextm .num .icon{width:24px;height:24px}.nextm strong{font:800 var(--fs-md)/1.1 var(--font-display);display:block}.nextm small{color:var(--ink-soft);font:700 var(--fs-cap)/1.2 var(--font-body);flex-wrap:wrap;align-items:center;gap:4px;margin-top:3px;display:flex}.nextm .stars{color:var(--sun-500);display:inline-flex}.nextm .stars .icon{fill:currentColor;width:14px;height:14px}.choices{flex-direction:column;gap:8px;display:flex}.choice{background:var(--cream-50);color:var(--ink);box-shadow:var(--bevel-sm);text-align:left;border:0;border-radius:18px;grid-template-columns:48px 1fr;align-items:center;gap:12px;padding:10px 12px;display:grid}.choice .disc{background:var(--action-structure);width:48px;height:48px;color:var(--ink-on-color);border-radius:15px;place-items:center;display:grid}.choice .disc .icon{width:24px;height:24px}.choice strong{font:800 var(--fs-md)/1.1 var(--font-display);display:block}.choice small{color:var(--ink-soft);font:700 var(--fs-cap)/1.25 var(--font-body);margin-top:3px;display:block}.choice:disabled{opacity:.6}.phrases{flex-wrap:wrap;gap:6px;display:flex}.cuppath{background:var(--cream-50);box-shadow:var(--bevel-sm);border-radius:18px;justify-content:space-between;align-items:flex-end;gap:4px;padding:12px 10px 8px;display:flex}.cuppath .step{color:var(--ink-soft);font:800 var(--fs-cap)/1 var(--font-display);flex-direction:column;align-items:center;gap:5px;display:flex}.cuppath .step b{width:44px;height:calc(20px + var(--rise) * 7px);background:var(--action-structure);color:var(--ink-on-color);font:800 var(--fs-md)/1 var(--font-display);border-radius:12px;place-items:center;display:grid}.cuppath .step.champ b{background:var(--action-primary);color:var(--action-primary-ink)}.cuppath .step.now b{box-shadow:0 0 0 3px var(--sun-400)}.cuppath i{background:var(--ink-a20);border-radius:2px;flex:1;height:3px;margin-bottom:28px}.how{flex-direction:column;gap:8px;display:flex}.how>div{grid-template-columns:40px 1fr;align-items:center;gap:10px;display:grid}.how .disc{background:var(--sky-100);width:40px;height:40px;color:var(--cobalt-700);border-radius:13px;place-items:center;display:grid}.how .disc .icon{width:21px;height:21px}.how strong{font:800 var(--fs-sm)/1.15 var(--font-display);display:block}.how small{color:var(--ink-soft);font:700 var(--fs-cap)/1.25 var(--font-body);display:block}.hist{gap:4px;display:flex}.hist span{background:var(--ink-a08);width:26px;height:26px;font:800 var(--fs-cap)/1 var(--font-display);border-radius:8px;place-items:center;display:grid}.hist span.gold{background:var(--sun-300)}.games-slot .chipbtn .icon,.setup-slot .chipbtn .icon{stroke-width:2.2px;width:24px;height:24px;color:var(--cobalt-700)}#game-dialog.setup-dialog .dialog-top.subhead{z-index:25;top:calc(var(--topbar-h) + var(--safe-top) + 6px);left:var(--edge-x);align-items:center;gap:var(--space-3);background:0 0;margin:0;padding:0;display:flex;position:absolute;right:auto}.setup-dialog .dialog-top.subhead>div{box-shadow:none;text-align:left;background:0 0;flex:0 auto;padding:0}.setup-dialog .dialog-top.subhead h2{color:var(--ink);font:800 var(--fs-xl)/1 var(--font-display);text-shadow:0 1px 0 var(--cream-50), 0 0 12px var(--cream-50)}.subhead .back .arrow{background:var(--action-structure);width:38px;height:38px;color:var(--ink-on-color);border-radius:50%;place-items:center;display:grid}.subhead .back .icon{stroke-width:2.4px;width:20px;height:20px}.previewcap{z-index:6;left:var(--edge-x);top:calc(var(--topbar-h) + var(--safe-top) + 66px);flex-wrap:wrap;gap:6px;max-width:52vw;display:flex;position:absolute}.spanel{z-index:20;top:calc(var(--topbar-h) + var(--safe-top) + 8px);right:var(--edge-r);width:452px;bottom:calc(var(--hintbar-h) + var(--safe-bottom) + var(--slab-h) + 28px);scrollbar-width:thin;flex-direction:column;gap:6px;padding:14px 12px 12px;display:flex;position:absolute;overflow-y:auto}.spanel>*{flex-shrink:0}.mhead{grid-template-columns:84px 1fr;align-items:center;gap:12px;padding:0 4px 6px;display:grid}.mhead .art{width:84px;height:64px;box-shadow:0 0 0 3px var(--cream-50), var(--bevel-sm);background:var(--sky-200);border-radius:16px;overflow:hidden}.mhead .art :is(img,svg){object-fit:cover;width:100%;height:100%;display:block}.mhead strong{font:800 var(--fs-xl)/1 var(--font-display);display:block}.mhead small{color:var(--ink-soft);font:700 var(--fs-cap)/1.3 var(--font-body);margin-top:4px;display:block}.optrow{border-radius:18px;grid-template-columns:112px 1fr;align-items:center;gap:12px;padding:6px 8px;display:grid}.optrow:focus-within{background:var(--ink-a08)}.optrow>.cap{color:var(--ink-muted);line-height:1.25}.optrow>.cap small{color:var(--ink-soft);font:700 var(--fs-cap)/1.2 var(--font-body);letter-spacing:0;text-transform:none;margin-top:2px;display:block}.seg{flex-wrap:wrap;gap:6px;display:flex}.seg .small-choice{min-width:44px;min-height:var(--tap);background:var(--cream-50);color:var(--ink);font:800 var(--fs-sm)/1 var(--font-display);border-radius:14px;padding:0 12px}.seg .small-choice[aria-pressed=true]{background:var(--action-structure);color:var(--ink-on-color);box-shadow:var(--bevel-sm), inset 0 -3px 0 var(--cobalt-800)}.seg .small-choice[aria-pressed=true]:not(:focus-visible){outline:0}.seg .small-choice:disabled{filter:none;opacity:.55}.seg .small-choice[aria-pressed=true]:disabled{opacity:1}.players{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.pslot{min-height:60px;color:var(--ink-soft);font:800 var(--fs-cap)/1.1 var(--font-display);text-align:center;background:0 0;border:0;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:0;display:flex;position:relative}.pslot b{font-size:var(--fs-md)}.pslot.on{background:var(--action-structure);color:var(--ink-on-color);box-shadow:var(--bevel-sm)}.pslot.open{border:2.5px dashed var(--ink-a20)}.pslot .icon{width:18px;height:18px}.spanel .look-row{padding:0 8px}.note{background:var(--sky-100);color:var(--ink-muted);font:700 var(--fs-cap)/1.3 var(--font-body);border-radius:14px;align-items:center;gap:8px;margin:2px 0 0;padding:6px 10px;display:flex}.note .icon{width:18px;height:18px;color:var(--cobalt-600);flex-shrink:0}#game-dialog.online-dialog .dialog-top.subhead,#game-dialog.setup-dialog .dialog-top.subhead{z-index:25;top:calc(var(--topbar-h) + var(--safe-top) + 6px);left:var(--edge-x);align-items:center;gap:var(--space-3);background:0 0;margin:0;padding:0;display:flex;position:absolute;right:auto}.online-dialog .dialog-top.subhead>div{box-shadow:none;text-align:left;background:0 0;flex:0 auto;padding:0}.online-dialog .dialog-top.subhead h2{color:var(--ink);font:800 var(--fs-xl)/1 var(--font-display);text-shadow:0 1px 0 var(--cream-50), 0 0 12px var(--cream-50)}.opanel{z-index:20;top:calc(var(--topbar-h) + var(--safe-top) + 64px);right:var(--edge-r);width:min(760px, calc(100vw - var(--edge-x) - var(--edge-r)));bottom:calc(var(--hintbar-h) + var(--safe-bottom) + 12px);scrollbar-width:thin;pointer-events:auto;padding:16px;position:absolute;overflow-y:auto}.opanel .dialog-intro{font-size:var(--fs-sm)}.lobby-actions{background:linear-gradient(transparent, var(--cream-200) 30%);margin:0 -16px -16px;padding:12px 16px 16px;position:sticky;bottom:-16px}#app[data-device=touch] .opanel{bottom:calc(var(--safe-bottom) + 12px)}@media (max-width:640px) and (orientation:portrait){.opanel,#app[data-device=touch] .opanel{width:auto;left:10px;right:10px;bottom:calc(var(--nav-h) + var(--safe-bottom) + 10px);padding:12px}}@media (max-height:460px) and (orientation:landscape){.opanel{top:calc(var(--topbar-h) + var(--safe-top) + 58px)}}.online3,.lobby3{gap:var(--space-4);flex-direction:column;display:flex}.join-code{align-items:flex-end;gap:var(--space-3);padding:var(--space-3) var(--space-4);box-shadow:var(--bevel-sm);flex-wrap:wrap;display:flex}.join-code .online-join{flex:200px}.lobby3 .room-code strong{font-variant-numeric:tabular-nums}.lobby3 .room-players{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(118px,1fr));display:grid}.pcard{background:var(--cream-50);box-shadow:var(--bevel-sm);border-radius:18px;flex-direction:column;align-items:center;gap:2px;padding:6px 6px 8px;display:flex;position:relative}.pcard.me{box-shadow:0 0 0 3px var(--sun-400), var(--bevel-sm)}.pcard .pcar{aspect-ratio:168/104;background:var(--sky-100);border-radius:12px;width:100%}.pcard .pn{font:800 var(--fs-md)/1 var(--font-display);align-items:center;gap:6px;display:flex}.pcard .pn i{background:var(--chip);width:14px;height:14px;box-shadow:inset 0 -2px 0 var(--ink-a20);border-radius:50%}.pcard .crown{color:var(--sun-800);display:inline-grid}.pcard .crown .icon{width:18px;height:18px}.pcard small{min-height:1.2em;color:var(--ink-soft);font:700 var(--fs-cap)/1.2 var(--font-body)}.pcard.empty{border:2.5px dashed var(--ink-a20);min-height:120px;box-shadow:none;background:0 0;justify-content:center}.dots{gap:4px;display:inline-flex}.dots i{background:var(--cobalt-600);border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite dot-wait}.dots i:nth-child(2){animation-delay:.15s}.dots i:nth-child(3){animation-delay:.3s}@keyframes dot-wait{0%,80%,to{opacity:.25;transform:none}40%{opacity:1;transform:translateY(-3px)}}.reduced-motion .dots i{opacity:.7;animation:none}.searching{align-items:center;gap:var(--space-2);color:var(--ink-muted);font:800 var(--fs-sm)/1.2 var(--font-display);display:flex}.countdown-ring{align-items:center;gap:var(--space-3);color:var(--ink-muted);font:800 var(--fs-sm)/1.2 var(--font-display);display:flex}.countdown-ring b{width:52px;height:52px;color:var(--ink);font:800 var(--fs-lg)/1 var(--font-display);background:radial-gradient(circle, var(--cream-50) 58%, transparent 60%), conic-gradient(var(--cobalt-600) calc(var(--left) * 1turn), var(--ink-a12) 0);border-radius:50%;place-items:center;display:grid}.lobby-game{align-items:center;gap:var(--space-3);background:linear-gradient(var(--cream-50), var(--sun-200));box-shadow:0 0 0 3px var(--sun-400), var(--bevel-sm);border-radius:18px;grid-template-columns:96px 1fr;padding:8px;display:grid}.lobby-game .art{background:var(--sky-200);border-radius:13px;height:64px;overflow:hidden}.lobby-game .art :is(img,svg){object-fit:cover;width:100%;height:100%;display:block}.lobby-game strong{font:800 var(--fs-lg)/1.1 var(--font-display);display:block}.lobby-game small{color:var(--ink-soft);font:700 var(--fs-cap)/1.2 var(--font-body)}.lmodes{scrollbar-width:thin;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:6px;max-height:236px;margin:-3px;padding:7px;display:grid;overflow-y:auto}.lmode{background:var(--cream-50);color:var(--ink);box-shadow:var(--bevel-sm);text-align:left;border:0;border-radius:14px;flex-direction:column;gap:4px;padding:5px 5px 7px;display:flex}.lmode .art{background:var(--sky-200);border-radius:10px;height:52px;overflow:hidden}.lmode .art :is(img,svg){object-fit:cover;width:100%;height:100%;display:block}.lmode .nm{font:800 var(--fs-cap)/1.15 var(--font-display);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.lmode[aria-pressed=true]{background:linear-gradient(var(--cream-50), var(--sun-200));box-shadow:0 0 0 3px var(--sun-400), var(--bevel-sm)}.lmode:disabled:not([aria-pressed=true]){opacity:.55}.chat-presets{flex-wrap:wrap;gap:6px;display:flex}.chat-presets .say{min-height:var(--tap);font-size:var(--fs-sm);border:0}.lobby-actions{justify-content:flex-end;align-items:stretch;gap:var(--space-3);flex-wrap:wrap;display:flex}.lobby-actions .slab{flex:260px;max-width:420px}.lobby-actions .waiting-host{align-self:center;margin-right:auto}@media (max-width:1100px) and (min-width:641px),(max-height:560px) and (orientation:landscape),(max-width:640px) and (orientation:landscape){.vpanel{width:340px;overflow-y:auto}.vhead small,.mhead small{display:none}.venues{align-items:center}.venues>.glyph{margin-bottom:0}.vcard:not([aria-selected=true]){display:none}.vcard[aria-selected=true]{width:150px;height:76px}.vstep{background:var(--action-secondary);width:44px;height:44px;color:var(--cobalt-700);box-shadow:var(--bevel-sm);border:0;border-radius:50%;place-items:center;padding:0;display:grid}.vstep .icon{stroke-width:2.6px;width:20px;height:20px}.stage-space{right:calc(var(--edge-r) + 350px);bottom:calc(var(--hintbar-h) + var(--safe-bottom) + 110px)}.spanel{width:380px}.preview-space{right:calc(var(--edge-r) + 396px)}.optrow{grid-template-columns:1fr;gap:6px}.vpanel .modes{flex:none;overflow:visible}}@media (max-height:560px) and (orientation:landscape){.vpanel .detail,.vpanel .stats3,.vpanel .how{display:none}.mode .art{height:40px}.districts .district .img{height:36px}}@media (max-width:640px) and (orientation:portrait){.stage-space{left:0;right:0;top:calc(var(--topbar-h) + var(--safe-top));height:190px;bottom:auto}.venues{bottom:auto;left:0;right:0;top:calc(var(--safe-top) + var(--topbar-h) + 190px);scrollbar-width:none;padding:6px 14px 8px;display:block;overflow-x:auto}.venues .vcards{scroll-snap-type:x mandatory}.venues .vcards>*{scroll-snap-align:start;flex-shrink:0}.venues>.glyph,.vstep{display:none}.vcard{width:92px;height:86px}.vcard small{display:none}.vcard[aria-selected=true]{width:120px;height:96px}.vpanel{top:calc(var(--safe-top) + var(--topbar-h) + 300px);width:auto;left:10px;right:10px;bottom:calc(var(--nav-h) + var(--safe-bottom) + var(--slab-h) + 22px);border-radius:26px;gap:8px;padding:14px;overflow-y:auto}.vpanel .modes{flex:none;overflow:visible}.vhead .disc{width:44px;height:44px}.vhead small{display:none}.vhead .h{font-size:var(--fs-lg)}.mode{padding:5px 10px 5px 5px}.mode .art{width:60px;height:46px}.vpanel .legend,.vpanel .stats3,.games .pin{display:none}#app[data-device] .games-dialog .slot{left:calc(10px + var(--safe-left));right:calc(10px + var(--safe-right));bottom:calc(var(--nav-h) + var(--safe-bottom) + 12px)}.games-dialog .slot .slab{flex:1;min-width:0;padding:0 18px}.games-dialog .slot .chipbtn{min-width:96px}.preview-space{left:0;right:0;top:calc(var(--topbar-h) + var(--safe-top) + 110px);height:160px;bottom:auto}.previewcap{top:calc(var(--topbar-h) + var(--safe-top) + 62px);max-width:none;right:10px}.spanel{top:calc(var(--safe-top) + var(--topbar-h) + 276px);width:auto;left:10px;right:10px;bottom:calc(var(--nav-h) + var(--safe-bottom) + var(--slab-h) + 22px);padding:12px 10px}.optrow{grid-template-columns:1fr;gap:6px;padding:6px}.mhead{grid-template-columns:64px 1fr}.mhead .art{width:64px;height:50px}.mhead small{display:none}.lobby3 .room-players{grid-template-columns:repeat(auto-fill,minmax(96px,1fr))}}@media (max-height:460px) and (orientation:landscape){.vpanel{width:320px;top:calc(var(--topbar-h) + var(--safe-top) + 4px);padding:10px 12px}.spanel{width:340px;top:calc(var(--topbar-h) + var(--safe-top) + 4px)}.preview-space{right:calc(var(--edge-r) + 350px);top:calc(var(--topbar-h) + var(--safe-top) + 80px);bottom:calc(var(--safe-bottom) + 70px)}.stage-space{right:calc(var(--edge-r) + 330px);bottom:calc(var(--hintbar-h) + var(--safe-bottom) + 90px)}.vhead .disc{width:40px;height:40px}.previewcap{display:none}}@media (max-width:360px){.games-dialog .slab .lbl small{white-space:normal;overflow-wrap:anywhere}}#app[data-device=touch] :is(.vpanel,.spanel){bottom:calc(var(--safe-bottom) + var(--slab-h) + 30px)}@media (max-width:640px) and (orientation:portrait){#app[data-device=touch] :is(.vpanel,.spanel){bottom:calc(var(--nav-h) + var(--safe-bottom) + var(--slab-h) + 22px)}}#app[data-device=touch] .venues{bottom:calc(var(--safe-bottom) + 14px)}@media (max-width:640px) and (orientation:portrait){#app[data-device=touch] .venues{bottom:auto}}html[data-text="130"] .vpanel .stats3,html[data-text="130"] .vpanel .legend{display:none}html[data-text="130"] .vcard{width:84px}html[data-text="130"] .vcard[aria-selected=true]{width:122px}.results-card .cuppath{margin:var(--space-3) 0}
