:root{color:#16202b;background:#0f1d2b;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;line-height:1.5;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;overflow:hidden}#root{min-height:100vh}.game-shell{position:relative;min-height:100vh;background:#8bb4bf}.map-stage{position:relative;min-height:100vh;overflow:hidden;background:#8fb8c4}.map-combat-status{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.europe-map{display:block;width:100%;height:100vh;min-height:520px;cursor:grab;overflow:hidden;touch-action:none;-webkit-user-select:none;user-select:none}.europe-map[data-dragging=true]{cursor:grabbing}.europe-map[data-attack-dragging=true],.europe-map[data-attack-dragging=true] .state-region{cursor:none}.map-layer{will-change:transform}.shipping-traffic{pointer-events:none}.shipping-route{fill:none;stroke:#f8fbfc24;stroke-dasharray:2 12;stroke-linecap:round;stroke-width:1.2;vector-effect:non-scaling-stroke}.shipping-vessel{opacity:.68;filter:drop-shadow(0 2px 3px rgb(5 12 18 / .42))}.shipping-vessel-icon{transform-box:fill-box;transform-origin:center}.shipping-vessel-hull{fill:#31434eeb;stroke:#0b1824c7;stroke-linejoin:round;stroke-width:.9;vector-effect:non-scaling-stroke}.shipping-vessel-bridge,.shipping-ferry-cabin{fill:#dae5e6d6;stroke:#0b1824ad;stroke-linejoin:round;stroke-width:.75;vector-effect:non-scaling-stroke}.shipping-container-block,.shipping-bulk-hold,.shipping-tanker-tank{stroke:#0b182494;stroke-width:.65;vector-effect:non-scaling-stroke}.shipping-container-block--red{fill:#b14d45db}.shipping-container-block--gold{fill:#cb9e49db}.shipping-container-block--blue{fill:#4b7991db}.shipping-tanker-tank{fill:#c4ccc5d1}.shipping-bulk-hold{fill:#766250db}.shipping-vessel-crane{fill:none;stroke:#cb9e49cc;stroke-linecap:round;stroke-linejoin:round;stroke-width:1;vector-effect:non-scaling-stroke}.shipping-ferry-window{fill:#315b74e6}.shipping-vessel-wake{fill:none;stroke:#f8fbfc80;stroke-linecap:round;stroke-width:1;vector-effect:non-scaling-stroke}@media(prefers-reduced-motion:reduce){.shipping-traffic{display:none}}.country{stroke:#000;stroke-linejoin:round;stroke-width:1.15;transition:filter .14s ease,opacity .14s ease}.country:hover{filter:brightness(1.06) saturate(1.08)}.country-outline{fill:none;pointer-events:none;stroke:#000;stroke-linejoin:round;stroke-width:1.45;vector-effect:non-scaling-stroke}.subdivision-layer{pointer-events:none}.subdivision-layer[data-interactive=true]{pointer-events:auto}.state-region-layer{pointer-events:inherit}.state-region{fill:#ffffff03;stroke:transparent;stroke-linejoin:round;stroke-width:1.4;cursor:grab;vector-effect:non-scaling-stroke;transition:fill .13s ease,stroke .13s ease,stroke-width .13s ease}.state-region[data-hovered=true]{fill:#fff3;stroke:#f8fbfcc2}.europe-map[data-dragging=true] .state-region{cursor:grabbing}.state-region[data-selected=true]{fill:#ffeead57;stroke:#fff1a8;stroke-width:2.2}.owned-territory-layer{pointer-events:none}.owned-territory{fill-opacity:.94;stroke-opacity:.96;stroke-width:1.65;stroke-linejoin:round;vector-effect:non-scaling-stroke}.subdivision-casing,.subdivision-line{fill:none;pointer-events:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.subdivision-casing{stroke:#f9f4e9b8;stroke-width:2.1}.subdivision-line{stroke:#111f2bc7;stroke-width:.75}.map-zoom-control{position:absolute;top:16px;left:16px;z-index:2;display:grid;gap:8px;width:min(280px,calc(100vw - 32px));padding:9px 11px 10px;border:1px solid rgb(255 255 255 / .34);border-radius:6px;background:#101e2bc7;color:#f8fbfc;box-shadow:0 8px 22px #0b17222e;font-size:.78rem;line-height:1;pointer-events:auto}.map-zoom-control label{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.map-zoom-control span{color:#f8fbfcb8;font-weight:600;text-transform:uppercase}.map-zoom-control strong{font-size:.95rem;font-weight:800}.map-zoom-control input[type=range]{width:100%;accent-color:#ffdc5d;cursor:pointer}.map-zoom-control input[type=range]:focus-visible{outline:2px solid #fff1a8;outline-offset:3px}.hud-mode-control{display:grid;gap:6px;padding-top:2px}.hud-mode-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.hud-mode-options button{min-width:0;padding:6px 8px;border:1px solid rgb(255 255 255 / .22);border-radius:5px;background:#ffffff0f;color:#f8fbfc;font-size:.7rem;font-weight:800;cursor:pointer}.hud-mode-options button:hover{background:#ffffff1f}.hud-mode-options button[data-selected=true]{border-color:#ffdc5d;background:#ffdc5d33;color:#ffdc5d}.hud-mode-options button:focus-visible{outline:2px solid #fff1a8;outline-offset:2px}.map-reset{position:absolute;top:144px;left:16px;z-index:2;padding:7px 12px;border:1px solid rgb(255 255 255 / .34);border-radius:6px;background:#101e2bc7;color:#f8fbfc;box-shadow:0 8px 22px #0b17222e;font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.02em;cursor:pointer;transition:background .13s ease}.map-reset:hover{background:#1f384ee6}.map-reset:focus-visible{outline:2px solid #fff1a8;outline-offset:2px}.debug-attack-outcome{display:grid;grid-template-columns:repeat(4,minmax(38px,1fr));gap:5px;margin-top:2px;padding-top:8px;border-top:1px solid rgb(255 220 93 / .32);color:#f8fbfc}.debug-attack-outcome span{grid-column:1 / -1;color:#ffdc5d;font-size:.62rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.debug-attack-outcome button{min-width:0;padding:5px 7px;border:1px solid rgb(255 255 255 / .22);border-radius:5px;background:#ffffff0f;color:#f8fbfc;font-size:.68rem;font-weight:800;cursor:pointer}.debug-attack-outcome button[data-selected=true]{border-color:#ffdc5d;background:#ffdc5d33;color:#ffdc5d}.state-readout{position:absolute;bottom:58px;left:16px;z-index:2;display:grid;gap:6px;min-width:196px;padding:12px 14px;border:1px solid rgb(255 241 168 / .5);border-radius:8px;background:#111f2de6;color:#f8fbfc;box-shadow:0 12px 30px #08111a4d}.state-readout>span{color:#ffdc5d;font-size:.66rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.state-readout>strong{font-size:1.05rem;font-weight:800}.state-readout dl{display:grid;gap:3px;margin:0}.state-readout dl>div{display:flex;justify-content:space-between;gap:16px;font-size:.82rem}.state-readout dt{color:#f8fbfca8;text-transform:uppercase;font-size:.66rem;font-weight:700;align-self:center}.state-readout dd{margin:0;font-weight:600}.state-hud-tooltip{position:fixed;z-index:5;display:grid;gap:7px;padding:9px 10px 10px;border:1px solid rgb(255 241 168 / .5);border-radius:6px;background:#111f2df0;box-shadow:0 12px 30px #08111a57;pointer-events:none;transform:translate(16px,16px)}.state-hud-tooltip-title{max-width:240px;overflow:hidden;color:#f8fbfc;font-size:.78rem;font-weight:900;letter-spacing:0;line-height:1;text-overflow:ellipsis;white-space:nowrap}.state-hud-tooltip-badge{display:block;overflow:visible}.country-finance-readout{position:absolute;bottom:58px;left:16px;z-index:2;display:grid;gap:8px;width:min(232px,calc(100vw - 32px));padding:12px 14px;border:1px solid rgb(255 220 93 / .52);border-radius:8px;background:#111f2deb;color:#f8fbfc;box-shadow:0 12px 30px #08111a4d}.country-finance-readout header{display:flex;align-items:center;justify-content:space-between;gap:10px}.country-finance-readout header span{color:#ffdc5d;font-size:.66rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.country-finance-readout button{padding:4px 7px;border:1px solid rgb(255 255 255 / .18);border-radius:5px;background:#ffffff14;color:#f8fbfcb8;font-size:.62rem;font-weight:800;text-transform:uppercase;cursor:pointer}.country-finance-readout button:hover{background:#ffffff24;color:#f8fbfc}.country-finance-readout>strong{font-size:1.08rem;font-weight:900}.country-finance-readout dl{display:grid;gap:4px;margin:0}.country-finance-readout dl>div{display:flex;justify-content:space-between;gap:16px;padding-top:4px;border-top:1px solid rgb(255 255 255 / .08);font-size:.82rem}.country-finance-readout dt{color:#f8fbfca8;font-size:.66rem;font-weight:700;text-transform:uppercase}.country-finance-readout dd{margin:0;font-weight:800}.game-panel{position:absolute;top:84px;right:16px;z-index:7;display:grid;gap:12px;width:min(440px,calc(100vw - 32px));max-height:calc(100vh - 104px);overflow-x:hidden;overflow-y:auto;padding:14px 16px;border:1px solid rgb(255 241 168 / .5);border-radius:10px;background:#111f2deb;color:#f8fbfc;box-shadow:0 14px 34px #08111a57}.game-panel[data-dragging=true]{-webkit-user-select:none;user-select:none}.game-panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.game-panel-header h2{margin:0;font-size:.74rem;font-weight:800;letter-spacing:.04em;color:#ffdc5d;text-transform:uppercase}.game-panel-drag-handle{display:grid;flex:none;place-items:center;width:30px;height:28px;padding:0;border:1px solid rgb(255 255 255 / .22);border-radius:6px;background:#ffffff0f;color:#f8fbfcb8;cursor:grab;touch-action:none;transition:background .12s ease,color .12s ease}.game-panel-drag-handle:hover{background:#ffffff1f;color:#f8fbfc}.game-panel-drag-handle:active,.game-panel[data-dragging=true] .game-panel-drag-handle{cursor:grabbing}.game-panel-drag-handle:focus-visible{outline:2px solid #fff1a8;outline-offset:2px}.game-panel-drag-handle-dots{display:grid;grid-template-columns:repeat(3,4px);gap:3px}.game-panel-drag-handle-dots span{width:4px;height:4px;border-radius:50%;background:currentColor}.panel-section{display:grid;gap:8px}.standings{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.standing{display:grid;gap:2px;padding:8px 10px;border-left:4px solid #697785;border-radius:6px;background:#ffffff0d}.standing span{font-size:.66rem;font-weight:700;text-transform:uppercase;color:#f8fbfcb3}.standing strong{font-size:.82rem;font-weight:700}.standing em{font-size:.74rem;font-style:normal;font-weight:700;color:#ffdc5d}.turn-line{margin:0;font-size:.86rem;font-weight:700}.event-line{margin:0;font-size:.76rem;color:#f8fbfcc7}.battle-event-layer{position:fixed;left:16px;bottom:58px;z-index:30;width:min(720px,calc(100vw - 32px));pointer-events:none}.battle-report-dialog{display:grid;gap:8px;width:100%;max-height:calc(100vh - 74px);padding:12px;overflow-y:auto;border:1px solid rgb(255 241 168 / .55);border-radius:8px;background:#111f2d;color:#f8fbfc;box-shadow:0 18px 45px #08111a73;pointer-events:auto}.battle-report-dialog header{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.battle-report-dialog header>div{display:grid;gap:2px;min-width:0}.battle-report-dialog header span{font-size:.62rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#ffdc5d}.battle-report-dialog header strong{font-size:1rem;font-weight:900}.battle-report-route,.battle-report-note{margin:0;font-size:.78rem;color:#f8fbfcc7}.battle-report-dialog .battle-report-note{font-size:.72rem;line-height:1.25}.battle-report-route{overflow:hidden;font-weight:800;color:#f8fbfc;text-overflow:ellipsis;white-space:nowrap}.battle-report-summary{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:8px}.battle-country-capture-banner{display:grid;gap:3px;min-width:0;padding:9px 10px;border:1px solid rgb(142 219 171 / .48);border-left:4px solid #8edbab;border-radius:6px;background:linear-gradient(90deg,#4c9f703d,#4c9f7014)}.battle-outcome-reason{display:grid;gap:3px;min-width:0;padding:8px 9px;border:1px solid rgb(255 220 93 / .3);border-left:3px solid #ffdc5d;border-radius:6px;background:#ffdc5d14}.battle-country-finance{display:grid;gap:3px;min-width:0;padding:8px 9px;border:1px solid rgb(76 159 112 / .34);border-left:3px solid #4c9f70;border-radius:6px;background:#4c9f701a}.battle-outcome-reason span,.battle-country-finance span,.battle-country-capture-banner span,.battle-troop-story>span,.battle-breakdown span,.battle-section-title span,.battle-round-detail header span{font-size:.64rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase;color:#ffdc5de6}.battle-country-finance span{color:#8edbabeb}.battle-country-capture-banner span{color:#8edbab}.battle-country-capture-banner strong{color:#f8fbfc;font-size:.92rem}.battle-country-capture-banner p{margin:0;color:#f8fbfcd1;font-size:.74rem;line-height:1.25}.battle-outcome-reason p{margin:0;font-size:.74rem;line-height:1.25;color:#f8fbfc}.battle-country-finance p,.battle-country-finance em{margin:0;color:#f8fbfcc7;font-size:.72rem;font-style:normal;line-height:1.25}.battle-country-finance strong{color:#f8fbfc;font-size:.84rem}.battle-troop-story{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.battle-troop-story>span{grid-column:1 / -1}.battle-troop-story>div{display:grid;gap:3px;min-width:0;padding:8px 9px;border:1px solid rgb(255 255 255 / .08);border-radius:6px;background:#ffffff0a}.battle-troop-story strong{font-size:.74rem;color:#f8fbfc}.battle-troop-story p{margin:0;font-size:.72rem;line-height:1.3;color:#f8fbfcd6}.battle-breakdown{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.battle-breakdown>div{display:grid;gap:2px;min-width:0;padding:7px 8px;border:1px solid rgb(255 255 255 / .08);border-radius:6px;background:#ffffff0a}.battle-breakdown strong{font-size:.84rem;color:#f8fbfc}.battle-breakdown em{font-size:.68rem;font-style:normal;color:#f8fbfcb8}.battle-rounds{display:grid;gap:7px}.battle-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:4px;border-top:1px solid rgb(255 255 255 / .08)}.battle-section-title strong{font-size:.75rem;color:#f8fbfcd1}.battle-round-picker{display:flex;flex-wrap:wrap;gap:5px;margin:0;padding:0;list-style:none}.battle-round-picker li{min-width:0}.battle-round-step{display:grid;justify-items:center;gap:3px;min-width:0;width:62px;padding:6px 4px;border:1px solid rgb(255 255 255 / .1);border-radius:6px;background:#ffffff0a;color:#f8fbfc;text-align:center;cursor:pointer}.battle-round-step:hover,.battle-round-step:focus-visible{border-color:#ffdc5da6;background:#ffdc5d1a;outline:none}.battle-round-step[data-selected=true]{border-color:#ffdc5d;background:#ffdc5d29;box-shadow:inset 0 0 0 1px #fff1a86b}.battle-round-step-index{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#ffffff1f;color:#f8fbfcb8;font-size:.64rem;font-weight:900}.battle-round-step[data-selected=true] .battle-round-step-index{background:#ffdc5d;color:#16202b}.battle-round-step-label{font-size:.58rem;font-weight:800;letter-spacing:0;text-transform:uppercase;color:#f8fbfca8}.battle-round-step[data-selected=true] .battle-round-step-label{color:#ffdc5d}.battle-round-detail{display:grid;gap:6px;padding:8px;border:1px solid rgb(255 220 93 / .24);border-radius:6px;background:#ffffff0a}.battle-round-detail header{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.battle-round-detail header strong{min-width:0;overflow:hidden;font-size:.84rem;text-overflow:ellipsis;white-space:nowrap}.battle-round-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:0}.battle-round-counts div{display:grid;gap:2px;min-width:0;padding:6px 7px;border:1px solid rgb(255 255 255 / .08);border-radius:5px;background:#08111a3d}.battle-round-counts dt{font-size:.62rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase;color:#f8fbfc94}.battle-round-counts dd{min-width:0;margin:0;overflow:hidden;color:#f8fbfce6;font-size:.72rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.battle-roll-list{display:grid;gap:4px;padding:0;margin:0;list-style:none}.battle-roll-list li{display:grid;grid-template-columns:28px minmax(130px,1fr) minmax(180px,1.4fr) minmax(112px,.9fr);gap:6px;align-items:center;padding:6px 8px;border:1px solid rgb(255 255 255 / .08);border-radius:6px;background:#08111a42}.battle-roll-index{align-self:center;font-size:.66rem;font-weight:900;color:#ffdc5d}.battle-roll-main{min-width:0;font-size:.72rem;font-weight:900;line-height:1.2;color:#f8fbfc}.battle-roll-formula{min-width:0;font-size:.7rem;line-height:1.2;color:#f8fbfcc7}.battle-roll-formula strong{color:#f8fbfc}.battle-roll-list em{font-size:.68rem;font-style:normal;line-height:1.2;color:#f8fbfcb8}@media(max-width:720px){.battle-event-layer{width:min(430px,calc(100vw - 32px))}.capture-history-layer{top:16px;right:16px;left:16px;width:auto}.capture-history-list dl{grid-template-columns:repeat(2,minmax(0,1fr))}.capture-history-record-title{display:grid}.capture-history-record-title span{white-space:normal}.battle-report-summary,.battle-troop-story,.battle-breakdown{grid-template-columns:1fr}.battle-roll-list li{grid-template-columns:28px minmax(0,1fr)}.battle-round-counts{grid-template-columns:1fr}.battle-roll-main,.battle-roll-formula,.battle-roll-list em{grid-column:2}}.hint{margin:0;font-size:.76rem;color:#f8fbfcc7}.attack-list{display:grid;gap:6px;margin:0;padding:0;list-style:none}.attack-option{width:100%;padding:7px 10px;border:1px solid rgb(255 255 255 / .22);border-radius:6px;background:#1f6f7a52;color:#f8fbfc;font-size:.78rem;font-weight:600;text-align:left;cursor:pointer;transition:background .12s ease}.attack-option:hover{background:#1f6f7a8c}.attack-option--target{background:#8f2d3c57}.attack-option--target:hover{background:#8f2d3c94}.panel-button{justify-self:start;padding:7px 14px;border:1px solid rgb(255 255 255 / .3);border-radius:6px;background:#101e2bb3;color:#f8fbfc;font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.02em;cursor:pointer;transition:background .12s ease}.panel-button:hover{background:#1f384eeb}.panel-button:disabled{opacity:.48;cursor:not-allowed}.panel-button--primary{background:#1f6f7a;border-color:#2c8a96}.panel-button--primary:hover{background:#2c8a96}.panel-button--danger{border-color:#ca4f5bc7;background:#8f2d3cbd}.panel-button--danger:hover{background:#aa3644eb}.capture-history-summary{margin-top:-2px}.capture-history-button{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 8px;width:100%;justify-self:stretch;text-align:left}.capture-history-button span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.capture-history-button strong{color:#ffdc5d;font-size:.8rem;text-align:right}.capture-history-button em{grid-column:1 / -1;color:#f8fbfcb3;font-size:.66rem;font-style:normal;text-transform:none}.capture-history-layer{position:fixed;top:84px;right:472px;z-index:34;width:min(520px,calc(100vw - 504px));pointer-events:none}.capture-history-dialog{display:grid;gap:9px;max-height:calc(100vh - 104px);padding:12px;overflow-y:auto;border:1px solid rgb(142 219 171 / .48);border-radius:8px;background:#111f2d;color:#f8fbfc;box-shadow:0 18px 45px #08111a73;pointer-events:auto}.capture-history-dialog header{display:flex;align-items:center;justify-content:space-between;gap:12px}.capture-history-dialog header>div{display:grid;gap:2px;min-width:0}.capture-history-dialog header span{color:#8edbab;font-size:.62rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.capture-history-dialog header strong{font-size:1rem;font-weight:900}.capture-history-dialog header button{padding:5px 8px;border:1px solid rgb(255 255 255 / .18);border-radius:5px;background:#ffffff14;color:#f8fbfcb8;font-size:.62rem;font-weight:900;text-transform:uppercase;cursor:pointer}.capture-history-dialog header button:hover{background:#ffffff24;color:#f8fbfc}.capture-history-total,.capture-history-empty{margin:0;color:#f8fbfcc7;font-size:.76rem;line-height:1.25}.capture-history-list{display:grid;gap:7px;margin:0;padding:0;list-style:none}.capture-history-list li{display:grid;gap:6px;padding:9px;border:1px solid rgb(255 255 255 / .09);border-left:3px solid #8edbab;border-radius:6px;background:#ffffff0a}.capture-history-record-title{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.capture-history-record-title strong{min-width:0;overflow:hidden;font-size:.86rem;text-overflow:ellipsis;white-space:nowrap}.capture-history-record-title span{color:#f8fbfcad;font-size:.68rem;font-weight:800;white-space:nowrap}.capture-history-list p{margin:0;color:#f8fbfcc2;font-size:.72rem;line-height:1.25}.capture-history-list dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:0}.capture-history-list dl>div{display:grid;gap:2px;min-width:0;padding:5px 6px;border:1px solid rgb(255 255 255 / .08);border-radius:5px;background:#08111a3d}.capture-history-list dt{color:#f8fbfc8f;font-size:.58rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.capture-history-list dd{min-width:0;margin:0;overflow:hidden;color:#f8fbfc;font-size:.7rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.banner{margin:0;padding:10px 12px;border-radius:8px;font-size:.92rem;font-weight:800;text-align:center}.banner--win{background:#4c9f704d;border:1px solid #4c9f70}.banner--lose{background:#8f2d3c57;border:1px solid #8f2d3c}.phase-stepper{display:flex;gap:4px;margin:0;padding:0;list-style:none}.phase-step{display:grid;flex:1;justify-items:center;gap:3px;padding:6px 2px;border-radius:6px;background:#ffffff0a;text-align:center}.phase-step[data-status=active]{background:#ffdc5d29;box-shadow:inset 0 0 0 1px #fff1a899}.phase-step-index{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#ffffff1f;color:#f8fbfcb3;font-size:.62rem;font-weight:800}.phase-step[data-status=active] .phase-step-index{background:#ffdc5d;color:#16202b}.phase-step[data-status=done] .phase-step-index{background:#4c9f70b3;color:#f8fbfc}.phase-step-label{font-size:.6rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:#f8fbfca8}.phase-step[data-status=active] .phase-step-label{color:#ffdc5d}.phase-panel{padding:10px 12px;border:1px solid rgb(255 255 255 / .12);border-radius:8px;background:#ffffff0a}.turn-phase-panel{--turn-phase-action-width: 190px;grid-template-columns:minmax(0,1fr) var(--turn-phase-action-width);align-items:start;gap:6px 10px;padding:8px 10px}.turn-phase-panel>h3,.turn-phase-panel>.phase-panel-title{align-self:center;margin:0;line-height:1.2}.turn-phase-panel>.hint,.turn-phase-panel>.country-control,.turn-phase-panel>.upkeep-summary,.turn-phase-panel>.upkeep-warnings{grid-column:1 / -1}.turn-phase-panel>.panel-button{grid-column:2;grid-row:1;justify-self:end;inline-size:var(--turn-phase-action-width);text-align:center;white-space:nowrap}.phase-panel-title{margin:0 0 2px;font-size:.7rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#ffdc5d}.country-control{display:grid;gap:8px;min-width:0}.country-control-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:8px 10px;border:1px solid rgb(255 220 93 / .35);border-radius:7px;background:linear-gradient(90deg,rgb(255 220 93 / .11),transparent 58%),#08111a47;color:#f8fbfc;text-align:left;cursor:pointer;transition:border-color .12s ease,background .12s ease}.country-control-toggle:hover{border-color:#fff1a8b3;background:linear-gradient(90deg,rgb(255 220 93 / .17),transparent 68%),#08111a5c}.country-control-toggle:focus-visible{outline:2px solid #fff1a8;outline-offset:2px}.country-control-toggle-copy{display:grid;gap:2px;min-width:0}.country-control-toggle-copy strong{color:#ffdc5d;font-size:.74rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.country-control-toggle-copy small{overflow:hidden;color:#f8fbfcb8;font-size:.64rem;font-weight:700;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.country-control-toggle-icon{flex:none;color:#ffdc5d;font-size:1.35rem;font-weight:500;line-height:1;transform:rotate(0);transition:transform .14s ease}.country-control-toggle[aria-expanded=true] .country-control-toggle-icon{transform:rotate(90deg)}.country-control-region{display:grid;gap:8px}.country-control-explainer{margin:0;color:#f8fbfcb8;font-size:.68rem;line-height:1.35}.country-control-list{display:grid;gap:7px}.country-control-card{--country-control-accent: #4cd2a0;display:grid;gap:7px;min-width:0;padding:9px;border:1px solid color-mix(in srgb,var(--country-control-accent) 38%,transparent);border-left:3px solid var(--country-control-accent);border-radius:7px;background:#08111a4d}.country-control-card[data-control=full]{--country-control-accent: #ffdc5d;background:linear-gradient(110deg,rgb(255 220 93 / .1),transparent 55%),#08111a52}.country-control-card[data-control-broken=true]{--country-control-accent: #f1a35b}.country-control-card[data-control=none]{--country-control-accent: #ff8f82}.country-control-card header{display:flex;align-items:start;justify-content:space-between;gap:8px}.country-control-country{display:grid;gap:1px;min-width:0}.country-control-country small{color:#f8fbfc80;font-size:.54rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.country-control-country strong{overflow:hidden;font-size:.85rem;text-overflow:ellipsis;white-space:nowrap}.country-control-status{flex:none;padding:2px 6px;border:1px solid color-mix(in srgb,var(--country-control-accent) 68%,transparent);border-radius:999px;background:color-mix(in srgb,var(--country-control-accent) 12%,transparent);color:var(--country-control-accent);font-size:.54rem;font-weight:900;letter-spacing:.035em;line-height:1.2;text-transform:uppercase;white-space:nowrap}.country-control-state-line{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:9px}.country-control-state-line>strong{color:#f8fbfcdb;font-size:.66rem;font-variant-numeric:tabular-nums}.country-control-sovereignty{display:flex;gap:3px;min-width:0;height:8px}.country-control-sovereignty>span{flex:1 1 0;min-width:3px;border:1px solid rgb(248 251 252 / .2);border-radius:2px;background:repeating-linear-gradient(135deg,#f8fbfc0a 0 2px,#f8fbfc1a 2px 4px)}.country-control-sovereignty>span[data-held=true]{border-color:color-mix(in srgb,var(--country-control-accent) 78%,white 8%);background:var(--country-control-accent);box-shadow:0 0 7px color-mix(in srgb,var(--country-control-accent) 32%,transparent)}.country-control-benefits{display:grid;gap:4px;margin:0}.country-control-benefits>div{display:grid;grid-template-columns:108px minmax(0,1fr);gap:7px;min-width:0}.country-control-benefits dt{color:#f8fbfc80;font-size:.6rem;font-weight:800;text-transform:uppercase;white-space:nowrap}.country-control-benefits dd{min-width:0;margin:0;color:#f8fbfcd1;font-size:.66rem;font-weight:700;line-height:1.25;overflow-wrap:anywhere}.country-control-card[data-control=full] .country-control-bonus dd{color:#ffeb98}.country-control-penalty dd{color:#ffd0a5}@media(prefers-reduced-motion:reduce){.country-control-toggle,.country-control-toggle-icon{transition:none}}.upkeep-summary{display:grid;grid-template-columns:minmax(88px,max-content) minmax(0,1fr) max-content;gap:5px 8px;margin:0}.upkeep-summary>div{display:contents;font-size:.76rem}.upkeep-summary dt{color:#f8fbfca8;font-weight:600}.upkeep-summary dd{grid-column:2 / -1;margin:0;font-weight:700;text-align:right;overflow-wrap:anywhere}.upkeep-summary dd.upkeep-production-workers{grid-column:2;white-space:nowrap}.upkeep-summary dd.upkeep-production-output{grid-column:3;white-space:nowrap}.upkeep-summary>.upkeep-summary-meter-row{display:contents}.upkeep-summary dd.upkeep-meter-cell{min-width:0;text-align:left}.upkeep-meter{display:grid;gap:4px;min-width:0}.upkeep-meter-head{display:flex;align-items:center;justify-content:space-between;gap:6px}.upkeep-meter-value{color:#f8fbfcf0;font-size:.74rem;font-variant-numeric:tabular-nums;white-space:nowrap}.upkeep-meter-status{flex:0 0 auto;padding:2px 6px;border:1px solid currentColor;border-radius:999px;font-size:.58rem;line-height:1.1;letter-spacing:.04em;text-transform:uppercase}.upkeep-meter--covered .upkeep-meter-status{color:#9cf0ab;background:#63d47d24}.upkeep-meter--close .upkeep-meter-status{color:#ffdc5d;background:#ffdc5d24}.upkeep-meter--short .upkeep-meter-status{color:#ff9b8f;background:#e5525226}.upkeep-meter-track{position:relative;block-size:11px;border:1px solid rgb(248 251 252 / .2);border-radius:999px;background:linear-gradient(90deg,#d84c4c 0 42%,#ffdc5d 42% 66.67%,#63d47d 66.67% 100%);box-shadow:inset 0 1px 3px #00000052}.upkeep-meter-threshold,.upkeep-meter-marker{position:absolute;top:-4px;bottom:-4px;transform:translate(-50%);pointer-events:none}.upkeep-meter-threshold{width:1px;background:#10171ead;box-shadow:0 0 0 1px #f8fbfc47}.upkeep-meter-marker{width:3px;border-radius:999px;background:#f8fbfc;box-shadow:0 0 0 1px #0f171ecc,0 0 8px #f8fbfc73}.upkeep-meter-marker:before{position:absolute;top:-5px;left:50%;width:0;height:0;border-right:4px solid transparent;border-left:4px solid transparent;border-top:5px solid #f8fbfc;content:"";transform:translate(-50%)}.upkeep-meter-scale{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;color:#f8fbfc94;font-size:.55rem;font-weight:700;line-height:1.1;text-transform:uppercase}.upkeep-meter-scale span:nth-child(2){text-align:center}.upkeep-meter-scale span:last-child{text-align:right}.upkeep-warnings{display:grid;gap:5px;margin:0;padding:0;list-style:none}.upkeep-warnings li{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 8px;border:1px solid rgb(255 220 93 / .28);border-left:3px solid #ffdc5d;border-radius:6px;background:#ffdc5d14;color:#f8fbfce6;font-size:.72rem;font-weight:650;line-height:1.3}.upkeep-warning-remediation{padding:6px 8px;font-size:.66rem;line-height:1.15;white-space:nowrap}@media(max-width:520px){.upkeep-warnings li{grid-template-columns:minmax(0,1fr)}.upkeep-warning-remediation{width:100%}}.reinforce-counter{margin:0;font-size:.8rem;font-weight:600;color:#f8fbfcd1}.reinforce-counter strong{color:#ffdc5d;font-size:1rem}.reinforce-list{display:grid;gap:4px;max-height:168px;margin:0;padding:0;overflow-y:auto;list-style:none}.reinforce-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 6px;border-radius:6px;background:#ffffff0a}.reinforce-row-label{font-size:.74rem;font-weight:600}.reinforce-row-added{color:#4cd2a0;font-style:normal;font-weight:700}.reinforce-row-controls{display:flex;gap:4px}.reinforce-step{width:26px;height:26px;border:1px solid rgb(255 255 255 / .26);border-radius:6px;background:#1f6f7a52;color:#f8fbfc;font-size:1rem;font-weight:800;line-height:1;cursor:pointer;transition:background .12s ease}.reinforce-step:hover:not(:disabled){background:#1f6f7a99}.reinforce-step:disabled{opacity:.4;cursor:not-allowed}.build-treasury{margin:0;font-size:.8rem;font-weight:600;color:#f8fbfcd1}.build-treasury strong{color:#ffdc5d;font-size:1rem}.build-list,.maneuver-list,.maneuver-dest-list{display:grid;gap:4px;max-height:200px;margin:0;padding:0;overflow-y:auto;list-style:none}.build-row{display:grid;gap:4px;padding:4px 6px;border-radius:6px;background:#ffffff0a}.build-row-label,.maneuver-dest-label{font-size:.74rem;font-weight:600}.build-row-workers{color:#4cd2a0;font-style:normal;font-weight:700}.build-row-gate{font-size:.68rem;color:#ffbb78eb}.build-actions{display:flex;flex-wrap:wrap;gap:4px}.build-unit-button{padding:3px 8px;border:1px solid rgb(255 255 255 / .26);border-radius:6px;background:#1f6f7a52;color:#f8fbfc;font-size:.7rem;font-weight:700;line-height:1.2;cursor:pointer;transition:background .12s ease}.build-unit-button:hover:not(:disabled){background:#1f6f7a99}.build-unit-button:disabled{opacity:.4;cursor:not-allowed}.maneuver-dest-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 6px;border-radius:6px;background:#ffffff0a}.maneuver-dest-controls{display:flex;gap:4px}.maneuver-step{padding:4px 10px;border:1px solid rgb(255 255 255 / .26);border-radius:6px;background:#1f6f7a52;color:#f8fbfc;font-size:.72rem;font-weight:800;line-height:1;cursor:pointer;transition:background .12s ease}.maneuver-step:hover:not(:disabled){background:#1f6f7a99}.maneuver-step:disabled{opacity:.4;cursor:not-allowed}.setup-shell{display:grid;place-items:center;min-height:100vh;height:100vh;padding:clamp(16px,4vw,44px);overflow:auto;background:radial-gradient(circle at 18% 12%,rgb(255 220 93 / .18),transparent 30%),linear-gradient(135deg,#0c1824,#172638 48%,#274b55)}.setup-screen{display:grid;grid-template-columns:minmax(0,1.28fr) minmax(320px,.72fr);width:min(1040px,100%);min-height:min(650px,calc(100vh - 88px));border:1px solid rgb(255 241 168 / .5);border-radius:8px;background:#111f2df2;color:#f8fbfc;box-shadow:0 18px 44px #08111a66;overflow:hidden}.setup-cover{position:relative;min-height:100%;margin:0;overflow:hidden;background:#0c1824}.setup-cover img{display:block;width:100%;height:100%;object-fit:cover}.setup-cover:after{position:absolute;inset:0;content:"";background:linear-gradient(90deg,rgb(6 12 18 / .78) 0%,rgb(6 12 18 / .42) 45%,transparent 76%),linear-gradient(180deg,rgb(6 12 18 / .34) 0%,transparent 44%,rgb(6 12 18 / .46) 100%);pointer-events:none}.setup-cover__title{position:absolute;top:clamp(26px,5vw,48px);left:clamp(24px,5vw,52px);z-index:1;display:grid;gap:8px;width:min(410px,78%);color:#f8fbfc;text-shadow:0 3px 16px rgb(0 0 0 / .58)}.setup-cover__title span{color:#f1c75b;font-size:.74rem;font-weight:900;letter-spacing:0;line-height:1;text-transform:uppercase}.setup-cover__title h2{margin:0;color:#ffe17a;font-family:Georgia,Times New Roman,serif;font-size:4.8rem;font-weight:900;letter-spacing:0;line-height:.86;text-transform:uppercase}.setup-panel{display:grid;align-content:center;gap:16px;padding:clamp(24px,3vw,34px);border-left:1px solid rgb(255 241 168 / .24);background:#111f2df2}.setup-intro{margin:0;font-size:.84rem;line-height:1.45;color:#f8fbfccc}.setup-field{display:grid;gap:8px;margin:0;padding:0;border:none}.setup-field>span,.setup-field legend{padding:0;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:#f8fbfcb8}.setup-field select{padding:9px 10px;border:1px solid rgb(255 255 255 / .28);border-radius:8px;background:#101e2bd9;color:#f8fbfc;font-size:.9rem;font-weight:600;cursor:pointer}.setup-country-picker{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:stretch}.setup-country-picker select{min-width:0}.setup-options{display:flex;gap:8px}.setup-options--ai-count{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.setup-options--stacked{flex-direction:column}.setup-choice{flex:1;display:grid;gap:3px;padding:10px 12px;border:1px solid rgb(255 255 255 / .24);border-radius:8px;background:#ffffff0d;color:#f8fbfc;font-size:.82rem;font-weight:700;text-align:left;cursor:pointer;transition:border-color .12s ease,background .12s ease}.setup-choice:hover{background:#ffffff1a}.setup-choice[data-selected=true]{border-color:#ffdc5d;background:#ffdc5d24}.setup-choice--wide{width:100%}.setup-choice--random{align-content:center;min-width:132px;text-align:center}.setup-choice strong{font-size:.9rem;font-weight:800}.setup-choice em{font-size:.74rem;font-style:normal;font-weight:500;color:#f8fbfcb8}.setup-start{justify-self:stretch;width:100%;padding:11px 14px;font-size:.84rem;text-align:center}.setup-screen:has(.lobby-header),.setup-screen:has(.lobby-roll){grid-template-columns:minmax(300px,.62fr) minmax(560px,1fr);width:min(1180px,100%)}.setup-panel__header,.lobby-header{display:flex;align-items:center;gap:12px;min-width:0}.setup-panel__header>div,.lobby-header>div{min-width:0}.setup-panel__header h3,.lobby-header h3,.lobby-roll h3{margin:3px 0 0;color:#ffe17a;font-family:Georgia,Times New Roman,serif;font-size:1.7rem;line-height:1}.setup-kicker{color:#58c8bd;font-size:.68rem;font-weight:900;letter-spacing:.03em;text-transform:uppercase}.setup-icon-button{display:inline-grid;place-items:center;flex:0 0 auto;width:36px;height:36px;padding:0;border:1px solid rgb(255 255 255 / .22);border-radius:6px;background:#ffffff0f;color:#f8fbfc;cursor:pointer}.setup-icon-button:hover:not(:disabled){border-color:#58c8bd;background:#58c8bd24}.setup-icon-button:disabled{opacity:.45;cursor:not-allowed}.setup-icon-button--danger{color:#ff9b91}.setup-icon-button--danger:hover:not(:disabled){border-color:#ff766a;background:#ff564a1f}.setup-entry-actions{display:grid;gap:10px}.setup-path{display:grid;grid-template-columns:28px minmax(0,1fr);gap:12px;align-items:center;width:100%;min-height:70px;padding:13px 14px;border:1px solid rgb(255 255 255 / .22);border-radius:8px;background:#ffffff0e;color:#f8fbfc;text-align:left;cursor:pointer;transition:border-color .12s ease,background .12s ease,transform .12s ease}.setup-path:hover{border-color:#ffdc5d;background:#ffdc5d1c;transform:translateY(-1px)}.setup-path>svg{color:#58c8bd}.setup-path span{display:grid;gap:3px;min-width:0}.setup-path strong{font-size:.92rem}.setup-path small{color:#f8fbfca6;font-size:.72rem}.setup-online-form{display:grid;gap:16px}.setup-field input{min-width:0;width:100%;padding:10px 11px;border:1px solid rgb(255 255 255 / .28);border-radius:6px;outline:none;background:#06111b94;color:#f8fbfc;font:inherit;font-size:.9rem}.setup-field input:focus{border-color:#58c8bd;box-shadow:0 0 0 2px #58c8bd26}.setup-room-code-input{color:#ffe17a;font-size:1.25rem!important;font-weight:900;letter-spacing:.14em;text-align:center;text-transform:uppercase}.setup-error{margin:0;padding:9px 10px;border-left:3px solid #ff766a;background:#ff564a1a;color:#ffd3cf;font-size:.76rem;line-height:1.4}.setup-loading{display:flex;align-items:center;justify-content:center;gap:10px;min-height:180px;color:#f8fbfcc7;font-size:.84rem;font-weight:800}.lobby-header{justify-content:space-between}.lobby-connection{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;color:#ffb7ae;font-size:.7rem;font-weight:800}.lobby-connection[data-connected=true]{color:#65d899}.lobby-code{display:grid;grid-template-columns:minmax(0,1fr) auto 36px;gap:10px;align-items:center;padding:10px 12px;border:1px solid rgb(88 200 189 / .42);border-radius:6px;background:#58c8bd14}.lobby-code>span{color:#f8fbfca3;font-size:.68rem;font-weight:800;text-transform:uppercase}.lobby-code>strong{color:#ffe17a;font-size:1.15rem;letter-spacing:.12em}.lobby-roster{display:grid;gap:7px;max-height:min(420px,52vh);margin:0;padding:0;overflow:auto;list-style:none}.lobby-seat{display:grid;grid-template-columns:minmax(150px,1fr) minmax(130px,.8fr) 92px 36px;gap:8px;align-items:center;min-height:54px;padding:7px 8px;border:1px solid rgb(255 255 255 / .15);border-radius:6px;background:#ffffff09}.lobby-seat[data-viewer=true]{border-color:#ffdc5d94;background:#ffdc5d13}.lobby-seat__identity{display:grid;grid-template-columns:5px 18px minmax(0,1fr);gap:8px;align-items:center;min-width:0}.lobby-seat__identity>i{width:5px;height:34px;border-radius:2px}.lobby-seat__identity>svg{color:#58c8bd}.lobby-seat__identity span{display:grid;gap:2px;min-width:0}.lobby-seat__identity strong,.lobby-seat__identity small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lobby-seat__identity strong{font-size:.8rem}.lobby-seat__identity small{color:#f8fbfc8c;font-size:.65rem}.lobby-seat select{min-width:0;width:100%;padding:8px;border:1px solid rgb(255 255 255 / .2);border-radius:6px;background:#10202e;color:#f8fbfc;font-size:.72rem}.lobby-seat__status{display:inline-flex;align-items:center;gap:5px;color:#ffb7ae;font-size:.66rem;font-weight:800}.lobby-seat__status[data-ready=true]{color:#65d899}.lobby-seat__spacer{width:36px}.lobby-add-ai{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:100%;padding:8px;border:1px dashed rgb(88 200 189 / .5);border-radius:6px;background:transparent;color:#8ee0d8;font-size:.72rem;font-weight:800;cursor:pointer}.lobby-add-ai:hover:not(:disabled){background:#58c8bd14}.lobby-actions{display:grid;grid-template-columns:minmax(110px,.8fr) minmax(150px,1fr) minmax(145px,.8fr);gap:8px;align-items:center}.lobby-actions .panel-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px}.lobby-actions .panel-button[data-ready=true]{border-color:#65d899;color:#9aefba}.lobby-room-actions{display:flex;gap:6px;justify-content:flex-end}.lobby-room-actions .panel-button{display:inline-flex;gap:6px;align-items:center;justify-content:center;min-width:103px}.lobby-waiting{color:#f8fbfc9e;font-size:.72rem;font-weight:700;text-align:center}.lobby-roll{display:grid;justify-items:center;gap:11px;text-align:center}.lobby-roll>svg{color:#ffe17a}.lobby-roll__results{display:grid;gap:7px;width:100%;margin:6px 0 0;padding:0;list-style:none}.lobby-roll__results li{display:flex;justify-content:space-between;gap:12px;padding:9px 11px;border:1px solid rgb(255 255 255 / .14);border-radius:6px;background:#ffffff09;font-size:.76rem}.lobby-roll__results li[data-winner=true]{border-color:#ffe17a;background:#ffdc5d1a}.lobby-roll__results span{display:inline-flex;align-items:center;gap:8px}.lobby-roll__results i{width:10px;height:10px;border-radius:50%}.lobby-roll__winner{margin:4px 0 0;color:#9aefba;font-size:.9rem;font-weight:900}.lobby-roll__actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%}.lobby-roll__actions .panel-button{display:inline-flex;gap:7px;align-items:center;justify-content:center}.lobby-roll__actions .panel-button:only-child{grid-column:1 / -1}.room-ended>svg{color:#ff9b91}.room-ended__actions{display:grid;gap:8px;width:100%}.room-ended__actions .panel-button{display:inline-flex;align-items:center;justify-content:center;gap:7px}.multiplayer-lifecycle{display:grid;gap:8px;padding-block:8px;border-top:1px solid rgb(255 255 255 / .12);border-bottom:1px solid rgb(255 255 255 / .12)}body:has(.multiplayer-lifecycle) .map-editor-entry,body:has(.multiplayer-lifecycle) .map-editor-toolbar{display:none}.multiplayer-lifecycle>header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 12px}.multiplayer-lifecycle>header span{display:inline-flex;align-items:center;gap:5px;color:#f8fbfcb8;font-size:.66rem;font-weight:800}.multiplayer-lifecycle>header span:first-child{color:#ffb7ae}.multiplayer-lifecycle>header span[data-connected=true]{color:#65d899}.multiplayer-grace{display:grid;gap:7px}.multiplayer-grace p,.multiplayer-offline,.multiplayer-error{margin:0;font-size:.72rem;line-height:1.35}.multiplayer-grace p{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:7px;align-items:center;color:#ffe17a;font-weight:800}.multiplayer-grace>div{display:grid;grid-template-columns:1fr 1fr;gap:6px}.multiplayer-grace .panel-button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:0;padding-inline:7px;font-size:.66rem}.multiplayer-offline{color:#ffb7ae}.multiplayer-error{color:#ffd3cf}@media(max-width:840px){.setup-shell{place-items:start center}.setup-screen{grid-template-columns:1fr;min-height:0}.setup-screen:has(.lobby-header),.setup-screen:has(.lobby-roll){grid-template-columns:1fr}.setup-cover{min-height:0;aspect-ratio:16 / 10}.setup-cover__title h2{font-size:3.8rem}.setup-panel{border-top:1px solid rgb(255 241 168 / .24);border-left:none}}@media(max-width:520px){.setup-shell{padding:12px 12px 88px}.setup-screen{border-radius:8px}.setup-cover__title{top:18px;left:18px;width:min(330px,78%)}.setup-cover{aspect-ratio:16 / 8}.setup-cover__title h2{font-size:2.85rem}.setup-panel{gap:12px;padding:16px}.setup-options--ai-count{grid-template-columns:repeat(2,minmax(0,1fr))}.setup-country-picker{grid-template-columns:1fr}.setup-choice--random{min-width:0;width:100%}.lobby-header{align-items:flex-start}.lobby-seat{grid-template-columns:minmax(0,1fr) 36px;grid-template-areas:"identity remove" "country country" "status status"}.lobby-seat__identity{grid-area:identity}.lobby-seat>select{grid-area:country}.lobby-seat__status{grid-area:status}.lobby-seat>.setup-icon-button{grid-area:remove}.lobby-seat__spacer{display:none}.lobby-actions{grid-template-columns:1fr 1fr 36px}.lobby-room-actions{grid-column:1 / -1}.multiplayer-grace>div{grid-template-columns:1fr}body:has(.setup-shell) .dev-tools-toggle,body:has(.setup-shell) .version-pill{display:none}}.standing[data-active=true]{background:#ffdc5d1f;box-shadow:inset 0 0 0 1px #ffdc5d80}.standing[data-defeated=true]{opacity:.5}.standing[data-defeated=true] strong{font-weight:600;color:#f8fbfc99}.turn-observer{padding:10px 12px;border:1px solid rgb(255 220 93 / .4);border-radius:8px;background:#ffdc5d14}.economy-line{margin:0;font-size:.76rem;font-weight:600;color:#ffdc5d}.new-game-confirm-layer{position:fixed;inset:0;z-index:45;display:grid;place-items:center;padding:18px;background:#08111a94}.new-game-confirm-dialog{display:grid;gap:12px;width:min(420px,100%);padding:18px;border:1px solid rgb(255 241 168 / .52);border-radius:10px;background:#111f2df7;color:#f8fbfc;box-shadow:0 22px 54px #08111a85}.new-game-confirm-dialog header{display:grid;gap:3px}.new-game-confirm-dialog header span{color:#ffdc5d;font-size:.64rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.new-game-confirm-dialog header strong{font-size:1.08rem;font-weight:900}.new-game-confirm-dialog p{margin:0;color:#f8fbfcd1;font-size:.84rem;line-height:1.4}.new-game-confirm-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.skip-turn{justify-self:start}.npc-turn-hud{position:fixed;top:16px;left:50%;z-index:6;display:grid;grid-template-columns:auto auto;align-items:center;gap:6px 12px;width:min(520px,calc(100vw - 32px));padding:10px 12px;border:1px solid rgb(255 241 168 / .46);border-radius:8px;background:#111f2de6;color:#f8fbfc;box-shadow:0 14px 36px #08111a4d;transform:translate(-50%);pointer-events:none}.npc-turn-hud>span{color:#ffdc5d;font-size:.64rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.npc-turn-hud>strong{min-width:0;overflow:hidden;color:#f8fbfc;font-size:.86rem;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.npc-turn-hud ol{display:grid;grid-column:1 / -1;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;margin:0;padding:0;list-style:none}.npc-turn-hud li{min-width:0;padding:4px 5px;border:1px solid rgb(255 255 255 / .12);border-radius:5px;background:#ffffff0d;color:#f8fbfc9e;font-size:.58rem;font-weight:800;text-align:center;text-transform:uppercase}.npc-turn-hud li[data-active=true]{border-color:#ffdc5dad;background:#ffdc5d2e;color:#ffdc5d}.npc-turn-hud em{grid-column:1 / -1;color:#f8fbfcc7;font-size:.7rem;font-style:normal;font-weight:700}@media(max-width:720px){.npc-turn-hud{top:8px;width:min(420px,calc(100vw - 16px));padding:8px 9px}.npc-turn-hud li{padding-inline:2px;font-size:.5rem}}.europe-map[data-observing=true] .map-layer{transition:transform .6s ease}.terrain-marker-layer{pointer-events:none}.terrain-marker{filter:drop-shadow(0 0 1.2px rgb(255 255 255 / .85))}.terrain-marker path{fill:none;stroke:#111f2be6;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.troop-badge-layer,.maneuver-drag-layer{pointer-events:none}.maneuver-drag-layer line{stroke:#ffdc5d;stroke-width:2.2;stroke-linecap:round;stroke-dasharray:6 4;vector-effect:non-scaling-stroke;filter:drop-shadow(0 1px 2px rgb(0 0 0 / .45))}.maneuver-drag-layer circle{fill:#ffdc5d;stroke:#101e2beb;stroke-width:1.4;vector-effect:non-scaling-stroke}.attack-drag-layer{pointer-events:none}.attack-drag-layer line{stroke:#4cd2a0;stroke-width:2.4;stroke-linecap:round;vector-effect:non-scaling-stroke;filter:drop-shadow(0 1px 2px rgb(0 0 0 / .45))}.attack-drag-layer[data-valid=false] line{stroke:#ff6b5d;stroke-dasharray:5 5}.attack-cursor{color:#4cd2a0;filter:drop-shadow(0 3px 5px rgb(0 0 0 / .5))}.attack-drag-layer[data-valid=false] .attack-cursor{color:#ff6b5d}.attack-cursor-tooltip rect{fill:#101e2bf0;stroke:#ff6b5d;stroke-width:1.2}.attack-cursor-tooltip text{fill:#f8fbfc;font-size:10px;font-weight:800;letter-spacing:0}.npc-attack-probe line{animation:npc-attack-probe-pulse 1.1s ease-in-out infinite}.npc-attack-cursor{animation:npc-attack-cursor-pulse 1.1s ease-in-out infinite}.npc-attack-target-cursor{color:#ff6b5d}@keyframes npc-attack-probe-pulse{0%,to{stroke-width:2.2;opacity:.72}50%{stroke-width:3.2;opacity:1}}@keyframes npc-attack-cursor-pulse{0%,to{opacity:.78}50%{opacity:1}}@media(prefers-reduced-motion:reduce){.npc-attack-probe line,.npc-attack-cursor{animation:none}}.combat-map-animation{pointer-events:none}.combat-route-line{fill:none;stroke:var(--combat-attacker-color);stroke-width:3.2;stroke-linecap:round;stroke-dasharray:12 8;vector-effect:non-scaling-stroke;animation:combat-route-charge 1.4s ease-out both}.combat-route-chevron{color:var(--combat-attacker-color);animation:combat-chevron-charge 1.4s ease-out both}.combat-route-chevron path{fill:none;stroke:currentColor;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.combat-march-token{color:var(--combat-attacker-color);opacity:0;transform:translate(var(--combat-to-x),var(--combat-to-y));transform-box:view-box;transform-origin:0 0;animation:combat-troop-march 1.16s cubic-bezier(.18,.78,.24,1) var(--combat-token-delay) both}.combat-troop-token-bg{fill:#101e2bf0;stroke:currentColor;stroke-width:1.8;vector-effect:non-scaling-stroke}.combat-troop-token-icon .troop-badge-icon{stroke-width:1.45}.combat-defender-token{color:var(--combat-defender-color)}.combat-defender-token-core{animation:combat-defender-brace 1.4s ease-in-out both}.combat-defender-token[data-token-index="1"] .combat-defender-token-core{animation-delay:70ms}.combat-impact{opacity:0;animation:combat-impact-arrive 1.4s ease-out both}.combat-impact-core{fill:#ff9a52;stroke:#fff1a8;stroke-width:2.5;vector-effect:non-scaling-stroke;animation:combat-impact-core 1.4s ease-out both}.combat-impact-ring{fill:none;stroke:#ffdc5d;stroke-width:3;vector-effect:non-scaling-stroke;transform-box:fill-box;transform-origin:center;animation:combat-impact-ring 1.4s ease-out both}.combat-impact-rays line{stroke:#fff1a8;stroke-width:3;stroke-linecap:round;vector-effect:non-scaling-stroke;animation:combat-impact-ray 1.4s ease-out both}.combat-smoke circle{fill:#d6dfe8;stroke:#101e2b80;stroke-width:1;vector-effect:non-scaling-stroke;animation:combat-smoke-puff 1.4s ease-out both}.combat-smoke circle:nth-child(2){animation-delay:50ms}.combat-smoke circle:nth-child(3){animation-delay:.1s}@keyframes combat-route-charge{0%{opacity:0;stroke-dashoffset:54}16%,62%{opacity:.9}72%{stroke-dashoffset:0}to{opacity:0;stroke-dashoffset:-18}}@keyframes combat-chevron-charge{0%,18%{opacity:0}42%,68%{opacity:1}to{opacity:0}}@keyframes combat-troop-march{0%{opacity:0;transform:translate(var(--combat-from-x),var(--combat-from-y))}10%{opacity:1}64%,78%{opacity:1;transform:translate(var(--combat-to-x),var(--combat-to-y))}to{opacity:0;transform:translate(var(--combat-to-x),var(--combat-to-y))}}@keyframes combat-defender-brace{0%,30%{opacity:.72;transform:translate(0)}48%{opacity:1;transform:translate(-4px)}58%{transform:translate(3px)}70%{opacity:1}to{opacity:0;transform:translate(0)}}@keyframes combat-impact-arrive{0%,48%{opacity:0}54%,76%{opacity:1}to{opacity:0}}@keyframes combat-impact-core{0%,48%{transform:scale(.2)}57%{transform:scale(1.5)}76%,to{transform:scale(.5)}}@keyframes combat-impact-ring{0%,48%{opacity:0;transform:scale(.25)}55%{opacity:1}78%,to{opacity:0;transform:scale(2.6)}}@keyframes combat-impact-ray{0%,48%{opacity:0}56%{opacity:1}76%,to{opacity:0}}@keyframes combat-smoke-puff{0%,54%{opacity:0;transform:translateY(5px) scale(.45)}66%{opacity:.8}to{opacity:0;transform:translateY(-14px) scale(1.25)}}@media(prefers-reduced-motion:reduce){.combat-route-line,.combat-route-chevron,.combat-march-token,.combat-defender-token-core,.combat-impact,.combat-impact-core,.combat-impact-ring,.combat-impact-rays line,.combat-smoke circle{animation:none}.combat-route-line,.combat-route-chevron,.combat-march-token,.combat-defender-token-core,.combat-impact{opacity:.88}}.attack-cursor-halo{fill:color-mix(in srgb,currentColor 22%,transparent);stroke:color-mix(in srgb,currentColor 72%,white 8%);stroke-width:1.2;vector-effect:non-scaling-stroke}.attack-cursor-ring{fill:#101e2bf0;stroke:currentColor;stroke-width:2;vector-effect:non-scaling-stroke}.attack-cursor-mark{fill:none;stroke:currentColor;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.maneuver-move-animation{pointer-events:none}.maneuver-move-token{color:#f8fbfc;filter:drop-shadow(0 2px 3px rgb(0 0 0 / .45))}.maneuver-move-token--farmer{color:#9be7a5}.maneuver-move-token--miner{color:#d6dfe8}.maneuver-move-token--goldMiner{color:#f5d36b}.maneuver-move-token--lumberjack{color:#b7d08a}.maneuver-move-token-bg{fill:#101e2bf0;stroke:#ffdc5d;stroke-width:1.4;vector-effect:non-scaling-stroke}.maneuver-move-token-icon .troop-badge-icon{stroke-width:1.35}.troop-badge-bg{fill:color-mix(in srgb,currentColor 24%,rgb(16 30 43 / .9));stroke:currentColor;stroke-width:1.2}.troop-badge-metric{color:#f8fbfc}.troop-badge-flag-base{fill:#ffffff29}.troop-badge-flag-border{fill:none;stroke:#ffffffb8;stroke-width:.8}.troop-badge-metric--farmer{color:#9be7a5}.troop-badge-metric--miner{color:#d6dfe8}.troop-badge-metric--goldMiner{color:#f5d36b}.troop-badge-metric--lumberjack{color:#b7d08a}.troop-badge-metric--pillbox{color:#9fd8e0}.troop-badge-icon{fill:none;stroke:currentColor;stroke-width:1.15;stroke-linecap:round;stroke-linejoin:round}.troop-badge-icon--troop{fill:#f8fbfc29}.troop-badge-metric-count{fill:currentColor;font-size:8.5px;font-weight:800;letter-spacing:0}.troop-badge-pending{fill:#8ef0a6}.troop-badge-layer .troop-badge[data-interactive=true]{pointer-events:auto;cursor:pointer}.troop-badge-layer[data-maneuver=true] .troop-badge[data-interactive=true],.troop-badge-layer[data-attack=true] .troop-badge[data-interactive=true]{cursor:grab;touch-action:none}.troop-badge-layer[data-maneuver=true] .troop-badge[data-dragging=true]{cursor:grabbing}.troop-badge-hover-zone{fill:transparent;pointer-events:all}.troop-badge-layer[data-reinforce=true] .troop-badge .troop-badge-bg{stroke:currentColor;stroke-width:1.6}.troop-badge-layer[data-maneuver=true] .troop-badge .troop-badge-bg{stroke:#ffdc5d;stroke-width:1.6}.troop-badge-layer[data-attack=true] .troop-badge[data-interactive=true] .troop-badge-bg{stroke:#ff6b5d;stroke-width:1.6}.troop-badge-layer[data-reinforce=true] .troop-badge:hover .troop-badge-bg,.troop-badge-layer[data-maneuver=true] .troop-badge:hover .troop-badge-bg,.troop-badge-layer[data-maneuver=true] .troop-badge[data-dragging=true] .troop-badge-bg,.troop-badge-layer[data-attack=true] .troop-badge[data-interactive=true]:hover .troop-badge-bg,.troop-badge-layer[data-attack=true] .troop-badge[data-dragging=true] .troop-badge-bg{fill:#1c3042f2;stroke-width:2.2}.troop-badge-controls{opacity:0;pointer-events:none;transition:opacity .08s ease-out}.troop-badge:hover .troop-badge-controls{opacity:1;pointer-events:auto}.troop-badge-btn{cursor:pointer}.troop-badge-btn circle{fill:#101e2bf5;stroke:currentColor;stroke-width:1.6}.troop-badge-btn text{font-size:15px;font-weight:800;fill:#f8fbfc}.troop-badge-add:hover circle{fill:#1c462efa}.troop-badge-msg rect{fill:#101e2bf5;stroke:currentColor;stroke-width:1.4}.troop-badge-msg text,.troop-badge-next text{font-size:8px;font-weight:700;fill:#f8fbfc}.troop-badge-next rect{fill:#101e2bfa;stroke:#ffdc5d;stroke-width:1.5}.troop-badge-next:hover rect,.troop-badge-next:focus-visible rect{fill:#23404dfa;stroke-width:2}.troop-badge-btn:active circle{stroke-width:2.6}.troop-badge-next:active rect{stroke-width:2.6}.terrain-glyph{flex:none;width:16px;height:16px}.terrain-glyph path{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.terrain-legend{position:absolute;top:182px;left:16px;z-index:2;display:grid;gap:6px;padding:9px 11px;border:1px solid rgb(255 255 255 / .34);border-radius:6px;background:#101e2bc7;color:#f8fbfc;box-shadow:0 8px 22px #0b17222e;pointer-events:auto}.terrain-legend-title{font-size:.62rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#f8fbfcb8}.terrain-legend ul{display:grid;gap:5px;margin:0;padding:0;list-style:none}.terrain-legend li{display:flex;align-items:center;gap:7px;font-size:.74rem;font-weight:600}.terrain-legend li small{margin-left:auto;font-size:.64rem;color:#f8fbfc99}.audio-controls{position:fixed;top:16px;right:16px;z-index:60;color:#f8fbfc}.audio-controls__toggle{display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid rgb(255 241 168 / .48);border-radius:50%;background:#101e2beb;color:#ffdc5d;box-shadow:0 10px 24px #08111a4d;cursor:pointer;transition:border-color .12s ease,background .12s ease,transform .12s ease}.audio-controls__toggle:hover,.audio-controls__toggle:focus-visible{border-color:#fff1a8;background:#1f384e;transform:translateY(-1px)}.audio-controls__toggle:focus-visible,.audio-controls__panel button:focus-visible,.audio-controls__panel input:focus-visible{outline:2px solid #fff1a8;outline-offset:2px}.audio-controls__panel{position:absolute;top:52px;right:0;display:grid;gap:13px;width:min(286px,calc(100vw - 32px));padding:14px;border:1px solid rgb(255 241 168 / .5);border-radius:10px;background:#111f2df7;box-shadow:0 18px 42px #08111a6b}.audio-controls__panel header,.audio-controls__panel header span{display:flex;align-items:center}.audio-controls__panel header{justify-content:space-between;gap:12px}.audio-controls__panel header span{gap:7px;color:#ffdc5d;font-size:.76rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.audio-controls__panel header button{display:grid;place-items:center;width:30px;height:30px;padding:0;border:1px solid rgb(255 255 255 / .18);border-radius:6px;background:#ffffff0f;color:#f8fbfc;cursor:pointer}.audio-controls__mute{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;padding:8px 10px;border:1px solid rgb(255 255 255 / .22);border-radius:7px;background:#1f6f7a4d;color:#f8fbfc;font-size:.72rem;font-weight:800;text-transform:uppercase;cursor:pointer}.audio-controls__mute:hover{background:#1f6f7a85}.audio-setting{display:grid;gap:7px}.audio-setting label{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#f8fbfce6;font-size:.75rem;font-weight:800}.audio-setting input[type=checkbox]{width:17px;height:17px;accent-color:#ffdc5d}.audio-setting input[type=range]{width:100%;accent-color:#ffdc5d}.audio-setting input:disabled{opacity:.42}.audio-controls__panel>p{margin:0;color:#f8fbfc94;font-size:.64rem;line-height:1.45}.dev-tools-toggle{position:fixed;bottom:16px;left:50%;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:142px;padding:9px 12px;border:1px solid rgb(255 255 255 / .24);border-radius:999px;background:#101e2be0;color:#f8fbfcc7;box-shadow:0 10px 24px #08111a47;font-size:.68rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase;transform:translate(-50%);cursor:pointer}.dev-tools-toggle input{appearance:none;position:relative;width:34px;height:18px;margin:0;border:1px solid rgb(255 255 255 / .28);border-radius:999px;background:#ffffff1f;cursor:pointer}.dev-tools-toggle input:after{content:"";position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:50%;background:#f8fbfccc;transition:transform .12s ease,background .12s ease}.dev-tools-toggle input:checked{border-color:#ffdc5dc7;background:#ffdc5d3d}.dev-tools-toggle input:checked:after{transform:translate(16px);background:#ffdc5d}.version-pill{position:fixed;bottom:16px;left:16px;z-index:40;max-width:calc(100vw - 32px);padding:7px 11px;border:1px solid rgb(255 241 168 / .46);border-radius:999px;background:#101e2beb;color:#f8fbfc;box-shadow:0 10px 24px #08111a47;font-size:.68rem;font-weight:900;letter-spacing:.03em;line-height:1;pointer-events:none;text-transform:uppercase;-webkit-user-select:none;user-select:none}.state-readout .terrain-value{display:flex;align-items:center;gap:6px}.state-readout .terrain-value small{color:#f8fbfc99;font-weight:600}.standing .standing-id{display:flex;align-items:center;gap:6px;font-size:.7rem;font-weight:700;text-transform:none;color:#f8fbfc}.standing-swatch{flex:none;width:10px;height:10px;border-radius:2px;box-shadow:inset 0 0 0 1px #00000059}.standing .standing-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;font-weight:700;text-transform:none;color:#f8fbfc}.standing .standing-flag{flex:none;padding:1px 5px;border-radius:999px;font-size:.58rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase}.standing .standing-flag[data-kind=winner]{background:#4c9f7059;color:#b8f0cf}.standing .standing-flag[data-kind=out]{background:#8f2d3c66;color:#f3b6bf}.standing .standing-econ{font-size:.7rem;font-weight:600;text-transform:none;color:#f8fbfcd1}.standing[data-winner=true]{background:#4c9f7029;box-shadow:inset 0 0 0 1px #4c9f708c}.state-region[data-actionable=true]:not([data-selected=true]){fill:#78d6ff1f;stroke:#78d6ffc7;stroke-width:1.9;cursor:pointer}.state-region[data-target=true]:not([data-selected=true]){fill:#ffdc5d38;stroke:#ffdc5d;stroke-width:2.4;cursor:pointer;animation:state-target-pulse 1.3s ease-in-out infinite}@keyframes state-target-pulse{0%,to{fill:#ffdc5d29}50%{fill:#ffdc5d57}}.state-popover-anchor{position:absolute;z-index:4;transform:translate(-50%,calc(-100% - 14px));pointer-events:none}.state-popover-anchor[data-placement=left]{transform:translate(calc(-100% - 16px),-50%)}.state-popover{position:relative;display:grid;gap:6px;width:max-content;max-width:230px;padding:10px 12px 11px;border:1px solid rgb(255 241 168 / .55);border-radius:9px;background:#111f2df5;color:#f8fbfc;box-shadow:0 14px 30px #08111a6b;pointer-events:auto}.state-popover:after{content:"";position:absolute;left:50%;bottom:-7px;width:12px;height:12px;transform:translate(-50%) rotate(45deg);background:#111f2df5;border-right:1px solid rgb(255 241 168 / .55);border-bottom:1px solid rgb(255 241 168 / .55)}.state-popover-anchor[data-placement=left] .state-popover:after{left:auto;right:-7px;bottom:50%;transform:translateY(50%) rotate(45deg);border:0;border-top:1px solid rgb(255 241 168 / .55);border-right:1px solid rgb(255 241 168 / .55)}.state-popover-close{position:absolute;top:4px;right:5px;width:20px;height:20px;padding:0;border:none;border-radius:5px;background:transparent;color:#f8fbfca8;font-size:1.1rem;line-height:1;cursor:pointer;transition:background .12s ease,color .12s ease}.state-popover-close:hover{background:#ffffff1a;color:#f8fbfc}.state-popover-title{margin:0;padding-right:18px;font-size:.82rem;font-weight:800}.state-popover-subtitle{margin:0;font-size:.7rem;font-weight:600;color:#f8fbfcb3}.state-popover-hint{margin:0;font-size:.7rem;color:#f8fbfcc7}.state-popover-preference{display:flex;align-items:center;gap:6px;width:fit-content;color:#f8fbfcb8;font-size:.66rem;font-weight:650;cursor:pointer}.state-popover-preference input{width:14px;height:14px;margin:0;accent-color:#ffdc5d;cursor:pointer}.state-popover-row{display:flex;align-items:center;gap:6px}.state-popover-maneuver-grid{display:grid;gap:5px}.state-popover-maneuver-unit{display:grid;grid-template-columns:minmax(46px,1fr) 28px 28px;align-items:center;gap:5px}.state-popover-maneuver-unit span{font-size:.68rem;font-weight:800;text-transform:capitalize;color:#f8fbfcc7}.state-popover-step{width:28px;height:28px;border:1px solid rgb(255 255 255 / .26);border-radius:6px;background:#1f6f7a52;color:#f8fbfc;font-size:1.05rem;font-weight:800;line-height:1;cursor:pointer;transition:background .12s ease}.state-popover-step:hover:not(:disabled){background:#1f6f7a99}.state-popover-pending{min-width:30px;font-size:.82rem;font-weight:800;text-align:center;color:#4cd2a0}.state-popover-build{display:grid;gap:4px}.state-popover-build-button{padding:5px 9px;border:1px solid rgb(255 255 255 / .26);border-radius:6px;background:#1f6f7a52;color:#f8fbfc;font-size:.72rem;font-weight:700;text-align:left;cursor:pointer;transition:background .12s ease}.state-popover-build-button:hover:not(:disabled){background:#1f6f7a99}.state-popover-move,.state-popover-attack,.state-popover-cancel,.state-popover-continue{flex:1;padding:6px 12px;border:1px solid rgb(255 255 255 / .26);border-radius:6px;background:#1f6f7a52;color:#f8fbfc;font-size:.74rem;font-weight:800;line-height:1;cursor:pointer;transition:background .12s ease}.state-popover-move:hover:not(:disabled),.state-popover-attack:hover:not(:disabled),.state-popover-continue:hover{background:#1f6f7a99}.state-popover-attack{background:#8f2d3c75;border-color:#8f2d3c}.state-popover-attack:hover:not(:disabled){background:#8f2d3cb3}.state-popover-cancel{background:#101e2bb3}.state-popover-cancel:hover{background:#1f384eeb}.state-popover-continue{width:100%;background:#1f6f7a6b;border-color:#4cd2a085}.state-popover-step:disabled,.state-popover-build-button:disabled,.state-popover-move:disabled,.state-popover-attack:disabled{opacity:.4;cursor:not-allowed}.turn-order-overlay{display:grid;place-items:center;width:100%}.turn-order-dialog{position:relative;display:grid;gap:16px;justify-items:center;width:min(460px,100%);padding:28px 30px;border:1px solid rgb(255 241 168 / .5);border-radius:8px;background:#111f2df2;color:#f8fbfc;text-align:center;box-shadow:0 18px 44px #08111a66;overflow:hidden}.turn-order-dialog>:not(.turn-order-map){position:relative;z-index:1}.turn-order-map{position:absolute;inset:0;z-index:0;margin:0;pointer-events:none}.turn-order-map img{display:block;width:100%;height:100%;object-fit:cover;object-position:48% 42%;filter:saturate(.86) contrast(1.08);opacity:.52}.turn-order-map:after{position:absolute;inset:0;content:"";background:radial-gradient(circle at 50% 34%,rgb(255 220 93 / .16),transparent 34%),linear-gradient(180deg,#081018b3,#0c1823e6 68%,#0c1823f7),linear-gradient(90deg,rgb(8 16 24 / .72),transparent 46%,rgb(8 16 24 / .72))}.turn-order-dialog h2{margin:0;font-size:1.4rem;font-weight:800;color:#ffdc5d}.turn-order-status{margin:0;min-height:1.4em;font-size:.9rem;font-weight:600;color:#f8fbfce6}.turn-order-dice{display:flex;align-items:center;justify-content:center;gap:44px;min-height:84px;perspective:700px}.die3d{--die-size: 64px;width:var(--die-size);height:var(--die-size);perspective:520px}.die3d__cube{position:relative;width:100%;height:100%;transform-style:preserve-3d;transform:rotateX(-16deg) rotateY(-20deg);transition:transform .7s cubic-bezier(.22,.9,.3,1.25)}.die3d[data-rolling=true] .die3d__cube{animation:die-tumble calc(1.45s + var(--die-index, 0) * .24s) linear infinite;transition:none}@keyframes die-tumble{0%{transform:rotateX(0) rotateY(0) rotate(0)}25%{transform:rotateX(190deg) rotateY(95deg) rotate(40deg)}50%{transform:rotateX(360deg) rotateY(230deg) rotate(120deg)}75%{transform:rotateX(545deg) rotateY(370deg) rotate(220deg)}to{transform:rotateX(720deg) rotateY(540deg) rotate(360deg)}}.die3d[data-rolling=false][data-value="1"] .die3d__cube{transform:rotateX(-16deg) rotateY(-20deg)}.die3d[data-rolling=false][data-value="2"] .die3d__cube{transform:rotateX(-16deg) rotateY(-20deg) rotateY(-90deg)}.die3d[data-rolling=false][data-value="3"] .die3d__cube{transform:rotateX(-16deg) rotateY(-20deg) rotateX(-90deg)}.die3d[data-rolling=false][data-value="4"] .die3d__cube{transform:rotateX(-16deg) rotateY(-20deg) rotateX(90deg)}.die3d[data-rolling=false][data-value="5"] .die3d__cube{transform:rotateX(-16deg) rotateY(-20deg) rotateY(90deg)}.die3d[data-rolling=false][data-value="6"] .die3d__cube{transform:rotateX(-16deg) rotateY(-20deg) rotateY(180deg)}.die3d__face{position:absolute;inset:0;box-sizing:border-box;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);padding:14%;border-radius:12px;background:linear-gradient(150deg,#fff7e6,#f1d489);border:1px solid rgb(120 80 20 / .45);box-shadow:inset 0 0 10px #78501447;backface-visibility:hidden}.die3d__face--1{transform:translateZ(calc(var(--die-size) / 2))}.die3d__face--2{transform:rotateY(90deg) translateZ(calc(var(--die-size) / 2))}.die3d__face--3{transform:rotateX(90deg) translateZ(calc(var(--die-size) / 2))}.die3d__face--4{transform:rotateX(-90deg) translateZ(calc(var(--die-size) / 2))}.die3d__face--5{transform:rotateY(-90deg) translateZ(calc(var(--die-size) / 2))}.die3d__face--6{transform:rotateY(180deg) translateZ(calc(var(--die-size) / 2))}.die3d__pip{align-self:center;justify-self:center;width:calc(var(--die-size) * .15);height:calc(var(--die-size) * .15);border-radius:50%;background:radial-gradient(circle at 35% 30%,#6b4a12,#2a1a04);box-shadow:inset 0 0 2px #0009}.die3d__face--1 .die3d__pip:nth-child(1){grid-area:2 / 2}.die3d__face--2 .die3d__pip:nth-child(1){grid-area:1 / 1}.die3d__face--2 .die3d__pip:nth-child(2){grid-area:3 / 3}.die3d__face--3 .die3d__pip:nth-child(1){grid-area:1 / 1}.die3d__face--3 .die3d__pip:nth-child(2){grid-area:2 / 2}.die3d__face--3 .die3d__pip:nth-child(3){grid-area:3 / 3}.die3d__face--4 .die3d__pip:nth-child(1){grid-area:1 / 1}.die3d__face--4 .die3d__pip:nth-child(2){grid-area:1 / 3}.die3d__face--4 .die3d__pip:nth-child(3){grid-area:3 / 1}.die3d__face--4 .die3d__pip:nth-child(4){grid-area:3 / 3}.die3d__face--5 .die3d__pip:nth-child(1){grid-area:1 / 1}.die3d__face--5 .die3d__pip:nth-child(2){grid-area:1 / 3}.die3d__face--5 .die3d__pip:nth-child(3){grid-area:2 / 2}.die3d__face--5 .die3d__pip:nth-child(4){grid-area:3 / 1}.die3d__face--5 .die3d__pip:nth-child(5){grid-area:3 / 3}.die3d__face--6 .die3d__pip:nth-child(1){grid-area:1 / 1}.die3d__face--6 .die3d__pip:nth-child(2){grid-area:2 / 1}.die3d__face--6 .die3d__pip:nth-child(3){grid-area:3 / 1}.die3d__face--6 .die3d__pip:nth-child(4){grid-area:1 / 3}.die3d__face--6 .die3d__pip:nth-child(5){grid-area:2 / 3}.die3d__face--6 .die3d__pip:nth-child(6){grid-area:3 / 3}@media(prefers-reduced-motion:reduce){.die3d[data-rolling=true] .die3d__cube{animation-duration:2.4s}}.turn-order-sum{font-size:1.6rem;font-weight:800;color:#f8fbfc}.turn-order-roster{display:grid;gap:6px;width:100%;margin:0;padding:0;list-style:none}.turn-order-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 10px;border:1px solid rgb(255 255 255 / .12);border-radius:8px;font-size:.84rem}.turn-order-row[data-rolling=true]{border-color:#ffdc5d;background:#ffdc5d1f}.turn-order-row[data-winner=true]{border-color:#4c9f70;background:#4c9f702e;font-weight:700}.turn-order-name{display:flex;align-items:center;gap:8px}.turn-order-swatch{flex:none;width:10px;height:10px;border-radius:2px;box-shadow:inset 0 0 0 1px #00000059}.turn-order-result{font-variant-numeric:tabular-nums;color:#f8fbfcd9}
