.history-controls { display:grid; grid-template-columns:auto minmax(240px,360px); justify-content:space-between; align-items:end; gap:24px; }
.history-controls label { min-width:0; }
.history-tab-count { font-size:11px; margin-left:4px; font-weight:400; }
.history-result-summary { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; margin:12px 0; }
.history-result-summary .history-total { margin:0; }
.history-show-all { border:0; border-bottom:1px solid currentColor; background:transparent; padding:8px 0; color:#24534c; font:600 13px Arial,sans-serif; cursor:pointer; }
.history-show-all[hidden] { display:none; }
.history-tabs { display:flex; gap:0; border-bottom:1px solid #a5b6b4; }
.history-tabs button { border:0; border-bottom:3px solid transparent; min-width:92px; font-weight:600; }
.history-tabs button[aria-selected="true"] { border-color:#242a2b; }
.history-tabs [data-status="ongoing"][aria-selected="true"] { color:#006b58; border-color:#007962; }
.history-tabs [data-status="historical"][aria-selected="true"] { color:#374f72; border-color:#47638b; }
.history-map { max-width:1050px; margin:14px auto 0; }
.state-pin { width:44px; height:44px; background:#596260; border-width:2px; font-size:12px; }
.state-pin.ongoing { background:#00735e; }
.state-pin.historical { background:#415b81; }
.state-pin.mixed { border-bottom-color:#415b81; border-bottom-width:5px; }
.state-pin[aria-pressed="true"] { outline:3px solid #202a29; outline-offset:4px; }
.state-pin:hover { filter:brightness(.85); }
.history-map-footer { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:16px; padding:18px 0 24px; }
.history-legend { display:flex; flex-wrap:wrap; gap:18px; font-size:12px; }
.history-legend span, .phase-label { display:inline-flex; align-items:center; gap:8px; }
.history-legend span::before, .phase-label::before { content:""; width:9px; height:9px; flex-shrink:0; border-radius:50%; background:#596260; }
.ongoing.phase-label::before, .history-legend .ongoing::before { background:#00735e; }
.historical.phase-label::before, .history-legend .historical::before { background:#415b81; }
.history-results { border-left:0; border-top:1px solid #b4c3c1; padding:28px 0; }
.history-result-heading { display:flex; justify-content:space-between; gap:20px; align-items:center; }
.history-project-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 26px; max-height:none; overflow:visible; padding:10px 0 0; }
.history-project { display:flex; flex-direction:column; border-bottom:1px solid #aebdb9; min-width:0; min-height:230px; padding:24px 0; }
.history-project:focus-visible { outline:2px solid #006b58; outline-offset:6px; }
.history-project .eyebrow { font-size:10px; margin:0 0 9px; }
.history-project h4 { font-size:17px; line-height:1.45; margin:0 0 9px; }
.history-scope-summary { font:14px/1.65 Arial,sans-serif; color:#394e4e; margin:0 0 18px; }
.history-project .phase-label { margin-top:auto; }
.history-year { display:flex; align-items:baseline; flex-wrap:wrap; gap:5px 10px; font:12px/1.5 Arial,sans-serif; margin:10px 0; color:#394e4e; }
.history-year strong { font-size:14px; color:#242a2b; }
.history-year span { max-width:100%; }
.phase-label { font-size:11px; color:#3e4e4b; }
.history-more { grid-column:1/-1; justify-self:center; margin:28px 0 0; padding:12px 20px; border:1px solid #899e98; background:transparent; font:600 13px Arial,sans-serif; color:#283e45; cursor:pointer; }
.history-section button:focus-visible { outline:3px solid #006b58; outline-offset:4px; }
@media (max-width:800px) {
  .history-project-list { grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 20px; }
  .history-controls { grid-template-columns:1fr; align-items:stretch; gap:16px; }
  .history-controls label { width:100%; }
  .history-tabs { align-self:flex-start; }
  .state-pin { width:30px; height:32px; font-size:9px; padding:2px; border-radius:4px; }
  .history-map-footer { padding-top:8px; }
}
@media (max-width:540px) {
  .history-project-list { grid-template-columns:1fr; }
  .history-project { min-height:0; }
  .history-tabs button { min-width:88px; }
}
