
/* CIVARION v0.3 — military expansion */
.war-banner{position:relative;overflow:hidden;background:linear-gradient(116deg,#213b4b 0%,#13343e 55%,#1e303b 100%);border:1px solid #527987;border-radius:16px;padding:30px;margin:0 0 14px;box-shadow:0 18px 55px #040d154d}
.war-banner:before{content:"✦";position:absolute;right:35px;top:-75px;font-size:250px;color:#79c9be12;pointer-events:none}
.war-banner .eyebrow{color:#dbb67e}
.war-banner h2{font-size:clamp(22px,3vw,32px);letter-spacing:-.7px;margin:13px 0 9px;position:relative}
.war-banner p{font-size:13px;max-width:680px;line-height:1.7;color:#b6ccd6;position:relative}
.war-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:15px}
.war-stats>div{padding:17px 20px;border:1px solid #395466;border-radius:12px;background:linear-gradient(145deg,#1e3443,#102332)}
.war-stats span{color:#97b7c5;font-size:10px;font-weight:850;letter-spacing:1.5px}
.war-stats strong{display:block;font-size:28px;letter-spacing:-1px;margin:6px 0;color:#f1f8fa}
.war-stats small{color:#89a9b8;font-size:10px}
.section-intro{display:flex;align-items:start;justify-content:space-between;margin-bottom:20px}
.section-intro .eyebrow{color:#d8b27f}
.officer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.officer-card{position:relative;min-width:0;padding:14px;background:linear-gradient(132deg,#1a3444,#172b39);border:1px solid #3d5e6e;border-radius:13px;display:grid;grid-template-columns:95px minmax(0,1fr);grid-template-rows:1fr auto;gap:10px}
.officer-card.selected{border-color:#d0a75d;box-shadow:inset 0 0 0 1px #bd995f4d,0 0 25px #b0892d10}
.portrait{grid-row:span 2;position:relative;height:135px;border:1px solid #54737c;border-radius:11px;overflow:hidden;display:flex;align-items:end;justify-content:center;background:linear-gradient(145deg,#456475,#1a323f)}
.portrait svg{width:100%;height:100%;opacity:.9}
.portrait span{position:absolute;bottom:7px;right:7px;background:#0e2634c7;border:1px solid #d4c0986b;color:#fff0c9;padding:4px 6px;border-radius:4px;font-size:10px;font-weight:900;letter-spacing:1px}
.portrait-solari{background:linear-gradient(145deg,#727166,#253c47)}
.portrait-nova{background:linear-gradient(145deg,#437787,#1b324f)}
.portrait-sato{background:linear-gradient(145deg,#3a677a,#1b2b42)}
.officer-info{min-width:0}
.officer-info .eyebrow{font-size:8px;letter-spacing:1px;color:#d5b17b}
.officer-info h3{font-size:16px;margin:7px 0}
.officer-info p{color:#a4bdc9;line-height:1.5;font-size:11px;margin:4px 0 8px;min-height:30px}
.officer-info b{color:#93dfca;font-size:11px}
.officer-select{grid-column:2;color:#eac790;background:#284350;border:1px solid #6b806f;border-radius:7px;padding:9px 10px;font-size:10px;font-weight:900;letter-spacing:1px}
.officer-select:hover{background:#365566}
.officer-select:disabled{background:#4d4935;color:#f5dca7;border-color:#a38554;opacity:1}
.equipment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.equipment-card{display:flex;flex-direction:column;min-width:0;border:1px solid #405868;border-radius:13px;background:linear-gradient(150deg,#1c3342,#122736);padding:16px;transition:transform .15s,border-color .15s}
.equipment-card:hover{transform:translateY(-2px);border-color:#749bab}
.equipment-top{display:flex;justify-content:space-between;gap:8px;color:#96b7c6;font-size:9px;letter-spacing:1px;font-weight:850}
.equipment-top span:last-child{color:#d0b47e}
.equipment-art{display:flex;align-items:center;justify-content:center;height:135px;position:relative;margin:12px 0;background:radial-gradient(circle at 48% 45%,#58716b55 0%,#18354000 66%);border:1px solid #3c59652f;border-radius:10px;color:#e7c68d}
.equipment-art.air{background:radial-gradient(circle at 48% 45%,#38758a63 0%,#18354000 66%);color:#9acdde}
.equipment-art.navy{background:radial-gradient(circle at 48% 45%,#235a7f88 0%,#18354000 66%);color:#a4d4ec}
.equipment-art:after{content:"";position:absolute;width:74%;height:1px;background:linear-gradient(to right,transparent,#b7d9d25e,transparent);bottom:22px}
.unit-svg{width:min(100%,125px);height:125px;filter:drop-shadow(0 12px 9px #06121b)}
.equipment-card h3{margin:0 0 7px;font-size:16px}
.equipment-card p{color:#a7bfca;font-size:11px;line-height:1.55;margin:0;min-height:46px}
.equipment-row{display:flex;align-items:end;gap:9px;margin-top:12px;padding-top:11px;border-top:1px solid #30495a}
.equipment-row strong{font-size:26px;color:#f3f9fc;line-height:1}
.equipment-row span{color:#95b2bf;font-size:9px;letter-spacing:1px;font-weight:800}
.equipment-card .cost{font-size:10px;line-height:1.4;min-height:28px}
.equipment-card .btn{width:100%;text-align:center;margin-top:auto;background:#365664;border-color:#57788a}
.equipment-card .btn:hover{background:#4a7280}
.strategy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:17px 0}
.strategy{display:flex;align-items:start;gap:12px;padding:14px;border-radius:11px;background:#1b3443;border:1px solid #385665}
.strategy-emblem{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border-radius:10px;background:#344c59;color:#ffdc9e;font-size:25px}
.strategy h3{font-size:13px;margin:0 0 7px}
.strategy h3 span{font-size:9px;background:#2a4857;border-radius:5px;color:#a8d2d4;padding:3px 5px;margin-left:4px}
.strategy p{font-size:11px;line-height:1.55;margin:0}
.battle-report{border-color:#6b806d;background:linear-gradient(135deg,#213d3d,#112a35)}
.report-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}
.report-metrics>div{padding:10px;background:#122c37;border:1px solid #36565b;border-radius:9px}
.report-metrics small{display:block;color:#85adad;font-size:9px;letter-spacing:1px}
.report-metrics strong{display:block;color:#e8f6f4;font-size:17px;margin-top:7px}
.tactic-options{display:grid;grid-template-columns:1fr;gap:6px}
.tactic-chip{display:flex;align-items:center;justify-content:space-between;gap:6px;text-align:left;color:#d5e4eb;background:#1b3442;border:1px solid #426477;border-radius:7px;padding:10px;font-size:11px}
.tactic-chip small{font-size:8px;letter-spacing:.6px;color:#a0b9c2}
.tactic-chip.chosen{background:#3b483e;border-color:#b99960;color:#ffe0a1}
.commit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}
.commit{background:#1d3949;border:1px solid #426477;color:#ccdee6;padding:9px 0;border-radius:7px;font-size:11px}
.commit.chosen{background:#775c36;color:#fff0c7;border-color:#d2a46a;font-weight:800}
@media(max-width:1500px){.equipment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.officer-grid{grid-template-columns:1fr}}
@media(max-width:830px){.war-banner{padding:20px}.war-stats{gap:6px}.war-stats>div{padding:11px}.war-stats strong{font-size:20px}.war-stats small{font-size:9px}.officer-grid{grid-template-columns:1fr}.equipment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.strategy-grid{grid-template-columns:1fr}}
@media(max-width:490px){.equipment-grid{grid-template-columns:1fr}.officer-card{grid-template-columns:80px 1fr}.portrait{height:125px}.war-stats span{font-size:8px}.war-stats strong{font-size:18px}.war-stats small{display:none}.report-metrics{grid-template-columns:1fr}}
