@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:600;src:url(./cinzel-latin-ext-600-normal-BEFdM_VE.woff2)format("woff2"),url(./cinzel-latin-ext-600-normal-BY9Mq9iK.woff)format("woff");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:Cinzel;font-style:normal;font-display:swap;font-weight:600;src:url(./cinzel-latin-600-normal-Dd5YO2UX.woff2)format("woff2"),url(./cinzel-latin-600-normal-CH_LB4su.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--safe-top:max(env(safe-area-inset-top,0px), var(--olympus-inset-top,0px));--safe-right:max(env(safe-area-inset-right,0px), var(--olympus-inset-right,0px));--safe-bottom:max(env(safe-area-inset-bottom,0px), var(--olympus-inset-bottom,0px));--safe-left:max(env(safe-area-inset-left,0px), var(--olympus-inset-left,0px));--space-half:4px;--space-1:8px;--space-2:16px;--space-3:24px;--radius-control:8px;--radius-panel:16px;--touch-min:44px;--font-display:"Cinzel", Georgia, serif;--font-body:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--letter-spacing-code:.05em;--text-caption:.875rem;--text-body:1rem;--text-section:1.25rem;--text-panel:1.5rem;--text-screen:2rem;--shadow-panel:0 4px 16px #1729362e;--z-hud:10;--z-panel:20;--z-popover:30;--z-toast:40;--z-hud-top:45;--z-dev:50;--z-blocking:60;--opacity-disabled:.55;--border-strong:2px;--border-heavy:3px;--focus-ring-width:3px;--focus-ring-offset:2px;--line-height-body:1.4;--measure-banner:16rem;--color-bg:#faf5e9;--color-surface:#fffdf7;--color-surface-alt:#efe2c8;--color-text:#172936;--color-text-muted:#44596a;--color-cta:#a5502f;--color-cta-text:#fff;--color-hud-bg:#244e6a;--color-hud-text:#faf5e9;--color-danger:#a12f1f;--color-success:#4b5e2c;--color-focus:#1f7a7d;--color-border:#8c7b5e;--color-accent:#d6a84e;--color-sea:#2f7f97;--color-locked:#9a9a9a;--color-icon-plate:#efe2c8;--color-scrim:#0e1a2280;--focus-ring:var(--color-focus);--brand-google-fill:#fff;--brand-google-fill-hover:#ececec;--brand-google-stroke:#747775;--brand-google-text:#1f1f1f}:root[data-theme=dark]{--brand-google-fill:#131314;--brand-google-fill-hover:#292a2b;--brand-google-stroke:#8e918f;--brand-google-text:#e3e3e3}*,:before,:after{box-sizing:border-box}html,body{block-size:100%;margin:0}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-body);line-height:var(--line-height-body);-webkit-text-size-adjust:100%;overflow:hidden}h1,h2,h3{font-family:var(--font-display);margin:0;font-weight:600}p{margin:0}[hidden]{display:none!important}:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring);outline-offset:var(--focus-ring-offset)}button,select,input{font:inherit;color:inherit}button{min-block-size:var(--touch-min);min-inline-size:var(--touch-min);padding-inline:var(--space-2);border-radius:var(--radius-control);border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer}button:hover:not(:disabled,[aria-disabled=true]){background:var(--color-surface-alt)}button:active:not(:disabled,[aria-disabled=true]){transform:translateY(1px)}button:disabled,button[aria-disabled=true]{cursor:not-allowed;opacity:var(--opacity-disabled)}:root[data-theme=contrast] button[aria-disabled=true]:not(.button-cta){opacity:1;border-style:dashed}.button-cta{background:var(--color-cta);border-color:var(--color-cta);color:var(--color-cta-text);font-weight:600}:root[data-theme=contrast] .button-cta[aria-disabled=true]{background:var(--color-surface);border-color:var(--color-text);color:var(--color-text);opacity:1;border-style:dashed}.button-cta:hover:not(:disabled,[aria-disabled=true]){background:var(--color-cta);filter:brightness(1.08)}select{min-block-size:var(--touch-min);border-radius:var(--radius-control);border:1px solid var(--color-border);background:var(--color-surface);padding-inline:var(--space-1)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;overflow:hidden;position:absolute!important}.skip-link{z-index:100;min-block-size:var(--touch-min);background:var(--color-surface);color:var(--color-text);padding:var(--space-1) var(--space-2);border-radius:var(--radius-control);align-items:center;display:inline-flex;position:absolute;inset-block-start:-100px;inset-inline-start:var(--space-1)}.skip-link:focus{inset-block-start:var(--space-1)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}[data-reduced-motion=true] *,[data-reduced-motion=true] :before,[data-reduced-motion=true] :after{transition-duration:.01ms!important;animation-duration:.01ms!important}#app{block-size:100dvh}.app{grid-template:"nav top""nav main"minmax(0,1fr)/96px minmax(0,1fr);block-size:100%;display:grid}.hud-top{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);background:var(--color-hud-bg);color:var(--color-hud-text);z-index:var(--z-hud-top);grid-area:top;padding-block-start:max(var(--space-1), var(--safe-top));padding-inline-end:max(var(--space-2), var(--safe-right));display:flex}.hud-top,.nav{--focus-ring:var(--color-hud-text)}.hud-top .panel-card{--focus-ring:var(--color-focus)}:root[dir=rtl] .hud-top{padding-inline-end:max(var(--space-2), var(--safe-left))}@media (width<=767px) and (orientation:portrait){:root[dir=rtl] .hud-top{padding-inline-end:max(var(--space-1), var(--safe-left))}}:root[dir=rtl] .nav{padding-inline-start:max(var(--space-1), var(--safe-right))}.hud-actions{align-items:center;gap:var(--space-1);display:flex}.hud-collect{padding-inline:var(--space-1);border-color:var(--color-hud-text);color:var(--color-hud-text);font-size:var(--text-caption);background:0 0;font-weight:600}.hud-top .hud-collect:hover:not(:disabled,[aria-disabled=true]){background:color-mix(in srgb, var(--color-hud-text) 15%, transparent)}.brand{font-family:var(--font-display);font-size:var(--text-section);white-space:nowrap}.nav{background:var(--color-hud-bg);color:var(--color-hud-text);padding-block:var(--space-2);padding-inline:var(--space-1);z-index:var(--z-hud);grid-area:nav;padding-inline-start:max(var(--space-1), var(--safe-left));overflow-y:auto}.nav ul{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.nav-item{align-items:center;gap:var(--space-half);min-block-size:var(--touch-min);padding:var(--space-1) 0;border:0 solid #0000;border-radius:var(--radius-control);color:inherit;font-size:var(--text-caption);text-align:center;background-clip:padding-box;border-inline-start-width:3px;flex-direction:column;text-decoration:none;display:flex}.nav-label{overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto;max-inline-size:100%;line-height:1.15}.nav-item[aria-current=page]{background:var(--color-surface);color:var(--color-text);border-inline-start-color:var(--color-accent);font-weight:600}:root[data-theme=dark] .nav-item[aria-current=page]{background:var(--color-surface-alt)}.nav-item:hover:not([aria-current=page]){background:color-mix(in srgb, var(--color-hud-text) 14%, transparent)}.app-main{outline:none;flex-direction:column;grid-area:main;display:flex;position:relative;overflow:hidden}.app-main>.army-screen,.app-main>.expeditions-screen,.app-main>.leaders-screen,.app-main>.replay-screen,.app-main>.b3-screen{padding-block-end:calc(var(--space-3) + var(--toasts-reserve,0px))}.app-main>.city-screen,.app-main>.leaders-screen,.app-main>.army-screen,.app-main>.expeditions-screen,.app-main>.replay-screen{flex:auto;min-block-size:0}@media (width<=767px),(height<=500px){.hud-collect{max-inline-size:84px;line-height:1.1}}@media (height<=500px) and (orientation:landscape){.app{grid-template-columns:80px minmax(0,1fr)}.brand{display:none}.nav{padding-block:var(--space-half);padding-inline:var(--space-half);padding-inline-start:max(var(--space-half), var(--safe-left))}.nav ul{gap:0}.nav-item{padding-block:var(--space-half);font-size:.75rem}}@media (width<=767px) and (orientation:portrait){.app{grid-template:"top""main"minmax(0,1fr)"nav"/minmax(0,1fr)}.brand{display:none}.nav{padding:0;padding-block-end:var(--safe-bottom);overflow:visible}.nav ul{flex-direction:row;gap:0}.nav li{flex:1 1 0;min-inline-size:0}.nav-item{min-inline-size:var(--touch-min);padding:var(--space-half);font-size:.75rem}.hud-top{gap:var(--space-1);padding-inline:var(--space-1);padding-inline-end:max(var(--space-1), var(--safe-right))}.hud-top .resource-bar{flex:none}.hud-actions{justify-content:flex-end;gap:var(--space-half);flex-wrap:wrap;flex:1 1 0}.hud-top{position:relative}.nav-item{border-block-start-width:3px;border-inline-start-width:0}.nav-item[aria-current=page]{border-inline-start-color:#0000;border-block-start-color:var(--color-accent)}}.city-screen{background:var(--color-sea);block-size:100%;inline-size:100%;position:relative;overflow:hidden}.city-canvas{touch-action:none;position:absolute;inset:0}.city-canvas:focus-visible{outline:none}.city-canvas:focus-visible:after{content:"";z-index:1;border:3px solid var(--color-surface);outline:3px solid var(--color-text);outline-offset:-6px;pointer-events:none;position:absolute;inset:0}.city-canvas canvas{display:block}.city-loading{block-size:100%;color:var(--color-hud-text);font-family:var(--font-display);font-size:var(--text-section);place-items:center;display:grid}.city-load-error{z-index:var(--z-panel);max-inline-size:min(360px, calc(100% - 2 * var(--space-2)));align-items:center;gap:var(--space-1);text-align:center;flex-direction:column;display:flex;position:absolute;inset-block-start:50%;inset-inline-start:50%;translate:-50% -50%}.building-list{z-index:var(--z-panel);position:absolute;inset-block-start:var(--space-2);inset-inline-start:var(--space-2)}.building-list ul{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.building-list button{text-align:start;background:var(--color-surface);inline-size:100%;color:var(--color-text);box-shadow:var(--shadow-panel)}.building-list button:focus-visible,.building-list-build:focus-visible{outline:3px solid var(--color-text);outline-offset:2px;box-shadow:0 0 0 2px var(--color-surface), 0 0 0 7px var(--color-surface), var(--shadow-panel)}.building-list button[aria-pressed=true]{border-width:2px;border-color:var(--color-focus);font-weight:600}.building-list-level{color:var(--color-text-muted);font-size:var(--text-caption)}.building-list-build{min-block-size:var(--touch-min);padding-inline:var(--space-2);border:var(--border-strong) solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-panel);justify-content:center;align-items:center;margin-block-start:var(--space-1);font-weight:600;text-decoration:none;display:flex}.building-list-build:hover{background:var(--color-surface-alt)}.build-sheet .panel-close{min-block-size:var(--touch-min);min-inline-size:var(--touch-min)}.build-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.build-type{gap:var(--space-1);border-block-end:1px solid var(--color-border);padding-block-end:var(--space-2);display:grid}.build-type h3,.build-type h4{font-size:var(--text-body)}.build-plots{gap:var(--space-1);border:0;margin:0;padding:0;display:grid}.build-plots legend{margin-block-end:var(--space-1);font-weight:600}.build-plot{align-items:center;gap:var(--space-1);min-block-size:var(--touch-min);padding-inline:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-control);cursor:pointer;display:flex}.build-plot:hover{background:var(--color-surface-alt)}.build-plot:has(input:checked){border-color:var(--color-focus);box-shadow:inset 0 0 0 var(--border-strong) var(--color-focus);background:var(--color-surface-alt);font-weight:600}.build-sheet{scroll-padding-block-end:var(--build-footer-h,calc(2 * var(--touch-min) + var(--space-3)))}.build-sheet-footer{margin:0 calc(-1 * var(--space-2)) calc(-1 * var(--space-2));padding:var(--space-1) var(--space-2) max(var(--space-2), var(--safe-bottom));gap:var(--space-1);background:var(--color-surface);border-block-start:1px solid var(--color-border);display:grid;position:sticky;inset-block-end:calc(-1 * var(--space-2))}.build-choice{margin:0;font-weight:600}.build-actions{gap:var(--space-1);flex-wrap:wrap;display:flex}.build-actions .button-cta{flex:1}.building-panel{max-block-size:calc(100% - 2 * var(--space-2));overscroll-behavior:contain;gap:var(--space-2);inline-size:min(360px,42%);z-index:var(--z-panel);flex-direction:column;display:flex;position:absolute;inset-block-start:var(--space-2);inset-inline-end:var(--space-2);overflow-y:auto}.panel-header{align-items:center;gap:var(--space-1);display:flex}.panel-header>div{flex:1}.panel-header h2{font-size:var(--text-panel)}.panel-thumb{object-fit:contain}.panel-section{gap:var(--space-1);display:grid}.panel-section h3{font-size:var(--text-body)}.panel-section h4{font-size:var(--text-caption);color:var(--color-text-muted);margin:0}.panel-action{inline-size:100%}.cost-list,.production-list,.reasons{gap:var(--space-half);margin:0;padding:0;list-style:none;display:grid}.cost-list li,.production-list li,.bonus{align-items:center;gap:var(--space-1);font-variant-numeric:tabular-nums;display:flex}.cost-list .amount{margin-inline-start:auto;font-weight:600}.shortfall,.reasons{color:var(--color-danger);font-weight:600}.facts{gap:var(--space-1);margin:0;display:flex}.facts dt{color:var(--color-text-muted)}.facts dd{margin:0;font-weight:600}.construction progress{block-size:12px}.bonus{color:var(--color-success);font-weight:600}@media (height<=500px) and (orientation:landscape){.building-panel{max-block-size:calc(100% - 2 * var(--space-1));inline-size:min(320px,46%);inset-block-start:var(--space-1)}.building-panel-empty{display:none}.building-list{inset-block-start:var(--space-1);inset-inline-start:var(--space-1)}}@media (width<=767px) and (orientation:portrait){.building-list{inset-inline:var(--space-1)}.building-list ul{flex-direction:row;overflow-x:auto}.building-list button{white-space:nowrap}.building-panel{border-end-end-radius:0;border-end-start-radius:0;max-block-size:55%;inline-size:auto;inset-block:auto 0;inset-inline:0}.building-panel-empty{display:none}}.mask-icon{inline-size:var(--icon-size,24px);block-size:var(--icon-size,24px);-webkit-mask:var(--icon) center / contain no-repeat;-webkit-mask:var(--icon) center / contain no-repeat;mask:var(--icon) center / contain no-repeat;background:currentColor;flex:none;display:inline-block}.art-icon{flex:none}.icon-button{color:inherit;background:0 0;border-color:#0000;place-items:center;padding:0;display:inline-grid}.hud-top .icon-button:hover:not(:disabled){background:color-mix(in srgb, var(--color-hud-text) 15%, transparent)}.panel-card{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-panel);box-shadow:var(--shadow-panel);padding:var(--space-2)}.muted{color:var(--color-text-muted)}.busy-reason{color:var(--color-text-muted);font-weight:600}.resource-bar{flex:1;min-inline-size:0}.resource-bar ul{gap:var(--space-1) var(--space-3);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.resource{align-items:center;gap:var(--space-1);font-variant-numeric:tabular-nums;display:flex}progress{appearance:none;border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-alt);inline-size:100%;color:var(--color-focus);overflow:hidden}progress::-webkit-progress-bar{background:var(--color-surface-alt)}progress::-webkit-progress-value{background:var(--color-focus)}progress::-moz-progress-bar{background:var(--color-focus)}.resource-icon{background:var(--color-icon-plate);border-radius:50%;padding:2px}.resource-text{align-items:baseline;column-gap:var(--space-1);flex-wrap:wrap;display:flex}.resource-name{font-size:var(--text-caption)}.resource-stock{font-weight:600}.resource-rate{font-size:var(--text-caption)}.resource-full{font-size:var(--text-caption);padding-inline:var(--space-half);border-radius:var(--radius-control);border:1px solid;font-weight:600}@media (width<=767px),(height<=500px){.resource-name,.resource-rate{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;overflow:hidden;position:absolute!important}.resource-bar ul{column-gap:var(--space-2)}.resource{gap:var(--space-half)}.resource-icon{block-size:24px;inline-size:24px}}@media (width<=767px) and (orientation:portrait){.resource-bar ul{gap:var(--space-half) var(--space-1);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.resource{font-size:var(--text-caption)}}.settings{position:relative}.settings-panel{z-index:var(--z-popover);gap:var(--space-2);inline-size:min(320px,90vw);max-inline-size:calc(100vw - 2 * var(--space-1));display:grid;position:absolute;inset-block-start:calc(100% + var(--space-1));inset-inline-end:0}@media (width<=767px) and (orientation:portrait){.hud-top .settings{position:static}.hud-top .settings-panel{max-block-size:calc(100dvh - 100% - 2 * var(--space-1));inset-inline-end:var(--space-1)}}.settings-panel label{gap:var(--space-half);display:grid}.settings-busy{color:var(--color-text-muted);font-size:var(--text-caption);margin-inline-start:var(--space-1)}.settings-legal{margin:0}.settings-legal a{min-block-size:var(--touch-min);align-items:center;display:inline-flex}.settings-panel .checkbox,.dev-toolbar .checkbox{align-items:center;gap:var(--space-1);min-block-size:var(--touch-min);display:flex}.checkbox input{block-size:20px;inline-size:20px}.connection-screen{z-index:var(--z-blocking);overscroll-behavior:contain;padding:max(var(--space-3), var(--safe-top)) max(var(--space-2), var(--safe-right)) max(var(--space-3), var(--safe-bottom)) max(var(--space-2), var(--safe-left));background:var(--color-bg);color:var(--color-text);place-items:center;display:grid;position:fixed;inset:0;overflow-y:auto}.connection-hint,.connection-status{font-size:var(--text-caption);color:var(--color-text-muted);margin:0}.connection-status{color:var(--color-text)}.connection-status:empty{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}.banner{padding:var(--space-1) var(--space-2);background:var(--color-surface-alt);color:var(--color-text);border-block-end:3px solid var(--color-accent);margin:0;font-weight:600}.toasts{z-index:var(--z-toast);gap:var(--space-1);inline-size:min(380px, calc(100vw - max(var(--space-2), var(--safe-left)) - max(var(--space-2), var(--safe-right))));pointer-events:none;display:grid;position:fixed;inset-block-end:calc(var(--space-2) + var(--safe-bottom));inset-inline-end:max(var(--space-2), var(--safe-right))}.toast-region{gap:var(--space-1);display:grid}.toast{align-items:center;gap:var(--space-1);padding-block:var(--space-1);padding-inline:var(--space-2) var(--space-1);background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-inline-start:6px solid var(--color-success);border-radius:var(--radius-control);box-shadow:var(--shadow-panel);pointer-events:auto;display:flex}.toast p{flex:1}.toast-error{border-inline-start-color:var(--color-danger)}.toast-action{min-block-size:var(--touch-min);min-inline-size:var(--touch-min);color:var(--color-text);align-items:center;font-weight:600;text-decoration:underline;display:inline-flex}.toast-glyph{color:var(--color-success);font-weight:700}.toast-error .toast-glyph{color:var(--color-danger)}@media (width<=767px) and (orientation:portrait){.toasts{inset-block-end:calc(80px + var(--safe-bottom))}.toasts.toasts-top{inset-block-start:calc(var(--toasts-top,0px) + var(--space-1));inset-block-end:auto}}.lazy-loading{margin:var(--space-2)}.lazy-failed{gap:var(--space-2);margin:var(--space-2);justify-items:start;display:grid}.leaders-screen{overscroll-behavior:contain;block-size:100%;padding:var(--space-3);background:var(--color-bg);color:var(--color-text);overflow-y:auto}.screen-header{align-items:baseline;gap:var(--space-2);margin-block-end:var(--space-2);display:flex}.screen-header h1{font-size:var(--text-screen)}.leader-grid{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(min(100%,440px),1fr));display:grid}.leader-card{gap:var(--space-2);align-items:flex-start;display:flex}.leader-portrait{border-radius:var(--radius-panel);flex:none}.leader-body{gap:var(--space-1);min-inline-size:0;display:grid}.leader-header{align-items:center;gap:var(--space-1);flex-wrap:wrap;display:flex}.leader-header h2{font-size:var(--text-section)}.type-badge,.status{align-items:center;gap:var(--space-half);padding:2px var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-control);font-size:var(--text-caption);font-weight:600;display:inline-flex}.type-badge .art-icon{box-sizing:content-box;background:var(--color-icon-plate);border-radius:50%;padding:2px}.blessings{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.blessing{gap:var(--space-1);padding:var(--space-1);border-radius:var(--radius-control);background:var(--color-surface-alt);border-inline-start:4px solid #0000;display:flex}.blessing.is-active{border-inline-start-color:var(--color-success)}.blessing-category{font-size:var(--text-caption);text-transform:uppercase;letter-spacing:.04em}.blessing-state{font-style:normal;font-weight:600}.status-locked{border-color:var(--color-danger);color:var(--color-danger)}.god-card.is-locked .leader-portrait{filter:grayscale();opacity:.6}.god-stars span[aria-hidden=true]{color:var(--color-text);letter-spacing:.1em}.leader-actions{gap:var(--space-1);flex-wrap:wrap;display:flex}.leader-instance{align-items:center;gap:var(--space-1);flex-wrap:wrap;display:flex}@media (width<=520px){.leaders-screen{padding:var(--space-2)}.leader-card{flex-direction:column}.leader-portrait{block-size:96px;inline-size:96px}}.army-screen{overscroll-behavior:contain;block-size:100%;padding:var(--space-3);background:var(--color-bg);color:var(--color-text);overflow-y:auto}.army-note{color:var(--color-text-muted);margin-block-end:var(--space-2);font-style:italic}.army-layout{gap:var(--space-2);grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);grid-template-areas:"contingents train""queue train";align-items:start;display:grid}.army-contingents{gap:var(--space-2);grid-area:contingents;margin:0;padding:0;list-style:none;display:grid}.army-train{gap:var(--space-1);grid-area:train;display:grid}.army-queue{gap:var(--space-1);grid-area:queue;display:grid}.army-train h2,.army-queue h2,.contingent h2{font-size:var(--text-section)}.army-train h3{font-size:var(--text-body)}.contingent{align-items:center;gap:var(--space-2);display:flex}.contingent-sprite{border-radius:var(--radius-panel);background:var(--color-icon-plate);flex:none}.contingent-count{font-size:var(--text-section);font-variant-numeric:tabular-nums;font-weight:600}.contingent.is-locked .contingent-sprite{opacity:.45;filter:grayscale()}.contingent-lock{color:var(--color-danger);font-weight:600}.army-units{gap:var(--space-1);padding:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-control);flex-wrap:wrap;margin:0;display:flex}.army-units legend{padding-inline:var(--space-half);font-weight:600}.army-unit-choice{align-items:center;gap:var(--space-half);min-block-size:var(--touch-min);padding-inline:var(--space-1);border-radius:var(--radius-control);cursor:pointer;display:inline-flex}.army-unit-choice:has(input:checked){background:var(--color-surface-alt);font-weight:600}.army-unit-choice input{block-size:20px;inline-size:20px;accent-color:var(--color-focus)}.army-quantity{gap:var(--space-half);display:grid}.army-quantity label{font-weight:600}.stepper{gap:var(--space-1);align-items:stretch;display:flex}.stepper button{font-size:var(--text-section);padding-inline:0;font-weight:700}.stepper input{inline-size:6ch;min-block-size:var(--touch-min);text-align:center;font-variant-numeric:tabular-nums;border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface)}.army-queue-item{align-items:center;gap:var(--space-1);font-weight:600;display:flex}.army-unit-choice .art-icon,.army-queue-item .art-icon{box-sizing:content-box;background:var(--color-icon-plate);border-radius:50%;padding:2px}.panel-link{min-block-size:var(--touch-min);padding-inline:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-text);justify-content:center;align-items:center;font-weight:600;text-decoration:none;display:inline-flex}.panel-link:hover{background:var(--color-surface-alt)}.army-wounded{gap:var(--space-1);margin-block-start:var(--space-2);display:grid}.army-wounded h2{font-size:var(--text-section)}.army-wounded-list{gap:var(--space-half);margin:0;padding:0;list-style:none;display:grid}.army-wounded-list li{align-items:center;gap:var(--space-1);display:flex}@media (width<=900px){.army-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"train""queue""contingents"}}@media (width<=520px),(height<=500px){.army-screen{padding:var(--space-2)}.contingent-sprite{block-size:64px;inline-size:64px}}.expeditions-screen{overscroll-behavior:contain;block-size:100%;padding:var(--space-3);background:var(--color-bg);color:var(--color-text);gap:var(--space-2);align-content:start;display:grid;overflow-y:auto;container-type:size}.expeditions-layout{gap:var(--space-2);grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:start;display:grid}.mission-list{gap:var(--space-2);display:grid}.mission-list>h2,.launch-form h2,.history h2,.expedition-active h2{font-size:var(--text-section)}.mission{gap:var(--space-1);border-inline-start:6px solid var(--color-border);display:grid}.mission-details{gap:var(--space-1);display:grid}.mission-details>summary{min-block-size:var(--touch-min);cursor:pointer;align-items:center;font-weight:600;display:flex}.mission-details[open]>summary{margin-block-end:var(--space-1)}.mission.is-available{border-inline-start-color:var(--color-success)}.mission.is-cleared{border-inline-start-color:var(--color-accent)}.mission.is-locked{color:var(--color-text-muted)}.mission.is-selected{outline:3px solid var(--color-focus)}.mission-header{justify-content:space-between;align-items:baseline;gap:var(--space-1);flex-wrap:wrap;display:flex}.mission-header h3{font-size:var(--text-body)}.mission-enemies{gap:var(--space-half);flex-wrap:wrap;display:inline-flex}.mission-rewards{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));display:grid}.mission-rewards h4{font-size:var(--text-caption);text-transform:uppercase;letter-spacing:.04em}.launch-form{gap:var(--space-1);max-block-size:calc(100cqb - 2 * var(--space-3));overscroll-behavior:contain;display:grid;position:sticky;inset-block-start:0;overflow-y:auto}.launch-squad{gap:var(--space-half);padding:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-control);margin:0;display:grid}.launch-squad legend{align-items:center;gap:var(--space-half);font-weight:600;display:inline-flex}.launch-form input,.launch-form select{min-block-size:var(--touch-min)}.launch-preview{border-collapse:collapse;font-variant-numeric:tabular-nums;inline-size:100%}.launch-preview th,.launch-preview td{padding:var(--space-half) var(--space-1);border-block-end:1px solid var(--color-border);text-align:start}.launch-footer{gap:var(--space-1);padding-block:var(--space-1) max(calc(var(--space-1) + var(--space-2)), var(--safe-bottom));background:var(--color-surface);display:grid;position:sticky;inset-block-end:calc(-1 * var(--space-2))}.launch-formation{gap:var(--space-1);display:grid}.formation-row h3{font-size:var(--text-caption);text-transform:uppercase;letter-spacing:.04em}.formation-row ul{gap:var(--space-1);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.formation-row li{align-items:center;gap:var(--space-half);padding:var(--space-half) var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-control);flex-wrap:wrap;display:inline-flex}.formation-row li.is-empty{color:var(--color-text-muted);border-style:dashed}.launch-god{gap:var(--space-half);padding:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-control);display:grid}.launch-god p{margin:0}.expedition-active{gap:var(--space-1);border-inline-start:6px solid var(--color-focus);display:grid}.expedition-active progress{inline-size:100%}.history ul{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.history li{align-items:center;gap:var(--space-1);flex-wrap:wrap;display:flex}.outcome-victory{color:var(--color-success)}.outcome-defeat{color:var(--color-danger)}@media (width<=900px){.expeditions-layout{grid-template-columns:minmax(0,1fr)}.launch-form{max-block-size:none;position:static;overflow-y:visible}.launch-footer{padding-block:var(--space-1);position:static}}@media (width<=520px){.expeditions-screen{padding:var(--space-2)}}.replay-screen{overscroll-behavior:contain;block-size:100%;padding:var(--space-3);background:var(--color-bg);color:var(--color-text);overflow-y:auto}.replay{gap:var(--space-2);display:grid}.replay-stage{gap:var(--space-1);display:grid}.replay-canvas{aspect-ratio:16/9;border-radius:var(--radius-panel);background:var(--color-surface-alt);max-block-size:60vh;inline-size:100%;overflow:hidden}.replay-round{font-family:var(--font-display);font-size:var(--text-section)}.replay-caption{min-block-size:3em;padding:var(--space-1) var(--space-2);border-radius:var(--radius-control);background:var(--color-surface);border:1px solid var(--color-border)}.replay-controls,.replay-speeds,.replay-end-actions{gap:var(--space-1);flex-wrap:wrap;align-items:center;display:flex}.replay-speeds button[aria-pressed=true]{background:var(--color-text);border-color:var(--color-text);color:var(--color-bg);font-weight:700}.replay-notice{padding:var(--space-1) var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-alt)}.replay-activation{gap:var(--space-2);padding:var(--space-1) var(--space-2);border-radius:var(--radius-control);border:1px solid var(--color-border);background:var(--color-surface);align-items:center;display:flex}.replay-activation img{flex:none}.replay-activation p{margin:0}.replay-timeline progress{inline-size:100%}.replay-timeline ol{gap:var(--space-half);grid-template-columns:repeat(auto-fit,minmax(48px,1fr));margin:0;padding:0;list-style:none;display:grid}.replay-timeline li{justify-items:center;gap:var(--space-half);padding:var(--space-half);border-radius:var(--radius-control);background:var(--color-surface-alt);display:grid}.replay-timeline li.is-current{outline:2px solid var(--color-focus)}.replay-round-number{font-variant-numeric:tabular-nums;font-weight:600}.replay-marker{min-inline-size:var(--touch-min);place-items:center;padding:0;display:grid}.replay-squads{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));display:grid}.replay-squads ul{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.replay-squads li{gap:var(--space-1);padding:var(--space-1);border-radius:var(--radius-control);background:var(--color-surface);border-inline-start:4px solid var(--color-success);flex-wrap:wrap;display:flex}.replay-squads li.is-defeated{border-inline-start-color:var(--color-danger);color:var(--color-text-muted)}.replay-badge{padding:0 var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-control);font-size:var(--text-caption);font-weight:600}.replay-log{gap:var(--space-half);margin:0;padding-inline-start:var(--space-3);display:grid}.replay-details table,.replay-end table{border-collapse:collapse;font-variant-numeric:tabular-nums;inline-size:100%}.replay-details th,.replay-details td,.replay-end th,.replay-end td{padding:var(--space-half) var(--space-1);border-block-end:1px solid var(--color-border);text-align:start}.replay-details summary{min-block-size:var(--touch-min);cursor:pointer;align-items:center;font-weight:600;display:flex}.replay-end{gap:var(--space-1);display:grid}.replay-end .outcome{font-size:var(--text-screen)}.replay-end .outcome-victory{color:var(--color-success)}.replay-end .outcome-defeat{color:var(--color-danger)}.button-link{min-block-size:var(--touch-min);padding-inline:var(--space-2);color:var(--color-text);align-items:center;font-weight:600;display:inline-flex}.replay-error{gap:var(--space-1);border-inline-start:6px solid var(--color-danger);display:grid}@media (width<=520px){.replay-screen{padding:var(--space-2)}}.replay-end{padding-block-end:calc(var(--space-6,48px) * 3)}.guide-panel{inline-size:min(340px,40%);max-block-size:min(62%, calc(100% - 2 * var(--space-2)));overscroll-behavior:contain;gap:var(--space-1);z-index:calc(var(--z-panel) - 1);flex-direction:column;display:flex;position:absolute;inset-block-end:var(--space-2);inset-inline-start:var(--space-2);overflow-y:auto}.guide-panel-header{align-items:center;gap:var(--space-1);display:flex}.guide-panel-header h2{font-family:var(--font-display);font-size:var(--text-section);flex:auto;margin:0}.guide-progress{color:var(--color-text-muted);font-size:var(--text-caption);font-variant-numeric:tabular-nums}.guide-steps{gap:var(--space-half);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.guide-steps li{gap:var(--space-half) var(--space-1);grid-template-columns:24px minmax(0,1fr);align-items:start;display:grid}.guide-check{border:2px solid var(--color-border);block-size:20px;inline-size:20px;font-size:var(--text-caption);border-radius:50%;place-items:center;line-height:1;display:inline-grid}.guide-steps li.is-done .guide-check{border-color:var(--color-success);background:var(--color-success);color:var(--color-cta-text)}.guide-steps li.is-done .guide-step-title{color:var(--color-text-muted)}.guide-steps li.is-next .guide-check{border-color:var(--color-cta)}.guide-steps li.is-next .guide-step-title{font-weight:600}.guide-step-next{align-items:flex-start;gap:var(--space-half);font-size:var(--text-caption);flex-direction:column;grid-column:2;display:flex}.guide-next,.next-action{align-items:center;gap:var(--space-half) var(--space-1);flex-wrap:wrap;margin:0;display:flex}.guide-hide{color:var(--color-text-muted);background:0 0;border-color:#0000;align-self:flex-start;text-decoration:underline}.guide-target{outline-offset:3px;box-shadow:0 0 0 8px color-mix(in srgb, var(--color-cta) 25%, transparent);scroll-margin:var(--space-3);outline:4px solid var(--color-cta)!important}.guide-highlight{align-items:center;gap:var(--space-1);margin:var(--space-1) var(--space-2) 0;padding:var(--space-1) var(--space-2);border-inline-start:6px solid var(--color-cta);flex:none;display:flex}.guide-highlight p{flex:auto;margin:0}.claim-receipt{gap:var(--space-1);padding-block:var(--space-1);border-block-start:1px solid var(--color-border);flex-direction:column;display:flex}.claim-receipt h3{margin:0}.receipt-lost{color:var(--color-danger);margin:0;font-weight:600}.receipt-xp{margin:0;padding-inline-start:var(--space-3)}.history-receipt summary{min-block-size:var(--touch-min);padding-block:var(--space-1);cursor:pointer;text-decoration:underline;display:inline-block}.leader-xp{gap:var(--space-half);flex-direction:column;display:flex}.leader-xp progress{block-size:10px;inline-size:100%;accent-color:var(--color-accent)}.god-next-star{align-items:flex-start;gap:var(--space-half);border-block-start:1px dashed var(--color-border);flex-direction:column;padding-block-start:var(--space-1);display:flex}.god-next-star h3{margin:0}.settings-guides{gap:var(--space-half);border:0;flex-direction:column;margin:0;padding:0;display:flex}.settings-guides legend{padding:0;font-weight:600}@media (height<=500px) and (orientation:landscape){.guide-panel{inline-size:min(360px,45%);max-block-size:calc(100% - 2 * var(--space-1));gap:var(--space-half);inset-block-end:var(--space-1);inset-inline-start:auto;inset-inline-end:var(--space-1)}.guide-steps li{font-size:var(--text-caption)}.guide-panel button{padding-block:0}:is(.app-main:has(.building-panel:not(.building-panel-empty)) .guide-panel,.app-main:has(.build-sheet) .guide-panel){display:none}}@media (width<=767px) and (orientation:portrait){.guide-panel{border-end-end-radius:0;border-end-start-radius:0;max-block-size:45%;inline-size:auto;inset-block-end:0;inset-inline:0}.guide-highlight{margin-inline:var(--space-1)}}.claim-receipt .cost-list{max-inline-size:28rem}.settings-panel{overscroll-behavior:contain;max-block-size:calc(100dvh - 5rem);overflow-y:auto}.settings-account{gap:var(--space-1);padding:var(--space-1) var(--space-2) var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-control);margin:0;display:grid}.settings-account legend{padding-inline:var(--space-half);font-weight:600}.account-state{overflow-wrap:anywhere;margin:0}.email-link-form{gap:var(--space-half);display:grid}.email-link-form input{min-block-size:var(--touch-min);padding-inline:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface)}.email-link-form input[aria-invalid=true]{border-color:var(--color-danger)}.email-link-form button{justify-self:start}.email-link-status{font-size:var(--text-caption);color:var(--color-success);margin:0}.email-link-status.is-error{color:var(--color-danger)}.email-link-status:empty{display:none}.account-actions{gap:var(--space-1);flex-wrap:wrap;display:flex}.save-invite{justify-content:space-between;align-items:center;gap:var(--space-1) var(--space-2);padding:var(--space-1) var(--space-2);background:var(--color-surface);color:var(--color-text);border-block-end:3px solid var(--color-accent);flex-wrap:wrap;display:flex}.save-invite-text{flex:16rem;min-inline-size:0}.save-invite h2{font-family:var(--font-display);font-size:var(--text-body);margin:0}.save-invite p{font-size:var(--text-caption);margin:0}.save-invite-actions{gap:var(--space-1);flex-wrap:wrap;display:flex}@media (height<=500px) and (orientation:landscape){.save-invite{padding-block:var(--space-half);gap:var(--space-half) var(--space-2);flex-wrap:nowrap}.save-invite-text{flex:auto}.save-invite h2{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}.save-invite-actions{flex-wrap:nowrap;flex:none}}.auth-screen{min-block-size:100%;padding:max(var(--space-3), var(--safe-top)) max(var(--space-2), var(--safe-right)) max(var(--space-3), var(--safe-bottom)) max(var(--space-2), var(--safe-left));background:var(--color-bg);color:var(--color-text);place-items:center;display:grid}.auth-card{gap:var(--space-2);inline-size:min(28rem,100%);display:grid}.auth-card p{margin:0}.auth-brand{font-family:var(--font-display);font-size:var(--text-section);color:var(--color-text-muted)}.auth-card h1{font-family:var(--font-display);font-size:var(--text-panel);outline:none;margin:0}.auth-warning{padding:var(--space-1) var(--space-2);border-inline-start:4px solid var(--color-danger);background:var(--color-surface-alt);font-weight:600}.auth-actions{gap:var(--space-1);flex-wrap:wrap;display:flex}.dev-magic-link{gap:var(--space-half);display:grid}.account-hint{font-size:var(--text-caption);color:var(--color-text-muted);margin:0}.account-confirm{gap:var(--space-1);padding:var(--space-1) var(--space-2);border-inline-start:4px solid var(--color-danger);background:var(--color-surface-alt);display:grid}.account-confirm p{margin:0}.account-methods{gap:var(--space-half);margin:0;padding:0;list-style:none;display:grid}.account-methods li{justify-content:space-between;align-items:center;gap:var(--space-1);overflow-wrap:anywhere;flex-wrap:wrap;display:flex}.account-methods button,.button-google{min-block-size:var(--touch-min);min-inline-size:var(--touch-min)}.button-google{align-items:center;gap:var(--space-1);text-align:start;border-color:var(--brand-google-stroke);background:var(--brand-google-fill);max-inline-size:100%;color:var(--brand-google-text);justify-self:start;font-weight:500;display:inline-flex}.button-google:hover:not(:disabled,[aria-disabled=true]){background:var(--brand-google-fill-hover)}.google-logo{flex:none;block-size:1.25em;inline-size:1.25em}.google-sign-in{gap:var(--space-half);display:grid}.google-button-host{min-block-size:var(--touch-min);max-inline-size:100%}.auth-or{text-align:center;color:var(--color-text-muted);margin:0}.settings-profile,.settings-privacy{gap:var(--space-1);padding:var(--space-1) var(--space-2) var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-control);margin:0;display:grid}.settings-profile legend,.settings-privacy legend,.profile-avatars legend{padding-inline:var(--space-half);font-weight:600}.profile-id{align-items:center;gap:var(--space-half) var(--space-1);flex-wrap:wrap;display:flex}.profile-id-term{align-items:center;gap:var(--space-half) var(--space-1);flex-wrap:wrap;margin:0;display:flex}.profile-id-term dd{margin:0}.profile-id code{padding:var(--space-half) var(--space-1);border-radius:var(--radius-control);background:var(--color-surface-alt);color:var(--color-text);font-size:var(--text-body);letter-spacing:var(--letter-spacing-code);-webkit-user-select:all;user-select:all}.profile-name{gap:var(--space-half);display:grid}.profile-name-row{align-items:center;gap:var(--space-1);display:flex}.profile-name-row input,.privacy-word input{min-inline-size:0;min-block-size:var(--touch-min);padding-inline:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-text);flex:auto}.profile-name-row input[aria-invalid=true]{border-color:var(--color-danger)}.profile-count{font-size:var(--text-caption);color:var(--color-text-muted);font-variant-numeric:tabular-nums}.profile-count.is-over{color:var(--color-danger)}.profile-name button{justify-self:start}.profile-hint{font-size:var(--text-caption);color:var(--color-text-muted);margin:0}.profile-status{font-size:var(--text-caption);color:var(--color-success);margin:0}.profile-status.is-error{color:var(--color-danger)}.profile-status:empty,.feature-off:empty{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}.profile-avatars{border:0;margin:0;padding:0}.avatar-grid{gap:var(--space-1);flex-wrap:wrap;display:flex}.avatar-choice{min-inline-size:var(--touch-min);min-block-size:var(--touch-min);padding:var(--space-half);border:var(--border-strong) solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);cursor:pointer;place-items:center;display:grid;position:relative}.avatar-choice input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}@media (hover:hover){.avatar-choice:hover{border-color:var(--color-text);background:var(--color-surface-alt)}}.avatar-choice.is-picked{border-color:var(--color-text);background:var(--color-surface-alt)}.avatar-choice.is-selected{border-color:var(--color-focus);box-shadow:inset 0 0 0 var(--border-strong) var(--color-focus);background:var(--color-surface-alt)}.avatar-choice.is-selected:after{content:"✓";content:"✓" / "";padding-inline:var(--space-half);border-radius:var(--radius-control);background:var(--color-focus);color:var(--color-surface);font-size:var(--text-caption);line-height:var(--line-height-body);pointer-events:none;position:absolute;inset-block-start:var(--space-half);inset-inline-end:var(--space-half)}.avatar-choice input:focus-visible+img{outline:var(--focus-ring-width) solid var(--focus-ring);outline-offset:var(--focus-ring-offset)}@supports selector(:has(*)){.avatar-choice input:focus-visible+img{outline:none}.avatar-choice:has(input:focus-visible){outline:var(--focus-ring-width) solid var(--focus-ring);outline-offset:var(--focus-ring-offset)}}.avatar-choice img{inline-size:calc(var(--touch-min) + var(--space-1) + var(--space-half));block-size:calc(var(--touch-min) + var(--space-1) + var(--space-half));display:block}.privacy-word{gap:var(--space-half);display:grid}.button-danger{border-color:var(--color-danger);color:var(--color-danger)}.button-danger:disabled,.button-danger[aria-disabled=true]{border-color:var(--color-border);color:var(--color-text-muted)}:root[data-theme=contrast] .button-danger:disabled,:root[data-theme=contrast] .button-danger[aria-disabled=true]{color:var(--color-text);opacity:1;border-style:dashed}.feature-off{font-size:var(--text-caption);color:var(--color-text-muted);margin:0}.deletion-banner{justify-content:space-between;align-items:center;gap:var(--space-1) var(--space-2);padding:var(--space-1) var(--space-2);background:var(--color-surface);color:var(--color-text);border-block-end:var(--border-heavy) solid var(--color-danger);flex-wrap:wrap;display:flex}.deletion-banner p{flex:1 1 var(--measure-banner);min-inline-size:0;margin:0}.deletion-banner .deletion-banner-error{color:var(--color-danger);font-size:var(--text-caption);flex-basis:100%}.blocking-dev{justify-self:end;margin-block-start:var(--space-2)}.auth-card .auth-result{font-family:var(--font-body);font-size:var(--text-body);outline:none;margin:0;font-weight:400}.dev-toolbar{position:relative}.dev-toolbar summary{min-inline-size:var(--touch-min);min-block-size:var(--touch-min);border-radius:var(--radius-control);font-size:var(--text-caption);cursor:pointer;border:1px dashed;place-items:center;font-weight:700;list-style:none;display:grid}.dev-toolbar summary::-webkit-details-marker{display:none}.dev-panel{z-index:var(--z-dev);gap:var(--space-1);inline-size:min(300px,90vw);display:grid;position:absolute;inset-block-start:calc(100% + var(--space-1));inset-inline-end:0}.dev-panel label{gap:var(--space-half);display:grid}.perf-overlay{z-index:var(--z-dev);gap:2px var(--space-1);padding:var(--space-1);background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-control);font-size:var(--text-caption);font-variant-numeric:tabular-nums;pointer-events:none;grid-template-columns:auto auto;margin:0;display:grid;position:fixed;inset-block-end:calc(var(--space-1) + var(--safe-bottom));inset-inline-start:var(--space-1)}.perf-overlay dd{text-align:end;margin:0;font-weight:600}.styleboard{block-size:100dvh;padding:var(--space-3);background:var(--color-bg);color:var(--color-text);gap:var(--space-3);align-content:start;display:grid;overflow-y:auto}.styleboard .screen-header a{min-block-size:var(--touch-min);padding-inline:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-text);align-items:center;font-weight:600;text-decoration:none;display:inline-flex}.styleboard .screen-header a:hover{background:var(--color-surface-alt)}.swatches{margin:var(--space-1) 0 0;gap:var(--space-2);flex-wrap:wrap;align-items:flex-end;padding:0;list-style:none;display:flex}.swatches li{justify-items:center;gap:var(--space-half);font-size:var(--text-caption);display:grid}.swatches-icons li{grid-template-columns:auto auto;align-items:end}.swatches-icons code{grid-column:1/-1}.combat-preview{aspect-ratio:16/9;inline-size:min(100%,1024px);border-radius:var(--radius-panel);margin-block-start:var(--space-1);position:relative;overflow:hidden}.combat-preview>img:first-child{object-fit:cover;block-size:100%;inline-size:100%}.combat-preview-unit{inline-size:12.5%;position:absolute}@media (width<=767px) and (orientation:portrait){.perf-overlay{inset-block-end:calc(80px + var(--safe-bottom))}}.resource-bar{align-items:center;gap:var(--space-1) var(--space-2);flex-wrap:wrap;display:flex}.resource-bar ul{flex:auto;min-inline-size:0}@media (width<=767px) and (orientation:portrait){.hud-top .resource-bar:has(.ambrosia-pill){flex:0 auto}}.ambrosia-pill{align-items:center;gap:var(--space-half);min-block-size:var(--touch-min);min-inline-size:var(--touch-min);padding-inline:var(--space-1) var(--space-2);border:var(--border-strong) solid var(--color-accent);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-text);font-variant-numeric:tabular-nums;white-space:nowrap;--focus-ring:var(--color-hud-text);font-weight:600;text-decoration:none;display:inline-flex}.ambrosia-pill:hover{background:var(--color-surface-alt)}.ambrosia-pill.is-negative{border-color:var(--color-danger);color:var(--color-danger)}.ambrosia-icon{flex:none;block-size:1.5em;inline-size:1.5em;display:inline-flex}.ambrosia-icon svg{block-size:100%;inline-size:100%}.ambrosia-negative{font-size:var(--text-caption)}.is-negative{color:var(--color-danger)}.negative-balance-banner{justify-content:space-between;align-items:center;gap:var(--space-1) var(--space-2);padding:var(--space-1) var(--space-2);background:var(--color-surface);color:var(--color-text);border-block-end:var(--border-heavy) solid var(--color-danger);flex-wrap:wrap;display:flex}.negative-balance-banner p{flex:1 1 var(--measure-banner);min-inline-size:0;margin:0}.speedup-action{justify-items:start;gap:var(--space-half);margin-block-start:var(--space-1);display:grid}.speedup-action .feature-off:empty{display:none}.speedup-button{min-block-size:var(--touch-min);min-inline-size:var(--touch-min)}.asset-download{min-block-size:100dvh;padding:max(var(--space-3), var(--safe-top)) max(var(--space-2), var(--safe-right)) max(var(--space-3), var(--safe-bottom)) max(var(--space-2), var(--safe-left));background:var(--color-bg);color:var(--color-text);place-items:center;display:grid}.asset-download-panel{gap:var(--space-2);inline-size:min(100%,32rem);display:grid}.asset-download-panel>*{margin:0}.asset-download h1{font-family:var(--font-display);font-size:var(--text-panel)}.asset-progress{block-size:var(--space-2);border-radius:var(--radius-control);background:var(--color-surface-alt);border:var(--border-strong) solid var(--color-border);overflow:hidden}.asset-progress-fill{block-size:100%;inline-size:var(--progress,0%);background:var(--color-cta);transition:inline-size .3s ease-out;display:block}:root[data-reduced-motion=true] .asset-progress-fill{transition:none}@media (prefers-reduced-motion:reduce){.asset-progress-fill{transition:none}}.asset-download-size{justify-content:space-between;gap:var(--space-half) var(--space-2);font-variant-numeric:tabular-nums;flex-wrap:wrap;display:flex}.asset-download-left{color:var(--color-text-muted)}.asset-download-error{padding:var(--space-1) var(--space-2);border:var(--border-strong) solid var(--color-danger);border-radius:var(--radius-control);color:var(--color-danger);background:var(--color-surface)}.asset-download-done{font-family:var(--font-display);color:var(--color-success);font-weight:600}.asset-download-actions{gap:var(--space-1);flex-wrap:wrap;display:flex}.asset-download-actions button{min-block-size:var(--touch-min);flex:auto}.assets-chip{z-index:var(--z-hud);inline-size:fit-content;max-inline-size:calc(100% - 2 * var(--space-2));min-block-size:var(--touch-min);padding-inline:var(--space-2);border-radius:calc(var(--touch-min) / 2);background:var(--color-surface);color:var(--color-text);border:var(--border-strong) solid var(--color-border);box-shadow:var(--shadow-panel);font-size:var(--text-caption);font-variant-numeric:tabular-nums;align-items:center;margin-inline:auto;font-weight:600;text-decoration:none;display:flex;position:absolute;inset-block-start:var(--space-2);inset-inline:0}@media (width<=767px) and (orientation:portrait){.assets-chip{inset-block-start:calc(var(--space-2) + 2 * var(--touch-min) + 2 * var(--space-1))}}.assets-chip:focus-visible{outline:var(--focus-ring-width) solid var(--color-focus);outline-offset:var(--focus-ring-offset)}button.toast-action{text-decoration:none}
