@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@400;500;600;700&family=Barlow:wght@400;500;600;700&display=swap');
:root{--bg:#080e15;--panel:#101a23;--ink:#e8edf0;--muted:#91a0ac;--line:#ffffff19;--orange:#f2a366;--blue:#75d9ea;--font:'Barlow',Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px var(--font)}button,a,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--blue);outline-offset:4px}button{color:inherit;background:none;border:0}p{color:var(--muted);line-height:1.7}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Barlow Condensed',Arial,sans-serif;font-weight:500}h1{font-size:clamp(60px,8vw,116px);line-height:.96;letter-spacing:-1px}h2{font-size:clamp(36px,4vw,54px);line-height:1.1}h3{font-size:26px}.eyebrow,.mono{font-size:11px;letter-spacing:2px;text-transform:uppercase}.eyebrow{color:var(--orange);display:flex;gap:10px;align-items:center;margin-bottom:22px}.eyebrow:before{content:'';width:24px;height:1px;background:var(--orange)}.shell{max-width:1320px;margin:auto;padding:0 52px}.topbar{position:relative;z-index:5;height:90px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:35px}.brand{display:flex;gap:10px;align-items:center;font-size:22px;font-weight:600;letter-spacing:2px}.brand img{width:34px}.brand .x{color:var(--orange)}.brand small{font:10px var(--font);color:var(--muted);letter-spacing:1px;display:block;margin-top:3px}.nav{display:flex;gap:30px;align-items:center;margin-right:auto;margin-left:40px}.nav a{font-size:11px;font-weight:600;letter-spacing:1.8px;color:#a4b1bb;padding:36px 0}.nav a.active{color:var(--orange);box-shadow:0 1px var(--orange)}.audio-btn{font-size:11px;letter-spacing:1px;color:var(--muted);white-space:nowrap}.audio-btn b{color:var(--orange);margin-right:7px;font-size:15px}.hero-wrap{position:relative;isolation:isolate;overflow:hidden}.hero-art{position:absolute;inset:0;z-index:-2;background:url('/assets/frontier.webp') center center/cover no-repeat}.hero-wrap:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#080e15f5 0%,#080e15dc 26%,#080e1545 62%,#080e1500),linear-gradient(0deg,#080e15,transparent 25%)}.hero{min-height:690px;padding-top:104px;position:relative}.hero h1{max-width:640px;margin-bottom:26px}.hero h1 span{color:var(--orange)}.hero p{max-width:380px;font-size:16px;color:#afbac4;line-height:1.75;margin-bottom:30px}.actions{display:flex;gap:12px;align-items:center}.btn{min-height:50px;padding:16px 25px;display:inline-flex;align-items:center;justify-content:center;gap:25px;font-size:11px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;border:1px solid #d9e6ef45;background:#111c2390;transition:background .2s,transform .2s}.btn:hover{background:#263541;transform:translateY(-2px)}.btn.primary{background:var(--orange);color:#15202a;border-color:var(--orange)}.btn.primary:hover{background:#ffc38f}.btn .arrow{font-size:18px;line-height:10px}.hero .fine{font-size:11px;letter-spacing:.7px;color:#82909d;margin-top:18px}.hero-location{position:absolute;right:0;bottom:58px;text-align:right;border-right:2px solid var(--orange);padding-right:17px;font-size:11px;letter-spacing:1.4px;line-height:1.9}.hero-location span{color:#8192a0;font-size:10px}.strip{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0}.strip>div{display:flex;gap:17px;align-items:center;padding-left:26px;border-right:1px solid var(--line)}.strip>div:first-child{padding-left:0}.strip>div:last-child{border:0}.strip b{font-size:12px;letter-spacing:2px;display:block;margin-bottom:5px}.strip span{font-size:12px;color:var(--muted)}.strip svg{width:28px;height:28px;stroke:var(--orange);fill:none;stroke-width:1.2}.section{padding-top:75px;padding-bottom:75px}.section-title{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:35px}.section-title h2{margin-bottom:0}.section-title p{max-width:360px;font-size:14px;margin-bottom:0}.section-no{color:#566572;font-size:11px;letter-spacing:2px;margin-bottom:13px;display:block}.feature-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:18px}.feature{min-height:310px;position:relative;overflow:hidden;border:1px solid var(--line);background:#101b24;display:flex;flex-direction:column;justify-content:end;padding:26px}.feature .art{position:absolute;inset:0;z-index:0;opacity:.7;background:url('/assets/frontier.webp') 75% 60%/cover;transition:transform .6s}.feature:hover .art{transform:scale(1.04)}.feature:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#081019 0%,#08101905 100%)}.feature>*:not(.art){position:relative;z-index:1}.feature h3{margin-bottom:8px}.feature p{font-size:13px;line-height:1.5;margin-bottom:0}.feature-tag{position:absolute!important;top:22px;left:24px;font-size:9px;letter-spacing:2px;color:var(--orange)}.asset-preview{position:absolute!important;width:95%;height:200px;top:2px;left:3%;background:url('/assets/buildings.webp') no-repeat;background-size:300% 300%;filter:drop-shadow(0 12px 15px #0008)}.unit-preview{background-image:url('/assets/units.webp');background-size:300% 200%;background-position:50% 0}.worldline{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.3fr;gap:70px}.factions{display:grid;gap:0}.faction-row{border-bottom:1px solid var(--line);padding:23px 0;display:flex;gap:20px}.faction-row .num{color:var(--orange);font-size:11px;padding-top:6px}.faction-row h3{margin-bottom:4px}.faction-row p{font-size:13px;margin:0}.faction-row .emblem{margin-left:auto;color:#70cede;font-size:25px}.bottom-cta{padding:50px;background:#111d27;border:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:70px}.bottom-cta h2{margin-bottom:10px}.bottom-cta p{margin-bottom:0;font-size:14px}footer{border-top:1px solid var(--line);padding:27px 0;display:flex;justify-content:space-between;color:#647582;font-size:10px;letter-spacing:1px}.page{min-height:calc(100vh - 160px);padding-top:65px}.page h1{font-size:64px;margin-bottom:20px}.back{font-size:11px;color:var(--muted);margin-bottom:30px;display:inline-block;letter-spacing:1px}.mode-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;margin-top:35px}.mode-card{padding:28px;border:1px solid var(--line);background:var(--panel);display:flex;flex-direction:column;gap:14px;min-height:300px}.mode-card p{font-size:14px;margin:0}.mode-card .btn{margin-top:auto}.mode-card h2{font-size:35px;margin:0}.tag{font-size:9px;letter-spacing:2px;color:var(--orange)}.muted-card{border-style:dashed}.setup{display:grid;grid-template-columns:1.1fr 1fr;gap:55px;margin-top:35px}.setup-art{background:linear-gradient(0deg,#0b15246b,#0000),url('/assets/frontier.webp') 75% center/cover;min-height:430px;border:1px solid var(--line);position:relative;padding:30px;display:flex;align-items:end}.setup-art h2{font-size:40px;margin:0}.field{margin-bottom:22px}.field label{display:block;font-size:10px;letter-spacing:1.5px;color:var(--muted);margin-bottom:10px;text-transform:uppercase}select{width:100%;border:1px solid var(--line);background:#111d29;color:var(--ink);padding:13px}option{background:#111d29}.choice-row{display:flex;gap:8px}.choice{flex:1;padding:12px;border:1px solid var(--line);font-size:12px}.choice.selected{border-color:var(--orange);color:var(--orange);background:#f2a3660c}.guide-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.guide-item{border-top:1px solid var(--line);padding:24px 0;display:flex;gap:20px}.guide-item b{color:var(--orange);font-weight:400;font-size:11px;padding-top:7px}.guide-item h3{margin-bottom:8px}.guide-item p{font-size:14px;margin:0}kbd{border:1px solid #ffffff30;background:#ffffff0a;padding:2px 5px;border-radius:2px;font:11px var(--font)}.settings{max-width:640px}.setting-row{display:flex;justify-content:space-between;padding:24px 0;border-bottom:1px solid var(--line);gap:20px}.setting-row p{font-size:13px;margin:6px 0 0}.setting-row input{accent-color:var(--orange);width:150px}.setting-row button{color:var(--orange)}#toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);padding:14px 25px;background:#172b3a;border:1px solid #6ac5d55c;font-size:13px;z-index:100;display:none}dialog{background:#111d28;color:var(--ink);border:1px solid var(--line);max-width:480px;padding:35px}dialog::backdrop{background:#000b}dialog h2{font-size:38px}dialog p{font-size:14px}.game{position:fixed;inset:0;display:flex;flex-direction:column;background:#0b121c;z-index:20}.game-top{height:62px;flex-shrink:0;background:#0b151f;border-bottom:1px solid #ffffff24;display:flex;align-items:center;padding:0 20px;gap:24px}.game-top .brand{font-size:16px;gap:7px}.game-top .brand img{width:27px}.resources{display:flex;gap:25px;align-items:center;margin:auto}.resource{font-size:16px;display:flex;align-items:center;gap:8px}.resource small{font-size:9px;color:var(--muted);letter-spacing:1px}.resource i{font-style:normal;color:var(--blue)}.resource:nth-child(2) i{color:#b4d774}.resource:nth-child(3) i{color:var(--orange)}.game-top .timer{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.tiny-btn{border:1px solid var(--line);padding:8px 12px;font-size:11px;letter-spacing:1px}.battle{position:relative;flex:1;min-height:0;overflow:hidden}.battle>canvas{display:block;width:100%;height:100%;touch-action:none}.sector-label{position:absolute;top:22px;left:24px;font-size:10px;letter-spacing:2px;color:#ccdce7;pointer-events:none;line-height:1.8}.sector-label span{font-size:9px;color:#8b9da8}.mission{position:absolute;top:20px;right:20px;max-width:265px;background:#0b1621df;border-left:2px solid var(--orange);padding:16px 19px;pointer-events:none}.mission .tag{font-size:9px}.mission h3{font:600 13px var(--font);margin:10px 0}.mission p{font-size:11px;line-height:1.6;margin:0}.map-tools{position:absolute;left:20px;bottom:18px;display:flex;gap:6px}.map-tools button{background:#0b1722df;border:1px solid var(--line);padding:7px 11px;font-size:10px}.game-alert{position:absolute;top:95px;left:50%;transform:translateX(-50%);background:#44271ce8;border:1px solid #f2a36677;padding:12px 20px;font-size:12px;display:none}.hud{height:188px;flex-shrink:0;display:grid;grid-template-columns:215px 250px 1fr 210px;background:linear-gradient(#13212c,#0d1822);border-top:1px solid #ffffff30;padding:13px;gap:16px}.minimap-wrap{position:relative;border:1px solid #ffffff26;background:#060f17;overflow:hidden}.minimap-wrap canvas{width:100%;height:100%;cursor:crosshair}.minimap-wrap span{position:absolute;bottom:5px;left:8px;font-size:8px;letter-spacing:1px;color:#a5c0d0;pointer-events:none}.selection{padding:5px 13px;border-right:1px solid var(--line);position:relative}.selection .tag{color:var(--blue);font-size:9px}.selection h3{font-size:23px;margin:8px 0}.selection p{font-size:11px;line-height:1.5;margin-bottom:7px}.hp{height:3px;background:#ffffff13;margin:8px 0}.hp>div{height:100%;background:#83c4a5}.sel-bottom{font-size:10px;color:var(--muted)}.commands{display:flex;gap:6px;flex-wrap:wrap;align-content:start;padding-top:4px;overflow-y:auto}.command{border:1px solid #ffffff20;background:#ffffff04;width:88px;min-height:63px;text-align:left;padding:8px;position:relative;font-size:10px;transition:background .2s}.command:hover{background:#ffffff12;border-color:var(--orange)}.command:disabled{opacity:.32;cursor:not-allowed}.command kbd{position:absolute;right:4px;top:4px;font-size:8px;color:#8298aa;border:0;padding:0;background:none}.command small{display:block;color:var(--orange);font-size:9px;margin-top:7px}.hud-right{border-left:1px solid var(--line);padding-left:16px;display:flex;flex-direction:column;gap:8px}.hud-right .tag{color:#7f96a5}.hud-right p{font-size:10px;line-height:1.6;margin:0}.queue{font-size:10px;color:var(--blue);line-height:1.8}.game-hint{height:23px;flex-shrink:0;background:#080f17;display:flex;justify-content:center;align-items:center;gap:22px;color:#718694;font-size:9px;letter-spacing:.3px}.guide-step{color:var(--blue)!important}.game .audio-btn{font-size:10px}.pause-overlay{position:absolute;inset:0;background:#040c15c9;display:flex;align-items:center;justify-content:center;z-index:30;backdrop-filter:blur(7px)}.pause-card{padding:40px;background:#101e2b;border:1px solid #ffffff24;min-width:350px;text-align:center}.pause-card h2{font-size:45px}.pause-card .btn{margin:5px;width:100%}.result-stat{font-size:13px;color:var(--muted);margin-bottom:22px}.screen-reader{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(min-width:1500px){.shell{max-width:1450px}.hero{min-height:760px;padding-top:125px}.hero-art{background-position:center 43%}}@media(max-width:1000px){.shell{padding:0 28px}.nav{gap:18px;margin-left:15px}.hero{padding-top:85px;min-height:650px}.hero h1{font-size:86px}.hud{grid-template-columns:160px 190px 1fr;height:196px}.hud-right{display:none}.command{width:77px}.feature-grid{grid-template-columns:1fr 1fr}.feature:first-child{grid-column:1/-1;min-height:260px}.worldline{gap:35px}.game-top{gap:12px}.resources{gap:14px}.resource small{display:none}}
@media(max-width:650px){.shell{padding:0 20px}.topbar{height:auto;min-height:80px;flex-wrap:wrap;padding:17px 0 0;gap:16px}.brand{font-size:18px}.brand img{width:28px}.nav{order:3;width:100%;margin:0;gap:0;justify-content:space-between}.nav a{padding:14px 0;font-size:9px}.topbar>.audio-btn{margin-left:auto;font-size:9px}.hero{padding-top:65px;min-height:640px}.hero h1{font-size:68px;max-width:390px}.hero p{font-size:14px;max-width:300px}.hero-art{background-position:67% center}.hero-wrap:after{background:linear-gradient(90deg,#080e15e0,#080e1560),linear-gradient(0deg,#080e15,transparent)}.hero-location{display:none}.eyebrow{font-size:9px;letter-spacing:1.5px}.actions{gap:8px;flex-wrap:wrap}.btn{padding:14px 18px;font-size:10px}.strip{grid-template-columns:1fr 1fr;row-gap:25px}.strip>div{padding-left:15px}.strip>div:nth-child(3){padding-left:0}.strip>div:nth-child(2){border:0}.strip b{font-size:10px}.strip span{font-size:10px}.strip svg{width:23px}.section{padding-top:48px;padding-bottom:48px}.section-title{display:block}.section-title p{margin-top:20px}.feature-grid,.worldline,.setup,.mode-grid,.guide-grid{grid-template-columns:1fr}.feature:first-child{grid-column:auto}.feature{min-height:280px}.worldline{gap:20px}.bottom-cta{padding:26px;display:block;margin-bottom:40px}.bottom-cta .btn{margin-top:25px}footer{gap:20px;font-size:8px}.page{padding-top:40px}.page h1{font-size:50px}.setup{gap:25px}.setup-art{min-height:230px}.setting-row input{width:95px}.game-top{height:54px;padding:0 8px;gap:7px}.game-top .brand{font-size:11px;letter-spacing:0}.game-top .brand img{width:20px}.game-top .audio-btn{display:none}.resource{font-size:12px;gap:4px}.resources{gap:10px}.game-top .timer{font-size:10px}.tiny-btn{font-size:10px;padding:7px}.hud{height:230px;grid-template-columns:95px 1fr;padding:8px;gap:8px}.selection{padding:3px 8px;border:0}.selection h3{font-size:20px}.commands{grid-column:1/-1;gap:4px;max-height:100px}.command{width:calc(25% - 4px);min-height:45px;font-size:9px}.mission{top:13px;right:10px;max-width:170px;padding:10px}.mission p{font-size:10px}.mission h3{font-size:11px}.sector-label{top:15px;left:10px;font-size:8px}.game-hint{font-size:8px;gap:8px}.game-hint span:nth-child(3){display:none}.pause-card{min-width:290px;max-width:90%;padding:24px}.map-tools{left:10px;bottom:10px}.map-tools button{font-size:9px;padding:6px}.game-alert{top:110px;width:80%}.minimap-wrap{min-height:100px}}

.roster{border-top:1px solid var(--line);padding-top:15px;margin-bottom:15px}.roster summary{font-size:10px;letter-spacing:1px;color:var(--orange);cursor:pointer}.roster h4{font-size:11px;margin:17px 0 8px}.roster p{font-size:12px!important;line-height:1.9!important}

@media(min-width:1001px){.hero h1{font-size:clamp(70px,6.4vw,94px);max-width:720px}}

/* Compact command deck: the battlefield takes priority. */
.game-top{height:44px;padding:0 15px}.game-top .brand{font-size:14px}.game-top .brand img{width:23px}
.hud{height:112px;grid-template-columns:158px 205px minmax(200px,1fr) 165px;padding:7px 10px;gap:12px}
.minimap-wrap canvas{object-fit:fill}.selection{padding:3px 8px}.selection .tag{font-size:8px;letter-spacing:1.4px}.selection h3{font-size:20px;margin:5px 0}.selection p{display:none}.selection .hp{margin:7px 0 5px}.sel-bottom{font-size:9px}.selection .sel-bottom{line-height:1.5;display:block}
.commands{padding-top:1px;gap:5px}.command{width:76px;min-height:44px;padding:7px;font-size:10px}.command small{margin-top:5px;font-size:9px}.hud-right{padding-left:12px;gap:6px}.hud-right .tag{font-size:8px;letter-spacing:1px}.hud-right p{display:none}.hud-right .tiny-btn{padding:6px;font-size:9px;margin-top:auto}.queue{font-size:9px}.game-hint{height:18px;font-size:8px}.map-tools{bottom:12px}.map-tools button{font-size:9px;padding:7px 10px}.mission{max-width:250px;padding:12px 16px}.mission h3{margin:8px 0}.mission p{font-size:11px}
.guide-grid{gap:30px 26px}.guide-item{display:block;padding:0;border:1px solid var(--line);background:#0d1822;overflow:hidden}.guide-image{display:block;position:relative;aspect-ratio:16/10;background:#162430;overflow:hidden}.guide-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.guide-image:hover img{transform:scale(1.03)}.guide-image span{position:absolute;bottom:0;left:0;right:0;padding:14px 18px;font-size:9px;letter-spacing:1.6px;background:linear-gradient(transparent,#07111ded);color:var(--orange)}.guide-caption{display:flex;gap:16px;padding:23px}.guide-caption b{padding-top:6px;font-size:11px;color:var(--orange)}.guide-caption h3{font-size:27px}.guide-caption p{font-size:13px;line-height:1.8}
@media(max-width:1000px){.hud{grid-template-columns:130px 180px minmax(150px,1fr);height:112px}.hud-right{display:none}.command{width:72px}.game-top .audio-btn{display:none}}
@media(max-width:650px){.hud{height:148px;grid-template-columns:95px 1fr;padding:6px;gap:6px}.commands{grid-column:1/-1;max-height:65px}.command{width:calc(25% - 4px);min-height:35px;font-size:9px;padding:5px}.selection h3{font-size:18px}.game-top{height:42px;padding:0 7px}.game-top .brand{font-size:10px}.mission{top:12px;right:10px;max-width:165px;padding:9px}.mission p{font-size:9px}.map-tools{left:8px;gap:4px;right:8px;flex-wrap:wrap}.map-tools button{padding:6px 7px;font-size:8px}.game-hint{height:16px;font-size:7px;gap:9px}.minimap-wrap{min-height:65px}.guide-caption{padding:20px}.guide-grid{gap:22px}}
.command{padding-top:14px;padding-bottom:5px;min-height:46px}.command kbd{top:3px;right:4px;font-size:7px}.command small{margin-top:4px}

/* Floating instruments: no permanent command bar or reserved canvas space. */
[hidden]{display:none!important}
.command-panel{position:fixed;z-index:25;width:276px;max-width:calc(100vw - 16px);max-height:calc(100vh - 65px);border:1px solid #84bace45;background:linear-gradient(135deg,#162934f5,#091723f5);box-shadow:0 14px 45px #0007,inset 0 0 0 3px #0b1b24;backdrop-filter:blur(14px);overflow:hidden;border-radius:3px}
.panel-grip{touch-action:none;user-select:none;cursor:grab}.is-dragging .panel-grip{cursor:grabbing}.is-dragging{box-shadow:0 20px 45px #0009,0 0 0 1px #7bd8e677!important}
.command-handle{display:flex;align-items:center;gap:9px;padding:8px 11px;border-bottom:1px solid #81c8da2b;background:#78bcd00a;font-size:9px;letter-spacing:2px;color:#8fcddd;min-height:36px}.grip-dots{font-size:18px;color:#7198a8;letter-spacing:0;line-height:16px}.panel-actions{margin-left:auto;display:flex;gap:5px}.panel-actions button{width:24px;height:22px;color:#aacbd6;font-size:17px;line-height:15px;letter-spacing:0;border:1px solid #9bd4df24;border-radius:2px;background:#050e1833}.panel-actions button:hover{color:var(--orange);border-color:#f2a36688}
.command-content{padding:12px;max-height:calc(100vh - 103px);overflow-y:auto}.command-panel .selection{padding:0 0 12px;border:0;border-bottom:1px solid #99cbd521;margin-bottom:12px}.command-panel .selection .tag{font-size:8px}.command-panel .selection h3{font-size:25px;margin:7px 0}.command-panel .selection p{display:block;font-size:11px;line-height:1.6;margin-bottom:8px}.command-panel .commands{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;max-height:none;overflow:visible;align-content:start}.command-panel .command{width:100%;min-height:54px;padding:16px 6px 7px;font-size:10px}.command-panel .command small{font-size:9px}.production-block{border-top:1px solid #99cbd521;margin-top:12px;padding-top:10px}.production-block>.tag{color:#89a9b8;font-size:8px;letter-spacing:1px}.production-block .queue{margin-top:8px;font-size:10px}.panel-help{width:100%;margin-top:12px;font-size:8px;padding:8px}.command-panel.collapsed .command-content{display:none}.command-panel.collapsed{height:37px}.command-panel.collapsed .command-handle{border-bottom:0}
.radar-dock{position:fixed;z-index:24;width:208px;max-width:calc(100vw - 16px);user-select:none;filter:drop-shadow(0 8px 15px #0009)}.radar-handle{display:flex;align-items:center;justify-content:center;gap:8px;height:29px;font-size:8px;letter-spacing:1.5px;color:#a4cfdc;background:#0c1d29db;border:1px solid #84bace38;border-radius:5px 5px 0 0;margin:0 12px}.live-dot{height:4px;width:4px;background:#8fd7c8;border-radius:50%;box-shadow:0 0 7px #7affdb;margin-left:3px}.radar-bezel{position:relative;width:208px;height:208px;border-radius:50%;background:repeating-conic-gradient(from 0deg,#78c6d94d 0deg 1deg,#07141d 1deg 10deg);border:1px solid #84bace77;box-shadow:inset 0 0 0 5px #0a1c29,inset 0 0 0 6px #72b8cc38,inset 0 0 0 12px #07151e,inset 0 0 0 13px #72b8cc38,0 0 22px #67d2e50d}.radar-screen{position:absolute;inset:21px;border-radius:50%;overflow:hidden;background:radial-gradient(circle at 50% 45%,#102b38,#030c14);border:1px solid #629eaf55;box-shadow:inset 0 0 20px #000c}.radar-grid{position:absolute;inset:0;background:repeating-radial-gradient(circle,transparent 0px 23px,#4fbbd21c 24px 25px,transparent 26px 28px),linear-gradient(90deg,transparent calc(50% - .5px),#74b7c729 50%,transparent calc(50% + .5px)),linear-gradient(0deg,transparent calc(50% - .5px),#74b7c729 50%,transparent calc(50% + .5px));pointer-events:none}.radar-screen canvas{position:absolute;left:14px;right:14px;top:35px;width:136px;height:91px;cursor:crosshair;opacity:.94;outline:0;box-shadow:0 0 12px #020a0f;border:1px solid #5a92a11a}.radar-crosshair{position:absolute;inset:0;border-radius:50%;box-shadow:inset 0 0 14px #0008;pointer-events:none}.radar-heading{position:absolute;z-index:2;font-size:7px;color:#8fcbdc;letter-spacing:0}.radar-heading.north{left:102px;top:5px}.radar-heading.south{left:102px;bottom:5px}.radar-heading.east{right:6px;top:100px}.radar-heading.west{left:5px;top:100px}.radar-code{position:absolute;bottom:27px;left:0;right:0;text-align:center;font-size:6px;letter-spacing:1.25px;color:#71b3c6;pointer-events:none}.map-tools{left:250px;bottom:12px;gap:5px;max-width:calc(100% - 270px);flex-wrap:wrap}.mission{max-width:245px}.game-hint{height:18px}
@media(max-width:650px){.radar-dock{width:160px}.radar-handle{font-size:6px;letter-spacing:1px;height:24px;margin:0 9px}.radar-handle .grip-dots{font-size:15px}.radar-bezel{width:160px;height:160px}.radar-screen{inset:17px}.radar-screen canvas{left:10px;top:28px;width:102px;height:68px}.radar-heading.north,.radar-heading.south{left:77px}.radar-heading.east,.radar-heading.west{top:76px}.radar-code{bottom:23px;font-size:5px;letter-spacing:.8px}.command-panel{width:238px}.command-content{padding:10px}.command-panel .selection h3{font-size:22px}.command-panel .commands{grid-template-columns:repeat(3,minmax(0,1fr))}.command-panel .command{min-height:50px;font-size:9px}.map-tools{left:12px;right:12px;max-width:none;bottom:10px}.mission{max-width:160px}}

.radar-screen canvas{left:0;right:0;top:0;width:100%;height:100%;border:0;box-shadow:none;border-radius:50%;opacity:.9}.radar-grid{z-index:1;opacity:.6}.radar-crosshair{z-index:2}.radar-heading{pointer-events:none}

.mission{left:24px;right:auto;top:76px}.mission.compact{max-width:245px;padding:8px 11px;background:#0b1924b8}.mission.compact .tag,.mission.compact p{display:none}.mission.compact h3{margin:0;font-size:10px;font-weight:400}@media(max-width:650px){.mission{left:10px;top:65px}.mission.compact{max-width:200px}}
/* v0.4 illustrated, readable command sidebar */
.command-panel{width:360px;max-height:calc(100vh - 116px);background:linear-gradient(135deg,#172938f5,#0b1723fa);border:1px solid #527388;box-shadow:0 12px 55px #0008,inset 0 0 0 3px #122431}
.command-content{max-height:calc(100vh - 164px);overflow-y:auto;scrollbar-color:#50768a #0d1924;padding:14px}
.command-panel .selection{padding:0 0 14px}.identity{display:flex;gap:12px;align-items:center;margin:12px 0}.identity h3{margin:0 0 5px;font-size:25px}.identity small{color:#a1b8c8;font-size:12px}.portrait{width:76px;height:76px;border:1px solid #5b8396;background:radial-gradient(ellipse,#29465a,#0a1824);border-radius:5px}.health-line{display:flex;gap:9px;align-items:center}.health-line .hp{flex:1;margin:0}.health-line strong{font-size:12px;white-space:nowrap;color:#d9ebdf}.order-state{display:flex;align-items:center;gap:7px;padding:11px 0;font-size:13px;color:#d7e6ec}.order-state b{margin-left:auto;font-size:11px;font-weight:400;color:#eab371}.status-dot{width:5px;height:5px;background:#b2d9a0;border-radius:50%}.unit-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.unit-stats>div{background:#21364788;border:1px solid #42607566;padding:8px}.unit-stats small{display:block;text-transform:uppercase;letter-spacing:1px;font-size:9px;color:#93acbc}.unit-stats strong{display:block;font-size:19px;margin-top:3px;color:#e1edf1}.selection .field-note{font-size:11px;line-height:1.6;margin:12px 0 0;color:#9eb3c0}.command-section{grid-column:1/-1;margin:8px 0 4px;letter-spacing:2px;font-size:11px;color:#dfb37c}.commands{display:grid;grid-template-columns:1fr 1fr;gap:7px}.commands .illustrated-command{min-height:88px;padding:9px 7px;display:flex;align-items:center;gap:5px;text-align:left;border:1px solid #3b596c;background:linear-gradient(#294052,#182a39);position:relative;overflow:hidden}.illustrated-command canvas{width:52px;height:52px;flex-shrink:0}.command-label{font-size:13px;font-weight:600;line-height:1.15;min-width:0}.command-label small{display:block;margin-top:7px;color:#edbc81;font-size:11px}.command-label em{display:block;font-size:9px;font-weight:400;font-style:normal;color:#b8a18d;margin-top:5px;line-height:1.3}.illustrated-command kbd{position:absolute;top:3px;right:4px;font-size:9px;opacity:.65}.commands .command:disabled{opacity:.6;filter:saturate(.35)}.order-symbol{font-size:23px;width:34px;flex-shrink:0;text-align:center;color:#9ecfe1}.deposit-icon{font-size:46px;color:#9bdef1;width:70px;text-align:center}.stock{font-size:28px;margin:10px 0;color:#e1eef2}.stock small{font-size:13px;color:#9ab3c3}.vent-stock{padding-top:14px;margin-top:12px;border-top:1px solid #425d70;font-size:10px;letter-spacing:1px;color:#abc586}.vent-stock strong{display:block;font-size:18px;margin:7px 0}.vent-stock .hp{margin:8px 0}.selection p{font-size:12px;line-height:1.6}.command-panel.collapsed .command-content{display:none}@media(max-width:700px){.command-panel{width:300px}.illustrated-command canvas{width:42px;height:42px}.command-content{padding:10px}}
.save-state{background:#182b37;border:1px solid #416072;color:#a4d5dc;padding:7px 9px;letter-spacing:1px;font-size:9px;cursor:pointer}.resume-strip{display:flex;align-items:center;gap:18px;margin:28px 0}.resume-strip span{color:#93a6b5;font-size:13px}@media(max-width:900px){.save-state{max-width:100px;font-size:8px}.resume-strip{align-items:start;flex-direction:column}}
.command-panel .commands{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.command-panel .illustrated-command{padding:12px 7px 8px;min-height:90px}.command-panel .command .command-label{font-size:13px}.command-panel .command .command-label small{font-size:11px}.command-panel .selection .tag{font-size:9px}.command-panel .selection h3{font-size:26px;margin:0 0 5px}.command-panel .selection p{font-size:12px}.command-panel .selection{margin-bottom:6px}.command-panel .command-section{padding-top:2px}.command-panel .command-content{padding:14px}
.command-panel .illustrated-command:not(:has(canvas)){min-height:54px}.command-panel #worker-details{padding:14px 0 4px}.command-panel #worker-details .field-note{font-size:11px;line-height:1.6}.command-panel .illustrated-command canvas{width:55px;height:55px}.command-panel .command-label{overflow-wrap:normal}.command-panel .command-content{max-height:calc(100vh - 164px)}
/* Living frontier / 30 second colony-to-void cycle */
.hero-art{overflow:hidden;background-color:#050b12}.hero-cosmos{width:100%;height:100%;display:block}.hero-wrap:after{background:linear-gradient(90deg,#080e15f2 0%,#080e15db 24%,#080e1580 44%,#080e1520 65%,transparent 85%),linear-gradient(0deg,#080e15,transparent 24%)}.hero-wrap .hero h1 span{color:color-mix(in srgb,#f2a366 calc(100% - var(--void-strength,0)*24%),#ef7b52)}.hero-location{min-width:285px}.scene-coordinate{min-height:42px;letter-spacing:1.5px}.scene-controls{display:flex;justify-content:flex-end;align-items:center;gap:17px;margin-top:14px}.scene-signal{font-size:8px!important;letter-spacing:1.5px;display:inline-flex;align-items:center;gap:6px;color:#9eb4c1!important}.scene-signal:before{content:'';width:4px;height:4px;border-radius:50%;background:#89c4cb;box-shadow:0 0 9px #8fcedb99}.hero-wrap[data-scene="void"] .scene-signal:before,.hero-wrap[data-scene="awakening"] .scene-signal:before{background:#e6a169;box-shadow:0 0 9px #e6a16999}.scene-pause{font-size:8px;letter-spacing:1px;color:#b7c3cb;border:1px solid #a5bfce38;padding:7px 9px;background:#0a142077;white-space:nowrap}.scene-pause:hover{border-color:#d6a36b;color:#f2c28f}.scene-paused .brand img{animation-play-state:paused}.hero-wrap .brand img{width:42px}.brand img{object-fit:contain}@media(max-width:800px){.hero-wrap .hero-location{display:block;position:relative;bottom:auto;right:auto;text-align:left;margin-top:28px;margin-bottom:25px;padding-left:12px;padding-right:0;border-right:0;border-left:1px solid #e5ad77}.scene-controls{justify-content:flex-start}.hero-wrap .hero{padding-bottom:10px}.scene-coordinate{font-size:9px}.scene-controls{gap:12px}}
@media(prefers-reduced-motion:reduce){.hero-art{transform:none}.scene-signal:before{box-shadow:none}}
.queue-item{display:grid;grid-template-columns:1fr 25px;align-items:center;gap:5px;margin-bottom:9px}.queue-item>button{color:#c4d0d9;border:1px solid #486070;font-size:16px;line-height:20px}.queue-item>button:hover{background:#633c32;color:#ffd0b5}.queue-item .hp{grid-column:1/-1;margin-top:2px}.hero-wrap .audio-btn{background:#08111bd9;border:1px solid #8babb83b;padding:9px 12px;color:#c8d4dc}.hero-wrap .topbar .brand{white-space:nowrap}
.applied-upgrades{border-top:1px solid #718da030;padding-top:12px;margin-top:10px}.command-panel .applied-upgrades p{font-size:11px;color:#a7d0bf;margin:7px 0 3px}.command-panel .command-label small{line-height:1.5}

/* Charged controls: scanning light, targeting corners, and a moving energy rail. */
.btn{position:relative;isolation:isolate;overflow:hidden;min-height:54px;border-color:#7794a46b;background:linear-gradient(120deg,#152634dc,#0a151edc);box-shadow:inset 0 1px #c5e9ff12;transition:color .2s,border-color .2s,box-shadow .2s,transform .2s,background .2s}
.btn:before{content:'';position:absolute;inset:-75% -45%;pointer-events:none;z-index:-1;background:linear-gradient(105deg,transparent 42%,#a7efff0a 46%,#b2f7ff7a 50%,#a7efff0a 54%,transparent 58%);transform:translateX(-75%)}
.btn:after{content:'';position:absolute;inset:4px;pointer-events:none;background:linear-gradient(#9defff,#9defff) left top/9px 1px no-repeat,linear-gradient(#9defff,#9defff) left top/1px 9px no-repeat,linear-gradient(#9defff,#9defff) right bottom/9px 1px no-repeat,linear-gradient(#9defff,#9defff) right bottom/1px 9px no-repeat;opacity:0;transition:opacity .2s}
.btn:is(:hover,:focus-visible){background:#14333e;border-color:#93eafa;color:#e6faff;box-shadow:0 0 22px #60dfff27,inset 0 0 22px #67d9f116;transform:translateY(-2px)}
.btn:is(:hover,:focus-visible):before{animation:control-scan 1.45s ease-in-out infinite}
.btn:is(:hover,:focus-visible):after{opacity:1;animation:target-lock 1.5s ease-in-out infinite}
.btn .arrow{transition:transform .2s,filter .2s}.btn:is(:hover,:focus-visible) .arrow{transform:translate(3px,-3px);filter:drop-shadow(0 0 4px #9defff)}
.btn.primary{background:linear-gradient(115deg,#edb77f,#d89252);border-color:#efb67b;box-shadow:inset 0 1px #ffe4ba73,0 0 18px #e9974212;color:#17232c}
.btn.primary:is(:hover,:focus-visible){color:#101f27;background:linear-gradient(115deg,#ffce98,#efb275);border-color:#ffdfb0;box-shadow:0 0 27px #f1a65b42,inset 0 0 19px #fff0d850}
.btn.primary:after{filter:sepia(1) saturate(.5)}
.nav a{position:relative;transition:color .2s,text-shadow .2s}.nav a:after{content:'';position:absolute;bottom:23px;left:0;width:0;height:1px;background:#9ce7f2;box-shadow:0 0 9px #7de1f9;transition:width .25s}.nav a:hover{color:#d3f5ff;text-shadow:0 0 12px #8be3ff70}.nav a:hover:after{width:100%}
@keyframes control-scan{from{transform:translateX(-70%)}to{transform:translateX(70%)}}
@keyframes target-lock{0%,100%{opacity:.5}50%{opacity:1}}

/* Frontier operations and faction dossiers */
.frontier-below{position:relative}.frontier-below:before{content:'';position:absolute;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 8% 22%,#183b502b,transparent 50%),radial-gradient(ellipse at 95% 62%,#50311b21,transparent 45%)}
.frontier-section{padding-top:65px;padding-bottom:40px}.frontier-below .section-title{align-items:center;margin-bottom:28px}.frontier-below .section-title h2{font-size:clamp(36px,4vw,52px)}.frontier-below .section-no{color:#8bacbb;letter-spacing:2px}.frontier-below .section-title p{font-size:14px;line-height:1.8}
.operations-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.operation-card{min-height:370px;position:relative;isolation:isolate;overflow:hidden;border:1px solid #4c6e805f;background:#0e1b25;display:flex;align-items:end;transition:border-color .25s,transform .25s,box-shadow .25s}
.operation-image{position:absolute;inset:0;z-index:-2;background:url('/assets/frontier.webp') 66% center/cover;transition:transform .65s,filter .65s}
.operation-build .operation-image{background-image:url('/assets/guide/step-3.png');background-position:center 35%}.operation-battle .operation-image{background-image:url('/assets/guide/step-6.png');background-position:54% 40%}
.operation-card:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#07121b 0%,#0a1725e8 32%,#0a172538 80%),linear-gradient(180deg,#06111ba8,transparent 25%)}
.card-code{position:absolute;top:20px;left:20px;font-size:9px;letter-spacing:1.6px;color:#b0c6d4;z-index:2}.operation-copy{padding:24px;width:100%}.operation-copy .tag{font-size:8px;letter-spacing:1.6px}.operation-copy h3{font-size:31px;margin:10px 0}.operation-copy p{font-size:13px;line-height:1.7;min-height:44px;margin-bottom:21px;color:#a9bbc8}
.card-link{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid #84bed53b;padding-top:15px;font-size:9px;letter-spacing:1.5px;color:#c2e0ec}.card-link b{font-size:22px;font-weight:400;color:#edb37c;transition:transform .25s}.card-corners{position:absolute;inset:7px;pointer-events:none;background:linear-gradient(#9bdeed,#9bdeed) top left/15px 1px no-repeat,linear-gradient(#9bdeed,#9bdeed) top left/1px 15px no-repeat,linear-gradient(#9bdeed,#9bdeed) bottom right/15px 1px no-repeat,linear-gradient(#9bdeed,#9bdeed) bottom right/1px 15px no-repeat;opacity:.35}
.operation-card:is(:hover,:focus-visible){border-color:#8acbdf;box-shadow:0 7px 32px #4cb8df17;transform:translateY(-4px)}.operation-card:is(:hover,:focus-visible) .operation-image{transform:scale(1.065);filter:brightness(1.2)}.operation-card:hover .card-link b{transform:translate(3px,-3px)}.operation-card:hover .card-corners{opacity:1}
.allegiance-section{padding-top:35px;padding-bottom:45px}.allegiance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.allegiance-card{--faction:#87d3ec;position:relative;isolation:isolate;display:block;min-height:420px;overflow:hidden;border:1px solid color-mix(in srgb,var(--faction) 35%,transparent);background:radial-gradient(ellipse at 70% 35%,color-mix(in srgb,var(--faction) 16%,transparent),transparent 65%),#0d1821;transition:transform .3s,border-color .3s,box-shadow .3s}
.allegiance-swarm{--faction:#badb7e}.allegiance-ascendancy{--faction:#bd9bfa}
.faction-scan{position:absolute;inset:0;z-index:-1;opacity:.35;background:linear-gradient(90deg,#97cee40d 1px,transparent 1px) 0 0/30px 30px,linear-gradient(#97cee40d 1px,transparent 1px) 0 0/30px 30px}.faction-scan:after{content:'';position:absolute;width:210px;height:210px;top:40px;left:calc(50% - 105px);border:1px solid var(--faction);opacity:.25;border-radius:50%;box-shadow:0 0 0 16px #ffffff03,0 0 0 17px #ffffff12;transform:rotateX(52deg)}
.faction-art{position:absolute;top:38px;left:calc(50% - 112px);width:224px;height:205px;background:url('/assets/units.webp') 50% 0/300% 200%;filter:drop-shadow(0 15px 15px #0009);transition:transform .5s,filter .5s;z-index:0}.allegiance-swarm .faction-art{background-image:url('/assets/swarm-v2.webp');background-size:400% 300%;background-position:100% 50%}.allegiance-ascendancy .faction-art{background-image:url('/assets/aliens-v2.webp');background-size:400% 300%;background-position:0 100%}
.faction-emblem{position:absolute;top:60px;right:22px;color:var(--faction);font-size:24px;opacity:.6}.faction-copy{position:relative;margin-top:237px;padding:0 24px 22px;background:linear-gradient(0deg,#0b1720 85%,transparent)}.faction-copy .tag{font-size:8px;letter-spacing:1.2px;color:var(--faction)}.faction-copy h3{font-size:30px;margin:9px 0}.faction-copy p{font-size:13px;line-height:1.7;color:#9fb1be;min-height:45px;margin-bottom:18px}.faction-manifest{border-top:1px solid #9bbeda2b;padding-top:15px;display:flex;align-items:center;gap:16px;font-size:8px;letter-spacing:1.3px;color:#92a9b9}.faction-manifest b{margin-left:auto;color:var(--faction);font-size:20px;font-weight:400}
.allegiance-card:is(:hover,:focus-visible){transform:translateY(-4px);border-color:var(--faction);box-shadow:0 8px 35px color-mix(in srgb,var(--faction) 10%,transparent)}.allegiance-card:hover .faction-art{transform:translateY(-5px) scale(1.04);filter:drop-shadow(0 8px 20px color-mix(in srgb,var(--faction) 20%,transparent))}.allegiance-card:hover .faction-scan{animation:dossier-scan 2s linear infinite}@keyframes dossier-scan{to{background-position:0 30px,0 30px}}
.launch-banner{position:relative;isolation:isolate;overflow:hidden;border:1px solid #6e8d9e7a;background:linear-gradient(90deg,#0d1c29f2,#102334a8),url('/assets/frontier.webp') center 52%/cover;display:flex;justify-content:space-between;align-items:center;gap:25px;padding:42px;margin:0 0 45px}.launch-copy h2{font-size:52px;margin-bottom:12px}.launch-copy .eyebrow{font-size:9px;margin-bottom:20px}.launch-copy p{font-size:13px;margin-bottom:0}.launch-action{display:flex;flex-direction:column;gap:15px;position:relative}.launch-action>span{font-size:8px;letter-spacing:1.4px;color:#9cb4c7;text-align:center}.launch-orbit{position:absolute;width:430px;height:430px;right:-80px;top:-95px;z-index:-1;border:1px dashed #83cfe337;border-radius:50%;box-shadow:0 0 0 35px #8cdfff05,0 0 0 36px #8cdfff19;animation:launch-orbit 60s linear infinite}.launch-orbit:after{content:'';width:5px;height:5px;border-radius:50%;background:#a7ecff;box-shadow:0 0 14px #8fe9ff;position:absolute;top:59px;left:59px}@keyframes launch-orbit{to{transform:rotate(360deg)}}
@media(max-width:950px){.operation-copy,.faction-copy{padding-left:18px;padding-right:18px}.operation-copy h3,.faction-copy h3{font-size:26px}.card-code{left:18px;font-size:8px}.faction-manifest{gap:10px;font-size:7px}.faction-art{width:190px;height:180px;left:calc(50% - 95px);top:55px}.launch-banner{padding:30px}.launch-copy h2{font-size:42px}}
@media(max-width:700px){.operations-grid,.allegiance-grid{grid-template-columns:1fr}.operation-card{min-height:340px}.operation-copy p,.faction-copy p{min-height:0}.allegiance-card{min-height:375px}.faction-copy{margin-top:220px}.faction-art{width:230px;height:210px;left:auto;right:20px;top:20px}.allegiance-section .section-title{align-items:start;flex-direction:column;gap:20px}.launch-banner{flex-direction:column;align-items:start}.launch-action{width:100%}.launch-orbit{right:-160px}.frontier-below .section-title{gap:20px}.frontier-section{padding-top:40px}}
@media(prefers-reduced-motion:reduce){.btn:before,.btn:after,.launch-orbit,.allegiance-card:hover .faction-scan{animation:none!important}.btn,.operation-card,.faction-art,.allegiance-card,.operation-image{transition:none}.btn:is(:hover,:focus-visible){transform:none}}

.operation-build .operation-image,.operation-battle .operation-image{background-size:auto 155%;background-position:50% 59%}.faction-art{clip-path:inset(3% 12% 7% 12%)}

/* Long form faction lore keeps the origins page legible alongside playable rosters. */
.faction-lore{font-size:13px;line-height:1.72;color:#bdc8d0;max-width:62ch}
.mode-card .faction-lore{margin:14px 0 18px}

