.quest-accomplished{position:fixed;z-index:100;left:50%;top:13svh;transform:translate(-50%);width:min(560px,92vw);box-sizing:border-box;padding:25px 32px 20px;text-align:center;pointer-events:none;color:#ffedb5;background:linear-gradient(90deg,transparent,#17382bf5 12%,#17382bf5 88%,transparent);border-block:1px solid #d6b559;filter:drop-shadow(0 8px 22px #0009);animation:quest-reveal 5.5s both}.quest-accomplished[hidden]{display:none}.quest-accomplished small{display:block;text-transform:uppercase;letter-spacing:.22em;font-size:12px;color:#ffd45f}.quest-accomplished strong{display:block;font-family:Libre Caslon Display,serif;font-size:34px;margin:7px 0}.quest-accomplished p{font-size:13px;margin:0;color:#dfddc3}.quest-completion-seal{display:block;margin:-48px auto 12px;width:46px;line-height:46px;border:2px solid #ffe089;outline:5px solid #264b3c;background:#294b38;transform:rotate(-8deg);font-size:28px;box-shadow:0 0 35px #f8cf6788;animation:quest-seal .7s ease-out}@keyframes quest-reveal{0%{opacity:0;transform:translate(-50%,-18px) scale(.92)}10%,85%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%,-8px)}}@keyframes quest-seal{0%{transform:rotate(-65deg) scale(1.9)}to{transform:rotate(-8deg) scale(1)}}@media(prefers-reduced-motion:reduce){.quest-accomplished,.quest-completion-seal{animation:none}}.forum-dialog{width:min(1180px,96vw);max-width:96vw;height:min(900px,94svh);max-height:94svh;box-sizing:border-box;padding:30px;color:#f0e4c5;background:radial-gradient(ellipse at top,#345044,#132f29 70%);border:1px solid #c5aa6d;overflow:auto}.forum-dialog::backdrop{background:#071510dd;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.forum-dialog header{position:relative;padding-right:50px;border-bottom:1px solid #c5aa6d66}.forum-dialog h2{font:42px Libre Caslon Display,serif;margin:8px 0 20px}.forum-dialog [data-close]{position:absolute;right:0;top:0}.forum-dialog button{min-height:40px;padding:8px 13px;border:1px solid #c4ae7377;background:#294b3c;color:#f4dfaa;font:inherit;cursor:pointer}.forum-dialog button:hover{background:#42604a}.forum-dialog button:disabled{opacity:.5;cursor:default}.forum-dialog button[aria-pressed=true]{background:#e5c06d;color:#172d24}.forum-intro{max-width:850px;color:#c3ccb9;line-height:1.6}.forum-toolbar{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.forum-toolbar label{flex:1;min-width:180px}.forum-dialog label{display:grid;gap:6px;font-size:13px}.forum-dialog input,.forum-dialog textarea,.forum-dialog select{box-sizing:border-box;width:100%;padding:10px;background:#0e2822;color:#f0e4c5;border:1px solid #a4976f88;font:inherit}.forum-dialog textarea{resize:vertical}.forum-status{min-height:24px;color:#e8cd88;font-size:13px}.forum-columns{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,1fr);gap:28px}.forum-columns form{align-self:start;display:grid;gap:15px;padding:22px;border:1px solid #c4ae7355;background:#34503b66}.forum-columns h3{margin:0;font-size:22px;font-weight:500}.forum-columns form p{font-size:12px;line-height:1.6;margin:0;color:#c6ccb5}.forum-list article{padding:22px 0;border-bottom:1px solid #bca36366;overflow-wrap:anywhere}.forum-list article:first-child{padding-top:0}.forum-list small{display:block;color:#d7bd7c;margin-bottom:8px}.forum-list article>p{white-space:pre-wrap;line-height:1.55;font-size:14px}.forum-votes{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.forum-votes strong{min-width:25px;text-align:center;color:#ffe098}.forum-list details{margin-top:14px;font-size:12px;color:#b4baa8}.forum-list summary{cursor:pointer}.forum-list details select{max-width:210px;margin:10px 8px 0 0}.home-action.forum-entry{grid-column:1/-1;min-height:100px;flex-direction:row;align-items:center}.home-action.forum-entry>svg{flex:none}.home-action.forum-entry strong{font-size:20px}@media(max-width:700px){.forum-dialog{padding:18px}.forum-dialog h2{font-size:31px}.forum-columns{grid-template-columns:1fr}.forum-votes{gap:8px}.forum-dialog button{font-size:12px}.home-action.forum-entry{min-height:94px}}.forum-dialog .forum-intro{margin:16px 0}.forum-dialog .forum-status{margin:12px 0 20px}.forum-list article>p{margin:12px 0}.forum-list{display:grid;gap:18px}.forum-list article,.forum-list article:first-child{position:relative;padding:24px;border:1px solid #d6bb7777;border-left:4px solid #d6b566;background:linear-gradient(135deg,#425840,#243e32);box-shadow:0 7px 20px #06181055;border-radius:3px}.forum-list article>h3{font:29px Libre Caslon Display,serif;color:#fff0c6;margin:8px 0 12px}.forum-list article>small{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#edce83}.forum-list article>p{color:#edf0db;font-size:15px;line-height:1.7}.forum-votes{padding-top:16px;border-top:1px solid #c6b27044}.forum-votes strong{font-size:24px}.forum-columns form{background:#132c2455;border-color:#a49b6555}.forum-list details{color:#ccd2ba}@media(max-width:700px){.forum-list article,.forum-list article:first-child{padding:18px}.forum-list article>h3{font-size:27px}}.account-panel{border-top:1px solid #b79e6655;padding-top:10px;margin-top:12px;max-width:440px}.account-panel p{font-size:12px;color:#bed0be;margin:6px 0}.account-panel button{font:inherit;padding:8px 14px;border:1px solid #ae9459;color:#f3dfb6;background:#18352e}.account-panel button:disabled{opacity:.5}.account-conflict{max-width:620px;padding:28px;background:#18352e;color:#f3dfb6;border:1px solid #ae9459}.account-conflict button{display:block;width:100%;padding:14px;margin:12px 0;background:#274b3f;color:inherit;border:1px solid #ae9459}.account-conflict::backdrop{background:#071711dd}.main-menu.home-menu{bottom:auto;max-height:calc(100svh - 150px);overflow-y:auto;scrollbar-width:thin;padding-block:10px}.account-panel{flex-shrink:0}.main-menu.home-menu>*{flex-shrink:0}.auth-gate{width:min(520px,calc(100vw - 32px));max-height:calc(100svh - 32px);padding:28px 36px;border:1px solid #d2b779;background:radial-gradient(ellipse at top,#305648,#122e27 75%);color:#f3e5c6;box-shadow:0 24px 100px #0009;text-align:center;overflow-y:auto}.auth-gate::backdrop{background:#071c17ed;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.auth-gate .eyebrow{display:block;font-size:10px;letter-spacing:3px;color:#d8be80}.auth-emblem{font:44px/1 Georgia;color:#e2c98b;margin-bottom:10px}.auth-gate h2{font:38px/1.1 Libre Caslon Display,Georgia,serif;margin:12px 0}.auth-gate p{font-size:13px;line-height:1.5;color:#bdcbb8}.auth-gate button{font:inherit;cursor:pointer;min-height:42px;border:1px solid #b79e6666;background:#284c40;color:#f3e5c6;padding:10px 14px}.auth-gate button:hover,.auth-gate button:focus-visible{border-color:#f1d495;background:#3c5d48}.auth-gate button:disabled{opacity:.5;cursor:wait}.auth-gate [data-google]{width:100%;margin-top:12px;background:#eee8d7;color:#213c32;border-color:#eee8d7;font-weight:600}.auth-gate [data-google] span{font:700 22px Georgia;margin-right:12px}.auth-divider{display:flex;align-items:center;gap:14px;font-size:12px;color:#bdcbb8;margin:17px 0}.auth-divider:before,.auth-divider:after{content:"";height:1px;flex:1;background:#b79e6644}.auth-gate label{display:block;text-align:left;font-size:13px;margin:12px 0}.auth-gate input{display:block;box-sizing:border-box;width:100%;margin-top:6px;padding:12px;border:1px solid #ae9f6c88;background:#0d261f;color:#fff0cc;font:inherit}.auth-gate input:focus{outline:2px solid #e2c98b;outline-offset:2px}.auth-gate [data-submit]{width:100%;background:#e2c98b;color:#1d382e;font-weight:600}.auth-links{display:flex;justify-content:space-between;gap:8px;margin-top:10px}.auth-links button{background:none;border-color:transparent;font-size:12px;padding:6px}.auth-gate .auth-feedback{min-height:20px;color:#f2d599;margin:15px 0 0}.auth-recovery{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:14px}.auth-gate [hidden]{display:none!important}@media(max-width:520px){.auth-gate{padding:22px}.auth-gate h2{font-size:32px}}.auth-language{display:flex;justify-content:flex-end;gap:10px;align-items:center;font-size:11px;color:#c9cfb7}.auth-language select{padding:6px;color:#ead8aa;background:#18382f;border:1px solid #ad986155}.play-mode-choice{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0 12px}.play-mode-choice button{display:grid;gap:10px;padding:20px 16px;border:1px solid #d8bd7f;background:#24453a;color:#ffe2a0;text-align:left}.play-mode-choice b{font-size:19px}.play-mode-choice small{font-size:13px;line-height:1.5;color:#d0d9c3}.play-mode-choice button:hover{background:#355a47}.play-mode-choice button:focus-visible{outline:2px solid #ffe2a0;outline-offset:3px}.auth-gate .local-play-hint{font-size:12px;line-height:1.5;color:#b6c7b2}@media(max-width:540px){.play-mode-choice{grid-template-columns:1fr}.play-mode-choice button{padding:14px}}.onboarding[popover]{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100dvh;margin:0;padding:0;border:0;max-width:none;max-height:none;background:none;overflow:visible;color:#efe0b7;pointer-events:none;z-index:100000}.onboarding::backdrop{background:none;pointer-events:none}.onboarding-shade{position:fixed;background:#061914b8;pointer-events:auto;touch-action:none}.onboarding-focus{position:fixed;border:2px solid #f0ce78;border-radius:8px;box-shadow:0 0 18px #e6bc6570,inset 0 0 8px #f7de8c40;pointer-events:none;animation:tutorial-glow 1.6s ease-in-out infinite alternate}.onboarding-panel{position:fixed;box-sizing:border-box;pointer-events:auto;background:linear-gradient(135deg,#254d3f,#102b24);border:1px solid #cbb176;border-top:3px solid #e6c475;border-radius:3px 14px;padding:18px;box-shadow:0 12px 40px #0008;max-height:calc(100dvh - 24px);overflow:auto;text-align:left}.onboarding-kicker{font:700 10px DM Sans,sans-serif;letter-spacing:1.2px;color:#dcbd78}.onboarding-panel h2{font:400 29px/1.1 Libre Caslon Display,serif;margin:9px 0;color:#ffedbd}.onboarding-panel p{font:400 14px/1.55 DM Sans,sans-serif;color:#e0e7d5;margin:0 0 14px}.onboarding-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.onboarding-actions button{font:600 12px DM Sans,sans-serif;padding:10px;border:1px solid #c5ae7570;background:#24483b;color:#f2d997;cursor:pointer}.onboarding-actions .primary{background:#e6c67b;color:#193c30}.onboarding-wait{font-size:12px;color:#efd58e}.onboarding-panel button:focus-visible{outline:3px solid #fff1ba;outline-offset:3px}@keyframes tutorial-glow{to{box-shadow:0 0 28px #e6bc6590,inset 0 0 12px #f7de8c60}}@media(max-width:600px){.onboarding-panel{padding:12px}.onboarding-panel h2{font-size:23px}.onboarding-panel p{font-size:12px;line-height:1.45}.onboarding-kicker{font-size:9px}.onboarding-actions button{font-size:11px;padding:8px}}@media(prefers-reduced-motion:reduce){.onboarding-focus{animation:none}}body[data-tutorial-running] .battle-result [data-battle-leave]{visibility:hidden}img.unit-portrait{object-fit:cover;object-position:50% 29%;border:2px solid var(--portrait-accent,#c6ae73);outline:1px solid #171e17;outline-offset:2px;border-radius:1px;background:radial-gradient(ellipse at 50% 35%,#74836c,#19382d);box-shadow:0 4px 12px #06110b60}img.unit-portrait.portrait-sylvan{border-color:#b7bc8a;clip-path:polygon(8% 0,92% 0,100% 6%,100% 94%,92% 100%,8% 100%,0 94%,0 6%)}img.unit-portrait.portrait-rift{border-color:#a88363;clip-path:polygon(0 4%,4% 0,96% 0,100% 4%,100% 100%,0 100%)}.regiment-portrait img.unit-portrait{width:100%;height:100%;max-height:none;object-fit:cover}.regiment-card .regiment-portrait{overflow:visible;padding:4px 8px;margin:4px 0}.battle-unit-card img.unit-portrait{object-fit:cover;object-position:50% 25%;border-width:1px;border-radius:0}.recruit-card>img.unit-portrait{object-fit:cover;width:100%;max-width:180px;aspect-ratio:2/3;height:190px;justify-self:center}.detail-identity>img.unit-portrait{object-fit:cover;aspect-ratio:2/3}.commander-options img.unit-portrait{object-fit:contain}#battle-screen .battle-unit-card{width:90px;flex-basis:90px;height:138px;padding:0;overflow:hidden;border:2px solid #9c8656;border-radius:1px;background:#dfc69a;isolation:isolate}#battle-screen .battle-unit-card>img.unit-portrait{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;max-height:none;object-fit:cover;object-position:50% 40%;margin:0;border:0;outline:0;clip-path:none;z-index:-2}#battle-screen .battle-unit-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:linear-gradient(#071d1466,transparent 22%,transparent 65%,#0a211bd9)}#battle-screen .battle-unit-card>strong,.regiment-card .regiment-name,.regiment-card .regiment-hp{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}#battle-screen .battle-unit-card .battle-card-count{top:3px;left:3px;right:3px;text-align:center;font-size:10px;line-height:15px;color:#fff7d5;text-shadow:0 1px 2px #000;z-index:3}#battle-screen .battle-unit-card .battle-hp{position:absolute;left:2px;top:0;width:calc(100% - 4px);height:16px;margin:0;opacity:.8;z-index:2}#battle-screen .battle-unit-card .battle-card-rank{top:23px;left:3px;z-index:3}.battle-unit-card .battle-card-rank .rank-insignia{background:#1c2819b3;width:20px;height:24px}.battle-unit-card .battle-card-rank svg{width:19px;height:22px}#battle-screen .battle-unit-card .battle-morale{position:absolute;bottom:3px;left:3px;width:calc(100% - 6px);height:4px;margin:0}#battle-screen .battle-unit-card>small{position:absolute;bottom:12px;left:3px;right:3px;font-size:8px;text-align:center;color:#fff0c3;text-shadow:0 1px 3px #000}#battle-screen .battle-unit-card[aria-pressed=true]{border-color:#ffeab1;box-shadow:0 0 0 1px #f5d27a,inset 0 0 12px #f5d27a88}.regiment-card[data-regiment]{position:relative;width:96px;min-width:96px;height:152px;padding:0;overflow:hidden;border:2px solid #9c8656;border-radius:1px;isolation:isolate;background:#dfc69a}.regiment-card[data-regiment] .regiment-portrait{position:absolute;top:0;right:0;bottom:0;left:0;margin:0;padding:0;z-index:-2;width:100%;height:100%}.regiment-card[data-regiment] .regiment-portrait img{width:100%;height:100%;object-fit:cover;border:0;outline:0;clip-path:none}.regiment-card[data-regiment]:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:linear-gradient(#122d1b88,transparent 25%,transparent 70%,#0c221aca)}.regiment-card[data-regiment] .regiment-top{position:absolute;inset:2px 3px auto;min-height:0;display:block;z-index:2}.regiment-card[data-regiment] .regiment-top>strong{display:block;text-align:center;height:17px;font:12px DM Sans;color:#fff5d1;text-shadow:0 1px 3px #000}.regiment-card[data-regiment] .regiment-top .rank-insignia{position:absolute;top:23px;left:0;width:21px;height:26px;margin:0;background:#19372e9c}.regiment-card[data-regiment] .health-track{position:absolute;inset:2px 2px auto;width:calc(100% - 4px);height:17px;margin:0;opacity:.72;z-index:1}.regiment-card[data-regiment]>.card-passives{top:auto;bottom:6px;left:4px;right:4px;justify-content:center}.commander-options img.unit-portrait{object-fit:cover!important}#departure-units button{position:relative;overflow:hidden;isolation:isolate;min-width:80px;width:90px;height:123px;padding:0!important;border:2px solid #aa905c!important;background:#e1cda6!important}#departure-units button>img.unit-portrait{position:absolute;top:0;right:0;bottom:0;left:0;width:100%!important;height:100%!important;object-fit:cover!important;border:0;outline:0;clip-path:none;z-index:-1}#departure-units button>span:not(.rank-insignia):not(.card-passives){display:none}#departure-units button>b{position:absolute;top:2px;left:2px;right:2px;color:#fff0ba;background:#346943c9;text-align:center;font-size:11px}#departure-units button>.rank-insignia{position:absolute;left:3px;top:26px;background:#123523bb}#departure-units button>.card-passives{position:absolute;bottom:4px;top:auto}@media(max-width:650px){#battle-screen .battle-unit-card{width:76px;flex-basis:76px;height:116px}.regiment-card[data-regiment]{width:82px;min-width:82px;height:132px}#departure-units button{width:74px;min-width:74px;height:108px}}#launch-menu #departure-units{display:flex;gap:12px;overflow-x:auto;align-items:stretch}#launch-menu #departure-units>button{flex:0 0 88px;width:88px;height:124px;min-height:124px}#launch-menu .commander-options img.unit-portrait{flex-shrink:0;margin:4px 14px 4px 5px;width:62px;height:84px}#launch-menu .commander-options button>span{min-width:0}#launch-menu .commander-options small{font-size:9px}@media(max-width:700px){#launch-menu #departure-units>button{flex-basis:72px;width:72px;height:102px;min-height:102px}#launch-menu .commander-options img.unit-portrait{width:44px;height:58px;margin:2px 4px}#launch-menu .commander-options strong{font-size:22px}}#battle-screen .battle-unit-card .battle-ammo{position:absolute;left:5px;right:5px;bottom:29px;display:flex;align-items:center;gap:4px;height:21px;padding:0 4px 5px;background:#102b35e8;color:#b8ebff;font:700 10px DM Sans,sans-serif;border-radius:3px;z-index:3}#battle-screen .battle-unit-card .battle-ammo[hidden]{display:none}#battle-screen .battle-ammo meter{position:absolute;bottom:2px;left:3px;width:calc(100% - 6px);height:4px;margin:0}#battle-screen .battle-ammo meter::-webkit-meter-optimum-value{background:#7bd8f1}#battle-screen .battle-ammo meter::-moz-meter-bar{background:#7bd8f1}#battle-screen .battle-ammo[data-empty=true]{color:#ffc2a8;background:#4d231eea}#battle-screen[data-slow-aim=true] .battle-targeting{border-color:#8cdaee;box-shadow:0 0 18px #72c8dc44}#battle-screen .battle-aim-pace{display:inline-block;margin-left:10px;color:#a9e6f6;font-size:12px}#bestiary-dialog{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100svh;max-width:none;max-height:none;margin:0;padding:0;border:0;border-radius:0;background:radial-gradient(ellipse at 50% 10%,#3a4934,#101f19 75%);color:#ead6a6;overflow:hidden;box-sizing:border-box}#bestiary-dialog::backdrop{background:#101c16}.codex-header{height:100px;padding:18px 4vw;display:flex;align-items:center;gap:24px;border-bottom:1px solid #ae925255;box-sizing:border-box}.codex-header h2{font:40px Libre Caslon Display;margin:3px 0}.codex-header .eyebrow{font-size:10px;color:#ccb77e}.bestiary-count{margin-left:auto;color:#ccbd99;font-size:12px}.codex-close{border:1px solid #c2a36277;background:#142b21;color:#e7d3a5;padding:10px 17px;display:flex;align-items:center;gap:18px}.codex-close span{font-size:23px}.codex-layout{height:calc(100% - 100px);display:grid;grid-template-columns:240px minmax(0,1fr);gap:24px;padding:24px 3vw 22px;box-sizing:border-box}.codex-index{min-height:0;display:flex;flex-direction:column;gap:12px}.codex-index>label{font:23px Libre Caslon Display}.codex-index input[type=search]{min-width:0;width:100%;padding:11px;background:#10281e;color:#efdfb6;border:1px solid #a18c5466;border-radius:0}.codex-index .codex-filter{font:12px DM Sans;display:flex;gap:8px;align-items:center}.codex-entries{overflow:auto;min-height:0;scrollbar-width:thin;scrollbar-color:#a38d5d #1b2c20}.codex-entries button{display:flex;align-items:center;width:100%;gap:9px;padding:14px 8px;text-align:left;color:#cbbb95;background:transparent;border:0;border-bottom:1px solid #b29a5f25}.codex-entries button[aria-pressed=true]{background:linear-gradient(90deg,#ad8b424d,transparent);color:#fff0ca;box-shadow:inset 3px 0 #e4c174}.codex-entries button:focus-visible{outline:2px solid #e4c174;outline-offset:-2px}.codex-entries small{display:block;font-size:8px;letter-spacing:1px;margin-top:5px;opacity:.7}.codex-entries b{margin-left:auto;font-size:10px;opacity:.55}.codex-entry-seal{font-size:20px;width:22px}.codex-note{font:italic 15px Georgia;color:#aa9b77;margin-top:auto}.codex-volume{min-width:0;min-height:0;display:flex;flex-direction:column;filter:drop-shadow(0 12px 16px #0007)}.codex-spread{position:relative;display:grid;grid-template-columns:1fr 1fr;min-height:0;flex:1;background:#dcc79e;border:8px solid #5b442c;border-radius:6px 12px 12px 6px;box-shadow:0 0 0 1px #bba16a,inset 0 0 28px #6b4f2466}.codex-spread:after{content:"";position:absolute;left:50%;top:0;bottom:0;width:32px;transform:translate(-50%);background:linear-gradient(90deg,transparent,#5a3d2855 45%,#4b302866 50%,#fff5cf33 64%,transparent);pointer-events:none;z-index:2}.codex-plate{position:relative;min-width:0;min-height:0;margin:0;background:#e9d4aa;overflow:hidden;display:flex;align-items:center;justify-content:center}.codex-plate>img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}.codex-plate figcaption{position:absolute;bottom:0;left:0;right:0;padding:32px 20px 20px;background:linear-gradient(transparent,#e4ce9eea 40%);text-align:center;color:#55432b}.codex-plate figcaption span{display:block;font:9px DM Sans;letter-spacing:3px}.codex-plate figcaption strong{display:block;font:28px Libre Caslon Display;margin-top:7px}.codex-description{min-width:0;overflow:auto;padding:clamp(22px,3vw,50px);color:#443925;background:radial-gradient(ellipse at 90% 20%,#f5e6c9,#ddc79c);scrollbar-width:thin;scrollbar-color:#9f814c #d9c49b}.codex-kicker{font-size:9px;letter-spacing:2px;color:#786442}.codex-description h3{font:clamp(27px,3vw,46px)/1.04 "Libre Caslon Display";margin:15px 0}.codex-rule{display:flex;align-items:center;gap:14px;color:#9b793d;margin:19px 0}.codex-rule:before,.codex-rule:after{content:"";height:1px;background:#9b793d55;flex:1}.codex-lore,.codex-unwritten p{font:16px/1.7 Georgia}.codex-description h4{font:20px Libre Caslon Display;margin:25px 0 12px}.codex-description .unit-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0}.codex-description .unit-stats>div{border-top:1px solid #8b754c55;padding-top:9px}.codex-description dt{font-size:11px;color:#716044}.codex-description dd{font-size:22px;color:#433722;margin:5px 0 0}.codex-traits{display:flex;gap:22px;border-top:1px solid #8b754c55;padding-top:15px;margin-top:20px}.codex-traits dd{font-size:14px}.bestiary-skill{font-size:12px;line-height:1.6;border-left:2px solid #9a7c43;padding-left:12px}.bestiary-skill b,.bestiary-skill span{display:block}.codex-footnote{font:italic 11px/1.6 Georgia;color:#7e6e51}.codex-pagination{display:flex;align-items:center;justify-content:space-between;padding:12px 6px 0;font:14px Georgia}.codex-pagination button{padding:7px 12px;background:transparent;border:1px solid #b49a5944;color:#dbc590}.codex-pagination button:disabled{opacity:.3}.codex-page-number{letter-spacing:3px}.codex-unknown{color:#a18a5f;background:radial-gradient(ellipse,#f0dfbd,#cdb58a)}.codex-unknown>span{font:180px Libre Caslon Display;opacity:.45}.codex-unwritten{display:flex;flex-direction:column;justify-content:center}.codex-empty-page{grid-column:1/-1;text-align:center;align-content:center;color:#675433}.codex-empty-page>span{font-size:65px}.codex-empty-page h3{font:34px Libre Caslon Display}.page-arrival{animation:codex-arrive .22s ease-out}@keyframes codex-arrive{0%{opacity:.65;transform:translate(4px)}to{opacity:1;transform:none}}@media(max-width:1000px){.codex-layout{grid-template-columns:190px minmax(0,1fr);padding:16px;gap:16px}.codex-description{padding:24px}.codex-plate figcaption strong{font-size:23px}}@media(max-width:700px){.codex-header{height:82px;padding:12px 16px;gap:10px}.codex-header h2{font-size:29px}.codex-header .eyebrow{font-size:8px}.bestiary-count{display:none}.codex-close{margin-left:auto;padding:6px 10px;font-size:11px}.codex-layout{height:calc(100% - 82px);display:flex;flex-direction:column;gap:10px;padding:10px}.codex-index{display:grid;grid-template-columns:1fr auto;gap:8px;flex-shrink:0}.codex-index>label:first-child,.codex-note{display:none}.codex-index input[type=search]{padding:8px}.codex-entries{grid-column:1/-1;display:flex;overflow-x:auto;max-height:70px}.codex-entries button{width:155px;flex-shrink:0;padding:9px 7px;font-size:11px}.codex-entries b{display:none}.codex-entries button[aria-pressed=true]{box-shadow:inset 0 -2px #e4c174}.codex-index .codex-filter{font-size:10px}.codex-volume{flex:1}.codex-spread{display:block;overflow:auto;border-width:4px;scrollbar-width:thin}.codex-spread:after{display:none}.codex-plate{height:48svh}.codex-plate img{object-fit:contain}.codex-description{overflow:visible;padding:25px}.codex-description h3{font-size:33px}.codex-pagination{padding-top:7px}.codex-pagination button{font-size:11px}.codex-empty-page{padding:35px}.codex-unwritten{min-height:220px}}@media(prefers-reduced-motion:reduce){.page-arrival{animation:none}}.bestiary-book{display:inline-flex;align-items:center;gap:9px}.bestiary-book svg{width:29px;height:29px;fill:#5d5334;stroke:#e5cd91;stroke-width:1.6;stroke-linejoin:round}.bestiary-book .book-page{fill:none;transform-origin:50% 50%;animation:book-leaf 5s ease-in-out infinite}.bestiary-book.has-new{box-shadow:0 0 15px #e8bb5660}.bestiary-book.has-new svg{animation:book-discovery 1.3s ease-in-out infinite}@keyframes book-leaf{0%,65%,to{transform:scaleX(1)}80%{transform:scaleX(.65)}}@keyframes book-discovery{50%{transform:translateY(-3px) rotate(-5deg)}}@media(max-width:650px){.bestiary-pages{grid-template-columns:1fr}.bestiary-dialog{padding:22px 14px}.bestiary-identity img{width:88px;height:125px}.bestiary-count{font-size:13px}}@media(prefers-reduced-motion:reduce){.bestiary-book .book-page,.bestiary-book.has-new svg{animation:none}}#bestiary-dialog .unit-stats dt{color:#665237!important}#bestiary-dialog .unit-stats dd{color:#382c1c!important}#bestiary-dialog .unit-stats [data-stat=magic-resistance] dd{color:#695072!important}.campaign-places{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:4}.campaign-place{position:absolute;left:0;top:0;pointer-events:auto;max-width:260px;padding:6px 10px;border:1px solid #bba67555;border-radius:3px;background:#19382de8;color:#e6d4a6;font-size:11px;box-shadow:0 3px 12px #10251e55;white-space:normal}.campaign-place.is-near{border-color:#e3c77e;background:#28473bf5;color:#fff0be}.campaign-place:hover,.campaign-place:focus-visible{background:#3b5845;outline:2px solid #e3c77e}.place-dialog{width:min(680px,92vw);max-height:85svh;overflow:auto;padding:30px}.place-dialog h2{margin:0 0 8px;font-size:34px}.place-dialog p{line-height:1.7;margin:20px 0}.place-dialog small{color:#c8b584}.place-dialog>button{display:block;min-height:44px;width:100%;margin:10px 0;text-align:left}.dialogue-portrait{float:left;width:150px;height:205px;object-fit:contain;margin:0 24px 16px 0;background:radial-gradient(ellipse,#637d65,#18392e);border:1px solid #bba67566;border-radius:4px}@media(max-width:620px){.campaign-place{max-width:180px;font-size:10px}.place-dialog{padding:20px}.dialogue-portrait{width:100px;height:150px;margin-right:16px}}.campaign-quest{position:absolute;left:50%;top:112px;transform:translate(-50%);max-width:450px;padding:9px 14px;background:#18372de8;border:1px solid #bfae7355;color:#e7d9b1;font-size:12px;text-align:center;pointer-events:none;z-index:4}@media(max-width:700px){.campaign-quest{top:94px;max-width:calc(100vw - 32px);width:330px;font-size:10px}}#place-dialog.is-conversation{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100svh;max-width:none;max-height:none;margin:0;padding:0;border:0;border-radius:0;box-shadow:none;background:linear-gradient(0deg,#081c16fa,#102b24eb 25%,#10271dc2 46%,#10291c00 90%);overflow:hidden;color:#f0dfb6}#place-dialog.is-conversation::backdrop{background:#091c1640;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.dialogue-stage{position:absolute;inset:auto 5vw 5svh;display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.35fr);gap:4vw;align-items:end;max-height:88svh}.dialogue-figure{position:relative;margin:0;min-width:0;height:min(72svh,750px);display:flex;align-items:end;justify-content:center;pointer-events:none}#place-dialog .dialogue-portrait{float:none;width:100%;height:100%;max-width:490px;object-fit:contain;object-position:50% 100%;margin:0;border:0;border-radius:0;background:none;box-shadow:none;-webkit-mask-image:linear-gradient(to bottom,#000 80%,transparent 100%);mask-image:linear-gradient(to bottom,#000 80%,transparent 100%)}.dialogue-figure figcaption{position:absolute;bottom:8px;left:0;right:0;text-align:center;font-size:10px;letter-spacing:4px;color:#b8ad8d}.dialogue-speech{position:relative;padding:12px 0 10px;max-height:82svh;overflow:auto;scrollbar-width:thin;scrollbar-color:#a89153 transparent}.dialogue-speech:before{content:"";display:block;width:90px;height:2px;background:linear-gradient(90deg,#d4b879,transparent);margin-bottom:18px}#place-dialog .dialogue-speaker-role{font-size:10px;letter-spacing:2px;color:#d0b87c}.dialogue-speech h2{font:clamp(38px,4.6vw,68px)/1.06 "Libre Caslon Display";margin:9px 0 22px!important}#place-dialog .dialogue-line{position:relative;margin:0 0 25px;padding:0 18px 0 0;border:0;font:clamp(17px,1.55vw,23px)/1.6 Georgia;color:#f0e3c3;background:none}.dialogue-line:before{content:"“";position:absolute;left:-25px;top:-15px;font:60px Georgia;color:#cbb16a70}.dialogue-response-label{font-size:9px;letter-spacing:3px;color:#b39e6d}.dialogue-choices{display:grid;gap:5px;margin-top:10px}.dialogue-choice{display:flex;align-items:center;gap:15px;text-align:left;padding:12px 16px 12px 0;border:0;border-bottom:1px solid #d0b77322;background:linear-gradient(90deg,#b59b5020,transparent 95%);color:#e7d6aa;min-height:48px;font-size:14px}.dialogue-choice:hover,.dialogue-choice:focus-visible{background:linear-gradient(90deg,#b8a05855,transparent);color:#fff2c5;outline:1px solid #d2b77566;outline-offset:-1px}.dialogue-choice-number{display:grid;place-items:center;flex:0 0 27px;height:27px;margin-left:7px;font:14px Georgia;border:1px solid #b9a16366;transform:rotate(-3deg);color:#dcc080}#place-dialog>.dialogue-exit{position:absolute;right:4vw;top:24px;width:auto;margin:0;min-height:40px;padding:9px 14px;font-size:11px;letter-spacing:1px;border:1px solid #dac28566;background:#102a20b3;color:#dec99a}@media(max-width:700px){.dialogue-stage{top:65px;right:20px;bottom:14px;left:20px;display:flex;flex-direction:column;gap:0;max-height:none;align-items:stretch}.dialogue-figure{flex:0 0 27svh;height:27svh;align-self:flex-start;width:46vw;margin-bottom:-30px}.dialogue-figure figcaption{display:none}.dialogue-speech{max-height:none;flex:1;min-height:0;overflow:auto;padding:0 2px 10px}.dialogue-speech:before{margin:10px 0}.dialogue-speech h2{font-size:39px;margin:8px 0 14px!important}#place-dialog .dialogue-speaker-role{font-size:9px}#place-dialog .dialogue-line{font-size:16px;line-height:1.6;padding-right:0;margin-bottom:18px}.dialogue-choice{font-size:13px;padding:10px 4px 10px 0;min-height:46px}.dialogue-choice-number{flex-basis:23px;height:23px}.dialogue-line:before{display:none}}@media(max-height:600px)and (min-width:701px){.dialogue-stage{bottom:12px}.dialogue-speech h2{font-size:34px!important;margin-bottom:12px!important}#place-dialog .dialogue-line{font-size:15px;line-height:1.45;margin-bottom:10px}.dialogue-choice{min-height:36px;padding:6px 0}.dialogue-speech:before{margin-bottom:8px}}body.conversation-open .interface{visibility:hidden}#place-dialog .dialogue-portrait{-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 8%,#000 78%,transparent 99%);mask-image:linear-gradient(to bottom,transparent 0%,#000 8%,#000 78%,transparent 99%);filter:drop-shadow(0 8px 20px #0004)}#place-dialog .dialogue-line{font-weight:400}.dialogue-figure{-webkit-mask-image:linear-gradient(to right,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(to right,transparent,#000 7%,#000 93%,transparent)}.campaign-quest{white-space:pre-line;max-height:20vh;overflow:auto;pointer-events:auto}.campaign-place.is-remembered{filter:saturate(.25);opacity:.85}.campaign-place.is-collected{color:#b7cdb7}.campaign-enemy-memory{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.enemy-memory-marker{position:absolute;top:0;left:0;color:#f1c4a9;background:#382c29dd;border:1px solid #ab7858;border-radius:2px 10px;padding:4px 9px;font-size:11px;white-space:nowrap;box-shadow:0 2px 7px #0005}.enemy-memory-marker.is-remembered{color:#d2cbc0;background:#343d38df;border-color:#83887b;font-style:italic}.place-reward{margin:18px 0;padding:16px 20px;border-block:1px solid #bda66a88;background:linear-gradient(100deg,#bda66a16,transparent);color:#eed395}.place-reward strong{font-size:19px}.place-reward p{font-size:14px;color:#c8d1bc;margin:8px 0 0}.campaign-place.is-destination{outline:2px solid #f1d388;outline-offset:3px}.campaign-enemy-memory{z-index:6}.interface .company-drawer{z-index:12}.campaign-place.is-quest-return{border:2px solid #f5cf70;padding-left:35px;box-shadow:0 0 16px #ebbf534d}.quest-return-badge{position:absolute;left:5px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:24px;height:28px;border-radius:45% 45% 40% 40%;background:#edcb70;color:#29382b;font:700 22px Georgia,serif;border:1px solid #fff1bc;filter:drop-shadow(0 2px 3px #071d19);animation:quest-return-glow 1.6s ease-in-out infinite}.campaign-place.is-remembered.is-quest-return{opacity:1;filter:none}@keyframes quest-return-glow{50%{box-shadow:0 0 13px #f5d58199}}@media(prefers-reduced-motion:reduce){.quest-return-badge{animation:none}}#army-inspection{box-sizing:border-box;max-width:calc(100vw - 16px);max-height:calc(100svh - 16px);overflow:auto;border-radius:0;padding:16px;scrollbar-width:thin}#army-inspection .inspection-roster{display:flex;gap:6px;margin:16px 0;align-items:flex-start}#army-inspection .inspection-card{position:relative;min-width:0;flex:1 1 0;max-width:90px;aspect-ratio:2/3;isolation:isolate;overflow:hidden;border:2px solid #a68b57;background:#e4cea2}#army-inspection .inspection-card img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center;border:0;outline:0;clip-path:none}#army-inspection .inspection-hp{position:absolute;top:1px;left:1px;right:1px;height:15px;background:#243322c9;text-align:center;color:#fff5cb;font-size:11px;text-shadow:0 1px 2px #000}#army-inspection .inspection-hp i{position:absolute;inset:0 auto 0 0;background:#628351b8}#army-inspection .inspection-hp b{position:relative;z-index:1}#army-inspection .inspection-card>.rank-insignia{position:absolute;top:22px;left:2px;width:22px;height:25px;background:#18352aca}#army-inspection .inspection-card>.rank-insignia svg{width:20px;height:23px}#army-inspection .inspection-role{position:absolute;bottom:3px;left:50%;transform:translate(-50%);background:#173629d9;color:#e5d3a0;border:1px solid #a58d59;padding:1px 7px;font-size:16px}#army-inspection .army-estimate{margin-bottom:6px}#army-inspection .army-advantages{font-size:11px}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-400-normal-CW0RaeGs.woff2) format("woff2"),url(/assets/dm-sans-latin-400-normal-BwCSEQnW.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-500-normal-B9HHJjqV.woff2) format("woff2"),url(/assets/dm-sans-latin-500-normal-Dr3UlScf.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/dm-sans-latin-600-normal-Aqo67rzb.woff2) format("woff2"),url(/assets/dm-sans-latin-600-normal-BmdmIIQ2.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/dm-sans-latin-700-normal-DvUfVpUG.woff2) format("woff2"),url(/assets/dm-sans-latin-700-normal-CUSSCpQX.woff) format("woff")}@font-face{font-family:Libre Caslon Display;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/libre-caslon-display-latin-400-normal-n_DgBRfq.woff2) format("woff2"),url(/assets/libre-caslon-display-latin-400-normal-BbfEE5V2.woff) format("woff")}:root{font-family:DM Sans,sans-serif;color:#f0e9d7;background:#a7c4bb;font-synthesis:none;font-weight:400;--cream:#f0e9d7;--muted:#b3c0b0;--gold:#d8bd83;--green:#1b3832;--line:rgba(215,221,192,.19) }*{box-sizing:border-box}body{margin:0;overflow:hidden}button,select,input{font:inherit}button{cursor:pointer;color:inherit}button:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid #f5d796;outline-offset:5px}button{border:0;background:none}button:disabled{cursor:default}svg{width:22px;height:22px;flex-shrink:0}button svg{pointer-events:none}[hidden]{display:none!important}h1,h2,h3,p{margin:0}button{touch-action:manipulation}#app,#world{width:100vw;height:100dvh;display:block}#world{position:fixed;top:0;right:0;bottom:0;left:0;cursor:crosshair}#world.dragging{cursor:grabbing}.world-vignette{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,rgba(25,47,41,.28),transparent 21%,transparent 72%,rgba(18,44,36,.27)),radial-gradient(ellipse at 55% 45%,transparent 46%,rgba(19,48,40,.13));transition:background 1s}.in-menu .world-vignette{background:linear-gradient(90deg,rgba(19,43,37,.99) 0%,rgba(19,43,37,.94) 20%,rgba(19,43,37,.74) 31%,rgba(19,43,37,.25) 48%,transparent 68%),linear-gradient(180deg,rgba(19,43,37,.23),transparent 24%,transparent 68%,rgba(19,43,37,.25))}.interface{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none}.interface button,.interface select,.interface input{pointer-events:auto}.topbar{height:104px;position:absolute;top:0;left:0;right:0;padding:30px 40px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(235,241,214,.1);background:linear-gradient(180deg,rgba(20,43,37,.36),transparent)}.brand{display:flex;align-items:center;gap:12px;text-align:left;letter-spacing:2px;font-size:9px;line-height:1.7;font-weight:500;padding:0}.brand strong{font-size:15px;letter-spacing:3.1px;font-weight:600}.brand-mark{width:41px;height:46px;border:1px solid rgba(214,192,138,.57);border-radius:1px 1px 14px 14px;display:grid;place-items:center;color:var(--gold);background:#28483a80}.brand-mark svg{height:26px;width:26px}.chapter{display:flex;align-items:center;gap:16px;letter-spacing:2px;font-size:10px;font-weight:550;color:#fff6de;text-shadow:0 1px 6px #19382c66}.chapter>span:last-child{opacity:.65}.chapter-divider{opacity:.35;margin:0 6px}.small-diamond{display:inline-block;width:6px;height:6px;transform:rotate(45deg);background:var(--gold)}.top-actions{display:flex;align-items:center;gap:10px}.icon-button{width:39px;height:39px;border:1px solid rgba(224,231,208,.23);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#17322a52;transition:background .2s,border-color .2s}.icon-button:hover{background:#365747;border-color:#dece9d}.icon-button svg{width:19px;height:19px}.main-menu{position:absolute;left:6%;top:50%;transform:translateY(-45%);width:370px;pointer-events:none}.eyebrow{font-size:9px;font-weight:600;letter-spacing:2.1px;color:var(--gold);display:flex;align-items:center;gap:10px}.eyebrow>span:empty{display:inline-block;width:25px;height:1px;background:var(--gold)}.main-menu>h1{font-family:Libre Caslon Display,Georgia,serif;font-size:78px;line-height:.98;letter-spacing:-2.6px;font-weight:400;margin:24px 0;color:#f2ead6}.main-menu h1 em{font-weight:400;color:#dec796}.menu-intro{font-size:12px;line-height:1.95;color:#bcc8b7;font-weight:400}.scenario-card{margin-top:32px;border:1px solid rgba(218,209,167,.28);background:linear-gradient(130deg,#485b3d54,#1e372d7a);padding:23px 24px 20px;position:relative}.scenario-card:before,.scenario-card:after{content:"";position:absolute;width:6px;height:6px;border-color:#d6bf82;pointer-events:none}.scenario-card:before{left:-1px;top:-1px;border-top:1px solid;border-left:1px solid}.scenario-card:after{right:-1px;bottom:-1px;border-right:1px solid;border-bottom:1px solid}.scenario-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.scenario-heading .eyebrow{font-size:8px;letter-spacing:1.7px;color:#b9c5ad}.scenario-number{font-family:Georgia,serif;color:#aabc9f;font-size:13px;font-style:italic}.scenario-card h2{font-family:Libre Caslon Display,Georgia,serif;font-weight:400;font-size:32px;letter-spacing:-.3px}.scenario-card p{font-size:11px;line-height:1.85;margin-top:10px;color:#b5c4b1}.scenario-tags{display:flex;gap:22px;margin:18px 0 22px;font-size:8px;letter-spacing:1.3px;color:#c8d0bb}.scenario-tags span{display:flex;gap:6px;align-items:center}.status-dot{height:5px;width:5px;display:inline-block;background:#adc688;border-radius:50%;box-shadow:0 0 6px #b8d08044}.primary{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:48px;background:#d9c18e;color:#293c31;padding:13px 18px;font-weight:600;font-size:12px;transition:background .2s,transform .2s}.primary:hover{background:#efdab0;transform:translateY(-1px)}.primary svg{width:19px;height:19px}.text-button{display:flex;align-items:center;justify-content:center;gap:10px;padding:15px 0 0;font-size:11px;color:#cfceb6;width:100%}.text-button:hover{color:#fff0c7}.text-button svg{width:16px;height:16px}.menu-note{display:flex;align-items:center;gap:9px;color:#9db09e;margin-top:22px;font-size:10px}.menu-note svg{width:17px;height:17px}.footer{position:absolute;bottom:0;left:0;right:0;min-height:55px;display:flex;align-items:center;justify-content:space-between;padding:12px 38px;border-top:1px solid #f1edce18;background:linear-gradient(0deg,#1e3b3499,#1e3b3422)}.controls-hint{display:flex;gap:22px;font-size:10px;color:#d2d9c9;align-items:center}.controls-hint>span{display:flex;align-items:center;gap:7px}kbd{font-family:inherit;font-size:8px;letter-spacing:.6px;border:1px solid #d9ddc743;border-radius:3px;padding:4px 5px;font-weight:500;color:#dedeca;white-space:nowrap}.version{font-size:8px;letter-spacing:1.5px;color:#d8dcc688;display:flex;align-items:center;gap:9px}.version i{width:3px;height:3px;background:#cad3b2;border-radius:50%}.map-caption{position:absolute;bottom:11%;left:55%;transform:translate(-15%);display:flex;align-items:center;gap:16px;text-align:center;font-size:10px;letter-spacing:2.6px;color:#294f41;font-weight:650;text-shadow:0 1px 12px #dcdfbf}.map-caption small{display:block;letter-spacing:.2px;font-size:10px;font-weight:400;margin-top:7px;font-family:Georgia,serif;font-style:italic}.caption-line{height:1px;width:42px;background:#385b4659}.compass-rose{position:absolute;right:47px;top:135px;color:#2d5040aa;display:grid;justify-items:center;gap:5px}.compass-rose>span{font-size:10px;letter-spacing:1px;font-family:Georgia,serif}.compass-rose svg{width:44px;height:44px;stroke-width:.75;transform:rotate(-20deg)}.region-heading{position:absolute;top:133px;left:40px;color:#284a3c;text-shadow:0 1px 16px #e2e7d277}.region-heading .eyebrow{font-size:8px;color:#536544;letter-spacing:1.9px}.region-heading .eyebrow span{opacity:.5}.region-heading h1{font-family:Libre Caslon Display,Georgia,serif;font-size:38px;font-weight:400;letter-spacing:-.5px;margin-top:8px}.region-heading p{font-size:11px;margin-top:5px;color:#4c6653}.time-controls{position:absolute;top:124px;left:50%;transform:translate(-50%);display:flex;align-items:center;background:#1d3c32d6;border:1px solid #e2d6ab2e;border-radius:4px;padding:9px 13px;gap:14px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 4px 14px #1b372b14}.time-controls>span:first-child{font-size:11px;font-variant-numeric:tabular-nums;letter-spacing:1px;color:#d9d6b6}.time-divider{width:1px;height:19px;background:#d9dcba29}.time-controls button{display:flex;align-items:center;gap:8px;font-size:10px;padding:0}.time-controls button svg{width:15px;height:15px;color:#e3c789}.time-controls kbd{margin-left:6px;font-size:8px;padding:3px 5px;color:#c7ccb7}.paused-indicator{position:absolute;top:195px;left:50%;transform:translate(-50%);text-align:center;background:#1e3f34ec;padding:17px 29px 14px;border:1px solid #d9c5888c;box-shadow:0 5px 35px #15362525;font-size:10px;letter-spacing:2px;color:#ebd59f}.paused-indicator>span{margin-right:8px}.paused-indicator small{display:block;font-size:10px;letter-spacing:0;margin-top:9px;color:#cbd5c0}.pursuit{position:absolute;left:50%;top:188px;transform:translate(-50%);padding:13px 22px;background:#633c38ed;border:1px solid #e4a1886e;display:flex;gap:14px;align-items:center;color:#ffceaa;font-size:12px;box-shadow:0 8px 25px #61332325}.pursuit small{display:block;margin-top:4px;font-size:10px;color:#e6c6b1}.is-paused .pursuit{top:285px}.army-card{position:absolute;bottom:87px;left:38px;padding:18px 20px 18px 17px;display:flex;align-items:center;gap:16px;background:linear-gradient(125deg,#1d3b32f2,#284638e8);border:1px solid #d4c79342;box-shadow:0 8px 24px #28412e28;min-width:362px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.army-crest{height:64px;width:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #d7bd7e80;border-radius:2px 2px 18px 18px;color:#e2ca91;background:#d9c08a0b;gap:5px}.army-crest svg{width:26px;height:26px}.army-crest>span{font-family:Georgia,serif;font-size:9px}.army-description .eyebrow{font-size:7px;letter-spacing:1.6px;color:#b4c3a9}.army-description h2{font-family:Libre Caslon Display,Georgia,serif;font-size:23px;font-weight:400;line-height:1.2;margin-top:7px}.army-details{display:flex;gap:10px;align-items:center;margin-top:10px;font-size:10px;color:#afc2ac}.army-details b{font-weight:500;color:#e6d6b3;margin-right:2px}.army-separator{color:#91aa8c}.army-card .icon-button{margin-left:10px;width:33px;height:33px;border-color:#bccba42c}.map-tools{position:absolute;bottom:88px;left:50%;transform:translate(-50%);display:flex;gap:8px}.tool-button,.zoom-controls{display:flex;align-items:center;background:#224135d9;border:1px solid #c9d1a947;border-radius:3px;color:#e8e3c6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.tool-button{font-size:10px;gap:8px;padding:10px 13px}.tool-button svg{width:17px;height:17px}.zoom-controls button{font-size:20px;width:33px}.zoom-controls button+button{border-left:1px solid #c9d1a930}.tool-button:hover,.zoom-controls button:hover{background:#486346}.minimap-card{position:absolute;right:38px;bottom:86px;width:235px;background:#203c33f5;border:1px solid #d2c49259;padding:10px;box-shadow:0 8px 24px #213e2a28}.minimap-title{display:flex;align-items:center;justify-content:space-between;font-size:7px;letter-spacing:1.2px;color:#d8d9b9;margin:1px 0 9px}.minimap-title span:last-child{color:#a9b699;font-size:8px}#minimap{width:100%;height:132px;display:block;border:1px solid #b8c09326}.minimap-legend{display:flex;align-items:center;justify-content:space-between;margin-top:9px;font-size:8px;color:#c7d0b6}.minimap-legend span{display:flex;align-items:center;gap:5px}.minimap-legend i{width:4px;height:4px;background:#ecd799;border-radius:50%}.minimap-legend span:last-child i{background:#df8f7e}#landmarks{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.landmark{position:absolute;top:0;left:0;display:flex;align-items:center;gap:6px;white-space:nowrap;font-size:8px;font-weight:600;letter-spacing:1.4px;color:#f1f0d5;text-shadow:0 1px 5px #193a25,0 1px 2px #1a3223;padding:6px 9px;border-radius:3px;background:#23433366;border:1px solid #ebebcf1c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);transition:opacity .2s}.landmark-icon{display:flex;align-items:center}.landmark svg{width:13px;height:13px;stroke-width:1.4}.landmark-portal{color:#f3bdad;background:#50353ca8;border-color:#d2a4a336}.landmark-mountain{background:transparent;border:0;text-shadow:0 1px 5px #253b26;color:#f5f3da;font-size:7px}.in-menu .landmark-village,.in-menu .landmark-forest{opacity:.45}#toast{position:fixed;left:50%;bottom:150px;transform:translate(-50%,10px);padding:13px 21px;background:#1c382fec;border:1px solid #d3bd834d;box-shadow:0 5px 20px #1d3b2925;color:#e6d9b4;font-size:11px;max-width:440px;text-align:center;pointer-events:none;opacity:0;transition:opacity .2s,transform .2s;z-index:4}#toast.visible{opacity:1;transform:translate(-50%)}.dialog{position:fixed;color:var(--cream);background:linear-gradient(140deg,#294638,#152e29);border:1px solid #d2bc835e;box-shadow:0 30px 100px #10211ac9;padding:40px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 40px);overflow:auto}.dialog::backdrop{background:#10281fb5;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.dialog h2{font-family:Libre Caslon Display,Georgia,serif;font-weight:400;font-size:45px;letter-spacing:-.6px;margin:13px 0}.dialog>p{font-size:12px;line-height:1.8;color:#b6c7b3}.dialog-close{position:absolute;top:17px;right:17px;width:30px;height:30px}.dialog-close svg{width:15px;height:15px}.compact-dialog{width:420px}.compact-dialog label{display:block;font-size:11px;color:#cdd6c0;margin-top:27px;margin-bottom:10px}.compact-dialog select{width:100%;border:1px solid #c1c6a747;background:#294439;color:var(--cream);padding:12px;outline-offset:3px;font-size:12px}.compact-dialog .checkbox-label{display:flex;align-items:center;gap:10px;margin-bottom:30px}.checkbox-label input{accent-color:#d5bd86}.help-list{margin:24px 0;font-size:11px}.help-list div{display:flex;justify-content:space-between;gap:15px;padding:10px 0;border-bottom:1px solid #cdd1ac1c}.help-list dt{color:#e2cea3}.help-list dd{color:#adbfab;margin:0;text-align:right}.dialog .help-note{font-size:11px;margin:20px 0;line-height:1.8}.encounter-dialog{width:650px;text-align:center;padding:40px}.encounter-dialog>.eyebrow{justify-content:center}.encounter-symbol{display:inline-flex;justify-content:center;align-items:center;width:58px;height:58px;border:1px solid #c7886a7a;color:#e3ad89;transform:rotate(45deg);margin:10px 0 33px;background:#9164491c}.encounter-symbol svg{transform:rotate(-45deg);width:27px;height:27px}.encounter-dialog h2{font-size:48px}.opponents{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:29px 0;padding:27px 0;border-top:1px solid #cbbc8929;border-bottom:1px solid #cbbc8929}.opponents>div{flex:1}.opponents .eyebrow{font-size:7px;justify-content:center;letter-spacing:1.5px}.opponents h3{font-family:Libre Caslon Display,Georgia,serif;font-size:24px;font-weight:400;margin:10px 0}.opponents>div>span:last-child{font-size:10px;color:#bac8af}.opponents>div:last-child .eyebrow{color:#de9d89}.versus{color:#bb9872}.battle-note{display:flex;align-items:flex-start;gap:10px;margin-bottom:25px}.battle-note .small-diamond{margin-top:6px;flex-shrink:0}.battle-note p{font-size:11px;line-height:1.85;text-align:left;color:#b8c7b1}.encounter-dialog>.primary{justify-content:center;gap:18px}.fatal-error{background:#213c32;min-height:100dvh;padding:15vh 15%;color:#f0dfb9}.fatal-error h1{font-family:Georgia,serif;margin-bottom:25px}.fatal-error p{line-height:1.8;max-width:600px}.fatal-error button{border:1px solid;padding:15px;margin-top:30px}@media(min-width:1600px){.main-menu{left:7%;width:400px}.main-menu>h1{font-size:88px}.menu-intro{font-size:13px}.scenario-card{margin-top:36px;padding:26px}.scenario-card p{font-size:12px}.scenario-card h2{font-size:35px}.primary{min-height:51px}.map-caption{bottom:12%}}@media(max-height:800px){.topbar{height:83px;padding:20px 30px}.main-menu{width:325px;left:5%;transform:translateY(-43%)}.main-menu>h1{font-size:63px;margin:18px 0}.menu-intro{font-size:11px}.scenario-card{margin-top:22px;padding:18px 20px}.scenario-card h2{font-size:28px}.scenario-card p{font-size:10px}.scenario-tags{margin:13px 0 17px}.menu-note{margin-top:16px;font-size:9px}.eyebrow{font-size:8px}.primary{min-height:44px}.region-heading{top:108px;left:30px}.time-controls{top:105px}.compass-rose{top:115px}.footer{min-height:46px;padding:10px 28px}.army-card{bottom:67px;left:28px;padding:13px;min-width:335px}.minimap-card{bottom:67px;right:28px;width:207px}#minimap{height:111px}.map-tools{bottom:70px}.paused-indicator,.pursuit{top:166px}.map-caption{bottom:11%}.dialog{padding:30px}.dialog h2{font-size:38px}.help-list div{padding:8px 0}}@media(max-width:1100px){.chapter{display:none}.main-menu{left:4%;width:310px}.main-menu>h1{font-size:64px}.controls-hint{gap:12px;font-size:9px}.version{display:none}.map-tools{left:auto;right:30px;bottom:262px;transform:none}.army-card{min-width:320px;gap:12px}.army-description h2{font-size:21px}.map-caption{left:56%;font-size:8px;letter-spacing:1.4px}.caption-line{width:22px}.landmark{font-size:7px;letter-spacing:.8px}.time-controls{left:auto;right:100px;transform:none}.region-heading h1{font-size:32px}.compass-rose{right:35px}}@media(max-width:760px){.topbar{padding:18px 20px;height:80px}.brand strong{font-size:12px}.brand{font-size:8px;gap:9px}.brand-mark{width:33px;height:38px}.main-menu{left:24px;top:auto;bottom:70px;transform:none;width:290px}.main-menu>h1{font-size:57px;margin:16px 0}.menu-intro{font-size:11px}.main-menu .eyebrow{font-size:7px}.scenario-card{padding:17px;margin-top:22px}.scenario-card h2{font-size:28px}.menu-note{display:none}.in-menu .world-vignette{background:linear-gradient(90deg,#132b25ed,rgba(19,43,37,.75) 44%,transparent),linear-gradient(0deg,#132b2588,transparent)}.map-caption{display:none}.controls-hint>span:nth-child(2),.controls-hint>span:nth-child(3){display:none}.footer{padding:12px 20px}.region-heading{left:20px;top:103px}.region-heading h1{font-size:27px}.region-heading p{font-size:10px}.time-controls{top:195px;left:20px;right:auto;transform:none}.compass-rose{right:25px;top:111px}.army-card{left:16px;bottom:66px;padding:12px;min-width:0;gap:10px}.army-crest{width:34px;height:47px}.army-crest svg{width:22px;height:22px}.army-crest>span{display:none}.army-description h2{font-size:19px}.army-card .icon-button{margin-left:0}.army-details{font-size:9px}.minimap-card{display:none}.map-tools{bottom:174px;right:17px}.tool-button span{display:none}.paused-indicator{top:258px;max-width:calc(100vw - 30px);width:285px}.pursuit{top:259px;width:290px}.is-paused .pursuit{top:347px}.landmark{font-size:6px;padding:4px;gap:3px}.landmark svg{width:10px;height:10px}.encounter-dialog{padding:25px}.encounter-dialog h2{font-size:35px}.opponents{gap:9px}.opponents h3{font-size:21px}.opponents .eyebrow{font-size:6px}.dialog{padding:28px}.dialog h2{font-size:36px}#toast{bottom:240px;width:290px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}.player-marker{color:#f4ddb0;background:#25493bed;border-color:#e2c081a8;letter-spacing:1px;font-size:7px;padding:5px 8px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.world-vignette{transition:none}.in-setup .world-vignette{background:#122c27ed;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.in-setup #landmarks,.in-setup .compass-rose,.in-setup .chapter,.in-setup .footer{visibility:hidden}.launch-menu{pointer-events:auto;position:absolute;top:124px;bottom:28px;left:max(40px,calc((100vw - 1300px)/2));right:max(40px,calc((100vw - 1300px)/2));display:flex;flex-direction:column;min-height:0}.launch-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}.launch-top h1{font-family:Libre Caslon Display,Georgia,serif;font-size:48px;line-height:1.15;font-weight:400;letter-spacing:-.8px;margin-top:10px}.launch-back{font-size:11px;color:#c8cbb4;border:1px solid #b6c39d33;padding:11px 16px}.launch-back:hover{border-color:#d5bb85;color:#f1dca9}.launch-body{display:grid;grid-template-columns:260px minmax(0,1fr);gap:38px;min-height:0;flex:1;overflow-y:auto;padding:1px 5px 20px 1px;scrollbar-width:thin;scrollbar-color:#71826a #1a342c}.step-label{display:flex;gap:11px;align-items:center;margin-bottom:18px;font-size:9px;letter-spacing:1.7px;color:#bcc8b2}.step-label b{display:grid;place-items:center;font:italic 14px Georgia,serif;width:28px;height:28px;border:1px solid #b3ba9350;color:#dbc38d}.scenario-options{display:grid;gap:12px}.scenario-option{position:relative;border:1px solid #b9c3a345;background:#29463a75;padding:0 0 16px;text-align:left;display:block;width:100%}.scenario-option[aria-pressed=true]{border-color:#d3b77d;background:#314c3c99}.scenario-art{display:block;height:95px;background:radial-gradient(ellipse at 74% 64%,#8c626154,transparent 40%),linear-gradient(150deg,#73987c,#405e4a);position:relative;overflow:hidden;margin-bottom:15px}.scenario-art:after{content:"";position:absolute;width:125%;height:80px;border-radius:50%;background:#253f306b;bottom:-65px;left:-20px;transform:rotate(-9deg)}.art-mountain{position:absolute;background:linear-gradient(118deg,#a8b39d 48%,#6e8271 48%);clip-path:polygon(50% 0,100% 100%,0 100%);height:72px;width:95px;bottom:12px;left:15px}.art-mountain.m2{left:68px;height:52px;width:68px;background:linear-gradient(118deg,#90a28b 48%,#596f5d 48%)}.art-river{position:absolute;width:16px;height:130px;background:#9ac4be;transform:rotate(38deg);top:-10px;left:62%;opacity:.6}.art-portal{position:absolute;right:25px;bottom:17px;width:24px;height:34px;border:5px solid #463741;border-radius:50% 50% 5px 5px;box-shadow:0 0 14px #cb6f6a;background:#cf7e70;transform:rotate(-5deg)}.scenario-index{position:absolute;right:13px;top:10px;font:italic 13px Georgia,serif;color:#e6dbb8}.scenario-option-title{display:block;font:28px Libre Caslon Display,Georgia,serif;padding:0 17px}.scenario-option-region{display:block;font-size:10px;color:#b5c8b2;margin:6px 17px 0}.selection-tick{position:absolute;right:14px;bottom:20px;font-size:12px;color:#e7cf93}.scenario-option[aria-pressed=false] .selection-tick{visibility:hidden}.scenario-brief{margin-top:22px}.scenario-brief>.eyebrow{font-size:7px;letter-spacing:1px;color:#a8b59b}.scenario-brief>p{font-size:11px;color:#b3c2ac;line-height:1.85;margin-top:10px}.mission-brief{display:flex;gap:11px;margin-top:22px;padding:18px 0;border-top:1px solid #bfbe9328;border-bottom:1px solid #bfbe9328}.mission-mark{font-size:24px;color:#dcc18c}.mission-brief>div>span{font-size:7px;letter-spacing:1.3px;color:#d6c08f}.mission-brief h3{font:21px/1.1 Libre Caslon Display,Georgia,serif;margin-top:8px}.mission-brief p{font-size:10px;line-height:1.75;color:#aabcaa;margin-top:8px}.bestiary{margin-top:19px}.bestiary>.eyebrow{font-size:7px;color:#afbca6}.bestiary>div{display:flex;gap:8px;margin-top:12px}.bestiary>div>span{flex:1;display:flex;align-items:center;gap:5px;font-size:9px;color:#b8c4b2}.bestiary img{width:38px;height:43px;object-fit:contain;background:#52654a50;border:1px solid #acb6942c}.hero-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.hero-option{display:flex;flex-direction:column;min-width:0;text-align:left;padding:16px 18px 0;border:1px solid #bfc4a02b;background:linear-gradient(145deg,#4b63502b,#233d331f);transition:border-color .2s,background .2s;position:relative;overflow:hidden}.hero-option:hover{border-color:#c5c0a180;background-color:#566c4726}.hero-option[aria-pressed=true]{border-color:#d9be80;background:linear-gradient(145deg,#66745644,#3048394d);box-shadow:inset 0 0 40px #a2a8650a}.hero-card-top{display:flex;align-items:center;justify-content:space-between;width:100%;font-size:7px;letter-spacing:1.5px;color:#98ac96}.hero-choice-check{width:21px;height:21px;border:1px solid #c3b98a40;border-radius:50%;display:grid;place-items:center;color:transparent;font-size:10px}.hero-option[aria-pressed=true] .hero-choice-check{color:#263f32;background:#d9be80;border-color:#d9be80}.hero-portrait{display:block;position:relative;width:calc(100% + 24px);height:232px;margin:0 -12px 10px}.hero-portrait img{width:100%;height:100%;object-fit:contain;position:relative;z-index:1;filter:drop-shadow(0 13px 12px #101e1bb3);transition:transform .4s}.hero-option:hover .hero-portrait img{transform:translateY(-3px)}.portrait-halo{width:155px;height:155px;max-width:90%;border:1px solid color-mix(in srgb,var(--hero-color) 24%,transparent);border-radius:50%;position:absolute;top:32px;left:50%;transform:translate(-50%);background:radial-gradient(circle,color-mix(in srgb,var(--hero-color) 12%,transparent),transparent 70%)}.portrait-halo:after{content:"";position:absolute;top:9px;right:9px;bottom:9px;left:9px;border:1px solid #c5c4a611;border-radius:50%}.hero-role{font-size:7px;letter-spacing:1.3px;color:var(--hero-color);line-height:1.5;min-height:21px}.hero-name{font:39px/1.1 Libre Caslon Display,Georgia,serif;margin:3px 0 12px;color:#eee4cc}.hero-lore{font-size:10px;color:#acbca8;line-height:1.8;min-height:76px}.hero-select-label{display:block;font-size:7px;letter-spacing:1.3px;text-align:center;padding:15px 0;border-top:1px solid #c4c6a026;margin-top:14px;color:#8da28a;width:100%}.hero-option[aria-pressed=true] .hero-select-label{color:#e6cd93}.departure-company{margin-top:24px;padding:16px 0 0;border-top:1px solid #b8c29824}.departure-company>.eyebrow{font-size:7px;color:#9fae96}.departure-company>div{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:11px;font-size:10px;color:#aebea9}.departure-company b{color:#d9ceab;font-weight:500}.departure-company i{opacity:.5}.launch-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #b7c29735;padding-top:18px;gap:20px}.launch-bottom>.primary{width:270px;min-height:52px}.launch-bottom .eyebrow{font-size:7px;color:#9fac95}.launch-bottom p{font-size:12px;color:#c1cbb5;margin-top:9px}.launch-bottom strong{font-weight:500;color:#e5d5b0}.launch-bottom p>span{padding:0 16px;color:#8eaa8f}.objective-line{margin-top:15px;display:flex;align-items:center;gap:8px;color:#455943;font-size:10px}.objective-line>span:first-child{font-size:19px;color:#5b6645}.boss-marker{background:#4b384dd9;color:#e6c3d0;border:1px solid #d1abc763;font-size:7px}.time-controls{transition:border-color .2s}.is-paused .time-controls{border-color:#dac180}#app:not(.in-menu) .footer{display:none}.map-tools,.minimap-card{bottom:102px;transition:bottom .25s}.company-expanded .map-tools,.company-expanded .minimap-card{bottom:328px}.company-drawer{position:absolute;left:0;right:0;bottom:0;z-index:3;background:linear-gradient(130deg,#233f34fa,#172f2bfc);border-top:1px solid #cfbd805e;box-shadow:0 -8px 40px #19382b20;pointer-events:auto;transform:translateY(calc(100% - 76px));transition:transform .26s ease;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.company-strip{height:76px;display:flex;align-items:center;padding:0 35px;gap:17px}.commander-portrait{width:53px;height:60px;border:1px solid #d1b87859;background:radial-gradient(ellipse at 50% 35%,#6c79543d,#1b322700);border-radius:2px 2px 20px 20px;position:relative;overflow:hidden;padding:0;flex-shrink:0}.commander-portrait img{position:absolute;width:112px;height:130px;object-fit:contain;max-width:none;top:-12px;left:50%;transform:translate(-50%)}.commander-portrait:hover{border-color:#d6c084}.commander-name{min-width:120px}.commander-name>.eyebrow{font-size:6px;letter-spacing:1.5px;color:#acb99f}.commander-name h2{font:28px/1.2 Libre Caslon Display,Georgia,serif;margin-top:4px}.company-totals{display:flex;flex-direction:column;gap:5px;padding:0 24px;border-left:1px solid #c5c29b25}.company-totals strong{color:#d8d4b6;font-size:11px;font-weight:500}.company-totals>span{font-size:9px;color:#9ab097}.company-state{display:flex;align-items:center;gap:7px;font-size:10px;color:#adbfaa;flex:1}.company-state i{width:5px;height:5px;border-radius:50%;background:#a8bc83}.company-state i.danger{background:#e8906c;box-shadow:0 0 7px #e8775940}.company-toggle{padding:8px 35px 8px 18px;position:relative;text-align:left}.company-toggle>span{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#dfcc9c}.company-toggle small{font-size:8px;display:block;color:#8fa58e;margin-top:5px}.company-toggle b{position:absolute;right:6px;top:8px;font-size:22px;font-weight:400;color:#c6b585;transition:transform .26s}.expanded .company-toggle b{transform:rotate(180deg)}.company-pin{border:1px solid #bcc19a33;border-radius:50%;width:29px;height:29px;color:#b6c39f;flex-shrink:0;font-size:18px;padding:0}.company-pin[aria-pressed=true]{border-color:#d6bc82;background:#d2b680;color:#294235}.company-content{display:grid;grid-template-columns:minmax(0,1fr) 235px;gap:28px;padding:0 35px 20px;height:230px}.roster-heading{display:flex;align-items:center;justify-content:space-between;margin:4px 0 13px}.roster-heading>.eyebrow{font-size:7px;letter-spacing:1.4px}.roster-heading>span:last-child{font-size:8px;color:#94aa91}.regiment-list{display:flex;gap:11px;overflow-x:auto;padding:2px 2px 8px;scrollbar-width:thin;scrollbar-color:#6c8064 #203b30}.regiment-card{flex:1;min-width:115px;max-width:177px;padding:8px 11px 9px;text-align:left;display:flex;flex-direction:column;border:1px solid #c3c4a433;background:linear-gradient(140deg,#536a4733,#34504422);height:177px;transition:border-color .2s}.regiment-card:hover{border-color:#b7ba8d8c}.regiment-card[aria-pressed=true]{border-color:#d4ba7c;background:linear-gradient(140deg,#66775144,#37534255)}.regiment-top{display:flex;align-items:center;justify-content:space-between;font-size:8px;color:#b6c1a7}.regiment-top>span{font:10px Georgia,serif;opacity:.65}.regiment-top strong{font-size:12px;color:#e8dbb5;font-weight:500}.regiment-top small{font-size:8px;color:#8fa486}.regiment-portrait{height:87px;position:relative;display:block;margin:0 -8px}.regiment-portrait:before{content:"";position:absolute;width:60px;height:60px;left:50%;transform:translate(-50%);top:5px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--unit-color) 17%,transparent),transparent 70%)}.regiment-portrait img{position:relative;display:block;height:100%;width:100%;object-fit:contain;filter:drop-shadow(0 5px 4px #15292066)}.regiment-name{font:21px/1.1 Libre Caslon Display,Georgia,serif;color:#e7ddc2}.health-track{display:block;width:100%;height:3px;background:#142b246e;margin:8px 0 5px}.health-track i{display:block;height:100%;background:linear-gradient(90deg,#839e6c,#b5c795)}.regiment-hp{display:block;font-size:7px;color:#9eb093;letter-spacing:.4px}.regiment-detail{border-left:1px solid #bdc3982b;padding:6px 0 0 25px}.regiment-detail>.eyebrow{font-size:7px;letter-spacing:1.3px;color:#b8c49d}.regiment-detail h3{font:28px Libre Caslon Display,Georgia,serif;margin:9px 0}.regiment-detail p{font-size:10px;line-height:1.8;color:#acbea6;min-height:51px}.model-health-grid{display:flex;gap:3px;flex-wrap:wrap;margin:13px 0 11px}.model-health{width:7px;height:12px;display:flex;align-items:flex-end;background:#0e231bc2;border-radius:1px;overflow:hidden}.model-health i{display:block;width:100%;background:#a2b882}.model-health.fallen{outline:1px solid #696e562e}.regiment-detail-health{display:flex;flex-direction:column;gap:5px;font-size:8px;color:#8da589}.regiment-detail-health b{font-weight:500;color:#d3d8b5}@media(max-height:840px){.launch-menu{top:105px;bottom:18px}.launch-top{margin-bottom:18px}.launch-top h1{font-size:39px;margin-top:7px}.launch-body{gap:27px;grid-template-columns:235px minmax(0,1fr);padding-bottom:14px}.hero-portrait{height:171px;margin-bottom:6px}.portrait-halo{top:15px;width:125px;height:125px}.hero-name{font-size:34px;margin-bottom:9px}.hero-lore{font-size:9px;min-height:64px}.hero-option{padding:12px 14px 0}.hero-role{font-size:6px;letter-spacing:1px}.hero-select-label{padding:12px 0;margin-top:10px}.departure-company{margin-top:16px;padding-top:12px}.scenario-art{height:70px}.scenario-option-title{font-size:25px}.scenario-brief{margin-top:16px}.mission-brief{margin-top:13px;padding:13px 0}.bestiary{margin-top:12px}.launch-bottom{padding-top:13px}.launch-bottom>.primary{min-height:46px}.company-expanded .map-tools,.company-expanded .minimap-card{bottom:325px}}@media(max-width:1150px){.launch-menu{left:28px;right:28px}.launch-body{grid-template-columns:220px minmax(0,1fr);gap:22px}.hero-options{gap:9px}.hero-option{padding-left:12px;padding-right:12px}.hero-name{font-size:33px}.hero-role{font-size:6px;letter-spacing:.6px}.hero-lore{font-size:9px;min-height:82px}.departure-company>div{gap:7px;font-size:9px}.company-strip{padding:0 23px;gap:12px}.company-content{padding-left:23px;padding-right:23px;gap:18px;grid-template-columns:minmax(0,1fr) 195px}.company-totals{padding:0 17px}.regiment-detail{padding-left:18px}.regiment-list{gap:7px}.regiment-card{min-width:105px;padding-left:8px;padding-right:8px}.map-tools{bottom:298px}.company-expanded .map-tools{bottom:524px}}@media(max-width:800px){.launch-top h1{font-size:32px}.launch-menu{top:97px;left:20px;right:20px}.launch-body{grid-template-columns:1fr;gap:26px}.scenario-selection{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.scenario-selection>.step-label{grid-column:1 / -1}.scenario-brief{margin-top:0}.scenario-brief>.eyebrow,.scenario-brief>p{display:none}.mission-brief{margin-top:0;border-top:0;padding-top:0}.bestiary{grid-column:1 / -1}.bestiary>div{justify-content:flex-start}.bestiary>div>span{flex:0 1 175px}.hero-portrait{height:165px}.hero-lore{min-height:82px}.launch-bottom>.primary{width:190px;font-size:11px}.launch-bottom p{font-size:10px}.company-state{display:none}.company-totals{flex:1;padding:0 12px}.company-toggle small{display:none}.company-toggle{padding-left:0;padding-right:24px}.company-toggle>span{font-size:8px}.company-content{grid-template-columns:1fr}.regiment-detail{display:none}.commander-name{min-width:76px}.company-pin{display:none}.roster-heading>span:last-child{display:none}.objective-line{font-size:8px;margin-top:10px}.company-expanded .map-tools{bottom:326px}}@media(max-width:540px){.launch-top h1{font-size:28px}.launch-top .eyebrow{font-size:6px;letter-spacing:1px}.launch-back{padding:8px 10px;font-size:9px}.hero-options{grid-template-columns:1fr}.hero-option{display:grid;grid-template-columns:100px 1fr;padding:12px;gap:4px 12px}.hero-card-top{grid-column:1 / -1}.hero-portrait{grid-row:2 / 6;width:120px;height:156px;margin:0 -10px}.hero-role{align-self:end;min-height:0;margin-top:10px}.hero-name{font-size:30px;margin:0}.hero-lore{min-height:0}.hero-select-label{padding:8px 0 0;margin:0;text-align:left}.portrait-halo{width:85px;height:85px;top:25px}.scenario-selection{display:block}.scenario-brief{margin-top:16px}.scenario-art{height:65px}.launch-bottom>div{display:none}.launch-bottom>.primary{width:100%}.company-strip{padding:0 12px;gap:10px}.company-totals{padding:0 10px}.company-totals strong{font-size:9px}.company-totals>span{font-size:8px}.commander-name{min-width:58px}.commander-name>.eyebrow{font-size:5px;letter-spacing:.5px}.commander-name h2{font-size:23px}.company-toggle>span{display:none}.company-toggle{width:24px}.commander-portrait{width:43px;height:54px}.company-content{padding-left:12px;padding-right:12px}.objective-line{max-width:180px}}@media(prefers-reduced-motion:reduce){.company-drawer,.map-tools,.minimap-card,.hero-portrait img{transition:none}}@media(min-width:801px)and (max-height:800px){.hero-portrait{height:155px}.hero-lore{min-height:63px}.hero-select-label{padding:10px 0}.scenario-art{height:55px;margin-bottom:12px}.scenario-brief>p{font-size:10px;line-height:1.7}.mission-brief{margin-top:11px;padding:11px 0}.mission-brief h3{font-size:20px}.mission-brief p{font-size:9px;line-height:1.6}.bestiary{margin-top:10px}.bestiary img{width:32px;height:35px}.bestiary>div{margin-top:9px}}.launch-menu{top:115px;bottom:26px}.launch-top{margin-bottom:22px;flex-shrink:0}.launch-top h1{font-size:clamp(32px,3.5vw,50px)}.launch-back{min-height:40px}.selection-screen{flex:1;min-height:0;display:flex;flex-direction:column;gap:18px;animation:selection-arrive .42s cubic-bezier(.2,.8,.2,1) both}@keyframes selection-arrive{0%{opacity:0;transform:translate(28px) scale(.985)}to{opacity:1;transform:none}}.expedition-catalog{flex:1;min-height:0;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,560px),1fr));gap:24px;padding:4px}.expedition-card{position:relative;overflow:hidden;isolation:isolate;text-align:left;padding:0;min-height:380px;border:1px solid #dfd6ad66;background:#688f72}.expedition-illustration{width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0;object-fit:cover;object-position:center 43%;transform:scale(1);transition:transform 1.2s cubic-bezier(.15,.6,.2,1)}.expedition-card:hover .expedition-illustration,.expedition-card:focus-visible .expedition-illustration{transform:scale(1.07) translateY(-1%)}.expedition-shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#0f28299c,transparent 75%),linear-gradient(0deg,#112a29f5,transparent 74%)}.expedition-number{position:absolute;top:30px;left:38px;font-size:11px;letter-spacing:3px;color:#fff0c4}.expedition-number small{display:block;font-size:8px;letter-spacing:2px;margin-top:9px;opacity:.75}.expedition-caption{position:absolute;left:38px;right:38px;bottom:30px;display:flex;flex-direction:column;align-items:flex-start}.expedition-caption>.eyebrow{color:#e4cb8b;font-size:10px}.expedition-caption>strong{font:400 clamp(42px,5vw,72px)/1.05 "Libre Caslon Display",Georgia,serif;margin:13px 0;color:#fff1cb}.expedition-description{max-width:490px;font-size:12px;line-height:1.8;color:#d5ddc4}.expedition-objective{margin-top:22px;display:flex;gap:14px;align-items:center;font-size:8px;letter-spacing:1.5px;color:#dcbd7e}.expedition-objective b{font-size:11px;font-weight:400;letter-spacing:.2px;color:#e9e5cb}.expedition-enter{display:flex;align-items:center;gap:45px;margin-top:24px;border-top:1px solid #dfd6ad66;padding-top:15px;font-size:11px;text-transform:uppercase;letter-spacing:1.8px;color:#fbe6ac}.expedition-enter i{font-style:normal;font-size:28px;transition:transform .35s}.expedition-card:hover .expedition-enter i,.expedition-card:focus-visible .expedition-enter i{transform:translate(7px,-4px)}.expedition-edge{position:absolute;top:10px;right:10px;bottom:10px;left:10px;border:1px solid #eed29800;pointer-events:none;transition:border-color .4s,transform .5s;transform:scale(1.03)}.expedition-card:hover .expedition-edge,.expedition-card:focus-visible .expedition-edge{border-color:#eed29877;transform:scale(1)}.selection-note{display:flex;justify-content:space-between;color:#9db39d;font-size:9px;letter-spacing:1px;padding:0 4px}.selection-note>span:first-child{color:#d2c18f;font-size:8px;letter-spacing:2px}.hero-workshop{flex:1;min-height:280px;display:grid;grid-template-columns:230px minmax(220px,1fr) 280px;gap:24px}.commander-options{display:flex;flex-direction:column;gap:12px;justify-content:center}.commander-options button{display:flex;align-items:center;min-height:100px;text-align:left;border:1px solid #bdd2b527;background:linear-gradient(110deg,#9ab58d13,transparent);position:relative;padding:6px 12px 6px 0;overflow:hidden;transition:transform .25s,border-color .25s,background .25s}.commander-options button:hover{transform:translate(5px);border-color:#ddc48599}.commander-options button[aria-pressed=true]{border-color:#ddc485;background:linear-gradient(110deg,#d1b87d26,transparent)}.commander-options img{width:80px;height:90px;object-fit:contain}.commander-options small{display:block;font-size:7px;line-height:1.7;letter-spacing:.7px;color:#acbca2}.commander-options strong{display:block;font:32px Libre Caslon Display,Georgia,serif;color:#f1e3bb;margin-top:4px}.commander-options b{position:absolute;right:8px;bottom:9px;font-size:14px;color:#d9c17f;opacity:0}.commander-options button[aria-pressed=true] b{opacity:1}.model-stage{position:relative;min-height:0;background:radial-gradient(ellipse at 50% 60%,#c4cc7826,transparent 66%)}#model-preview{position:absolute;top:0;right:0;bottom:25px;left:0}#model-preview canvas{display:block;cursor:grab;touch-action:none}#model-preview canvas:active{cursor:grabbing}.stage-orbit{position:absolute;width:77%;height:18%;bottom:6%;left:11.5%;border:1px solid #c4bd8260;border-radius:50%;background:radial-gradient(ellipse,#071e2266,transparent 68%)}.stage-orbit:after{content:"";position:absolute;top:8px;right:16px;bottom:8px;left:16px;border:1px solid #c4bd8226;border-radius:50%}.preview-instruction{position:absolute;bottom:0;width:100%;text-align:center;font-size:8px;letter-spacing:.6px;color:#a8b99f;pointer-events:none}.selection-detail{align-self:center;border-left:1px solid #cad1a42c;padding-left:25px;max-height:100%;overflow-y:auto;scrollbar-width:thin}.selection-detail>.eyebrow{font-size:8px;line-height:1.6;letter-spacing:1.5px;color:#d6c08c}.selection-detail h2{font:54px/1.08 Libre Caslon Display,Georgia,serif;color:#f4e5be;margin:13px 0 18px}.selection-detail p{font-size:12px;line-height:1.9;color:#b6c6af}.hero-seal{font:65px Georgia,serif;color:#d6c28f;margin:20px 0 8px;opacity:.7}.detail-footnote{font-size:9px;letter-spacing:.5px;color:#92a991}.selection-detail .launch-back{margin-top:14px;width:100%}.departure-roster{border-top:1px solid #c1c9a62b;padding-top:12px;flex-shrink:0}#departure-units{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}#departure-units button{display:flex;align-items:center;text-align:left;height:95px;position:relative;padding:0 9px 0 0;border:1px solid #bac8a631;background:linear-gradient(120deg,#93ac7e1c,transparent);transition:background .2s,transform .2s,border-color .2s}#departure-units button:hover{transform:translateY(-3px);border-color:#d6bc7d99}#departure-units button[aria-pressed=true]{border-color:#d6bc7d;background-color:#d6bc7d19}#departure-units img{width:80px;height:94px;object-fit:contain}#departure-units strong{font:23px Libre Caslon Display,Georgia,serif;display:block;color:#e8dec0}#departure-units small{display:block;font-size:8px;color:#a0b398;margin-top:6px}#departure-units b{position:absolute;top:6px;left:7px;font-size:9px;color:#d8c78e}.launch-bottom{flex-shrink:0;padding-top:14px}.unit-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 15px;margin:18px 0 0}.unit-stats>div{border-top:1px solid #bac9a629;padding:9px 0}.unit-stats dt{font-size:9px;line-height:1.4;color:#afc3a4}.unit-stats dd{font-size:19px;font-variant-numeric:tabular-nums;color:#f0deaa;margin:4px 0 0}.company-content{height:300px;grid-template-columns:minmax(0,1fr) 325px}.company-expanded .map-tools,.company-expanded .minimap-card{bottom:398px}.regiment-detail{overflow-y:auto;scrollbar-width:thin;padding-top:0}.detail-identity{display:flex;align-items:center;gap:12px}.detail-identity img{width:62px;height:70px;object-fit:contain;background:radial-gradient(ellipse,#b3c58b26,transparent)}.detail-identity .eyebrow{font-size:7px;letter-spacing:1px}.detail-identity h3{margin:4px 0}.detail-identity div>span:last-child{color:#a6b49a;font-size:8px}.regiment-detail .unit-stats{margin-top:5px;gap:0 12px;grid-template-columns:repeat(3,minmax(0,1fr))}.regiment-detail .unit-stats dd{font-size:17px}.regiment-detail .unit-stats dt{font-size:8px}.regiment-detail .model-health-grid{margin:8px 0}.regiment-detail-health{flex-direction:row;justify-content:space-between}.regiment-card{height:237px}.regiment-portrait{height:140px}@media(max-height:840px){.launch-menu{top:100px;bottom:20px}.launch-top{margin-bottom:14px}.launch-top h1{font-size:35px}.selection-screen{gap:12px}.hero-workshop{min-height:260px}.commander-options{gap:9px}.commander-options button{min-height:77px}.commander-options img{height:70px;width:64px}.selection-detail h2{font-size:39px;margin:7px 0 10px}.selection-detail p{font-size:10px}.selection-detail .unit-stats{margin-top:9px}.unit-stats>div{padding:6px 0}.unit-stats dd{font-size:16px}.selection-detail .launch-back{margin-top:8px;min-height:32px;padding:7px}#departure-units button{height:78px}#departure-units img{height:76px;width:62px}.hero-seal{margin-top:10px}}@media(max-width:1150px){.hero-workshop{grid-template-columns:190px minmax(210px,1fr) 240px;gap:16px}.selection-detail{padding-left:17px}#departure-units strong{font-size:21px}.company-content{grid-template-columns:minmax(0,1fr) 300px}.regiment-card{min-width:98px}.company-expanded .map-tools{bottom:594px}}@media(max-width:800px){.selection-screen{overflow-y:auto}.hero-workshop{grid-template-columns:150px minmax(150px,1fr);min-height:420px}.selection-detail{grid-column:1/-1;border-left:0;padding:0}.selection-detail .hero-seal,.detail-footnote{display:none}.selection-detail h2{font-size:30px}.model-stage{min-height:250px}#departure-units{grid-template-columns:repeat(5,130px);overflow-x:auto;padding-bottom:5px}#departure-units img{width:47px}#departure-units strong{font-size:18px}.company-content{grid-template-columns:minmax(0,1fr) 265px;gap:12px}.regiment-detail{display:block;padding-left:12px}.company-expanded .map-tools{bottom:398px}.expedition-caption{left:22px;right:22px}.expedition-number{left:22px}.expedition-caption>strong{font-size:42px}.selection-note>span:first-child{display:none}}@media(max-height:680px){.selection-screen{overflow-y:auto}.hero-workshop{flex-shrink:0;min-height:320px}}@media(prefers-reduced-motion:reduce){.selection-screen{animation:none}.expedition-illustration,.expedition-enter i,.expedition-edge,.commander-options button,#departure-units button{transition:none}.expedition-card:hover .expedition-illustration,.expedition-card:focus-visible .expedition-illustration{transform:none}}.home-backdrop{display:none;position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;z-index:0;background:#17382f}#app.in-menu{background:#18352f}.in-menu #world{visibility:hidden}.in-menu .world-vignette{display:none}.in-menu:not(.in-setup) .home-backdrop{display:block}.home-backdrop>img{width:100%;height:100%;object-fit:cover;opacity:.7}.home-backdrop>div{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 50% 46%,#18392c30,#0b282bab 95%),linear-gradient(0deg,#132d29e6,transparent 70%)}.in-menu:not(.in-setup) .topbar{position:relative;z-index:2;border-bottom-color:#d4cead21}.in-menu #landmarks,.in-menu .chapter,.in-menu .compass-rose,.in-menu .map-caption,.in-menu .footer{visibility:hidden}.main-menu.home-menu{left:50%;top:49%;width:min(520px,90vw);transform:translate(-50%,-44%);text-align:center;z-index:1;display:flex;flex-direction:column;align-items:center;pointer-events:auto}.home-emblem{color:#ead396;font:68px/1 Georgia,serif;text-shadow:0 0 45px #eed29266;margin-bottom:22px}.home-menu>.eyebrow{color:#f0dfb3;font-size:12px;letter-spacing:6px}.main-menu.home-menu>h1{font:105px/.95 Libre Caslon Display,Georgia,serif;letter-spacing:-2px;margin:8px 0 19px;color:#fff0cf;text-shadow:0 3px 35px #15352e}.home-motto{font:italic 20px Libre Caslon Display,Georgia,serif;color:#e5d8b6;margin-bottom:39px}.expedition-start{width:340px;max-width:100%;height:65px;padding:0 26px;display:flex;align-items:center;justify-content:space-between;text-align:left;color:#1d3830;background:#e2c98b;border:1px solid #f8e3aa;clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);position:relative;overflow:hidden;transition:transform .25s,background .25s}.expedition-start>span{font-size:12px;text-transform:uppercase;letter-spacing:1.1px;font-weight:600;position:relative;z-index:1}.expedition-start>b{font-size:28px;font-weight:400;transition:transform .3s}.expedition-start:before{content:"";position:absolute;inset:-100% auto -100% -50%;width:24%;background:linear-gradient(90deg,transparent,#fff5c280,transparent);transform:skew(-25deg);animation:banner-glint 5s ease-in-out infinite}@keyframes banner-glint{0%,45%{left:-50%}75%,to{left:140%}}.expedition-start:hover{transform:translateY(-3px);background:#efdb9f}.expedition-start:hover>b{transform:translate(3px,-3px)}.expedition-start:focus-visible{background:#fff0bc}.home-resume{display:flex;justify-content:space-between;align-items:center;width:340px;max-width:100%;margin-top:13px;padding:17px 25px;font-size:11px;letter-spacing:.5px;border:1px solid #d5d4ae55;background:#19382e80;color:#e8dfc2;transition:border-color .2s,background .2s}.home-resume:hover:not(:disabled){border-color:#e4cb8d;background:#304b399e}.home-resume:disabled{cursor:default;color:#afbaa4;border-color:#d5d4ae25}.save-note{min-height:15px;margin-top:10px;font-size:9px;color:#c1cbb4}.devlog-link{margin-top:42px;font-size:10px;letter-spacing:.5px;color:#d4d7bd;border-bottom:1px solid #c7cda440;padding:10px 0}.devlog-link>span{color:#e7cc8d;margin-left:12px;font-size:9px}.devlog-link:hover{color:#fff0c0;border-color:#e7cc8d}.commander-name{text-align:left;border-bottom:1px solid transparent;padding:0}.commander-name:hover{border-bottom-color:#d4c28a}.selection-detail .detail-footnote{display:block;margin-top:10px}@media(max-height:780px){.home-emblem{font-size:45px;margin-bottom:15px}.main-menu.home-menu>h1{font-size:85px}.home-motto{margin-bottom:26px}.devlog-link{margin-top:24px}}@media(max-width:620px){.main-menu.home-menu>h1{font-size:78px}}@media(prefers-reduced-motion:reduce){.expedition-start:before,.devlog-dialog[open]{animation:none}.expedition-start,.expedition-start>b{transition:none}}.home-about{display:block;margin-top:12px;color:#d7c78f;font-size:13px;text-underline-offset:4px}.expedition-difficulty{--skull-ink:#20332c;position:absolute;top:28px;right:36px;display:grid;gap:9px;padding:12px 15px;background:#142820d9;border:1px solid #f5dfaa45;color:#d2d1bd;text-align:left}.expedition-difficulty>span:first-child{display:flex;justify-content:space-between;gap:18px;font-size:12px}.expedition-difficulty b{color:#f1d99a;font-weight:600}.difficulty-skulls{display:flex;gap:5px}.difficulty-skull{width:23px;height:25px;fill:#263c33;stroke:#84907b;stroke-width:1.1}.difficulty-skull.is-active{fill:#f1d39a;stroke:#ffe7b9;filter:drop-shadow(0 0 5px #e6ba6640)}.difficulty-skull .skull-cutout{fill:var(--skull-ink);stroke:none}@media(max-width:620px){.expedition-difficulty{top:18px;right:16px;padding:9px;gap:7px}.expedition-difficulty>span:first-child{font-size:11px;gap:8px}.difficulty-skulls{gap:3px}.difficulty-skull{width:18px;height:21px}}.eyebrow{font-size:11px;letter-spacing:1.7px}button,summary{-webkit-tap-highlight-color:transparent}.launch-menu{top:115px;bottom:24px;left:clamp(30px,3vw,160px);right:clamp(30px,3vw,160px)}.launch-top h1{font-size:clamp(32px,3vw,48px)}.launch-back{font-size:13px;min-height:42px;padding:10px 17px}.launch-bottom .eyebrow{font-size:11px}.launch-bottom p{font-size:14px}.launch-bottom>.primary{font-size:14px;min-height:50px}.selection-screen{gap:16px;overflow:visible}.hero-workshop{grid-template-columns:225px minmax(230px,1fr) minmax(350px,410px);min-height:0;flex:1;gap:22px}.commander-options small{font-size:10px;line-height:1.5;letter-spacing:.6px}.commander-options strong{font-size:34px}.commander-options button{min-height:98px}.commander-options img{height:88px;width:74px}.model-stage{min-height:270px}.preview-instruction{font-size:11px;letter-spacing:0}.selection-detail{align-self:stretch;padding:6px 5px 8px 22px;overflow-y:auto;min-height:0;scrollbar-color:#788b6e #1d3931}.selection-detail>.eyebrow{font-size:10px;letter-spacing:1px}.selection-detail h2{font-size:44px;margin:8px 0 14px}.selection-detail p{font-size:14px;line-height:1.75;color:#d1dbc7}.hero-detail-tabs{display:flex;border-bottom:1px solid #c4cba73d;gap:4px;margin-bottom:18px}.hero-detail-tabs button{flex:1;padding:11px 5px;font-size:12px;color:#aabb9f;border-bottom:2px solid transparent;min-height:43px}.hero-detail-tabs button[aria-selected=true]{color:#f2d594;border-bottom-color:#e1c27d;background:#c2b1790c}.hero-story{margin-top:0}.selection-detail blockquote{margin:19px 0;padding-left:16px;border-left:2px solid #cfb880;font:italic 21px/1.45 Libre Caslon Display,Georgia,serif;color:#ebd5a3}.hero-playstyle{border-top:1px solid #c4cba72b;padding-top:14px}.hero-playstyle strong{font-size:12px;color:#e4c68a;text-transform:uppercase;letter-spacing:.6px}.hero-playstyle p{margin-top:7px}.unit-stats{gap:0 18px;margin-top:14px}.unit-stats>div{padding:10px 0}.unit-stats dt{font-size:12px;color:#c3d0b8;line-height:1.4}.unit-stats dd{font-size:23px;margin-top:5px;font-weight:500}.unit-stats [data-stat=magic-resistance] dd{color:#c5b7ed}.selection-detail .stats-explainer{font-size:12px;line-height:1.6;color:#a8ba9f;margin-top:16px}.passive-section{margin-top:14px}.passive-section h4{display:flex;align-items:baseline;gap:10px;font-size:14px;font-weight:500;color:#e6d5ac;margin:0 0 9px}.passive-section h4 small{font-size:11px;color:#a6b69b;font-weight:400}.passive-list{display:grid;gap:7px}.passive-badge{border:1px solid #afc19e38;background:#7690670c}.passive-badge summary,.ability-card summary{display:flex;align-items:center;gap:9px;cursor:pointer;list-style:none;padding:10px 12px;min-height:43px;color:#dce3c9;font-size:13px}.passive-badge summary::-webkit-details-marker,.ability-card summary::-webkit-details-marker{display:none}.passive-badge svg,.ability-card svg{flex-shrink:0;width:21px;height:21px;color:#d4bc85}.passive-badge b,.ability-card b{margin-left:auto;font-weight:400;color:#b6c0a6}details[open]>summary>b{transform:rotate(45deg)}.passive-badge p{padding:0 12px 12px;margin:0;font-size:12px;line-height:1.65;color:#c5d0ba}.ability-list{display:grid;gap:11px}.ability-list>.ability-note{font-size:12px;line-height:1.6;color:#aaba9f;margin:0 0 3px}.ability-card{border:1px solid #c8c6a137;background:#a1ad770c}.ability-card summary{padding:13px;font-size:16px;color:#efdcad}.ability-card summary small{display:block;font:11px DM Sans,sans-serif;color:#a9bba0;margin-top:6px}.ability-card>div{padding:0 14px 14px}.ability-card p{font-size:13px;margin:0 0 11px;line-height:1.65}.ability-card .ability-effect{color:#f0dfb4;padding-top:11px;border-top:1px solid #bec7a52b}.ability-card dl{display:flex;gap:25px;margin:10px 0 0}.ability-card dt{color:#aabca0;font-size:11px}.ability-card dd{color:#e0d7b9;font-size:12px;margin:5px 0 0}.departure-roster{flex-shrink:0;padding-top:12px}.departure-roster .roster-heading{margin-bottom:12px;align-items:end;gap:15px}.roster-heading>.eyebrow,.departure-roster .eyebrow{font-size:11px}.departure-roster .roster-heading strong{display:block;margin-top:7px;font-size:16px;font-weight:500;color:#f0dcad}.departure-roster .roster-heading strong>span{font-size:13px;font-weight:400;color:#b6c5ac}.roster-heading>span:last-child{font-size:12px}#departure-units{grid-template-columns:repeat(var(--roster-count,3),minmax(160px,280px));gap:12px;overflow-x:auto;padding:3px 1px}#departure-units button{height:92px}#departure-units img{height:88px;width:76px}#departure-units strong{font-size:26px}#departure-units small{font-size:12px}#departure-units b{font-size:11px}.launch-menu[data-step=expedition]{isolation:isolate;color:var(--expedition-ink)}.in-setup .topbar{position:relative;z-index:2}.expedition-atmosphere{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 70% 15%,#9ab18b25,transparent 70%),var(--expedition-background);transition:background-color .5s}.launch-menu[data-step=expedition] .launch-top h1{color:var(--expedition-ink)}.launch-menu[data-step=expedition] .eyebrow,.launch-menu[data-step=expedition] .launch-back{color:var(--expedition-accent)}.expedition-carousel{flex:1;min-height:0;overflow:hidden;padding:3px;touch-action:pan-y}.expedition-track{display:flex;gap:24px;width:100%;height:100%;transition:transform .55s cubic-bezier(.2,.8,.2,1)}.expedition-slide{flex:0 0 100%;min-width:0;height:100%}.expedition-card{display:block;width:100%;height:100%;min-height:0;border-color:var(--expedition-accent)}.expedition-number{font-size:13px;letter-spacing:2px}.expedition-number small{font-size:11px}.expedition-caption>.eyebrow{font-size:12px}.expedition-caption>strong{font-size:clamp(40px,4.7vw,68px);color:var(--expedition-ink)}.expedition-description{font-size:15px;max-width:570px;line-height:1.65;color:#e5ead8}.expedition-objective{font-size:12px;letter-spacing:.7px;margin-top:18px}.expedition-objective b{font-size:15px;color:#fff1d2}.expedition-enter{font-size:13px;margin-top:19px}.is-upcoming .expedition-illustration{filter:grayscale(.8);opacity:.7}.is-upcoming .expedition-card{cursor:default;border-color:#afbac370;background:#27313d}.is-upcoming .expedition-caption>strong{color:#d7e0e6}.is-upcoming .expedition-card:hover .expedition-illustration{transform:none}.is-upcoming .expedition-shade{background:linear-gradient(90deg,#1b2837b3,transparent 85%),linear-gradient(0deg,#172432f5,transparent 85%)}.coming-soon{margin-top:22px;font:34px Libre Caslon Display,Georgia,serif;padding:8px 20px;border:1px solid #b9c9d057;color:#d3e0e7}.upcoming-note{font-size:13px;margin-top:12px;color:#b5c4d1}.carousel-controls{display:flex;justify-content:center;align-items:center;gap:30px;flex-shrink:0;padding:2px 0}.carousel-controls>button{width:48px;height:44px;border:1px solid #bdc8b447;font-size:22px;color:var(--expedition-accent)}.carousel-controls>button:disabled{opacity:.3;cursor:default}.carousel-controls>div{min-width:255px;text-align:center}#expedition-page-label{font-size:13px;color:var(--expedition-ink)}.carousel-dots{display:flex;justify-content:center;margin-top:2px}.carousel-dots button{position:relative;width:30px;height:26px}.carousel-dots button:after{content:"";position:absolute;left:9px;top:10px;width:12px;height:3px;background:#b9c8ba55}.carousel-dots button[aria-current=true]:after{background:var(--expedition-accent)}#app{--company-height: 410px}.company-strip{height:84px}.company-drawer{transform:translateY(calc(100% - 84px))}.company-drawer.expanded{transform:translateY(0)}.company-content{height:calc(var(--company-height) - 84px);grid-template-columns:minmax(0,1fr) 370px;gap:22px}.company-expanded .map-tools,.company-expanded .minimap-card{bottom:calc(var(--company-height) + 22px)}.commander-name>.eyebrow{font-size:9px;letter-spacing:.8px}.commander-name h2{font-size:30px}.company-totals strong{font-size:14px}.company-totals>span{font-size:12px}.company-state{font-size:12px}.company-toggle>span{font-size:12px}.company-toggle small{font-size:10px}.regiment-card{flex:0 0 140px;height:240px;max-width:none}.regiment-card{position:relative}.card-passives{display:flex;gap:4px}.card-passives>span{display:inline-flex;width:23px;height:23px;align-items:center;justify-content:center;border:1px solid #d0bf8547;background:#263e30;color:#e3cc94}.card-passives svg{width:17px;height:17px}.regiment-card>.card-passives{position:absolute;left:9px;top:32px}#departure-units .card-passives{position:absolute;right:8px;top:8px}.regiment-name{font-size:24px}.regiment-top strong{font-size:15px}.regiment-top small{font-size:11px}.regiment-hp{font-size:10px}.empty-regiment{flex:0 0 130px;min-height:240px;border:1px dashed #b8c2a429;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;color:#91a68e}.empty-regiment>span{font-size:30px;font-weight:400;color:#819779}.empty-regiment strong{font-size:12px;font-weight:400}.empty-regiment small{font-size:10px}.regiment-detail{padding-left:20px;padding-right:5px}.detail-identity .eyebrow{font-size:10px;letter-spacing:.7px}.detail-identity h3{font-size:30px}.detail-identity div>span:last-child{font-size:12px}.regiment-detail .unit-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.regiment-detail .detail-identity{position:sticky;top:0;z-index:1;background:#1c362f;padding:5px 0 9px;border-bottom:1px solid #b6c49c29}.regiment-detail .unit-stats [data-stat=magic-resistance] dt{min-height:2.8em}.regiment-detail .unit-stats dt{font-size:12px}.regiment-detail .unit-stats dd{font-size:21px}.regiment-detail .ability-list{margin-top:17px}.regiment-detail-health,.region-heading .eyebrow{font-size:11px}.region-heading p,.objective-line{font-size:13px}.objective-line{max-width:320px}.time-controls #clock{font-size:14px}#pause,.tool-button{font-size:12px}.landmark{font-size:10px;letter-spacing:.6px}.landmark-mountain{font-size:9px}.boss-marker{font-size:10px}.minimap-title,.minimap-legend{font-size:11px}.home-resume,.expedition-start>span{font-size:14px}.save-note,.devlog-link{font-size:12px}.devlog-link>span{font-size:11px}.devlog-features .eyebrow{font-size:10px}.devlog-features p,.devlog-save p{font-size:14px}.devlog-dialog footer>span{font-size:12px}.dialog>p,.help-list dt,.help-list dd{font-size:14px}@media(max-height:850px)and (min-width:901px){.launch-menu{top:100px;bottom:18px}.launch-top{margin-bottom:12px}.launch-top h1{font-size:34px}.hero-workshop{min-height:0}.commander-options button{min-height:82px}.commander-options img{height:76px;width:66px}.selection-screen{gap:12px}.selection-detail h2{font-size:36px}.departure-roster .roster-heading strong{margin-top:4px}#departure-units button{height:80px}#departure-units img{height:76px;width:64px}}@media(max-width:1150px){.launch-menu{left:24px;right:24px}.hero-workshop{grid-template-columns:180px minmax(185px,1fr) minmax(320px,350px);gap:15px}.commander-options img{width:55px}.commander-options small{font-size:9px}.commander-options strong{font-size:29px}.selection-detail{padding-left:15px}.company-content{grid-template-columns:minmax(0,1fr) 325px;gap:17px}.company-strip{gap:12px}.company-state,.company-expanded .minimap-card{display:none}.company-totals{padding:0 15px}.regiment-card{flex-basis:128px}}@media(max-width:900px){.launch-menu{top:98px;bottom:18px;left:20px;right:20px}.launch-top h1{font-size:30px}.hero-workshop{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto 320px auto;gap:18px;flex:none}.commander-options{grid-column:1/-1;flex-direction:row;gap:8px}.commander-options button{flex:1;min-width:0;min-height:86px;padding-right:7px}.commander-options strong{font-size:28px}.commander-options small{font-size:9px}.model-stage{grid-column:1;grid-row:2;min-height:300px}.selection-detail{grid-column:2;grid-row:2/4;padding-left:16px;border-left:1px solid #c4cba72b;overflow:visible;max-height:none}.selection-screen{overflow-y:auto;scrollbar-width:thin;padding-right:3px}.departure-roster{padding-top:16px}.hero-workshop:has(.ability-card[open]){min-height:490px}.launch-bottom{position:sticky;bottom:0;z-index:2;background:#18352ff5;padding:12px 0}#departure-units{grid-template-columns:repeat(var(--roster-count,3),minmax(160px,1fr))}.roster-heading>span:last-child{font-size:11px}.expedition-carousel{min-height:470px}.expedition-caption{left:25px;right:25px;bottom:25px}.expedition-number{left:25px}.expedition-caption>strong{font-size:45px}.expedition-objective{flex-direction:column;align-items:flex-start;gap:7px}.company-content{grid-template-columns:minmax(0,1fr) 310px}.company-toggle small,.minimap-card{display:none}}@media(max-width:620px){.launch-menu{left:15px;right:15px;top:86px}.launch-top{align-items:flex-start;gap:10px}.launch-top h1{font-size:27px}.launch-top>.launch-back{font-size:12px;padding:8px 10px;flex-shrink:0}.launch-top .eyebrow{font-size:10px;letter-spacing:.8px}.hero-workshop{grid-template-columns:1fr;grid-template-rows:auto 290px auto}.commander-options button{flex-direction:column;text-align:center;padding:6px;min-height:100px}.commander-options img{width:60px;height:66px}.commander-options small{display:none}.commander-options strong{font-size:27px;margin:0}.commander-options b{right:3px;bottom:3px}.model-stage{grid-column:1;grid-row:2;min-height:280px}.selection-detail{grid-column:1;grid-row:3;border:0;padding:0}.selection-detail h2{font-size:36px}.hero-workshop:has(.ability-card[open]){min-height:0}.hero-detail-tabs button{font-size:13px}.departure-roster .roster-heading{display:block}.departure-roster .roster-heading>span{display:block;margin-top:9px}#departure-units{grid-template-columns:1fr}#departure-units button{height:82px}#departure-units img{height:78px;width:75px}.launch-bottom{position:sticky;bottom:0;z-index:2;background:#18352ff5;padding:12px 0}.launch-bottom>div{display:none}.launch-bottom>.primary{width:100%}.expedition-carousel{min-height:470px}.expedition-description{font-size:14px}.expedition-caption>strong{font-size:39px}.expedition-caption{left:20px;right:20px;bottom:20px}.expedition-number{left:20px;top:22px}.carousel-controls{gap:8px}.carousel-controls>div{min-width:0;flex:1}#expedition-page-label{font-size:11px}.carousel-controls>button{width:43px;flex-shrink:0}#app{--company-height: min(65vh,520px)}.company-content{display:flex;flex-direction:column;overflow-y:auto;gap:12px;padding:0 15px 18px}.regiment-list-wrap{flex-shrink:0}.regiment-card,.empty-regiment{height:170px;min-height:170px;flex-basis:120px}.regiment-portrait{height:78px}.regiment-name{font-size:23px}.regiment-detail{border:0;padding:12px 0 0;overflow:visible;flex-shrink:0}.company-strip{padding:0 13px;gap:9px}.commander-name{min-width:64px}.commander-name>.eyebrow{display:none}.commander-name h2{font-size:26px}.company-totals strong{font-size:12px}.company-totals>span{font-size:11px}.company-toggle{padding:0;width:25px}.company-toggle>span{display:none}.company-pin{display:none}.roster-heading>span:last-child{display:none}.region-heading h1{font-size:27px}.region-heading p{display:none}.objective-line{max-width:180px;font-size:11px}}@media(max-height:650px)and (min-width:901px){.selection-screen{overflow-y:auto}.hero-workshop{min-height:350px;flex-shrink:0}.expedition-carousel{min-height:410px;flex-shrink:0}#app{--company-height: 360px}}@media(prefers-reduced-motion:reduce){.expedition-track,.expedition-atmosphere{transition:none}}@media(min-width:1600px)and (min-height:900px){.launch-menu{--choice-text:clamp(16px,.78vw,22px);--choice-label:clamp(13px,.64vw,18px);top:clamp(120px,9vh,170px);bottom:clamp(28px,3vh,60px)}.launch-top{margin-bottom:clamp(24px,2vh,40px)}.launch-top h1{font-size:clamp(44px,2.5vw,68px)}.launch-menu .eyebrow{font-size:clamp(12px,.6vw,16px)}.launch-back,.launch-bottom>.primary{font-size:var(--choice-text);min-height:54px}.hero-workshop{grid-template-columns:minmax(250px,.65fr) minmax(360px,1.55fr) minmax(420px,1fr);gap:clamp(26px,2vw,64px)}.commander-options{gap:20px}.commander-options button{min-height:clamp(120px,6.5vw,180px)}.commander-options img{width:clamp(90px,5vw,150px);height:clamp(110px,6vw,170px)}.commander-options small{font-size:clamp(11px,.55vw,16px)}.commander-options strong{font-size:clamp(38px,2vw,58px)}.selection-detail{padding-left:clamp(24px,1.7vw,48px)}.selection-detail h2{font-size:clamp(48px,2.7vw,76px)}.selection-detail p{font-size:var(--choice-text);line-height:1.8}.selection-detail blockquote{font-size:clamp(25px,1.25vw,35px)}.hero-detail-tabs button,.hero-playstyle strong,.preview-instruction{font-size:var(--choice-label)}.hero-detail-tabs button{min-height:52px}.selection-detail .unit-stats dt,.selection-detail .stats-explainer{font-size:var(--choice-label)}.selection-detail .unit-stats dd{font-size:clamp(27px,1.35vw,38px)}.selection-detail .unit-stats>div{padding:13px 0}.passive-section h4,.selection-detail .passive-badge summary{font-size:var(--choice-text)}.selection-detail .passive-badge p,.selection-detail .ability-card p,.selection-detail .ability-note,.ability-card dd{font-size:var(--choice-label)}.ability-card summary{font-size:clamp(18px,.95vw,27px);padding:17px}.ability-card summary small,.ability-card dt{font-size:var(--choice-label)}.departure-roster .roster-heading strong{font-size:clamp(19px,.95vw,26px)}.departure-roster .roster-heading strong>span,.departure-roster .roster-heading>span{font-size:var(--choice-label)}#departure-units{grid-template-columns:repeat(var(--roster-count,3),minmax(0,1fr));gap:20px}#departure-units button{height:clamp(110px,6vw,165px)}#departure-units img{height:95%;width:clamp(95px,5.5vw,155px)}#departure-units strong{font-size:clamp(30px,1.5vw,42px)}#departure-units small,#departure-units b,.launch-bottom p{font-size:var(--choice-label)}.expedition-caption{left:clamp(40px,3vw,100px);right:clamp(40px,3vw,100px);bottom:clamp(36px,3vw,80px)}.expedition-caption>strong{font-size:clamp(70px,4vw,118px)}.expedition-description{font-size:clamp(18px,.86vw,25px);max-width:42em}.expedition-objective,.expedition-enter,.expedition-number,.expedition-difficulty>span:first-child,#expedition-page-label{font-size:var(--choice-text)}.expedition-objective b{font-size:clamp(18px,.86vw,25px)}.expedition-number small,.upcoming-note{font-size:var(--choice-label)}.expedition-difficulty{padding:16px 20px}.difficulty-skull{width:clamp(25px,1.25vw,36px);height:clamp(27px,1.4vw,39px)}.carousel-controls>button{width:58px;height:52px}}@media(min-width:2100px)and (min-height:1100px){.main-menu.home-menu{width:620px}.main-menu.home-menu>h1{font-size:132px}.home-motto{font-size:27px}.expedition-start,.home-resume,.devlog-link{width:420px}.expedition-start{height:78px}.expedition-start>span,.home-resume{font-size:18px}.save-note{font-size:15px}.region-heading h1{font-size:54px}.region-heading p,.objective-line{font-size:17px}.objective-line{max-width:440px}.tool-button,#pause{font-size:15px}.company-totals strong,.company-toggle>span{font-size:17px}.company-totals>span,.company-state{font-size:14px}.regiment-detail .unit-stats dt{font-size:15px}.regiment-detail .unit-stats dd{font-size:26px}}.devlog-link{display:flex;align-items:center;gap:17px;width:340px;max-width:100%;margin-top:28px;padding:14px 16px;text-align:left;background:#112d27bd;border:1px solid #ddc78b5c;transition:background .2s,border-color .2s}.devlog-link:hover{background:#2b4736;border-color:#edcf8f}.devlog-link .release-version{margin:0;display:grid;gap:3px;padding-right:17px;border-right:1px solid #dcc18459;color:#ffe2a2}.release-version small{font-size:10px;letter-spacing:1.5px}.release-version strong{font-size:26px;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.3px}.devlog-link .release-link-copy{display:grid;gap:5px;margin:0;color:#eee2c3}.release-link-copy b{font-size:15px;font-weight:500}.release-link-copy small{font-size:11px;line-height:1.5;color:#becdb5;letter-spacing:0}.devlog-link .release-link-arrow{font-size:23px;margin:0 0 0 auto}.dialog.devlog-dialog{width:min(1040px,calc(100vw - 40px));height:min(1080px,calc(100dvh - 64px));max-height:calc(100dvh - 32px);max-width:none;padding:0;overflow:hidden;background:#1b302a}.dialog.devlog-dialog[open]{display:flex;flex-direction:column;animation:devlog-appear .25s ease-out}@keyframes devlog-appear{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.devlog-toolbar{flex-shrink:0;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 26px;border-bottom:1px solid #d6bc8133;background:#162a25}.devlog-toolbar .eyebrow{font-size:10px;color:#a6b99f;letter-spacing:1.6px}.devlog-toolbar strong{display:block;margin-top:5px;font-size:16px;font-weight:500}.devlog-toolbar strong span{margin-left:12px;color:#f3d591;font-weight:700}.devlog-toolbar button{font-size:29px;width:44px;height:44px;flex-shrink:0}.devlog-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#b4a477 #1b302a}.devlog-scroll:focus-visible{outline:2px solid #dfc58d;outline-offset:-3px}.devlog-article figure{margin:0}.devlog-cover{position:relative;background:#628b6e}.devlog-cover img{display:block;width:100%;aspect-ratio:2.65;object-fit:cover;object-position:center 45%}.devlog-cover figcaption{position:absolute;inset:auto 0 0;padding:35px 36px 19px;background:linear-gradient(transparent,#142c28e6);color:#fff0c4;font-size:15px;font-weight:600;letter-spacing:1.2px}.devlog-cover figcaption span{display:block;font-size:10px;font-weight:400;margin-top:6px;letter-spacing:2px;color:#d1d7ba}.devlog-body{padding:34px clamp(22px,4vw,64px) 32px}.devlog-version{display:inline-flex;align-items:center;gap:15px;color:#d7c390;font-size:11px;letter-spacing:1.3px;border:1px solid #cfb47555;padding:7px 13px;background:#d6b9690a}.devlog-version b{font-size:23px;letter-spacing:.3px;color:#ffe1a0}.devlog-dialog .devlog-heading h2{font-size:clamp(34px,3vw,52px);margin:18px 0 15px;line-height:1.12}.devlog-heading p,.devlog-section p,.devlog-section li,.devlog-next p{color:#cbd6c1;font-size:16px;line-height:1.85}.devlog-section{margin-top:36px;padding-top:32px;border-top:1px solid #bdcba333}.devlog-section-number{color:#d7bd82;font-size:11px;letter-spacing:1.5px}.devlog-section h3,.devlog-next h3{font:400 34px/1.2 Libre Caslon Display,Georgia,serif;color:#f2e4c0;margin:10px 0 15px}.devlog-section ul{padding-left:21px;margin:16px 0 0}.devlog-section li{margin-top:9px;padding-left:5px}.devlog-section li::marker{color:#d5b976}.devlog-section li strong{color:#efdfb9;font-weight:600}.devlog-hero-lineup{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:24px 0;padding:8px 0 23px;border-bottom:1px solid #bdcba326;background:radial-gradient(ellipse at 50% 38%,#84956523,transparent 70%)}.devlog-hero-lineup figure{text-align:center;min-width:0}.devlog-hero-lineup img{display:block;width:100%;height:230px;object-fit:contain}.devlog-hero-lineup strong{display:block;font:32px Libre Caslon Display,Georgia,serif;color:#f6dfac;margin:9px 0}.devlog-hero-lineup figcaption span{display:block;font-size:14px;line-height:1.65;color:#bbccb0;max-width:230px;margin:auto}.devlog-article .devlog-story-art{margin-top:24px}.devlog-story-art svg{display:block;width:100%;height:auto;aspect-ratio:1536/317;background:#e7dbbf}.devlog-story-art figcaption{font-size:12px;line-height:1.6;color:#aabc9f;margin-top:10px}.devlog-next{margin-top:36px;padding:22px 25px;background:#b7a3730d;border-left:2px solid #d4b878}.devlog-next .eyebrow{color:#d7bd82}.devlog-next h3{font-size:29px}.devlog-end{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:32px;padding-top:26px;border-top:1px solid #bdcba333}.devlog-end>span{max-width:300px;font-size:13px;color:#aabc9f;line-height:1.7}.devlog-end>.primary{width:220px;flex-shrink:0;font-size:14px}@media(min-width:2100px){.dialog.devlog-dialog{width:min(1200px,70vw);height:calc(100dvh - 120px)}.devlog-body{padding:44px 72px}.devlog-heading p,.devlog-section p,.devlog-section li,.devlog-next p,.devlog-toolbar strong{font-size:19px}.devlog-hero-lineup img{height:280px}.devlog-hero-lineup figcaption span{font-size:17px}.devlog-section h3{font-size:40px}}@media(max-width:620px){.dialog.devlog-dialog{width:calc(100vw - 20px);height:calc(100dvh - 24px);max-height:calc(100dvh - 24px)}.devlog-toolbar{padding:12px 15px;gap:8px}.devlog-toolbar strong{font-size:14px}.devlog-toolbar strong span{margin-left:5px}.devlog-cover img{aspect-ratio:1.65}.devlog-cover figcaption{padding:30px 20px 15px;font-size:13px}.devlog-body{padding:24px 20px}.devlog-section{margin-top:26px;padding-top:24px}.devlog-section h3{font-size:30px}.devlog-heading p,.devlog-section p,.devlog-section li,.devlog-next p{font-size:15px}.devlog-hero-lineup{grid-template-columns:1fr;gap:20px}.devlog-hero-lineup figure{display:grid;grid-template-columns:105px 1fr;align-items:center;gap:14px;text-align:left}.devlog-hero-lineup img{height:145px}.devlog-hero-lineup strong{font-size:30px}.devlog-hero-lineup figcaption span{font-size:14px;max-width:none}.devlog-end{flex-direction:column;align-items:stretch}.devlog-end>.primary{width:100%}.devlog-next{padding:19px}.devlog-link{margin-top:22px}}@media(max-height:740px){.devlog-link{margin-top:16px;padding:10px 14px}.release-version strong{font-size:23px}}@media(prefers-reduced-motion:reduce){.dialog.devlog-dialog[open]{animation:none}.devlog-link{transition:none}}@media(min-width:2100px)and (min-height:1100px){.devlog-link{width:420px;padding:18px 20px;gap:20px}.release-version strong{font-size:34px}.release-version small{font-size:12px}.release-link-copy b{font-size:18px}.release-link-copy small{font-size:14px}}.devlog-index{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}.devlog-index a{padding:8px 10px;border:1px solid #cbb57966;color:#edcf8f;font-size:11px;text-decoration:none;letter-spacing:.6px}.devlog-index a:hover,.devlog-index a:focus-visible{background:#cfb06d22;outline:1px solid #f3d393}.devlog-section h3{scroll-margin-top:20px}.devlog-version-nav{display:flex;align-items:center;gap:18px;padding:12px 26px;background:#20382e;border-bottom:1px solid #d6bc8155;flex-shrink:0}.devlog-version-nav label{font-size:13px;color:#d6c79e}.devlog-version-nav select{min-width:220px;max-width:100%;padding:10px 14px;color:#ffe1a0;background:#142a23;border:1px solid #cbb57999;font:inherit;font-size:14px;cursor:pointer}.devlog-version-nav select:focus-visible{outline:2px solid #ffe1a0;outline-offset:3px}@media(max-width:620px){.devlog-version-nav{padding:12px 15px;gap:8px;flex-wrap:wrap}.devlog-version-nav select{width:100%;min-width:0}}:root{--departure-card-width:240px;--departure-card-height:92px;--departure-portrait-width:72px;--departure-name-size:25px;--departure-count-size:13px;--company-card-width:140px;--company-card-height:240px}#departure-units{display:flex;gap:12px;align-items:stretch;min-width:0;max-width:100%;overflow-x:auto;padding:4px 2px 10px;scrollbar-width:thin;scrollbar-color:#b6a578 #203b30;overscroll-behavior-x:contain}#departure-units>button{flex:0 0 var(--departure-card-width);width:var(--departure-card-width);min-width:var(--departure-card-width);max-width:var(--departure-card-width);height:var(--departure-card-height)}#departure-units>button>img{flex-shrink:0;width:var(--departure-portrait-width);height:calc(var(--departure-card-height) - 4px);object-fit:contain}#departure-units>button>span{min-width:0}#departure-units strong{font-size:var(--departure-name-size)}#departure-units small,#departure-units b{font-size:var(--departure-count-size)}.regiment-list-wrap{min-width:0}#regiment-list>.regiment-card,#regiment-list>.empty-regiment{flex:0 0 var(--company-card-width);width:var(--company-card-width);min-width:var(--company-card-width);max-width:var(--company-card-width);height:var(--company-card-height);min-height:var(--company-card-height)}#launch-menu[data-step=hero]{--workshop-height:360px;--hero-choice-height:96px}#launch-menu[data-step=hero] .launch-top>div{min-width:0}#launch-menu[data-step=hero] .selection-screen{overflow-y:auto;min-width:0;scrollbar-width:thin;padding-right:6px}#launch-menu[data-step=hero] .hero-workshop{flex:1 0 var(--workshop-height);min-height:var(--workshop-height);grid-template-rows:minmax(0,1fr);min-width:0}#launch-menu[data-step=hero] .hero-workshop>*{min-width:0}#launch-menu[data-step=hero] .commander-options{gap:12px;min-height:0}#launch-menu[data-step=hero] .commander-options>button{flex:0 0 var(--hero-choice-height);height:var(--hero-choice-height);min-height:var(--hero-choice-height)}#launch-menu[data-step=hero] .commander-options img{max-height:calc(var(--hero-choice-height) - 8px)}#launch-menu[data-step=hero] .model-stage{min-height:0;overflow:hidden}#launch-menu[data-step=hero] .selection-detail{min-height:0;overflow-y:auto}#launch-menu[data-step=hero] .departure-roster{min-width:0;flex:0 0 auto}#launch-menu[data-step=hero] .launch-bottom{flex:0 0 auto}@media(min-width:1600px)and (min-height:900px){:root{--departure-card-width:280px;--departure-card-height:106px;--departure-portrait-width:86px;--departure-name-size:28px;--departure-count-size:14px;--company-card-width:160px}#launch-menu[data-step=hero]{--workshop-height:420px;--hero-choice-height:120px}}@media(min-width:2100px)and (min-height:1100px){:root{--departure-card-width:320px;--departure-card-height:120px;--departure-portrait-width:98px;--departure-name-size:30px;--departure-count-size:16px;--company-card-width:180px}#launch-menu[data-step=hero]{--workshop-height:520px;--hero-choice-height:152px}}@media(max-width:1150px){:root{--departure-card-width:220px;--company-card-width:128px}}@media(min-width:901px)and (max-height:800px){#launch-menu[data-step=hero]{--workshop-height:310px;--hero-choice-height:88px}}@media(max-width:900px){#launch-menu[data-step=hero] .hero-workshop{flex:0 0 auto;min-height:0;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto minmax(360px,auto)}#launch-menu[data-step=hero] .commander-options{grid-column:1/-1;grid-row:1}#launch-menu[data-step=hero] .commander-options>button{flex:1 1 0;height:96px;min-height:96px}#launch-menu[data-step=hero] .model-stage{grid-column:1;grid-row:2;min-height:360px}#launch-menu[data-step=hero] .selection-detail{grid-column:2;grid-row:2;max-height:none;overflow:visible}}@media(max-width:620px){:root{--departure-card-width:220px;--departure-card-height:88px;--departure-portrait-width:70px;--departure-name-size:25px;--company-card-width:120px;--company-card-height:170px}#launch-menu[data-step=hero] .hero-workshop{grid-template-columns:minmax(0,1fr);grid-template-rows:auto 290px auto}#launch-menu[data-step=hero] .commander-options>button{height:110px;min-height:110px}#launch-menu[data-step=hero] .model-stage{grid-column:1;grid-row:2;min-height:0}#launch-menu[data-step=hero] .selection-detail{grid-column:1;grid-row:3}}.expedition-management{position:static;width:max-content;margin-top:16px;display:flex;align-items:center;gap:8px;pointer-events:auto;padding:8px;background:#17372eef;border:1px solid #cfb97644;color:#e5d8b8;text-shadow:none}.expedition-management button,.management-dialog button,.company-manage-button{background:#24473a;color:#eee1bd;border:1px solid #c7b16d66;padding:10px 14px;cursor:pointer;font:600 14px DM Sans,sans-serif}.expedition-management button:hover,.management-dialog button:not(:disabled):hover,.company-manage-button:hover{background:#3d5c44;border-color:#dec17d}.expedition-management button span{font-size:12px;display:block;color:#d8ba75}.gold-balance{display:flex;gap:8px;align-items:center;color:#efcf81;font-size:20px;white-space:nowrap}.gold-balance small{font-size:14px}.gold-balance i{font-style:normal}.management-dialog{padding:0;width:min(1280px,94vw);max-width:none;max-height:92dvh;border:1px solid #bca76b;background:#15362e;color:#ece1c5;box-shadow:0 24px 100px #0009;overflow:hidden}.management-dialog[open]{display:flex;flex-direction:column}.management-dialog::backdrop{background:#071811bb;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.management-header{display:flex;gap:18px;align-items:center;padding:14px 26px;border-bottom:1px solid #adbd9733;flex-shrink:0}.management-header img{width:64px;height:86px;object-fit:contain}.management-header h2{font:42px Libre Caslon Display,serif;margin:2px 0}.management-header>button{margin-left:auto;font-size:28px;padding:0 12px}.management-header .eyebrow{font-size:12px}.management-tabs{display:flex;gap:10px;align-items:center;padding:12px 26px;flex-shrink:0}.management-tabs button[aria-pressed=true]{color:#162c24;background:#e0c48a}.management-tabs .gold-balance{margin-left:auto}.management-scroll{overflow-y:auto;overscroll-behavior:contain;padding:8px 26px 24px;min-height:0}.management-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 26px;border-top:1px solid #adbd9733;font-size:14px;flex-shrink:0}.hero-progress-summary{display:grid;grid-template-columns:minmax(180px,1fr) 150px minmax(200px,1.5fr);gap:24px;align-items:center;margin:8px 0 22px}.hero-progress-summary p,.recruit-intro p{font-size:15px;line-height:1.6;color:#b9c8af}.talent-points{font-size:36px;text-align:center;color:#efcf81}.talent-points span{display:block;font-size:13px}.xp-block{margin:10px 0;font-size:13px}.xp-block>div{display:flex;justify-content:space-between;gap:8px;margin-bottom:7px}.xp-block progress{width:100%;height:6px;display:block;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:#071b16}.xp-block progress::-webkit-progress-bar{background:#071b16}.xp-block progress::-webkit-progress-value{background:#d3b770}.xp-block progress::-moz-progress-bar{background:#d3b770}.talent-branches{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.talent-branch{min-width:0;border-top:3px solid var(--branch-color);background:#1e4036}.talent-branch>header{padding:18px;min-height:150px}.talent-branch>header svg{width:26px;height:26px;color:var(--branch-color)}.talent-branch h3{font:30px Libre Caslon Display,serif;margin:5px 0}.talent-branch header p{font-size:14px;line-height:1.45;color:#bfd0b8;margin:0}.talent-node{margin:0 12px 10px;background:#102e27;border:1px solid #78937944;position:relative}.talent-node summary{list-style:none;display:flex;gap:10px;align-items:center;padding:12px;cursor:pointer}.talent-node summary::-webkit-details-marker{display:none}.talent-node summary strong{display:block;font-size:15px}.talent-node summary small{font-size:12px;display:block;margin-top:4px;color:#b7c2ac}.talent-node summary b{margin-left:auto}.talent-tier{display:grid;place-items:center;border:1px solid #a4b19766;width:26px;height:30px;flex-shrink:0;font-size:14px}.talent-node.available{border-color:#dbbe79}.talent-node.available small{color:#eed68f}.talent-node.owned{background:#36533b;border-color:#a0c189}.talent-node.locked summary{color:#a6b4a7}.talent-effects{padding:0 14px 14px;font-size:14px;line-height:1.6}.talent-effects p{margin:0 0 10px}.talent-effects>small{display:block;color:#b6c3aa}.talent-effects button{margin-top:12px;width:100%}.management-dialog button:disabled{cursor:default;opacity:.5}.effective-hero{margin-top:24px;padding:16px;background:#1c3c32}.effective-hero>summary{cursor:pointer;font-size:17px}.rank-badge{display:inline-flex;gap:5px;align-items:center;color:#ddc182;font-size:11px;line-height:1.2}.rank-badge svg{width:19px;height:22px;flex-shrink:0}.regiment-card>.rank-badge{justify-content:center}.regiment-card .regiment-portrait{flex-shrink:1;min-height:45px}.regiment-card .regiment-hp{font-variant-numeric:tabular-nums}.company-manage-button{width:100%;margin-top:14px}.company-manage-button.danger-action{color:#e7af99;border-color:#b8766244}.xp-total{display:block;margin-top:5px;color:#b4c4aa;font-size:11px}.recruit-intro h3{font:32px Libre Caslon Display,serif;margin:10px 0}.recruit-catalog{display:flex;gap:16px;flex-wrap:wrap;margin-top:20px;align-items:flex-start}.recruit-card{flex:0 0 270px;width:270px;background:#204237;border:1px solid #bdc29c33;padding:20px}.recruit-card>img{height:130px;width:100%;object-fit:contain}.recruit-card h3{font:32px Libre Caslon Display,serif;margin:4px 0}.recruit-card>p{font-size:14px;min-height:40px;color:#bdcbae}.recruit-card>details{margin:14px 0;font-size:14px}.recruit-card>details>summary{cursor:pointer}.recruit-card>button{width:100%}.recruit-card .unit-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.dismiss-dialog{width:min(590px,94vw);overflow-y:auto}.dismiss-copy{padding:15px 28px 28px;text-align:center}.dismiss-unit-portrait{position:relative;display:inline-block}.dismiss-unit-portrait>img{height:100px}.dismiss-unit-portrait>.rank-insignia{position:absolute;left:-8px;top:0}.dismiss-copy h3{font:34px Libre Caslon Display,serif;margin:0}.dismiss-copy p{line-height:1.6;font-size:15px}.management-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.management-dialog .danger-action{background:#6b342d;border-color:#c98870}@media(min-width:2100px)and (min-height:1100px){.management-dialog{width:1600px}.management-header h2{font-size:50px}.talent-node summary strong{font-size:18px}.talent-node summary small,.talent-effects,.talent-branch header p{font-size:16px}.talent-node summary{padding:16px}.expedition-management{top:205px;left:48px}.expedition-management button{font-size:16px}.rank-badge{font-size:13px}.recruit-card{flex-basis:310px;width:310px}}@media(max-width:900px){.talent-branches{gap:10px}.management-scroll{padding:8px 16px 18px}.talent-branch>header{padding:12px;min-height:165px}.talent-node{margin:0 6px 8px}.talent-node summary{padding:9px;gap:7px}.talent-branch h3{font-size:25px}.hero-progress-summary{grid-template-columns:1fr 130px}.hero-progress-summary p{grid-column:1/-1;margin:0}.expedition-management{left:20px;top:160px}.management-header h2{font-size:32px}}@media(max-width:620px){.talent-branches{grid-template-columns:1fr}.talent-branch>header{min-height:0}.management-header{padding:10px 16px;gap:6px}.management-header img{width:42px;height:62px}.management-header h2{font-size:27px}.management-tabs{padding:10px;flex-wrap:wrap;gap:6px}.management-tabs button{padding:8px;font-size:12px}.management-tabs .gold-balance{font-size:16px}.management-header .eyebrow{font-size:9px}.management-footer{padding:10px;font-size:12px}.management-footer button{font-size:12px;padding:8px}.expedition-management{left:12px;top:155px;padding:5px;gap:5px}.expedition-management button{font-size:12px;padding:7px}.expedition-management .gold-balance{font-size:16px}.recruit-catalog{justify-content:center}.rank-badge{font-size:10px}.regiment-card>.rank-badge svg{height:16px;width:16px}}.recruit-stock{display:block;width:max-content;margin:2px 0 9px;padding:5px 8px;border:1px solid #c7b16d55;background:#142f27;color:#c9d4b8;font-size:11px}.recruit-stock b{color:#f0cf84;font-size:14px}.recruit-card.sold-out{filter:saturate(.45);opacity:.72}.combine-rule{padding:10px 12px;border-left:2px solid #d7bd79;background:#102e27;color:#bbc9b2}.combine-candidates{display:grid;gap:8px;margin:16px 0;text-align:left}.management-dialog .combine-candidates>button{display:grid;grid-template-columns:58px 34px 1fr auto;align-items:center;gap:10px;padding:8px 12px}.combine-candidates img{width:58px;height:64px;object-fit:contain}.combine-candidates span{display:flex;flex-direction:column;gap:4px}.combine-candidates small{color:#b8c7af}.combine-candidates>button>b{font-size:12px;color:#efd18b}.talent-medallion{position:relative}.talent-kind{position:absolute;right:1px;top:1px;display:grid;place-items:center;width:23px;height:23px;border:1px solid #e5c477;border-radius:5px;background:#244336;color:#ffe8a4;box-shadow:0 2px 5px #0008;z-index:2}.talent-kind svg{width:17px;height:17px}.talent-kind.spell{background:#342d55;border-color:#c7b4f1;color:#e2d1ff}.talent-medallion.locked .talent-kind{opacity:.85}.map-management{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}#app:not(.in-menu) .compass-rose{top:240px}.map-resource-ledger{position:absolute;right:40px;top:125px;display:flex;gap:1px;background:#c6b87866;box-shadow:0 8px 28px #15372c22;pointer-events:auto}.map-resource-ledger>div{display:flex;align-items:center;gap:12px;padding:14px 18px;background:#17362ef5;color:#ebcf8a;min-width:120px}.map-resource-ledger>div>span{font-size:34px}.map-resource-ledger small{display:block;font-size:10px;font-weight:700;letter-spacing:1.3px}.map-resource-ledger strong{font-size:27px;font-variant-numeric:tabular-nums}.map-resource-ledger em{font-size:12px;font-style:normal;margin-left:8px;color:#c1cdb3}.map-resource-ledger .ledger-magic{color:#a3d9da}.ledger-magic em{display:block!important;margin:0}.map-hero-panel{position:absolute;left:40px;top:285px;display:flex;align-items:center;gap:14px;padding:12px 18px 12px 10px;color:#efe0bb;background:linear-gradient(130deg,#25483df5,#102e27f5);border:1px solid #b9a57299;cursor:pointer;text-align:left;pointer-events:auto;box-shadow:0 8px 25px #15352b33;transition:border-color .2s,background .2s}.map-hero-panel:hover{border-color:#f0d799;background:#31513e}.portrait-xp{position:relative;height:104px;width:6px;border:1px solid #d1b57366;background:#081c18;align-self:center;flex-shrink:0}.portrait-xp i{position:absolute;bottom:0;width:100%;background:linear-gradient(#f8dda0,#b99e62);box-shadow:0 0 8px #d7b96777;transition:height .3s}.map-hero-face{width:82px;height:102px;position:relative;display:block;overflow:hidden;background:radial-gradient(ellipse at bottom,#bdb78833,transparent);border-bottom:1px solid #b5a770}.map-hero-face img{position:absolute;width:185px;height:218px;max-width:none;object-fit:contain;left:50%;top:-5px;transform:translate(-50%)}.map-hero-face b{position:absolute;bottom:0;right:0;display:grid;place-items:center;background:#d4bd81;color:#1c362a;border:2px solid #294137;border-radius:50%;width:27px;height:27px;font-size:14px}.map-hero-copy{display:flex;flex-direction:column;min-width:125px}.map-hero-copy>strong{font:32px Libre Caslon Display,serif}.map-hero-copy>small{font-size:12px;color:#c3d5b6;margin-top:5px}.map-hero-copy>em{font-size:12px;color:#dfc584;font-style:normal;margin-top:12px}.hero-health-track{display:block;height:5px;background:#0a201c;width:100%;margin-top:8px}.hero-health-track i{display:block;height:100%;background:linear-gradient(90deg,#6eab76,#b6d593)}.site-markers{position:absolute;top:0;right:0;bottom:0;left:0}.recruitment-marker{position:absolute;left:0;top:0;display:grid;grid-template-columns:24px 1fr;column-gap:8px;padding:8px 13px;background:#183c31ed;color:#eee0b9;border:1px solid #d6bf78aa;pointer-events:auto;cursor:pointer;text-align:left;box-shadow:0 5px 16px #132d2244}.recruitment-marker>span{grid-row:1/3;font-size:27px;align-self:center}.recruitment-marker strong{font-size:14px}.recruitment-marker small{font-size:11px;color:#c7d7b7}.recruitment-marker:hover{background:#355442;border-color:#ffe3a1}.recruitment-marker.available{border-color:#f0cd7c;box-shadow:0 0 0 2px #f0cd7c22,0 5px 16px #132d2244}.recruitment-marker.available small{color:#f1d38d}.rank-insignia{width:25px;height:29px;display:inline-flex!important;align-items:center;justify-content:center;border:1px solid #cbb47455;background:#19372e;color:#e5c77f}.rank-insignia>span{display:none}.rank-insignia svg{width:22px;height:25px}.regiment-top>.rank-insignia{margin-top:-3px}.regiment-card>.rank-badge{display:none}.regiment-card>.card-passives{top:46px}.regiment-top{align-items:center}.regiment-card .regiment-portrait{flex-grow:1}.detail-identity{position:relative}.detail-insignia{position:absolute;top:0;left:40px}.company-strip>.commander-portrait,.company-strip>.commander-name{display:none}.company-strip>.company-totals{border-left:0;padding-left:0}#departure-units>button>.rank-insignia{position:absolute;bottom:8px;right:8px;width:23px;height:26px}.recruit-card{position:relative}.recruit-card>.rank-insignia{position:absolute;top:12px;left:12px}.management-location{display:flex;align-items:center;justify-content:space-between;padding:8px 26px;font-size:11px;letter-spacing:1.4px;color:#bacbad;flex-shrink:0}.management-location .gold-balance{font-size:18px;letter-spacing:0}.talents-dialog{width:min(1880px,96vw);max-height:94dvh}.talents-dialog .management-header{padding:10px 24px}.talents-dialog .management-header img{height:50px;width:44px}.talents-dialog .management-header h2{font-size:34px}.talents-dialog .management-scroll{padding:10px 22px 18px}.talents-dialog .management-footer{padding:8px 24px}.hero-sheet{display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px}.hero-sheet-stats{border-right:1px solid #c0b77844;padding-right:20px;min-width:0}.sheet-portrait{height:125px;background:radial-gradient(ellipse at bottom,#c4bd8333,transparent);text-align:center}.sheet-portrait img{height:100%;object-fit:contain}.hero-sheet-stats>h3{font:32px Libre Caslon Display,serif;margin:5px 0}.hero-sheet-stats .unit-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:14px 0}.hero-sheet-stats .unit-stats dt{font-size:11px}.hero-sheet-stats .unit-stats dd{font-size:20px}.sheet-health{border-bottom:4px solid #8ab27c;padding:5px 0;font-size:13px;color:#c8dcba}.hero-sheet-stats>details>summary{cursor:pointer;font-size:14px}.hero-sheet-tree{min-width:0}.tree-intro{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px}.tree-intro p{font-size:14px;color:#bbcab0;line-height:1.5;margin-top:6px}.tree-intro>strong{font-size:32px;color:#e8c882;text-align:center;flex-shrink:0}.tree-intro small{display:block;font-size:11px}.tree-scroll{overflow-x:auto;scrollbar-color:#b49b62 #123027;scrollbar-width:thin;overscroll-behavior:contain;padding:6px 0 12px}.tree-board{min-width:1360px}.talent-lane{display:grid;grid-template-columns:152px 1fr;gap:18px;align-items:center;padding:14px 0;border-top:1px solid #b3b59233;min-height:145px}.talent-lane>header{padding-right:8px}.talent-lane>header>svg{width:21px;height:21px;color:var(--branch-color)}.talent-lane h3{font:25px Libre Caslon Display,serif;margin:4px 0;color:var(--branch-color)}.talent-lane header p{font-size:11px;line-height:1.5;color:#b4c6ab}.talent-line{display:flex;gap:22px;align-items:stretch}.management-dialog .talent-medallion{position:relative;display:flex;flex-direction:column;align-items:center;flex:0 0 110px;width:110px;gap:6px;padding:0 3px;background:none;border:0;color:#d6dac7;font:inherit}.talent-medallion:not(:last-child):after{content:"›";position:absolute;left:calc(100% + 2px);top:20px;width:22px;color:#849780;font-size:23px;line-height:10px;border-top:1px solid #78937966;text-align:right}.talent-orb{width:54px;height:54px;display:grid;place-items:center;border:2px solid #789183;border-radius:50%;background:radial-gradient(circle at 35% 28%,#49625a,#172a25 75%);position:relative;box-shadow:inset 0 0 0 3px #122a22,0 3px 7px #07171266;color:#aebcae}.talent-orb>svg{width:29px;height:29px}.talent-orb>b{position:absolute;bottom:-4px;right:-5px;width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:#162d25;border:1px solid #829784;font-size:14px}.talent-medallion>strong{font:600 12px/1.3 DM Sans,sans-serif;text-align:center;min-height:30px}.talent-medallion>small{font-size:10px;color:#a1b39c}.management-dialog .talent-medallion:hover{background:none}.talent-medallion:hover .talent-orb,.talent-medallion[aria-pressed=true] .talent-orb{outline:2px solid #eddaad;outline-offset:3px}.talent-medallion.available .talent-orb{border-color:#e3bc6c;color:#ffe8b6;background:radial-gradient(circle at 35% 28%,#77693e,#273728 75%)}.talent-medallion.owned .talent-orb{color:var(--branch-color);border-color:var(--branch-color);box-shadow:0 0 12px color-mix(in srgb,var(--branch-color) 25%,transparent)}.talent-medallion.owned:after{color:var(--branch-color);border-color:var(--branch-color)}.talent-medallion.locked>strong{color:#a6b6a5}.tree-scroll-hint{font-size:11px;letter-spacing:.4px;color:#b6c7ad;text-align:right;margin:2px 0 14px}.selected-talent{display:flex;gap:18px;align-items:center;padding:18px;border:1px solid #c5b47755;background:linear-gradient(120deg,#304c38,#17362e)}.selected-symbol{width:52px;height:52px;flex-shrink:0;color:#ddc98e}.selected-symbol svg{width:100%;height:100%}.selected-talent>div:nth-child(2){flex:1;min-width:0}.selected-talent h3{font:29px Libre Caslon Display,serif;margin:3px 0 8px}.selected-talent p{font-size:14px;line-height:1.5;margin:5px 0}.selected-talent small{font-size:11px;color:#b9cbae}.selected-talent>button{flex-shrink:0}.selected-talent .eyebrow{font-size:10px}@media(min-width:2100px)and (min-height:1100px){.map-resource-ledger{right:48px;top:150px}.map-resource-ledger small{font-size:12px}.map-resource-ledger strong{font-size:32px}.map-hero-panel{left:48px;top:340px;transform:scale(1.15);transform-origin:top left}.talents-dialog{width:2200px}.hero-sheet{grid-template-columns:260px 1fr}.talent-line{gap:26px}.management-dialog .talent-medallion{flex-basis:132px;width:132px}.talent-medallion>strong{font-size:15px;min-height:40px}.talent-orb{width:64px;height:64px}.talent-medallion>small,.talent-lane header p{font-size:13px}.talent-lane{min-height:175px}.tree-board{min-width:1590px}.talent-medallion:not(:last-child):after{width:26px}.selected-talent p{font-size:16px}}@media(max-width:1150px){.map-resource-ledger{right:24px;top:110px;flex-direction:column}.map-resource-ledger>div{padding:10px 14px}.map-resource-ledger strong{font-size:23px}.map-hero-panel{left:24px;top:275px;gap:8px;padding:8px}.map-hero-face{width:65px;height:85px}.map-hero-copy{min-width:100px}.map-hero-copy>strong{font-size:27px}.portrait-xp{height:87px}.hero-sheet{grid-template-columns:180px 1fr;gap:16px}.hero-sheet-stats{padding-right:12px}.talents-dialog .management-scroll{padding:10px 16px}}@media(max-width:700px){.map-resource-ledger{top:92px;right:12px}.map-resource-ledger>div{padding:7px 10px;gap:6px;min-width:92px}.map-resource-ledger small{font-size:8px;letter-spacing:.5px}.map-resource-ledger>div>span{font-size:22px}.map-resource-ledger strong{font-size:22px}.map-resource-ledger em{font-size:10px}.ledger-magic em{max-width:90px}.map-hero-panel{top:280px;left:12px}.hero-sheet{grid-template-columns:1fr}.hero-sheet-stats{border-right:0;border-bottom:1px solid #b5aa7244;display:grid;grid-template-columns:85px 1fr;gap:8px;padding:0 0 10px}.sheet-portrait{grid-row:1/4;height:100px}.hero-sheet-stats>h3{font-size:27px}.hero-sheet-stats .unit-stats,.hero-sheet-stats>details{grid-column:1/-1}.hero-sheet-stats .unit-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.hero-sheet-stats .unit-stats dt{font-size:10px}.hero-sheet-stats .unit-stats dd{font-size:17px}.tree-intro .eyebrow{font-size:10px}.tree-intro p{font-size:12px}.selected-talent{flex-wrap:wrap;padding:12px;gap:10px}.selected-talent>button{margin-left:auto}.selected-symbol{width:34px;height:34px}.selected-talent p{font-size:13px}.management-location{font-size:9px;padding:8px 16px;gap:10px}.talents-dialog .management-header h2{font-size:28px}.talents-dialog .management-header{padding:10px 16px}.talents-dialog .management-footer{padding:8px 12px}.recruitment-marker{padding:5px 8px}.recruitment-marker strong{font-size:12px}.recruitment-marker small{font-size:10px}}@media(prefers-reduced-motion:reduce){.map-hero-panel,.portrait-xp i{transition:none}}.map-hero-panel{transition:border-color .18s,box-shadow .18s;isolation:isolate;contain:paint;backface-visibility:hidden}.map-hero-panel:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:linear-gradient(130deg,#355947,#17372f);opacity:0;pointer-events:none;transition:opacity .18s}.map-hero-panel:hover{background:linear-gradient(130deg,#25483df5,#102e27f5);box-shadow:0 8px 25px #15352b33,0 0 0 2px #efd48b1d}.map-hero-panel:hover:after{opacity:1}.map-hero-panel img{backface-visibility:hidden}.rank-insignia{position:relative;width:32px;height:34px;display:inline-grid!important;place-items:center;flex:0 0 32px;border:0;background:none;color:#e5c77f}.rank-insignia svg{width:32px;height:34px;filter:drop-shadow(0 2px 2px #07171288)}.rank-insignia .rank-shield{fill:#19372e;stroke:#bda96e}.rank-insignia>b{position:absolute;right:-3px;bottom:-2px;width:15px;height:15px;display:grid;place-items:center;border-radius:50%;background:#d8bd7c;color:#173027;border:1px solid #f0d89b;font:700 9px DM Sans,sans-serif}.rank-insignia.rank-4,.rank-insignia.rank-5{color:#f0ce77}.regiment-top{min-height:34px}.regiment-card>.card-passives{top:50px}.talent-line{gap:0;align-items:flex-start}.talent-medallion:after{content:none!important}.talent-connector{flex:0 0 22px;width:22px;height:16px;margin-top:20px;color:#789183;opacity:.62}.talent-connector svg{display:block;width:100%;height:100%;overflow:visible;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.talent-connector.owned{color:var(--branch-color);opacity:1;filter:drop-shadow(0 0 4px color-mix(in srgb,var(--branch-color) 35%,transparent))}@media(min-width:2100px)and (min-height:1100px){.talent-line{gap:0}.talent-connector{width:26px;flex-basis:26px;margin-top:25px}}@media(prefers-reduced-motion:reduce){.map-hero-panel:after{transition:none}}:root{--cursor-default:url(/ui/cursor-default.svg) 3 2,default;--cursor-action:url(/ui/cursor-action.svg) 10 2,pointer;--cursor-waypoint:url(/ui/cursor-waypoint.svg) 16 16,crosshair;--cursor-drag:url(/ui/cursor-drag.svg) 16 16,grabbing;--cursor-pressed:url(/ui/cursor-pressed.svg) 10 2,pointer;--ui-gold:#dfc47f;--ui-gold-soft:#dfc47f38;--ui-ink:#102a23}html,body,#app,dialog,dialog::backdrop{cursor:var(--cursor-default)}#world{cursor:var(--cursor-waypoint)}#world.dragging,.tree-scroll.is-dragging,.tree-scroll.is-dragging *{cursor:var(--cursor-drag)!important}button:not(:disabled),[role=button]:not([aria-disabled=true]),summary,select,label[for],.talent-scroll-rail{cursor:var(--cursor-action)!important}button:disabled,[aria-disabled=true]{cursor:var(--cursor-default)!important}button:not(:disabled):active,[role=button]:not([aria-disabled=true]):active,summary:active,.talent-scroll-rail:active{cursor:var(--cursor-pressed)!important}#model-preview canvas{cursor:var(--cursor-drag)!important}#app,.dialog,.management-dialog,#cinematic{-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}:where(input,textarea,[contenteditable=true]){-webkit-user-select:text;user-select:text;cursor:text}img,svg{-webkit-user-drag:none}button,select,input,summary{outline:none}button:not(:disabled),summary,[role=button]{transition-property:color,background-color,border-color,box-shadow,filter,opacity,transform;transition-duration:.15s;transition-timing-function:cubic-bezier(.2,.75,.25,1)}button:not(:disabled):active,[role=button]:not([aria-disabled=true]):active{filter:brightness(.9) saturate(.92)}button:focus-visible,select:focus-visible,input:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:none;box-shadow:0 0 0 1px #f3d994,0 0 0 4px #102c2599,0 0 18px #e6c97830}.icon-button:hover,.management-dialog button:not(:disabled):hover,.company-manage-button:hover,.launch-back:hover{box-shadow:inset 0 0 0 1px #f0d28d70,0 5px 18px #071a1538}.primary:hover,.expedition-start:hover{box-shadow:0 7px 22px #091d173f,inset 0 0 0 1px #fff0bd80}.regiment-card:hover,.regiment-card[aria-pressed=true],.commander-options button:hover,.commander-options button[aria-pressed=true],#departure-units button:hover{box-shadow:inset 0 0 0 1px #e8cc8673,0 8px 22px #081b1630}.recruitment-marker:hover{filter:brightness(1.08);box-shadow:0 0 0 1px #f0d68e55,0 8px 22px #071a1559}.management-dialog .talent-medallion:hover{filter:none;transform:translateY(-2px)}.management-dialog .talent-medallion:active{transform:translateY(0)}.talent-medallion:focus-visible{box-shadow:none}.talent-medallion:hover .talent-orb,.talent-medallion:focus-visible .talent-orb,.talent-medallion[aria-pressed=true] .talent-orb{outline:0;box-shadow:inset 0 0 0 3px #122a22,0 0 0 2px #eddaad,0 0 18px #dcc27d3d}:where(.management-scroll,.tree-scroll,.regiment-list,.regiment-detail,.launch-body,.selection-screen,.selection-detail,.devlog-scroll,#departure-units,#cinematic){scrollbar-width:thin;scrollbar-color:#bca363 #102c25;scroll-behavior:smooth}:where(.management-scroll,.tree-scroll,.regiment-list,.regiment-detail,.launch-body,.selection-screen,.selection-detail,.devlog-scroll,#departure-units,#cinematic)::-webkit-scrollbar{width:12px;height:12px}:where(.management-scroll,.tree-scroll,.regiment-list,.regiment-detail,.launch-body,.selection-screen,.selection-detail,.devlog-scroll,#departure-units,#cinematic)::-webkit-scrollbar-track{background:#102c25;border:1px solid #78906f38}:where(.management-scroll,.tree-scroll,.regiment-list,.regiment-detail,.launch-body,.selection-screen,.selection-detail,.devlog-scroll,#departure-units,#cinematic)::-webkit-scrollbar-thumb{min-width:54px;min-height:54px;border:3px solid #102c25;background-color:#8f7e54;background-image:url(/ui/scroll-grip.svg);background-position:center;background-repeat:no-repeat;background-size:72px 16px;box-shadow:inset 0 0 0 1px #e2ca8b66}:where(.management-scroll,.tree-scroll,.regiment-list,.regiment-detail,.launch-body,.selection-screen,.selection-detail,.devlog-scroll,#departure-units,#cinematic)::-webkit-scrollbar-thumb:hover{background-color:#b29a60}:where(.management-scroll,.tree-scroll,.regiment-list,.regiment-detail,.launch-body,.selection-screen,.selection-detail,.devlog-scroll,#departure-units,#cinematic)::-webkit-scrollbar-corner{background:#102c25}.tree-scroll{touch-action:pan-x;scroll-snap-type:none;scroll-behavior:auto!important;cursor:var(--cursor-drag);padding-bottom:6px;scrollbar-width:none}.talents-dialog .management-scroll{scroll-behavior:auto}.talents-dialog .tree-scroll{touch-action:pan-x pan-y}.tree-scroll::-webkit-scrollbar{display:none}.talent-medallion{scroll-snap-align:center}.tree-scroll-controls{display:grid;grid-template-columns:42px minmax(140px,1fr) 42px;align-items:center;gap:10px;margin:7px 0 4px}.tree-scroll-controls>button{height:32px;padding:0;display:grid;place-items:center;border:1px solid #ac9e6e55;background:#17372e;color:#ead28f}.tree-scroll-controls>button:disabled{opacity:.35}.tree-scroll-controls svg{width:18px;height:18px}.talent-scroll-rail{position:relative;height:18px;border:1px solid #8c916c42;background:linear-gradient(180deg,#0d261f,#17352c);overflow:hidden}.talent-scroll-rail:before{content:"";position:absolute;inset:8px 11px auto;height:1px;background:linear-gradient(90deg,transparent,#a8925f,#a8925f,transparent)}.talent-scroll-rail i{position:absolute;top:3px;left:0;height:10px;min-width:34px;background:linear-gradient(180deg,#617357,#314b3d) url(/ui/scroll-grip.svg) center/54px 12px no-repeat;border:1px solid #e0c781;box-shadow:0 0 10px #d3b66d38;transition:left .1s linear,width .16s ease}.tree-scroll-label{display:flex;justify-content:space-between;gap:12px;color:#9fb29f;font-size:10px;letter-spacing:.45px;margin-bottom:8px}.tree-scroll-label b{color:#ddc481;font-weight:600}.ui-click-mark{position:fixed;z-index:100000;width:20px;height:20px;pointer-events:none;transform:translate(-50%,-50%) rotate(45deg);border:1px solid #f1d58d;box-shadow:0 0 12px #e2c16f80,inset 0 0 0 3px #17372d99;animation:ui-rune-click .36s cubic-bezier(.15,.75,.25,1) forwards}.ui-click-mark:after{content:"";position:absolute;top:5px;right:5px;bottom:5px;left:5px;background:#f4dda0;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}@keyframes ui-rune-click{0%{opacity:0;transform:translate(-50%,-50%) rotate(45deg) scale(.4)}30%{opacity:1}to{opacity:0;transform:translate(-50%,-50%) rotate(75deg) scale(1.55)}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.tree-scroll-rail i,button:not(:disabled),summary,[role=button]{transition:none!important}.ui-click-mark{display:none}}.rank-badge.rank-bronze{--rank-metal:#ce945c;--rank-edge:#f1bd83;color:#dfa66e}.rank-badge.rank-silver{--rank-metal:#c2ced4;--rank-edge:#f1f5f5;color:#d6e1e4}.rank-badge svg{width:28px;height:32px}.rank-chevron{fill:var(--rank-metal);stroke:var(--rank-edge);stroke-width:.7;stroke-linejoin:round;filter:drop-shadow(0 1px 1px #061812)}.rank-insignia{position:relative;width:38px;height:36px;display:flex!important;align-items:center;justify-content:center;flex:0 0 38px;padding:1px 3px;border:1px solid color-mix(in srgb,var(--rank-metal) 55%,transparent);border-radius:2px;background:linear-gradient(135deg,#213f34,#102b24);box-shadow:inset 0 0 0 2px #102b24}.regiment-top>.rank-insignia{margin-top:0}#regiment-detail .detail-identity{display:grid;grid-template-columns:52px minmax(0,1fr) 38px;align-items:center;gap:10px}#regiment-detail .detail-identity>img{grid-column:1;grid-row:1;width:52px;max-width:100%;object-fit:contain}#regiment-detail .detail-identity>div{grid-column:2;grid-row:1;min-width:0}#regiment-detail .detail-identity h3{overflow-wrap:anywhere}#regiment-detail .detail-insignia{position:static;grid-column:3;grid-row:1;align-self:start}#departure-units>button>.rank-insignia{width:38px;height:36px;right:9px;bottom:9px;flex-basis:38px}.recruitment-marker{width:44px;height:48px;display:grid;place-items:center;grid-template-columns:1fr;padding:0;border:0;background:none;box-shadow:none;text-align:center;overflow:visible}.recruitment-marker:hover{background:none;border-color:transparent;box-shadow:none;filter:none}.recruitment-marker .site-house{position:relative;z-index:2;width:40px;height:43px;display:grid;place-items:center;color:#f3ddb0;background:linear-gradient(155deg,#315849,#15372e);border:1px solid #d8bd76;clip-path:polygon(14% 0,86% 0,100% 14%,100% 78%,50% 100%,0 78%,0 14%);filter:drop-shadow(0 5px 8px #0b201a80);transition:transform .18s cubic-bezier(.2,.75,.25,1),filter .18s,color .18s}.recruitment-marker .site-house svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.recruitment-marker .site-marker-label{position:absolute;left:50%;bottom:calc(100% + 7px);z-index:1;width:max-content;max-width:190px;padding:7px 11px 8px;display:grid;gap:2px;pointer-events:none;background:#15372ff2;border:1px solid #d9bd767d;box-shadow:0 8px 20px #071a155c;opacity:0;transform:translate(-50%,7px) scale(.96);transform-origin:bottom center;transition:opacity .16s,transform .2s cubic-bezier(.2,.75,.25,1)}.recruitment-marker .site-marker-label:after{content:"";position:absolute;left:50%;top:100%;width:8px;height:8px;background:#15372f;border-right:1px solid #d9bd767d;border-bottom:1px solid #d9bd767d;transform:translate(-50%,-4px) rotate(45deg)}.recruitment-marker .site-marker-label strong{font-size:13px;letter-spacing:.25px;color:#f3e4bd}.recruitment-marker .site-marker-label small{font-size:10px;white-space:nowrap;color:#bfd0b8}.recruitment-marker:hover .site-house,.recruitment-marker:focus-visible .site-house{transform:translateY(-3px) scale(1.06);color:#fff0c7;filter:drop-shadow(0 7px 10px #071a1599) drop-shadow(0 0 7px #e8c87555)}.recruitment-marker:hover .site-marker-label,.recruitment-marker:focus-visible .site-marker-label{opacity:1;transform:translate(-50%) scale(1)}.recruitment-marker.available .site-house{color:#ffe6a0;box-shadow:inset 0 0 0 2px #e6c67538}.management-dialog .talent-medallion{box-sizing:border-box;min-height:122px;padding:8px 4px!important;border:1px solid transparent!important;background:transparent!important;border-radius:2px;transition:color .16s,border-color .16s,background-color .16s,box-shadow .16s,transform .16s}.management-dialog .talent-medallion:hover,.management-dialog .talent-medallion:focus-visible,.management-dialog .talent-medallion[aria-pressed=true]{border-color:#d8c1838a!important;background:linear-gradient(180deg,#38534566,#142f2880)!important;box-shadow:inset 0 0 0 1px #0c261f,0 5px 15px #071a1538!important}.management-dialog .talent-medallion.available:hover,.management-dialog .talent-medallion.available:focus-visible{border-color:#edcf7ec7!important;background:linear-gradient(180deg,#63583970,#18352c8f)!important}.talent-connector{margin-top:28px}@media(min-width:2100px)and (min-height:1100px){.talent-connector{margin-top:33px}}#app:not(.in-menu) .topbar .chapter{display:none}#app:not(.in-menu) .time-controls{top:25px;left:50%;right:auto;transform:translate(-50%);z-index:7}@media(max-height:800px){#app:not(.in-menu) .time-controls{top:20px}}@media(max-width:760px){#app:not(.in-menu) .time-controls{top:18px;padding:8px 10px;gap:8px}#app:not(.in-menu) .time-controls kbd,#app:not(.in-menu) .time-controls button span{display:none}}.map-hero-face{position:relative}.hero-level-arrow{position:absolute;z-index:3;right:-10px;top:-13px;display:grid;place-items:center;width:32px;height:38px;filter:drop-shadow(0 2px 3px #071c19);animation:hero-talent-ready 1.15s ease-in-out infinite}.hero-level-arrow svg{width:30px;height:34px;fill:#ffe08a;stroke:#705b30;stroke-width:1.4}.map-hero-panel:has(.hero-level-arrow){border-color:#ebcb7c;box-shadow:0 0 16px #e5c37744}@keyframes hero-talent-ready{0%,to{transform:translateY(3px)}50%{transform:translateY(-5px);filter:drop-shadow(0 0 6px #e8c679)}}@media(prefers-reduced-motion:reduce){.hero-level-arrow{animation:none}}#settings-dialog .settings-hint{font-size:11px;line-height:1.5;margin:8px 0 18px;color:#aec3ac}#open-talents .hero-level-arrow{right:1px;top:9px}.battle-targeting[data-valid=ready]{border-color:#a4f0cb}.battle-targeting[data-valid=approach]{border-color:#f4cc78}.battle-targeting[data-valid=invalid]{border-color:#ff8f7e}#army-inspection{position:fixed;z-index:45;width:min(300px,calc(100vw - 16px));padding:16px;background:linear-gradient(135deg,#1c3932f5,#102822fa);border:1px solid #a99357;box-shadow:0 10px 32px #07140dd9;color:#ecdfb3;pointer-events:none;border-radius:3px}#army-inspection[hidden]{display:none}#army-inspection h3{font-family:Libre Caslon Display,serif;font-size:25px;margin:5px 0 12px}#army-inspection small{font-size:10px;letter-spacing:.07em;color:#b9c3a4}.army-threat{display:block;font-size:23px;color:#d3c591;margin-bottom:10px}#army-inspection[data-level=easy] .army-threat{color:#95c992}#army-inspection[data-level=dangerous] .army-threat{color:#efb573}#army-inspection[data-level=impossible] .army-threat{color:#f18f80}.army-balance{height:8px;background:#b8584d;overflow:hidden;border-radius:2px}.army-balance i{display:block;height:100%;background:#91b9a0}.army-side-labels{display:flex;justify-content:space-between;font-size:10px;margin:5px 0 12px;color:#bac7aa}#army-inspection ul{padding:0;list-style:none;margin:0}#army-inspection li{display:flex;gap:8px;align-items:center;padding:7px 0;border-top:1px solid #77927838;font-size:12px}#army-inspection li b{min-width:20px;color:#f2d99a}#army-inspection li small{margin-left:auto;white-space:nowrap}#army-inspection .army-estimate{font-size:11px;line-height:1.5;color:#b6c4ae;margin:12px 0}#army-inspection .army-advantages{font-size:12px;color:#d7c684}#exploration-hud .region-heading{background:linear-gradient(110deg,#d6dcb9e8,#d6dcb9a8 75%,#d6dcb900);padding:12px 22px 12px 12px;margin-left:-12px;border-radius:3px}.unit-stats [data-stat=attack] dd{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.attack-bonus{display:inline-flex;align-items:center;justify-content:center;width:23px;height:25px;color:#c5ac68;position:relative;vertical-align:middle;cursor:help;border-radius:3px;flex:0 0 auto}.attack-bonus svg{width:18px;height:23px}.attack-bonus[data-attack-bonus=large] svg{width:23px;height:25px}.attack-bonus:focus-visible{outline:2px solid #dbc786;outline-offset:2px}.attack-bonus-tip{display:none;position:absolute;z-index:30;bottom:calc(100% + 7px);left:50%;transform:translate(-50%);width:175px;padding:9px 11px;background:#132e26;color:#efdfb3;border:1px solid #9f8f5f;border-radius:3px;box-shadow:0 5px 16px #071a18a8;font:12px/1.5 DM Sans,sans-serif;white-space:normal;pointer-events:none}.attack-bonus:hover .attack-bonus-tip,.attack-bonus:focus .attack-bonus-tip{display:block}.unit-stats .rank-stat-gain{color:#a4e995;font-weight:700}.company-toggle{min-height:36px;min-width:32px}#battle-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;background:#142e27;color:#e9ddb8;font-family:DM Sans,sans-serif;isolation:isolate;-webkit-user-select:none;user-select:none}#battle-canvas{position:absolute;left:0;right:0;top:var(--battle-header-height,112px);width:100%;height:calc(100% - var(--battle-header-height,112px) - var(--battle-footer-height,170px));display:block;cursor:var(--cursor-default);outline:none}#battle-canvas[data-intent=unit]{cursor:var(--cursor-action)}#battle-canvas[data-intent=target]{cursor:var(--cursor-waypoint)}#battle-canvas.dragging{cursor:var(--cursor-drag)}#battle-screen [hidden]{display:none!important}.battle-header{position:absolute;left:0;right:0;top:0;padding:18px 26px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(#102e29f5,#14372be6);border-bottom:1px solid #cfb77970;box-shadow:0 6px 20px #10282138}.battle-header h1{font:30px Libre Caslon Display,serif;margin:3px 0 0}.battle-header .eyebrow{font-size:9px;letter-spacing:2px}.battle-time{display:flex;align-items:center;gap:12px;font-variant-numeric:tabular-nums}.battle-time>span{color:#ebd097}.battle-time kbd{font:10px DM Sans;opacity:.6}.battle-header-actions{display:flex;gap:8px}#battle-screen button{border:1px solid #bbaa7866;background:#25453a;color:#efdfac;padding:9px 13px;font:500 12px DM Sans;transition:background .15s,border-color .15s}#battle-screen button:hover:not(:disabled),#battle-screen button[aria-pressed=true]{border-color:#ebcf88;background:#4e6145}#battle-screen button:focus-visible{outline:2px solid #f3dfb1;outline-offset:2px}#battle-screen button:disabled{opacity:.4}.battle-help{position:absolute;top:108px;left:26px;width:285px;color:#193c2d;text-shadow:0 1px #e2e6c970;pointer-events:none}.battle-help>strong{font:26px Libre Caslon Display}.battle-help p{font-size:11px;line-height:1.9;margin-top:7px}.battle-notice{position:absolute;top:100px;left:50%;transform:translate(-50%);padding:10px 16px;background:#17352dd9;border:1px solid #cdb57555;max-width:560px;text-align:center;font-size:12px;pointer-events:none}.battle-notice:empty{display:none}.battle-footer{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(#1c3a30f5,#102f29);border-top:1px solid #baa56f80;padding:12px 24px 16px;box-shadow:0 -8px 35px #17362935}.battle-selection{display:flex;align-items:center;gap:22px;min-height:62px;margin-bottom:10px}.battle-selection h2{font:25px Libre Caslon Display;margin:3px 0}.battle-selection .eyebrow{font-size:8px;letter-spacing:1px}.battle-selection>div:first-child{min-width:170px;max-width:250px}.battle-orders{display:flex;gap:6px;flex-wrap:wrap;max-width:520px}.battle-skills{display:flex;gap:8px;margin-left:auto}.battle-skills button{display:grid;grid-template-columns:24px 1fr;gap:3px 8px;align-items:center;max-width:190px;text-align:left}.battle-skills svg{width:23px;height:23px;grid-row:span 2}.battle-skills small{font-size:10px;opacity:.75}.battle-mana{font-size:11px;color:#b8d5ca;max-width:100px}.battle-roster{display:flex;gap:9px;overflow-x:auto;padding:3px;scrollbar-width:thin;scrollbar-color:#b9a16b #183c2c}#battle-screen .battle-unit-card{position:relative;display:flex;flex-direction:column;align-items:stretch;flex:0 0 128px;width:128px;height:176px;padding:8px;background:linear-gradient(145deg,#33513b,#1a372d);text-align:left}.battle-unit-card>img{height:71px;object-fit:contain;align-self:center}.battle-unit-card>strong{font:19px Libre Caslon Display;line-height:1.1;margin-bottom:3px}.battle-card-count{position:absolute;right:8px;top:12px;font-size:12px}.battle-card-rank{position:absolute;left:6px;top:5px}.battle-card-rank .rank-insignia{width:27px;height:30px;flex-basis:27px;padding:0}.battle-card-rank svg{width:23px;height:26px}.battle-card-rank>b{font-size:10px;color:#d4bc7c}.battle-unit-card meter{height:5px;width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:#102920;margin-top:6px}.battle-unit-card meter::-webkit-meter-bar{background:#102920;border:0}.battle-unit-card meter::-webkit-meter-optimum-value{background:#a1be8a}.battle-unit-card .battle-morale::-webkit-meter-optimum-value{background:#d4bd79}.battle-unit-card small{font-size:9px;margin-top:6px;letter-spacing:.3px}.battle-unit-card[data-morale=Routing],.battle-unit-card[data-morale=Wavering]{border-color:#d69a6d!important}.battle-unit-card[data-morale=Routing] small{color:#f2b580}.battle-unit-card[data-state=Dead]{filter:grayscale(1)}.battle-hover{position:fixed;z-index:4;padding:13px 16px;max-width:310px;background:#102e28ee;border:1px solid #c4ac73;white-space:pre-line;font-size:12px;line-height:1.7;pointer-events:none}.battle-box{position:fixed;z-index:3;border:1px solid #f1dfa2;background:#c9d59125;pointer-events:none}.battle-targeting{position:absolute;bottom:278px;left:50%;transform:translate(-50%);padding:12px 20px;border:1px solid #d4ba7a;background:#17382fef;font-size:13px;pointer-events:none}.battle-result{position:absolute;top:0;right:0;bottom:0;left:0;background:#0b2119bb;display:grid;place-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:6}.battle-result>div{max-width:660px;padding:45px;background:#17392f;border:1px solid #d3b77c;text-align:center;box-shadow:0 25px 70px #071a1680}.battle-result h2{font:72px Libre Caslon Display;margin:12px 0;color:#f0d798}.battle-result p{line-height:1.7}.battle-result-units{font-size:12px;line-height:1.8;color:#b8c8ae;margin:20px 0 30px}@media(max-width:1100px){.battle-header{padding:12px 16px}.battle-header h1{font-size:24px}.battle-header-actions{gap:4px}.battle-time kbd{display:none}.battle-help{left:18px;top:91px;width:240px}.battle-help p{font-size:10px}.battle-header-actions button{font-size:10px!important;padding:7px!important}.battle-selection{gap:10px;flex-wrap:wrap}.battle-selection>div:first-child{min-width:140px}.battle-orders{max-width:390px}.battle-skills{margin-left:0}.battle-mana{margin-left:auto}.battle-footer{padding:10px 14px}.battle-notice{top:90px;left:auto;right:18px;transform:none;max-width:320px}.battle-selection h2{font-size:21px}}@media(max-height:800px){#battle-screen .battle-unit-card{height:137px;flex-basis:110px;width:110px}.battle-unit-card>img{height:47px}.battle-unit-card>strong{font-size:17px}.battle-selection{min-height:40px;margin-bottom:4px}.battle-help p{display:none}.battle-footer{padding-top:8px;padding-bottom:8px}.battle-targeting{bottom:225px}}@media(max-width:650px){.battle-header{align-items:flex-start;flex-wrap:wrap;gap:9px}.battle-header h1{font-size:22px}.battle-header-actions{width:100%;justify-content:flex-end}.battle-header-actions button{padding:5px 8px!important}.battle-help{display:none}.battle-notice{top:126px;right:12px;left:12px;max-width:none;font-size:10px}.battle-time{gap:7px}.battle-time button{font-size:10px!important;padding:7px!important}.battle-header .eyebrow{font-size:7px}.battle-footer{padding:8px}.battle-selection>div:first-child{min-width:110px}.battle-orders{order:3;max-width:none;width:100%;gap:4px}.battle-orders button{font-size:10px!important;padding:6px!important}.battle-skills button{padding:5px!important;max-width:120px;font-size:10px!important}.battle-selection h2{font-size:19px}.battle-targeting{bottom:295px;width:90%;font-size:11px}.battle-result>div{padding:25px;margin:18px}.battle-result h2{font-size:52px}}#battle-screen .battle-header{padding-top:42px}.battle-balance{position:absolute;inset:0 0 auto;height:25px;background:linear-gradient(#aa503d,#80372f);border-bottom:1px solid #e5c885;overflow:hidden}.battle-balance-allied{position:absolute;inset:0 auto 0 0;width:var(--allied-power,50%);background:linear-gradient(#559e83,#2b6b5d);border-right:2px solid #f4d9a2;transition:width .3s}.battle-balance-label{position:absolute;top:5px;font-size:10px;font-weight:700;letter-spacing:1.6px;text-shadow:0 1px 3px #10261b}.battle-balance-label.allied{left:25px}.battle-balance-label.enemy{right:25px}.battle-balance-label b{margin:0 8px;font-variant-numeric:tabular-nums}.battle-balance-emblem{position:absolute;left:50%;transform:translate(-50%);top:0;font-size:20px;color:#ffe3a0;text-shadow:0 1px 3px #10261b}#battle-screen .battle-footer{padding:8px 24px 10px}#battle-screen .battle-selection{position:absolute;bottom:calc(100% + 8px);left:24px;width:max-content;max-width:calc(100% - 48px);height:82px;min-height:82px;flex-wrap:nowrap;gap:12px;overflow-x:auto;overflow-y:hidden;margin:0;scrollbar-width:thin;scrollbar-color:#b9a16b #183c2c}#battle-screen .battle-selection>[data-battle-selection]{flex:0 0 150px;min-width:150px;width:150px;padding:8px 10px;background:#15382ee8;border:1px solid #b39b6355;border-radius:5px}#battle-screen .battle-selection h2{font-size:20px}#battle-screen .battle-unit-card{height:148px}#battle-screen .battle-unit-card>img{height:52px}#battle-screen .battle-orders,#battle-screen .battle-skills{display:flex;flex:0 0 auto;flex-wrap:nowrap;gap:8px;max-width:none;width:auto;order:0}#battle-screen .battle-skills{border-left:1px solid #ad9b6255;padding-left:10px;margin-left:0}#battle-screen .battle-skills:empty{display:none}#battle-screen button.battle-command{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;flex:0 0 64px;width:64px;height:72px;max-width:none;padding:6px!important;border:1px solid #b39b6380;border-radius:6px;background:linear-gradient(150deg,#355445,#1a352b);box-shadow:inset 0 0 0 3px #122b2455;color:#e6d19d}#battle-screen .battle-command svg{display:block;flex-shrink:0;width:38px;height:38px;filter:drop-shadow(0 2px 2px #0007)}#battle-screen .battle-command small{font-size:8px;font-weight:700;letter-spacing:.6px;opacity:1;white-space:nowrap}#battle-screen .battle-command[aria-pressed=true]{background:linear-gradient(145deg,#6f7849,#3b6042);border-color:#f5dc94;color:#ffecac;box-shadow:inset 0 0 0 2px #dac77c55,0 0 12px #dfc76f30}#battle-screen .battle-command[aria-pressed=true]:after{content:"";position:absolute;top:4px;right:4px;width:6px;height:6px;border-radius:50%;background:#ffe7a0;box-shadow:0 0 7px #ffe7a0}#battle-screen .battle-spell{background:linear-gradient(145deg,#4a4967,#252f40);border-color:#bda5d6;color:#e0caee}#battle-screen .battle-spell[data-icon=heart],#battle-screen .battle-spell[data-icon=shield]{background:linear-gradient(145deg,#416b62,#213b38);border-color:#9bcebc;color:#c2f1dc}#battle-screen .battle-spell:disabled{opacity:.48;filter:saturate(.45)}#battle-screen .battle-mana{flex:0 0 82px;margin-left:0;padding:8px;background:#15382ee8;border-radius:5px;font-size:10px}.battle-help{top:calc(var(--battle-header-height,112px) + 18px)}.battle-notice{top:calc(var(--battle-header-height,112px) + 10px);z-index:2}.battle-targeting{bottom:calc(var(--battle-footer-height,170px) + 100px);border:2px solid #e0c48b;box-shadow:0 0 24px #e7c67825}@media(max-height:800px){#battle-screen .battle-selection{height:72px;min-height:72px}#battle-screen button.battle-command{height:61px;width:58px;flex-basis:58px}#battle-screen .battle-command svg{width:31px;height:31px}#battle-screen .battle-unit-card{height:132px}#battle-screen .battle-unit-card>img{height:43px}}@media(max-width:1100px){#battle-screen .battle-selection>[data-battle-selection]{flex-basis:140px;min-width:140px;width:140px}#battle-screen .battle-selection{gap:10px}.battle-help{max-width:200px}.battle-notice{max-width:420px}.battle-header h1{font-size:23px}}@media(max-width:650px){#battle-screen .battle-header{padding-top:35px}.battle-balance-label{font-size:8px;letter-spacing:1px}.battle-balance-label.allied{left:10px}.battle-balance-label.enemy{right:10px}.battle-balance-label b{margin:0 4px}#battle-screen .battle-selection>[data-battle-selection]{display:none}#battle-screen .battle-selection{height:78px;min-height:78px}#battle-screen .battle-mana{display:none}.battle-notice{right:10px;left:10px;max-width:none}.battle-targeting{width:90%}}@media(max-width:650px){#battle-screen .battle-footer{padding:6px 8px 8px}#battle-screen .battle-selection{left:8px;max-width:calc(100% - 16px);gap:8px}#battle-screen button.battle-command{width:58px;flex-basis:58px;height:66px}#battle-screen .battle-command svg{width:34px;height:34px}#battle-screen .battle-unit-card{height:132px}#battle-screen .battle-unit-card>img{height:43px}}#battle-screen .battle-header{height:56px;box-sizing:border-box;padding:7px 18px;gap:12px;flex-wrap:nowrap}#battle-screen .battle-time{gap:12px;z-index:1;font-size:13px}#battle-screen .battle-header-actions{width:auto;gap:5px;margin-left:auto;z-index:1}#battle-screen .battle-header button{display:grid;place-items:center;width:36px;height:36px;min-height:0;padding:7px!important;border:1px solid #bba26a65;background:#244339;border-radius:3px;color:#e5d099}#battle-screen .battle-header button:hover,#battle-screen .battle-header button[aria-expanded=true]{background:#496149;border-color:#e5cd8c}#battle-screen .battle-header button svg{display:block;width:22px;height:22px;pointer-events:none}#battle-screen .battle-header [data-battle-play]{border-color:#dfc47a;color:#fff0b1}#battle-screen .battle-header [data-battle-surrender]{color:#d6a18a}#battle-screen .battle-balance{inset:16px auto auto 50%;transform:translate(-50%);width:min(42%,620px);height:23px;border:1px solid #c1a46a;border-radius:3px;box-shadow:0 0 0 3px #0c241c88}#battle-screen .battle-balance-label{top:4px;font-size:9px;letter-spacing:1px}#battle-screen .battle-balance-label.allied{left:12px}#battle-screen .battle-balance-label.enemy{right:12px}#battle-screen .battle-balance-emblem{font-size:18px}#battle-screen .battle-help{display:block;top:64px;left:auto;right:18px;z-index:5;width:300px;max-width:calc(100% - 60px);padding:18px;background:#16362ef2;color:#ead8b0;border:1px solid #bca26a;text-shadow:none;box-shadow:0 8px 25px #0005}#battle-screen .battle-help p{display:block}#battle-screen .battle-unit-card{width:120px;min-width:120px;flex:0 0 120px;height:180px;padding:0;overflow:hidden}#battle-screen .battle-unit-card>img.unit-portrait{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;max-height:none;object-fit:cover;margin:0}@media(min-height:900px)and (min-width:1200px){#battle-screen .battle-unit-card{width:140px;min-width:140px;flex-basis:140px;height:210px}}@media(max-width:900px){#battle-screen .battle-balance{width:36%;left:50%}#battle-screen .battle-balance-label{letter-spacing:0;font-size:8px}#battle-screen .battle-balance-label b{margin:0 3px}}@media(max-width:650px){#battle-screen .battle-header{height:76px;align-items:flex-start;padding:5px 8px;gap:4px}#battle-screen .battle-time{gap:6px;padding-top:0;font-size:11px}#battle-screen .battle-header-actions{gap:3px}#battle-screen .battle-header button{width:30px;height:30px;padding:5px!important}#battle-screen .battle-header button svg{width:20px;height:20px}#battle-screen .battle-balance{top:45px;left:50%;width:68%;height:20px}#battle-screen .battle-balance-label{top:3px}#battle-screen .battle-help{top:84px;right:10px}#battle-screen .battle-unit-card{width:96px;min-width:96px;flex-basis:96px;height:144px}}@media(max-height:600px){#battle-screen .battle-unit-card{width:88px;min-width:88px;flex-basis:88px;height:132px}}#launch-menu[data-step=hero]{top:88px;bottom:12px;left:24px;right:24px}#launch-menu[data-step=hero] .launch-top{margin-bottom:14px;align-items:center}#launch-menu[data-step=hero] .launch-top h1{font-size:clamp(28px,2.6vw,43px);margin:7px 0 0}#launch-menu[data-step=hero] .selection-screen{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(240px,1fr) auto auto;gap:12px;overflow:hidden;padding:0}#launch-menu[data-step=hero] .hero-workshop{display:grid;grid-template-columns:minmax(240px,30%) minmax(200px,1fr) minmax(260px,31%);grid-template-rows:minmax(0,1fr);gap:24px;min-height:0;height:auto;flex:none}#launch-menu[data-step=hero] .commander-options{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:10px;min-height:0}#launch-menu[data-step=hero] .commander-options>button{position:relative;display:block;flex:1 1 0;min-width:0;min-height:0;height:auto;max-height:100%;aspect-ratio:2/3;padding:0;overflow:hidden;border:2px solid #867449;border-radius:0;background:#d9c295;isolation:isolate}#launch-menu[data-step=hero] .commander-options>button:hover{transform:translateY(-3px)}#launch-menu[data-step=hero] .commander-options>button[aria-pressed=true]{border-color:#f0d390;box-shadow:0 0 0 2px #b39c6266,0 12px 20px #061a1166}#launch-menu[data-step=hero] .commander-options img.unit-portrait{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;max-height:none;margin:0;border:0;outline:0;object-fit:cover;object-position:center;z-index:-1}#launch-menu[data-step=hero] .commander-options>button>span{position:absolute;left:0;right:0;bottom:0;padding:24px 5px 8px;background:linear-gradient(transparent,#10291cf2 50%);text-align:center}#launch-menu[data-step=hero] .commander-options small{display:none}#launch-menu[data-step=hero] .commander-options strong{font-size:clamp(19px,1.9vw,29px);margin:0}#launch-menu[data-step=hero] .commander-options b{top:5px;bottom:auto;right:7px;background:#21412fcc;color:#ffe7aa}#launch-menu[data-step=hero] .model-stage{grid-column:auto;grid-row:auto;min-height:0;height:100%}#launch-menu[data-step=hero] .selection-detail{grid-column:auto;grid-row:auto;min-height:0;height:100%;overflow-y:auto;padding-right:12px;max-height:none}#launch-menu[data-step=hero] .selection-detail h2{font-size:clamp(32px,3vw,48px);margin:10px 0 16px}#launch-menu[data-step=hero] .hero-story{font-size:14px;line-height:1.7}#launch-menu[data-step=hero] .departure-roster{display:flex;align-items:center;gap:24px;padding-top:12px;min-height:0}#launch-menu[data-step=hero] .departure-roster .roster-heading{flex:0 0 210px;display:block;margin:0}#launch-menu[data-step=hero] .roster-heading>span{display:block;font-size:10px;margin-top:9px}#launch-menu[data-step=hero] .roster-heading strong{font-size:17px;display:block}#launch-menu[data-step=hero] #departure-units{display:flex;gap:10px;overflow-x:auto;min-width:0;max-width:100%;padding:3px;align-items:flex-start;flex:1}#launch-menu[data-step=hero] #departure-units>button{flex:0 0 auto;min-width:0;width:auto;height:clamp(138px,20svh,210px);min-height:0;aspect-ratio:2/3;padding:0!important}#launch-menu[data-step=hero] #departure-units>button>img.unit-portrait{object-fit:cover!important;object-position:center;width:100%!important;height:100%!important}#launch-menu[data-step=hero] .launch-bottom{padding:0;min-height:44px}#launch-menu[data-step=hero] .launch-bottom p{margin:3px 0}.launch-bottom .primary{min-height:42px;padding:10px 22px}.regiment-card[data-regiment]{flex:0 0 auto!important;width:106px!important;min-width:106px!important;height:159px!important}.regiment-card[data-regiment] .regiment-portrait img{object-fit:cover;object-position:center}.recruit-card>img.unit-portrait{width:auto!important;height:210px!important;max-width:100%;aspect-ratio:2/3;object-fit:contain!important}.map-hero-face img.hero-medallion,#commander-portrait{object-fit:cover!important;object-position:center!important;border:1px solid #c8ad71;border-radius:50%;background:#17362c}.map-hero-face{height:82px;width:82px;overflow:visible;border:0;background:none;flex-shrink:0}.map-hero-face img.hero-medallion{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;max-width:100%;transform:none;box-sizing:border-box}.map-hero-face b{z-index:2}#regiment-detail .detail-identity>img.unit-portrait{height:78px;object-fit:contain;aspect-ratio:2/3}#talent-model-preview{position:relative;width:100%;height:240px;min-height:200px;background:radial-gradient(ellipse,#4d635147,transparent);border:0;overflow:hidden}#talent-model-preview canvas{display:block;width:100%;height:100%;touch-action:none}@media(max-width:1150px){.map-hero-face{height:65px;width:65px}}@media(max-width:700px){#talent-model-preview{height:140px;min-height:140px}}@media(min-width:1700px){#launch-menu[data-step=hero] .commander-options{gap:16px}.regiment-card[data-regiment]{width:120px!important;min-width:120px!important;height:180px!important}}@media(max-width:1000px){#launch-menu[data-step=hero] .hero-workshop{grid-template-columns:minmax(175px,27%) minmax(155px,1fr) minmax(230px,34%);gap:14px}#launch-menu[data-step=hero] .commander-options{gap:5px}#launch-menu[data-step=hero] .commander-options strong{font-size:18px}#launch-menu[data-step=hero] .departure-roster .roster-heading{flex-basis:165px}}@media(max-width:700px){#launch-menu[data-step=hero]{top:78px;left:12px;right:12px;bottom:10px}#launch-menu[data-step=hero] .launch-top h1{font-size:27px}#launch-menu[data-step=hero] .selection-screen{display:flex;overflow-y:auto;gap:15px}#launch-menu[data-step=hero] .hero-workshop{display:grid;flex:0 0 auto;grid-template-columns:1fr 1fr;grid-template-rows:270px auto;height:auto;gap:14px;min-height:0}#launch-menu[data-step=hero] .commander-options{grid-column:1;grid-row:1;flex-wrap:wrap;gap:5px;align-content:center}#launch-menu[data-step=hero] .commander-options>button{flex:0 1 calc(50% - 5px);height:auto;max-height:132px}#launch-menu[data-step=hero] .commander-options strong{font-size:17px}#launch-menu[data-step=hero] .model-stage{grid-column:2;grid-row:1;min-height:0}#launch-menu[data-step=hero] .selection-detail{grid-column:1/-1;grid-row:2;max-height:290px;overflow:auto;padding:14px 5px 0 0}#launch-menu[data-step=hero] .departure-roster{order:-1;display:block;padding-top:0}#launch-menu[data-step=hero] .departure-roster .roster-heading{display:flex;justify-content:space-between;gap:10px;margin-bottom:7px}#launch-menu[data-step=hero] .roster-heading>span{display:none}#launch-menu[data-step=hero] #departure-units>button{height:132px}#launch-menu[data-step=hero] .launch-bottom{position:sticky;bottom:0;z-index:4;background:#19382ff5;padding:8px 0}.regiment-card[data-regiment]{width:88px!important;min-width:88px!important;height:132px!important}}@media(max-height:700px)and (min-width:701px){#launch-menu[data-step=hero]{top:75px}#launch-menu[data-step=hero] .selection-screen{grid-template-rows:minmax(190px,1fr) auto auto}#launch-menu[data-step=hero] .launch-top{margin-bottom:8px}#launch-menu[data-step=hero] .launch-top h1{font-size:28px}#launch-menu[data-step=hero] #departure-units>button{height:120px}#launch-menu[data-step=hero] .selection-detail h2{font-size:32px}}#encounter-dialog{width:min(1000px,calc(100vw - 32px));max-width:none;max-height:calc(100svh - 32px);box-sizing:border-box;padding:25px 30px;text-align:left;overflow:auto;background:radial-gradient(ellipse at top,#34503a,#152f27 75%);border:1px solid #c0a56b}#encounter-dialog h2{font:38px Libre Caslon Display;margin:7px 0 18px}#encounter-dialog>.eyebrow{justify-content:flex-start;font-size:9px;letter-spacing:3px}.encounter-army{border-top:1px solid #c0ac7144;padding-top:12px;margin-top:12px}.encounter-army>header{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:9px}.encounter-army h3{font:24px Libre Caslon Display;margin:0;color:#e9d49e}.encounter-army>header>span{font-size:12px;color:#abcab4;white-space:nowrap}.encounter-enemy>header>span{color:#e1a18c}.encounter-roster{display:flex;gap:8px;overflow-x:auto;padding:3px 3px 8px;scrollbar-width:thin;scrollbar-color:#bca56a #142f26}.encounter-unit{position:relative;flex:0 0 82px;width:82px;height:123px;box-sizing:border-box;border:2px solid #ab9564;background:#d8c192;overflow:hidden;isolation:isolate}.encounter-unit>img.unit-portrait{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;max-height:none;object-fit:cover;object-position:center;outline:0;border:0;clip-path:none}.encounter-health{position:absolute;top:2px;left:2px;right:2px;height:14px;text-align:center;background:#293b2a;color:#fff3cc;font-size:9px}.encounter-health i{position:absolute;inset:0 auto 0 0;background:#558361;opacity:.9}.encounter-health b{position:relative}.encounter-enemy .encounter-health i{background:#a25543}.encounter-unit>.rank-insignia{position:absolute;left:2px;top:20px;width:21px;height:25px;padding:0}.encounter-unit>.rank-insignia svg{width:19px;height:22px}.encounter-hero-mark{position:absolute;top:21px;left:3px;color:#ead396;background:#213e2bbd}.encounter-value{position:absolute;bottom:0;left:0;right:0;text-align:center;background:#1b3027d9;color:#ead3a0;font-size:10px;padding:3px}.predicted-destroyed{border-color:#db735c}.encounter-loss{position:absolute;inset:40% 0 auto;text-align:center;color:#ffad90;text-shadow:0 1px 3px #000;font-size:27px}#encounter-prediction{margin-top:14px}.encounter-forecast-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:9px}.encounter-forecast-title>span{font-size:9px;letter-spacing:2px;color:#bdc7ae}.encounter-forecast-title strong{font:25px Libre Caslon Display;color:#eed193}#encounter-dialog[data-forecast="3"] .encounter-forecast-title strong,#encounter-dialog[data-forecast="4"] .encounter-forecast-title strong,#encounter-dialog[data-forecast="5"] .encounter-forecast-title strong{color:#eaa08b}.encounter-power{position:relative;height:23px;background:#944737;border:1px solid #bca56b;display:flex;justify-content:space-between;align-items:center;padding:0 10px;overflow:hidden}.encounter-power i{position:absolute;inset:0 auto 0 0;background:#4a8c70;border-right:2px solid #ebd290}.encounter-power span{position:relative;font-size:10px;font-weight:700;color:#f7e7b8;text-shadow:0 1px 3px #173020}.encounter-scale{display:grid;grid-template-columns:repeat(6,1fr);list-style:none;padding:0;gap:5px;margin:8px 0 12px}.encounter-scale li{text-align:center;padding:5px 2px;border-top:2px solid #778268;color:#aeb69e;font-size:9px;opacity:.65}.encounter-scale li[aria-current]{border-color:#f2d188;background:#c8ae6b1c;color:#f5dd9b;opacity:1}.encounter-scale b{display:block;font-size:10px;margin-bottom:3px}#encounter-dialog .battle-note{margin:12px 0 8px;padding:0;border:0;background:none}#encounter-dialog .battle-note p{font-size:11px;line-height:1.6;color:#b4c2aa;margin:0}#encounter-auto-note{font-size:12px;color:#e0c38d;line-height:1.5;margin:8px 0 12px}.encounter-actions{display:flex;gap:12px}.encounter-actions button{flex:1;min-height:46px;margin:0;padding:12px;border:1px solid #c1a46b}.encounter-actions .primary{background:#ddc48b;color:#1c382a}.encounter-actions button:disabled{opacity:.4;cursor:not-allowed}.encounter-actions #auto-battle{background:#2d4835;color:#e5d197}@media(min-height:950px)and (min-width:1000px){.encounter-unit{width:94px;flex-basis:94px;height:141px}}@media(max-width:650px){#encounter-dialog{width:calc(100vw - 16px);max-height:calc(100svh - 16px);padding:18px 14px}#encounter-dialog h2{font-size:29px}.encounter-army h3{font-size:20px}.encounter-army>header>span{font-size:10px}.encounter-unit{flex-basis:70px;width:70px;height:105px}.encounter-forecast-title strong{font-size:22px}.encounter-scale span{font-size:8px}.encounter-forecast-title>span{font-size:8px;letter-spacing:1px}.encounter-actions{gap:8px}.encounter-actions button{font-size:11px;padding:9px 6px}}.encounter-loss-count{position:absolute;bottom:22px;right:3px;padding:2px 4px;background:#5d2825e6;border:1px solid #ca8467;color:#ffd5b4;font-size:10px;font-weight:700}.main-menu.home-menu{display:grid;grid-template-columns:1fr 1fr;gap:28px 60px;width:min(1040px,calc(100vw - 64px));top:52%;bottom:auto;transform:translate(-50%,-50%);max-height:calc(100svh - 128px);padding:12px;overflow-y:auto;text-align:left;align-items:center}.home-campaign{text-align:center;display:flex;flex-direction:column;align-items:center}.home-campaign .home-emblem{font-size:44px;margin:0 0 8px}.home-campaign>.eyebrow{font-size:11px;letter-spacing:5px;color:#ecd49c}.home-campaign>h1{font:100px/.95 Libre Caslon Display,Georgia,serif;margin:10px 0 16px;color:#fff0cf}.home-campaign .home-motto{margin:0 0 28px}.home-campaign .save-note{font-size:12px;line-height:1.5;max-width:350px}.home-actions{display:grid;grid-template-columns:1fr 1fr;gap:14px}.home-action{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:18px;min-height:158px;padding:22px;border:1px solid #cbbd8e70;background:linear-gradient(135deg,#254a3eee,#15352eeb);color:#f4e4be;text-align:left;transition:background .2s,border-color .2s,transform .2s}.home-action>svg{width:34px;height:34px;fill:none;stroke:#e2c98b;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.home-action strong{display:block;font-size:20px;font-weight:500}.home-action small{display:block;font-size:12px;line-height:1.45;margin-top:5px;color:#bccbb7}.home-action>b{position:absolute;right:16px;top:20px;font-size:22px;color:#d8c189}.home-action:hover,.home-action:focus-visible{border-color:#f4d68e;background:#365844;transform:translateY(-2px)}.main-menu.home-menu>.account-panel{grid-column:1/-1;max-width:none;width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0;padding:14px 0 0}.account-panel>p{font-size:12px;max-width:480px}.account-panel>button{max-width:340px;overflow-wrap:anywhere}.main-menu.home-menu .home-resume{font-size:14px}.main-menu.home-menu .expedition-start>span{font-size:14px}@media(max-width:800px){.main-menu.home-menu{grid-template-columns:1fr;gap:18px;width:calc(100vw - 32px);top:90px;transform:translate(-50%);max-height:calc(100svh - 108px);padding:6px}.home-campaign .home-emblem{display:none}.home-campaign>h1{font-size:64px;margin:5px 0 8px}.home-campaign .home-motto{font-size:18px;margin-bottom:16px}.home-actions{gap:10px}.home-action{min-height:118px;padding:14px;gap:10px}.home-action>svg{width:27px;height:27px}.home-action strong{font-size:18px}.home-action small{font-size:11px}.home-action>b{top:12px;right:12px}.main-menu.home-menu>.account-panel{flex-wrap:wrap;justify-content:center;text-align:center}.home-campaign .save-note{margin:7px 0 0}.home-campaign .home-resume{padding:12px 20px;margin-top:10px}.home-campaign .expedition-start{height:54px}}@media(prefers-reduced-motion:reduce){.home-action{transition:none}}.home-action .home-version{color:#ffe070;font-size:14px;font-style:normal;white-space:nowrap;text-shadow:0 0 14px #e6b84d55}.home-support{position:relative;display:flex;align-items:center;gap:15px;width:min(360px,100%);box-sizing:border-box;margin-top:20px;padding:15px 32px 15px 18px;border:1px solid #f5ce83;border-radius:4px;background:linear-gradient(115deg,#714633,#3e3428);color:#fff0d0;text-decoration:none;text-align:left;box-shadow:0 0 0 3px #dcaf5b16;animation:support-glow 3.6s ease-in-out infinite;transition:background .2s,transform .2s}.home-support>svg{width:43px;height:43px;flex:none;overflow:visible;fill:none;stroke:#ffe4ae;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.home-support .support-heart{fill:#ff827b;stroke:none;transform-origin:22px 27px;animation:support-heartbeat 3.6s ease-in-out infinite}.home-support .support-steam{stroke-width:1.6;opacity:.65}.home-support small{display:block;color:#f3c994;font-size:9px;letter-spacing:1.8px}.home-support strong{display:block;font:26px/1.15 Libre Caslon Display,Georgia,serif;margin:4px 0}.home-support em{display:block;font-size:11px;line-height:1.45;font-style:normal;color:#e6cdb3}.home-support>b{position:absolute;right:13px;top:12px;color:#ffe4ae;font-size:18px}.home-support:hover{background:linear-gradient(115deg,#895339,#51412e);transform:translateY(-2px)}.home-support:focus-visible{outline:3px solid #fff0b8;outline-offset:5px}@keyframes support-glow{0%,to{box-shadow:0 0 0 3px #dcaf5b16,0 0 12px #f8b55e10}50%{box-shadow:0 0 0 3px #dcaf5b28,0 0 24px #f8b55e40}}@keyframes support-heartbeat{0%,30%,60%,to{transform:scale(1)}40%,50%{transform:scale(1.14)}}@media(max-width:800px){.home-support{margin-top:14px;padding:12px 30px 12px 16px;gap:12px}.home-support strong{font-size:24px}.home-support>svg{width:36px;height:36px}}@media(prefers-reduced-motion:reduce){.home-support,.home-support .support-heart{animation:none;transition:none}}.analytics-welcome{width:min(610px,calc(100vw - 32px));max-width:none;max-height:calc(100svh - 32px);padding:0;overflow:auto;border:1px solid #dec88d;background:radial-gradient(ellipse at top,#365849,#152d28 68%);color:#eee4c9;box-shadow:0 30px 100px #0008;border-radius:10px}.analytics-welcome::backdrop{background:#071a17c9;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.analytics-welcome[open]{animation:consent-arrive .35s ease-out}.consent-art{position:relative;height:136px;overflow:hidden;background:radial-gradient(ellipse,#d1b77520,transparent 70%);border-bottom:1px solid #c8b27c33}.consent-art svg{display:block;height:150px;width:100%;fill:none;stroke:#c5b677;stroke-width:1.1}.consent-art svg>circle{stroke:#bdcba744}.consent-art svg g{fill:#f2d38c;stroke:none;animation:consent-stars 4s ease-in-out infinite}.consent-art>span{position:absolute;left:calc(50% - 8px);bottom:8px;color:#f3d795;font-size:22px}.consent-copy{padding:26px 34px 24px}.consent-copy>.eyebrow{font-size:10px;letter-spacing:2px;color:#e1c686}.consent-copy h2{font:42px/1.06 Libre Caslon Display,Georgia,serif;margin:12px 0 20px;color:#fff0cb}.consent-copy p{font-size:16px;line-height:1.65;margin:14px 0}.consent-copy .consent-detail{font-size:14px;color:#becdbd}.consent-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}.consent-actions button{padding:14px 12px;min-height:54px;border:1px solid #d9c28c;background:#385342;color:#fff0ca;font:500 14px/1.4 DM Sans,sans-serif;cursor:pointer}.consent-actions button:hover{background:#506744}.consent-actions button:focus-visible{outline:3px solid #ffe3a0;outline-offset:3px}.consent-copy .consent-reminder{font-size:12px;text-align:center;color:#c9cfb7;margin:15px 0 10px}.consent-copy>a{display:block;text-align:center;font-size:12px;color:#d5bd83;text-underline-offset:3px}@keyframes consent-arrive{0%{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:none}}@keyframes consent-stars{0%,to{opacity:.55}50%{opacity:1}}@media(max-width:600px){.consent-art{height:94px}.consent-art svg{height:110px}.consent-copy{padding:22px}.consent-copy h2{font-size:35px}.consent-copy p{font-size:15px}.consent-copy .consent-detail{font-size:13px}.consent-actions{grid-template-columns:1fr;gap:10px;margin-top:20px}.consent-actions button{min-height:48px}.consent-copy .consent-reminder{line-height:1.5}}@media(prefers-reduced-motion:reduce){.analytics-welcome[open],.consent-art svg g{animation:none}}#settings-dialog{width:min(540px,calc(100vw - 32px));max-height:calc(100svh - 32px);box-sizing:border-box;padding:32px;overflow-y:auto}#settings-dialog h2{font-size:42px}#settings-dialog>p{font-size:16px;line-height:1.6}#settings-dialog label{font-size:15px;line-height:1.5;margin-top:22px;margin-bottom:10px}#settings-dialog select{font-size:16px;min-height:48px;padding:13px}#settings-dialog .checkbox-label{gap:13px;margin-bottom:16px}#settings-dialog input[type=checkbox]{width:20px;height:20px;flex:none}#settings-dialog .settings-hint{font-size:13px;line-height:1.6;margin:8px 0 20px}#settings-dialog>.primary{font-size:16px;min-height:50px}#settings-dialog>.dialog-close{width:40px;height:40px}@media(max-width:600px){#settings-dialog{padding:26px 22px}#settings-dialog h2{font-size:36px}#settings-dialog label{font-size:15px}}.battle-effect-labels{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:8;overflow:hidden}.battle-effect-label{position:absolute;display:flex;gap:3px;transform:translate(-50%,-100%)}.battle-duration{position:relative;display:flex;align-items:center;gap:3px;background:#102822ed;border:1px solid var(--effect-color);border-radius:4px;color:var(--effect-color);padding:3px 5px 6px;box-shadow:0 1px 8px #0008;font:600 12px DM Sans,sans-serif;pointer-events:none}.battle-duration svg{width:18px;height:18px}.battle-duration i{position:absolute;height:3px;bottom:0;left:0;width:var(--effect-left);background:var(--effect-color)}#battle-screen .battle-unit-card[data-spell-target=true]{outline:3px solid #a7f8dd;outline-offset:3px;filter:brightness(1.2)}#battle-screen .battle-targeting[data-valid=ready]{border:2px solid #9aefcc;background:#123b31f5;color:#e0fff2}#battle-screen .battle-targeting[data-valid=approach]{border:2px solid #e4ba72;background:#342b1ef5}.battle-duration em{font-style:normal;max-width:145px;font-size:11px;line-height:1.2}.battle-duration em small{display:block;color:#dce6d5;font-size:10px;font-weight:400}.battle-morale-label{display:block;text-align:center;background:#3c2b1eed;color:#ffe3a1;border:1px solid #d4a568;padding:3px 7px;border-radius:4px;font:700 11px DM Sans,sans-serif;white-space:nowrap}.battle-morale-label small{display:block;font-size:9px;font-weight:400}.battle-morale-label[data-morale=Routing]{background:#e9e6dcf0;color:#48352e;border-color:#fff}.battle-area-label{position:absolute;transform:translate(-50%,-100%);font:700 11px DM Sans,sans-serif;background:#211b36db;color:#f1e9ca;padding:4px 8px;border:1px solid #b2a0de;border-radius:4px;white-space:nowrap}#battle-screen .battle-result{--result-gold:#edd08a;--result-glow:#e5b751;isolation:isolate;overflow:auto;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 36%,#3c4128df,#071d18f5 72%);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);animation:result-veil .45s ease-out both}#battle-screen .battle-result[data-outcome=defeat]{--result-gold:#ed9984;--result-glow:#dc503b;background:radial-gradient(ellipse at 50% 36%,#632924df,#1c1118f5 72%)}#battle-screen .battle-result>.result-content{position:relative;z-index:1;width:min(100%,900px);max-width:900px;box-sizing:border-box;padding:24px 24px 36px;margin:0;border:0;background:none;box-shadow:none;text-align:center}#battle-screen .battle-result>.result-aura{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;max-width:none;margin:0;padding:0;border:0;box-shadow:none;background:radial-gradient(ellipse at 50% 40%,color-mix(in srgb,var(--result-glow) 24%,transparent),transparent 52%);animation:result-aura 2.2s ease-out both;pointer-events:none}.result-emblem{position:relative;height:clamp(260px,48svh,460px);display:grid;place-items:center}.result-kicker{position:absolute;top:5px;left:0;right:0;color:var(--result-gold);font-size:10px;letter-spacing:5px;animation:result-report .6s .35s both}#battle-screen .battle-result h2{position:relative;z-index:1;margin:0 0 25px;font:clamp(70px,10vw,142px)/1 "Libre Caslon Display",serif;text-transform:uppercase;letter-spacing:.055em;color:var(--result-gold);text-shadow:0 3px 1px #302619,0 0 35px color-mix(in srgb,var(--result-glow) 45%,transparent);animation:result-title 1.15s .3s cubic-bezier(.2,.7,.2,1) both}.result-swords{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;filter:drop-shadow(0 5px 6px #0009)}.result-sword{position:absolute;height:86%;width:27%;left:36.5%;bottom:0;overflow:visible;transform-origin:50% 76%}.sword-gold{fill:#b79952;stroke:#ffe3a2;stroke-width:2}.sword-gem{fill:#729b92;stroke:#efdda0;stroke-width:1.5}.result-sword-left{--angle:-38deg;--entry:-190px;--settle:42px;transform:translate(42px) rotate(-38deg);animation:result-cross .75s cubic-bezier(.18,.8,.23,1) both}.result-sword-right{--angle:38deg;--entry:190px;--settle:-42px;transform:translate(-42px) rotate(38deg);animation:result-cross .75s cubic-bezier(.18,.8,.23,1) both}.result-impact{position:absolute;left:50%;top:44%;width:6px;height:6px;border-radius:50%;background:#fff4cf;box-shadow:0 0 35px 10px var(--result-glow);animation:result-impact .7s .57s both}.result-spark{position:absolute;top:44%;left:50%;width:3px;height:11px;background:var(--result-gold);box-shadow:0 0 8px var(--result-glow);animation:result-spark 1s .59s both}.result-report{position:relative;z-index:3;animation:result-report .7s .8s both;border-top:1px solid color-mix(in srgb,var(--result-gold) 38%,transparent);padding-top:20px;margin:auto;max-width:680px}#battle-screen .battle-result p{font-size:15px;color:#e6ddc6;margin:0;line-height:1.7}#battle-screen .battle-result-units{font-size:12px;line-height:1.8;margin:13px 0 23px;color:#c1c8b8}#battle-screen .battle-result .primary{border:1px solid var(--result-gold);background:linear-gradient(110deg,#c3a368,#edda9e);color:#24362b;padding:13px 28px;font-size:14px;min-height:46px}#battle-screen .battle-result[data-outcome=defeat] .primary{background:linear-gradient(110deg,#733931,#a44d3d);color:#ffddc9}.battle-result[data-outcome=defeat] .result-sword-left{--angle:-26deg;--entry:-190px;animation:result-break-left 1.7s both}.battle-result[data-outcome=defeat] .result-sword-right{--angle:26deg;--entry:190px;animation:result-break-right 1.7s both}.battle-result[data-outcome=defeat] .sword-whole{display:none}.battle-result[data-outcome=defeat] .sword-tip{transform-box:fill-box;transform-origin:50% 100%;animation:result-shatter 1.5s .61s both}.battle-result[data-outcome=defeat] .result-sword-right .sword-tip{animation-name:result-shatter-right}.battle-result[data-outcome=defeat] .sword-gold{fill:#765045;stroke:#ca9277}.battle-result[data-outcome=defeat] .sword-gem{fill:#a84035;stroke:#e79877}@keyframes result-veil{0%{opacity:0}to{opacity:1}}@keyframes result-aura{0%{opacity:0;transform:scale(.6)}40%{opacity:1}to{opacity:.7;transform:scale(1)}}@keyframes result-title{0%{opacity:0;transform:scale(.82);filter:blur(5px)}to{opacity:1;transform:scale(1);filter:blur(0)}}@keyframes result-cross{0%{opacity:0;transform:translate(var(--entry)) translateY(-40px) rotate(0)}80%{opacity:1;transform:translate(var(--settle)) rotate(var(--angle))}to{transform:translate(var(--settle)) rotate(var(--angle))}}@keyframes result-impact{0%,to{opacity:0;transform:scale(.2)}20%{opacity:1;transform:scale(1)}}@keyframes result-spark{0%{opacity:0;transform:rotate(var(--ray)) translateY(0)}15%{opacity:1}to{opacity:0;transform:rotate(var(--ray)) translateY(var(--flight)) scale(.1)}}@keyframes result-report{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes result-break-left{0%{opacity:0;transform:translate(-160px) rotate(0)}36%{opacity:1;transform:rotate(-38deg)}48%{transform:translate(-4px,3px) rotate(-34deg)}to{transform:translate(-45px,12px) rotate(-26deg)}}@keyframes result-break-right{0%{opacity:0;transform:translate(160px) rotate(0)}36%{opacity:1;transform:rotate(38deg)}48%{transform:translate(4px,3px) rotate(34deg)}to{transform:translate(45px,12px) rotate(26deg)}}@keyframes result-shatter{0%{opacity:1;transform:translate(0) rotate(0)}to{opacity:.25;transform:translate(-50px,65px) rotate(-105deg)}}@keyframes result-shatter-right{0%{opacity:1;transform:translate(0) rotate(0)}to{opacity:.25;transform:translate(50px,65px) rotate(105deg)}}@media(max-width:650px){#battle-screen .battle-result>.result-content{padding:20px 18px}.result-emblem{height:300px}.result-kicker{font-size:8px;letter-spacing:3px}#battle-screen .battle-result h2{font-size:clamp(48px,14vw,86px);letter-spacing:.025em}#battle-screen .battle-result p{font-size:12px}.result-report{padding-top:15px}.result-sword{width:30%;left:35%;height:79%}}@media(max-height:600px)and (min-width:651px){.result-emblem{height:230px}#battle-screen .battle-result h2{font-size:90px}.result-report{padding-top:10px}#battle-screen .battle-result>.result-content{padding:10px 24px}.result-kicker{top:0}}@media(prefers-reduced-motion:reduce){#battle-screen .battle-result,#battle-screen .battle-result *{animation-duration:1ms!important;animation-delay:0s!important}.result-impact,.result-spark{display:none}}#battle-screen .battle-result[data-game-over] h2{font-size:clamp(38px,6vw,80px);max-width:800px;line-height:1.05}#battle-screen [data-checkpoint-note]:not([hidden]){display:block;margin:14px auto;color:#e6ddc6;font-size:13px;line-height:1.5}#battle-screen [data-game-over] [data-battle-leave]{background:transparent;border-color:#a97865}#cinematic{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;border-radius:0;background:#141d1c;color:#f7ecd1;overflow:auto}#cinematic::backdrop{background:#141d1c}.cinematic-shell{min-height:100%;overflow:hidden;display:flex;flex-direction:column;background:radial-gradient(ellipse at bottom left,#4c49312b,transparent 60%)}.cinematic-top{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 5vw;font-size:12px;letter-spacing:2px}.cinematic-top b{margin-left:22px;color:var(--story-accent);font-weight:500}.cinematic-top button{font-size:13px;min-height:44px;color:#dddbc9;letter-spacing:0}.cinematic-top kbd{margin-left:8px}.cinematic-art{position:relative;overflow:hidden;height:clamp(360px,62svh,900px);flex-shrink:0;border-top:2px solid #b8a77e;border-bottom:3px solid #131b19;box-shadow:0 8px #9a896926;transform:rotate(-.4deg) scale(1.015);background:#344339}.cinematic-art svg,.cinematic-art img{display:block;width:100%;height:100%;object-fit:contain;animation:story-drift 16s ease-out both}.cinematic-ink{position:absolute;top:0;right:0;bottom:0;left:0;box-shadow:inset 0 0 50px #463c2414;pointer-events:none}.cinematic-copy{width:min(1120px,90%);margin:30px auto 16px;animation:story-copy .5s ease-out both}.cinematic-copy .eyebrow{color:var(--story-accent);font-size:12px;line-height:1.6}.cinematic-copy h1{font-family:Libre Caslon Display,Georgia,serif;font-size:clamp(36px,4vw,62px);font-weight:400;margin:8px 0 12px;line-height:1.08}.cinematic-copy p{font-size:clamp(16px,1.2vw,19px);line-height:1.75;max-width:1000px;margin:0;color:#dcdccc}.cinematic-controls{display:flex;gap:18px;align-items:center;width:min(1120px,90%);margin:auto auto 0;padding:22px 0 28px}.cinematic-controls button{min-height:48px;padding:12px 18px;border:1px solid #aaa17b55;color:#eee1bb;font-size:15px}.cinematic-controls button:disabled{opacity:.3}.cinematic-controls [data-story-next]{margin-left:auto;background:var(--story-accent);color:#1e2a25;font-weight:700;min-width:180px;clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);transition:filter .2s,transform .2s}.cinematic-controls [data-story-next]:hover{filter:brightness(1.1);transform:translateY(-2px)}.cinematic-controls [data-story-next] span{margin-left:25px}.story-pagination{display:flex;align-items:center;gap:8px}.story-pagination i{width:8px;height:8px;border:1px solid #aeb5a0;transform:rotate(45deg)}.story-pagination i.active{background:var(--story-accent);border-color:var(--story-accent)}.story-pagination b{font-size:12px;font-weight:400;color:#b7bea9;margin-left:10px;white-space:nowrap}@keyframes story-drift{0%{transform:scale(1)}to{transform:scale(1.055)}}@keyframes story-copy{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:620px){.cinematic-top{padding:12px 5vw;font-size:10px;letter-spacing:1px}.cinematic-top b,.cinematic-top kbd{display:none}.cinematic-art{height:52svh;min-height:300px}.cinematic-copy{margin-top:25px}.cinematic-copy .eyebrow{font-size:11px}.cinematic-copy p{font-size:16px;line-height:1.65}.cinematic-controls{gap:10px;flex-wrap:wrap}.cinematic-controls [data-story-next]{min-width:0}.story-pagination b{display:none}}@media(prefers-reduced-motion:reduce){.cinematic-art svg,.cinematic-art img,.cinematic-copy{animation:none}.cinematic-controls [data-story-next]{transition:none}}
