/* Dashboard presentation. Model behavior and data roles remain in their modules. */
:root {
  --paper: #f3f6fa;
  --ink: #192d49;
  --red: #2b60d5;
  --muted: #69788d;
  --line: #dfe6ef;
  --land: #dce6ef;
  --display: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --mono: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-family: var(--display);
  font-size: 14px;
  letter-spacing: 0;
  line-height: 1.5;
  font-variant-numeric: tabular-nums;
  -webkit-font-smoothing: antialiased;
}
body { background: var(--paper); }
button, input, select { font-family: inherit; }
button, a, input, select { transition: background-color .15s, border-color .15s, box-shadow .15s; }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, summary:focus-visible { outline: 3px solid #97b7fb; outline-offset: 3px; }
.topbar { height: 82px; background: #fff; padding: 0 36px; border-bottom: 1px solid var(--line); gap: 32px; }
.wordmark { display: flex; align-items: center; gap: 12px; font-family: var(--display); font-size: 21px; font-weight: 720; letter-spacing: -.25px; line-height: 1.2; }
.brand-icon { width: 36px; height: 36px; flex-shrink: 0; color: var(--red); }
.topbar .wordmark .brand-copy { display: block; font: inherit; letter-spacing: inherit; margin: 0; }
.brand-copy small { display: block; font-size: 11px; line-height: 1.5; font-weight: 450; color: var(--muted); letter-spacing: .1px; margin-top: 3px; }
.topbar .project-caption { border: 0; padding: 0; font-size: 12px; letter-spacing: 0; color: var(--muted); }
.topbar .demo-badge { background: #eff4fd; border: 1px solid #dce7fc; border-radius: 5px; color: #3c5d96; font-size: 11px; letter-spacing: 0; padding: 5px 9px; }
.topbar .saved-state { font-size: 12px; letter-spacing: 0; color: var(--muted); }
.workspace-navigation { background: #fff; border-bottom: 1px solid var(--line); }
.workspace-tabs { padding: 0 36px; display: flex; gap: 32px; }
.workspace-tabs > button { min-height: 58px; padding: 16px 4px; border: 0; font-size: 13px; font-weight: 550; color: var(--muted); }
.workspace-tabs > button:last-child { border: 0; }
.workspace-tabs > button:hover { background: transparent; color: var(--red); }
.workspace-tabs > button[aria-selected=true] { background: transparent; color: #244fbc; }
.workspace-tabs > button[aria-selected=true]::after { height: 3px; border-radius: 3px 3px 0 0; }
.workspace-tab-number { display: none; }
main { padding: 0 36px; max-width: 1680px; }
.workspace-panel > .overview-head { padding: 30px 0 24px; align-items: center; flex-wrap: nowrap; }
.workspace-panel > .overview-head h1 { font-family: var(--display); font-size: 29px; line-height: 1.25; letter-spacing: -.45px; font-weight: 650; }
.workspace-panel > .overview-head .eyebrow { font-size: 11px; letter-spacing: .25px; color: var(--muted); font-weight: 500; margin-bottom: 8px; }
.red-square { display: none; }
.workspace-intro { max-width: 740px; margin: 9px 0 0; color: #64748b; font-size: 14px; line-height: 1.7; }
.workspace-panel > .overview-head .overview-note { font-size: 13px; line-height: 1.7; padding: 0; }
.overview-actions { flex-shrink: 0; gap: 12px; }
.outline-button, .workspace-panel > .overview-head > .outline-button, .overview-actions .outline-button { display: inline-flex; justify-content: center; align-items: center; gap: 12px; border: 1px solid #cfd9e7; background: #fff; padding: 10px 15px; border-radius: 6px; font-size: 12px; font-weight: 550; white-space: nowrap; min-height: 39px; }
.outline-button:hover { color: var(--ink); background: #f7f9fc; border-color: #aebfd7; }
.text-button, .overview-actions .import-button { font-size: 12px; font-weight: 500; color: #51657f; text-underline-offset: 4px; }
.text-button:hover { color: var(--red); }
.planning-context { background: #eaf0f9; border: 1px solid #dfe7f2; border-radius: 7px; padding: 11px 15px; margin: 0 0 22px; gap: 22px; font-size: 11px; color: #62758f; }
.context-label { display: block; letter-spacing: 0; font-size: 11px; font-weight: 600; color: #536b8c; }
.planning-context #ticker-values { gap: 10px 22px; padding: 0; font-size: 11px; color: #526780; }
.planning-context .ticker-item { gap: 7px; }
.ticker-item strong { font-weight: 650; }
.ticker-item b { font-weight: 450; }
.ticker-item i { font-size: 10px; color: var(--muted); }
.planning-context .text-button { font-size: 11px; color: #345f9e; }
.atlas-grid { gap: 20px; grid-template-columns: minmax(0,1fr) 340px; border: 0; align-items: start; }
.map-panel, .inspector, .results-section, .assumptions-section { border: 1px solid var(--line); background: #fff; border-radius: 9px; box-shadow: 0 2px 5px #18315104; overflow: hidden; }
.map-panel { align-self: stretch; }
.panel-heading { min-height: 66px; height: auto; padding: 16px 20px; border-bottom: 1px solid var(--line); }
.panel-heading h2 { font-size: 14px; font-weight: 600; }
.panel-heading h2 > span { display: none; }
.period-control { gap: 5px; }
.period-control label { font-size: 10px; letter-spacing: 0; margin-right: 7px; }
.period-control button { height: 30px; width: 28px; border-radius: 5px; background: #fff; }
.period-control select { height: 30px; border-radius: 5px; background: #f8fafc; font-size: 11px; padding: 0 8px; }
.planning-workspace .map-stage { background: #edf3f8; flex: 1 0 560px; min-height: 560px; }
.land { fill: #dbe5ee; stroke: #b7c9d9; stroke-width: .7; }
.graticule { stroke: #d3e0ec; stroke-dasharray: 2 5; }
.country-label { fill: #879eb5; font: 500 10px var(--display); letter-spacing: 1.4px; }
.sea-label { fill: #99acbf; font: 11px var(--display); letter-spacing: .4px; }
.background-route { stroke: #9ab0c8; opacity: .4; }
.route-line { stroke: var(--red); stroke-width: 2; }
.route-flow { stroke: #fff; }
#route-arrow path { stroke: var(--red); }
.airport-ring { fill: #fff; stroke: #7c96b5; }
.airport-core, #network-nodes rect { fill: #274d81; }
#network-nodes circle[r="5"] { fill: #fff; stroke: var(--red); }
.airport-code { font: 650 11px var(--display); fill: #2a466a; stroke: #edf3f8; stroke-width: 4px; }
.airport-price, .network-quantity { font: 10px var(--display); fill: #6b829c; stroke: #edf3f8; stroke-width: 3px; }
.map-corner { top: 18px; left: 20px; }
.map-index { display: none; }
.map-corner > span:last-child { font-size: 10px; color: #627c9a; letter-spacing: 0; line-height: 1.7; }
.map-key { background: #ffffffed; border: 1px solid #d7e2ef; border-radius: 6px; padding: 11px 13px; font-size: 10px; color: #62758d; gap: 7px; bottom: 26px; left: 18px; }
.key-route { background: var(--red); }
.map-attribution { color: #748da8; font-size: 9px; }
.north-marker { color: #7188a1; }
.north-marker svg { fill: #7188a1; }
.map-footer { min-height: 44px; height: auto; padding: 12px 16px; background: #fff; font-size: 10px; color: #62768f; }
.status-square { background: #7591b5; }
.inspector { padding: 22px; color: var(--ink); display: block; }
.inspector::after { display: none; }
.inspector-heading .eyebrow { font-size: 10px; color: #7a8da5; letter-spacing: .6px; font-weight: 550; }
.inspector h2, .observed-inspector h2 { font: 650 21px/1.3 var(--display); letter-spacing: -.25px; margin: 11px 0 8px; }
.inspector-intro, .observed-inspector .inspector-intro { max-width: none; color: #708198; font-size: 12px; line-height: 1.7; margin: 0 0 22px; }
.inspector #model-form { display: block; margin: 0; }
.field-label, .planner-pair .field-label { font-size: 11px; line-height: 1.5; font-weight: 550; letter-spacing: 0; color: #53677f; margin-bottom: 7px; }
.inspector select { height: 41px; padding: 0 11px; background: #fff; color: #294260; border: 1px solid #d8e1ed; border-radius: 6px; font-size: 12px; color-scheme: light; }
.input-pair { gap: 14px; margin-top: 20px; }
.number-field { border: 1px solid #d8e1ed; border-radius: 6px; padding: 2px 9px; background: #fff; min-height: 43px; }
.number-field input, .planner-pair .number-field input { color: #2c4564; font: 500 17px var(--display); padding: 7px 0; }
.number-field > span, .planner-pair .number-field > span { font-size: 10px; color: #8998ab; }
.benchmark-note { margin-top: 8px; font-size: 10px; line-height: 1.6; color: #8694a7; }
.demand-control { margin-top: 20px; }
.demand-control .field-label { display: flex; justify-content: space-between; }
.demand-control output { color: #3a5e92; font-size: 12px; }
.demand-control input { margin: 7px 0; }
.range-labels { font-size: 10px; color: #8a99ac; }
.optimize-button { min-height: 43px; border-radius: 6px; padding: 11px 14px; background: var(--red); color: #fff; font-size: 12px; font-weight: 600; margin-top: 20px; }
.optimize-button:hover { background: #214fb7; }
.optimize-button:disabled { opacity: .6; }
.result-block { background: #f2f6fc; border: 1px solid #e3ebf7; border-radius: 7px; padding: 15px; margin-top: 23px; }
.result-top { font-size: 10px; font-weight: 550; letter-spacing: 0; color: #6b809c; }
.result-top > span:last-child { display: none; }
.savings-value { font: 650 29px/1.4 var(--display); letter-spacing: -.55px; color: #1c3b66; margin-top: 4px; }
.result-block p { color: #397163; font-size: 11px; margin: 2px 0 16px; }
.result-block p.warning { color: #b07518; }
.result-details { gap: 9px; color: #71839b; font-size: 10px; }
.result-details b { color: #3a5476; font-weight: 550; }
.model-footnote { font-size: 10px; line-height: 1.65; color: #8996a8; margin: 17px 0 12px; }
.method-button { color: #526f97; font-size: 11px; border-color: var(--line); }
.results-section, .assumptions-section { padding: 0 22px 22px; margin-top: 24px; }
.market-heading, .results-section .market-heading { display: flex; padding: 22px 0; gap: 18px; }
.market-heading .eyebrow { font-size: 10px; color: #8493a6; letter-spacing: .3px; margin-bottom: 5px; }
.market-heading h2, .assumptions-section .market-heading h2, .data-section .market-heading h2 { font: 600 19px/1.4 var(--display); letter-spacing: -.15px; }
.market-heading h2 > span { display: none; }
.results-section .market-heading .text-button { font-size: 11px; margin: 0; }
.result-tabs { border-color: var(--line); margin: 0 0 20px; gap: 20px; }
.result-tabs button, .observed-monitor .result-tabs button, .result-tabs button:first-child, .observed-monitor .result-tabs button:first-child { padding: 12px 3px; font-size: 12px; font-weight: 500; color: #6f8198; }
.result-tabs button[aria-selected=true] { color: #2b60d5; border-bottom-color: #2b60d5; }
.subsection-title { font-size: 13px; font-weight: 550; color: #4b6280; letter-spacing: 0; }
th, .allocation-grid th, .planner-details th, .result-detail-grid th, #inventory-rows th, .observed-records th { background: #f5f7fb; color: #7a8ba2; font: 500 10px var(--display); letter-spacing: .2px; padding: 12px 13px; border-color: var(--line); }
td, .allocation-grid td, .planner-details td, .result-detail-grid td, #inventory-rows td, #scenario-rows td, .observed-records td { font-size: 12px; padding: 13px; color: #47607f; border-color: #e8edf4; }
.allocation-grid { grid-template-columns: minmax(0,1fr) 250px; border-color: var(--line); }
.cost-panel { border-color: var(--line); }
.cost-panel h3, .inventory-header h3 { font-size: 13px; letter-spacing: 0; color: #4b6280; }
.cost-row { font-size: 11px; color: #71839b; }
.cost-row strong { color: #3d587b; font-weight: 550; }
.cost-row > b { background: #edf2f9; border-radius: 3px; }
.cost-row i { background: #7096df; border-radius: 3px; }
#constraint-summary, .table-note, .assumptions-note, .source-scope, .assumption-actions, .inventory-header p { color: #8492a5; font-size: 11px; line-height: 1.7; }
.result-detail-grid details, .planner-details { border-color: var(--line); border-radius: 6px; overflow: hidden; }
.result-detail-grid summary, .planner-details summary { padding: 15px; font-size: 12px; color: #4b6280; background: #fafbfd; }
.result-detail-grid summary span, .planner-details summary > span { font-size: 10px; color: #8a9ab0; }
.constraint-line { font-size: 11px; color: #71839b; border-color: #e8edf4; }
.constraint-line strong { color: #3e587a; font-size: 11px; }
.binding-details summary { font-size: 11px; color: #6a82a1; }
.planner-details input { border-radius: 5px; background: #fff; border-color: #d7e1ed; font-size: 12px; padding: 9px 10px; }
.financial-grid { padding: 14px 18px 20px; gap: 22px; }
.financial-grid label { font-size: 11px; letter-spacing: 0; color: #60758f; }
.financial-grid small, .planner-details td small { font-size: 10px; color: #8a98aa; line-height: 1.65; }
.inventory-chart-wrap { background: #f8fafd; border-radius: 6px; border-color: var(--line); }
.chart-axis { fill: #8799af; font-size: 10px; }
.chart-grid { stroke: #e0e7f0; }
.chart-capacity { stroke: #a5b7cd; }
.chart-legend { color: #8293a9; font-size: 10px; }
.site-footer { font-size: 10px; color: #8a98aa; border-color: var(--line); margin-top: 24px; }
.site-footer button { font-size: 11px; color: #6b84a6; }
.observed-summary, .public-market-panel, .feed-card { background: #fff; border: 1px solid var(--line); border-radius: 8px; overflow: hidden; }
.observed-summary { border-bottom: 1px solid var(--line); }
.observed-summary article { padding: 22px; }
.observed-summary p { color: #8190a3; font-size: 10px; line-height: 1.6; letter-spacing: .2px; }
.observed-summary strong { font-family: var(--display); font-size: 30px; font-weight: 620; letter-spacing: -.4px; }
.observed-summary span, .observed-summary small { font-size: 10px; color: #7e8fa5; }
.public-market-heading h2 { font: 600 23px/1.35 var(--display); letter-spacing: -.2px; }
.public-market-heading > div > p:last-child { font-size: 12px; color: #8191a6; }
.public-market-tabs { border-radius: 6px; overflow: hidden; border-color: var(--line); }
.public-market-tabs button { font-size: 17px; letter-spacing: 0; }
.public-market-tabs button[aria-selected=true] { background: #edf3ff; color: #2859c4; }
.public-market-disclosure, .public-market-instrument, .public-market-attribution, .public-market-status, .public-market-fallback, .airport-api-status { border-color: var(--line); background: #fff; font-size: 11px; color: #788ba4; }
.public-market-status dd, .public-market-status dt, .public-market-message, .public-market-fallback > a, .public-market-attribution > a { font-size: 11px; letter-spacing: 0; }
.public-market-instrument strong { font-size: 13px; }
.public-market-disclosure { font-size: 12px; }
#workspace-oil-markets .observed-disclosure { background: #edf2f9; color: #7890ad; border-color: #dbe5f2; font-size: 11px; padding: 14px; border-radius: 6px; }
.action-status, .observed-monitor #refresh-status, .last-check { color: #8496af; font-size: 11px; line-height: 1.7; }
#workspace-oil-markets .ticker { background: #fff; border-color: var(--line); border-radius: 6px; font-size: 11px; }
.ticker-title { background: #edf2f9; }
.sources-intro { font-size: 14px; color: #75869d; }
#workspace-sources .feed-card h3 { font: 600 15px/1.5 var(--display); letter-spacing: 0; }
#workspace-sources .feed-meta { color: #8494a9; font-size: 11px; }
#workspace-sources .feed-note { color: #71849e; font-size: 12px; }
#workspace-sources .feed-role, #workspace-sources .feed-health { font-size: 9px; letter-spacing: 0; }
.feed-role { background: #edf2f9; color: #7188a5; border-radius: 4px; }
.feed-health { color: #578174; }
.feed-health.warning { color: #ad8250; }
.source-detail { border-color: var(--line); }
.source-detail > summary { font-size: 14px; color: #455f81; }
.source-detail > summary > span:last-child { font-size: 12px; }
.source-detail .observed-records { background: #fff; padding: 0 20px 20px; border: 1px solid var(--line); border-radius: 7px; }
.observed-monitor .map-stage { background: #edf3f8; }
.airport-facts > div { border-color: var(--line); }
.airport-facts dt { color: #8899b0; font-size: 10px; letter-spacing: 0; }
.airport-facts dd, .airport-facts dd.missing-observation { color: #536d90; font-size: 12px; }
.airport-table-button { color: #2b60d5; font-size: 12px; }
dialog { background: #fff; color: var(--ink); border: 1px solid var(--line); border-radius: 10px; }
dialog h2 { font-family: var(--display); letter-spacing: -.25px; }
dialog p, dialog .notice, .dialog-bottom { font-size: 13px; line-height: 1.8; color: #6b7d96; }
@media (min-width:1600px) { .topbar { padding-left:max(36px,calc((100vw - 1608px)/2)); padding-right:max(36px,calc((100vw - 1608px)/2)); } }
@media (max-width:1200px) { .atlas-grid { grid-template-columns:minmax(0,1fr) 310px; gap:16px; } .overview-actions { gap:9px; } .workspace-panel > .overview-head { align-items:flex-start; gap:24px; } .workspace-intro { max-width:620px; } .planning-context .context-label { display:none; } .allocation-grid { grid-template-columns:minmax(0,1fr) 220px; } }
@media (max-width:960px) { main { padding:0 24px; } .topbar { padding:0 24px; } .topbar .project-caption { display:none; } .workspace-tabs { padding:0 24px; gap:24px; } .workspace-tabs > button { font-size:12px; } .workspace-panel > .overview-head { flex-wrap:wrap; } .overview-actions { margin-left:0; } .workspace-panel > .overview-head h1 { font-size:28px; } .atlas-grid { grid-template-columns:minmax(0,1fr) 288px; } .inspector { padding:20px; } .planning-context #ticker-values { font-size:10px; } .allocation-grid { grid-template-columns:1fr; } .market-heading, .results-section .market-heading { flex-wrap:wrap; } }
@media (max-width:760px) { .topbar { height:76px; padding:0 20px; } .topbar .demo-badge { display:block; font-size:10px; } .wordmark { font-size:20px; } .brand-copy small { font-size:10px; } .workspace-tabs { padding:0 20px; gap:18px; } .workspace-tabs > button { font-size:11px; line-height:1.5; min-height:67px; max-width:190px; } main { padding:0 20px; } .workspace-panel > .overview-head { padding:26px 0 20px; gap:18px; } .workspace-panel > .overview-head h1 { font-size:27px; } .workspace-intro { font-size:13px; line-height:1.75; } .overview-actions { width:100%; justify-content:flex-start; } .atlas-grid { display:flex; flex-direction:column; gap:18px; } .atlas-grid > * { width:100%; } .planning-workspace .atlas-grid > .inspector { order:-1; border:1px solid var(--line); } .inspector { padding:22px; } .planning-workspace .map-stage { flex:none; min-height:0; height:470px; } .result-block { padding:16px; } .planning-context { padding:11px 13px; } .planning-context #ticker-values { gap:6px 16px; } .results-section, .assumptions-section { padding:0 16px 18px; } .market-heading h2 { font-size:18px; } .result-tabs { gap:18px; } .result-tabs button { font-size:11px; } .financial-grid { padding:12px; } .public-market-heading h2 { font-size:22px; } .observed-summary article { padding:18px; } .observed-summary strong { font-size:28px; } .observed-summary p { font-size:9px; } .observed-summary span, .observed-summary small { font-size:10px; } .source-detail > summary > span:last-child { display:none; } }
@media (max-width:500px) { .topbar { padding:0 16px; gap:12px; } .brand-icon { width:31px; height:31px; } .topbar .stream-control { display:none; } .workspace-tabs { padding:0 16px; gap:15px; } .workspace-tabs > button { font-size:10px; padding:13px 0; min-height:70px; } .workspace-tabs > button:first-child { flex:1.05; } .workspace-tabs > button:nth-child(2) { flex:1.4; } .workspace-tabs > button:last-child { flex:.5; } main { padding:0 16px; } .workspace-panel > .overview-head h1 { font-size:25px; letter-spacing:-.25px; } .workspace-panel > .overview-head .eyebrow { font-size:11px; } .workspace-intro { font-size:13px; } .inspector h2 { font-size:21px; } .inspector { padding:19px; } .planning-context .text-button { display:none; } .planning-workspace .map-stage { height:390px; } .map-key { max-width:230px; font-size:9px; } .panel-heading { padding:14px; gap:8px; } .panel-heading h2 { font-size:13px; } .period-control label { display:none; } .map-footer { font-size:10px; } .observed-summary article { padding:15px; } .observed-summary strong { font-size:25px; } .observed-summary p { font-size:9px; } .financial-grid { grid-template-columns:1fr; } .site-footer { font-size:9px; } }
@media (prefers-reduced-motion:reduce) { button, a, input, select { transition:none; } }

/* Fifty-airport directory, independent of the scenario's editable fuel network. */
.panel-heading h2 > .airport-coverage-count{display:inline-block;margin-left:9px;padding:3px 7px;border-radius:4px;background:#eef3fb;color:#6d84a3;font:500 10px var(--display)}
.airport-toolbar{display:flex;align-items:center;gap:12px;padding:12px 18px;border-bottom:1px solid var(--line);font-size:11px;color:#6c819c;background:#fff}
.airport-toolbar label{font-weight:550;white-space:nowrap}
.airport-toolbar select{font-size:11px;border:1px solid #dbe4ef;border-radius:5px;background:#fff;color:#486383;padding:7px 10px;max-width:250px;min-width:0}
#airport-cutoff{font-size:10px;color:#8b9ab0;margin-left:auto}
.planning-airport-detail{display:flex;flex-direction:column;gap:5px;padding:12px 18px;background:#f3f7fe;border-bottom:1px solid #e0e9f8}
.planning-airport-detail strong{font-size:12px;color:#32578b;font-weight:600}
.planning-airport-detail span{font-size:11px;color:#8195b0}
.directory-airport{cursor:pointer}
.directory-airport-hit{fill:transparent;stroke:transparent;stroke-width:3}
.directory-airport-dot{fill:#527fae;stroke:#fff;stroke-width:1.5}
.directory-airport-halo{fill:none;stroke:#2b60d5;stroke-width:1.5;opacity:.5;pointer-events:none}
.directory-airport-label{fill:#547395;font:600 11px var(--display);paint-order:stroke;stroke:#edf3f8;stroke-width:3px;stroke-linejoin:round;pointer-events:none}
.directory-airport.selected .directory-airport-dot,.directory-airport:hover .directory-airport-dot,.directory-airport:focus-visible .directory-airport-dot{fill:#2158d2;stroke-width:2}
.directory-airport.selected .directory-airport-label{fill:#164bc0;font-weight:750}
.has-airport-directory #network-nodes .airport-code,.has-airport-directory #network-nodes .network-quantity{display:none}
.has-airport-directory #network-nodes .airport-ring{stroke-opacity:.25}
.has-airport-directory .map-key{left:auto;right:18px}
.directory-key{width:7px;height:7px;border-radius:50%;background:#527fae;display:block;margin:0 5px}
.map-zoom{position:absolute;top:18px;right:18px;z-index:2;display:flex;box-shadow:0 1px 6px #1a416715;border:1px solid #d9e3f0;border-radius:5px;overflow:hidden}
.map-zoom button{background:#fff;border:0;border-right:1px solid #d9e3f0;min-width:29px;height:30px;color:#557499;font-size:17px}
.map-zoom button:last-child{border:0;font-size:10px;min-width:43px}
.map-zoom button:hover{background:#f1f5fc}
.map-zoom button:disabled{color:#bdc9d9}
.has-airport-directory .north-marker{display:none}
.directory-method,.directory-note{font-size:12px;line-height:1.8;color:#768aa5;max-width:900px}
.directory-note{font-size:11px;color:#91a0b4}
.directory-table{max-height:460px;border:1px solid var(--line);border-radius:6px;margin-top:16px}
.directory-table th{position:sticky;top:0}
.directory-sources{display:flex;flex-wrap:wrap;gap:12px 20px;padding:20px 0;font-size:11px;color:#6985ac}
@media(max-width:1200px){#airport-cutoff{display:none}.airport-toolbar{gap:10px}.airport-toolbar select{max-width:220px}}
@media(max-width:760px){.airport-toolbar{padding:12px 14px}.airport-toolbar select{flex:1;max-width:none}.panel-heading h2>.airport-coverage-count{font-size:9px;margin-left:5px}.map-zoom{top:13px;right:13px}.has-airport-directory .map-key{right:13px;bottom:22px;padding:9px 11px}.planning-airport-detail{padding:12px 14px}.planning-airport-detail strong{font-size:11px}.directory-method{font-size:12px}}
@media(max-width:500px){.airport-toolbar label{font-size:10px}.panel-heading h2>.airport-coverage-count{display:block;margin:4px 0 0;width:fit-content}.planning-airport-detail span{font-size:10px}.has-airport-directory .map-corner{top:15px;left:14px}.has-airport-directory .map-corner>span:last-child{font-size:9px}}
.observation-chart circle,#inventory-chart circle{fill:#2b60d5}
/* Keep headings and totals comfortably spaced as well as the body text. */
.wordmark,.workspace-panel>.overview-head h1,.inspector h2,.observed-inspector h2,.market-heading h2,.public-market-heading h2,.savings-value{letter-spacing:0}

#workspace-calculations .overview-head h1{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px}
.title-zh{font-size:.78em;font-weight:500;color:#61758f;white-space:nowrap;letter-spacing:.02em}

.topbar .wordmark .brand-titles{display:flex;align-items:baseline;gap:10px;margin:0;font:inherit;letter-spacing:0}
.topbar .wordmark .brand-title-zh{display:inline;font:inherit;letter-spacing:0;color:inherit;margin:0}
@media(max-width:500px){.topbar .wordmark .brand-titles{gap:8px}}
