/* Armored command console — intentionally tactile and restrained. */
:root{--bg:#0d1011;--panel:#20231f;--edge:#59594b;--soft:#373c32;--fg:#ebe9da;--muted:#b1b3a2;--mint:#e8bd68;--gold:#f2cf80;--mono:Consolas,'SFMono-Regular',monospace}
body{background:radial-gradient(ellipse at 50% -20%,#494b36 0,transparent 64%),repeating-linear-gradient(0deg,#ffffff02 0 1px,transparent 1px 4px),#0b0e10;color:var(--fg)}
.topbar{background:linear-gradient(#41443d,#272b28 45%,#14191a);border-bottom:3px solid #0a0d0d;box-shadow:0 1px 0 #6b6b50,inset 0 -1px 0 #777358}
.topinner{padding-block:12px}.brand-mark{border:2px solid #716c4d;border-radius:2px;background:linear-gradient(135deg,#66674b,#252e29 45%,#151a19);color:#f2cc7b;box-shadow:inset 0 0 0 2px #171b18,0 2px 2px #0009;transform:rotate(-1deg)}
.brand h1{font-size:22px;letter-spacing:.06em;text-shadow:1px 2px 0 #000;color:#ede6cc}.brand div>span{color:#abae92;font-size:9px;letter-spacing:.18em}
.quiet,.primary{border-radius:2px;min-height:40px;border-width:2px;text-shadow:0 1px #0008}
.quiet{background:linear-gradient(#41483c,#272f2b 48%,#1c2320);border-color:#626751 #171d18 #151b18 #555c4c;box-shadow:inset 0 0 0 1px #141a16;color:#d3d7be}
.quiet:hover:not(:disabled){background:linear-gradient(#5b654b,#343e2f);border-color:#9ca074 #242a20 #242a20 #9ca074;color:#fff3c9}
.primary{background:linear-gradient(#e3c176,#a78a4d 49%,#8e713e 50%,#b29954);border-color:#ffe6a1 #594526 #594526 #e4c987;color:#161b15;box-shadow:inset 0 0 0 1px #806335,0 3px 0 #080d0b;text-shadow:0 1px #f5dd9460;letter-spacing:.015em}
.primary:hover:not(:disabled){background:linear-gradient(#ffe0a2,#d1ad60 49%,#b68b48 50%,#d0b46a)}
.primary:disabled{filter:saturate(.35);opacity:.4}.quiet:disabled{opacity:.4}.record strong{color:#e2d7aa}.record>span{color:#adb39d}
.panel,.metric{border:2px solid;border-color:#777461 #252c27 #1c231f #666c57;border-radius:3px;background:linear-gradient(120deg,#ffffff06,transparent 50%),repeating-linear-gradient(0deg,#ffffff02 0 1px,transparent 1px 3px),#252b26;box-shadow:inset 0 0 0 1px #0b1410,0 3px 8px #0006;position:relative}
.panel::before{content:'';position:absolute;pointer-events:none;z-index:4;inset:3px;background:radial-gradient(circle at 2px 2px,#c1b894 0 1px,#292e25 1.5px 3px,transparent 3.5px),radial-gradient(circle at calc(100% - 2px) 2px,#c1b894 0 1px,#292e25 1.5px 3px,transparent 3.5px),radial-gradient(circle at 2px calc(100% - 2px),#aaa584 0 1px,#292e25 1.5px 3px,transparent 3.5px),radial-gradient(circle at calc(100% - 2px) calc(100% - 2px),#aaa584 0 1px,#292e25 1.5px 3px,transparent 3.5px)}
.metric{background:linear-gradient(110deg,#30392e,#19221c);padding:12px 16px;box-shadow:inset 0 0 0 3px #141b16,inset 0 0 25px #0006,0 2px 5px #0005}
.metric-label{color:#b7c4ac;font-family:var(--mono);font-size:11px}.metric-value b{color:#b8e4a9;text-shadow:0 0 12px #99d68a2c;font-size:31px}.money-card .metric-value b{color:#f2cf80}.metric-value small{color:#989e82}.metric-caption{color:#a6ae93}
.metric-label i,.eyebrow i{background:#b8cc79;box-shadow:0 0 5px #b8cc7980;border-radius:0}.meter{border:1px solid #0a140e;background:#0d170f;border-radius:0;height:7px;box-shadow:0 1px #6d745440,inset 0 1px 2px #000}.meter i{background:repeating-linear-gradient(90deg,#9abd72 0 8px,#698b4c 8px 10px);border-radius:0}.enemy-card .meter i{background:repeating-linear-gradient(90deg,#d47756 0 8px,#ad5436 8px 10px)}
.panel-head{padding-inline:16px;min-height:59px;border-bottom:2px solid #101a13;background:linear-gradient(#44493b,#30372d 50%,#252e24);box-shadow:inset 0 -1px #797a5445}
.panel-head h2{font-size:17px;letter-spacing:.035em;color:#e5dfbc;text-shadow:1px 2px #080d09}.eyebrow{font-size:9px;color:#b8be93;letter-spacing:.16em}.panel-icon{color:#d8bc6f;width:23px;height:23px}
.body{padding:12px 14px}.muted{color:#b4bea5;font-size:12px}.battle{padding:5px;background:linear-gradient(135deg,#656958,#313b32 7%,#242e25 90%,#111b15)}.battle-head{padding:6px 10px;border:1px solid #77765b;box-shadow:0 2px #11180f}.board{border:2px solid #0a100b;box-shadow:0 0 0 1px #737454,inset 0 0 30px #000;background:#111b15}.battle-foot{padding:9px 6px 4px;color:#b2b997;font-family:var(--mono);font-size:10px}.map-label{color:#d1c99b}.map-label i{border-color:#e6c781}.little{border-radius:0}.little.mint{background:#c5d78b}
.overlay{background:radial-gradient(ellipse at center,#0d171789,transparent 75%)}.mission{border:3px solid;border-color:#938c68 #232c20 #19241b #7c805c;border-radius:2px;padding:20px 15px;background:linear-gradient(135deg,#404c38f5,#18271cf7 70%);box-shadow:0 12px 40px #000c,inset 0 0 0 2px #0b170b,inset 0 0 30px #0004}.mission-mark{color:#e9c574;stroke:#e9c574;filter:drop-shadow(0 2px 2px #000);width:35px;height:35px}.mission h2{color:#f0dfac;text-shadow:2px 3px #06120b;font-size:28px;letter-spacing:.025em}.mission p{color:#c4d0ac;font-size:12px}.mission>.eyebrow{font-size:8px;letter-spacing:.1em}.start{min-height:44px}.wave-signal{background:#152317ed;border:1px solid #b2b282;border-radius:0;color:#e3daac}.wave-signal.boss{color:#ffc394}
.recruit-buttons{display:flex;gap:5px}.draw{min-width:0;min-height:47px;padding-inline:9px;flex:1}.draw strong{border-color:#52432280;font-size:12px}.recruit-five{min-width:44px;font:700 15px var(--mono);padding:0 7px;color:#eed28b}.factions{gap:4px;margin-block:10px}.factions span,.type-tag,.cycle b{border-radius:1px;font-size:10px}.deploy-note{color:#aab495;font-size:10px}.squad-count{border:1px solid #626e49;padding:3px 6px;background:#152218;color:#b8d194;font:700 11px var(--mono)}
.squad{grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;max-height:113px;background:#101b13;padding:5px;border:2px solid;border-color:#10190e #5e6e48 #5e6e48 #10190e;min-height:55px}
.unit{position:relative;min-height:43px;background-image:linear-gradient(#090f0d50,#090f0d40),url('portraits.png');background-size:100% 100%,300% 100%;background-position:center,var(--portrait-pos) center;border:1px solid #788661;border-radius:0;box-shadow:inset 0 0 0 1px #10180d;isolation:isolate;overflow:hidden;justify-items:end;align-content:space-between;padding:2px;color:#fff2c6}
.unit svg{width:13px;height:13px;filter:drop-shadow(0 1px 1px #000);background:#0b160ba8}.unit>span{font-size:10px;background:#0c180bd9;padding:0 3px;min-width:13px;text-shadow:1px 1px #000}
.unit:hover,.unit[aria-pressed=true]{border-color:#e9d67c;box-shadow:inset 0 0 0 1px #e9d67c;background-color:#293a20;background-image:linear-gradient(#090f0d10,#090f0d10),url('portraits.png');background-size:100% 100%,300% 100%;background-position:center,var(--portrait-pos) center}
.unit.mergeable::after{content:'+';position:absolute;left:1px;top:1px;color:#0b1607;background:#d5df85;width:11px;height:11px;line-height:10px;text-align:center;font:bold 11px var(--mono);box-shadow:0 1px #0008}
.squad.empty{display:flex;align-items:center;justify-content:center;min-height:58px;text-align:center;color:#8ca070;font:10px/1.6 var(--mono);letter-spacing:.1em}.squad.empty small{font-family:var(--sans);font-size:10px;letter-spacing:0;color:#a6b78e}
.inspect{border:1px solid #546440;border-radius:1px;background:#152014;box-shadow:inset 0 1px 8px #0007;padding:9px;margin-top:9px}.unit-dossier{display:flex;gap:10px;align-items:center;min-width:0}.unit-dossier>div:last-child{flex:1;min-width:0}.portrait{width:77px;height:84px;flex:none;position:relative;border:2px solid;border-color:#151b13 #899478 #899478 #151b13;background-image:url('portraits.png');background-size:300% 100%;background-position:var(--portrait-pos) center;box-shadow:inset 0 0 12px #0007;overflow:hidden}.portrait::after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 3px,#0002 3px 4px);pointer-events:none}.portrait span{position:absolute;bottom:0;left:0;right:0;background:#071107d9;color:#c1c8a2;font:bold 7px/1.8 var(--mono);text-align:center;letter-spacing:.04em}.portrait.standby{filter:saturate(.5)}
.inspect-title{flex-wrap:wrap;gap:4px}.inspect-title strong{font-size:15px;color:#dfe6bc}.inspect-title small{color:#efcd79;font-size:10px}.inspect p{color:#afc18e;font-size:11px;line-height:1.75}.inspect .type-tag{margin-right:4px;padding:1px 3px;font-size:9px}.fusion-recipe{padding:6px 0 0;margin-top:6px;border-top:1px solid #425334;display:flex;justify-content:space-between;gap:4px;font:10px/1.6 var(--mono);color:#b8c894;flex-wrap:wrap}.fusion-recipe b{color:#eed58f}.fusion-recipe>span{font:10px var(--sans);color:#a5b57e;align-self:center}.inspect-actions{gap:5px}.inspect-actions button{min-height:36px}.inspect-actions .fusion{color:#e5cf83}.mass-fusion{width:100%;margin-top:8px;min-height:35px;justify-content:flex-start;gap:5px;font-size:12px}.mass-fusion small{margin-left:auto;color:#a5b68a;font-size:9px}.mass-fusion b{color:#d7dc91}.mass-fusion>svg{width:16px;height:16px}.incoming{color:#dbdfbd}.intel .body{background:#18251b;margin:6px;box-shadow:inset 0 0 12px #0005;border:1px solid #455639;padding:9px}.intel .muted{font-family:var(--mono);font-size:10px}.boss-hp .meter i{background:#ce7050}
.strip{border-radius:1px;padding:8px 13px;background:linear-gradient(#363e30,#242e24);gap:12px}.strip-title{color:#e6d6a3}.strip-note b{color:#e5d396}.strip button{min-height:33px}footer{color:#899276}footer>span:first-child{color:#a7ae87}
dialog{border-radius:2px;border:3px solid #7d8260;background:#253020;box-shadow:inset 0 0 0 2px #131d12,0 20px 60px #000c}.dialog-head{background:linear-gradient(#434b35,#28351f);border-bottom:2px solid #111c0d}.dialog-head h2{color:#ebd9aa}.dialog-body .muted,.guide-steps{color:#c4cbb3}.guide-steps strong{color:#eddfa9}kbd{border-radius:1px;background:#18230f;border-color:#718456;color:#d5d7a2}.toast{background:#21301cef;border:2px solid #b2b77e;border-radius:1px;color:#e5e4ba}
@media(min-width:861px) and (max-height:850px){.topinner{padding-block:8px}.metric{padding-block:8px}.panel-head{min-height:48px;padding-block:6px}.side{gap:7px}.side .body{padding-block:8px}.portrait{width:65px;height:69px}.squad{max-height:99px;min-height:49px}.unit{min-height:39px}.inspect{padding:7px;margin-top:7px}.inspect-actions button{min-height:33px}.mass-fusion{min-height:32px;margin-top:6px}.factions{margin-block:7px}.command .muted br{display:none}.draw{min-height:43px}.battle-foot{padding-block:6px 2px}}
@media(max-width:860px){.portrait{width:60px;height:70px}.unit-dossier{gap:6px}.inspect-title strong{font-size:13px}.inspect-title small{font-size:9px}.mass-fusion small{font-size:8px}.side .body{padding-inline:10px}.draw{padding-inline:6px;font-size:12px}.draw strong{font-size:10px}.recruit-five{min-width:34px;padding-inline:3px}.factions span{font-size:9px;padding-inline:4px}}
@media(max-width:660px){.brand h1{font-size:17px}.brand div>span{font-size:6px;letter-spacing:.1em}.topinner{padding:8px 11px}.metric{padding:8px 6px}.metric-value b{font-size:clamp(17px,5vw,24px)}.metric-label{font-size:9px}.metric-caption{font-size:8px}.panel-head{min-height:49px;padding-inline:11px}.panel-head h2{font-size:14px}.battle{padding:3px}.battle-head{padding-inline:7px}.battle-foot{font-size:8px;padding:6px 3px 3px;gap:4px}.mission{max-width:255px;padding:13px 10px}.mission h2{font-size:23px}.mission p{font-size:10px}.mission>.eyebrow{font-size:7px}.mission-mark{width:28px;height:28px}.command .body{padding:8px}.draw{min-height:45px;font-size:12px;padding-inline:5px}.draw strong{font-size:9px;padding-left:4px}.draw svg{width:13px;height:13px}.recruit-five{min-width:32px;font-size:12px}.recruit-buttons{gap:3px}.side .body{padding:8px}.lineup .body{display:grid;grid-template-columns:1fr 1fr;gap:8px;align-items:start}.squad{grid-template-columns:repeat(4,minmax(0,1fr));max-height:216px;min-height:74px;align-content:start}.squad.empty{min-height:107px;font-size:8px}.squad.empty small{font-size:9px}.inspect{margin:0;min-width:0;padding:6px}.unit-dossier{gap:5px;align-items:start;flex-wrap:wrap}.portrait{width:53px;height:58px}.inspect-title{gap:2px}.inspect-title strong{font-size:12px}.inspect p{font-size:9px}.fusion-recipe{font-size:8px;gap:2px}.fusion-recipe>span{font-size:9px}.inspect-actions{flex-wrap:wrap}.inspect-actions button{font-size:10px;min-height:38px;padding-inline:3px}.inspect-actions button svg{width:12px}.mass-fusion{grid-column:1/-1;margin-top:0;min-height:40px;font-size:12px}.mass-fusion small{font-size:10px}.intel .body{margin:0 5px 5px;padding:6px}.intel .muted{font-size:8px}.incoming{font-size:11px}.incoming .type-tag{font-size:8px}.strip{padding:7px;gap:6px}.strip-title{font-size:11px}.strip button{min-height:38px}.strip-note{font-size:9px}footer{font-size:8px}.squad .unit{min-height:43px}}
@media(prefers-reduced-motion:no-preference){.unit.mergeable{animation:fusion-pulse 2s ease-in-out infinite}@keyframes fusion-pulse{50%{border-color:#d3de91;box-shadow:0 0 6px #d2d98c35}}}
.unit-size{position:absolute;bottom:2px;left:2px;width:9px;height:3px;box-shadow:0 0 0 1px #101810}.unit.protected::before{content:'◆';position:absolute;top:1px;left:2px;color:#ecda96;font-size:9px;text-shadow:0 1px #000}.unit.protected{border-color:#b9ae72}.inspect-actions{flex-wrap:wrap}.inspect-actions button{font-size:10px;padding-inline:4px}.inspect-actions [data-action=lock][aria-pressed=true]{border-color:#d2c489;color:#f5e9bc}.inspect .boss-match{font-size:10px;line-height:1.5;padding-top:4px;color:#c8d4a5}.inspect .boss-match.immune{color:#efb78e}
.volume-control{display:flex;gap:6px;align-items:center;margin-left:auto;color:#c8c6a5;font-size:10px;white-space:nowrap}.volume-control input{width:72px;height:24px;accent-color:#d5bd73;cursor:pointer;margin:0}.volume-control output{min-width:34px;color:#e2cf97;font:10px var(--mono)}.strip .volume-control+button{margin-left:0}
.income-line{border-top:1px solid #465138;margin-top:8px;padding-top:7px;color:#b9c19a;font:10px var(--mono)}.audio-help{font-size:11px;line-height:1.6;color:#c7cca9;margin:12px 0 0}
.armor-title{display:flex;justify-content:space-between;align-items:center;gap:4px;margin-top:8px;padding-top:7px;border-top:1px solid #465735;color:#d6d6aa;font-size:10px}.armor-title small{font-size:9px;color:#a5b28e}.armor-rates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin-top:5px}.armor-rates>span{display:flex;justify-content:space-between;gap:2px;align-items:center;padding:4px;background:#101c12;border:1px solid #46553c;color:var(--tag);font-size:10px;white-space:nowrap}.armor-rates b{font:700 10px var(--mono);color:#e3dfbd}.armor-rates .immune b{color:#edaa88}.next-threat{display:grid;gap:4px;margin-top:8px;padding:7px;border:1px solid #6a6947;background:#2d321c}.next-threat>span{font-size:10px;color:#d8c48c}.next-threat strong{font-size:11px;color:#b9c399;font-weight:600}.next-threat .type-tag{padding:1px 4px}.next-threat small{font-size:9px;color:#dfb697}.armor-guide{margin-top:14px;overflow:auto}.armor-guide table{width:100%;border-collapse:collapse;font:11px/1.5 var(--mono)}.armor-guide td,.armor-guide th{padding:5px 6px;border:1px solid #53633c;text-align:left;white-space:nowrap}.armor-guide th{color:#dfd49e;background:#1a2613}.armor-guide td{color:#c2cdb1}.armor-guide p{font-size:11px;color:#e3bf8a;margin:7px 0 0}.command{order:1}.intel{order:2}.lineup{order:3}
@media(max-width:660px){.armor-title{display:block;font-size:9px;margin-top:5px;padding-top:5px}.armor-title small{display:block;font-size:8px}.armor-rates{gap:2px;margin-top:4px}.armor-rates>span{display:grid;justify-content:center;text-align:center;font-size:8px;padding:3px 1px;line-height:1.3}.armor-rates b{font-size:9px}.next-threat{padding:5px;margin-top:5px;gap:3px}.next-threat>span{font-size:9px}.next-threat strong{font-size:9px}.next-threat .type-tag{font-size:8px;padding:0 2px}.next-threat small{font-size:8px}.inspect .boss-match{font-size:8px;line-height:1.5}.inspect-actions [data-action=merge]{flex-basis:100%}.inspect-actions [data-action=lock]{font-size:9px}.strip-note{font-size:9px}}
