/* Interactive national BOP flows: imports, exports, and balance. */
.econ-kpi:has(> .obor-trade-controls){overflow:visible}
.obor-trade-controls{margin:12px 0 0;display:flex;flex-direction:column;gap:8px}
.obor-trade-range-control{display:flex;align-items:center;gap:10px;justify-content:space-between}
.obor-trade-range-control label{font-size:10px;color:#627783;font-weight:650;letter-spacing:.04em}
.obor-trade-range-control select{max-width:125px;min-height:32px;padding:4px 26px 4px 10px;border:1px solid #c8d5da;border-radius:7px;background:#f6f9fa;color:#233f4c;font-family:inherit;font-size:11px;font-weight:600;line-height:1.3;cursor:pointer}
.obor-trade-range-custom{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.obor-trade-range-custom[hidden]{display:none}
.obor-trade-range-custom label{font-size:10px;color:#607883;display:flex;flex-direction:column;gap:4px;min-width:0}
.obor-trade-range-custom input{font:inherit;font-size:12px;min-height:33px;min-width:0;width:100%;max-width:100%;box-sizing:border-box;padding:5px;border:1px solid #c8d5da;background:#fff;color:#173744;border-radius:7px}
.obor-trade-range-control select:focus-visible,.obor-trade-range-custom input:focus-visible,.obor-trade-chart svg:focus-visible{outline:2px solid #347e96;outline-offset:3px}
.obor-trade-chart{position:relative;min-width:0;margin-top:3px}
.obor-trade-chart .econ-spark{display:block;touch-action:pan-y;cursor:crosshair;margin:8px 0 2px}
.obor-trade-chart .obor-trade-active-marker{fill:#204f63;stroke:white;stroke-width:1.3}
.obor-trade-tooltip{position:absolute;z-index:4;top:-62px;transform:translateX(-50%);min-width:160px;max-width:calc(100% - 12px);padding:8px 10px;pointer-events:none;border-radius:8px;background:#102f3e;color:#fff;box-shadow:0 5px 20px rgba(16,47,62,.2);font-variant-numeric:tabular-nums}
.obor-trade-tooltip[hidden]{display:none}
.obor-trade-tooltip strong{display:block;font-size:11px;line-height:1.4;white-space:nowrap}
.obor-trade-tooltip span{display:block;color:#d7e3e7;font-size:10px;line-height:1.5;white-space:nowrap}
.obor-trade-chart-note{font-size:10px;color:#768994;margin:0 0 8px;min-height:14px;line-height:1.4;font-variant-numeric:tabular-nums}
@media(max-width:1000px){.obor-trade-range-control{flex-wrap:wrap}.obor-trade-tooltip{top:-57px}}
@media(max-width:620px){.obor-trade-range-control{flex-wrap:nowrap}.obor-trade-range-control select{max-width:160px}}
@media(prefers-reduced-motion:reduce){.obor-trade-chart .econ-spark{scroll-behavior:auto}}
/* Identify the statistical basis at the number and explain the cross-basis gap. */
.econ-kpi--balance .econ-kpi-basis{color:#d0e0e5}
.economic-lens-value-basis small{display:block;font-size:9px;line-height:1.35;color:#4e7180;font-weight:650;margin-top:3px}
.econ-basis-bridge{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 13px;padding:11px 16px;border:1px solid #d9e0e4;border-top:0;background:#f4f7f8;color:#47616e;font-size:11px;line-height:1.5}
.econ-basis-bridge>strong{color:#234454;font-size:11px;white-space:nowrap}
.econ-basis-bridge>span{flex:1 1 370px;min-width:0}
.econ-basis-bridge b{color:#244958}
.econ-basis-bridge>a{color:#246479;text-underline-offset:2px;white-space:nowrap}
@media(max-width:620px){.econ-basis-bridge{align-items:flex-start;gap:5px;padding:11px 13px}.econ-basis-bridge>strong{white-space:normal}.econ-basis-bridge>span{flex-basis:100%}}

/* Preserve contrast within the existing dark balance card. */
.econ-kpi--balance .obor-trade-range-control label,
.econ-kpi--balance .obor-trade-range-custom label,
.econ-kpi--balance .obor-trade-chart-note{color:#c6d9e1}
.econ-kpi--balance .obor-trade-range-control select,
.econ-kpi--balance .obor-trade-range-custom input{
  background:#173d50;color:#f3f8fa;border-color:#678f9d;
}
.econ-kpi--balance .obor-trade-range-control select:hover,
.econ-kpi--balance .obor-trade-range-custom input:hover{border-color:#b6d4df}
.econ-kpi--balance .obor-trade-chart .obor-trade-active-marker{
  fill:#dcaa7d;stroke:#102b39;stroke-width:1.4
}
.econ-kpi--balance .econ-spark path.obor-trade-zero{
  stroke:#91acb8;stroke-width:1;stroke-dasharray:3 4;opacity:.8
}
.econ-kpi--balance .obor-trade-tooltip{background:#f7fbfc;color:#173847}
.econ-kpi--balance .obor-trade-tooltip span{color:#466877}
