:root{color:#eee5cf;font-synthesis:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--gold:#dab66f;--muted:#b6bdb4;--line:#bba26b38;background:#101b20;font-family:Segoe UI,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}#app{flex-direction:column;height:100dvh;display:flex;overflow:hidden}button,input,select{font:inherit}button,summary{cursor:pointer}button,select,input{color:inherit;background:#213238;border:1px solid #83918366;border-radius:4px}button{padding:.55rem .65rem;font-size:.78rem}button:hover,summary:hover{border-color:var(--gold);background:#35464a}button:disabled{opacity:.46;cursor:default}:where(button,input,select,summary):focus-visible{outline-offset:3px;outline:2px solid #ffe1a2}button.primary{color:#1b2526;background:linear-gradient(120deg,#d9ba7c,#b58b45);border-color:#edcf91;font-weight:750}button.primary:hover{background:#efcf8c}button.primary kbd{color:#283435;border-color:#3e3d2870}h1,h2{font-family:Georgia,Times New Roman,DejaVu Serif,serif;font-weight:400}h1{white-space:nowrap;letter-spacing:.025em;margin:0;font-size:1.65rem}h1 span{color:var(--gold);font-style:italic}h2{margin:0;font-size:1.25rem}p{color:var(--muted);margin:.6rem 0;font-size:.78rem;line-height:1.5}small{color:var(--muted);font-size:.7rem}.masthead{border-bottom:1px solid var(--line);background:#152228;align-items:center;gap:1.5rem;min-height:76px;padding:.75rem 1.5rem;display:flex}.brand{align-items:center;gap:.8rem;margin-right:auto;display:flex}.crest{color:var(--gold);font-size:2.4rem;line-height:1}.eyebrow{text-transform:uppercase;letter-spacing:.2em;color:var(--gold);margin:0 0 .2rem;font-size:.58rem}.phase{color:#dbc28e;letter-spacing:.09em;text-transform:uppercase;font-size:.72rem}nav{align-items:center;gap:.5rem;display:flex}nav button,nav summary{min-height:36px}summary{color:#d9c595;border-radius:3px;padding:.55rem .2rem;font-size:.75rem}nav summary{border:1px solid var(--line);padding:.5rem .65rem;list-style:none}details{position:relative}.popover{z-index:20;background:#17282e;border:1px solid #a88b53;border-radius:5px;width:250px;padding:1rem;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 10px 40px #0009}.popover label{margin:.7rem 0 .4rem}.popover input{max-width:100%}#volume{width:100%;accent-color:var(--gold)}#volume-value{float:right}#audio-status{margin-top:.5rem;display:block}.hud{font-variant-numeric:tabular-nums;border-bottom:1px solid var(--line);background:#1c2c31;align-items:center;gap:1.7rem;min-height:38px;padding:.5rem 1.5rem;font-size:.75rem;display:flex}#hud-round{color:var(--gold);margin-right:auto}main{flex:1;grid-template-columns:minmax(0,1fr) 370px;min-height:0;display:grid}.battlefield{background:#1d2e32;flex-direction:column;min-width:0;min-height:0;display:flex;position:relative}.scene-caption,.scene-footer{justify-content:space-between;align-items:center;gap:.8rem;min-height:40px;padding:.6rem 1rem;font-size:.67rem;display:flex}.scene-caption{text-transform:uppercase;letter-spacing:.12em;color:#dbca9f}.map-subtitle{color:#9baaa5}#scene-hint{text-transform:none;letter-spacing:0;color:var(--muted)}#viewport{flex:1;width:100%;min-height:0;position:relative;overflow:hidden}#viewport canvas{touch-action:none;width:100%;height:100%;display:block}#viewport .scene-quality{background:#15272be8;border-color:#bba26b80;border-radius:3px}#viewport .scene-quality select{background:#24363a}.scene-footer{border-top:1px solid var(--line);min-height:49px}#aim-status{color:#ebd8aa;line-height:1.4}#aim-status[data-legal=false]{color:#ffc2ac}#camera{white-space:nowrap}#render-error{border:1px solid var(--gold);background:#162329;padding:1rem;position:absolute;top:20%;left:10%;right:10%}aside{border-left:1px solid var(--line);background:linear-gradient(145deg,#25353a,#17262c 70%);flex-direction:column;min-width:0;min-height:0;display:flex}.phase-panel{flex-direction:column;flex:1;min-height:0;display:flex}.panel-scroll{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#9d8c61 #1b2b30;flex:1;min-height:0;padding:1rem;overflow:auto}.panel-heading{justify-content:space-between;align-items:baseline;gap:.4rem;margin-bottom:.85rem;display:flex}#round-status{color:var(--gold);white-space:nowrap;font-size:.67rem}.field-heading,label{color:#d4c6a8;margin:0 0 .35rem;font-size:.7rem;display:block}.field-heading{justify-content:space-between;display:flex}.key-hint{color:#9baba7;font-size:.65rem;font-weight:400}kbd{color:#c5cabd;border:1px solid #b9b19a55;border-radius:3px;margin-left:.2rem;padding:.05rem .22rem;font:.65rem system-ui}.sites{grid-template-columns:1fr 1fr;gap:.4rem;display:grid}.site{text-align:left;min-height:37px;font-size:.72rem;line-height:1.35}.site[aria-pressed=true]{border-color:var(--gold);color:#ffe3a5;box-shadow:inset 3px 0 var(--gold);background:#77633b40}.detail{color:#b6c0b6;min-height:48px;padding:.55rem 0 .7rem;font-size:.7rem;line-height:1.45}.loadout{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}select{width:100%;min-width:0;margin-top:.25rem;padding:.5rem .35rem;font-size:.76rem}#target{margin-top:0}#action-preview{border-left:2px solid var(--gold);color:#e4d8ba;background:#0b1b2166;margin:.65rem 0 .25rem;padding:.65rem .7rem;font-size:.73rem}#action-preview[data-legal=false]{color:#ffc2ac;border-color:#df9274}.intelligence{border-top:1px solid var(--line);margin-top:.65rem}#round-report{color:#e2c78b}.action-dock{border-top:1px solid var(--line);background:#1c2d32;grid-template-columns:1fr auto;gap:.5rem;padding:.75rem 1rem;display:grid}.action-dock button{min-height:39px}#skip{border-color:var(--gold);grid-column:1/-1}.deck-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding:.45rem 1rem;display:flex}#restart{color:#b9c2b7;background:0 0;border:0;padding:.4rem 0;font-size:.7rem}#game-details .popover{max-height:65dvh;top:auto;bottom:calc(100% + 8px);overflow:auto}.seed-form{flex-wrap:wrap;gap:.4rem;margin:.7rem 0;display:flex}.seed-form label{width:100%}input{width:8rem;padding:.5rem}#tutorial{color:#2c3430;background:#e7d4a9;border-bottom:1px solid #ccb477;flex-shrink:0;padding:.65rem 1rem}.tutorial-heading{justify-content:space-between;align-items:center;font-size:.76rem;display:flex}#tutorial-close{color:#2c3430;background:0 0;border:none;padding:0 .3rem;font-size:1.1rem}#tutorial p{color:#36433b;margin:.25rem 0;font-size:.72rem}#tutorial-next{color:#35483d;background:0 0;border:0;padding:.2rem 0;font-size:.7rem;text-decoration:underline}.tutorial-focus{outline:2px solid var(--gold);outline-offset:3px}.battle-guide{margin-top:0}#formations{grid-template-columns:1fr;gap:.3rem;margin-bottom:.7rem}#formations .site{min-height:33px;padding:.4rem .5rem}.button-row,.attack-row{gap:.4rem;margin:.5rem 0 .65rem;display:flex}.button-row button{flex:1}.attack-row select{flex:1;margin:0}.attack-row button{white-space:nowrap}#order-status{color:#e3cc95}#battle-status{font-size:.7rem}#move-order{flex-wrap:wrap;gap:.5rem;display:flex}#move-order input{width:5rem;display:block}#result{color:#e9d8ae;padding:1.5rem;font-size:.95rem;line-height:1.8}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}[hidden]{display:none!important}@media (width>=901px) and (height<=760px){.masthead{min-height:65px;padding-top:.5rem;padding-bottom:.5rem}.panel-scroll{padding:.75rem 1rem}.panel-heading{margin-bottom:.6rem}#tutorial{padding-top:.4rem;padding-bottom:.4rem}.detail{padding-bottom:.4rem}}@media (width<=900px) and (height>=551px){.masthead{gap:.5rem;min-height:65px;padding:.6rem .8rem}h1{font-size:1.3rem}.crest{font-size:1.8rem}.brand{gap:.45rem}.eyebrow{letter-spacing:.13em;font-size:.48rem}.phase{max-width:75px;font-size:.55rem}nav{gap:.3rem}nav span{display:none}nav button,nav summary{padding:.45rem .65rem}.hud{gap:.7rem;min-height:32px;padding:.4rem .7rem;font-size:.64rem}main{grid-template-rows:minmax(180px,36%) minmax(0,1fr);grid-template-columns:1fr}.scene-caption{min-height:29px;padding:.4rem .7rem;font-size:.6rem}.map-subtitle{display:none}.scene-footer{min-height:39px;padding:.25rem .7rem;font-size:.62rem}#camera{padding:.35rem .5rem}#camera span{display:none}aside{border-left:0;border-top:1px solid var(--line)}.panel-scroll{padding:.7rem .85rem}.panel-heading{margin-bottom:.5rem}.site{min-height:36px}.detail{min-height:0}.action-dock{padding:.55rem .85rem}.deck-footer{padding:.25rem .85rem}#tutorial{padding:.4rem .85rem}}@media (height<=550px){.masthead{min-height:46px;padding:.3rem .8rem}.eyebrow{display:none}h1{font-size:1.3rem}.crest{font-size:1.6rem}.hud{min-height:28px;padding:.3rem .8rem;font-size:.65rem}main{grid-template-columns:minmax(0,1fr) minmax(300px,41%)}.scene-caption{min-height:28px;padding:.3rem .6rem}#scene-hint,.map-subtitle{display:none}.scene-footer{padding:.3rem .6rem;font-size:.6rem}#camera span{display:none}.panel-scroll{padding:.6rem .8rem}.action-dock{padding:.4rem .8rem}.action-dock button{min-height:34px}.deck-footer{padding:.2rem .8rem}#tutorial{padding:.3rem .8rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important}}#action-feedback{color:#e8cf98;grid-column:1/-1;margin:0;font-size:.7rem}#result h2{color:#f1d394;margin-bottom:1.1rem;font-size:1.5rem}#result p{border-bottom:1px solid var(--line);padding-bottom:.8rem;font-size:.85rem}#viewport{position:relative}.scene-quality{color:#f4e4c3;background:#21332de8;border:1px solid #b5b99a80;border-radius:4px;align-items:center;gap:.5rem;padding:.35rem .55rem;font-size:.7rem;display:flex;position:absolute;top:.65rem;left:.75rem}.scene-quality select{width:auto;color:inherit;background:#263e37;padding:.2rem .35rem;font-size:.7rem}
