.fha-horizon > div {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: .25rem .75rem;
  margin-block: .9rem;
}
.fha-horizon strong, .fha-ledger td { font-variant-numeric: tabular-nums; }
.fha-horizon i {
  grid-column: 1/-1;
  height: .55rem;
  background: var(--blue);
  border-radius: 1rem;
}
.fha-horizon > div:nth-of-type(2) i {
  background: linear-gradient(to right, var(--blue) 36.667%, var(--blue-mid) 36.667%);
}
.fha-horizon p { font-size: .92rem; margin-bottom: 0; }
.fha-workspace {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: clamp(1rem,2.5vw,2rem);
  align-items: start;
}
.fha-field { min-width: 0; }
.fha-field label { margin-bottom: .3rem; }
.fha-field small { margin-top: .3rem; }
.fha-actions { display: flex; flex-wrap: wrap; gap: .55rem; }
.fha-actions button:not(.plan-primary) {
  min-height: 44px;
  border: 1px solid var(--control-border);
  border-radius: var(--control-radius);
  background: var(--surface);
  color: var(--blue);
  padding: .45rem .85rem;
  font: inherit;
}
.fha-table-wrap { max-width: 100%; overflow-x: auto; }
.fha-page .plan-table th, .fha-page .plan-table td { vertical-align: top; }
.fha-page .plan-table td, .fha-page .plan-table th:not(:first-child) { text-align: end; }
.fha-ledger tbody th { width: 46%; font-weight: 550; }
.fha-ledger tbody tr:last-child { background: var(--blue-soft); font-weight: 680; }
.fha-errors { border-inline-start: 3px solid var(--error); padding-inline-start: 1rem; }
.fha-errors > p { font-weight: 650; }
.fha-guide .case-evidence { max-width: 100%; overflow-x: auto; }
.fha-guide .method-ledger dd { max-width: none; }
.fha-pair section { border-block-start: 1px solid var(--rule); }
@media (min-width: 64rem) {
  .fha-workspace { grid-template-columns: minmax(0,.95fr) minmax(0,1.05fr); }
  .fha-guide .method-ledger > div {
    display: grid;
    grid-template-columns: minmax(0,.55fr) minmax(0,1.45fr);
    column-gap: 2rem;
  }
}
@media (max-width: 35rem) {
  .fha-page .plan-table td, .fha-page .plan-table th { padding: .45rem .28rem; }
  .fha-page .plan-table { font-size: .92rem; }
  .fha-actions .plan-primary { width: 100%; }
}
@media print {
  .fha-workspace { display: block; }
  .fha-workspace .fha-table-wrap { overflow: visible; }
}
