@property --p{syntax:"<percentage>";inherits:false;initial-value:0%}:root{--bg:#070b0d;--bg-2:#0c1215;--panel:#0e1518f0;--panel-2:#131c20f0;--line:#a7beb82e;--line-strong:#a7beb857;--ink:#d8e2dd;--ink-dim:#8d9d98;--ink-faint:#61706c;--amber:#e0a34a;--amber-soft:#f1c27e;--blue:#52c5e6;--blue-soft:#a6e8f8;--red:#ef6c4d;--red-soft:#ffb29b;--green:#86c791;--mono:"SFMono-Regular", "Cascadia Mono", "Roboto Mono", Consolas, monospace;--sans:"Inter", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--display:"Bahnschrift", "DIN Alternate", "DIN Condensed", "Roboto Condensed", "Arial Narrow", "Helvetica Neue", sans-serif;--shadow:0 18px 60px #00000075;--radius:3px;--scroll-size:8px;--scroll-track:#03070894;--scroll-thumb:#a7beb83d;--scroll-thumb-hover:#e0a34a94;--scroll-thumb-active:#e0a34ad6;--scroll-edge:#a7beb81f}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:var(--scroll-thumb) var(--scroll-track)}::-webkit-scrollbar{width:var(--scroll-size);height:var(--scroll-size)}::-webkit-scrollbar-track{background:var(--scroll-track);box-shadow:inset 0 0 0 1px var(--scroll-edge)}::-webkit-scrollbar-thumb{background:var(--scroll-thumb);background-clip:padding-box;border:1px solid #0000;border-radius:0;min-width:28px;min-height:28px}::-webkit-scrollbar-thumb:hover{background-color:var(--scroll-thumb-hover)}::-webkit-scrollbar-thumb:active{background-color:var(--scroll-thumb-active)}::-webkit-scrollbar-button{width:0;height:0;display:none}::-webkit-scrollbar-corner{background:var(--scroll-track)}html,body{background:var(--bg);height:100%;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;overscroll-behavior:none;margin:0;overflow:hidden}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}.hidden{display:none!important}.mono{font-family:var(--mono)}#app{width:100%;height:100%;position:relative;overflow:hidden}#stage{position:absolute;inset:0}#gl{touch-action:none;width:100%;height:100%;display:block;position:absolute;inset:0}#overlay{touch-action:none;width:100%;height:100%;position:absolute;inset:0}#hud-root{pointer-events:none;position:absolute;inset:0}#hud-root>*{pointer-events:auto}.screen{z-index:40;position:absolute;inset:0}.btn{border:1px solid var(--line-strong);color:var(--ink);border-radius:var(--radius);letter-spacing:.08em;text-transform:uppercase;background:#172124d1;justify-content:center;align-items:center;gap:8px;padding:9px 14px;font-size:12px;transition:background .12s,border-color .12s,transform .12s;display:inline-flex}.btn:hover{border-color:var(--amber);background:#263336eb}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.42;cursor:not-allowed}.btn-primary{background:var(--amber);border-color:var(--amber);color:#191307;font-weight:700}.btn-primary:hover{background:var(--amber-soft);border-color:var(--amber-soft)}.btn-danger{color:var(--red-soft);border-color:#ef6c4d99}.btn-large{justify-content:flex-start;gap:16px;min-width:310px;padding:14px 18px}.btn-ghost{background:#0a0f118c}.btn-kicker{font-family:var(--mono);opacity:.65;border-right:1px solid #00000040;padding-right:10px;font-size:10px}.icon{flex:none;width:18px;height:18px;display:inline-block}.icon svg{width:100%;height:100%;display:block}.hotkey{font-family:var(--mono);color:var(--ink-faint);border:1px solid var(--line);border-radius:2px;padding:1px 4px;font-size:9px}.intro-screen{z-index:90;background:#000;place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.intro-grid{pointer-events:none;transform-origin:50% 0;background-image:linear-gradient(#a0beb40f 1px,#0000 1px),linear-gradient(90deg,#a0beb40b 1px,#0000 1px);background-size:64px 64px;animation:9s linear infinite intro-grid-drift;position:absolute;inset:calc(50% + min(28vmin,220px) + 26px) -30% -30%;transform:perspective(620px)rotateX(62deg);-webkit-mask-image:linear-gradient(#0000 0%,#000 9% 62%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 9% 62%,#0000 100%)}.intro-gate{z-index:6;background:radial-gradient(at 50% 46%,#090f11d1,#000000f5 62%),#000;place-items:center;transition:opacity .42s;display:grid;position:absolute;inset:0}.intro-screen.started .intro-gate{opacity:0;pointer-events:none}.intro-start{min-width:min(330px,76vw);color:var(--ink);text-transform:uppercase;background:#080d0fc7;border:1px solid #e0a34a6b;flex-direction:column;align-items:center;gap:10px;padding:24px 36px 21px;transition:border-color .16s,background .16s,transform .16s;animation:.9s ease-out both intro-gate-in;display:flex}.intro-start:hover,.intro-start:focus-visible{border-color:var(--amber);background:#e0a34a14;outline:none;transform:translateY(-1px)}.intro-start-kicker{font-family:var(--mono);letter-spacing:.32em;color:var(--ink-faint);font-size:8.5px}.intro-start-title{font-family:var(--display);letter-spacing:.12em;color:var(--amber-soft);font-size:clamp(18px,3vw,26px);font-stretch:88%}.intro-start-note{font-family:var(--mono);letter-spacing:.2em;color:var(--ink-dim);font-size:8px}.intro-screen:not(.started) .intro-skip{visibility:hidden}@keyframes intro-gate-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.intro-frame{aspect-ratio:1;place-items:center;width:min(56vmin,440px);display:grid;position:relative}.intro-video{object-fit:contain;opacity:0;background:#000;width:100%;height:100%}.intro-screen.playing .intro-video{animation:.76s cubic-bezier(.2,.7,.2,1) forwards intro-reveal}.intro-bracket{opacity:0;pointer-events:none;border:1px solid #e0a34a8c;width:20px;height:20px;position:absolute}.intro-bracket.tl{border-bottom:0;border-right:0;animation-delay:.24s;top:6%;left:6%}.intro-bracket.tr{border-bottom:0;border-left:0;animation-delay:.3s;top:6%;right:6%}.intro-bracket.bl{border-top:0;border-right:0;animation-delay:.36s;bottom:6%;left:6%}.intro-bracket.br{border-top:0;border-left:0;animation-delay:.42s;bottom:6%;right:6%}.intro-screen.playing .intro-bracket{animation:.52s ease-out forwards intro-bracket}.intro-meta{left:max(38px, env(safe-area-inset-left,0px));flex-direction:column;gap:5px;display:flex;position:absolute;bottom:34px}.intro-stamp{font-family:var(--mono);letter-spacing:.3em;color:var(--ink-dim);font-size:9px}.intro-stamp.dim{letter-spacing:.22em;color:var(--ink-faint);font-size:8px}.intro-progress{opacity:0;background:#ffffff1a;width:min(280px,44vw);height:1px;position:absolute;bottom:82px;left:50%;overflow:hidden;transform:translate(-50%)}.intro-screen.playing .intro-progress{opacity:1;transition:opacity .4s .5s}.intro-progress i{background:var(--amber);transform-origin:0;width:100%;height:100%;display:block;transform:scaleX(0)}.intro-screen.playing .intro-progress i{animation:intro-progress var(--intro-duration,4.1s) linear forwards}.intro-skip{right:max(34px, env(safe-area-inset-right,0px));min-height:44px;color:var(--ink-dim);font-family:var(--mono);letter-spacing:.22em;background:#0a0f118c;border:1px solid #a7beb838;align-items:center;gap:8px;padding:0 18px;font-size:9px;transition:border-color .14s,color .14s,background .14s;display:inline-flex;position:absolute;bottom:28px}.intro-skip:hover{border-color:var(--amber);color:var(--amber-soft);background:#e0a34a14}.intro-screen.done{opacity:0;pointer-events:none;transition:opacity .6s}.intro-engine{z-index:2;opacity:0;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex;position:absolute;inset:0}.intro-engine-mark{filter:drop-shadow(0 0 26px #e0a34a47);width:clamp(76px,11vmin,104px);height:auto;margin-bottom:14px}.intro-engine-name{font-family:var(--display);letter-spacing:.34em;text-transform:uppercase;color:var(--ink);padding-left:.34em;font-size:clamp(22px,4.4vmin,34px);font-weight:700;font-stretch:84%;line-height:1}.intro-engine-rule{background:var(--amber);transform-origin:50%;width:clamp(80px,14vmin,132px);height:1px;margin:12px 0 10px;transform:scaleX(0)}.intro-engine-sub{font-family:var(--mono);letter-spacing:.3em;color:#e0a34ab8;text-transform:uppercase;font-size:8px}.intro-screen.engine .intro-engine{animation:.8s cubic-bezier(.2,.7,.2,1) forwards intro-engine-in}.intro-screen.engine .intro-engine-rule{animation:.7s cubic-bezier(.2,.7,.2,1) .22s forwards intro-engine-rule}.intro-screen.engine .intro-frame,.intro-screen.engine .intro-fallback,.intro-screen.engine .intro-meta{opacity:0;transition:opacity .46s}.intro-screen.engine .intro-progress{transition:opacity .3s;opacity:0!important}@keyframes intro-engine-in{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:none}}@keyframes intro-engine-rule{to{transform:scaleX(1)}}.intro-logo{z-index:3;opacity:0;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:18px;display:flex;position:absolute;inset:0}.intro-logo .intro-game-logo{--logo-size:clamp(104px, 17vmin, 146px);transform-origin:0 0;will-change:transform;filter:drop-shadow(0 0 44px #e0a34a24)}.intro-logo .game-logo-full{display:none}.intro-logo-sub{font-family:var(--mono);letter-spacing:.32em;color:var(--ink-faint);margin:0;font-size:9px;transition:opacity .26s}.intro-screen.logo .intro-engine{animation:.42s forwards intro-engine-out}.intro-screen.logo .intro-logo{animation:.76s cubic-bezier(.2,.7,.2,1) forwards intro-logo-in}@keyframes intro-engine-out{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(-10px)}}@keyframes intro-logo-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:none}}.intro-screen.flying{background:0 0;transition:background .72s}.intro-screen.flying .intro-grid,.intro-screen.flying .intro-meta,.intro-screen.flying .intro-skip,.intro-screen.flying .intro-progress,.intro-screen.flying .intro-logo-sub{opacity:0;transition:opacity .3s}.intro-screen.flying .intro-skip{pointer-events:none}.intro-screen.flying .intro-game-logo{transition:transform .72s cubic-bezier(.35,0,.2,1)}.menu-screen.handoff .menu-topbar .game-logo,.menu-screen.handoff .menu-topbar .game-tagline{opacity:0}@keyframes intro-grid-drift{0%{background-position:0 0,0 0}to{background-position:0 64px,64px 0}}@keyframes intro-reveal{0%{opacity:0;transform:scale(.93)}to{opacity:1;transform:none}}@keyframes intro-bracket{0%{opacity:0;transform:scale(1.25)}to{opacity:.75;transform:none}}@keyframes intro-progress{to{transform:scaleX(1)}}.menu-screen{background:radial-gradient(at 82% 14%,#e0a34a1a,#0000 50%),linear-gradient(102deg,#04080af7 0%,#04080ae0 30%,#050a0c8f 60%,#050a0c33 100%);flex-direction:column;display:flex;overflow:hidden}.menu-screen:before{content:"";pointer-events:none;background-image:linear-gradient(#ffffff05 1px,#0000 1px),linear-gradient(90deg,#ffffff04 1px,#0000 1px);background-size:56px 56px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#000,#0000 74%);mask-image:linear-gradient(90deg,#000,#0000 74%)}.menu-screen:after{content:"";pointer-events:none;background:linear-gradient(#00000059,#0000 18% 82%,#00000073);position:absolute;inset:0}.menu-crt{z-index:1;pointer-events:none;opacity:.6;background:repeating-linear-gradient(#00000042 0 1px,#0000 1px 3px),radial-gradient(at 58% 46%,#0000 48%,#0000008c 100%);animation:7s steps(28,end) infinite crt-flicker;position:absolute;inset:0;overflow:hidden}.menu-crt:before{content:"";background:linear-gradient(#0000,#a0dcd213,#0000);height:22%;animation:8.5s linear infinite crt-roll;position:absolute;top:-22%;left:0;right:0}.menu-crt:after{content:"";opacity:0;mix-blend-mode:screen;background:repeating-linear-gradient(#0000 0 7px,#96fff033 7px 9px,#0000 9px 27px),linear-gradient(90deg,#ff50501c,#0000 44%,#50e6ff1c);animation:9.1s step-end infinite jam-tear;position:absolute;inset:-2px}#app.menu-mode #gl{animation:9.1s step-end infinite jam-map}#app.glitching .menu-grid{animation:.56s step-end both menu-switch-tear}#app.glitching .menu-crt:after{animation:.56s step-end both menu-switch-jam}#app.menu-mode.glitching #gl{animation:.56s step-end both menu-switch-jam-map}#app.glitching .menu-view-head>*,#app.glitching .menu-points li,#app.glitching .menu-columns>*,#app.glitching .menu-settings .setting-row,#app.glitching .menu-actions>.btn{animation:.36s cubic-bezier(.2,.7,.2,1) both menu-copy-in}#app.glitching .menu-view-head>:nth-child(2){animation-delay:70ms}#app.glitching .menu-view-head>:nth-child(3){animation-delay:.13s}#app.glitching .menu-columns>:first-child{animation-delay:.15s}#app.glitching .menu-columns>:nth-child(2){animation-delay:.22s}#app.glitching .menu-points li:first-child{animation-delay:.12s}#app.glitching .menu-points li:nth-child(2){animation-delay:.175s}#app.glitching .menu-points li:nth-child(3){animation-delay:.23s}#app.glitching .menu-settings .setting-row:nth-child(2){animation-delay:60ms}#app.glitching .menu-settings .setting-row:nth-child(3){animation-delay:.11s}#app.glitching .menu-settings .setting-row:nth-child(4){animation-delay:.16s}#app.glitching .menu-actions>.btn:nth-child(2){animation-delay:90ms}@keyframes menu-switch-tear{0%{filter:none;transform:none}10%{filter:contrast(1.16)brightness(1.05);transform:translate(-7px)skew(-.45deg)}22%{filter:none;transform:translate(6px)}34%{filter:contrast(1.08);transform:translate(-4px)skew(.25deg)}48%{filter:none;transform:translate(2px)}64%,to{filter:none;transform:none}}@keyframes menu-switch-jam{0%{opacity:0;transform:none}10%{opacity:.7;transform:translate(-4px)}22%{opacity:.35;transform:translate(5px)}34%{opacity:.6;transform:translate(-3px)}48%{opacity:.25;transform:translate(2px)}64%,to{opacity:0;transform:none}}@keyframes menu-switch-jam-map{0%{filter:none;transform:none}10%{filter:saturate(1.4)hue-rotate(-10deg);transform:translate(-6px,2px)scale(1.02)skew(.5deg)}22%{filter:saturate(.6)contrast(1.2);transform:translate(5px,-2px)scale(1.02)}34%{filter:none;transform:translate(-3px,1px)scale(1.02)skew(-.3deg)}48%{filter:none;transform:translate(2px)scale(1.02)}64%,to{filter:none;transform:none}}@keyframes menu-copy-in{0%{opacity:0;clip-path:inset(0 0 100%);transform:translateY(9px)}to{opacity:1;clip-path:inset(0);transform:none}}@keyframes crt-flicker{0%,to{opacity:.6}37%{opacity:.54}38%{opacity:.66}61%{opacity:.58}62%{opacity:.63}}@keyframes crt-roll{0%{transform:translateY(0)}to{transform:translateY(560%)}}@keyframes jam-tear{0%,90%,to{opacity:0;transform:none}90.2%{opacity:.55;transform:translate(-3px)}90.7%{opacity:.28;transform:translate(4px)}91.2%{opacity:.6;transform:translate(-2px)}91.7%{opacity:.18;transform:translate(1px)}92.2%{opacity:0;transform:none}}@keyframes jam-map{0%,90%,to{filter:none;transform:none}90.2%{filter:saturate(1.45)contrast(1.16)hue-rotate(-8deg);transform:translate(-5px,2px)scale(1.02)skew(.5deg)}90.7%{filter:saturate(.5)contrast(1.3)brightness(1.08);transform:translate(4px,-2px)scale(1.02)skew(-.35deg)}91.2%{filter:saturate(1.2)contrast(1.1);transform:translate(-2px,1px)scale(1.02)}91.7%{filter:none;transform:translate(2px)scale(1.02)skew(.2deg)}92.2%{filter:none;transform:none}}.menu-atmos{pointer-events:none;position:absolute;inset:0;overflow:hidden}.menu-atmos:before{content:"";background:radial-gradient(circle at 34% 38%,#52c5e617,#0000 40%),radial-gradient(circle at 68% 74%,#e0a34a14,#0000 42%);animation:28s ease-in-out infinite alternate menu-atmos;position:absolute;inset:-30%}@keyframes menu-atmos{0%{transform:translate(-1.5%,-1%)scale(1)}to{transform:translate(2%,1.5%)scale(1.06)}}.menu-topbar{z-index:3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:linear-gradient(#04080ab8,#04080a2e);border-bottom:1px solid #a7beb81f;justify-content:space-between;align-items:center;gap:20px;padding:16px 30px;display:flex;position:relative}.brand-lockup{flex-wrap:wrap;align-items:flex-end;gap:0 16px;display:flex}.game-logo{--logo-size:clamp(56px, 4.6vw, 68px);align-items:center;gap:calc(var(--logo-size) * .235);margin:0;display:flex}.game-logo-mark{width:var(--logo-size);height:var(--logo-size);filter:drop-shadow(0 4px #00000057)drop-shadow(0 0 30px #e0a34a29);flex:none;display:block}.game-logo-full{height:var(--logo-size);padding-left:calc(var(--logo-size) * .22);font-family:var(--display);font-weight:700;font-stretch:85%;font-size:calc(var(--logo-size) * .225);letter-spacing:.2em;text-transform:uppercase;color:var(--ink);white-space:nowrap;border-left:0;flex-direction:column;justify-content:space-between;align-self:center;line-height:1;display:flex;position:relative}.game-logo-full b{font-weight:inherit;display:block}.game-logo-full b i{color:var(--amber-soft);font-style:normal}.game-logo-full:before{content:"";transform-origin:top;background:#e0a34a80;width:1px;position:absolute;top:0;bottom:0;left:0}.menu-screen.docked .menu-topbar .game-logo-full:before{animation:.26s cubic-bezier(.3,0,.2,1) both logo-rule}.menu-screen.docked .menu-topbar .game-logo-full b{animation:.26s steps(7,end) both logo-type}.menu-screen.docked .menu-topbar .game-logo-full b:first-child{animation-delay:.12s}.menu-screen.docked .menu-topbar .game-logo-full b:nth-child(2){animation-delay:.23s}.menu-screen.docked .menu-topbar .game-logo-full b:nth-child(3){animation-delay:.34s}.menu-screen.docked .menu-topbar .game-tagline{animation:.32s .52s both logo-caption}@keyframes logo-rule{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes logo-type{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes logo-caption{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}.game-tagline{text-align:right;white-space:nowrap;font-family:var(--mono);letter-spacing:.22em;color:var(--ink-faint);margin:0;font-size:9px}.menu-footer-link{cursor:pointer;min-height:28px;color:var(--ink-dim);font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;background:0 0;border:0;border-bottom:1px solid #0000;margin:-8px -3px -8px 0;padding:0 3px;font-size:8.5px;transition:color .14s,border-color .14s}.menu-footer-link:hover{color:var(--amber-soft);border-color:#e0a34a80}.menu-grid{z-index:2;flex:1;grid-template-columns:286px minmax(0,1fr);min-height:0;display:grid;position:relative}.menu-nav{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:linear-gradient(90deg,#050a0cdb,#050a0c2e);border-right:1px solid #a7beb81a;flex-direction:column;gap:4px;min-height:0;padding:24px 18px 24px 26px;display:flex;overflow-y:auto}.menu-nav-head{font-family:var(--mono);letter-spacing:.28em;color:var(--ink-faint);margin:0 0 10px 18px;font-size:8px}.menu-nav-item{text-align:left;min-height:62px;color:var(--ink-dim);background:0 0;border:1px solid #0000;align-items:center;gap:14px;padding:10px 16px 10px 18px;transition:background .16s,border-color .16s,color .16s,transform .16s;display:flex;position:relative}.menu-nav-item:before{content:"";background:0 0;width:2px;transition:background .16s,box-shadow .16s;position:absolute;top:10px;bottom:10px;left:0}.menu-nav-item:hover{color:var(--ink);background:#ffffff0a;transform:translate(2px)}.menu-nav-item:hover:before{background:#e0a34a80}.menu-nav-item.on{color:var(--ink);background:linear-gradient(90deg,#e0a34a29,#e0a34a05);border-color:#e0a34a42}.menu-nav-item.on:before{background:var(--amber);box-shadow:0 0 12px #e0a34aa6}.menu-nav-index{font-family:var(--mono);letter-spacing:.12em;color:var(--amber);opacity:.75;font-size:9px}.menu-nav-text{flex:1;min-width:0}.menu-nav-text b{font-family:var(--display);letter-spacing:.12em;text-transform:uppercase;font-size:15px;font-weight:600;font-stretch:88%;display:block}.menu-nav-text small{text-overflow:ellipsis;white-space:nowrap;font-family:var(--mono);letter-spacing:.1em;color:var(--ink-faint);margin-top:3px;font-size:8px;display:block;overflow:hidden}.menu-nav-go{color:var(--ink-faint);opacity:0;font-size:16px;transition:all .16s;transform:translate(-4px)}.menu-nav-item:hover .menu-nav-go,.menu-nav-item.on .menu-nav-go{opacity:1;color:var(--amber-soft);transform:none}.menu-nav-quiet b{color:var(--ink-dim);font-size:13px}.menu-nav-rule{background:#a7beb81a;height:1px;margin:12px 16px}.menu-stage{scrollbar-width:thin;scrollbar-color:#a7beb840 transparent;min-height:0;padding:clamp(18px,3.2vh,36px) clamp(22px,4vw,60px) 22px;position:relative;overflow-y:auto}.menu-view{max-width:1020px;display:none}.menu-screen[data-view=idle] .menu-view[data-menu-panel=idle],.menu-screen[data-view=skirmish] .menu-view[data-menu-panel=skirmish],.menu-screen[data-view=editor] .menu-view[data-menu-panel=editor],.menu-screen[data-view=settings] .menu-view[data-menu-panel=settings]{animation:.34s cubic-bezier(.2,.7,.2,1) both menu-view-in;display:block}.menu-idle .menu-view-head h2{color:var(--ink-dim)}.menu-idle .menu-view-head h2 em{color:var(--amber);font-style:normal}.menu-view-head{max-width:780px}.eyebrow{font-family:var(--mono);letter-spacing:.3em;color:var(--amber);margin:0 0 10px;font-size:10px}.menu-view-head h2{letter-spacing:-.035em;margin:0 0 12px;font-size:clamp(30px,3.2vw,46px);font-weight:650;line-height:.98}.menu-view-head h2 em{color:var(--amber-soft);font-style:normal}.lede{max-width:620px;color:var(--ink-dim);margin:0;font-size:13.5px;line-height:1.65}.menu-columns{grid-template-columns:minmax(0,1fr) 356px;align-items:start;gap:clamp(20px,3vw,44px);margin-top:18px;display:grid}.menu-column{min-width:0}.map-select{max-width:780px;margin:0 0 16px}.map-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:8px;display:grid}.map-card{border:1px solid var(--line);min-height:44px;color:var(--ink-dim);text-align:left;background:#0a1013b8;flex-direction:column;gap:7px;padding:7px;transition:border-color .14s,background .14s,color .14s,transform .14s;display:flex}.map-card:hover{color:var(--ink);background:#10181adb;border-color:#e0a34a73;transform:translateY(-1px)}.map-card.on{border-color:var(--amber);color:var(--ink);background:#e0a34a1f}.map-card-canvas{aspect-ratio:4/3;background:#071012;border:1px solid #6e8c8433;width:100%;display:block}.map-card-text b{font-family:var(--display);letter-spacing:.06em;text-transform:uppercase;font-size:11.5px;font-weight:600;display:block}.map-card-text small{font-family:var(--mono);letter-spacing:.12em;color:var(--ink-faint);margin-top:2px;font-size:8px;display:block}.map-card.on small{color:#f1c27ed9}.menu-difficulty{max-width:560px;margin:0 0 16px}.menu-difficulty-label{font-family:var(--mono);letter-spacing:.2em;color:var(--ink-faint);margin-bottom:7px;font-size:8px;display:block}.difficulty-options{border:1px solid var(--line);background:#0a0f118c;width:max-content;max-width:100%;display:flex}.difficulty-btn{border:0;border-right:1px solid var(--line);min-height:38px;color:var(--ink-dim);font-family:var(--mono);letter-spacing:.16em;background:0 0;padding:8px 16px;font-size:9px;transition:background .12s,color .12s}.difficulty-btn:last-child{border-right:0}.difficulty-btn:hover{color:var(--ink);background:#ffffff0d}.difficulty-btn[aria-pressed=true]{background:var(--amber);color:#0b1114}.difficulty-note{min-height:12px;color:var(--ink-faint);margin:7px 0 0;font-size:10px;line-height:1.5}.menu-actions{flex-wrap:wrap;align-items:stretch;gap:10px;max-width:560px;display:flex}.menu-actions .btn-large{flex-basis:100%}#btn-deploy{position:relative;overflow:hidden}#btn-deploy:after{content:"";pointer-events:none;background:linear-gradient(100deg,#0000 34%,#ffffff52 48%,#0000 62%);animation:5.2s ease-in-out 1.6s infinite cta-sheen;position:absolute;inset:0;transform:translate(-130%)}@keyframes cta-sheen{0%,62%{transform:translate(-130%)}82%,to{transform:translate(130%)}}.menu-points{max-width:660px;margin:16px 0 18px;padding:0;list-style:none}.menu-points li{color:var(--ink-dim);border-top:1px solid #ffffff0f;grid-template-columns:108px minmax(0,1fr);gap:16px;padding:9px 0;font-size:12px;line-height:1.55;display:grid}.menu-points b{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--amber-soft);padding-top:2px;font-size:8.5px;font-weight:500}.menu-brief{border:1px solid var(--line);width:100%;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#0a1013c7;align-self:start;padding:0}.brief-head{border-bottom:1px solid var(--line);font-family:var(--mono);letter-spacing:.18em;color:var(--ink-dim);justify-content:space-between;padding:13px 16px;font-size:9px;display:flex}.brief-map{aspect-ratio:4/3;background:#071012;border:1px solid #6e8c8438;margin:10px;position:relative;overflow:hidden}.brief-map canvas{width:100%;height:100%;display:block}.brief-map:after{content:"";pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 34px #00000080,inset 0 0 0 1px #f1c27e17}.map-city{z-index:2;white-space:nowrap;font-family:var(--mono);letter-spacing:.15em;text-shadow:0 1px 3px #000000e6;padding-bottom:9px;font-size:8px;position:absolute;transform:translate(-50%,-160%)}.map-city:before{content:"";width:6px;height:6px;margin-left:-3px;position:absolute;bottom:0;left:50%;transform:rotate(45deg)}.map-city.blue{color:var(--blue-soft);top:48%;left:18%}.map-city.blue:before{background:var(--blue);box-shadow:0 0 8px #52c5e6cc}.map-city.red{color:var(--red-soft);top:35%;left:78%}.map-city.red:before{background:var(--red);box-shadow:0 0 8px #ef6c4dcc}.brief-rows{grid-template-columns:1fr 1fr;gap:0 16px;padding:0 16px 4px;display:grid}.brief-rows div{border-bottom:1px solid #a7beb81a;flex-direction:column;gap:3px;min-width:0;padding:8px 0;font-size:11px;display:flex}.brief-rows span{font-family:var(--mono);letter-spacing:.15em;color:var(--ink-faint);font-size:8px}.brief-rows b{color:var(--ink);font-weight:500;line-height:1.35}.menu-settings{max-width:660px;margin-top:16px}.menu-settings .setting-row{padding:11px 0}.menu-settings .setting-row input[type=range]{width:190px}.menu-footer{z-index:3;font-family:var(--mono);letter-spacing:.13em;color:var(--ink-faint);background:#04080a8c;border-top:1px solid #a7beb81a;justify-content:space-between;align-items:center;gap:16px;padding:12px 30px;font-size:8.5px;display:flex;position:relative}.menu-footer-mid{color:#e0a34a8c}@keyframes menu-view-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes menu-top-in{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}@keyframes menu-item-in{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:none}}@keyframes menu-footer-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.menu-screen.ready.replay .menu-topbar{animation:.46s cubic-bezier(.2,.7,.2,1) both menu-top-in}.menu-screen.ready.replay .menu-footer{animation:.46s cubic-bezier(.2,.7,.2,1) .16s both menu-footer-in}.menu-screen.ready.replay .menu-stage{animation:.52s cubic-bezier(.2,.7,.2,1) .11s both menu-view-in}.menu-screen.ready.replay .menu-nav-item{animation:.42s cubic-bezier(.2,.7,.2,1) both menu-item-in}.menu-screen.ready.replay .menu-nav-head{animation:.36s ease-out both menu-item-in}.menu-screen.ready.replay .menu-nav-item:first-of-type{animation-delay:.14s}.menu-screen.ready.replay .menu-nav-item:nth-of-type(2){animation-delay:.195s}.menu-screen.ready.replay .menu-nav-item:nth-of-type(3){animation-delay:.25s}.menu-screen.ready.replay .menu-nav-item:nth-of-type(4){animation-delay:.305s}.loading-screen{z-index:60;background:#04070a;display:block}.loading-scrim{pointer-events:none;background:linear-gradient(90deg,#04080af7 0%,#04080aed 34%,#050a0c9e 60%,#050a0c2e 100%),linear-gradient(#04080a8c,#0000 24% 76%,#04080ab3);position:absolute;inset:0}.loading-shell{flex-direction:column;justify-content:flex-end;width:min(640px,78vw);height:100%;padding:0 0 clamp(26px,6vh,58px) clamp(22px,5vw,72px);display:flex;position:relative}.loading-shell h2{font-family:var(--display);letter-spacing:.02em;text-transform:uppercase;margin:8px 0 10px;font-size:clamp(26px,4vw,44px);font-stretch:88%}.loading-lede{max-width:54ch;color:var(--ink-dim);margin:0 0 20px;font-size:12.5px;line-height:1.6}.loading-facts{border-top:1px solid #a7beb829;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:12px 20px;margin-bottom:22px;padding-top:14px;display:grid}.loading-facts span{font-family:var(--mono);letter-spacing:.2em;color:var(--ink-faint);text-transform:uppercase;font-size:8px;display:block}.loading-facts b{color:var(--ink);margin-top:3px;font-size:12px;font-weight:500;display:block}.loading-bar{background:#ffffff17;height:2px;overflow:hidden}.loading-bar i{background:var(--amber);width:38%;height:100%;animation:1.2s ease-in-out infinite loading;display:block}@keyframes loading{0%{transform:translate(-110%)}to{transform:translate(300%)}}.loading-hint{font-family:var(--mono);letter-spacing:.12em;color:var(--ink-faint);text-transform:uppercase;margin:12px 0 0;font-size:9px}.hud{pointer-events:none;--top-h:0px;--console-h:140px;--console-pad:6px;--console-gap:4px;--console-actions:26px;--console-border:1px;--selection-h:calc(var(--console-h) - var(--console-border) - 2 * var(--console-pad) - var(--console-gap) - var(--console-actions));--selection-top-offset:var(--console-h);--sidebar-w:clamp(218px, 13.23vw, 254px);--rail-w:82px;font-size:12px;position:absolute;inset:0}.hud>*{pointer-events:auto}.resource-swatch{background:var(--amber);flex:none;width:5px;height:5px}.resource-swatch.blue{background:var(--blue)}.hud-rail{width:var(--rail-w);z-index:12;border-right:1px solid var(--line);background:linear-gradient(#080d0ffa,#080d0fed);flex-direction:column;display:flex;position:absolute;top:0;bottom:0;left:0;overflow:hidden;box-shadow:12px 0 30px #0000004d}.rail-brand{border-bottom:1px solid var(--line);flex-direction:column;flex:none;align-items:center;gap:5px;padding:10px 3px 8px;display:flex}.hud-rail .brand-mark{width:28px;height:28px}.rail-theatre{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-family:var(--mono);letter-spacing:.1em;color:var(--ink-faint);font-size:6px;overflow:hidden}.rail-stats{flex-direction:column;flex:none;display:flex}.rail-stat{border-bottom:1px solid var(--line);text-align:center;flex-direction:column;align-items:center;gap:1px;padding:7px 5px 6px;display:flex;overflow:hidden}.rail-label{max-width:100%;font-family:var(--mono);letter-spacing:.08em;color:var(--ink-faint);white-space:nowrap;justify-content:center;align-items:center;gap:3px;font-size:6px;display:flex;overflow:hidden}.rail-stat b{max-width:100%;font-family:var(--mono);letter-spacing:-.04em;color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.rail-stat .rail-rate{max-width:100%;font-family:var(--mono);color:var(--green);white-space:nowrap;text-overflow:ellipsis;font-size:6.5px;overflow:hidden}.rail-stat.req b{color:var(--amber-soft)}.rail-stat.power b{font-size:11px}.rail-stat.power .rail-rate{color:var(--ink-faint);letter-spacing:.04em;font-size:6px}.rail-stat.power .rail-rate.low{color:var(--red-soft)}.rail-stat.power.brownout{background:#ef6c4d14}.rail-stat.power.brownout b{color:var(--red-soft)}.rail-objective{text-align:center;color:var(--ink);border:0;border-bottom:1px solid var(--line);border-left:2px solid var(--red);background:#ef6c4d0f;flex-direction:column;flex:none;align-items:center;gap:3px;padding:7px 5px;display:flex}.rail-objective:hover{background:#ef6c4d1f}.rail-objective b{-webkit-line-clamp:5;color:var(--red-soft);-webkit-box-orient:vertical;font-size:7.5px;font-weight:500;line-height:1.3;display:-webkit-box;overflow:hidden}.rail-objective .objective-sub{font-family:var(--mono);color:var(--ink-faint);font-size:6px;line-height:1.25}.rail-objective .objective-sub.bad{color:var(--red-soft)}.rail-bottom{height:var(--selection-top-offset);border-top:1px solid var(--line);flex-direction:column;flex:none;margin-top:auto;display:flex}.rail-groups{border-bottom:1px solid var(--line);flex:none;padding:3px 4px}.rail-groups .group-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;width:100%;display:grid}.rail-groups .control-group{width:100%;height:18px}.rail-clock{text-align:center;flex-direction:column;flex:0 0 24px;justify-content:center;align-items:center;gap:0;min-height:0;padding:2px 4px;display:flex}.rail-clock span{font-family:var(--mono);letter-spacing:.1em;color:var(--ink-faint);font-size:6px}.rail-clock b{font-family:var(--mono);font-size:11px;font-weight:500}.rail-actions{border-top:1px solid var(--line);flex:auto;grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:1fr 1fr;gap:2px;min-height:0;padding:3px;display:grid}.rail-btn{height:auto;min-height:0;color:var(--ink-dim);background:#ffffff06;border:1px solid #0000;place-items:center;display:grid}.rail-btn .icon{width:16px;height:16px}.rail-btn:hover{color:var(--ink);border-color:var(--line-strong);background:#ffffff0f}.mobile-topbar{z-index:40;border-bottom:1px solid var(--line);background:linear-gradient(#080d0ff7,#080d0fe6);align-items:stretch;height:42px;display:flex;position:absolute;top:0;left:0;right:0;overflow:hidden;box-shadow:0 6px 20px #0000004d}.mobile-topbar .brand-mark{flex:none;width:26px;height:26px;margin:auto 4px}.mobile-stats{align-items:stretch;min-width:0;display:flex}.mobile-stat{border-right:1px solid var(--line);flex-direction:column;justify-content:center;gap:0;min-width:0;padding:0 7px;display:flex}.mobile-stat span{font-family:var(--mono);letter-spacing:.1em;color:var(--ink-faint);font-size:6px}.mobile-stat b{font-family:var(--mono);font-size:12px;font-weight:500;line-height:1.1}.mobile-stat.req b{color:var(--amber-soft)}.mobile-stat.power b{color:var(--ink-dim)}.mobile-objective{border:0;border-right:1px solid var(--line);text-align:left;background:0 0;flex-direction:column;flex:auto;justify-content:center;align-items:flex-start;gap:1px;min-width:0;padding:0 8px;display:flex}.mobile-objective .label{font-family:var(--mono);letter-spacing:.1em;color:var(--ink-faint);font-size:6px}.mobile-objective b{text-overflow:ellipsis;white-space:nowrap;max-width:100%;color:var(--red-soft);font-size:8.5px;font-weight:500;overflow:hidden}.mobile-objective .objective-sub{display:none}.mobile-actions{flex:none;align-items:stretch;display:flex}.mobile-action{border:0;border-left:1px solid var(--line);width:40px;color:var(--ink-dim);background:#ffffff05;place-items:center;display:grid}.mobile-action:hover{color:var(--ink);background:#ffffff0f}.mobile-action .icon{width:16px;height:16px}.panel-card{border:1px solid var(--line);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0a1013de;box-shadow:0 8px 26px #00000038}.panel-head{border-bottom:1px solid var(--line);font-family:var(--mono);letter-spacing:.16em;color:var(--ink-faint);justify-content:space-between;align-items:center;padding:9px 12px;font-size:8px;display:flex}.objective-body{padding:11px 12px}.objective-body h3{color:var(--ink);margin:0 0 6px;font-size:12px;font-weight:600}.objective-body p{color:var(--ink-dim);margin:0;font-size:10.5px;line-height:1.5}.objective-progress{gap:5px;margin-top:10px;display:grid}.objective-row{color:var(--ink-dim);align-items:center;gap:7px;font-size:9.5px;display:flex}.objective-row .status{background:var(--ink-faint);border-radius:50%;flex:none;width:6px;height:6px}.objective-row .status.done{background:var(--green)}.objective-row .status.active{background:var(--amber);box-shadow:0 0 6px #e0a34a73}.event-log{flex-direction:column-reverse;max-height:210px;display:flex;overflow:hidden}.event-log .log-list{flex-direction:column;gap:1px;padding:6px 10px 9px;display:flex;overflow:hidden}.log-entry{color:var(--ink-dim);border-bottom:1px solid #ffffff06;gap:7px;padding:3px 2px;font-size:9.5px;display:flex}.log-entry time{font-family:var(--mono);color:var(--ink-faint);flex:0 0 35px;font-size:8px}.log-entry.warning{color:var(--amber-soft)}.log-entry.critical{color:var(--red-soft)}.log-entry.success{color:var(--green)}.log-entry.info{color:var(--ink-dim)}.toast-root{z-index:80;pointer-events:none;flex-direction:column;align-items:flex-start;gap:9px;max-width:min(46vw,420px);display:flex;position:fixed;top:12px;left:94px}.toast{border:0;border-left:2px solid var(--ink-dim);box-shadow:none;color:#e6ebe7;text-shadow:0 1px 3px #000000eb,0 0 12px #0000008c;overflow-wrap:anywhere;background:0 0;padding:0 0 0 9px;font-size:12px;line-height:1.35;animation:.12s ease-out toast-in;display:block}.toast.info{border-left-color:var(--blue-soft)}.toast.warning{border-left-color:var(--amber)}.toast.critical{border-left-color:var(--red)}.toast.success{border-left-color:var(--green)}.toast .t-text{white-space:pre-wrap}.toast .t-caret{vertical-align:-1px;opacity:.85;background:currentColor;width:6px;height:11px;margin-left:2px;animation:.64s steps(2,start) infinite caret-blink;display:inline-block}.toast:not(.typing) .t-caret{display:none}.toast .sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes toast-in{0%{opacity:0}to{opacity:1}}@keyframes caret-blink{0%,50%{opacity:.85}50.01%,to{opacity:0}}.production-sidebar{top:var(--top-h);width:var(--sidebar-w);grid-template-columns:minmax(0,1fr) 56px;grid-template-rows:minmax(0, 1fr) var(--selection-top-offset);border-left:1px solid var(--line);z-index:9;background:#080d0ff0;min-height:0;display:grid;position:absolute;bottom:0;right:0;box-shadow:-12px 0 30px #00000038}.prod-tabs{border-left:1px solid var(--line);background:#070b0db8;flex-direction:column;grid-area:1/2;min-height:0;display:flex}.prod-tab{min-height:44px;font-family:var(--mono);letter-spacing:.06em;color:var(--ink-faint);background:0 0;border:0;border-bottom:1px solid #a7beb81f;flex-direction:column;flex:0 0 56px;justify-content:center;align-items:center;gap:4px;padding:5px 3px;font-size:7px;display:flex;position:relative}.prod-tab:last-child{border-bottom:0}.prod-tab .tab-icon{opacity:.8;width:17px;height:17px}.prod-tab .rail-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.prod-tab.active{color:var(--amber-soft);background:#e0a34a1a}.prod-tab.active:after{content:"";background:var(--amber);width:2px;position:absolute;top:6px;bottom:6px;left:-1px}.sidebar-content{flex-direction:column;grid-area:1/1;min-width:0;min-height:0;display:flex}.sidebar-head{border-bottom:1px solid var(--line);height:30px;font-family:var(--mono);letter-spacing:.16em;color:var(--ink-faint);flex:none;justify-content:space-between;align-items:center;padding:0 9px;font-size:8px;display:flex}.layout-desktop .sidebar-head{display:none}.sheet-close{width:44px;height:44px;color:var(--ink-dim);font-family:var(--mono);background:0 0;border:0;font-size:18px;line-height:1;display:none}.sheet-close:hover{color:var(--ink)}.map-dock{border-top:1px solid var(--line);background:#080d0fe6;flex-direction:column;grid-area:2/1/auto/-1;min-height:0;display:flex;position:relative}.map-close{display:none}.minimap-wrap{flex:1;min-height:0;padding:5px;position:relative}#minimap{cursor:crosshair;touch-action:none;background:#0b1416;border:1px solid #a7beb81f;width:100%;height:100%;display:block}#minimap.static{cursor:default}.minimap-foot{border-top:1px solid var(--line);font-family:var(--mono);color:var(--ink-faint);letter-spacing:.08em;justify-content:space-between;padding:4px 8px;font-size:8px;display:flex}.battle-console{left:var(--rail-w);right:var(--sidebar-w);height:var(--console-h);gap:var(--console-gap);padding:var(--console-pad) 10px;border-top:1px solid var(--line);z-index:9;background:#060a0cf5;flex-direction:column;display:flex;position:absolute;bottom:0;box-shadow:0 -10px 28px #0000003d}.console-actions{flex:0 0 var(--console-actions);justify-content:flex-start;align-items:center;gap:8px;min-width:0;min-height:0;display:flex}.console-actions .command-bar{scrollbar-width:none;flex:auto;justify-content:flex-start;overflow:auto hidden}.console-actions .command-bar::-webkit-scrollbar{height:0}.selection-panel{background:var(--panel);border:1px solid var(--line);flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;overflow:hidden}.selection-panel>.panel-head{flex:0 0 20px;padding:0 9px;font-size:7px}.selection-main{flex:1;min-height:0;display:flex}.selection-body{flex:1 1 0;min-width:0;padding:5px 9px;overflow:hidden auto}.sel-primary,.sel-stats,.sel-notes{min-width:0}.sel-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.sel-actions>*{margin-top:0}.layout-desktop .selection-body{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1.35fr) minmax(0,1.05fr) minmax(0,1.2fr);align-content:stretch;align-items:center;gap:3px 10px;padding:4px 8px;display:grid;overflow:hidden}.layout-desktop .selection-body .sel-primary{grid-area:1/1;align-self:center}.layout-desktop .selection-body .sel-main{align-items:center}.layout-desktop .selection-body .sel-info{align-self:center}.layout-desktop .selection-body .sel-title{gap:6px}.layout-desktop .selection-body .sel-role{white-space:normal}.layout-desktop .selection-body .sel-stats{grid-area:1/2;align-self:center}.layout-desktop .selection-body .sel-notes{flex-direction:column;grid-area:1/3;justify-content:center;align-self:center;gap:3px;max-height:100%;display:flex;overflow:hidden}.layout-desktop .selection-body .sel-actions{scrollbar-width:none;flex-wrap:nowrap;grid-area:2/1/auto/-1;align-self:end;overflow:auto hidden}.layout-desktop .selection-body .sel-actions::-webkit-scrollbar{height:0}.layout-desktop .selection-body .sel-orders{margin-top:0}.layout-desktop .selection-body .stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 6px;margin-top:0}.layout-desktop .selection-body .stat b{line-height:1.15}.sel-line{min-width:0;font-family:var(--mono);letter-spacing:.06em;color:var(--ink-faint);justify-content:space-between;align-items:baseline;gap:8px;font-size:7px;display:flex}.sel-line span,.sel-line b{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.sel-line b{color:var(--ink);font-weight:500}.sel-line b.good{color:var(--green)}.sel-line b.bad{color:var(--amber-soft)}.sel-hint{font-family:var(--mono);letter-spacing:.08em;color:var(--amber-soft);white-space:nowrap;text-overflow:ellipsis;font-size:7px;overflow:hidden}.group-mix{font-family:var(--mono);letter-spacing:.06em;color:var(--ink-dim);justify-content:space-between;align-items:baseline;gap:8px;font-size:7.5px;display:flex}.group-mix span{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.group-mix b{color:var(--ink);font-weight:500}.group-mix.more span{color:var(--ink-faint);letter-spacing:.03em}.layout-desktop .selection-body .sel-notes>*{flex:none}.layout-desktop .selection-body .sel-notes .hp-block{margin-top:0}.layout-desktop .selection-body .stance-row{flex-wrap:nowrap;margin-top:0}.layout-desktop .selection-body .stance-row .mini-btn{min-height:16px;padding:0 5px;font-size:6.5px}.layout-desktop .selection-body .group-chips{flex-wrap:nowrap;max-height:16px;margin-top:0}.layout-desktop .selection-body .hp-block{margin-top:0}.layout-desktop .selection-body .hp-block+.hp-block{margin-top:3px}.layout-desktop .selection-body .hp-label{margin-bottom:1px}.layout-desktop .selection-body .hp-bar{height:2px}.layout-desktop .selection-body .idle-hint{grid-area:1/1/auto/-1}.layout-desktop .selection-body{padding:4px 8px}.layout-desktop .sel-icon{width:34px;height:34px}.layout-desktop .sel-icon svg{width:20px;height:20px}.layout-desktop .sel-title h3{font-size:11px}.layout-desktop .sel-role{margin-top:1px}.layout-desktop .sel-orders{gap:4px;margin-top:4px}.layout-desktop .stance-row{margin-top:4px}.layout-desktop .sel-roster{gap:4px;padding:5px 6px}.layout-desktop .roster-chip{gap:2px;padding:3px}.layout-desktop .roster-chip .chip-art{flex-basis:28px;min-height:28px}.sel-roster{border-left:1px solid var(--line);flex:none;grid-auto-columns:74px;grid-auto-flow:column;align-items:stretch;gap:6px;min-width:0;max-width:min(36%,300px);padding:8px;display:grid;overflow:auto hidden}.selection-panel.empty-selection .sel-roster{display:none}.selection-panel.empty-selection .selection-body{flex-basis:100%}.selection-panel.empty-selection .selection-body .idle-hint{max-width:460px}.roster-chip{border:1px solid var(--line);text-align:left;background:#ffffff05;flex-direction:column;gap:3px;min-width:0;padding:4px;display:flex}.roster-chip:hover{border-color:var(--line-strong);background:#ffffff0d}.roster-chip.active{border-color:var(--amber);background:#e0a34a1f}.roster-chip .chip-art{width:100%;height:auto;min-height:34px;color:var(--blue-soft);flex:34px}.roster-chip .chip-art.enemy{color:var(--red-soft)}.roster-chip .chip-copy{flex-direction:column;gap:2px;min-width:0;display:flex}.roster-chip .chip-name{text-overflow:ellipsis;white-space:nowrap;width:100%;font-family:var(--mono);color:var(--ink-dim);font-size:7px;overflow:hidden}.roster-chip.active .chip-name{color:var(--amber-soft)}.chip-hp{background:#ffffff14;height:2px;display:block}.chip-hp i{background:var(--green);height:100%;display:block}.chip-hp i.mid{background:var(--amber)}.chip-hp i.low{background:var(--red)}.roster-empty{font-family:var(--mono);letter-spacing:.1em;color:var(--ink-faint);white-space:nowrap;align-self:center;padding-left:6px;font-size:8px}.idle-hint{flex-direction:column;justify-content:center;gap:5px;height:100%;display:flex}.idle-hint .hint-title{font-family:var(--mono);letter-spacing:.17em;color:var(--ink-faint);font-size:8px}.idle-hint p{color:var(--ink-dim);margin:0;font-size:10px;line-height:1.4}.key-row{display:none}.sel-main{align-items:flex-start;gap:9px;min-width:0;display:flex}.sel-icon{border:1px solid var(--line);width:48px;height:48px;color:var(--blue-soft);flex:none;place-items:center;display:grid;position:relative;overflow:hidden}.sel-icon.enemy{color:var(--red-soft)}.sel-icon.neutral{color:var(--ink-dim)}.sel-icon svg{width:26px;height:26px}.sel-count-badge{z-index:3;color:#1b1407;min-width:14px;font-family:var(--mono);text-align:center;background:#e0a34aeb;padding:1px 3px;font-size:7.5px;font-weight:700;line-height:1.1;position:absolute;bottom:2px;right:2px}.thumb-frame{background:radial-gradient(at 50% 72%,#6f8c8361,#090e1000 62%),linear-gradient(160deg,#1a2a2e 0%,#0b1214 68%);border:1px solid #a7beb82e;display:block;position:relative;overflow:hidden}.thumb-frame:after{content:"";z-index:2;pointer-events:none;background:linear-gradient(#04080900 48%,#0408096b 100%);position:absolute;inset:0}.thumb-art{z-index:1;filter:drop-shadow(0 4px 3px #00000080);background-position:50%;background-repeat:no-repeat;background-size:contain;position:absolute;inset:0}.thumb-fallback{z-index:0;color:inherit;opacity:.75;place-items:center;transition:opacity .12s;display:grid;position:absolute;inset:0}.thumb-art.has-art+.thumb-fallback{opacity:0}.thumb-fallback svg{width:24px;height:24px}.sel-info{flex:1;min-width:0}.sel-title{align-items:baseline;gap:7px;min-width:0;display:flex}.sel-title h3{letter-spacing:.01em;white-space:nowrap;text-overflow:ellipsis;flex:0 auto;min-width:0;margin:0;font-size:12px;font-weight:600;overflow:hidden}.sel-title span{text-overflow:ellipsis;min-width:0;font-family:var(--mono);color:var(--ink-faint);letter-spacing:.1em;white-space:nowrap;flex:0 auto;font-size:7.5px;overflow:hidden}.sel-role{font-family:var(--mono);color:var(--ink-faint);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:7.5px;overflow:hidden}.hp-block{margin-top:5px}.hp-label{min-width:0;font-family:var(--mono);color:var(--ink-faint);justify-content:space-between;gap:6px;margin-bottom:2px;font-size:7.5px;display:flex}.hp-label span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.hp-bar{background:#ffffff14;height:3px;overflow:hidden}.hp-bar i{background:var(--green);height:100%;transition:width .16s linear;display:block}.hp-bar i.mid{background:var(--amber)}.hp-bar i.low{background:var(--red)}.stat-grid{grid-template-columns:repeat(4,1fr);gap:6px;margin-top:6px;display:grid}.battle-console .stat-grid{grid-template-columns:repeat(2,1fr)}.stat{border-left:1px solid var(--line);min-width:0;padding-left:6px}.stat span{font-family:var(--mono);letter-spacing:.11em;color:var(--ink-faint);font-size:7px;display:block}.stat b{font-family:var(--mono);color:var(--ink);white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:10px;font-weight:500;display:block;overflow:hidden}.ammo-dots{gap:2px;margin-top:2px;display:flex}.ammo-dots i{background:var(--amber);width:3px;height:7px}.ammo-dots i.empty{background:#ffffff1a}.sel-orders{flex-wrap:wrap;gap:5px;margin-top:7px;display:flex}.garrison-orders{margin-top:4px}.garrison-orders .mini-btn{color:var(--blue-soft);border-color:#60becd66}.mini-btn{border:1px solid var(--line);font-family:var(--mono);letter-spacing:.08em;color:var(--ink-dim);white-space:nowrap;background:#ffffff08;border-radius:2px;align-items:center;gap:4px;padding:4px 7px;font-size:7.5px;display:flex}.mini-btn:hover{border-color:var(--amber);color:var(--ink)}.mini-btn.active{border-color:var(--amber);color:var(--amber-soft);background:#e0a34a24}.mini-btn:disabled{opacity:.35;cursor:default}.mini-btn .icon{width:12px;height:12px}.group-chips{flex-wrap:wrap;gap:4px;max-height:42px;margin-top:5px;display:flex;overflow:hidden}.group-chip{font-family:var(--mono);border:1px solid var(--line);color:var(--ink-dim);background:#ffffff05;padding:2px 5px;font-size:7.5px}.stance-row{flex-wrap:wrap;align-items:center;gap:3px;margin-top:6px;display:flex}.stance-row .stance-label{font-family:var(--mono);letter-spacing:.12em;color:var(--ink-faint);margin-right:2px;font-size:7px}.stance-row .mini-btn{padding:3px 6px}.prod-body{flex:1;min-height:0;padding:5px 6px 6px;overflow-y:auto}.prod-empty{text-align:center;height:100%;color:var(--ink-faint);justify-content:center;align-items:center;padding:18px;font-size:10.5px;line-height:1.5;display:flex}.facility{background:#ffffff05;border:1px solid #a7beb821;margin-bottom:7px}.facility-head{border-bottom:1px solid #a7beb81a;justify-content:space-between;align-items:center;gap:8px;padding:5px 7px;display:flex}.facility-name{color:var(--ink);align-items:center;gap:6px;font-size:9px;display:flex}.facility-name .icon{width:14px;height:14px;color:var(--ink-dim)}.facility-meta{font-family:var(--mono);color:var(--ink-faint);font-size:7.5px}.unit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:6px;display:grid}.layout-desktop .unit-grid,.layout-desktop .build-grid{grid-template-columns:1fr}@media (min-width:1900px){.layout-desktop .unit-grid,.layout-desktop .build-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.unit-slot{min-width:0;display:flex;position:relative}.unit-card{text-align:left;background:#ffffff05;border:1px solid #a7beb821;flex-direction:column;flex:auto;align-items:flex-start;gap:2px;width:100%;min-width:0;padding:5px;display:flex;position:relative}.unit-card:hover{background:#e0a34a0f;border-color:#e0a34a8c}.unit-card:disabled{opacity:.45;cursor:not-allowed}.unit-card.unavailable{opacity:.5}.unit-card.reorderable{border-color:#e0a34a3d}.unit-card .u-art{width:100%;display:block;position:relative}.unit-card .u-thumb{aspect-ratio:4/3;width:100%;color:var(--blue-soft);margin-bottom:2px}.unit-card .u-thumb .thumb-fallback svg{width:20px;height:20px}.unit-card .u-progress{--p:0%;z-index:3;pointer-events:none;opacity:0;background:conic-gradient(from 0deg, #e0a34a57 0 var(--p), #03070894 var(--p) 360deg);transition:opacity 90ms linear,--p 80ms linear;position:absolute;inset:0 0 2px}.unit-card.training .u-progress{opacity:1}.unit-card .u-name{font-family:var(--mono);letter-spacing:.03em;color:var(--ink);white-space:nowrap;text-overflow:ellipsis;width:100%;font-size:8px;overflow:hidden}.unit-card .u-cost{font-family:var(--mono);color:var(--ink-faint);font-size:8px}.unit-card .u-cost b{color:var(--amber-soft);font-weight:500}.unit-card .u-hot{z-index:4;font-family:var(--mono);color:var(--ink);background:#060a0cb8;padding:1px 3px;font-size:7px;position:absolute;top:8px;right:8px}.u-grip{z-index:4;color:#e0a34ad1;cursor:grab;touch-action:none;place-items:center;width:16px;height:22px;display:grid;position:absolute;top:21px;right:3px}.u-grip:before{content:"";background-image:radial-gradient(circle,currentColor 1.2px,#0000 1.5px);background-size:4px 4px;width:8px;height:14px}.u-grip:hover{color:var(--amber-soft)}.u-queue{z-index:5;color:#1b1407;min-width:17px;height:15px;font-family:var(--mono);text-align:center;cursor:pointer;background:#e0a34af2;border:1px solid #0c0803b3;padding:0 3px;font-size:9px;font-weight:700;line-height:13px;position:absolute;top:1px;left:1px}.u-queue:hover{background:var(--amber-soft)}.unit-card.dragging{opacity:.32;border-style:dashed}.unit-card.dragging .u-progress{opacity:.12}.queue-dragging .unit-card.reorderable{border-color:#e0a34a57}.queue-dragging .u-grip{color:var(--amber-soft)}.unit-card.drop-target{background:#e0a34a1c;border-color:#e0a34af2;box-shadow:inset 0 0 0 1px #e0a34a80}.unit-card.drop-target .u-art:after{content:"PRIORITY";z-index:4;color:#1b1407;font-family:var(--mono);letter-spacing:.12em;text-align:center;background:#e0a34af0;padding:2px 0;font-size:7px;font-weight:700;position:absolute;bottom:0;left:0;right:0}.queue-ghost{z-index:80;pointer-events:none;background:#070c0ef5;border:1px solid #e0a34ad1;flex-direction:column;gap:2px;padding:6px 8px;display:flex;position:fixed;transform:translate(12px,12px);box-shadow:0 8px 24px #00000073}.queue-ghost b{font-family:var(--mono);color:var(--amber-soft);white-space:nowrap;font-size:9px;font-weight:600}.queue-ghost span{font-family:var(--mono);letter-spacing:.08em;color:var(--ink-dim);white-space:nowrap;font-size:7px}.build-grid{grid-template-columns:repeat(2,1fr);gap:5px;padding:5px 6px 6px;display:grid}.build-card{text-align:left;background:#ffffff05;border:1px solid #a7beb821;flex-direction:column;align-items:stretch;gap:4px;min-height:0;padding:5px;display:flex}.build-card:hover{background:#e0a34a0f;border-color:#e0a34a8c}.build-card .b-thumb{aspect-ratio:4/3;width:100%;color:var(--amber-soft)}.build-card .b-copy{flex-direction:column;min-width:0;display:flex}.build-card .b-name{font-family:var(--mono);color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:8px;overflow:hidden}.build-card .b-cost{font-family:var(--mono);color:var(--ink-faint);margin-top:2px;font-size:7.5px;line-height:1.3}.build-card .b-cost b{color:var(--amber-soft);font-weight:500}.build-card{position:relative}.build-card .b-flag{z-index:4;color:#240b06;font-family:var(--mono);letter-spacing:.08em;background:#ef6c4deb;padding:1px 4px;font-size:6.5px;display:none;position:absolute;top:5px;right:5px}.build-card.suggested{background:#ef6c4d12;border-color:#ef6c4d9e}.build-card.suggested .b-flag{display:block}.grid-alert{font-family:var(--mono);letter-spacing:.04em;color:var(--red-soft);background:#ef6c4d1a;border-bottom:1px solid #ef6c4d66;flex:none;align-items:center;gap:6px;padding:5px 8px;font-size:7px;line-height:1.35;display:flex}.grid-alert span{flex:1;min-width:0}.grid-alert-btn{min-height:24px;color:var(--red-soft);font-family:var(--mono);letter-spacing:.08em;background:#ef6c4d29;border:1px solid #ef6c4d8c;flex:none;justify-content:center;align-items:center;padding:3px 8px;font-size:6.5px;display:inline-flex}.grid-alert-btn:hover{color:#fff;background:#ef6c4d47}.build-card:disabled{opacity:.45;cursor:not-allowed}.command-bar{justify-content:center;align-items:center;gap:3px;min-width:0;padding:2px;display:flex}.cmd-btn{color:var(--ink-dim);font-family:var(--mono);letter-spacing:.03em;white-space:nowrap;background:#ffffff06;border:1px solid #0000;border-radius:2px;align-items:center;gap:3px;padding:4px 6px;font-size:7px;display:flex}.cmd-btn:hover{color:var(--ink);background:#ffffff0f}.cmd-btn.active{border-color:var(--amber);color:var(--amber-soft);background:#e0a34a1c}.cmd-btn.accent{color:var(--blue-soft)}.cmd-btn .icon{width:14px;height:14px}.cmd-sep{background:var(--line);width:1px;height:22px;margin:0 2px}.mode-banner{bottom:calc(var(--console-h) + 10px);color:#1b1407;font-family:var(--mono);letter-spacing:.1em;z-index:22;background:#e0a34af0;align-items:center;gap:12px;padding:5px 12px;font-size:9px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.mode-banner.bad{color:#240b06;background:#ef6c4df0}.mode-banner button{color:inherit;font-family:var(--mono);background:0 0;border:0;font-size:9px;text-decoration:underline}.group-strip{align-items:center;gap:3px;min-width:0;display:flex}.control-group{border:1px solid var(--line);width:21px;height:21px;font-family:var(--mono);color:var(--ink-faint);background:#080d0fcc;flex:none;place-items:center;font-size:8px;display:grid;position:relative}.control-group b{font-weight:500}.control-group.has{color:var(--ink);border-color:var(--line-strong);background:#e0a34a1a}.control-group.empty{border-style:dashed}.group-state{background:0 0;border-radius:50%;width:4px;height:4px;position:absolute;bottom:3px;right:3px}.control-group.has .group-state{background:var(--amber)}.layout-mobile{--top-h:42px;--bottom-h:90px;--sidebar-w:60px;--rail-w:60px;--console-h:90px}.layout-mobile .mobile-topbar{height:calc(42px + env(safe-area-inset-top,0px));padding-top:env(safe-area-inset-top,0px);padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}.layout-mobile .mobile-stat{padding:0 8px}.layout-mobile .production-sidebar{top:calc(42px + env(safe-area-inset-top,0px));bottom:calc(90px + env(safe-area-inset-bottom,0px));right:env(safe-area-inset-right,0px);width:60px;box-shadow:none;z-index:30;background:0 0;border:0;display:block;overflow:visible}.layout-mobile .prod-tabs{border:1px solid var(--line);z-index:31;background:#080d0fed;border-right:0;gap:3px;width:60px;padding:3px 0;position:absolute;top:0;bottom:0;right:0;overflow-y:auto}.layout-mobile .prod-tab{border-bottom:1px solid #a7beb81f;border-right:0;flex:1 1 0;width:100%;min-height:44px;padding:3px 2px}.layout-mobile .prod-tab .tab-icon{width:16px;height:16px}.layout-mobile .prod-tab .rail-label{font-size:6.5px}.layout-mobile .prod-tab.active:after{inset:2px 0 2px auto}.layout-mobile .sidebar-content{visibility:hidden;opacity:0;pointer-events:none;border:1px solid var(--line-strong);z-index:29;background:#080d0ffa;grid-area:auto;width:min(340px,100vw - 120px);transition:opacity .12s,transform .12s;display:flex;position:absolute;top:0;bottom:0;right:60px;transform:translate(10px);box-shadow:-18px 0 36px #00000073}.layout-mobile.panel-production .sidebar-content{visibility:visible;opacity:1;pointer-events:auto;transform:none}.layout-mobile .sidebar-head{height:44px;padding-left:12px}.layout-mobile .sheet-close{justify-content:center;align-items:center;display:inline-flex}.layout-mobile .map-close{z-index:3;background:#060a0cb8;width:44px;height:44px;position:absolute;top:4px;right:4px}.layout-mobile .map-dock{top:calc(53px + env(safe-area-inset-top,0px));bottom:calc(98px + env(safe-area-inset-bottom,0px));border:1px solid var(--line-strong);width:min(340px,100vw - 28px);height:auto;box-shadow:var(--shadow);z-index:34;background:#080d0ffc;grid-area:auto;display:none;position:fixed;left:50%;right:auto;transform:translate(-50%)}.layout-mobile.panel-map .map-dock{display:flex}.layout-mobile .mobile-backdrop{z-index:24;background:#0306088a;border:0;padding:0;display:none;position:fixed;inset:0}.layout-mobile.panel-production .mobile-backdrop,.layout-mobile.panel-objective .mobile-backdrop,.layout-mobile.panel-selection .mobile-backdrop,.layout-mobile.panel-groups .mobile-backdrop,.layout-mobile.panel-map .mobile-backdrop{display:block}.layout-mobile .mobile-sheet{z-index:32;border:1px solid var(--line-strong);box-shadow:var(--shadow);background:#080d0ffc;flex-direction:column;display:none;position:absolute;overflow:hidden}.layout-mobile.panel-objective .objective-sheet{top:calc(48px + env(safe-area-inset-top,0px));left:calc(8px + env(safe-area-inset-left,0px));right:calc(68px + env(safe-area-inset-right,0px));max-width:360px;max-height:calc(100vh - 160px);display:flex}.layout-mobile.panel-selection .selection-sheet{left:calc(8px + env(safe-area-inset-left,0px));right:calc(68px + env(safe-area-inset-right,0px));bottom:calc(96px + env(safe-area-inset-bottom,0px));max-height:calc(50vh + 30px);display:flex}.layout-mobile.panel-groups .groups-sheet{right:calc(68px + env(safe-area-inset-right,0px));bottom:calc(96px + env(safe-area-inset-bottom,0px));width:min(300px,100vw - 90px);max-height:calc(100vh - 148px);display:flex}.layout-mobile .groups-sheet .group-strip{flex:0 auto;overflow-y:auto}.layout-mobile .sheet-head{border-bottom:1px solid var(--line);font-family:var(--mono);letter-spacing:.14em;color:var(--ink-dim);flex:0 0 44px;justify-content:space-between;align-items:center;gap:8px;padding-left:12px;font-size:8px;display:flex}.layout-mobile .objective-sheet-body{padding:12px;overflow-y:auto}.layout-mobile .objective-sheet-body h3{color:var(--red-soft);margin:0 0 8px;font-size:14px;font-weight:600}.layout-mobile .objective-sheet-body p{color:var(--ink-dim);margin:0 0 10px;font-size:11px;line-height:1.5}.layout-mobile .sheet-note{color:var(--ink-faint);margin:0;padding:8px 12px;font-size:10px;line-height:1.5}.layout-mobile .groups-sheet .sheet-note{padding-bottom:2px}.layout-mobile .selection-sheet .selection-body{flex:auto;max-height:50vh;display:block;overflow-y:auto}.layout-mobile .sel-line{font-size:9px}.layout-mobile .sel-hint{white-space:normal;font-size:9px}.layout-mobile .group-mix{font-size:10px}.layout-mobile .group-strip{grid-template-columns:repeat(5,44px);gap:6px;padding:10px 12px 12px;display:grid;position:static}.layout-mobile .control-group{width:44px;height:44px;font-size:10px}.layout-mobile .u-queue{min-width:24px;height:22px;font-size:10px;line-height:20px;top:3px;left:3px}.layout-mobile .u-grip{width:28px;height:32px;top:22px;right:0}.layout-mobile .u-grip:before{background-size:5px 5px;width:10px;height:18px}.layout-mobile .queue-ghost{padding:8px 10px}.layout-mobile .queue-ghost b{font-size:10px}.layout-mobile .queue-ghost span{font-size:8px}.layout-mobile .stance-row .mini-btn{min-height:44px;padding:0 10px}.layout-mobile .group-state{width:5px;height:5px;bottom:5px;right:5px}.layout-mobile .mobile-console{height:calc(90px + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px);border-top:1px solid var(--line);z-index:35;background:#060a0cfa;flex-direction:column;display:flex;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -10px 26px #00000059}.layout-mobile .mobile-console:not(.has-selection){height:calc(44px + env(safe-area-inset-bottom,0px))}.layout-mobile .mobile-console:not(.has-selection) .mobile-roster-row{display:none}.layout-mobile .mobile-roster-row{border-bottom:1px solid var(--line);flex:0 0 46px;align-items:stretch;height:46px;display:flex}.layout-mobile .mobile-roster{scrollbar-width:none;flex:auto;align-items:center;gap:5px;min-width:0;padding:4px 6px;display:flex;overflow:auto hidden}.layout-mobile .mobile-roster::-webkit-scrollbar{height:0}.layout-mobile .mobile-roster .roster-chip{flex-direction:row;flex:0 0 84px;align-items:center;gap:5px;height:38px;padding:3px}.layout-mobile .mobile-roster .roster-chip .chip-art{flex:0 0 30px;width:30px;height:30px}.layout-mobile .mobile-roster .roster-chip .chip-copy{flex:auto;gap:2px}.layout-mobile .mobile-roster .roster-chip .chip-name{font-size:6.5px}.layout-mobile .mobile-roster .roster-chip .chip-hp{width:100%;height:2px;display:block}.layout-mobile .mobile-roster .roster-chip.active{box-shadow:inset 0 -2px 0 var(--amber)}.layout-mobile .mobile-roster .roster-empty{padding-left:8px}.layout-mobile .add-toggle{border:0;border-left:1px solid var(--line);width:44px;height:46px;color:var(--ink-dim);font-family:var(--mono);letter-spacing:.08em;background:#ffffff08;flex:0 0 44px;font-size:8px}.layout-mobile .add-toggle.active{color:var(--amber-soft);background:#e0a34a2e}.layout-mobile .mobile-command-row{flex:0 0 44px;min-height:0;display:flex}.layout-mobile .command-bar{scrollbar-width:none;flex:auto;justify-content:flex-start;gap:3px;height:44px;padding:0 1px;overflow:auto hidden}.layout-mobile .command-bar::-webkit-scrollbar{height:0}.layout-mobile .cmd-btn{letter-spacing:.02em;flex-direction:column;flex:0 0 44px;justify-content:center;gap:1px;width:44px;height:44px;padding:0;font-size:6.5px}.layout-mobile .cmd-btn .icon{width:17px;height:17px}.layout-mobile .cmd-btn .lbl{line-height:1;display:block}.layout-mobile .cmd-sep{display:none}.layout-mobile .mode-banner{bottom:calc(98px + env(safe-area-inset-bottom,0px));white-space:nowrap;max-width:calc(100vw - 20px);font-size:8px}.layout-mobile .debug-panel{top:calc(50px + env(safe-area-inset-top,0px));right:calc(70px + env(safe-area-inset-right,0px));width:min(280px,100vw - 90px)}@media (max-width:760px){.layout-mobile .mobile-topbar .brand-mark{display:none}.layout-mobile .mobile-stat{padding:0 6px}.layout-mobile .mobile-sheet{max-width:calc(100vw - 76px)}}.debug-panel{right:calc(var(--sidebar-w) + 14px);border:1px solid var(--line);z-index:20;width:268px;font-family:var(--mono);color:var(--ink-dim);background:#060a0ced;padding:10px 12px;font-size:9px;line-height:1.7;position:absolute;top:14px}.debug-panel b{color:var(--ink);font-weight:500}.debug-panel .section{border-top:1px solid var(--line);margin-top:8px;padding-top:8px}.end-screen{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);z-index:70;background:#040709b8;place-items:center;display:grid;position:absolute;inset:0}.end-card{border:1px solid var(--line-strong);width:min(620px,90vw);box-shadow:var(--shadow);background:#0a1012f7;padding:34px 36px}.end-card .result{font-family:var(--mono);letter-spacing:.3em;color:var(--amber);font-size:10px}.end-card h2{letter-spacing:-.04em;margin:8px 0 4px;font-size:clamp(38px,6vw,64px);font-weight:650}.end-card h2.defeat{color:var(--red-soft)}.end-card p{color:var(--ink-dim);max-width:480px;margin:12px 0 22px;font-size:13px;line-height:1.6}.end-stats{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:22px;padding:16px 0;display:grid}.end-stats div span{font-family:var(--mono);color:var(--ink-faint);letter-spacing:.12em;font-size:8px;display:block}.end-stats div b{font-family:var(--mono);font-size:20px;font-weight:500}.end-actions{flex-wrap:wrap;gap:8px;display:flex}.modal-root{z-index:90;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#030608b3;place-items:center;display:grid;position:fixed;inset:0}.modal-card{border:1px solid var(--line-strong);width:min(560px,94vw);max-height:88vh;box-shadow:var(--shadow);background:#0a1012fa;overflow-y:auto}.modal-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.modal-head h2{margin:0;font-size:17px;font-weight:600}.modal-head .close{color:var(--ink-dim);background:0 0;border:0;font-size:18px;line-height:1}.modal-body{padding:20px}.modal-body p{color:var(--ink-dim);font-size:12px;line-height:1.6}.modal-actions{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:14px 20px;display:flex}.modal-actions .btn{min-width:100px}.menu-modal-list{gap:6px;display:grid}.menu-modal-list .btn{justify-content:flex-start}.settings-grid{gap:12px;display:grid}.setting-row{border-bottom:1px solid #ffffff0e;justify-content:space-between;align-items:center;gap:18px;padding:9px 0;display:flex}.setting-row label{color:var(--ink);font-size:12px}.setting-row small{color:var(--ink-faint);margin-top:2px;font-size:10px;display:block}.setting-row input[type=range]{width:130px;accent-color:var(--amber)}.setting-row select{border:1px solid var(--line);background:#ffffff0a;padding:4px 7px;font-size:11px}.switch{border:1px solid var(--line-strong);background:#ffffff0d;width:34px;height:18px;position:relative}.switch:after{content:"";background:var(--ink-faint);width:12px;height:12px;transition:all .12s;position:absolute;top:2px;left:2px}.switch.on{border-color:var(--amber);background:#e0a34a33}.switch.on:after{background:var(--amber);left:18px}.controls-grid{color:var(--ink-dim);grid-template-columns:1fr 1fr;gap:12px 20px;font-size:11px;display:grid}.controls-grid div{border-bottom:1px solid #ffffff0d;justify-content:space-between;gap:10px;padding-bottom:5px;display:flex}.controls-grid kbd{font-family:var(--mono);border:1px solid var(--line);color:var(--ink);padding:1px 4px;font-size:9px}@media (max-width:820px),(max-height:560px){.menu-header{padding:14px 18px}.game-logo{--logo-size:48px;gap:12px}.game-logo-full{letter-spacing:.24em;padding-left:11px}.game-tagline{display:none}.menu-copy h2{font-size:40px}.menu-difficulty{margin-bottom:14px}.difficulty-options{width:100%}.difficulty-btn{letter-spacing:.12em;flex:1;min-height:44px;padding:8px 4px;font-size:8px}.difficulty-note{font-size:9px}.map-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.map-card{padding:6px}.map-card-canvas{aspect-ratio:16/9}.loading-shell{width:100%;padding:20px}.loading-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px}.loading-lede{display:none}.menu-actions .btn-large{width:100%;min-width:0}.menu-footer{padding:12px 18px}.menu-footer-link{min-height:44px;margin:-16px -3px -16px 0;padding:0 8px;font-size:9px}.menu-meta{display:none}.end-card{padding:24px 20px}.end-stats{grid-template-columns:repeat(2,1fr)}.toast-root{top:calc(50px + env(safe-area-inset-top,0px));left:calc(8px + env(safe-area-inset-left,0px));gap:7px;max-width:min(72vw,300px)}.toast{font-size:11px}}@media (max-height:560px){.menu-body{align-items:start;padding-top:0;padding-bottom:10px;overflow-y:auto}.eyebrow{margin-bottom:8px}.menu-copy h2{margin-bottom:12px;font-size:32px}.lede{margin-bottom:12px;font-size:12px;line-height:1.45}.menu-difficulty{margin-bottom:10px}.difficulty-note{display:none}.menu-actions{gap:6px}.menu-actions .btn{padding:8px 10px;font-size:9px}}.editor-screen{z-index:35;pointer-events:none;background:0 0}.editor-topbar{border-bottom:1px solid var(--line);pointer-events:auto;z-index:4;background:#080d0ff7;align-items:stretch;height:58px;display:flex;position:absolute;top:0;left:0;right:0}.editor-topbar .top-ident{border-right:1px solid var(--line);align-items:center;gap:12px;padding:0 20px;display:flex}.editor-topbar .top-ident .brand-mark{width:30px;height:30px}.editor-topbar .top-ident h2{font-family:var(--display);letter-spacing:.14em;margin:0;font-size:15px;font-weight:700;font-stretch:85%}.editor-topbar .top-ident p{font-family:var(--mono);letter-spacing:.12em;color:var(--ink-faint);margin:2px 0 0;font-size:8px}.editor-title{flex-direction:column;flex:1;justify-content:center;padding:0 18px;display:flex}.editor-title b{letter-spacing:.12em;font-size:12px}.editor-title span{font-family:var(--mono);color:var(--ink-faint);letter-spacing:.1em;margin-top:3px;font-size:8px}.editor-topbar .actions{align-items:center;gap:6px;padding:0 12px;display:flex}.editor-topbar .actions .btn{padding:7px 10px;font-size:9px}.editor-tools{border-right:1px solid var(--line);pointer-events:auto;z-index:3;background:#080d0ff2;flex-direction:column;width:288px;display:flex;position:absolute;top:58px;bottom:0;left:0}.tool-scroll{flex:1;padding:12px;overflow-y:auto}.tool-section{margin-bottom:16px}.tool-section h4{font-family:var(--mono);letter-spacing:.17em;color:var(--ink-faint);margin:0 0 7px;font-size:8px;font-weight:500}.tool-grid{grid-template-columns:repeat(3,1fr);gap:4px;display:grid}.tool-btn{border:1px solid var(--line);font-family:var(--mono);letter-spacing:.04em;color:var(--ink-dim);text-align:center;background:#ffffff05;flex-direction:column;align-items:center;gap:3px;padding:7px 4px;font-size:7.5px;display:flex}.tool-btn:hover{border-color:var(--line-strong);color:var(--ink)}.tool-btn.active{border-color:var(--amber);color:var(--amber-soft);background:#e0a34a17}.tool-btn .icon{width:16px;height:16px}.terrain-grid{grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.terrain-swatch{height:42px;font-family:var(--mono);color:#ffffffd9;text-shadow:0 1px 2px #000;border:1px solid #0000004d;align-items:flex-end;padding:4px;font-size:6.5px;display:flex}.terrain-swatch.active{outline:1px solid var(--amber);outline-offset:1px}.brush-row{align-items:center;gap:7px;margin-top:7px;display:flex}.brush-row input{width:100%;accent-color:var(--amber)}.editor-side{border-left:1px solid var(--line);pointer-events:auto;z-index:3;background:#080d0ff2;flex-direction:column;width:330px;display:flex;position:absolute;top:58px;bottom:0;right:0}.editor-inspector{flex:1;padding:12px;overflow-y:auto}.form-grid{gap:8px;display:grid}.form-row{color:var(--ink-dim);grid-template-columns:96px 1fr;align-items:center;gap:8px;font-size:10px;display:grid}.form-row input,.form-row select,.form-row textarea{border:1px solid var(--line);background:#ffffff09;border-radius:2px;width:100%;padding:5px 7px;font-size:10px}.form-row textarea{resize:vertical;min-height:52px}.form-row input[type=number]{font-family:var(--mono)}.validation-list{flex-direction:column;gap:4px;max-height:220px;display:flex;overflow-y:auto}.issue{border:1px solid var(--line);cursor:pointer;background:#ffffff05;gap:7px;padding:6px 7px;font-size:9.5px;line-height:1.45;display:flex}.issue:hover{border-color:var(--line-strong)}.issue .sev{font-family:var(--mono);letter-spacing:.08em;flex:none;align-self:flex-start;margin-top:1px;padding:1px 4px;font-size:7px}.issue.error .sev{color:var(--red-soft);background:#ef6c4d33}.issue.warning .sev{color:var(--amber-soft);background:#e0a34a2e}.issue.info .sev{color:var(--blue-soft);background:#52c5e626}.issue p{color:var(--ink-dim);margin:0}.issue-meta{font-family:var(--mono);color:var(--ink-faint);margin-top:2px;font-size:7.5px}.editor-toolbar-overlay{z-index:4;pointer-events:auto;gap:5px;display:flex;position:absolute;bottom:16px;left:304px}.editor-toolbar-overlay .btn{background:#080d0fe6;padding:6px 9px;font-size:9px}.editor-hint{border:1px solid var(--line);font-family:var(--mono);color:var(--ink-faint);z-index:2;pointer-events:none;background:#080d0fd1;padding:6px 10px;font-size:8px;position:absolute;top:72px;left:304px}.editor-status{font-family:var(--mono);color:var(--ink-faint);border:1px solid var(--line);z-index:4;pointer-events:none;background:#080d0fd9;padding:6px 9px;font-size:8px;position:absolute;bottom:16px;right:346px}.editor-tab-row{border-bottom:1px solid var(--line);display:flex}.editor-tab{font-family:var(--mono);color:var(--ink-faint);letter-spacing:.06em;background:0 0;border:0;flex:1;padding:8px 4px;font-size:8px}.editor-tab.active{color:var(--amber-soft);border-bottom:1px solid var(--amber)}#overlay,#hud-root>.hud,#hud-root>.editor-screen{pointer-events:none}.pause-overlay{z-index:62;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0407098c;place-items:center;display:grid;position:absolute;inset:0}.pause-card{border:1px solid var(--line-strong);text-align:center;min-width:300px;box-shadow:var(--shadow);background:#0a1012f7;padding:30px 36px}.pause-card h2{letter-spacing:.06em;margin:4px 0 8px;font-size:42px;font-weight:650}.pause-card p{color:var(--ink-dim);margin:0 0 18px;font-size:12px}.modal-card.wide{width:min(780px,94vw)}.save-slots{gap:6px;margin-bottom:12px;display:grid}.slot-row{border:1px solid var(--line);background:#ffffff05;justify-content:space-between;align-items:center;gap:14px;padding:10px 12px;display:flex}.slot-row b{font-family:var(--mono);letter-spacing:.15em;color:var(--amber-soft);font-size:9px;display:block}.slot-row small{color:var(--ink-faint);margin-top:3px;font-size:10px;display:block}.slot-row .btn{min-width:92px;padding:6px 10px;font-size:9px}.modal-note{font-family:var(--mono);letter-spacing:.03em;color:var(--ink-faint)!important;font-size:9px!important;line-height:1.6!important}.validation-modal{color:var(--red-soft);margin:10px 0 0;padding-left:18px;font-size:11px;line-height:1.7}.briefing-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.briefing-grid h4{font-family:var(--mono);letter-spacing:.18em;color:var(--amber);margin:0 0 6px;font-size:8px}.briefing-grid h4:not(:first-child){margin-top:16px}.briefing-grid p{margin:0;font-size:11.5px;line-height:1.6}.build-intro{color:var(--ink-dim);border-bottom:1px solid #a7beb81a;padding:6px 8px 8px;font-size:9.5px;line-height:1.5}.fatal-screen{z-index:200;background:#070b0d;place-items:center;display:grid;position:fixed;inset:0}.fatal-card{border:1px solid var(--line-strong);background:var(--panel);width:min(560px,90vw);box-shadow:var(--shadow);padding:34px}.fatal-card h1{margin:6px 0 14px;font-size:30px}.fatal-card p{color:var(--ink-dim);font-size:13px;line-height:1.65}.fatal-note{font-family:var(--mono);color:var(--ink-faint)!important;font-size:10px!important}.tool-note{color:var(--ink-faint);margin:8px 0 0;font-size:9px;line-height:1.55}.editor-tools textarea{border:1px solid var(--line);resize:vertical;background:#ffffff09;border-radius:2px;width:100%;padding:6px 7px;font-size:10px}.tool-btn small{color:var(--ink-faint);font-size:6.5px}.inspector-section{border-top:1px solid var(--line);margin-top:12px;padding-top:10px}.inspector-section h4{font-family:var(--mono);letter-spacing:.16em;color:var(--ink-faint);justify-content:space-between;margin:0 0 8px;font-size:8px;display:flex}.start-row{color:var(--ink-dim);border-bottom:1px solid #ffffff0a;justify-content:space-between;align-items:center;gap:8px;padding:5px 0;font-size:10px;display:flex}.start-row b{font-family:var(--mono);color:var(--ink);font-size:9px;font-weight:500}.faction-dot{width:6px;height:6px;margin-right:6px;display:inline-block;transform:rotate(45deg)}.summary-grid{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.summary-grid div{border-left:1px solid var(--line);padding-left:6px}.summary-grid span{font-family:var(--mono);letter-spacing:.1em;color:var(--ink-faint);font-size:7px;display:block}.summary-grid b{font-family:var(--mono);font-size:13px;font-weight:500}.open-grid{grid-template-columns:repeat(3,1fr);margin-top:10px}.open-grid .tool-btn{padding:12px 5px}.editor-inspect-btn,.editor-tools-btn,.editor-panel-close,.editor-sheet-grab,.editor-sheet-close,.editor-backdrop,.editor-zoom-btn{display:none}.editor-sheet-meta{align-items:center;gap:2px;display:flex}.editor-toolbar-overlay .btn.active{border-color:var(--amber);color:var(--amber-soft);background:#e0a34a1f}.tool-btn:focus-visible,.terrain-swatch:focus-visible,.editor-tab:focus-visible,.editor-topbar .btn:focus-visible,.editor-toolbar-overlay .btn:focus-visible{outline:2px solid var(--amber-soft);outline-offset:1px}@media (max-width:1000px){.editor-tools{width:232px}.editor-side{width:280px}.editor-toolbar-overlay,.editor-hint{left:240px}.editor-status{right:294px}}@media (max-width:900px),(pointer:coarse) and (max-width:1200px),(max-height:480px){.editor-topbar{top:env(safe-area-inset-top);height:56px;padding-left:max(8px, env(safe-area-inset-left));padding-right:max(8px, env(safe-area-inset-right));z-index:9}.editor-topbar .top-ident{display:none}.editor-title{min-width:0;padding:0 8px}.editor-title b{white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.editor-title span{display:none}.editor-topbar .actions{flex:none;gap:4px;padding:0}.editor-topbar .actions .btn{justify-content:center;gap:0;width:44px;min-width:44px;height:44px;padding:0}.editor-topbar .actions .btn .btn-label{display:none}.editor-topbar .actions .btn .icon{width:19px;height:19px}.editor-topbar .actions .editor-tools-btn{gap:6px;width:auto;padding:0 10px}.editor-topbar .actions .editor-tools-btn .btn-label{letter-spacing:.06em;font-size:9px;display:inline}.editor-topbar .actions .btn-primary{width:auto;padding:0 12px}.editor-tools-btn,.editor-inspect-btn{display:inline-flex}.editor-tools{top:calc(56px + env(safe-area-inset-top));z-index:7;width:min(340px,88vw);transition:transform .18s;bottom:0;transform:translate(calc(-100% - 2px));box-shadow:14px 0 30px #00000059}.editor-tools.open{transform:none}.editor-tools-head{min-height:48px;padding:2px 4px 2px 12px;display:flex}.editor-panel-close,.editor-sheet-close{width:44px;height:44px;color:var(--ink-dim);background:0 0;border:0;flex:0 0 44px;justify-content:center;align-items:center;display:inline-flex}.editor-panel-close:hover,.editor-sheet-close:hover{color:var(--amber-soft)}.editor-tab{min-height:44px;font-size:9px}.tool-scroll{padding:10px 10px max(14px, env(safe-area-inset-bottom));overscroll-behavior:contain}.tool-grid{gap:6px}.tool-btn{min-height:48px;padding:6px 3px;font-size:9px}.tool-btn .icon{width:18px;height:18px}.terrain-grid{grid-template-columns:repeat(3,1fr);gap:6px}.terrain-swatch{height:48px;font-size:8px}.brush-row{min-height:44px}.brush-row input{height:44px}.editor-side{width:auto;height:var(--ed-sheet-h,min(68vh, 460px));max-height:calc(100vh - 56px - env(safe-area-inset-top));border-left:0;border-top:1px solid var(--line);z-index:8;padding-bottom:env(safe-area-inset-bottom);transition:transform .18s;inset:auto 0 0;transform:translateY(calc(100% + 2px))}.editor-side.open{transform:none}.editor-side.dragging{transition:none}.editor-sheet-grab{touch-action:none;cursor:grab;flex:0 0 18px;height:18px;display:block;position:relative}.editor-sheet-grab:before{content:"";background:var(--line-strong);width:38px;height:4px;margin-left:-19px;position:absolute;top:7px;left:50%}.editor-sheet-meta{align-items:center;gap:2px;display:flex}.editor-side .panel-head{min-height:48px;padding:0 4px 0 12px}.editor-inspector{padding:0 12px max(18px, env(safe-area-inset-bottom));overscroll-behavior:contain}.form-row{grid-template-columns:88px 1fr;font-size:11px}.form-row input,.form-row select,.form-row textarea{min-height:44px;padding:8px;font-size:12px}.form-row textarea{min-height:64px}.issue{min-height:44px;padding:8px}.summary-grid b{font-size:14px}.editor-backdrop{top:calc(56px + env(safe-area-inset-top));opacity:0;pointer-events:none;z-index:6;background:#0407098c;transition:opacity .16s;display:block;position:absolute;bottom:0;left:0;right:0}.editor-backdrop.open{opacity:1;pointer-events:auto}.editor-hint{top:calc(64px + env(safe-area-inset-top));white-space:nowrap;text-overflow:ellipsis;max-width:none;padding:6px 8px;font-size:7.5px;left:8px;right:8px;overflow:hidden}.editor-toolbar-overlay{left:8px;right:8px;bottom:max(8px, env(safe-area-inset-bottom));gap:4px}.editor-toolbar-overlay .btn{flex:1;justify-content:center;min-height:44px;padding:0 8px;font-size:9px}.editor-zoom-btn{width:44px;flex:0 0 44px!important;padding:0!important;font-size:16px!important;display:inline-flex!important}.editor-status{left:8px;right:8px;bottom:calc(max(8px, env(safe-area-inset-bottom)) + 52px);text-align:right;padding:5px 8px;font-size:7.5px}}@media (min-width:620px){.editor-topbar .actions .btn-primary .btn-label{display:inline}.editor-topbar .actions .btn-primary{gap:6px}}@media (max-width:520px){.editor-title{display:none}.editor-toolbar-overlay .btn{flex:0 0 44px;padding:0}.editor-toolbar-overlay .btn-label{display:none}.editor-topbar .actions{gap:2px}.editor-topbar .actions .editor-tools-btn{padding:0 6px}}@media (max-width:760px){.briefing-grid{grid-template-columns:1fr}}.intro-frame{width:min(72vw,440px,62vh)}@media (max-width:1180px){.menu-grid{grid-template-columns:250px minmax(0,1fr)}.menu-columns{grid-template-columns:minmax(0,1fr) 300px;gap:20px}}@media (max-width:900px),(max-height:620px){.menu-topbar{padding:12px 18px}.game-logo{--logo-size:46px;gap:12px}.game-logo-full{letter-spacing:.24em;padding-left:11px}.game-tagline{display:none}.menu-grid{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.menu-nav{scrollbar-width:none;background:#050a0cd1;border-bottom:1px solid #a7beb81f;border-right:0;flex-direction:row;gap:6px;padding:10px 12px;overflow:auto hidden}.menu-nav::-webkit-scrollbar{display:none}.menu-nav-head,.menu-nav-rule{display:none}.menu-nav-item{border-color:#a7beb81a;flex:none;gap:10px;min-height:48px;padding:8px 14px}.menu-nav-item:hover{transform:none}.menu-nav-text b{letter-spacing:.1em;font-size:12px}.menu-nav-text small,.menu-nav-go{display:none}.menu-nav-index{font-size:8px}.menu-stage{padding:16px 16px 22px}.menu-view-head h2{margin-bottom:12px;font-size:clamp(26px,6.4vw,36px)}.lede{font-size:12.5px;line-height:1.55}.menu-columns{grid-template-columns:minmax(0,1fr);gap:16px;margin-top:16px}.menu-brief{max-width:420px}.menu-actions,.difficulty-options{width:100%}.difficulty-btn{letter-spacing:.12em;flex:1;min-height:44px;padding:8px 4px;font-size:8px}.difficulty-note{font-size:9.5px}.menu-actions{max-width:none}.menu-actions .btn{min-height:44px}.menu-actions .btn-large{width:100%;min-width:0}.menu-points li{grid-template-columns:84px minmax(0,1fr);gap:12px;font-size:11.5px}.menu-settings{margin-top:16px}.menu-settings .setting-row{gap:14px;padding:12px 0}.menu-settings .setting-row input[type=range]{width:140px}.menu-footer{padding:10px 16px;font-size:7.5px}.menu-footer-mid{display:none}.intro-meta{left:max(18px, env(safe-area-inset-left,0px));bottom:22px}.intro-skip{right:max(18px, env(safe-area-inset-right,0px));bottom:18px}.intro-progress{bottom:68px}}@media (max-height:560px){.menu-topbar{padding:8px 16px}.menu-nav-item{min-height:44px}.menu-stage{padding-top:12px}.menu-view-head h2{font-size:26px}.lede{display:none}.menu-columns{margin-top:14px}.menu-brief{display:none}.menu-footer{padding:8px 16px}.intro-progress{display:none}}@media (prefers-reduced-motion:reduce){.intro-screen{display:none}.rotate-phone{transform:rotate(-90deg);animation:none!important}.intro-engine-rule{transform:none}.menu-crt,.menu-crt:before,.menu-crt:after,#app.menu-mode #gl,#app.glitching .menu-grid,#app.glitching .menu-crt:after,#app.menu-mode.glitching #gl,#app.glitching .menu-view-head>*,#app.glitching .menu-points li,#app.glitching .menu-columns>*,#app.glitching .menu-settings .setting-row,#app.glitching .menu-actions>.btn,.intro-grid,#btn-deploy:after,.menu-atmos:before,.menu-screen.ready.replay .menu-topbar,.menu-screen.ready.replay .menu-footer,.menu-screen.ready.replay .menu-stage,.menu-screen.ready.replay .menu-nav-item,.menu-screen.ready.replay .menu-nav-head,.menu-screen.docked .menu-topbar .game-logo-full:before,.menu-screen.docked .menu-topbar .game-logo-full b,.menu-screen.docked .menu-topbar .game-tagline,.menu-screen[data-view=idle] .menu-view[data-menu-panel=idle],.menu-screen[data-view=skirmish] .menu-view[data-menu-panel=skirmish],.menu-screen[data-view=editor] .menu-view[data-menu-panel=editor],.menu-screen[data-view=settings] .menu-view[data-menu-panel=settings]{animation:none!important}}.rotate-screen{z-index:130;text-align:center;background:radial-gradient(at 50% 38%,#1424298c,#0000 62%),#04070a;place-items:center;padding:32px 26px;display:grid;position:fixed;inset:0}.rotate-card{flex-direction:column;align-items:center;gap:12px;max-width:340px;display:flex}.rotate-device{place-items:center;width:156px;height:156px;margin-bottom:2px;display:grid}.rotate-phone{border:2px solid #e0a34ac7;border-radius:9px;width:62px;height:112px;position:relative;box-shadow:0 0 30px #e0a34a24}.rotate-phone:before{content:"";border:1px solid #e0a34a29;border-radius:4px;position:absolute;inset:7px 7px 14px}.rotate-phone:after{content:"";background:#e0a34a8c;width:16px;height:2px;margin-left:-8px;position:absolute;bottom:7px;left:50%}.rotate-screen:not(.hidden) .rotate-phone{animation:3.6s cubic-bezier(.45,0,.25,1) infinite rotate-hint}@keyframes rotate-hint{0%,15%{transform:rotate(0)}38%,66%{transform:rotate(-90deg)}88%,to{transform:rotate(0)}}.rotate-screen .eyebrow{margin:0}.rotate-card h2{font-family:var(--display);letter-spacing:-.01em;color:var(--ink);margin:0;font-size:clamp(24px,6.4vw,32px);font-weight:650;font-stretch:88%}.rotate-copy{max-width:300px;color:var(--ink-dim);margin:0;font-size:13px;line-height:1.6}.rotate-note{font-family:var(--mono);letter-spacing:.22em;color:#e0a34a99;margin:6px 0 0;font-size:8px}body.orientation-locked{touch-action:none;overflow:hidden}.intro-fallback{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:14px;display:none;position:absolute;inset:0}.intro-fallback img{filter:drop-shadow(0 0 34px #e0a34a47);width:clamp(64px,9vw,96px);height:auto}.intro-fallback span{font-family:var(--display);letter-spacing:.42em;color:var(--ink);font-size:clamp(18px,2.4vw,26px);font-weight:700;font-stretch:88%}.intro-fallback small{font-family:var(--mono);letter-spacing:.24em;color:var(--ink-faint);font-size:8px}.intro-screen.blocked .intro-fallback{animation:.62s ease-out both intro-reveal;display:flex}.intro-screen.blocked .intro-video,.intro-screen.blocked .intro-progress{display:none}
