:root{--bg:#374627;--fg:#fff5d7;--accent:#245bad;--gold:#d4af63;--font-display:"Trebuchet MS", Arial, sans-serif;--font-body:"Trebuchet MS", Arial, sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);width:100%;height:100%;color:var(--fg);font-family:var(--font-body);touch-action:manipulation;-webkit-user-select:none;user-select:none;margin:0;overflow:hidden}[hidden]{display:none!important}button,input{font:inherit}button{color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,canvas:focus-visible{outline-offset:4px;outline:3px solid #fff3ab}button:active{filter:brightness(.82);transform:translateY(2px)}button:disabled{opacity:.55;cursor:wait}#game{background:#7a795c;width:min(100vw,60dvh);height:100dvh;margin:auto;position:relative;overflow:hidden}#stage,#world-labels{width:100%;height:100%;display:block;position:absolute;inset:0}#stage{touch-action:none}#world-labels{pointer-events:none}#ui{pointer-events:none;position:absolute;inset:0}#ui button,#ui input,#ui dialog{pointer-events:auto}#enemy-hud{z-index:5;left:25%;top:max(7px, env(safe-area-inset-top));background:#372c22;border:2px solid #664426;width:49%;height:clamp(24px,3.5dvh,38px);position:absolute;box-shadow:0 1px 2px #261d19,inset 0 0 2px #f7b651}#enemy-fill{transform-origin:0;background:linear-gradient(#ff943e 0%,#fa5628 25%,#eb3d20 75%,#ff7d40 100%);transition:transform .13s linear;position:absolute;inset:0;box-shadow:inset 0 0 5px #a31619}#enemy-count{color:#fff9df;-webkit-text-stroke:.7px #37251e;paint-order:stroke fill;text-shadow:1px 2px #35211d,-1px -1px #35211d;place-items:center;font-size:clamp(22px,3.8dvh,36px);font-weight:900;line-height:1;display:grid;position:absolute;inset:0}.helmet{filter:drop-shadow(0 1px 1px #211d14);height:145%;position:absolute;top:-22.5%;left:-11%}.close-square{right:1.4%;top:max(0px, env(safe-area-inset-top));z-index:8;background:linear-gradient(135deg,#af251e,#660d0e);border:3px ridge #c6a064;border-radius:2px;width:clamp(44px,6dvh,62px);height:clamp(44px,6dvh,62px);padding:0;position:absolute;box-shadow:inset 0 0 0 2px #5b2513,0 2px 3px #191d16}.close-square span{text-shadow:0 2px 2px #38160d;font:900 clamp(44px,6dvh,64px)/.75 Arial;display:block;transform:translateY(-2px)}#ready-panel{position:absolute;inset:0}.title-mark{text-align:center;filter:drop-shadow(0 4px 5px #23301de0);width:100%;position:absolute;top:25%}.title-kicker{color:#fff3c0;letter-spacing:.23em;text-shadow:0 1px 3px #182817;font-size:12px;font-weight:800}h1{letter-spacing:-.04em;color:#efdb9c;-webkit-text-stroke:1px #6d4c25;text-shadow:0 3px #886730,0 5px #252d21;margin:15px 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(52px,8.8dvh,94px);font-weight:900;line-height:.83}h1 strong{letter-spacing:-.045em;color:#f9e9b2;padding-top:8px;font-size:.84em;display:block}.title-mark i{background:linear-gradient(90deg,#0000,#f7d87c,#0000);width:45%;height:3px;margin:18px auto;display:block}.start-controls{width:100%;bottom:max(8%, env(safe-area-inset-bottom));text-align:center;position:absolute}.start-controls p{text-shadow:0 2px 3px #1f2d16;font-size:clamp(14px,2dvh,19px);font-weight:700}.gold-button{color:#fff5ca;text-shadow:0 2px 2px #1b3a17;background:linear-gradient(110deg,#0d4c24,#287536 40%,#155b29 80%,#0b3f1e);border:3px ridge #d4ab61;border-radius:2px;width:45%;max-width:250px;min-height:48px;padding:9px 18px;font-size:clamp(19px,2.6dvh,27px);font-weight:800;box-shadow:inset 0 0 0 2px #173c1a,0 2px 4px #211c15}.gold-button:hover{filter:brightness(1.15)}#loading{height:17px;font-size:12px}#loading:empty{display:none}#play-hint{width:90%;left:5%;bottom:max(14px, env(safe-area-inset-bottom));text-align:center;color:#fff8dc;text-shadow:0 1px 3px #142615,0 1px 6px #142615;margin:0;padding:9px 7px;font-size:15px;font-weight:700;position:absolute}#result-panel{z-index:6;position:absolute;inset:0}.result-scrim{background:#10100a99;animation:.4s both dim;position:absolute;inset:0}.result-content{text-align:center;width:100%;animation:.5s cubic-bezier(.15,.8,.3,1.3) both triumph;position:absolute;top:31.2%}.victory-art{filter:drop-shadow(0 4px 5px #130f0b66);width:94%;height:27dvh;margin:auto;display:block}#result-title{color:#fff4cd;text-shadow:0 2px 2px #193668;width:100%;margin:0;padding:0;font-size:clamp(26px,4.3dvh,42px);font-weight:900;position:absolute;top:10.9dvh;transform:translateY(-50%)}#rewards{justify-content:space-between;gap:8px;width:78%;margin:-3% auto 7%;display:flex}.reward{background:linear-gradient(#0000 12%,#19140e9c 85%);border:1px solid #a187554b;border-radius:4px;width:32%;min-height:86px;padding:10px 2px 9px;position:relative}.reward svg{filter:drop-shadow(0 0 5px #30362e);width:90%;height:clamp(55px,8dvh,86px);margin:-8px auto 5px;display:block}.reward strong{text-shadow:0 2px 2px #17130d;font-size:clamp(12px,1.9dvh,20px)}#defeat-reason{width:82%;margin:0 auto 24px;font-size:17px;font-weight:700}#result-panel[data-outcome=defeat] .victory-art{filter:saturate(.35)sepia(.35)}#counter-label{color:#ffe8ba;text-shadow:0 1px #4e2117;font-size:clamp(9px,1.2dvh,12px);font-weight:800;position:absolute;top:50%;left:17px;transform:translateY(-50%)}#pause-label{color:#fff1cf;background:#492315dd;width:calc(100% + 6px);font-size:10px;line-height:15px;position:absolute;top:100%;left:-3px}#start-goal{max-width:90%;margin:0 auto 14px;font-size:14px}#field-guide{margin:0 0 20px;font-size:14px;line-height:1.45}details{text-align:left;margin:0 0 16px;font-size:14px}summary{cursor:pointer;color:#edd393;min-height:32px;padding:7px 0}#result-panel[data-outcome=defeat] #rewards{display:none}#settings-panel{color:#fff2cc;text-align:center;background:linear-gradient(145deg,#243b32,#152b27);border:4px ridge #c2a16a;border-radius:5px;width:min(86%,360px);max-height:88dvh;padding:24px;overflow:auto;box-shadow:inset 0 0 0 2px #18251b,0 10px 45px #0009}#settings-panel::backdrop{background:#101708a6}#settings-panel h2{color:#f5dda3;margin:0 0 7px;font:800 28px Georgia,serif}#settings-note{color:#d3d6bc;margin:0 0 24px;font-size:14px}#settings-mute,.secondary-button{background:#30463b;border:1px solid #aa9767;border-radius:3px;width:100%;margin-bottom:20px;padding:13px 10px;font-weight:700}#settings-mute[aria-pressed=true]{background:#684434;border-color:#dfb473}#settings-panel label{text-align:left;font-size:15px;font-weight:700;display:block}#settings-panel input{accent-color:#c8b273;width:100%;min-height:44px;margin-bottom:10px}#settings-panel .gold-button{width:100%;margin:12px 0;font-size:21px}#settings-panel .secondary-button{background:0 0;margin:0}@keyframes triumph{0%{opacity:0;transform:scale(.75)}to{opacity:1;transform:scale(1)}}@keyframes dim{0%{opacity:0}to{opacity:1}}@media (height<=600px) and (orientation:landscape){#game{width:60dvh}.title-mark{top:18%}.title-kicker{font-size:9px}.start-controls p{font-size:11px}}#campaign-panel{pointer-events:auto;background:linear-gradient(#0d24244a,#0000 27%,#15251d18 48%,#15251def 76%);position:absolute;inset:0;overflow:hidden}.emblem{filter:drop-shadow(0 2px 2px #091c2399);flex:none;width:42px;height:42px}.camp-ribbon{top:max(12px, env(safe-area-inset-top));text-shadow:0 2px 3px #101c13;justify-content:space-between;align-items:center;font-size:12px;font-weight:700;display:flex;position:absolute;left:5%;right:19%}.wallet{color:#b1f2ee;text-shadow:0 2px #182d29;align-items:center;gap:4px;font-size:20px;display:inline-flex}.wallet .emblem{width:26px;height:31px}.camp-title{text-align:center;text-shadow:0 2px 5px #102319;position:absolute;top:12%;left:0;right:0}.camp-title>small{letter-spacing:.19em;color:#e8dbac;font-size:10px;font-weight:800}.camp-title h1{margin:12px 0 0;font-size:clamp(49px,8.2dvh,80px)}.camp-title h1 strong{padding-top:6px}.camp-title p{color:#eddfb9;margin:8px 0;font-size:11px}.campaign-track{background:#0c201ba6;border:1px solid #baaa695c;width:32%;height:4px;margin:18px auto 0}.campaign-track i{background:#e6c272;height:100%;display:block;box-shadow:0 0 8px #f4d372}.camp-orders{bottom:max(12px, env(safe-area-inset-bottom));text-align:center;background:linear-gradient(125deg,#213a31ed,#122823f5);border:1px solid #c3a0649e;width:90%;padding:13px 15px 10px;position:absolute;left:5%;box-shadow:0 0 0 3px #13271e69,0 12px 24px #06161055}.orders-heading{border-bottom:1px solid #c4af6538;justify-content:space-between;align-items:center;margin-bottom:10px;padding-bottom:7px;display:flex}.orders-heading>span:first-child{letter-spacing:.13em;color:#d4c08a;font-size:10px;font-weight:800}.medal-stars{color:#6b7563;text-shadow:0 1px 2px #111;gap:4px;font-size:21px;line-height:1;display:inline-flex}.medal-stars .earned{color:#f1c568;text-shadow:0 0 5px #efb94940,0 1px 2px #111}.camp-orders>small{letter-spacing:.15em;color:#c2c3a5;font-size:9px}.camp-orders h2{color:#f8e8bc;margin:4px 0 6px;font:700 clamp(23px,3.4dvh,32px)/1.1 Georgia,serif}.camp-orders>p{color:#d9ddc5;max-width:290px;margin:0 auto 12px;font-size:12px;line-height:1.4}.camp-orders .gold-button{width:100%;max-width:none;margin:0;font-size:21px}.camp-orders .control-lesson,.camp-orders .checkpoint-note{color:#e2d9b9;margin:8px auto 10px;font-size:11px}.camp-nav{gap:8px;margin:10px 0 3px;display:flex}.camp-nav button{background:#345046;border:1px solid #ad97616e;border-radius:2px;width:50%;min-height:44px;font-size:13px;font-weight:800;position:relative}.new-dot{background:#9febdb;border-radius:50%;width:6px;height:6px;margin:0 0 2px 6px;display:inline-block;box-shadow:0 0 6px #64ffbf88}.text-button{color:#e0d2a6;text-underline-offset:3px;background:0 0;border:0;min-height:44px;margin:0 auto;padding:12px 8px;font-size:13px;text-decoration:underline;display:block}.save-note,.camp-orders>.save-note{color:#acb5a1;letter-spacing:0;text-align:center;margin:0;font-size:10px;display:block}#campaign-panel[data-screen=map],#campaign-panel[data-screen=armory]{background:linear-gradient(130deg,#233b32f5,#112923fa)}.sheet-header{padding:calc(max(12px, env(safe-area-inset-top)) + 45px) 20px 17px;background:#0b221c50;border-bottom:1px solid #ba9a5d57}.sheet-header h2{color:#f3dfaa;margin:10px 0 6px;font:700 27px Georgia,serif}.sheet-header p{color:#b9cbb8;margin:0;font-size:12px}.back-button{color:#e4d5a4;background:0 0;border:0;min-height:44px;padding:8px 10px;font-size:14px;font-weight:700}.sheet-header>.back-button{left:9px;top:max(7px, env(safe-area-inset-top));position:absolute}.sheet-header>.wallet{right:20%;top:max(13px, env(safe-area-inset-top));position:absolute}.map-scroll,.armory-scroll{overscroll-behavior:contain;height:calc(100% - 154px);padding:0 20px max(32px, env(safe-area-inset-bottom));scrollbar-width:thin;scrollbar-color:#8d9869 transparent;overflow:auto}.map-region{padding-top:23px}.map-region h3{letter-spacing:.16em;color:#d0c393;align-items:center;gap:12px;margin:0 0 16px;font-size:10px;display:flex}.map-region h3:after{content:"";background:#b4a3684a;flex:1;height:1px}.map-path{position:relative}.map-path:before{content:"";border-left:2px dashed #b3ae6980;position:absolute;top:5px;bottom:22px;left:25px}.mission-node{text-align:left;background:linear-gradient(115deg,#3c5942,#213a2c);border:1px solid #8c9c6647;border-radius:3px;align-items:center;gap:12px;width:100%;min-height:68px;margin:0 0 11px;padding:9px;display:flex;position:relative}.mission-node.selected{border-color:#e1c681;box-shadow:inset 0 0 0 1px #c5a9576b,0 0 14px #dcbd4925}.mission-node:disabled{cursor:default;opacity:.43;background:#263e33}.node-number{color:#eedfaf;place-items:center;width:38px;height:42px;font:700 21px Georgia,serif;display:grid}.node-number .emblem{width:33px}.node-title{flex:1;font-size:15px;font-weight:700}.node-title .medal-stars{gap:5px;margin-top:5px;font-size:14px;display:flex}.node-arrow{color:#c7c49c;font-size:27px}.boss-node{background:linear-gradient(115deg,#6a5540,#3c392a);border-color:#ba925475}.map-region[data-region=ashlands] .mission-node{background:linear-gradient(115deg,#684c3b,#352e26)}.map-region[data-region=frostwatch] .mission-node{background:linear-gradient(115deg,#45646d,#253c46)}[data-region=frostwatch] h3{color:#c1dce0}.armory-scroll{padding-top:18px}.upgrade-card{background:linear-gradient(130deg,#365047,#20382e);border:1px solid #b2986159;border-radius:3px;grid-template-columns:53px 1fr;gap:3px 12px;margin-bottom:15px;padding:16px 14px 12px;display:grid}.upgrade-card>.emblem{width:53px;height:64px;margin-top:9px}.upgrade-card small{color:#b7c9b8;font-size:10px}.upgrade-card h3{margin:4px 0 6px;font:700 21px Georgia,serif}.upgrade-card p{color:#c4d0bf;margin:0 0 9px;font-size:12px;line-height:1.4}.upgrade-card strong{color:#ede0b3;font-size:13px}.upgrade-card .next-value{color:#8bd4c6;margin:5px 0 9px;font-size:11px}.upgrade-pips{gap:5px;margin:7px 0 12px;display:flex}.upgrade-pips i{background:#102920;border:1px solid #6e816858;width:25px;height:5px}.upgrade-pips .filled{background:#e0bc70}.upgrade-buy{background:linear-gradient(#49604b,#334b3b);border:1px solid #cfb36f;border-radius:2px;grid-column:1/-1;justify-content:center;align-items:center;min-height:44px;font-size:14px;font-weight:800;display:flex}.upgrade-buy .emblem{width:22px;height:25px;margin-right:5px}.upgrade-buy:disabled{cursor:default}.need-crystals{text-align:center;grid-column:1/-1;padding-top:4px}#battle-meta{top:calc(max(7px, env(safe-area-inset-top)) + 44px);color:#fff1cd;text-shadow:0 2px 3px #172717,0 0 5px #10220e;flex-wrap:wrap;justify-content:center;gap:9px;font-size:10px;font-weight:800;display:flex;position:absolute;left:6%;right:6%}#mission-label{text-align:center;width:100%;font-size:12px}#boss-hud{top:calc(max(7px, env(safe-area-inset-top)) + 96px);text-align:center;color:#ffe3bd;text-shadow:0 1px 3px #2b0f07;width:54%;font-size:10px;position:absolute;left:23%}#boss-hud>div{background:#381b1b;border:1px solid #d6ac6d;height:7px;margin-top:4px}#boss-health{transform-origin:0;background:linear-gradient(#df754a,#aa3635);width:100%;height:100%;display:block}#play-hint:empty{display:none}#play-hint{background:#17291bbb;border:1px solid #a99c634d;font-size:13px;line-height:1.4}#play-hint.danger{color:#fff2af;background:#7b241ff0;border-color:#ffae59}#toast{z-index:20;text-align:center;pointer-events:none;background:#153831f2;border:1px solid #d8bd77;width:84%;padding:12px;font-size:13px;position:absolute;bottom:4%;left:8%;box-shadow:0 4px 18px #07120b}#toast:empty{display:none}#replace-panel{color:#f0dfb3;text-align:center;background:#20382e;border:3px ridge #bca16a;width:min(86%,350px);padding:25px}#replace-panel::backdrop{background:#0c2012b9}#replace-panel h2{margin:0 0 14px;font:700 26px Georgia,serif}#replace-panel p{font-size:14px;line-height:1.5}#replace-panel .gold-button{width:100%;max-width:none;margin-bottom:14px;font-size:18px}#replace-panel .secondary-button{margin:0}.campaign-result .result-content{top:12%}.campaign-result #rewards{margin-bottom:2%}.campaign-result #continue{width:70%;max-width:none;font-size:20px}#result-medals{width:76%;margin:15px auto 5px}#result-medals>div{display:none}#result-medals ul{text-align:left;color:#a7afa0;gap:5px;margin:0;padding:0;font-size:13px;list-style:none;display:grid}#result-medals li.earned{color:#f1d391}#result-medals li>span{vertical-align:-1px;width:23px;font-size:20px;display:inline-block}#earned-reward{color:#85e7df;margin:12px 0 4px;font-size:17px;font-weight:800}#reward-detail{color:#c0cbb6;margin:0;font-size:11px}.campaign-result .result-content{flex-direction:column;align-items:center;display:flex}.campaign-result .victory-art{flex-shrink:0}.campaign-result #continue{order:8;margin-top:18px}.campaign-result #result-camp{order:9}.campaign-result #defeat-reason{margin:0 auto 8px;font-size:14px}#result-panel:not(.campaign-result) #result-medals,#result-panel:not(.campaign-result) #reward-detail{display:none}#result-panel:not(.campaign-result) #earned-reward{font-size:13px}.ending-content{text-align:center;background:radial-gradient(at 50% 20%,#98794777,#0000 60%),linear-gradient(#143527ba,#0c211cf5);flex-direction:column;justify-content:center;align-items:center;padding:10%;display:flex;position:absolute;inset:0}.ending-crown{filter:drop-shadow(0 0 25px #f7d87c66);width:120px;height:125px;margin-bottom:12px}.ending-content>small{text-transform:uppercase;letter-spacing:.16em;color:#cfbd89;font-size:10px}.ending-content h2{color:#f2df9e;text-shadow:0 3px #63532e;margin:18px 0;font:800 42px/.95 Georgia,serif}.ending-content p{color:#d0d6bf;font-size:14px;line-height:1.6}.ending-medals{color:#f3cd72;margin:10px 0 0;font:700 53px Georgia,serif}.ending-medals small{color:#c6c9a5;padding-left:6px;font:700 17px Trebuchet MS,sans-serif}.ending-content .gold-button{width:100%;max-width:none;margin:15px 0;font-size:18px}.ending-content .secondary-button{margin-bottom:0;font-size:13px}@media (height<=740px){.camp-title{top:10%}.camp-title h1{font-size:54px}.campaign-track{margin-top:13px}.camp-orders{padding-top:10px;bottom:8px}.camp-orders>p{margin-bottom:8px}.orders-heading{margin-bottom:7px}.campaign-result .result-content{top:9%}.campaign-result .victory-art{height:24dvh}.campaign-result #result-title{top:9.7dvh}.campaign-result #result-medals{margin-top:8px}.campaign-result #continue{margin-top:10px}.campaign-result .reward svg{height:43px}.campaign-result .reward{min-height:67px}.ending-crown{width:90px;height:90px}.ending-content h2{font-size:35px}}.camp-orders{scrollbar-width:thin;max-height:64dvh;overflow:auto}@media (height<=600px){.camp-title{top:9%}.camp-title h1{font-size:44px}.campaign-track{margin-top:8px}}.mission-orders{text-align:center;margin:-4px 0 10px;font-size:12px}.mission-orders summary{min-height:36px;padding:10px 0 6px;font-size:12px}.mission-orders ul{text-align:left;gap:5px;margin:4px 0 8px;padding:0;list-style:none;display:grid}.mission-orders li:before{content:"☆";color:#e2c681;margin-right:8px}.mission-orders p{color:#a9d5c7;font-size:11px;line-height:1.4}.saved-march{padding-top:0;font-size:11px}#settings-panel details[open] #field-guide{max-height:21dvh;overflow:auto}#active-orders{color:#e8d5a0;border-top:1px solid #b9a06c55;padding-top:12px;font-size:12px}#active-orders:empty{display:none}#active-orders ul{color:#d4dcc3;padding:0;line-height:1.7;list-style:none}#game[data-view=camp] .close-square span,#game[data-view=map] .close-square span,#game[data-view=armory] .close-square span,#game[data-view=ending] .close-square span{font-size:36px;line-height:1;transform:none}#battle-meta{background:linear-gradient(90deg,#0000,#173025 15% 85%,#0000);padding:5px 8px}.node-arrow .emblem{width:19px;height:22px}#result-medals>small{text-align:left;text-transform:uppercase;letter-spacing:.1em;color:#b8c1a7;margin-bottom:6px;font-size:10px;display:block}#company-hud{top:calc(max(7px, env(safe-area-inset-top)) + 89px);color:#fff0c8;background:#173025;justify-content:center;gap:15px;padding:2px 6px;font-size:12px;display:flex;position:absolute;left:22%;right:22%}#company-hud>span{grid-template-columns:20px auto;align-items:center;gap:3px;display:grid}#company-hud small{text-align:center;grid-column:1/-1;font-size:10px;line-height:12px}#company-hud .emblem{width:20px;height:22px}#boss-hud{top:calc(max(7px, env(safe-area-inset-top)) + 139px)}.carry-note{color:#edf0d5;max-width:300px;margin:7px auto 0;font-size:12px;line-height:1.35;display:block}#boss-state{background:#20291edf;padding:3px;font-size:11px;display:block}#boss-hud>#boss-plating{background:linear-gradient(90deg, #94d2dc calc(var(--plating) * 100%), #293c40 0);border-color:#87bbc6;height:5px}.company-guide{border-top:1px solid #a9976355;margin-top:14px;padding-top:14px}.company-guide>p{font-size:12px}.company-guide>div{align-items:center;gap:9px;margin:12px 0;display:flex}.company-guide .emblem{width:34px;height:40px}.company-guide p{margin:0}.company-guide small{margin-top:4px;font-size:12px;line-height:1.4;display:block}.mission-objective{text-align:left;border-top:1px solid #ac985e80;border-bottom:1px solid #ac985e80;gap:10px;margin:14px 0;padding:12px 0;display:flex}.mission-objective .emblem{flex:0 0 30px;height:38px}.mission-objective small{color:#c6bd8d;letter-spacing:.08em;font-size:10px;display:block}.mission-objective strong{color:#f8e5aa;margin-top:4px;font-size:17px;display:block}.camp-orders .mission-objective p{margin:6px 0 0;font-size:12px;line-height:1.4}#campaign-panel[data-screen=camp] .camp-orders{scrollbar-width:thin;max-height:71%;overflow-y:auto}#campaign-panel[data-screen=camp] .camp-title{top:9%}#campaign-panel[data-screen=camp] .camp-title h1{font-size:clamp(40px,6.2dvh,64px)}#support-bar{bottom:27dvh;right:max(8px, env(safe-area-inset-right));pointer-events:none;color:#fff0c8;width:76px;position:absolute}#support-bar button{pointer-events:auto;color:#fff0c8;background:#19382bed;border:1px solid #b8a16b;width:100%;min-height:58px;padding:6px 3px;box-shadow:0 2px 5px #071b1966}#support-bar b,#support-bar small{display:block}#support-bar b{font-size:12px}#support-bar small{font-size:10px;line-height:1.3}#support-bar button:disabled{opacity:.5}.formation-switch{margin-bottom:10px}.formation-dots{background:radial-gradient(circle,#8fc3e6 2px,#0000 3px) 0 0/10px 9px;width:30px;height:18px;margin:0 auto 3px;display:block}[data-current=line] .formation-dots{background-size:9px 6px;width:18px}.support-heading{text-align:center;background:#10261deb;padding:4px 0}.support-actions{gap:6px;display:grid}.support-actions button{grid-template-columns:20px 1fr;align-content:center;align-items:center;column-gap:3px;display:grid}.support-actions .emblem{grid-row:span 2;width:20px;height:23px}#support-bar .formation-switch b{font-size:11px}.support-actions [aria-pressed=true]{background:#715126;border-color:#ffe6a3}.aim-instructions{text-align:center;background:#243223f2;border:1px solid #e6c580;width:min(300px,84vw);padding:8px;position:absolute;bottom:-22dvh;right:0}#support-bar[data-aiming=true]>.formation-switch,#support-bar[data-aiming=true]>.support-heading,#support-bar[data-aiming=true]>.support-actions{visibility:hidden}.aim-instructions p{margin:0 0 8px;font-size:13px;line-height:1.4}#support-bar .aim-instructions button{min-height:44px}#game[data-view=battle]:has(#support-bar:not([hidden])) #play-hint{pointer-events:none;width:auto;font-size:13px;inset:24% 8% auto}#steering-cue{bottom:max(35px, env(safe-area-inset-bottom));text-align:center;color:#f4e8be;text-shadow:0 2px 4px #10251e;pointer-events:none;font-size:13px;position:absolute;left:10%;right:10%}@media (height<=650px){#campaign-panel[data-screen=camp] .camp-title{top:9%}#campaign-panel[data-screen=camp] .camp-title h1{margin-top:5px;font-size:33px}#campaign-panel[data-screen=camp] .camp-title strong{padding:0;display:inline}#campaign-panel[data-screen=camp] .camp-title .campaign-track,#campaign-panel[data-screen=camp] .camp-title>p{display:none}#campaign-panel[data-screen=camp] .camp-orders{max-height:75%}}#game:has(#support-bar:not([hidden])) #boss-hud{top:calc(max(7px, env(safe-area-inset-top)) + 120px)}#game[data-view=battle] #mission-label{display:none}#game[data-view=battle] #battle-meta{top:calc(max(7px, env(safe-area-inset-top)) + 40px);padding:3px 5px}#game[data-view=battle] #company-hud{top:calc(max(7px, env(safe-area-inset-top)) + 60px);background:#173025}.campaign-result{overflow-y:auto}.campaign-result .result-content{padding-bottom:max(10px, env(safe-area-inset-bottom))}@media (height<=620px){.campaign-result .result-content{top:6%}.campaign-result .victory-art{height:20dvh}.campaign-result #result-title{top:8.1dvh}}#game[data-view=battle]:has(#support-bar:not([hidden])) #toast{bottom:calc(145px + env(safe-area-inset-bottom))}#game[data-view=battle]:has(#support-bar:not([hidden])) #toast[data-kind=supply]{top:24%;bottom:auto}#game[data-view=battle]:has(#play-hint:not(:empty),#choice-hud:not([hidden])) #toast{visibility:hidden}#reset-panel{color:#f4e4b4;background:#19352a;border:2px solid #b69a62;max-width:min(350px,90vw);padding:20px}#reset-panel::backdrop{background:#06120cba}#reset-panel h2{margin:0 0 12px;font:700 24px Georgia,serif}#reset-panel p{font-size:14px;line-height:1.5}#reset-panel button{width:100%;min-height:48px;margin-top:10px}
