/* Intelligence report layer. Load after product.css and the feature stylesheets. */
:root {
  --intel-ink: #182b3a;
  --intel-muted: #536675;
  --intel-line: #d7e0df;
  --intel-paper: #fbfcfa;
  --intel-panel: #f2f6f3;
  --intel-navy: #142b3b;
  --intel-teal: #087f78;
  --intel-teal-soft: #e5f2ef;
  --intel-amber: #91611f;
  --intel-amber-soft: #fbf1df;
  --intel-red: #a3443b;
  --intel-red-soft: #f8e9e6;
  --intel-header: 68px;
  --header: var(--intel-header);
  color: var(--intel-ink);
  background: var(--intel-paper);
  font-size: 16px;
  line-height: 1.55;
  letter-spacing:normal;
}

.benchmark-panel{background:#fff;border:1px solid var(--intel-line);border-radius:12px;overflow:hidden;margin:20px 0}
.intel-hero-next{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;font-size:12px;color:var(--intel-muted);flex-wrap:wrap}
.intel-hero-next strong{display:block;font-size:15px;color:var(--intel-ink);margin-top:3px}
.intel-actions{scroll-margin-top:84px}
.benchmark-panel>.intel-section-title{padding:20px 22px 6px;margin:0}
.benchmark-group{padding:16px 22px;border-top:1px solid #e5ebe8}
.benchmark-panel>.benchmark-group:first-of-type{border-top:0}
.benchmark-subhead{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:14px;flex-wrap:wrap}
.benchmark-subhead h3{font-size:16px;margin:0;font-weight:700;color:var(--intel-ink)}
.benchmark-subhead>span{font-size:12px;color:var(--intel-muted)}
.benchmark-table-wrap{overflow-x:auto}
.benchmark-table{min-width:480px;width:100%;border-collapse:collapse;table-layout:fixed;font-size:14px;font-variant-numeric:tabular-nums}
.benchmark-table th,.benchmark-table td{padding:13px 5px;text-align:right;border-bottom:1px solid #eaf0ed;white-space:nowrap}
.benchmark-table thead th{font-size:12px;font-weight:500;color:#61747a;padding-top:0}
.benchmark-table th:first-child{width:31%;text-align:left;white-space:normal;font-weight:550;padding-left:0}
.benchmark-table .benchmark-current{font-weight:750;color:#183c40;background:#f0f7f3}
.benchmark-table small{font-size:11px;margin-left:2px;font-weight:400}
.benchmark-table tr:last-child td,.benchmark-table tr:last-child th{border-bottom:0}
.benchmark-delta{font-weight:650;color:#5c707a;font-size:13px}
.benchmark-delta[data-direction=above]{color:#98600d}
.benchmark-delta[data-direction=below]{color:#176e73}
.benchmark-pending{border-radius:6px;padding:12px 14px;background:#f3f6f4;color:#51676e;font-size:14px}
.benchmark-pending p{margin:0;line-height:1.6}
.benchmark-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px;flex-wrap:wrap}
.benchmark-foot>span{font-size:12px;color:#60747b}
.benchmark-samples{font-size:13px;color:#5a7077;margin-top:7px}
.benchmark-samples summary{cursor:pointer;min-height:34px;line-height:34px}
.benchmark-samples ul{padding:0;list-style:none}
.benchmark-samples li{display:grid;grid-template-columns:1fr auto;padding:9px 0;border-bottom:1px solid #edf1ee;gap:4px}
.benchmark-samples li small{grid-column:1/-1}
.benchmark-price{display:flex;gap:22px;flex-wrap:wrap;font-size:14px}
.benchmark-price strong{display:block;font-size:23px}
.competition-signals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:2px 0 10px}
.competition-signal{padding:13px 15px;border:1px solid #dce5e1;border-radius:9px;background:#f7faf8}
.competition-signal>div{display:flex;align-items:center;justify-content:space-between;gap:10px}
.competition-signal>div span{color:#536a70;font-size:13px;font-weight:650}
.competition-signal>div strong{padding:3px 9px;border-radius:999px;color:#40555b;background:#e8efec;font-size:13px;white-space:nowrap}
.competition-signal[data-tone=high]>div strong{color:#8b4a16;background:#fff0d9}
.competition-signal[data-tone=low]>div strong{color:#166c61;background:#e3f2ed}
.competition-signal>p{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin:8px 0 0;color:#64777b;font-size:12px}
.competition-signal>p b{color:#19363d;font-size:22px;font-variant-numeric:tabular-nums}
.competition-method{margin:0 0 12px;color:#61747a;font-size:12px;line-height:1.5}
.chart-card>.benchmark-group{padding:20px 0;margin-top:20px}
@container report (max-width:480px){.benchmark-panel>.intel-section-title{padding:16px 14px 5px}.benchmark-group{padding:14px}.benchmark-table{font-size:14px}.benchmark-table th:first-child{width:29%}.benchmark-delta{font-size:13px}.benchmark-table small{display:inline}.benchmark-subhead>span{font-size:11px}}
@container report (max-width:520px){.competition-signals{grid-template-columns:1fr}.competition-signal{padding:12px}}

body { min-width: 320px; background: var(--intel-paper); color: var(--intel-ink); }
button, input, select, textarea { font-size: 16px; }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible,
textarea:focus-visible, summary:focus-visible { outline: 3px solid #087f78; outline-offset: 3px; }
small, .meta { color: var(--intel-muted); font-size: 13px; }

/* Shared shell */
.app-header {
  height: var(--intel-header);
  padding-inline: clamp(16px, 2.5vw, 32px);
  gap: 24px;
  background: var(--intel-navy);
  color: #f4f7f5;
  border-bottom: 1px solid #294252;
}
.brand { color: #f4f7f5; }
.brand > span { width: 34px; height: 34px; border-radius: 8px; background: #087f78; color: #fff; }
.brand strong { font-size: 20px; letter-spacing:normal; }
.brand-caption { color: #c0ced2; }
.header-tools { gap: 12px; }
.panel-presets { padding: 3px; gap: 2px; background: #203949; border: 1px solid #36505d; border-radius: 8px; }
.panel-presets button { min-height: 36px; padding: 6px 11px; color: #d1dcde; font-size: 13px; }
.panel-presets button[aria-pressed="true"] { background: #f5f7f3; color: var(--intel-navy); box-shadow: none; }
.quiet { min-height: 44px; padding: 9px 13px; color: var(--intel-navy); border-color: #d3dddc; border-radius: 7px; }
.source-trigger { min-height: 44px; color: #f1f5f3; font-size: 14px; }
.source-trigger i, .live-pill i { background: #39b6a7; }
.workspace { grid-template-columns: minmax(400px, 36%) 12px minmax(320px, 1fr); }
.workspace.is-report { grid-template-columns: minmax(400px, 56%) 12px minmax(320px, 1fr); }
.workspace.panel-resizable { grid-template-columns: var(--panel-size) 12px minmax(320px, 1fr); }
.content-pane { background: var(--intel-paper); scrollbar-color: #b6c6c3 transparent; }
.panel-divider { background: #e3eae7; border-color: #d4dfdb; }
.panel-divider > span { width: 26px; height: 46px; color: var(--intel-teal); border-color: #ccd9d5; box-shadow: 0 2px 7px #102f3512; }
.panel-divider small { background: var(--intel-navy); }
.map-pane { background: #e7eeeb; }
.map-label, #mapStatus, .map-legend { color: var(--intel-ink); border-color: #d5dfdc; box-shadow: 0 3px 12px #19393a12; }
.map-label { border-radius: 7px; }
.map-controls button { width: 44px; height: 44px; color: var(--intel-navy); border-color: #d2ddda; box-shadow: 0 2px 7px #19393a12; }
.map-legend i, .map-legend i.public { background: var(--intel-teal); }
.map-legend i.nearby { background: #657e90; }

/* Input and project areas */
.start-content { padding: 30px clamp(20px, 3vw, 34px) 0; }
.eyebrow { color: #4f6874; font-size: 12px; font-weight: 700; letter-spacing: .075em; }
.start-content > h1 { margin: 8px 0 9px; font-size: clamp(28px, 2.4vw, 35px); line-height: 1.3; color: var(--intel-navy); }
.intro { color: #526977; font-size: 16px; line-height: 1.65; }
.intake-block { margin-top: 27px; }
.section-title { margin-bottom: 11px; }
.section-title h2 { font-size: 17px; color: var(--intel-ink); }
.section-title > span { color: #657b82; }
.text-button { min-height: 40px; color: #08776f; font-size: 14px; font-weight: 650; }
.text-button:hover { color: #075e59; }
input, select, textarea { border-color: #bdccca; border-radius: 7px; }
.address-search { border-color: #acbfbb; border-radius: 8px; }
.address-search:focus-within { outline-color: var(--intel-teal); }
.address-search input { min-height: 50px; }
.address-search button { width: 50px; min-height: 48px; color: var(--intel-teal); }
.map-pick { min-height: 44px; color: #365d60; background: #f3f7f5; border-color: #d3dfdb; }
.sample-places { font-size: 14px; }
.sample-places > span { color: #566c72; }
.sample-places button { min-height: 36px; color: #08776f; font-size: 14px; }
.chosen-place { background: #edf5f2; border-color: #b7d4cc; border-radius: 8px; }
.chosen-place > svg, .chosen-place .check { color: var(--intel-teal); }
.purpose-cards, .sport-groups { gap: 10px; }
.choice { min-height: 48px; padding: 12px 13px; border-color: #cbd8d5; border-radius: 7px; color: var(--intel-ink); }
.choice:hover, .group-card:hover { background: #f4f8f6; border-color: #80aaa1; }
.choice.selected { color: #075e59; background: var(--intel-teal-soft); border-color: var(--intel-teal); box-shadow: inset 0 0 0 1px var(--intel-teal); }
.choice strong, .group-card strong { font-size: 15px; }
.choice small, .group-card small { font-size: 13px; }
.group-card { min-height: 72px; border-color: #cbd8d5; border-radius: 8px; }
.group-icon { color: #08776f; background: #e9f3f0; }
.group-heading { color: #4f6874; }
.sport-options, .hour-options { gap: 9px; }
.time-fields { gap: 14px; }
.time-fields input, .field-label input { min-height: 44px; }
.start-action { margin-inline: calc(-1 * clamp(20px, 3vw, 34px)); padding-inline: clamp(20px, 3vw, 34px); border-color: #d7e1de; background: #fbfcfaf2; }
.primary, .secondary { min-height: 44px; border-radius: 7px; font-size: 15px; font-weight: 650; }
.primary { color: #fff; background: var(--intel-teal); border-color: var(--intel-teal); }
.primary:hover:not(:disabled) { background: #066b66; }
.secondary { color: #244e50; background: #f1f6f3; border-color: #bfd0cb; }

.project-context { padding: 22px clamp(20px, 2.5vw, 30px) 13px; }
.project-context .eyebrow { color: #526b75; }
.project-context h1 { margin-top: 4px; color: var(--intel-navy); font-size: 24px; line-height: 1.35; }
.project-context h1 span { color: #667d83; }
.context-toolbar { padding: 0 clamp(20px, 2.5vw, 30px) 15px; color: #536a71; }
.context-toolbar label { font-size: 14px; }
.context-toolbar select { min-height: 40px; padding: 6px 10px; }
.work-nav { gap: 25px; padding-inline: clamp(20px, 2.5vw, 30px); border-color: #d9e2df; }
.work-nav button { min-height: 50px; color: #536a71; font-size: 15px; }
.work-nav button.active { color: var(--intel-teal); border-color: var(--intel-teal); }
.report-tabs { gap: 5px; padding: 10px clamp(20px, 2.5vw, 30px); border-color: #d9e2df; }
.report-tabs button { min-height: 40px; padding-inline: 13px; border-radius: 6px; color: #50666d; }
.report-tabs button[aria-selected="true"] { color: #075f59; background: #e7f1ee; }
.report-body, .operations-host { padding: 22px clamp(20px, 2.5vw, 30px) 44px; }
.decision-brief { padding: 22px; background: #edf4f1; border-color: #d0dfda; border-radius: 9px; }
.decision-brief h2 { color: var(--intel-navy); font-size: 23px; line-height: 1.42; }
.decision-brief p { color: #506871; font-size: 15px; }
.live-pill { color: #075e59; background: #e4f2ee; border-color: #bddbd2; font-size: 12px; }
.live-pill.amber { color: #76511c; background: var(--intel-amber-soft); border-color: #e8d5b1; }
.metric-grid { gap: 0; margin: 17px 0; border-block: 1px solid var(--intel-line); }
.metric-grid > button { padding: 14px 13px; border: 0; border-right: 1px solid var(--intel-line); border-radius: 0; }
.metric-grid > button:last-child { border-right: 0; }
.metric-grid > button:hover { background: #f1f6f3; }
.metric-grid strong { color: var(--intel-navy); font-size: 29px; font-variant-numeric: tabular-nums; }
.metric-grid > button > span { color: #5d737a; }
.area-select { background: #f5f8f6; border-color: #d4dfdb; }
.area-select > svg { color: var(--intel-teal); }
.area-select > span:last-child { color: #08776f; }
.section-heading h2 { color: var(--intel-navy); font-size: 18px; }
.facility-row { border-color: #dce4e1; }
.facility-row:hover, .facility-row.selected { background: #f0f6f3; }
.facility-icon { background: #eaf1ef; color: #536d76; }
.facility-icon.public { background: #e4f2ee; color: var(--intel-teal); }
.ai-section { background: #f4f7f5; border-color: #d5e0dc; border-radius: 9px; }
.ai-section p { color: #526a72; }
.setup-note, .source-detail { color: #536a71; }
.table-scroll { scrollbar-color: #b6c6c3 transparent; }
table { font-size: 14px; }
thead { background: #eff4f1; }
th, td { border-color: #dce4e1; }
.program-row { border-color: #dce4e1; }
.program-row p { color: #526b73; }
.tag { color: #176e67; background: #e6f2ef; }
.tag.muted { color: #687478; background: #edf0ee; }
.program-price strong { color: var(--intel-navy); }
.next-step { border-color: #d2ded9; border-radius: 8px; background: #f5f8f6; }
.facility-detail { border-color: #cddbd6; border-radius: 10px; }

/* New evidence-led decision component contract */
.report-body { container-type: inline-size; container-name: report; }
.intel-overview { display: grid; gap: 22px; color: var(--intel-ink); }
.intel-kicker { display: flex; align-items: center; gap: 8px; color: #536b72; font-size: 12px; font-weight: 750; letter-spacing: .075em; text-transform: uppercase; }
.intel-hero { display: grid; gap: 10px; padding: 22px 23px; border: 1px solid #d0ddda; border-left: 4px solid var(--intel-teal); border-radius: 8px; background: #f0f6f3; }
.intel-hero[data-tone="high"] { border-left-color: #087f78; background: #edf6f2; }
.intel-hero[data-tone="moderate"] { border-left-color: #a67934; background: #f8f4ea; }
.intel-hero[data-tone="low"] { border-left-color: #a34d42; background: #f8efed; }
.intel-hero[data-tone="unknown"] { border-left-color: #687b82; background: #f0f3f2; }
.intel-verdict { display: inline-flex; width: fit-content; min-height: 27px; align-items: center; padding: 3px 9px; border: 1px solid #bddbd2; border-radius: 999px; color: #075e59; background: #e3f2ed; font-size: 12px; font-weight: 750; line-height: 1.4; }
.intel-hero[data-tone="moderate"] .intel-verdict { color: #76511c; background: #fbf1df; border-color: #e8d5b1; }
.intel-hero[data-tone="low"] .intel-verdict { color: #873d35; background: #f8e9e6; border-color: #e8c7c1; }
.intel-hero[data-tone="unknown"] .intel-verdict { color: #4f636a; background: #e9efed; border-color: #d0ddda; }
.intel-headline { max-width: 25em; color: var(--intel-navy); font-size: clamp(22px, 2.2vw, 29px); font-weight: 740; line-height: 1.36; letter-spacing:normal; word-break: keep-all; }
.intel-summary { max-width: 66ch; color: #4f656e; font-size: 15px; line-height: 1.7; word-break: keep-all; }
.intel-evidence-strip { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-block: 1px solid #d8e2de; }
.intel-fact { display: grid; align-content: start; gap: 3px; min-width: 0; padding: 12px 12px 13px; border-right: 1px solid #d8e2de; }
.intel-fact:first-child { padding-left: 0; }
.intel-fact:last-child { border-right: 0; }
.intel-fact small { color: #536a71; font-size: 12px; line-height: 1.4; }
.intel-fact strong { color: var(--intel-navy); font-size: 21px; font-weight: 720; line-height: 1.25; font-variant-numeric: tabular-nums; }
.intel-fact span { color: #657981; font-size: 12px; line-height: 1.45; }
.intel-section-title { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 44px; border-bottom: 1px solid #d5e0dc; }
.intel-section-title h2 { color: var(--intel-navy); font-size: 17px; font-weight: 700; }
.intel-section-title button { flex: none; min-height: 40px; padding: 7px 4px; color: #08776f; font-size: 14px; font-weight: 650; }
.intel-pressure-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-bottom: 1px solid #d5e0dc; }
.intel-pressure { min-width: 0; padding: 12px 13px 15px; border-right: 1px solid #d5e0dc; }
.intel-pressure:first-child { padding-left: 0; }
.intel-pressure:last-child { border: 0; }
.intel-pressure > span { display: block; margin-bottom: 3px; color: #586e75; font-size: 12px; line-height: 1.35; }
.intel-pressure strong { display: block; color: var(--intel-navy); font-size: 18px; font-weight: 720; line-height: 1.25; font-variant-numeric: tabular-nums; }
.intel-pressure p { margin-top: 3px; color: #586e75; font-size: 12px; line-height: 1.45; }
.intel-pressure[data-tone="high"] strong { color: #08746c; }
.intel-pressure[data-tone="moderate"] strong { color: #8a5f20; }
.intel-pressure[data-tone="low"] strong { color: #9a473d; }
.intel-pressure[data-tone="unknown"] strong { color: #53676e; }
.intel-grid { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 25px; align-items: start; }
.intel-card { min-width: 0; }
.intel-card > :not(.intel-section-title) { margin-top: 13px; }
.intel-mix-row { display: grid; grid-template-columns: minmax(78px, 1.05fr) minmax(40px, 1.5fr) auto; gap: 10px; align-items: center; width: 100%; min-height: 38px; padding: 5px 0; color: var(--intel-ink); text-align: left; }
button.intel-mix-row { border-radius: 4px; }
button.intel-mix-row:hover { background: #eff5f2; }
.intel-mix-label { min-width: 0; overflow: hidden; color: #40575f; font-size: 14px; text-overflow: ellipsis; white-space: nowrap; }
.intel-mix-track { height: 8px; overflow: hidden; border-radius: 999px; background: #e5ece9; }
.intel-mix-track > i { display: block; width: var(--share, 0%); height: 100%; border-radius: inherit; background: var(--category-color, #087f78); }
.intel-mix-count { min-width: 36px; color: var(--intel-navy); font-size: 14px; font-weight: 650; text-align: right; font-variant-numeric: tabular-nums; }
.intel-distance-row { display: grid; grid-template-columns: minmax(95px, 1fr) 1.4fr auto; gap: 10px; align-items: center; min-height: 36px; padding: 6px 0; border-bottom: 1px solid #e2e9e6; }
.intel-distance-row:last-child { border: 0; }
.intel-distance-row > span:first-child { color: #40575f; font-size: 14px; }
.intel-distance-row > .intel-mix-track { width: 100%; }
.intel-distance-row strong { color: var(--intel-navy); font-size: 14px; text-align: right; font-variant-numeric: tabular-nums; }
.intel-audience { padding: 14px 15px; border-left: 3px solid var(--intel-teal); background: #f0f6f3; }
.intel-audience > :not(.intel-section-title) { margin-top: 12px; }
.intel-audience-total { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 4px 12px; padding-bottom: 10px; border-bottom: 1px solid #d4e1dc; }
.intel-audience-total > strong { color: var(--intel-navy); font-size: 22px; font-weight: 730; line-height: 1.25; font-variant-numeric: tabular-nums; }
.intel-audience-total > strong small, .intel-price-next > strong small { margin-left: 3px; color: #5c7177; font-size: 12px; font-weight: 500; }
.intel-audience-total > span { color: #5c7177; font-size: 12px; }
.intel-audience-bands { display: grid; gap: 7px; }
.intel-audience-bands > div { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 10px; align-items: baseline; }
.intel-audience-bands > div > span:first-child { color: #425a62; font-size: 13px; }
.intel-audience-bands strong { color: var(--intel-navy); font-size: 14px; font-weight: 650; font-variant-numeric: tabular-nums; }
.intel-audience-bands strong small { margin-left: 2px; color: #65787d; font-size: 11px; font-weight: 500; }
.intel-audience-bands > div > span:last-child { min-width: 43px; color: #526970; font-size: 12px; text-align: right; font-variant-numeric: tabular-nums; }
.intel-audience p { margin-top: 4px; color: #526970; font-size: 14px; line-height: 1.6; }
.intel-audience > .secondary { width: 100%; }
.intel-price-next { padding: 14px 15px; border-left: 3px solid #829991; background: #f3f6f4; }
.intel-price-next > strong { display: block; color: var(--intel-navy); font-size: 23px; font-weight: 730; line-height: 1.3; font-variant-numeric: tabular-nums; }
.intel-price-next > p { color: #526970; font-size: 14px; line-height: 1.6; }
.intel-price-next > .secondary { width: 100%; }
.intel-actions { display: grid; gap: 0; counter-reset: intel-action; border-top: 1px solid #d5e0dc; }
.intel-action { display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 12px; padding: 16px 0; border-bottom: 1px solid #d5e0dc; }
.intel-action-index { display: grid; place-items: center; width: 30px; height: 30px; border: 1px solid #c8d9d4; border-radius: 50%; color: #08776f; font-size: 13px; font-weight: 750; font-variant-numeric: tabular-nums; }
.intel-action-body { min-width: 0; }
.intel-action-body h3 { color: var(--intel-navy); font-size: 16px; line-height: 1.45; }
.intel-action-body p { margin-top: 5px; color: #50676f; font-size: 14px; line-height: 1.65; }
.intel-action-proof { display: block; margin-top: 7px; color: #546d72; font-size: 12px; line-height: 1.5; }
.intel-action-controls { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 10px; }
.intel-action-controls button { min-height: 40px; padding: 7px 11px; border: 1px solid #c6d6d1; border-radius: 6px; color: #175f5a; background: #f7faf8; font-size: 13px; font-weight: 650; }
.intel-action-controls button:hover { background: #e8f3ef; }
.intel-action-result { display:grid; gap:3px; margin-top:10px; padding:9px 12px; border-left:3px solid #4d8e7e; background:#f0f6f3; }
.intel-action-result span { color:#657974; font-size:11px; font-weight:700; }
.intel-action-result strong { color:#264d49; font-size:13px; line-height:1.55; }
.intel-method { padding-top: 10px; border-top: 1px solid #d5e0dc; color: #50666e; }
.intel-method summary { display: flex; align-items: center; min-height: 40px; color: #36575c; cursor: pointer; font-size: 14px; font-weight: 650; }
.intel-method p { padding: 4px 0 10px; color: #586e75; font-size: 13px; line-height: 1.65; }
.intel-bottom-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; padding-top: 17px; border-top: 1px solid #d5e0dc; }
.intel-source-line { color: #63777c; font-size: 12px; line-height: 1.6; }
.intel-source-line a { color: #08776f; text-decoration: underline; text-underline-offset: 2px; }

/* Legacy overview elements receive the same quieter hierarchy during rollout. */
.population-totals { gap: 0; border-block: 1px solid #d8e2de; }
.population-totals > div { padding: 10px 14px; border-color: #d8e2de; }
.population-totals > div:first-child { padding-left: 0; }
.population-totals strong { color: var(--intel-navy); font-size: 26px; }
.chart-card { border-color: #d5e0dc; border-radius: 8px; }
.age-track { background: #e9efec; }
.age-track i { background: #087f78; }
.age-track.right i { background: #7a9e91; }
.age-row.selected { background: #eaf3ef; outline-color: #eaf3ef; }
.target-select { border-color: #d8e2de; }
.sex-dot { background: #087f78; }
.sex-dot.female { background: #88a99c; }
.empty-state h2, .empty-state h3 { color: var(--intel-navy); }
.empty-state p, .empty-small, .subtle, .loading-row { color: #596e75; }

@container report (max-width: 620px) {
  .intel-grid { grid-template-columns: 1fr; gap: 20px; }
  .intel-overview { gap: 19px; }
  .intel-hero { padding: 19px; }
  .intel-headline { max-width: none; font-size: 24px; }
  .intel-bottom-grid { gap: 15px; }
}
@container report (max-width: 440px) {
  .intel-evidence-strip { grid-template-columns: 1fr; }
  .intel-fact, .intel-fact:first-child { grid-template-columns: minmax(84px, .8fr) 1fr; align-items: baseline; padding: 9px 0; border-right: 0; border-bottom: 1px solid #d8e2de; }
  .intel-fact:last-child { border-bottom: 0; }
  .intel-fact strong { grid-column: 2; grid-row: 1; justify-self: start; font-size: 19px; }
  .intel-fact span { grid-column: 2; }
  .intel-pressure-grid { grid-template-columns: 1fr; }
  .intel-pressure, .intel-pressure:first-child { display: grid; grid-template-columns: minmax(85px, .75fr) 1fr; column-gap: 10px; padding: 10px 0; border-right: 0; border-bottom: 1px solid #d5e0dc; }
  .intel-pressure:last-child { border-bottom: 0; }
  .intel-pressure > span { grid-row: 1 / span 2; margin: 2px 0 0; }
  .intel-pressure strong { font-size: 17px; }
  .intel-pressure p { grid-column: 2; margin-top: 2px; }
  .intel-bottom-grid { grid-template-columns: 1fr; gap: 12px; }
  .intel-distance-row { grid-template-columns: minmax(80px, 1fr) 1fr auto; gap: 7px; }
  .intel-distance-row > span:nth-child(2) { font-size: 11px; }
  .intel-action { grid-template-columns: 29px minmax(0, 1fr); gap: 9px; }
  .intel-action-index { width: 27px; height: 27px; }
}

@media (max-width: 1023px) {
  .workspace, .workspace.is-report { grid-template-columns: minmax(360px, 53%) minmax(0, 1fr); }
  .metric-grid > button:last-child { display: block; }
  .report-body, .operations-host { padding: 20px 22px 38px; }
}
@media (max-width: 700px) {
  :root { --intel-header: 58px; --map-height: 31dvh; }
  .app-header { padding-inline: 14px; gap: 9px; }
  .brand { gap: 8px; }
  .brand strong { font-size: 17px; }
  .brand > span { width: 30px; height: 30px; }
  .header-tools { gap: 4px; }
  .header-tools .quiet { min-height: 38px; font-size: 13px; }
  .source-trigger { min-height: 40px; font-size: 13px; }
  .workspace, .workspace.is-report { display: flex; flex-direction: column-reverse; }
  .map-pane { height: var(--map-height); min-height: 195px; flex: none; }
  .content-pane { flex: 1; min-height: 0; }
  .map-controls button { width: 40px; height: 40px; }
  .report-body, .operations-host { padding: 17px 18px 32px; }
  .project-context { padding: 18px 18px 12px; }
  .context-toolbar { padding-inline: 18px; }
  .work-nav { padding-inline: 18px; gap: 19px; }
  .report-tabs { padding-inline: 18px; }
  .decision-brief { padding: 18px; }
  .decision-brief h2 { font-size: 21px; }
  .metric-grid strong { font-size: 24px; }
  .start-content { padding: 22px 20px 0; }
  .start-action { margin-inline: -20px; padding-inline: 20px; }
}
@media (max-width: 390px) {
  .brand-caption { display: none; }
  .header-tools { gap: 2px; }
  .source-trigger { padding-inline: 3px; }
  .start-content { padding-inline: 17px; }
  .start-action { margin-inline: -17px; padding-inline: 17px; }
  .report-body, .operations-host { padding-inline: 15px; }
  .report-tabs { gap: 1px; padding-inline: 12px; }
  .report-tabs button { padding-inline: 9px; font-size: 13px; }
  .intel-hero { padding: 16px; }
  .intel-headline { font-size: 22px; }
  .intel-mix-row { grid-template-columns: minmax(67px, 1fr) minmax(35px, 1.3fr) auto; gap: 7px; }
  .intel-pressure-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .intel-pressure, .intel-pressure:first-child { display: block; min-width: 0; padding: 8px 6px; border-right: 1px solid #d5e0dc; border-bottom: 0; }
  .intel-pressure:last-child { border-right: 0; }
  .intel-pressure > span { min-height: 30px; margin: 0 0 3px; font-size: 11px; }
  .intel-pressure strong { font-size: 15px; overflow-wrap: anywhere; }
  .intel-pressure p { margin-top: 3px; font-size: 11px; line-height: 1.35; }
}

.intel-filter-bar{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 20px}.intel-filter-bar button{min-height:40px;border:1px solid #cbd8d5;border-radius:6px;padding:8px 12px;font-size:14px;background:#fff;color:#405967}.intel-filter-bar button.active{color:#fff;background:#21746d;border-color:#21746d}.intel-mix-count small,.intel-distance-row strong small{font-size:12px;margin-left:3px}.intel-price-next>.secondary{margin-top:14px}.intel-price-next>p{font-size:15px;line-height:1.7;color:#536675}.intel-ai input{width:100%;margin:8px 0 12px}.intel-method p{overflow-wrap:anywhere}.intel-source-line{overflow-wrap:anywhere}

@media screen { html,body,#app { overflow:clip; } #app { position:fixed; inset:0; } }
