/* Preserved encounter records on the existing engraved command instruments. */
.encounter-detail,.encounter-card { min-width:0; }
.battle-replay { margin:0 0 16px; border:1px solid #61705b; background:#101c20; overflow:hidden; }
.battle-replay-heading { display:flex; align-items:center; justify-content:space-between; padding:7px 11px; color:#bacbb2; background:#1b2a22; font:10px var(--mono); letter-spacing:.6px; text-transform:uppercase; }
.battle-replay-control { display:grid; place-items:center; width:30px; height:30px; min-height:30px; padding:0; }
.battle-replay-control svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.battle-replay-canvas { display:block; width:100%; height:280px; pointer-events:none; }
.battle-replay-screen { border-block:1px solid #3f5148; }
.geospatial-island-render > .crt-canvas-glass { margin:8px 0; }
.battle-replay-legend { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; padding:10px 11px; border-top:1px solid #3f5148; color:#adbcaa; font:9px/1.5 var(--mono); }
.battle-replay-legend > span { min-width:0; }
.battle-replay-legend b { display:block; margin-bottom:4px; color:#d0dbc2; font-weight:500; }
.battle-replay-legend > span > span { display:block; overflow-wrap:anywhere; }
.battle-replay-priority { margin:0; padding:7px 11px; border-top:1px solid #3f5148; color:#c8cfac; background:#1b2a22; font:10px/1.5 var(--mono); overflow-wrap:anywhere; }
.encounter-equipment-name { display:flex; align-items:center; gap:8px; flex:1; min-width:0; }
.encounter-equipment-name .icon { flex:none; width:18px; height:18px; }
.encounter-unit .encounter-unit-metrics { display:flex; flex-wrap:wrap; gap:8px 20px; margin-top:9px; }
.encounter-unit-metrics dt { font-size:8px; }
.encounter-unit-metrics dd { font-size:10px; margin-top:2px; }
.encounter-fire-details > summary { cursor:pointer; color:#c1cdb5; padding:9px 0; border-top:1px solid #455543; font:10px var(--mono); }
.encounter-fire-details[open] > summary { margin-bottom:10px; }
.encounter-kind { display:flex; align-items:center; gap:8px; color:#b7c7ad; font:10px/1.5 var(--mono); letter-spacing:.6px; text-transform:uppercase; }
.encounter-kind .icon { flex:none; width:22px; height:22px; }
.encounter-card h3 { margin:12px 0 9px; color:#d7e0c9; font:600 14px/1.45 var(--mono); overflow-wrap:anywhere; }
.encounter-card p { margin:10px 0; color:#b7c9bb; line-height:1.6; overflow-wrap:anywhere; }
.encounter-result { max-width:100%; color:#ead7a9; border-color:#7f7050; background:#413822; white-space:normal; overflow-wrap:anywhere; }
.encounter-open { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; margin-top:9px; max-width:100%; white-space:normal; }
.encounter-open .icon { flex:none; width:18px; height:18px; }
.encounter-brief { padding:15px; border:1px solid #61705b; background:repeating-linear-gradient(0deg,transparent 0 23px,#6c8e6010 23px 24px),#1b2a22; }
.encounter-brief > .encounter-kind { margin-bottom:12px; }
.encounter-readouts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 16px; margin:13px 0 0; }
.encounter-readouts > div { min-width:0; }
.encounter-readouts dt { color:#a7b7a6; font:9px/1.5 var(--mono); letter-spacing:.4px; text-transform:uppercase; overflow-wrap:anywhere; }
.encounter-readouts dd { margin:4px 0 0; color:#d4e2cd; font:500 12px/1.55 var(--mono); overflow-wrap:anywhere; }
.encounter-summary { margin:15px 0 0!important; color:#d0dbc8; }
.encounter-section { padding:18px 0; border-bottom:1px solid #455543; }
.encounter-section h3 { margin:0 0 12px; color:#d0dcbf; font:600 12px/1.5 var(--mono); letter-spacing:.6px; text-transform:uppercase; }
.encounter-section h4 { margin:0; color:#c0cbb3; font:500 11px/1.6 var(--mono); }
.encounter-side-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; }
.encounter-side { padding:12px; min-width:0; background:#1b2821; border:1px solid #455a45; }
.encounter-side .encounter-readouts { grid-template-columns:minmax(0,1fr); }
.encounter-records,.encounter-fire-sequence { display:grid; gap:10px; margin:0; padding:0; list-style:none; }
.encounter-records > li,.encounter-fire-sequence > li { padding:12px; min-width:0; border:1px solid #455743; background:#17231c; }
.encounter-records .row { align-items:start; gap:8px; flex-wrap:wrap; }
.encounter-records strong,.encounter-fire-route strong { color:#d6dfcd; font:500 12px/1.55 var(--mono); overflow-wrap:anywhere; }
.encounter-records .badge,.encounter-fire-heading .badge { white-space:normal; }
.encounter-fire-totals { margin:0 0 15px; }
.encounter-fire-heading { display:flex; align-items:start; gap:10px; }
.encounter-fire-heading > div { flex:1; min-width:0; }
.encounter-fire-heading strong { display:block; color:#dacdac; font:500 12px/1.45 var(--mono); }
.encounter-fire-heading > div > span { display:block; margin-top:4px; color:#a6b8a9; font:9px/1.5 var(--mono); }
.encounter-sequence { flex:none; color:#ae9872; font:11px/1.6 var(--mono); }
.encounter-fire-route { display:flex; align-items:start; gap:10px; margin:12px 0 0!important; }
.encounter-fire-route > strong { min-width:0; flex:1; }
.encounter-fire-route > span { color:#b2a580; }
.encounter-fire-sequence [data-effect="interception"] { border-left:3px solid #7f9869; }
.encounter-fire-sequence [data-effect="blast"] { border-left:3px solid #9b784e; background:#2a261b; }
.encounter-infrastructure-snapshot > h4 { margin:17px 0 10px; }
.encounter-state,.encounter-limitation { margin:14px 0 0!important; color:#c1c4ae; padding:11px; border-left:2px solid #9c8b64; background:#25291e; }
.encounter-close { margin-top:18px; min-height:44px; }
.encounter-detail[data-kind="geospatial"] .encounter-brief,.encounter-detail[data-kind="drone-detection"] .encounter-brief { padding:10px; }
.encounter-detail[data-kind="geospatial"] .encounter-section,.encounter-detail[data-kind="drone-detection"] .encounter-section { padding:10px 0; }
.encounter-detail[data-kind="geospatial"] .encounter-readouts,.encounter-detail[data-kind="drone-detection"] .encounter-readouts { gap:5px 12px; margin-top:7px; }
.encounter-detail[data-kind="geospatial"] .encounter-readouts dt,.encounter-detail[data-kind="drone-detection"] .encounter-readouts dt { font-size:8px; letter-spacing:0; }
.encounter-detail[data-kind="geospatial"] .encounter-readouts dd,.encounter-detail[data-kind="drone-detection"] .encounter-readouts dd { font-size:10px; line-height:1.45; margin-top:2px; }
.encounter-detail[data-kind="geospatial"] .encounter-section h3,.encounter-detail[data-kind="drone-detection"] .encounter-section h3 { font-size:10px; margin-bottom:7px; }
.encounter-detail[data-kind="geospatial"] .encounter-summary,.encounter-detail[data-kind="drone-detection"] .encounter-summary { margin-top:7px!important; font-size:10px; }
.encounter-mission { position:relative; }
.encounter-mission > .report-aircraft-icon { float:right; width:48px; height:48px; margin:0 0 5px 8px; }
.encounter-mission > .research-tier-badge { float:right; }
.encounter-imagery-table { width:100%; table-layout:fixed; margin:0; }
.encounter-imagery-table th,.encounter-imagery-table td { padding:5px; border-bottom:1px solid #455743; font:10px/1.5 var(--mono); }
.encounter-imagery-table thead th { color:#a8b79b; font-size:8px; text-transform:uppercase; background:#17271c; }
.encounter-imagery-table th:first-child { width:56%; }
.encounter-imagery-table th strong { font:500 10px/1.5 var(--mono); overflow-wrap:anywhere; }
.encounter-detail[data-kind="geospatial"] .geospatial-island-model { height:200px; min-height:180px; }
.encounter-detail[data-kind="geospatial"] .encounter-infrastructure-snapshot > h4 { margin:10px 0 5px; font-size:10px; }
.dispatch-item .encounter-open { font-size:10px; }
/* Battle records are compact ledger rows; the archived evidence stays exact. */
.encounter-detail[data-kind="combat"] .battle-replay { margin-bottom:9px; }
.encounter-detail[data-kind="combat"] .battle-replay-canvas { height:210px; }
.encounter-detail[data-kind="combat"] .battle-replay-legend { padding:6px 9px; gap:5px; font-size:8px; }
.encounter-detail[data-kind="combat"] .encounter-brief { padding:10px; }
.encounter-detail[data-kind="combat"] .encounter-brief > .encounter-kind { margin-bottom:6px; }
.encounter-detail[data-kind="combat"] .encounter-summary { margin-top:7px!important; font-size:10px; line-height:1.5; }
.encounter-detail[data-kind="combat"] .encounter-section { padding:10px 0; }
.encounter-detail[data-kind="combat"] .encounter-section h3 { margin-bottom:7px; font-size:10px; letter-spacing:.25px; }
.encounter-detail[data-kind="combat"] .encounter-readouts { gap:5px 12px; margin-top:7px; }
.encounter-detail[data-kind="combat"] .encounter-readouts dt { font-size:8px; letter-spacing:0; }
.encounter-detail[data-kind="combat"] .encounter-readouts dd { font-size:10px; line-height:1.45; margin-top:2px; }
.encounter-detail[data-kind="combat"] .encounter-side-grid { gap:7px; }
.encounter-detail[data-kind="combat"] .encounter-side { padding:8px; }
.encounter-detail[data-kind="combat"] .encounter-side h4 { font-size:9px; }
.encounter-detail[data-kind="combat"] .encounter-side .encounter-readouts { grid-template-columns:repeat(2,minmax(0,1fr)); }
.encounter-detail[data-kind="combat"] .encounter-participants dd { display:flex; flex-wrap:wrap; align-items:center; gap:3px; font-weight:600; }
.encounter-equipment-table { table-layout:fixed; min-width:300px; margin:0; }
.encounter-equipment-table th,.encounter-equipment-table td { padding:7px 5px; vertical-align:top; border-bottom:1px solid #455743; font:9px/1.5 var(--mono); }
.encounter-equipment-table thead th { font:8px/1.5 var(--mono); color:#a8b79b; text-transform:uppercase; padding-top:3px; background:#17271c; }
.encounter-equipment-table th:first-child { width:48%; }
.encounter-equipment-table th .row { gap:4px; flex-direction:column; align-items:flex-start; }
.encounter-equipment-table .encounter-equipment-name { gap:4px; align-items:flex-start; }
.encounter-equipment-table .encounter-equipment-name .icon { width:14px; height:14px; margin-top:2px; }
.encounter-equipment-table strong { display:flex; flex-wrap:wrap; align-items:center; font:500 10px/1.5 var(--mono); overflow-wrap:break-word; }
.encounter-equipment-table .badge { font-size:7px; padding:1px 4px; letter-spacing:0; }
.encounter-equipment-table .equipment-destroyed .badge { color:#e4b8a9; border-color:#916a58; background:#432820; }
.encounter-equipment-table .equipment-expended .badge { color:#cebb92; border-color:#7e7554; background:#342f20; }
.encounter-equipment-table .encounter-readouts,.encounter-unit .encounter-unit-metrics { display:grid!important; grid-template-columns:minmax(0,1fr); margin:0!important; gap:4px!important; }
.encounter-detail[data-kind="combat"] .encounter-conditions .encounter-readouts { grid-template-columns:repeat(3,minmax(0,1fr)); }
.encounter-detail[data-kind="combat"] .encounter-fire-totals { grid-template-columns:repeat(4,minmax(0,1fr)); }
.encounter-detail[data-kind="combat"] .encounter-records,.encounter-detail[data-kind="combat"] .encounter-fire-sequence { gap:4px; }
.encounter-detail[data-kind="combat"] .encounter-records > li,.encounter-detail[data-kind="combat"] .encounter-fire-sequence > li { padding:7px; }
.encounter-detail[data-kind="combat"] .encounter-fire-heading { gap:6px; align-items:center; }
.encounter-detail[data-kind="combat"] .encounter-fire-heading strong { font-size:10px; }
.encounter-detail[data-kind="combat"] .encounter-fire-heading > div > span { margin:1px 0 0; font-size:8px; }
.encounter-detail[data-kind="combat"] .encounter-fire-route { gap:5px; margin-top:5px!important; }
.encounter-detail[data-kind="combat"] .encounter-fire-route strong { font-size:9px; line-height:1.5; }
.encounter-detail[data-kind="combat"] .encounter-fire-details > summary { padding:7px 0; margin:7px 0 0; }
.encounter-detail[data-kind="combat"] .encounter-fire-sequence .encounter-readouts { grid-template-columns:repeat(3,minmax(0,1fr)); }
@media(max-width:480px) {
  .encounter-detail[data-kind="combat"] .battle-replay-canvas { height:180px; }
  .encounter-detail[data-kind="combat"] .encounter-side-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .encounter-detail[data-kind="combat"] .encounter-side .encounter-readouts { grid-template-columns:minmax(0,1fr); }
  .encounter-detail[data-kind="combat"] .encounter-fire-totals,.encounter-detail[data-kind="combat"] .encounter-conditions .encounter-readouts { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .encounter-detail[data-kind="combat"] .encounter-fire-heading > div { flex-basis:auto; }
  .encounter-detail[data-kind="combat"] .encounter-fire-heading .badge { margin-left:0; }
  .encounter-detail[data-kind="combat"] .encounter-fire-route { display:flex; flex-wrap:wrap; }
  .encounter-detail[data-kind="combat"] .encounter-fire-route > strong { flex-basis:calc(50% - 12px); }
  .encounter-detail[data-kind="combat"] .encounter-fire-route > span { transform:none; }
}
@media(max-width:480px) {
  .encounter-brief { padding:12px; }
  .encounter-side-grid { grid-template-columns:minmax(0,1fr); }
  .encounter-side .encounter-readouts { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .encounter-readouts { gap:11px 12px; }
  .encounter-fire-heading { gap:7px; flex-wrap:wrap; }
  .encounter-fire-heading > div { flex-basis:calc(100% - 36px); }
  .encounter-fire-heading .badge { margin-left:24px; }
  .encounter-fire-route { display:grid; grid-template-columns:minmax(0,1fr); gap:4px; }
  .encounter-fire-route > span { transform:rotate(90deg); width:15px; text-align:center; }
  .encounter-open { width:100%; }
}
