/* Command deck: existing CC0 Kenney structures carry the map and navigation. */
body:not(.combat-view){background:#101713;color:#e3e6d9}
body:not(.combat-view)>header{height:88px;background:#19221e;border-bottom:1px solid #61705b;box-shadow:0 4px 0 #090f0c;padding:0 3%;gap:20px}
body:not(.combat-view) .brand b{color:#ecebd9}body:not(.combat-view) .brand b span{color:#d9b867}
body:not(.combat-view) nav{margin-left:12px;gap:4px}
body:not(.combat-view) nav button{display:flex;align-items:center;gap:8px;padding:12px;border-radius:0;border-left:1px solid transparent;border-right:1px solid transparent;color:#b9c5b3;font-size:13px;white-space:nowrap}
body:not(.combat-view) nav button span{margin-left:0;font-size:9px;color:#8e9e8b;letter-spacing:.6px}
body:not(.combat-view) nav button.active{background:#303c2b;color:#f2e1a1;border-color:#697350;border-bottom-color:#dcc57b;box-shadow:inset 0 3px #dcc57b}
.ops-nav-icon{width:27px;height:30px;object-fit:contain;filter:drop-shadow(0 3px 2px #0008)}.combat-view .ops-nav-icon{display:none}
body:not(.combat-view) .wallet{gap:6px}body:not(.combat-view) .wallet strong{font-size:25px}body:not(.combat-view) .icon{border-color:#485344;background:#141c17}
#camp{--accent:#e1c678;--muted:#a3b1a0}#camp .section-line{font:11px monospace;letter-spacing:1px;color:#aab7a0;padding-bottom:14px;border-bottom:1px solid #3f4d3d}
#camp .camp-grid{grid-template-columns:minmax(0,1.6fr) minmax(330px,1fr);gap:26px;margin-top:24px;align-items:start}
#camp .camp-grid>aside{min-width:0}#camp .camp-grid>aside>.eyebrow{font:10px monospace;letter-spacing:2px;color:#c2b683}
#camp h1{font-size:30px;line-height:1.3;margin:8px 0;color:#f0efdc;letter-spacing:-1px}#camp h1 span{font:11px monospace;letter-spacing:2px;color:#879980;margin-left:14px}#camp .intro{display:block;font-size:12px;line-height:1.5;margin:8px 0 20px;color:#a3b1a0}
#camp .difficulty-panel{margin:0;padding:0 0 16px;border:0}#camp .commander-row{justify-content:flex-start;gap:10px;margin:0 0 12px;font-size:11px}#camp .commander-row>small{margin-left:auto;color:#a5b19c;font-size:10px}.ops-rank{width:30px;height:34px;object-fit:contain}
#camp .difficulty-tabs{gap:0;margin:0 0 12px;border:1px solid #56604a}#camp .difficulty-tabs button{background:#18251c;border:0;border-right:1px solid #3a4935;color:#b6c3ac;font:12px monospace;min-height:50px}#camp .difficulty-tabs button:last-child{border-right:0}#camp .difficulty-tabs button.active{background:#3d482f;color:#f4e1a0;box-shadow:inset 0 -3px #d5bd70}#camp .difficulty-tabs button:disabled{opacity:.55}#camp .difficulty-tabs small{font:10px sans-serif}
#camp .difficulty-panel label{font-size:12px;color:#b6c3ac}#camp .difficulty-panel select{padding:7px 10px;border-color:#485840;background:#18221b;font-size:12px;min-height:36px}#camp .difficulty-panel p{margin:8px 0 0;font-size:11px;color:#a3b09b}
#camp #stages{display:block;position:relative;height:330px;margin:0;isolation:isolate;overflow:hidden;border:1px solid #647455;background:linear-gradient(#132117b8,#132117c9),url('worldGrass.png') repeat;background-size:auto,100px 100px;box-shadow:inset 0 0 60px #050e09}
#camp #stages:before{content:'SECTOR 09 / CAMPAIGN ROUTE';position:absolute;top:15px;left:16px;color:#91a684;font:9px monospace;letter-spacing:2px}#camp #stages:after{content:'';position:absolute;inset:0;pointer-events:none;z-index:-1;background-image:linear-gradient(#8ca07b12 1px,transparent 1px),linear-gradient(90deg,#8ca07b12 1px,transparent 1px);background-size:32px 32px}
.ops-route{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.ops-route polyline{fill:none;stroke:#a3b582;stroke-width:.35;stroke-dasharray:1 1;opacity:.5}
#camp .stage{position:absolute;left:var(--map-x);top:var(--map-y);transform:translate(-50%,-35%);width:18%;height:96px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:0;gap:0;background:none;border:0;box-shadow:none;text-align:center;border-radius:0;overflow:visible}
#camp .stage .ops-base{width:62px;height:62px;object-fit:contain;filter:drop-shadow(0 5px 2px #0009);transition:transform .15s}
#camp .stage .number{position:absolute;top:2px;left:calc(50% - 36px);font:11px monospace;color:#d3d8be;background:#172018;border:1px solid #738462;padding:2px 4px;line-height:1.2;z-index:1}
#camp .stage>div{width:100%;background:#101a12d9;padding:3px 2px}#camp .stage b{display:block;font-size:10px;color:#c3ceb5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#camp .stage small{display:none}#camp .stage .state{display:block;font:9px sans-serif;color:#b9cfa1;margin-top:3px;background:#132016;padding:1px 4px}
#camp .stage:disabled{opacity:.58}#camp .stage:disabled .ops-base{filter:grayscale(.8) brightness(.75) drop-shadow(0 4px 2px #000)}#camp .stage.selected .ops-base{transform:translateY(-4px);filter:drop-shadow(0 0 8px #dac57566)}#camp .stage.selected>div{background:#dcc67c}#camp .stage.selected b{color:#1c2918}#camp .stage.selected .number{background:#e4d49c;color:#25301e}#camp .stage.completed .number{border-color:#a7c78a}#camp .stage:hover:not(:disabled){background:none}#camp .stage:hover:not(:disabled) .ops-base{transform:translateY(-5px)}
.ops-map-legend{display:flex;gap:16px;padding:12px 0;font-size:10px;color:#a6b697}.ops-map-legend span:first-child{color:#e1c678}
#camp .mission{position:relative;border:1px solid #64705a;background:#20291f;box-shadow:5px 5px 0 #080f0b;border-radius:0;overflow:hidden}.ops-detail-label{display:block;padding:14px 18px;font:10px monospace;letter-spacing:1.4px;background:#343d2a;color:#d7c790;border-bottom:1px solid #596447}#camp .mission-top{padding:13px 18px;font:10px monospace;color:#b7c3a8}#camp .tag{border-color:#6a7659;color:#d8d5a9}
#camp .preview{height:235px;margin:0 12px;border:1px solid #667457}#camp .preview-caption{left:16px;bottom:16px}#camp .preview-caption h2{font-size:26px;margin:6px 0;color:#f4efd7}#camp .preview-caption small{font:9px monospace;color:#c8d3ba}#camp .preview-caption p{font-size:11px;line-height:1.6;color:#dde1d2;margin:6px 0 0}
#camp .mission-stats{padding:18px 16px;gap:8px;border-bottom:1px solid #4b5742}#camp .mission-stats>div+div{padding-left:12px;border-left-color:#4b5742}#camp .mission-stats small{font-size:10px;color:#aab89c}#camp .mission-stats strong{font-size:14px;color:#ead7a0}#camp .boss-intel{padding:14px 18px;background:#19221a;border-color:#4b5742}#camp .boss-intel small{color:#d7b77c;font-size:10px}#camp .boss-intel p{font-size:11px;line-height:1.7;color:#bec8b2}
#camp .deploy-row{padding:16px;display:flex;flex-direction:column;align-items:stretch;gap:12px;background:#252f22}#camp .deploy-row>div{display:flex;justify-content:space-between;gap:8px;align-items:center}#camp .deploy-row b{font-size:12px}#camp .deploy-row p{font-size:10px;color:#a9b99c;margin:0}#camp #start{width:100%;min-width:0;background:#dec77b;color:#23311e;border:1px solid #f0d994;box-shadow:inset 0 -4px #a18e50;padding:16px 20px;font-size:16px;border-radius:0}#camp #start:hover:not(:disabled){background:#ecd994}
#camp #beginnerHelp{margin-top:4px;padding:10px 16px;background:#202d21;border:1px solid #5d6f50;color:#d7dfc7;font-size:12px}#camp .briefing{margin-top:18px;padding-top:18px;border-top:1px solid #3e4f39;gap:20px}#camp .briefing>div>span{font:20px monospace;color:#7d9470}#camp .briefing b{font-size:12px;color:#cbd7bf}#camp .briefing small{font-size:10px;color:#9daf92}
@media(max-width:1250px){body:not(.combat-view)>header{flex-wrap:wrap;height:auto;min-height:88px;padding:14px 3%;gap:12px}body:not(.combat-view) nav{order:5;width:100%;height:55px;margin:0;border-top:1px solid #374534}body:not(.combat-view) nav button{flex:1;justify-content:center}body:not(.combat-view) nav span{display:inline}#camp .camp-grid{gap:18px;grid-template-columns:minmax(0,1.3fr) minmax(320px,1fr)}}
@media(max-width:850px){#camp .camp-grid{display:flex;flex-direction:column;gap:18px}#camp .camp-grid>aside,#camp .mission{width:100%}#camp #stages{height:310px}#camp .preview{height:220px}#camp .mission{box-shadow:none}#camp .deploy-row{flex-direction:column}#camp .briefing{grid-template-columns:1fr}#camp .section-line>span:last-child{display:none}}
@media(max-width:520px){body:not(.combat-view)>header{padding:12px 14px;gap:8px}body:not(.combat-view) .brand b{font-size:27px}body:not(.combat-view) .brand small{font-size:7px}body:not(.combat-view) .wallet{margin-left:auto}body:not(.combat-view) .wallet strong{font-size:23px}body:not(.combat-view) .wallet small{display:none}body:not(.combat-view) .icon{padding:8px 10px;font-size:11px;flex:1}body:not(.combat-view) nav{height:64px;gap:3px}body:not(.combat-view) nav button{display:grid;grid-template-columns:20px auto;gap:2px 4px;padding:8px 3px;font-size:12px}body:not(.combat-view) nav button span{grid-column:1/-1;font-size:8px;letter-spacing:0}.ops-nav-icon{width:20px;height:23px}#camp h1{font-size:26px}#camp h1 span{font-size:9px;margin-left:8px}#camp .commander-row{flex-wrap:wrap;gap:6px}#camp .commander-row>small{font-size:9px}#camp #stages{height:275px}#camp .stage{width:19%;height:82px}#camp .stage .ops-base{width:46px;height:46px}#camp .stage .number{left:calc(50% - 24px);top:0;font-size:9px}#camp .stage b{font-size:9px}#camp .stage .state{font-size:8px}.ops-map-legend{gap:10px;font-size:9px;flex-wrap:wrap}#camp .mission-stats strong{font-size:13px}#camp .deploy-row>div{flex-wrap:wrap}#camp .preview-caption h2{font-size:25px}}
@media(prefers-reduced-motion:reduce){#camp .stage .ops-base{transition:none}}
@media(max-width:520px){body:not(.combat-view)>header{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}body:not(.combat-view) .brand{grid-column:1/3;grid-row:1}body:not(.combat-view) .wallet{grid-column:3;grid-row:1;justify-content:flex-end;white-space:nowrap}body:not(.combat-view) .wallet strong{font-size:20px}body:not(.combat-view) .icon{grid-row:2;white-space:nowrap;width:100%}body:not(.combat-view) nav{grid-column:1/-1;grid-row:3;width:100%}#camp .stage .state{position:static}}
