    :root {
      --bg: #edf3f2;
      --paper: #f8fbfa;
      --side: #ffffffd9;
      --card: #ffffffea;
      --card2: #f4faf9;
      --line: #dce8e6;
      --line2: #edf3f2;
      --ink: #12302f;
      --ink2: #294746;
      --muted: #617a79;
      --dim: #93a7a5;
      --faint: #9aadaa;
      --soft: #eef6f4;
      --blueSide: #006466;
      --blueSide2: #1D9FA3;
      --deep: #006466;
      --teal: #0A7E82;
      --bright: #1D9FA3;
      --jade: #2E9F7A;
      --gold: #E8A65A;
      --amber: #D26F2D;
      --terra: #A64B2D;
      --rust: #7A3324;
      --brick: #5C2418;
      --shadow: 0 18px 55px rgba(19,48,47,.12), 0 2px 8px rgba(19,48,47,.07);
      --softShadow: 0 1px 2px rgba(19,48,47,.08), 0 10px 28px rgba(19,48,47,.08);
      font-family: Inter, Roboto, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      color: var(--ink);
      color-scheme: light;
      letter-spacing: 0;
    }
    * { box-sizing: border-box; }
    html, body { margin: 0; min-height: 100%; overflow-x: hidden; font-size: 13px; line-height: 1.42; }
    body {
      background:
        radial-gradient(circle at 18% 10%, rgba(29,159,163,.20), transparent 32rem),
        radial-gradient(circle at 88% 2%, rgba(232,166,90,.22), transparent 24rem),
        linear-gradient(180deg,#f8fbfa 0%,#edf3f2 46%,#e9f0ef 100%);
      -webkit-font-smoothing: antialiased;
    }
    h1, h2, h3, p { margin: 0; }
    button, input, select { font: inherit; }
    button { cursor: pointer; }
    button:focus-visible, select:focus-visible, input[type="range"]:focus-visible {
      outline: 2px solid rgba(0,100,102,.22);
      outline-offset: 2px;
    }
    .app { display: grid; grid-template-columns: 156px minmax(0,1fr); min-height: 100vh; max-width: 100vw; overflow-x: hidden; }
    .side {
      position: sticky;
      top: 0;
      height: 100vh;
      display: flex;
      flex-direction: column;
      background: rgba(255,255,255,.78);
      color: var(--ink);
      z-index: 30;
      border-right: 1px solid rgba(220,232,230,.80);
      box-shadow: 1px 0 0 rgba(255,255,255,.8);
      backdrop-filter: blur(18px);
    }
    .sideBrand { padding: 18px 18px 15px; border-bottom: 1px solid var(--line); }
    .sideBrand img {
      width: 112px;
      max-height: 36px;
      object-fit: contain;
      display: block;
      background: transparent;
      border-radius: 0;
      padding: 0;
      box-shadow: none;
    }
    .sideBrand .fallback { display: none; font-size: 20px; font-weight: 900; }
    .nav { display: flex; flex-direction: column; gap: 4px; padding: 13px 10px; }
    .nav button {
      display: flex;
      align-items: center;
      gap: 10px;
      min-height: 34px;
      border: 0;
      border-radius: 9px;
      background: transparent;
      color: var(--ink2);
      text-align: left;
      font-size: 12px;
      line-height: 1.2;
      font-weight: 800;
      padding: 10px 11px;
    }
    .nav button:hover { background: var(--soft); color: var(--ink); }
    .nav button.on {
      color: #fff;
      background: linear-gradient(135deg,var(--deep),var(--bright));
      box-shadow: 0 10px 22px rgba(0,100,102,.22);
    }
    .nav i {
      width: 20px;
      height: 20px;
      border-radius: 6px;
      display: inline-grid;
      place-items: center;
      border: 1px solid currentColor;
      font-size: 9px;
      font-style: normal;
      font-weight: 900;
      flex: 0 0 auto;
    }
    .sideStats { margin-top: auto; padding: 0 12px 12px; display: grid; gap: 8px; }
    .sideStat {
      border: 1px solid var(--line);
      border-radius: 14px;
      background: #fff;
      padding: 12px;
      box-shadow: var(--softShadow);
    }
    .sideStat span { display: block; font-size: 9px; letter-spacing: .08em; text-transform: uppercase; font-weight: 900; color: var(--muted); }
    .sideStat b { display: block; margin-top: 5px; font-size: 18px; line-height: 1; font-weight: 900; color: var(--deep); }
    .sideStat small { display: block; margin-top: 5px; font-size: 10px; line-height: 1.35; color: var(--muted); }
    .main { min-width: 0; overflow-x: hidden; }
    .top {
      position: sticky;
      top: 0;
      z-index: 25;
      display: grid;
      grid-template-columns: minmax(420px,1fr) minmax(0,670px);
      gap: 12px 18px;
      align-items: start;
      padding: 18px 26px 14px;
      border-bottom: 1px solid rgba(220,232,230,.80);
      background: rgba(255,255,255,.66);
      backdrop-filter: blur(14px);
    }
    .crumb { color: var(--muted); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; font-weight: 900; }
    .titleLine { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 3px; }
    .top h1 { font-size: 26px; line-height: 1.05; font-weight: 900; letter-spacing: 0; color: var(--ink); }
    .top p { margin-top: 4px; color: var(--muted); font-size: 12px; line-height: 1.38; max-width: 760px; }
    .headerControls {
      display: grid;
      grid-template-columns: minmax(250px,1.28fr) minmax(150px,.72fr) minmax(132px,.64fr) minmax(118px,.58fr);
      gap: 9px;
      align-items: end;
      justify-content: stretch;
    }
    .field {
      display: grid;
      gap: 5px;
      color: var(--muted);
      font-size: 10px;
      letter-spacing: .05em;
      text-transform: uppercase;
      font-weight: 900;
      min-width: 0;
    }
    select {
      min-height: 42px;
      border: 1px solid var(--line);
      border-radius: 10px;
      color: var(--ink);
      background: #fff;
      padding: 0 10px;
      outline: none;
      box-shadow: var(--softShadow);
      font-size: 12px;
      font-weight: 800;
    }
    select:focus, input[type="range"]:focus { border-color: var(--deep); box-shadow: 0 0 0 3px rgba(0,100,102,.12); }
    select { min-width: 0; width: 100%; }
    .regionPicker { display: grid; gap: 6px; }
    .yearBox { display: grid; grid-template-columns: minmax(108px,1fr) auto; gap: 7px; align-items: center; min-height: 42px; border: 1px solid var(--line); border-radius: 10px; background: #fff; padding: 0 10px; box-shadow: var(--softShadow); }
    input[type="range"] { width: 100%; accent-color: var(--deep); }
    .yearBox b { color: var(--deep); font-size: 13px; font-variant-numeric: tabular-nums; }
    .topKpis { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 10px; margin-top: 2px; }
    .topKpis .kpi { min-height: 68px; padding: 8px 10px; border-left-width: 1px; border-radius: 10px; }
    .topKpis .kpi b { font-size: 22px; margin-top: 6px; }
    .topKpis .kpi em { font-size: 11px; margin-top: 4px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .content { padding: 18px 26px 32px; max-width: 1640px; }
    .screen { display: none; animation: rise .18s ease-out; }
    .screen.on { display: block; }
    @keyframes rise { from { opacity: .3; transform: translateY(6px); } to { opacity: 1; transform: translateY(0); } }
    .screenHead {
      display: grid;
      grid-template-columns: minmax(0,1fr) auto;
      gap: 18px;
      align-items: end;
      margin-bottom: 14px;
    }
    .screenKicker {
      display: inline-flex;
      gap: 8px;
      align-items: center;
      color: var(--deep);
      font-size: 10px;
      font-weight: 900;
      letter-spacing: .08em;
      text-transform: uppercase;
    }
    .screenKicker:before { content: ""; width: 9px; height: 9px; border-radius: 999px; background: var(--deep); }
    .screenHead h2 { margin-top: 5px; font-size: clamp(28px,3.6vw,52px); line-height: .98; font-weight: 900; letter-spacing: 0; max-width: 860px; }
    .screenHead p { margin-top: 10px; color: var(--muted); font-size: 14px; line-height: 1.5; max-width: 900px; }
    .screen:not(#screen-national) .screenHead { margin-bottom: 10px; }
    .screen:not(#screen-national) .screenHead h2 { font-size: clamp(25px,3vw,42px); line-height: 1.02; max-width: 920px; }
    .screen:not(#screen-national) .screenHead p { margin-top: 8px; font-size: 13px; max-width: 880px; }
    .screenHead { display: none; }
    .statusPill {
      border: 1px solid var(--line);
      border-radius: 999px;
      background: #fff;
      color: var(--muted);
      padding: 7px 10px;
      font-size: 11px;
      font-weight: 850;
      white-space: nowrap;
      box-shadow: var(--softShadow);
    }
    .grid { display: grid; gap: 14px; }
    .card, .panel {
      background: rgba(255,255,255,.92);
      border: 1px solid rgba(220,232,230,.96);
      border-radius: 18px;
      box-shadow: var(--shadow);
      overflow: hidden;
      min-width: 0;
    }
    .card.flat, .panel.flat { box-shadow: var(--softShadow); }
    .panelHead {
      display: flex;
      justify-content: space-between;
      align-items: baseline;
      gap: 10px;
      padding: 15px 16px 10px;
      border-bottom: 1px solid var(--line);
      background: rgba(248,251,250,.74);
    }
    .panelHead h3 { font-size: 15px; line-height: 1.2; font-weight: 900; letter-spacing: 0; }
    .panelHead .note { color: var(--muted); font-size: 11px; line-height: 1.35; text-align: right; }
    .body { padding: 14px; }
    .kpiGrid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; }
    .kpi {
      position: relative;
      min-height: 86px;
      border: 1px solid var(--line);
      border-left: 5px solid var(--deep);
      border-radius: 13px;
      background: #fff;
      padding: 12px;
      box-shadow: var(--softShadow);
      overflow: hidden;
    }
    .kpi:nth-child(2) { border-left-color: var(--bright); }
    .kpi:nth-child(3) { border-left-color: var(--gold); }
    .kpi:nth-child(4) { border-left-color: var(--terra); }
    .kpi span, .metric span, .miniStat span {
      display: block;
      color: var(--dim);
      font-size: 9px;
      line-height: 1.1;
      letter-spacing: .07em;
      text-transform: uppercase;
      font-weight: 900;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .kpi span {
      white-space: normal;
      overflow: visible;
      text-overflow: clip;
      line-height: 1.18;
    }
    .kpi b {
      display: block;
      margin-top: 7px;
      color: var(--deep);
      font-size: 24px;
      line-height: 1;
      font-weight: 900;
      font-variant-numeric: tabular-nums;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: clip;
    }
    .kpi em {
      display: block;
      margin-top: 7px;
      color: var(--muted);
      font-size: 11px;
      line-height: 1.35;
      font-style: normal;
    }
    .chart { width: 100%; height: 100%; display: block; overflow: visible; }
    .axis text { fill: var(--muted); font-size: 10px; }
    .axis path, .axis line { stroke: var(--line); }
    .gridLine line { stroke: rgba(137,156,160,.22); }
    .mapSvg { width: 100%; height: 100%; display: block; background: #fff; }
    .county {
      stroke: rgba(255,255,255,.72);
      stroke-width: .25;
      transition: opacity .12s ease, stroke-width .12s ease, filter .12s ease;
    }
    .county[role="button"] { cursor: pointer; }
    .county:hover, .county.selected { stroke: var(--brick); stroke-width: 1.25; filter: saturate(1.2); }
    .county[role="button"]:focus-visible { outline: none; stroke: var(--deep); stroke-width: 1.35; filter: saturate(1.24) drop-shadow(0 0 4px rgba(0,100,102,.28)); }
    .county.dimmed { opacity: .42; }
    .state-outline { fill: none; stroke: rgba(18,48,47,.32); stroke-width: .7; pointer-events: none; }
    .legend {
      position: absolute;
      left: 16px;
      bottom: 14px;
      width: min(300px, 55%);
      background: rgba(255,255,255,.94);
      border: 1px solid var(--line);
      border-radius: 8px;
      padding: 10px;
      color: var(--muted);
      font-size: 11px;
      box-shadow: 0 10px 28px rgba(19,48,47,.12);
      backdrop-filter: blur(10px);
    }
    .legendBar { height: 10px; border-radius: 999px; margin: 7px 0 6px; background: linear-gradient(90deg,#f8fbfa,#1D9FA3,#2E9F7A,#E8A65A,#A64B2D,#5C2418); }
    .legendScale { display: flex; justify-content: space-between; gap: 10px; color: var(--ink); font-weight: 900; }
    .choroplethLegend {
      left: 20px;
      right: 20px;
      bottom: 14px;
      width: auto;
      display: grid;
      grid-template-columns: 1fr;
      gap: 8px;
      border: 0;
      background: transparent;
      box-shadow: none;
      padding: 0;
      backdrop-filter: none;
      pointer-events: none;
    }
    .choroplethLegend > div:first-child {
      position: absolute;
      right: 0;
      bottom: 100%;
      margin-bottom: 8px;
      color: #617a79;
      font-size: 8px;
      font-weight: 900;
      letter-spacing: .07em;
      text-transform: lowercase;
    }
    .legendBins {
      display: flex;
      align-items: center;
      flex-wrap: wrap;
      gap: 8px;
      min-width: 0;
      pointer-events: auto;
    }
    .legendBin {
      display: flex;
      align-items: center;
      gap: 6px;
      min-width: 0;
      color: #617a79;
      font-size: 10px;
      line-height: 1;
      font-weight: 900;
      white-space: nowrap;
    }
    .legendBin i {
      width: 18px;
      height: 11px;
      border-radius: 3px;
      background: var(--bin-color, #1D9FA3);
      box-shadow: inset 0 0 0 1px rgba(18,48,47,.05);
    }
    .legendAction {
      height: 28px;
      display: grid;
      place-items: center;
      border: 1px solid #dbe7e5;
      border-radius: 8px;
      background: #fff;
      color: #006466;
      font-size: 10px;
      font-weight: 900;
      letter-spacing: 0;
      pointer-events: auto;
      box-shadow: 0 8px 22px rgba(19,48,47,.05);
    }
    .mapToolStack {
      position: absolute;
      left: 16px;
      top: 72px;
      display: grid;
      gap: 8px;
      z-index: 2;
    }
    .mapToolStack button {
      width: 30px;
      height: 30px;
      border: 1px solid #dbe7e5;
      border-radius: 8px;
      background: #fff;
      color: #12302f;
      font-size: 13px;
      font-weight: 900;
      line-height: 1;
      box-shadow: 0 8px 20px rgba(19,48,47,.08);
    }
    .tooltip {
      position: fixed;
      pointer-events: none;
      opacity: 0;
      z-index: 100;
      max-width: 310px;
      border: 1px solid var(--line);
      border-radius: 8px;
      background: rgba(255,255,255,.98);
      box-shadow: var(--shadow);
      padding: 10px;
      color: var(--ink);
      font-size: 12px;
      line-height: 1.35;
      transform: translate(10px, 10px);
    }
    .tooltip b { display: block; font-size: 13px; margin-bottom: 3px; }
    .heroGrid { grid-template-columns: minmax(430px,.82fr) minmax(640px,1.18fr); align-items: stretch; }
    .bigStory {
      display: grid;
      gap: 14px;
      align-content: space-between;
      min-height: 362px;
      padding: 18px;
      background: linear-gradient(135deg,#fff 0%,#f3faf9 58%,#fff7ed 100%);
    }
    .bigStory h3 { font-size: clamp(25px,2.25vw,34px); line-height: 1.04; font-weight: 900; letter-spacing: 0; max-width: 560px; }
    .bigStory p { color: var(--muted); font-size: 12px; line-height: 1.45; max-width: 600px; }
    .deltaStrip {
      display: grid;
      grid-template-columns: repeat(3,minmax(0,1fr));
      gap: 10px;
      margin-top: 16px;
      padding-top: 15px;
      border-top: 1px solid var(--line);
    }
    .deltaCard {
      display: grid;
      grid-template-columns: 38px 1fr;
      gap: 9px;
      align-items: center;
      min-width: 0;
    }
    .deltaIcon {
      width: 38px;
      height: 38px;
      display: grid;
      place-items: center;
      border-radius: 999px;
      color: #fff;
      background: var(--deep);
      box-shadow: 0 8px 18px rgba(0,100,102,.18);
      font-size: 15px;
      font-weight: 900;
    }
    .deltaCard:nth-child(2) .deltaIcon { background: var(--terra); }
    .deltaCard:nth-child(3) .deltaIcon { background: var(--jade); }
    .deltaCard b { display: block; color: var(--deep); font-size: 19px; line-height: 1; font-weight: 900; white-space: nowrap; }
    .deltaCard:nth-child(2) b { color: var(--terra); }
    .deltaCard:nth-child(3) b { color: var(--jade); }
    .deltaCard small { display: block; margin-top: 3px; color: var(--muted); font-size: 10px; line-height: 1.25; }
    .chips { display: flex; flex-wrap: wrap; gap: 8px; }
    .chip {
      display: inline-flex;
      align-items: center;
      gap: 7px;
      border: 1px solid var(--line);
      border-radius: 999px;
      background: #fff;
      padding: 6px 9px;
      color: var(--muted);
      font-size: 11px;
      font-weight: 800;
    }
    .chip:before { content: ""; width: 7px; height: 7px; border-radius: 999px; background: var(--deep); }
    .sectionBandTitle {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin: 16px 0 9px;
      color: var(--deep);
      font-size: 12px;
      letter-spacing: .08em;
      text-transform: uppercase;
      font-weight: 900;
    }
    .storyInsightGrid { grid-template-columns: repeat(4,minmax(0,1fr)); margin-top: 0; }
    .insightCard {
      min-height: 130px;
      border-left: 5px solid var(--deep);
      padding: 13px;
    }
    .insightCard:nth-child(2) { border-left-color: var(--jade); }
    .insightCard:nth-child(3) { border-left-color: var(--gold); }
    .insightCard:nth-child(4) { border-left-color: var(--terra); }
    .insightCard b { display: block; color: var(--deep); font-size: 13px; margin-bottom: 6px; }
    .insightCard p { color: var(--muted); font-size: 12px; line-height: 1.42; }
    .nationalBoard { display: flex; flex-direction: column; gap: 10px; min-height: 362px; padding: 12px; }
    .nationalBoard .panelHead { order: 1; }
    .nationalMapWrap { order: 2; position: relative; min-height: 218px; flex: 1; border: 1px solid var(--line); border-radius: 14px; overflow: hidden; background: #fff; }
    .nationalTrendWrap { display: none; }
    .nationalKpiRow { grid-template-columns: repeat(4,minmax(0,1fr)); margin-top: 14px; }
    .sectionControls {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      align-items: end;
      margin-bottom: 10px;
    }
    .seg {
      display: grid;
      grid-template-columns: repeat(3,1fr);
      gap: 4px;
      min-height: 36px;
      padding: 4px;
      border: 1px solid var(--line);
      border-radius: 8px;
      background: #eef6f4;
    }
    .seg button {
      border: 0;
      border-radius: 6px;
      background: transparent;
      color: var(--muted);
      padding: 6px 12px;
      font-size: 12px;
      font-weight: 850;
      white-space: nowrap;
    }
    .seg button.on { background: linear-gradient(135deg,var(--deep),var(--bright)); color: #fff; box-shadow: 0 8px 16px rgba(0,100,102,.16); }
    .seg.scopeSeg { grid-template-columns: repeat(4,1fr); }
    .seg.sortSeg { grid-template-columns: repeat(2,1fr); }
    .scopeSeg button, .sortSeg button { padding-left: 8px; padding-right: 8px; }
    .explorerGrid { grid-template-columns: minmax(610px,1.22fr) minmax(340px,.78fr); align-items: start; }
    .mapHero { position: relative; height: calc(100vh - 188px); min-height: 520px; border-radius: 8px; overflow: hidden; }
    .profilePanel { min-height: 520px; }
    .profileTop { display: grid; gap: 5px; margin-bottom: 12px; }
    .profileTop .type { color: var(--deep); font-size: 10px; text-transform: uppercase; letter-spacing: .08em; font-weight: 900; }
    .profileTop h3 { font-size: 28px; line-height: 1.04; font-weight: 900; }
    .profileTop p { color: var(--muted); font-size: 12px; line-height: 1.4; }
    .miniGrid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; margin-bottom: 12px; }
    .miniStat {
      border: 1px solid var(--line);
      border-radius: 8px;
      background: #fff;
      padding: 10px;
      min-width: 0;
    }
    .miniStat b { display: block; margin-top: 5px; color: var(--deep); font-size: 20px; line-height: 1; font-weight: 900; font-variant-numeric: tabular-nums; white-space: nowrap; overflow: hidden; }
    .miniStat small { display: block; margin-top: 5px; color: var(--muted); font-size: 10px; line-height: 1.25; }
    .profileStory { display: grid; gap: 8px; margin: 12px 0; }
    .profileStory p {
      border: 1px solid var(--line2);
      border-radius: 8px;
      background: #fff;
      padding: 10px;
      color: var(--muted);
      font-size: 12px;
      line-height: 1.4;
    }
    .profileStory strong { color: var(--ink); }
    .sparkWrap { height: 150px; border: 1px solid var(--line); border-radius: 8px; background: #fff; padding: 8px; }
    .leaderCards { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 9px; margin-top: 12px; }
    .leaderCard { border: 1px solid var(--line); border-radius: 8px; background: #fff; padding: 10px; min-width: 0; cursor: pointer; box-shadow: var(--softShadow); }
    .leaderCard:hover { border-color: var(--deep); }
    .leaderCard span { display: block; color: var(--dim); font-size: 9px; letter-spacing: .06em; text-transform: uppercase; font-weight: 900; }
    .leaderCard b { display: block; margin-top: 5px; color: var(--ink); font-size: 13px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .leaderCard em { display: block; margin-top: 5px; color: var(--deep); font-style: normal; font-size: 18px; font-weight: 900; }
    .agingGrid { grid-template-columns: minmax(650px,1.3fr) minmax(330px,.7fr); align-items: start; }
    .agingStats { margin-bottom: 12px; }
    .ageChartWrap { height: 390px; border: 1px solid var(--line); border-radius: 8px; background: #fff; padding: 10px; }
    .cohortFlow { display: grid; gap: 8px; margin-top: 12px; }
    .migrationGrid { display: grid; grid-template-columns: minmax(190px,.8fr) minmax(160px,.7fr) minmax(190px,.8fr) minmax(210px,.72fr); gap: 10px; align-items: stretch; }
    .flowCol { display: grid; gap: 7px; align-content: start; }
    .flowCol > b { color: var(--ink); font-size: 13px; }
    .migrateBox {
      display: grid;
      grid-template-columns: 1fr auto;
      gap: 8px;
      align-items: center;
      border: 1px solid var(--line);
      border-radius: 8px;
      background: #fff;
      overflow: hidden;
      min-height: 32px;
      font-size: 11px;
      color: var(--ink2);
    }
    .migrateBox span { padding-left: 9px; font-weight: 900; }
    .migrateBox b { min-width: 66px; align-self: stretch; display: grid; place-items: center; color: #fff; background: var(--terra); font-size: 11px; }
    .flowCol.end .migrateBox b { background: var(--bright); }
    .flowLinks { width: 100%; min-height: 276px; align-self: end; }
    .flowLinks path { fill: none; stroke-linecap: round; }
    .migrationSummary {
      border: 1px solid rgba(29,159,163,.28);
      border-radius: 8px;
      background: linear-gradient(180deg,#fff,#f2fbfa);
      padding: 13px;
      color: var(--ink2);
      font-size: 12px;
      line-height: 1.45;
      align-self: end;
    }
    .migrationSummary b { display: block; color: var(--deep); font-size: 18px; line-height: 1.1; margin-bottom: 8px; }
    .migrationCompact {
      display: grid;
      gap: 12px;
    }
    .migrationHeader {
      display: grid;
      grid-template-columns: 1fr auto;
      gap: 12px;
      align-items: end;
      border: 1px solid rgba(29,159,163,.24);
      border-radius: 10px;
      background: linear-gradient(180deg,#fff,#f2fbfa);
      padding: 14px;
    }
    .migrationHeader span {
      color: #617a79;
      font-size: 8px;
      font-weight: 900;
      letter-spacing: .08em;
      text-transform: uppercase;
    }
    .migrationHeader b {
      display: block;
      margin-top: 5px;
      color: #006466;
      font-size: 24px;
      line-height: 1;
      font-weight: 900;
    }
    .migrationHeader em {
      color: #617a79;
      font-size: 10px;
      font-style: normal;
      font-weight: 850;
    }
    .cohortMigrationRows {
      display: grid;
      gap: 7px;
    }
    .cohortMigrationRow {
      display: grid;
      grid-template-columns: 90px minmax(160px,1fr) 28px minmax(160px,1fr) 92px;
      gap: 8px;
      align-items: center;
      border: 1px solid #dfe9e7;
      border-radius: 8px;
      background: #fff;
      padding: 8px;
    }
    .cohortMigrationRow strong {
      color: #12302f;
      font-size: 11px;
    }
    .cohortArrow {
      color: #006466;
      font-weight: 900;
      text-align: center;
    }
    .cohortBar {
      height: 28px;
      border-radius: 7px;
      background: #eef6f4;
      overflow: hidden;
      position: relative;
      border: 1px solid #edf3f2;
    }
    .cohortBar i {
      display: block;
      height: 100%;
      width: var(--w);
      background: var(--bar-color);
      opacity: .9;
    }
    .cohortBar span {
      position: absolute;
      inset: 0 8px;
      display: flex;
      align-items: center;
      justify-content: flex-end;
      color: #12302f;
      font-size: 10px;
      font-weight: 900;
      font-variant-numeric: tabular-nums;
    }
    .cohortDelta {
      justify-self: end;
      color: #006466;
      font-size: 11px;
      font-weight: 900;
      font-variant-numeric: tabular-nums;
    }
    .flowRow { display: grid; grid-template-columns: 82px 1fr 72px; gap: 8px; align-items: center; color: var(--ink2); font-size: 11px; font-weight: 850; }
    .flowTrack { height: 12px; border-radius: 999px; background: #edf4f2; overflow: hidden; display: grid; grid-template-columns: var(--a,50%) 1fr; }
    .flowStart { background: var(--terra); opacity: .82; }
    .flowEnd { background: var(--bright); opacity: .88; }
    .sideNarrative { display: grid; gap: 10px; }
    .callout { border: 1px solid var(--line); border-radius: 8px; background: linear-gradient(180deg,#fff,#f8fbfa); padding: 14px; }
    .callout span { color: var(--deep); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; font-weight: 900; }
    .callout h3 { margin-top: 8px; color: var(--ink); font-size: 18px; line-height: 1.18; }
    .callout p { margin-top: 8px; color: var(--muted); font-size: 12px; line-height: 1.48; }
    .pressureGauge { height: 190px; }
    .utilizationHero {
      display: grid;
      grid-template-columns: minmax(360px,1fr) minmax(520px,1.22fr);
      gap: 16px;
      align-items: center;
      padding: 18px 20px;
      margin-bottom: 12px;
    }
    .utilizationHero h3 { color: var(--deep); font-size: 20px; font-weight: 900; }
    .utilizationHero p { margin-top: 7px; color: var(--ink2); font-size: 12px; line-height: 1.45; max-width: 760px; }
    .utilizationHero .kpiGrid { grid-template-columns: repeat(4,minmax(0,1fr)); }
    .useToolbar {
      display: grid;
      grid-template-columns: minmax(0,1fr) minmax(0,1.1fr) minmax(0,1fr);
      gap: 12px;
      margin-bottom: 12px;
    }
    .toolbarBox { border: 1px solid var(--line); border-radius: 8px; background: #fff; padding: 12px; }
    .toolbarBox span { display: block; color: var(--muted); font-size: 10px; text-transform: uppercase; letter-spacing: .08em; font-weight: 900; }
    .toolbarBox b { display: block; margin-top: 7px; color: var(--ink); font-size: 13px; }
    .useGrid { grid-template-columns: minmax(0,1fr) 300px; align-items: start; }
    .useCharts { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
    .useChartBox { min-height: 392px; }
    .useChartBox .chartArea { height: 305px; padding: 8px; }
    .anchorLogic { display: grid; gap: 10px; }
    .anchorList { display: grid; gap: 8px; }
    .anchorItem { display: grid; grid-template-columns: 24px 1fr; gap: 8px; align-items: start; border: 1px solid var(--line2); border-radius: 8px; background: #fff; padding: 10px; }
    .anchorItem i { width: 23px; height: 23px; display: grid; place-items: center; border-radius: 7px; background: var(--gold); color: #fff; font-style: normal; font-weight: 900; font-size: 10px; }
    .anchorItem b { display: block; color: var(--ink); font-size: 12px; }
    .anchorItem small { display: block; color: var(--muted); font-size: 10px; line-height: 1.35; margin-top: 3px; }
    .tableWrap { max-height: 360px; overflow: auto; border: 1px solid var(--line); border-radius: 8px; background: #fff; }
    table { width: 100%; border-collapse: collapse; font-size: 12px; }
    th { position: sticky; top: 0; z-index: 1; background: #f8fbfa; color: var(--muted); font-size: 9px; text-transform: uppercase; letter-spacing: .05em; font-weight: 900; padding: 9px 10px; text-align: left; white-space: nowrap; border-bottom: 1px solid var(--line); }
    td { padding: 9px 10px; border-bottom: 1px solid var(--line2); color: var(--ink2); vertical-align: middle; white-space: nowrap; }
    td.r, th.r { text-align: right; font-variant-numeric: tabular-nums; }
    tbody tr.clickable { cursor: pointer; }
    tbody tr.clickable:hover td { background: #f2f8f7; }
    .growthGrid { grid-template-columns: minmax(450px,.9fr) minmax(460px,1.1fr) 290px; align-items: start; }
    .rankTableWrap { max-height: calc(100vh - 258px); min-height: 520px; }
    .vizStack { display: grid; gap: 12px; }
    .quadWrap { height: 330px; padding: 8px; }
    .hotspotWrap { height: 260px; position: relative; overflow: hidden; }
    .marketBrief { display: grid; gap: 10px; }
    .briefHero h3 { font-size: 22px; line-height: 1.1; font-weight: 900; }
    .briefHero p { margin-top: 6px; color: var(--muted); font-size: 12px; line-height: 1.4; }
    .supplyGrid { grid-template-columns: minmax(620px,1.15fr) minmax(360px,.85fr); align-items: start; }
    .supplyMapWrap { position: relative; height: calc(100vh - 268px); min-height: 460px; border: 1px solid var(--line); border-radius: 8px; overflow: hidden; background: #fff; }
    .supplyProfile .profileTop { margin-bottom: 10px; }
    .supplyProfileBlock { display: grid; gap: 10px; }
    .supplyStatList { display: grid; gap: 8px; }
    .supplyStat {
      display: grid;
      grid-template-columns: 1fr auto;
      gap: 8px;
      align-items: center;
      border: 1px solid var(--line2);
      border-radius: 8px;
      background: #fff;
      padding: 10px;
      min-width: 0;
    }
    .supplyStat span { color: var(--muted); font-size: 10px; letter-spacing: .07em; text-transform: uppercase; font-weight: 900; }
    .supplyStat b { color: var(--deep); font-size: 20px; line-height: 1; font-weight: 900; font-variant-numeric: tabular-nums; white-space: nowrap; }
    .supplyStat small { display: block; margin-top: 4px; color: var(--muted); font-size: 10px; line-height: 1.25; }
    .supplyNarrative { display: grid; gap: 8px; }
    .supplyNarrative p { border: 1px solid var(--line2); border-radius: 8px; background: #fff; padding: 10px; color: var(--muted); font-size: 12px; line-height: 1.42; }
    .supplyNarrative strong { color: var(--ink); }
    .supplyLower { grid-template-columns: minmax(430px,.8fr) minmax(560px,1.2fr); align-items: start; margin-top: 12px; }
    .supplyTrendWrap { height: 260px; padding: 8px; }
    .supplyCardDeck { grid-template-columns: repeat(5,minmax(0,1fr)); }
    body[data-section="supply"] { background: #f6faf9; }
    body[data-section="supply"] .top {
      position: relative;
      top: auto;
      background: #fff;
      border-bottom: 1px solid #dbe7e5;
      padding: 12px 18px 8px;
      backdrop-filter: none;
    }
    body[data-section="supply"] .content { padding: 12px 18px 18px; max-width: none; }
    body[data-section="supply"] .topKpis { display: none; }
    body[data-section="supply"] .screenHead { display: none; }
    body[data-section="supply"] .field { font-size: 8px; letter-spacing: .08em; }
    body[data-section="supply"] select { min-height: 34px; border-radius: 8px; box-shadow: none; font-size: 10px; border-color: #dbe7e5; }
    body[data-section="supply"] .seg { min-height: 34px; height: 34px; border-radius: 8px; background: #f3f8f7; border-color: #dbe7e5; }
    body[data-section="supply"] .seg button { font-size: 10px; padding: 6px 9px; border-radius: 6px; }
    body[data-section="supply"] .seg button.on { background: linear-gradient(180deg,#007978,#006164); box-shadow: 0 7px 16px rgba(0,97,100,.18); }
    #screen-supply .pageTitle { display: flex; align-items: flex-end; gap: 12px; margin-bottom: 11px; }
    #screen-supply .pageTitle h2 { margin: 0; font-size: 18px; letter-spacing: 0; color: #0f2827; line-height: 1.12; font-weight: 900; }
    #screen-supply .pageTitle p { margin: 2px 0 0; color: #617a79; font-size: 11px; max-width: 780px; line-height: 1.4; }
    #screen-supply .pageTitle .right { margin-left: auto; display: flex; gap: 6px; align-items: center; justify-content: flex-end; flex-wrap: wrap; }
    #screen-supply .metricRibbon { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 9px; margin-bottom: 12px; }
    #screen-supply .metricCard {
      border: 1px solid #dfe9e7;
      border-radius: 10px;
      background: #fff;
      box-shadow: 0 8px 22px rgba(19,48,47,.05);
      padding: 12px;
      min-width: 0;
    }
    #screen-supply .metricCard span { display: block; color: #617a79; text-transform: uppercase; font-weight: 900; font-size: 8px; letter-spacing: .08em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    #screen-supply .metricCard b { display: block; color: #006466; font-size: 19px; margin-top: 5px; font-variant-numeric: tabular-nums; white-space: nowrap; overflow: hidden; text-overflow: clip; }
    #screen-supply .metricCard em { display: block; color: #617a79; font-style: normal; font-size: 9px; margin-top: 3px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    #screen-supply .supplyToolbar {
      display: grid;
      grid-template-columns: minmax(240px,.78fr) minmax(460px,1.55fr) minmax(220px,.7fr);
      gap: 8px;
      align-items: stretch;
      background: #f2f7f6;
      border: 1px solid #dfe9e7;
      border-radius: 12px;
      padding: 8px;
      margin: 10px 0 12px;
    }
    #screen-supply .controlGroup {
      border: 1px solid #dbe7e5;
      border-radius: 10px;
      background: #fff;
      padding: 8px;
      min-width: 0;
      display: grid;
      gap: 7px;
    }
    #screen-supply .controlGroup .label {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 8px;
      color: #617a79;
      font-size: 8px;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: .08em;
    }
    #screen-supply .controlGroup .label b { color: #0f2827; font-size: 9px; letter-spacing: .04em; }
    #screen-supply .supplyMetricGrid {
      display: grid;
      grid-template-columns: repeat(3,minmax(0,1fr));
      gap: 6px;
    }
    #screen-supply .metricChoice {
      border: 1px solid #dbe7e5;
      border-radius: 8px;
      background: #f8fbfa;
      color: #123837;
      padding: 8px 8px 7px;
      text-align: left;
      min-height: 55px;
      cursor: pointer;
      transition: border-color .12s ease, background .12s ease, box-shadow .12s ease, transform .12s ease;
    }
    #screen-supply .metricChoice:hover { border-color: #b9d7d3; transform: translateY(-1px); }
    #screen-supply .metricChoice.on {
      border-color: #006466;
      background: linear-gradient(180deg,#eef9f6,#fff);
      box-shadow: inset 0 0 0 1px rgba(0,100,102,.18), 0 8px 18px rgba(0,97,100,.10);
    }
    #screen-supply .metricChoice span { display: block; font-size: 10px; line-height: 1.05; font-weight: 900; }
    #screen-supply .metricChoice small { display: block; color: #617a79; font-size: 8px; line-height: 1.2; margin-top: 4px; font-weight: 800; }
    #screen-supply .sortHint { color: #617a79; font-size: 9px; line-height: 1.25; font-weight: 800; }
    #screen-supply .mapStudio { display: grid; grid-template-columns: minmax(620px,1fr) minmax(360px,420px); gap: 14px; align-items: stretch; }
    #screen-supply .card {
      background: #fff;
      border: 1px solid #dfe9e7;
      border-radius: 12px;
      box-shadow: 0 12px 34px rgba(19,48,47,.08);
      min-width: 0;
      overflow: hidden;
    }
    #screen-supply .card.flat { box-shadow: 0 8px 22px rgba(19,48,47,.05); }
    #screen-supply .hd { display: flex; align-items: center; gap: 10px; padding: 14px 14px 9px; }
    #screen-supply .hd h2 { font-size: 13px; margin: 0; font-weight: 900; letter-spacing: 0; color: #102c2b; }
    #screen-supply .hd .right { margin-left: auto; color: #617a79; font-size: 9px; font-weight: 800; }
    #screen-supply .bd { padding: 0 14px 14px; }
    #screen-supply .supplyMapWrap { height: calc(100vh - 374px); min-height: 330px; max-height: 455px; border-radius: 10px; border: 1px solid #dfe9e7; }
    #screen-supply .profileHero { display: grid; grid-template-columns: 1fr auto; gap: 10px; align-items: start; margin-bottom: 10px; }
    #screen-supply .profileHero h2 { margin: 0; font-size: 18px; line-height: 1.05; color: #0f2827; font-weight: 900; }
    #screen-supply .profileHero .smallnote { font-size: 10px; color: #617a79; margin-top: 3px; line-height: 1.35; }
    #screen-supply .statusTag { display: inline-flex; align-items: center; border-radius: 999px; padding: 4px 7px; background: #e8f6f3; color: #006466; border: 1px solid #cce6e2; font-weight: 900; font-size: 9px; white-space: nowrap; }
    #screen-supply .statusTag.warn { background: #ffe7e4; color: #A64B2D; border-color: #ffd3cc; }
    #screen-supply .profileSignalStrip { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 9px; margin: 0 0 14px; }
    #screen-supply .profileSignal {
      border: 1px solid #dfe9e7;
      border-radius: 11px;
      background: linear-gradient(180deg,#fff,#f8fbfa);
      padding: 12px;
      min-width: 0;
      box-shadow: 0 8px 22px rgba(19,48,47,.05);
      position: relative;
      overflow: hidden;
    }
    #screen-supply .profileSignal:before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 4px; background: #006466; }
    #screen-supply .profileSignal:nth-child(2):before { background: #2E9F7A; }
    #screen-supply .profileSignal:nth-child(3):before { background: #E8A65A; }
    #screen-supply .profileSignal:nth-child(4):before { background: #A64B2D; }
    #screen-supply .profileSignal span { display: block; font-size: 8px; text-transform: uppercase; letter-spacing: .07em; color: #617a79; font-weight: 900; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    #screen-supply .profileSignal b { display: block; color: #006466; font-size: 18px; font-variant-numeric: tabular-nums; margin-top: 4px; white-space: nowrap; overflow: hidden; text-overflow: clip; }
    #screen-supply .profileSignal em { display: block; color: #617a79; font-size: 9px; font-style: normal; margin-top: 2px; line-height: 1.25; }
    #screen-supply .needTiles { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; margin-top: 10px; }
    #screen-supply .supplyStat { border-color: #dfe9e7; border-radius: 10px; background: #fff; box-shadow: 0 8px 22px rgba(19,48,47,.05); padding: 10px; }
    #screen-supply .supplyStat span { font-size: 8px; letter-spacing: .07em; }
    #screen-supply .supplyStat b { font-size: 17px; color: #006466; }
    #screen-supply .supplyNarrative p { border-color: #edf3f2; border-radius: 10px; font-size: 11px; color: #294746; }
    #screen-supply .profileDossierGrid { display: grid; grid-template-columns: minmax(390px,.9fr) minmax(520px,1.1fr); gap: 14px; margin-top: 14px; align-items: stretch; }
    #screen-supply .supplyTrendWrap { height: 250px; border: 1px solid #dfe9e7; border-radius: 10px; background: #fff; overflow: hidden; position: relative; padding: 10px; }
    #screen-supply .flowCards { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; margin-top: 10px; }
    #screen-supply .flowStage {
      border: 1px solid #dfe9e7;
      border-radius: 12px;
      background: #fff;
      padding: 12px;
      text-align: center;
      box-shadow: 0 8px 22px rgba(19,48,47,.05);
    }
    #screen-supply .flowStage.soft { background: #d9f1ef; }
    #screen-supply .flowStage.warn { background: #ffe7dd; }
    #screen-supply .flowStage strong { display: block; color: #006466; font-size: 18px; font-variant-numeric: tabular-nums; }
    #screen-supply .flowStage span { display: block; color: #617a79; font-size: 8px; text-transform: uppercase; font-weight: 900; letter-spacing: .07em; }
    #screen-supply .flowStage p { margin: 6px 0 0; color: #617a79; font-size: 9px; line-height: 1.35; }
    #screen-supply .mapDataToolbar { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 10px; }
    #screen-supply .mapDataCount { font-size: 9px; color: #617a79; font-weight: 900; text-transform: uppercase; letter-spacing: .06em; white-space: nowrap; }
    #screen-supply .mapDataWrap { max-height: 430px; overflow: auto; border: 1px solid #dfe9e7; border-radius: 10px; background: #fff; }
    #screen-supply .mapDataWrap table { min-width: 1540px; font-size: 10px; }
    #screen-supply .mapDataWrap th { font-size: 8px; padding: 7px 8px; background: #f8fbfa; border-bottom-color: #dfe9e7; }
    #screen-supply .mapDataWrap td { padding: 8px 9px; }
    #screen-supply .mapDataWrap td b { display: block; color: #102c2b; font-size: 11px; line-height: 1.2; max-width: 220px; overflow: hidden; text-overflow: ellipsis; }
    #screen-supply .mapDataWrap td em { display: block; color: #617a79; font-style: normal; font-size: 9px; margin-top: 2px; text-transform: uppercase; }
    #screen-supply .mapDataWrap th:first-child, #screen-supply .mapDataWrap td:first-child { position: sticky; left: 0; z-index: 3; background: #fff; box-shadow: 1px 0 0 #edf3f2; }
    #screen-supply .mapDataWrap thead th:first-child { z-index: 5; background: #f8fbfa; }
    #screen-supply .mapDataWrap th:nth-child(2), #screen-supply .mapDataWrap td:nth-child(2) { position: sticky; left: 42px; z-index: 3; background: #fff; box-shadow: 1px 0 0 #edf3f2; }
    #screen-supply .mapDataWrap thead th:nth-child(2) { z-index: 5; background: #f8fbfa; }
    #screen-supply .tableSpark { height: 7px; background: #edf4f2; border-radius: 999px; overflow: hidden; margin-top: 4px; }
    #screen-supply .tableSpark i { display: block; height: 100%; border-radius: 999px; background: #006466; }
    #screen-supply .deltaMini { display: inline-flex; align-items: center; border-radius: 999px; padding: 2px 5px; background: #e7f5f2; color: #006466; font-size: 8px; font-weight: 900; font-variant-numeric: tabular-nums; white-space: nowrap; }
    #screen-supply .deltaMini.neg { background: #fff1e9; color: #A64B2D; }
    #screen-supply .supplyDossier > .card { grid-column: 1 / -1; }
    #screen-supply .wideGrowthCard { grid-column: 1 / -1; }
    #screen-supply .growthCompareWrap { height: 350px; border: 1px solid #dfe9e7; border-radius: 10px; background: #fff; overflow: hidden; position: relative; padding: 8px; }
    #screen-supply .providerSparkCell { min-width: 132px; }
    #screen-supply .providerSpark { position: relative; height: 14px; margin: 1px 0 3px; border-radius: 999px; background: linear-gradient(90deg,#f3f8f7,#edf4f2); overflow: hidden; }
    #screen-supply .providerSpark span { position: absolute; top: 5px; height: 4px; border-radius: 999px; background: #2E9F7A; box-shadow: 0 0 0 1px rgba(46,159,122,.16); }
    #screen-supply .providerSpark span.neg { background: #A64B2D; box-shadow: 0 0 0 1px rgba(166,75,45,.16); }
    #screen-supply .providerSpark i,
    #screen-supply .providerSpark b { position: absolute; top: 3px; width: 8px; height: 8px; border-radius: 999px; transform: translateX(-50%); border: 2px solid #fff; box-shadow: 0 1px 4px rgba(19,48,47,.18); }
    #screen-supply .providerSpark i { background: #93a7a5; }
    #screen-supply .providerSpark b { background: #2E9F7A; }
    #screen-supply .providerSpark span.neg + i + b { background: #A64B2D; }
    #screen-supply .providerSparkCell small { display: block; color: #617a79; font-size: 8px; font-weight: 800; line-height: 1.15; white-space: nowrap; }
    #screen-supply .growthAxisTitle { fill: #617a79; font-size: 10px; font-weight: 900; text-transform: uppercase; letter-spacing: .06em; }
    #screen-supply .growthRegionLabel { fill: #12302f; font-size: 10px; font-weight: 800; }
    #screen-supply .growthPctLabel { fill: #2E9F7A; font-size: 10px; font-weight: 900; font-variant-numeric: tabular-nums; }
    #screen-supply .growthPctLabel.neg { fill: #A64B2D; }
    #screen-supply .regionGrowthLine { stroke: #2E9F7A; stroke-width: 5; stroke-linecap: round; opacity: .72; }
    #screen-supply .regionGrowthLine.neg { stroke: #A64B2D; opacity: .66; }
    #screen-supply .growthDotBase { fill: #93a7a5; stroke: #fff; stroke-width: 2; }
    #screen-supply .growthDotFuture { fill: #2E9F7A; stroke: #fff; stroke-width: 2; }
    #screen-supply .growthDotFuture.neg { fill: #A64B2D; }
    #screen-supply .supplyCardDeck { grid-template-columns: repeat(5,minmax(0,1fr)); margin: 12px 0 0; }
    #screen-supply .leaderCard { border-radius: 10px; border-color: #dfe9e7; box-shadow: 0 8px 22px rgba(19,48,47,.05); padding: 11px; }
    #screen-supply .leaderCard span { font-size: 8px; letter-spacing: .07em; color: #617a79; }
    #screen-supply .leaderCard em { color: #006466; font-size: 18px; }
    .methodGrid { grid-template-columns: minmax(660px,1fr) 330px; align-items: start; }
    .pipeline { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 8px; margin-bottom: 12px; }
    .pipeStep { position: relative; min-height: 134px; border: 1px solid var(--line); border-radius: 8px; background: #fff; padding: 12px; box-shadow: var(--softShadow); }
    .pipeStep:after { content: ""; position: absolute; top: 50%; right: -10px; width: 18px; height: 2px; background: var(--line); }
    .pipeStep:last-child:after { display: none; }
    .pipeStep i { width: 28px; height: 28px; display: grid; place-items: center; border-radius: 8px; background: var(--deep); color: #fff; font-style: normal; font-weight: 900; font-size: 11px; }
    .pipeStep:nth-child(2) i { background: var(--bright); }
    .pipeStep:nth-child(3) i { background: var(--jade); }
    .pipeStep:nth-child(4) i { background: var(--gold); }
    .pipeStep:nth-child(5) i { background: var(--terra); }
    .pipeStep:nth-child(6) i { background: var(--amber); }
    .pipeStep:nth-child(7) i { background: var(--rust); }
    .pipeStep b { display: block; margin-top: 10px; color: var(--ink); font-size: 13px; }
    .pipeStep small { display: block; margin-top: 5px; color: var(--muted); font-size: 10px; line-height: 1.35; }
    .formulaGrid { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 10px; margin-bottom: 12px; }
    .formula { border: 1px solid var(--line); border-radius: 8px; background: #fff; padding: 13px; }
    .formula span { color: var(--deep); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; font-weight: 900; }
    .formula b { display: block; margin-top: 7px; color: var(--ink); font-size: 16px; line-height: 1.3; }
    .confidence { display: grid; gap: 10px; }
    .scoreRing { height: 190px; display: grid; place-items: center; }
    .gapList { display: grid; gap: 7px; }
    .gap { display: flex; justify-content: space-between; gap: 8px; border: 1px solid var(--line2); border-radius: 8px; background: #fff; padding: 9px; color: var(--muted); font-size: 11px; }
    .gap b { color: var(--ink); }
    .sourceLinks { display: grid; gap: 8px; margin-top: 10px; }
    .sourceLinks a, .sourceLinks div { color: var(--deep); font-size: 11px; line-height: 1.35; text-decoration: none; }
    .emptyState { color: var(--muted); font-size: 12px; padding: 12px; }

    /* GLP-1 visual fidelity pass */
    body {
      background: #f6faf9;
      color: #102c2b;
    }
    .app { background: #f6faf9; }
    .side {
      background: #fbfdfd;
      border-right: 1px solid #dbe7e5;
      box-shadow: 1px 0 0 rgba(255,255,255,.8);
      backdrop-filter: none;
    }
    .sideBrand { padding: 18px 18px 15px; border-bottom-color: #dbe7e5; }
    .sideBrand img { width: 92px; max-height: 30px; }
    .nav { padding: 16px 10px; gap: 6px; }
    .nav button {
      min-height: 34px;
      border-radius: 8px;
      padding: 9px 10px;
      gap: 8px;
      color: #223d3c;
      font-size: 11px;
      font-weight: 800;
    }
    .nav button.on {
      background: linear-gradient(180deg,#007978,#006164);
      box-shadow: 0 10px 20px rgba(0,97,100,.22);
    }
    .nav i { width: 19px; height: 19px; border-radius: 6px; font-size: 8px; }
    .nav span { line-height: 1.12; }
    .sideStat {
      border-color: #dfe9e7;
      border-radius: 11px;
      box-shadow: 0 8px 20px rgba(19,48,47,.06);
      padding: 12px;
    }
    .sideStat span { font-size: 8px; letter-spacing: .09em; }
    .sideStat b { font-size: 18px; letter-spacing: 0; }
    .sideStat small { font-size: 10px; line-height: 1.35; }
    .top {
      position: relative;
      top: auto;
      grid-template-columns: minmax(300px,1fr) minmax(560px,.98fr);
      gap: 8px 14px;
      align-items: start;
      padding: 12px 18px 8px;
      background: #fff;
      border-bottom: 1px solid #dbe7e5;
      backdrop-filter: none;
    }
    .crumb { font-size: 9px; color: #183b3a; }
    .titleLine { margin-top: 1px; gap: 7px; }
    .top h1 { font-size: 20px; line-height: 1.05; color: #0f2827; }
    .top p { display: none; }
    .headerControls {
      grid-template-columns: minmax(210px,1.2fr) minmax(132px,.72fr) minmax(118px,.6fr) minmax(120px,.62fr);
      gap: 7px;
      align-items: end;
    }
    .field { font-size: 8px; letter-spacing: .08em; gap: 4px; }
    select {
      min-height: 34px;
      border-radius: 8px;
      border-color: #dbe7e5;
      box-shadow: none;
      font-size: 10px;
      padding: 0 9px;
    }
    .yearBox {
      min-height: 34px;
      border-color: #dbe7e5;
      border-radius: 8px;
      box-shadow: none;
      padding: 0 9px;
    }
    .yearBox b { font-size: 11px; }
    .topKpis { display: none; }
    .content { padding: 12px 18px 18px; max-width: none; }
    .grid { gap: 14px; }
    .statusPill {
      border-color: #dfe9e7;
      border-radius: 999px;
      box-shadow: 0 8px 20px rgba(19,48,47,.05);
      padding: 5px 9px;
      font-size: 9px;
      font-weight: 900;
    }
    .card, .panel {
      border-color: #dfe9e7;
      border-radius: 12px;
      background: #fff;
      box-shadow: 0 12px 34px rgba(19,48,47,.08);
    }
    .card.flat, .panel.flat {
      box-shadow: 0 8px 22px rgba(19,48,47,.05);
    }
    .panelHead {
      padding: 14px 14px 9px;
      border-bottom: 0;
      background: #fff;
    }
    .panelHead h3 { font-size: 13px; }
    .panelHead .note { font-size: 9px; font-weight: 800; }
    .body { padding: 0 14px 14px; }
    .kpi, .miniStat, .leaderCard, .toolbarBox, .anchorItem, .callout, .formula, .pipeStep {
      border-color: #dfe9e7;
      border-radius: 10px;
      box-shadow: 0 8px 22px rgba(19,48,47,.05);
    }
    .kpi { min-height: 72px; padding: 10px; border-left-width: 4px; }
    .kpi span, .metric span, .miniStat span { font-size: 8px; letter-spacing: .07em; }
    .kpi b { font-size: 19px; margin-top: 5px; }
    .kpi em { font-size: 9px; margin-top: 4px; line-height: 1.25; }
    .bigStory {
      min-height: 310px;
      padding: 16px;
      border-radius: 12px;
      background: linear-gradient(135deg,#fff 0%,#f5fbfa 58%,#fff5e8 100%);
    }
    .bigStory h3 { font-size: 25px; max-width: 640px; }
    .deltaStrip { gap: 8px; margin-top: 12px; padding-top: 12px; }
    .deltaIcon { width: 32px; height: 32px; font-size: 12px; }
    .deltaCard { grid-template-columns: 32px 1fr; }
    .deltaCard b { font-size: 17px; }
    .chip {
      border-color: #dfe9e7;
      padding: 5px 8px;
      font-size: 10px;
      box-shadow: 0 5px 14px rgba(19,48,47,.04);
    }
    .sectionBandTitle { margin: 13px 0 8px; font-size: 9px; color: #617a79; }
    .insightCard { min-height: 104px; border-left-width: 4px; padding: 12px; }
    .insightCard b { font-size: 12px; }
    .insightCard p { font-size: 11px; line-height: 1.38; }
    .nationalBoard { min-height: 310px; padding: 0; gap: 0; }
    .nationalMapWrap {
      margin: 0 14px 14px;
      min-height: 214px;
      border-color: #dfe9e7;
      border-radius: 10px;
    }
    .sectionControls {
      align-items: center;
      gap: 7px;
      margin-bottom: 12px;
      padding: 7px;
      border: 1px solid #dfe9e7;
      border-radius: 10px;
      background: #fff;
      box-shadow: 0 8px 22px rgba(19,48,47,.05);
    }
    .sectionControls .field { grid-template-columns: auto minmax(0,1fr); align-items: center; gap: 7px; }
    .sectionControls select { min-width: 190px; }
    .seg {
      min-height: 34px;
      height: 34px;
      border-radius: 8px;
      border-color: #dbe7e5;
      background: #f3f8f7;
      padding: 3px;
    }
    .seg button {
      border-radius: 6px;
      padding: 6px 9px;
      font-size: 10px;
    }
    .seg button.on {
      background: linear-gradient(180deg,#007978,#006164);
      box-shadow: 0 7px 16px rgba(0,97,100,.18);
    }
    .mapHero {
      height: calc(100vh - 206px);
      min-height: 430px;
      border-radius: 12px;
      border: 1px solid #dfe9e7;
    }
    .profilePanel { min-height: 430px; }
    .profileTop h3 { font-size: 22px; }
    .miniGrid { gap: 8px; }
    .miniStat { padding: 9px; }
    .miniStat b { font-size: 17px; }
    .profileStory p { border-radius: 10px; font-size: 11px; }
    .sparkWrap, .ageChartWrap, .supplyTrendWrap, .chartArea, .quadWrap, .hotspotWrap, .tableWrap {
      border-color: #dfe9e7;
      border-radius: 10px;
      background: #fff;
    }
    .leaderCards { gap: 8px; margin-top: 10px; }
    .leaderCard { padding: 10px; }
    .leaderCard span { font-size: 8px; }
    .leaderCard b { font-size: 12px; }
    .leaderCard em { font-size: 16px; }
    .agingStats { margin-bottom: 10px; }
    .ageChartWrap { height: 370px; }
    .callout { padding: 12px; background: linear-gradient(180deg,#fff,#f8fbfa); }
    .callout h3 { font-size: 16px; }
    .callout p { font-size: 11px; }
    .utilizationHero {
      grid-template-columns: minmax(320px,.88fr) minmax(500px,1.12fr);
      gap: 14px;
      padding: 15px;
      margin-bottom: 12px;
    }
    .utilizationHero h3 { font-size: 18px; }
    .useToolbar { gap: 9px; }
    .toolbarBox { padding: 10px; }
    .toolbarBox span { font-size: 8px; }
    .toolbarBox b { font-size: 12px; margin-top: 5px; }
    .useChartBox { min-height: 360px; }
    .useChartBox .chartArea { height: 282px; padding: 8px; }
    .tableWrap { border-radius: 10px; }
    table { font-size: 11px; }
    th { font-size: 8px; padding: 7px 8px; }
    td { padding: 8px 9px; }
    th,
    td {
      overflow: hidden;
      text-overflow: ellipsis;
      vertical-align: top;
    }
    td b,
    td em,
    td small,
    .providerStatStack strong,
    .providerStatStack small {
      overflow-wrap: anywhere;
    }
    .rankTableWrap { min-height: 468px; max-height: calc(100vh - 222px); }
    .quadWrap { height: 302px; }
    .hotspotWrap { height: 232px; }
    .marketBrief { gap: 9px; }
    .methodGrid { grid-template-columns: minmax(620px,1fr) 320px; }
    .pipeline { gap: 8px; }
    .pipeStep { min-height: 116px; padding: 11px; }
    .pipeStep:after { display: none; }
    .formulaGrid { gap: 8px; }
    .formula { padding: 11px; }
    .formula span { font-size: 8px; }
    .formula b { font-size: 14px; }

    #screen-supply .supplyToolbar {
      grid-template-columns: minmax(216px,.52fr) minmax(540px,1.4fr) minmax(205px,.48fr);
      gap: 7px;
      align-items: stretch;
      background: #fff;
      border-color: #dfe9e7;
      border-radius: 10px;
      padding: 7px;
      box-shadow: 0 8px 22px rgba(19,48,47,.05);
      margin: 10px 0 12px;
    }
    #screen-supply .controlGroup {
      border-color: #edf3f2;
      border-radius: 8px;
      background: #f8fbfa;
      padding: 6px;
      gap: 5px;
    }
    #screen-supply .controlGroup .label {
      min-height: 16px;
      padding: 0 3px;
      font-size: 8px;
      letter-spacing: .07em;
    }
    #screen-supply .controlGroup .label b { font-size: 8px; color: #617a79; }
    #screen-supply .supplyMetricGrid {
      grid-template-columns: repeat(6,minmax(82px,1fr));
      gap: 4px;
    }
    #screen-supply .metricChoice {
      min-height: 34px;
      border-color: transparent;
      border-radius: 7px;
      background: transparent;
      padding: 6px 7px;
      text-align: center;
    }
    #screen-supply .metricChoice:hover {
      border-color: #dbe7e5;
      background: #fff;
      transform: none;
    }
    #screen-supply .metricChoice.on {
      border-color: #006466;
      background: #006466;
      color: #fff;
      box-shadow: 0 7px 16px rgba(0,97,100,.18);
    }
    #screen-supply .metricChoice span {
      font-size: 9px;
      line-height: 1.08;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    #screen-supply .metricChoice small,
    #screen-supply .sortHint {
      display: none;
    }
    #screen-supply .supplyMapWrap {
      height: calc(100vh - 330px);
      min-height: 330px;
      max-height: 480px;
    }
    #screen-supply .metricRibbon { gap: 9px; }
    #screen-supply .metricCard { padding: 11px; }
    #screen-supply .profileDossierGrid { gap: 14px; }
    #screen-supply .flowStage { border-radius: 10px; }
    #screen-supply .mapDataWrap { max-height: 402px; }

    /* GLP console architecture */
    .app { grid-template-columns: 166px 1fr; }
    .sideBrand img { width: 86px; }
    .nav button {
      min-height: 38px;
      font-size: 12px;
      gap: 9px;
      padding: 10px 12px;
    }
    .nav i {
      width: 18px;
      height: 18px;
      border: 0;
      font-size: 0;
      overflow: visible;
      display: inline-grid;
      place-items: center;
      flex: 0 0 18px;
    }
    .nav button:nth-child(1) i:before { content: "M"; }
    .nav button:nth-child(2) i:before { content: "P"; }
    .nav button:nth-child(3) i:before { content: "A"; }
    .nav button:nth-child(4) i:before { content: "F"; }
    .nav button:nth-child(5) i:before { content: "L"; }
    .nav button:nth-child(6) i:before { content: "S"; }
    .nav button:nth-child(7) i:before { content: "E"; }
    .nav i:before {
      display: inline-grid;
      place-items: center;
      width: 18px;
      height: 18px;
      border-radius: 6px;
      border: 1px solid currentColor;
      font-size: 8px;
      font-weight: 900;
    }
    .sideStats {
      margin-top: 36px;
      padding: 0 10px 12px;
    }
    .sideStat:not(:last-child) { display: none; }
    .sideStat:last-child { display: block; }
    .top {
      grid-template-columns: minmax(420px,1fr) auto;
      padding: 14px 22px 12px;
    }
    .headerControls {
      grid-column: 1 / -1;
      display: flex;
      flex-wrap: wrap;
      justify-content: flex-start;
      gap: 8px;
      align-items: end;
      margin-top: 2px;
    }
    .headerControls .field { min-width: 190px; }
    .headerControls .field:first-child { min-width: 420px; }
    .regionPicker { grid-template-columns: 300px minmax(180px,1fr); align-items: center; gap: 8px; }
    .topKpis {
      display: grid;
      grid-column: 1 / -1;
      grid-template-columns: repeat(5,minmax(0,1fr));
      gap: 10px;
      margin-top: 10px;
    }
    .topKpis .kpi {
      min-height: 74px;
      border-radius: 11px;
      border-left-width: 1px;
      padding: 12px;
      box-shadow: 0 8px 22px rgba(19,48,47,.05);
    }
    .topKpis .kpi b { font-size: 19px; margin-top: 5px; }
    .topKpis .kpi em { font-size: 9px; }
    .content { padding: 14px 22px 24px; }
    body[data-section="national"] .topKpis,
    body[data-section="explorer"] .topKpis,
    body[data-section="aging"] .topKpis,
    body[data-section="curves"] .topKpis,
    body[data-section="leaders"] .topKpis,
    body[data-section="method"] .topKpis { display: grid; }
    body[data-section="supply"] .topKpis { display: grid; }
    .glpCommand {
      display: flex;
      gap: 8px;
      align-items: center;
      flex-wrap: wrap;
      margin: 0 0 12px;
    }
    .glpCommand .seg { min-width: 330px; }
    .glpCommand .field {
      display: grid;
      grid-template-columns: auto minmax(240px,1fr);
      gap: 8px;
      align-items: center;
      min-width: 420px;
      height: 38px;
      border: 1px solid #dbe7e5;
      border-radius: 10px;
      background: #fff;
      padding: 0 10px;
      box-shadow: 0 8px 22px rgba(19,48,47,.04);
    }
    .glpCommand .field select {
      border: 0;
      min-height: 30px;
      box-shadow: none;
      padding: 0;
    }
    .glpMetricRow {
      display: grid;
      grid-template-columns: repeat(6,minmax(0,1fr));
      gap: 10px;
      margin-bottom: 14px;
    }
    .glpMetric {
      border: 1px solid #dfe9e7;
      border-radius: 12px;
      background: #fff;
      padding: 13px;
      box-shadow: 0 8px 22px rgba(19,48,47,.05);
      min-width: 0;
    }
    .glpMetric span {
      display: block;
      font-size: 9px;
      color: #617a79;
      letter-spacing: .08em;
      text-transform: uppercase;
      font-weight: 900;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .glpMetric b {
      display: block;
      margin-top: 5px;
      font-size: 22px;
      color: #006466;
      font-weight: 900;
      font-variant-numeric: tabular-nums;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: clip;
    }
    .glpMetric em {
      display: block;
      margin-top: 3px;
      color: #617a79;
      font-size: 10px;
      font-style: normal;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .exploreGrid {
      display: grid;
      grid-template-columns: minmax(720px,1fr) 460px;
      gap: 16px;
      align-items: stretch;
    }
    .glpMapCard, .baselineCard { min-height: 640px; }
    .glpMapWrap {
      position: relative;
      height: 548px;
      border: 1px solid #dfe9e7;
      border-radius: 10px;
      background: #fff;
      overflow: hidden;
    }
    .glpMapWrap .legend {
      left: 18px;
      bottom: 18px;
      width: 340px;
      border-radius: 10px;
    }
    .mapToolStack {
      position: absolute;
      left: 18px;
      top: 140px;
      display: grid;
      gap: 8px;
      z-index: 4;
    }
    .mapToolStack button {
      width: 32px;
      height: 32px;
      border: 1px solid #dbe7e5;
      border-radius: 8px;
      background: #fff;
      color: #294746;
      font-weight: 900;
      box-shadow: 0 8px 20px rgba(19,48,47,.08);
    }
    .baselineTiles {
      display: grid;
      grid-template-columns: repeat(3,minmax(0,1fr));
      gap: 9px;
      margin-top: 12px;
    }
    .baselineTile {
      min-height: 75px;
      border: 1px solid #dfe9e7;
      border-radius: 10px;
      background: #fff;
      padding: 10px;
      min-width: 0;
      box-shadow: 0 8px 22px rgba(19,48,47,.04);
    }
    .baselineTile span {
      display: block;
      font-size: 8px;
      letter-spacing: .08em;
      text-transform: uppercase;
      font-weight: 900;
      color: #617a79;
    }
    .baselineTile b {
      display: block;
      margin-top: 4px;
      color: #006466;
      font-size: 18px;
      font-weight: 900;
      font-variant-numeric: tabular-nums;
    }
    .baselineTile em {
      display: block;
      margin-top: 2px;
      color: #617a79;
      font-size: 9px;
      font-style: normal;
      line-height: 1.2;
    }
    .flowBars {
      display: grid;
      gap: 11px;
      margin-top: 16px;
      padding-top: 16px;
      border-top: 1px solid #edf3f2;
    }
    .flowBar {
      display: grid;
      grid-template-columns: 150px 1fr 82px;
      gap: 10px;
      align-items: center;
      color: #294746;
      font-size: 11px;
      font-weight: 900;
    }
    .flowBar .track { height: 12px; }
    .flowBar b {
      text-align: right;
      color: #006466;
      font-variant-numeric: tabular-nums;
    }
    .tableCard { margin-top: 16px; }
    .tableTitleRow {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      padding: 15px 16px 8px;
    }
    .tableTitleRow h2 {
      margin: 0;
      font-size: 15px;
      font-weight: 900;
      color: #102c2b;
    }
    .tableTitleRow span {
      color: #617a79;
      font-size: 9px;
      font-weight: 900;
      letter-spacing: .08em;
      text-transform: uppercase;
    }
    .glpTableWrap {
      max-height: 360px;
      overflow: auto;
      border-top: 1px solid #edf3f2;
    }
    .glpTableWrap table { min-width: 1180px; font-size: 10px; }
    .glpTableWrap th { font-size: 8px; padding: 8px 10px; }
    .glpTableWrap td { padding: 9px 10px; }
    .glpTableWrap td b {
      display: block;
      color: #102c2b;
      font-size: 11px;
      line-height: 1.2;
    }
    .glpTableWrap td em {
      display: block;
      margin-top: 2px;
      color: #617a79;
      font-size: 9px;
      font-style: normal;
    }
    .countyProfileInsights {
      padding: 0 14px 14px;
      border-top: 1px solid #edf3f2;
    }
    .countyInsightGrid {
      display: grid;
      grid-template-columns: minmax(320px,.88fr) minmax(420px,1.12fr);
      gap: 12px;
      align-items: stretch;
    }
    .countyChartPanel {
      min-width: 0;
      border: 1px solid #dfe9e7;
      border-radius: 10px;
      background: linear-gradient(180deg,#fff,#f8fbfa);
      padding: 12px;
      box-shadow: 0 8px 22px rgba(19,48,47,.05);
    }
    .countyRevenueViz {
      display: grid;
      grid-template-columns: 1fr;
      gap: 12px;
      align-items: center;
      min-height: 250px;
    }
    .countyAgencyStack {
      min-height: 250px;
      display: grid;
      gap: 10px;
      align-content: start;
    }
    .agencyStackHero {
      display: grid;
      grid-template-columns: 1fr auto;
      gap: 8px;
      align-items: end;
      border: 1px solid #dfe9e7;
      border-radius: 8px;
      background: #fff;
      padding: 10px;
    }
    .agencyStackHero span {
      color: #617a79;
      font-size: 8px;
      font-weight: 900;
      letter-spacing: .07em;
      text-transform: uppercase;
    }
    .agencyStackHero b {
      display: block;
      margin-top: 4px;
      color: #006466;
      font-size: 22px;
      line-height: 1;
      font-weight: 900;
      font-variant-numeric: tabular-nums;
    }
    .agencyStackHero em {
      color: #617a79;
      font-size: 10px;
      font-style: normal;
      font-weight: 800;
    }
    .agencyStackBar {
      height: 42px;
      display: flex;
      overflow: hidden;
      border-radius: 9px;
      border: 1px solid #dfe9e7;
      background: #eef6f4;
    }
    .agencyStackSegment {
      min-width: 2px;
      height: 100%;
      background: var(--agency-color);
      border-right: 1px solid rgba(255,255,255,.72);
    }
    .agencyStackRows {
      max-height: 170px;
      overflow: auto;
      display: grid;
      gap: 6px;
      padding-right: 2px;
    }
    .agencyStackRow {
      display: grid;
      grid-template-columns: 10px minmax(0,1fr) auto auto;
      gap: 7px;
      align-items: center;
      color: #294746;
      font-size: 10px;
      font-weight: 850;
    }
    .agencyStackRow i {
      width: 10px;
      height: 10px;
      border-radius: 3px;
      background: var(--agency-color);
    }
    .agencyStackRow b {
      min-width: 0;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }
    .agencyStackRow span {
      color: #617a79;
      font-variant-numeric: tabular-nums;
      white-space: nowrap;
    }
    #countyDemandTrend {
      height: 250px;
      min-height: 250px;
      border: 1px solid #edf3f2;
      border-radius: 8px;
      background: #fff;
      overflow: hidden;
    }
    .countyPieLegend {
      display: grid;
      gap: 7px;
      align-content: center;
      min-width: 0;
    }
    .countyLegendItem {
      display: grid;
      grid-template-columns: 9px minmax(0,1fr) auto;
      gap: 8px;
      align-items: center;
      min-width: 0;
      color: #294746;
      font-size: 10px;
      line-height: 1.15;
      font-weight: 800;
    }
    .countyLegendItem i {
      width: 9px;
      height: 9px;
      border-radius: 999px;
      background: var(--slice-color, #006466);
      box-shadow: 0 0 0 2px rgba(0,100,102,.08);
    }
    .countyLegendItem b {
      display: block;
      color: #102c2b;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }
    .countyLegendItem span {
      color: #006466;
      font-variant-numeric: tabular-nums;
      white-space: nowrap;
    }
    .countyChartEmpty {
      min-height: 250px;
      display: grid;
      place-items: center;
      border: 1px solid #edf3f2;
      border-radius: 8px;
      color: #617a79;
      font-size: 11px;
      font-weight: 900;
      text-align: center;
      background: #fff;
    }
    .providerTableCard { margin-top: 12px; }
    .providerTableWrap { max-height: 520px; }
    .providerTableWrap table { min-width: 1680px; }
    .providerTableWrap th:first-child,
    .providerTableWrap td:first-child {
      position: sticky;
      left: 0;
      z-index: 3;
      background: #fff;
      box-shadow: 1px 0 0 #edf3f2;
    }
    .providerTableWrap thead th:first-child {
      z-index: 5;
      background: #f8fbfa;
    }
    .providerTableSummary {
      display: grid;
      grid-template-columns: repeat(auto-fit,minmax(160px,1fr));
      gap: 8px;
      padding: 0 14px 12px;
    }
    .providerSummaryTile {
      border: 1px solid #dfe9e7;
      border-radius: 8px;
      background: #fff;
      padding: 10px;
      min-width: 0;
      box-shadow: 0 8px 22px rgba(19,48,47,.05);
    }
    .providerSummaryTile span {
      display: block;
      color: #617a79;
      font-size: 8px;
      font-weight: 900;
      letter-spacing: .07em;
      text-transform: uppercase;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .providerSummaryTile b {
      display: block;
      margin-top: 5px;
      color: #006466;
      font-size: 18px;
      line-height: 1;
      font-weight: 900;
      font-variant-numeric: tabular-nums;
    }
    .providerSummaryTile em {
      display: block;
      margin-top: 5px;
      color: #617a79;
      font-size: 9px;
      line-height: 1.25;
      font-style: normal;
    }
    .providerNameCell b { max-width: 240px; }
    .providerStatStack { display: grid; gap: 2px; min-width: 0; }
    .providerStatStack strong {
      display: block;
      color: #006466;
      font-size: 11px;
      line-height: 1.12;
      font-variant-numeric: tabular-nums;
      white-space: nowrap;
    }
    .providerStatStack small {
      display: block;
      color: #617a79;
      font-size: 8px;
      line-height: 1.2;
      white-space: nowrap;
    }
    .sparkCell {
      min-width: 110px;
    }
    .sparkCell strong {
      display: block;
      text-align: right;
      color: #006466;
      font-size: 11px;
      font-variant-numeric: tabular-nums;
    }
    .sparkCell .tableSpark { margin-top: 4px; }
    .profileWorkspace,
    .burdenWorkspace,
    .flowWorkspace,
    .labWorkspace,
    .evidenceWorkspace {
      display: grid;
      gap: 16px;
    }
    .profileCanvas {
      display: grid;
      grid-template-columns: minmax(460px,.75fr) minmax(640px,1.25fr);
      gap: 16px;
    }
    .profileHeroPanel .profileTop h3 { font-size: 26px; }
    .profileSignalStrip {
      display: grid;
      grid-template-columns: repeat(4,minmax(0,1fr));
      gap: 10px;
    }
    .profileSignal {
      border: 1px solid #dfe9e7;
      border-radius: 11px;
      background: linear-gradient(180deg,#fff,#f8fbfa);
      padding: 12px;
      min-width: 0;
      box-shadow: 0 8px 22px rgba(19,48,47,.05);
      position: relative;
      overflow: hidden;
    }
    .profileSignal:before {
      content: "";
      position: absolute;
      left: 0;
      top: 0;
      bottom: 0;
      width: 4px;
      background: #006466;
    }
    .profileSignal:nth-child(2):before { background: #2E9F7A; }
    .profileSignal:nth-child(3):before { background: #E8A65A; }
    .profileSignal:nth-child(4):before { background: #A64B2D; }
    .profileSignal span {
      display: block;
      font-size: 8px;
      text-transform: uppercase;
      letter-spacing: .07em;
      color: #617a79;
      font-weight: 900;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .profileSignal b {
      display: block;
      color: #006466;
      font-size: 18px;
      font-variant-numeric: tabular-nums;
      margin-top: 4px;
    }
    .profileSignal em {
      display: block;
      color: #617a79;
      font-size: 9px;
      font-style: normal;
      margin-top: 2px;
    }
    .flowCanvas {
      min-height: 330px;
      display: grid;
      grid-template-columns: 1fr 1fr 1fr 1fr;
      gap: 12px;
      align-items: stretch;
      padding: 14px;
      border: 1px solid #dfe9e7;
      border-radius: 12px;
      background: linear-gradient(180deg,#fff,#f8fbfa);
    }
    .flowStage {
      border: 1px solid #dfe9e7;
      border-radius: 12px;
      background: #fff;
      padding: 14px;
      display: flex;
      flex-direction: column;
      justify-content: center;
      text-align: center;
      box-shadow: 0 8px 22px rgba(19,48,47,.05);
    }
    .flowStage.soft { background: #d9f1ef; }
    .flowStage.warn { background: #ffe7dd; }
    .flowStage strong {
      display: block;
      color: #006466;
      font-size: 24px;
      font-variant-numeric: tabular-nums;
    }
    .flowStage span {
      display: block;
      color: #617a79;
      font-size: 9px;
      text-transform: uppercase;
      font-weight: 900;
      letter-spacing: .07em;
    }
    .flowStage p {
      margin: 8px 0 0;
      color: #617a79;
      font-size: 10px;
      line-height: 1.35;
    }
    .labHero {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 14px;
      margin-bottom: 14px;
    }
    .labNarrative {
      border: 1px solid #dfe9e7;
      border-radius: 12px;
      background: linear-gradient(135deg,#fff 0%,#f5fbfa 58%,#fff5e8 100%);
      padding: 15px;
      box-shadow: 0 12px 34px rgba(19,48,47,.08);
    }
    .labNarrative h3 {
      margin: 4px 0 5px;
      font-size: 18px;
      color: #0f2827;
    }
    .labNarrative p {
      margin: 0;
      color: #617a79;
      font-size: 11px;
      line-height: 1.55;
    }
    .labHero .glpMetricRow {
      grid-template-columns: repeat(2,minmax(0,1fr));
      gap: 9px;
      margin: 0;
    }
    .profileReadSummary {
      color: #617a79;
      font-size: 12px;
      line-height: 1.5;
      margin: 10px 0 0;
    }
    .mapSideSectionTitle {
      margin: 16px 0 8px;
      color: #617a79;
      font-size: 8px;
      letter-spacing: .08em;
      text-transform: uppercase;
      font-weight: 900;
    }
    .primaryBtn {
      width: 100%;
      margin-top: 16px;
      border: 0;
      border-radius: 9px;
      background: linear-gradient(180deg,#007978,#006164);
      color: #fff;
      font-size: 11px;
      font-weight: 900;
      padding: 11px 12px;
      box-shadow: 0 10px 20px rgba(0,97,100,.18);
    }
    .flowWorkspace .profileCanvas {
      grid-template-columns: minmax(760px,1fr) 360px;
    }
    .flowWorkspace .useCharts {
      grid-template-columns: repeat(3,minmax(0,1fr));
      gap: 12px;
    }
    .flowWorkspace .useChartBox {
      min-height: 365px;
    }
    .flowWorkspace .useChartBox .chartArea {
      height: 280px;
    }
    .evidenceWorkspace .profileCanvas {
      grid-template-columns: minmax(700px,1fr) 360px;
    }
    #screen-supply .supplyWorkspace { gap: 12px; }
    #screen-supply .labHero {
      grid-template-columns: minmax(360px,.58fr) minmax(620px,1.42fr);
      margin-bottom: 0;
    }
    #screen-supply .labHero .glpMetricRow {
      grid-template-columns: repeat(3,minmax(0,1fr));
      gap: 9px;
      margin: 0;
    }
    #screen-supply .labHero .glpMetric {
      min-height: 76px;
      padding: 11px;
    }
    #screen-supply .labHero .glpMetric b { font-size: 19px; }
    #screen-supply .supplyToolbar { margin: 0 0 2px; }
    #screen-supply .supplyCanvas {
      grid-template-columns: minmax(720px,1fr) minmax(360px,420px);
    }
    #screen-supply .supplyProfile .profileSignalStrip {
      grid-template-columns: repeat(2,minmax(0,1fr));
    }
    #screen-supply .supplyProfile .profileSignal span {
      white-space: normal;
      line-height: 1.18;
    }
    #screen-supply .supplyDossier {
      grid-template-columns: minmax(430px,.78fr) minmax(620px,1.22fr);
    }

    /* Strict GLP formatting pass */
    .app { grid-template-columns: 166px minmax(0,1fr); background: #f6faf9; }
    .side {
      background: #fbfdfd;
      border-right: 1px solid #d9e7e4;
    }
    .sideBrand {
      min-height: 88px;
      display: flex;
      align-items: center;
      padding: 0 22px;
      border-bottom: 1px solid #d9e7e4;
    }
    .sideBrand img { width: 92px; max-height: 32px; }
    .nav {
      padding: 24px 12px;
      gap: 12px;
    }
    .nav button {
      min-height: 48px;
      border-radius: 10px;
      padding: 0 18px;
      gap: 12px;
      font-size: 13px;
      font-weight: 900;
      color: #243f3e;
    }
    .nav button.on {
      background: #007c7a;
      box-shadow: 0 14px 26px rgba(0,100,102,.20);
    }
    .nav i,
    .nav i:before {
      width: 18px;
      height: 18px;
      border-radius: 0;
    }
    .nav i {
      font-size: 0;
      border: 0;
      display: inline-grid;
      place-items: center;
    }
    .nav button i:before {
      content: none !important;
      display: none !important;
    }
    .nav i svg {
      width: 18px;
      height: 18px;
      stroke: currentColor;
      stroke-width: 2.2;
      fill: none;
      stroke-linecap: round;
      stroke-linejoin: round;
    }
    .sideStats {
      margin-top: 138px;
      padding: 0 14px 18px;
    }
    .sideStat {
      border-radius: 12px;
      padding: 16px;
      box-shadow: 0 10px 24px rgba(19,48,47,.06);
    }
    .sideStat span { font-size: 9px; }
    .sideStat b { font-size: 22px; line-height: .95; }

    .top {
      grid-template-columns: 1fr;
      padding: 15px 28px 10px;
      gap: 0;
      background: #fff;
      border-bottom: 1px solid #d9e7e4;
      position: relative;
    }
    .utilityBtns {
      position: absolute;
      top: 18px;
      right: 28px;
      display: flex;
      gap: 8px;
      align-items: center;
    }
    .utilityBtns button {
      width: 32px;
      height: 32px;
      display: inline-grid;
      place-items: center;
      border: 1px solid #d9e7e4;
      border-radius: 9px;
      background: #fff;
      color: #607876;
      box-shadow: 0 6px 16px rgba(19,48,47,.04);
    }
    .utilityBtns svg {
      width: 16px;
      height: 16px;
      fill: none;
      stroke: currentColor;
      stroke-width: 2;
      stroke-linecap: round;
      stroke-linejoin: round;
    }
    .crumb {
      color: #193b3a;
      font-size: 10px;
      letter-spacing: .16em;
      line-height: 1;
    }
    .titleLine {
      margin-top: 5px;
      gap: 12px;
    }
    .top h1 {
      font-size: 26px;
      line-height: 1;
      letter-spacing: -.01em;
    }
    .statusPill {
      padding: 7px 12px;
      border-radius: 999px;
      font-size: 11px;
      line-height: 1;
      box-shadow: none;
    }
    .headerControls {
      grid-column: 1 / -1;
      display: grid;
      grid-template-columns: minmax(420px,1.15fr) minmax(190px,.52fr) minmax(190px,.52fr) minmax(190px,.52fr);
      gap: 14px;
      align-items: center;
      margin-top: 12px;
    }
    .headerControls .field {
      min-width: 0;
      height: 44px;
      display: grid;
      grid-template-columns: auto minmax(0,1fr);
      align-items: center;
      gap: 12px;
      border: 1px solid #d9e7e4;
      border-radius: 11px;
      background: #fff;
      padding: 0 14px;
      box-shadow: 0 1px 2px rgba(19,48,47,.05);
      color: #6d8583;
      font-size: 9px;
      letter-spacing: .14em;
    }
    .headerControls .field:first-child {
      min-width: 0;
      height: 44px;
      border: 0;
      padding: 0;
      background: transparent;
      box-shadow: none;
      font-size: 0;
      display: block;
    }
    .regionPicker {
      display: grid;
      grid-template-columns: minmax(270px,1fr) minmax(138px,.52fr);
      align-items: stretch;
      gap: 10px;
      width: 100%;
    }
    .headerControls select,
    .yearBox {
      min-height: 28px;
      height: 28px;
      border: 0;
      box-shadow: none;
      background: transparent;
      padding: 0;
      font-size: 13px;
      font-weight: 900;
      color: #173332;
    }
    .regionPicker select {
      min-height: 44px;
      height: 44px;
      border: 1px solid #d9e7e4;
      border-radius: 11px;
      background: #fff;
      padding: 0 14px;
      box-shadow: 0 1px 2px rgba(19,48,47,.05);
    }
    .yearBox {
      grid-template-columns: minmax(72px,1fr) auto;
      gap: 7px;
    }
    .yearBox input[type="range"] { min-width: 0; }
    .yearBox b { font-size: 15px; }
    .seg {
      min-height: 44px;
      height: 44px;
      padding: 4px;
      border-radius: 11px;
      border-color: #d9e7e4;
      background: #f2f8f7;
    }
    .seg button {
      border-radius: 8px;
      font-size: 12px;
      font-weight: 900;
      padding: 8px 10px;
    }
    .seg button.on {
      background: #007c7a;
      box-shadow: 0 10px 20px rgba(0,100,102,.18);
    }
    .topKpis {
      grid-template-columns: repeat(5,minmax(0,1fr));
      gap: 14px;
      margin-top: 12px;
    }
    .topKpis .kpi {
      min-height: 64px;
      border-radius: 12px;
      padding: 10px 14px;
      border-left-width: 1px;
      box-shadow: 0 8px 22px rgba(19,48,47,.04);
    }
    .topKpis .kpi span { font-size: 9px; letter-spacing: .10em; }
    .topKpis .kpi b { font-size: 20px; line-height: 1; margin-top: 5px; }
    .topKpis .kpi em { font-size: 10px; margin-top: 4px; }
    .content { padding: 14px 28px 28px; max-width: none; }

    .card, .panel {
      border-radius: 12px;
      border-color: #d9e7e4;
      box-shadow: 0 10px 26px rgba(19,48,47,.06);
    }
    .hd {
      padding: 16px 18px 8px;
      gap: 10px;
    }
    .hd h2 {
      font-size: 16px;
      line-height: 1.05;
      letter-spacing: 0;
      color: #102c2b;
    }
    .hd .right {
      font-size: 10px;
      color: #6d8583;
      font-weight: 900;
    }
    .bd { padding: 0 18px 18px; }

    #screen-national > .glpCommand {
      margin-bottom: 18px;
    }
    #nationalKpis { display: none; }
    .glpCommand {
      gap: 14px;
      margin-bottom: 18px;
    }
    .glpCommand .seg {
      min-width: 450px;
      max-width: 560px;
      flex: 0 1 450px;
    }
    .glpCommand .field {
      min-width: 560px;
      height: 48px;
      border-radius: 11px;
      padding: 0 14px;
      box-shadow: 0 1px 2px rgba(19,48,47,.05);
      font-size: 9px;
      letter-spacing: .12em;
    }
    .glpCommand .field select {
      min-height: 34px;
      height: 34px;
      font-size: 13px;
    }
    .glpMetricRow {
      gap: 14px;
      margin-bottom: 18px;
    }
    .glpMetric {
      border-radius: 12px;
      padding: 16px 18px;
      box-shadow: 0 8px 22px rgba(19,48,47,.04);
    }
    .glpMetric span { font-size: 9px; letter-spacing: .10em; }
    .glpMetric b { font-size: 26px; line-height: 1; margin-top: 8px; }
    .glpMetric em { font-size: 12px; margin-top: 7px; }
    .exploreGrid {
      grid-template-columns: minmax(760px,1fr) 460px;
      gap: 18px;
    }
    .glpMapCard, .baselineCard { min-height: 604px; }
    .glpMapWrap {
      height: 520px;
      border-radius: 10px;
    }
    .baselineTiles { gap: 10px; }
    .baselineTile {
      min-height: 82px;
      border-radius: 10px;
      padding: 12px;
      box-shadow: 0 8px 20px rgba(19,48,47,.04);
    }
    .baselineTile b { font-size: 22px; line-height: 1; }
    @media (max-width: 1440px) {
      .utilityBtns { display: none; }
      .growthGrid { grid-template-columns: minmax(390px,1fr) minmax(390px,1fr); }
      .marketBrief { grid-column: 1 / -1; grid-template-columns: minmax(280px,.75fr) minmax(0,1fr); align-items: start; }
      .marketBrief .miniGrid { grid-template-columns: repeat(5,minmax(0,1fr)); }
    }
    @media (max-width: 1180px) {
      .app { grid-template-columns: 1fr; }
      .side { position: relative; height: auto; grid-template-rows: auto auto; }
      .nav { grid-template-columns: repeat(3,minmax(0,1fr)); }
      .sideStats { display: none; }
      .top { position: relative; grid-template-columns: 1fr; }
      .headerControls { justify-content: flex-start; }
      .heroGrid, .explorerGrid, .agingGrid, .useGrid, .growthGrid, .supplyGrid, .supplyLower, .methodGrid, .exploreGrid, .profileCanvas, .flowWorkspace .profileCanvas, .evidenceWorkspace .profileCanvas, #screen-supply .mapStudio, #screen-supply .profileDossierGrid, #screen-supply .supplyCanvas, #screen-supply .supplyDossier, #screen-supply .supplyToolbar { grid-template-columns: 1fr; }
      .utilizationHero, .useToolbar, .migrationGrid, .labHero, .flowCanvas { grid-template-columns: 1fr; }
      .leaderCards, .storyInsightGrid, .kpiGrid, .useCharts, .pipeline, .formulaGrid, .glpMetricRow, .labHero .glpMetricRow, .baselineTiles, .profileSignalStrip, #screen-supply .metricRibbon, #screen-supply .profileSignalStrip, #screen-supply .flowCards, #screen-supply .supplyMetricGrid { grid-template-columns: repeat(2,minmax(0,1fr)); }
      .flowLinks { display: none; }
      .mapHero { height: 560px; }
    }
    @media (max-width: 720px) {
      .content, .top { padding-left: 14px; padding-right: 14px; }
      .nav { grid-template-columns: repeat(2,minmax(0,1fr)); }
      .screenHead { grid-template-columns: 1fr; }
      .screenHead h2 { font-size: 30px; }
      .headerControls, .regionPicker { display: grid; grid-template-columns: 1fr; }
      .headerControls .field, .headerControls .field:first-child, .glpCommand .field { min-width: 0; width: 100%; grid-template-columns: 1fr; height: auto; padding: 8px 10px; }
      .yearBox { grid-template-columns: 1fr auto; }
      .leaderCards, .storyInsightGrid, .kpiGrid, .useCharts, .pipeline, .formulaGrid, .miniGrid, .nationalKpiRow, .utilizationHero .kpiGrid, .supplyCardDeck, .glpMetricRow, .labHero .glpMetricRow, .baselineTiles, .profileSignalStrip, #screen-supply .metricRibbon, #screen-supply .profileSignalStrip, #screen-supply .flowCards, #screen-supply .needTiles, #screen-supply .supplyMetricGrid { grid-template-columns: 1fr; }
      .bigStory { min-height: auto; }
      .mapHero { height: 430px; min-height: 430px; }
      .profilePanel { min-height: auto; }
      .tableWrap { max-width: 100%; overflow-x: auto; }
      table { width: max-content; min-width: 640px; }
    }

    /* GLP-1 Bridge rebuild pass */
    html, body {
      background:
        radial-gradient(circle at 18% 10%, rgba(29,159,163,.20), transparent 32rem),
        radial-gradient(circle at 88% 2%, rgba(232,166,90,.22), transparent 24rem),
        linear-gradient(180deg,#f8fbfa 0%,#edf3f2 46%,#e9f0ef 100%);
      font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      font-size: 13px;
      line-height: 1.42;
      color: var(--ink);
    }
    .app {
      display: grid;
      grid-template-columns: 156px minmax(0,1fr);
      min-height: 100vh;
      background: #f6faf9;
    }
    .side {
      position: sticky;
      top: 0;
      height: 100vh;
      background: #fbfdfd;
      border-right: 1px solid #dbe7e5;
      box-shadow: 1px 0 0 rgba(255,255,255,.8);
      backdrop-filter: none;
      display: flex;
      flex-direction: column;
      z-index: 4;
    }
    .logo, .sideBrand {
      min-height: 88px;
      display: flex;
      align-items: center;
      padding: 0 20px;
      border-bottom: 1px solid #dbe7e5;
    }
    .logo img, .sideBrand img { width: 92px; max-height: 32px; display: block; object-fit: contain; }
    .nav {
      padding: 24px 10px;
      display: flex;
      flex-direction: column;
      gap: 10px;
    }
    .nav button {
      min-height: 46px;
      border: 0;
      border-radius: 10px;
      background: transparent;
      color: #243f3e;
      display: flex;
      align-items: center;
      gap: 10px;
      padding: 0 14px;
      text-align: left;
      font-size: 12px;
      font-weight: 900;
      box-shadow: none;
    }
    .nav button:hover { background: #eef6f4; color: #102c2b; }
    .nav button.on {
      background: #007c7a;
      color: #fff;
      box-shadow: 0 14px 26px rgba(0,100,102,.20);
    }
    .nav i {
      width: 18px;
      height: 18px;
      border: 0;
      display: inline-grid;
      place-items: center;
      flex: 0 0 18px;
      font-size: 0;
    }
    .nav button i:before { content: none !important; display: none !important; }
    .nav i svg {
      width: 17px;
      height: 17px;
      fill: none;
      stroke: currentColor;
      stroke-width: 2.15;
      stroke-linecap: round;
      stroke-linejoin: round;
    }
    .sidebox {
      margin: 12px 10px;
      border: 1px solid #dfe9e7;
      border-radius: 11px;
      background: #fff;
      padding: 12px;
      box-shadow: 0 8px 20px rgba(19,48,47,.06);
    }
    .sidebox .eyebrow {
      font-size: 8px;
      letter-spacing: .09em;
      text-transform: uppercase;
      color: #617a79;
      font-weight: 900;
    }
    .sidebox b {
      display: block;
      margin-top: 5px;
      color: #006466;
      font-size: 18px;
      line-height: 1;
      font-weight: 900;
      letter-spacing: 0;
    }
    .sidebox span {
      display: block;
      margin-top: 4px;
      color: #617a79;
      font-size: 10px;
      line-height: 1.35;
    }
    .sidebox .navAction {
      width: 100%;
      margin-top: 10px;
      border: 0;
      border-radius: 7px;
      background: #006466;
      color: #fff;
      font-size: 10px;
      font-weight: 900;
      padding: 8px;
    }
    .sideStats { display: none; }
    .sidefoot {
      margin-top: auto;
      padding: 12px 14px;
      color: #617a79;
      font-size: 9px;
      line-height: 1.45;
      border-top: 1px solid #dbe7e5;
    }
    .main { min-width: 0; }
    .top {
      position: sticky;
      top: 0;
      z-index: 3;
      display: block;
      padding: 18px 26px 14px;
      background: rgba(255,255,255,.66);
      border-bottom: 1px solid rgba(220,232,230,.8);
      backdrop-filter: blur(14px);
    }
    .toprow {
      display: flex;
      gap: 18px;
      align-items: flex-start;
    }
    .spacer { flex: 1; }
    .crumb {
      color: #617a79;
      font-size: 11px;
      letter-spacing: .08em;
      text-transform: uppercase;
      font-weight: 900;
      line-height: 1.1;
    }
    .top h1 {
      margin: 3px 0 4px;
      color: #12302f;
      font-size: 26px;
      line-height: 1.05;
      font-weight: 900;
      letter-spacing: 0;
    }
    .subtitle {
      color: #617a79;
      font-size: 12px;
      line-height: 1.38;
      max-width: 760px;
    }
    .controls {
      display: flex;
      gap: 9px;
      align-items: stretch;
      justify-content: flex-end;
      flex-wrap: wrap;
      max-width: 1040px;
    }
    .seg {
      display: inline-flex;
      align-items: center;
      gap: 3px;
      height: 42px;
      min-height: 42px;
      padding: 3px;
      border: 1px solid #dce8e6;
      border-radius: 10px;
      background: rgba(238,246,244,.9);
    }
    .seg button {
      border: 0;
      background: transparent;
      border-radius: 7px;
      padding: 8px 11px;
      color: #617a79;
      font-size: 12px;
      font-weight: 800;
      white-space: nowrap;
    }
    .seg button.on {
      color: #fff;
      background: linear-gradient(135deg,#006466,#0A7E82);
      box-shadow: 0 7px 16px rgba(0,100,102,.18);
    }
    .selectbox {
      height: 42px;
      border: 1px solid #dce8e6;
      border-radius: 10px;
      background: #fff;
      display: flex;
      align-items: center;
      gap: 7px;
      padding: 0 10px;
      box-shadow: 0 1px 2px rgba(19,48,47,.08), 0 10px 28px rgba(19,48,47,.08);
      min-width: 0;
    }
    .selectbox label {
      color: #617a79;
      font-size: 10px;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: .05em;
      white-space: nowrap;
    }
    .selectbox select {
      min-width: 150px;
      height: 36px;
      border: 0;
      border-radius: 0;
      background: transparent;
      box-shadow: none;
      outline: 0;
      color: #12302f;
      font-size: 12px;
      font-weight: 800;
      padding: 0;
    }
    .selectbox.regionBox select { min-width: 210px; }
    .yearBox {
      display: grid;
      grid-template-columns: minmax(86px,1fr) auto;
      gap: 7px;
      align-items: center;
      height: 36px;
      min-height: 36px;
      border: 0;
      border-radius: 0;
      background: transparent;
      box-shadow: none;
      padding: 0;
    }
    .yearBox b {
      color: #006466;
      font-size: 13px;
      font-weight: 900;
      font-variant-numeric: tabular-nums;
    }
    input[type="range"] { accent-color: #006466; }
    .topActions, .utilityBtns {
      position: absolute;
      top: 18px;
      right: 26px;
      display: flex;
      gap: 8px;
      align-items: center;
    }
    .topActions button, .utilityBtns button {
      width: 32px;
      height: 32px;
      display: inline-grid;
      place-items: center;
      border: 1px solid #dce8e6;
      border-radius: 9px;
      background: #fff;
      color: #617a79;
      box-shadow: 0 6px 16px rgba(19,48,47,.04);
    }
    .topActions svg, .utilityBtns svg {
      width: 16px;
      height: 16px;
      fill: none;
      stroke: currentColor;
      stroke-width: 2;
      stroke-linecap: round;
      stroke-linejoin: round;
    }
    .kpis, .topKpis {
      display: grid;
      grid-template-columns: repeat(5, minmax(0,1fr));
      gap: 10px;
      margin-top: 14px;
    }
    .kpi {
      min-height: 74px;
      border: 1px solid #dce8e6;
      border-left-width: 1px;
      border-radius: 13px;
      background: #fff;
      padding: 12px 13px;
      box-shadow: 0 1px 2px rgba(19,48,47,.08), 0 10px 28px rgba(19,48,47,.08);
      min-width: 0;
    }
    .kpi .l {
      color: #617a79;
      font-size: 10px;
      letter-spacing: .06em;
      text-transform: uppercase;
      font-weight: 900;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .kpi .v {
      margin-top: 6px;
      color: #006466;
      font-size: 22px;
      line-height: 1.05;
      font-weight: 900;
      letter-spacing: 0;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: clip;
    }
    .kpi .d {
      margin-top: 4px;
      color: #617a79;
      font-size: 11px;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .content {
      padding: 18px 26px 32px;
      max-width: none;
    }
    .screen { display: none; }
    .screen.on { display: block; }
    .card, .panel {
      background: rgba(255,255,255,.86);
      border: 1px solid rgba(220,232,230,.95);
      border-radius: 18px;
      box-shadow: 0 18px 55px rgba(19,48,47,.12), 0 2px 8px rgba(19,48,47,.07);
      min-width: 0;
      overflow: hidden;
    }
    .card.flat, .tableCard {
      box-shadow: 0 1px 2px rgba(19,48,47,.08), 0 10px 28px rgba(19,48,47,.08);
    }
    .hd {
      display: flex;
      align-items: center;
      gap: 10px;
      padding: 15px 16px 10px;
    }
    .hd h2 {
      margin: 0;
      color: #12302f;
      font-size: 15px;
      line-height: 1.1;
      font-weight: 900;
      letter-spacing: 0;
    }
    .hd .right {
      margin-left: auto;
      color: #617a79;
      font-size: 11px;
      font-weight: 800;
    }
    .bd { padding: 0 16px 16px; }
    .glpCommand {
      display: flex;
      gap: 9px;
      align-items: stretch;
      flex-wrap: wrap;
      justify-content: flex-start;
      margin: 0 0 12px;
    }
    .glpCommand .seg { min-width: 300px; }
    .glpCommand .field {
      height: 42px;
      min-width: 390px;
      border: 1px solid #dce8e6;
      border-radius: 10px;
      background: #fff;
      display: grid;
      grid-template-columns: auto minmax(0,1fr);
      gap: 10px;
      align-items: center;
      padding: 0 10px;
      box-shadow: 0 1px 2px rgba(19,48,47,.08), 0 10px 28px rgba(19,48,47,.08);
      color: #617a79;
      font-size: 10px;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: .05em;
    }
    .glpCommand .field select {
      border: 0;
      box-shadow: none;
      background: transparent;
      min-height: 36px;
      padding: 0;
      font-size: 12px;
      color: #12302f;
    }
    .glpMetricRow {
      display: grid;
      grid-template-columns: repeat(6, minmax(0,1fr));
      gap: 10px;
      margin-bottom: 14px;
    }
    .glpMetric, .baselineTile, .profileSignal, .dataTile, .miniStat {
      border: 1px solid #dce8e6;
      border-radius: 13px;
      background: #fff;
      padding: 12px 13px;
      box-shadow: 0 1px 2px rgba(19,48,47,.08), 0 10px 28px rgba(19,48,47,.08);
      min-width: 0;
    }
    .glpMetric span, .baselineTile span, .profileSignal span, .dataTile span, .miniStat span {
      color: #617a79;
      font-size: 10px;
      letter-spacing: .06em;
      text-transform: uppercase;
      font-weight: 900;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .glpMetric b, .baselineTile b, .profileSignal b, .dataTile b, .miniStat b {
      display: block;
      margin-top: 6px;
      color: #006466;
      font-size: 22px;
      line-height: 1.05;
      font-weight: 900;
      font-variant-numeric: tabular-nums;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: clip;
    }
    .glpMetric em, .baselineTile em, .profileSignal em, .dataTile em, .miniStat small {
      display: block;
      margin-top: 4px;
      color: #617a79;
      font-size: 11px;
      font-style: normal;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .exploreGrid, .mapStudio {
      display: grid;
      grid-template-columns: minmax(540px, 1.35fr) minmax(360px, .65fr);
      gap: 14px;
      align-items: start;
    }
    .glpMapCard, .baselineCard, .mapStage, .mapProfileCard {
      min-height: 620px;
    }
    .glpMapWrap, .mapwrap {
      position: relative;
      height: 548px;
      border: 1px solid #dce8e6;
      border-radius: 14px;
      background: #fff;
      overflow: hidden;
    }
    .mapSvg {
      width: 100%;
      height: 100%;
      display: block;
      background: #fff;
    }
    .legend {
      position: absolute;
      left: 16px;
      bottom: 14px;
      width: min(340px, 55%);
      background: rgba(255,255,255,.94);
      border: 1px solid #dce8e6;
      border-radius: 10px;
      padding: 10px;
      color: #617a79;
      font-size: 11px;
      font-weight: 800;
      box-shadow: 0 10px 28px rgba(19,48,47,.12);
      backdrop-filter: blur(10px);
    }
    .legendBar {
      height: 10px;
      border-radius: 999px;
      margin: 7px 0 6px;
      background: linear-gradient(90deg,#d8efec,#9bd8d2,#4ebbb3,#1D9FA3,#2E9F7A,#E8A65A,#D26F2D,#A64B2D,#5C2418);
    }
    .legendScale {
      display: flex;
      justify-content: space-between;
      gap: 10px;
      color: #12302f;
      font-weight: 900;
    }
    .mapToolStack {
      position: absolute;
      left: 18px;
      top: 140px;
      display: grid;
      gap: 8px;
      z-index: 4;
    }
    .mapToolStack button {
      width: 32px;
      height: 32px;
      border: 1px solid #dce8e6;
      border-radius: 8px;
      background: #fff;
      color: #294746;
      font-weight: 900;
      box-shadow: 0 8px 20px rgba(19,48,47,.08);
    }
    .baselineTiles {
      display: grid;
      grid-template-columns: repeat(3,minmax(0,1fr));
      gap: 8px;
      margin-top: 12px;
    }
    .flowBars, .bars {
      display: grid;
      gap: 9px;
      margin-top: 12px;
    }
    .flowBar {
      display: grid;
      grid-template-columns: 124px 1fr 64px;
      gap: 8px;
      align-items: center;
      color: #294746;
      font-size: 11px;
      font-weight: 900;
    }
    .track {
      height: 10px;
      background: #edf4f2;
      border-radius: 999px;
      overflow: hidden;
      position: relative;
    }
    .fill {
      height: 100%;
      border-radius: 999px;
      background: linear-gradient(90deg,#1D9FA3,#006466);
    }
    .flowBar b {
      text-align: right;
      color: #006466;
      font-variant-numeric: tabular-nums;
    }
    .tableCard { margin-top: 16px; }
    .tableTitleRow {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      padding: 15px 16px 8px;
    }
    .tableTitleRow h2 {
      margin: 0;
      color: #12302f;
      font-size: 15px;
      font-weight: 900;
      letter-spacing: 0;
    }
    .tableTitleRow span {
      color: #617a79;
      font-size: 10px;
      font-weight: 900;
      letter-spacing: .05em;
      text-transform: uppercase;
    }
    .glpTableWrap, .tableWrap, .tablewrap {
      max-height: 610px;
      overflow: auto;
      border: 1px solid #dce8e6;
      border-radius: 14px;
      background: #fff;
    }
    .tableCard .glpTableWrap {
      border-left: 0;
      border-right: 0;
      border-bottom: 0;
      border-radius: 0;
      max-height: 420px;
    }
    table {
      width: 100%;
      border-collapse: collapse;
      font-size: 12px;
    }
    th {
      position: sticky;
      top: 0;
      z-index: 1;
      background: #f8fbfa;
      color: #617a79;
      font-size: 10px;
      text-transform: uppercase;
      letter-spacing: .05em;
      text-align: left;
      padding: 9px 10px;
      border-bottom: 1px solid #dce8e6;
    }
    td {
      padding: 9px 10px;
      border-bottom: 1px solid #edf3f2;
      color: #294746;
      vertical-align: middle;
    }
    td.r, th.r { text-align: right; font-variant-numeric: tabular-nums; }
    tr.clickable { cursor: pointer; }
    tr.clickable:hover td { background: #f2f8f7; }
    .sparkCell { min-width: 120px; }
    .sparkCell strong {
      display: block;
      text-align: right;
      color: #006466;
      font-size: 11px;
      font-variant-numeric: tabular-nums;
    }
    .tableSpark {
      height: 8px;
      margin-top: 4px;
      background: #edf4f2;
      border-radius: 999px;
      overflow: hidden;
    }
    .tableSpark i {
      display: block;
      height: 100%;
      border-radius: 999px;
      background: linear-gradient(90deg,#1D9FA3,#006466);
    }
    .profileWorkspace, .burdenWorkspace, .flowWorkspace, .labWorkspace, .evidenceWorkspace {
      display: grid;
      gap: 14px;
    }
    .profileCanvas {
      display: grid;
      grid-template-columns: minmax(300px,.5fr) minmax(0,1.5fr);
      gap: 14px;
      align-items: start;
    }
    .leaderCards {
      display: grid;
      grid-template-columns: repeat(4,minmax(0,1fr));
      gap: 10px;
    }
    .leaderCard {
      border: 1px solid #dce8e6;
      border-radius: 15px;
      background: #fff;
      padding: 13px;
      box-shadow: 0 1px 2px rgba(19,48,47,.08), 0 10px 28px rgba(19,48,47,.08);
      color: #12302f;
      text-align: left;
      min-width: 0;
    }
    .leaderCard span {
      display: block;
      color: #617a79;
      font-size: 10px;
      text-transform: uppercase;
      font-weight: 900;
      letter-spacing: .05em;
    }
    .leaderCard b {
      display: block;
      margin-top: 4px;
      color: #12302f;
      font-size: 14px;
      line-height: 1.16;
    }
    .leaderCard em {
      display: block;
      margin-top: 6px;
      color: #006466;
      font-size: 18px;
      font-weight: 900;
      font-style: normal;
    }
    .labHero {
      display: grid;
      grid-template-columns: minmax(360px,.8fr) minmax(560px,1.2fr);
      gap: 14px;
      align-items: stretch;
      margin-bottom: 0;
    }
    .labNarrative {
      border: 1px solid rgba(220,232,230,.95);
      border-radius: 18px;
      background: linear-gradient(135deg,#fff 0%,#f4fbfa 54%,#fff7eb 100%);
      padding: 16px;
      box-shadow: 0 18px 55px rgba(19,48,47,.12), 0 2px 8px rgba(19,48,47,.07);
    }
    .labNarrative h3 {
      margin: 5px 0 4px;
      color: #12302f;
      font-size: 25px;
      line-height: 1.04;
      font-weight: 900;
      letter-spacing: 0;
    }
    .labNarrative p {
      margin: 0;
      color: #617a79;
      font-size: 12px;
      line-height: 1.45;
    }
    .labHero .glpMetricRow {
      grid-template-columns: repeat(2,minmax(0,1fr));
      gap: 10px;
      margin: 0;
    }
    .flowCanvas {
      display: grid;
      grid-template-columns: repeat(4,minmax(0,1fr));
      gap: 10px;
      padding: 12px;
      border: 1px solid #dce8e6;
      border-radius: 14px;
      background: #fff;
    }
    .flowStage {
      border: 1px solid #dce8e6;
      border-radius: 13px;
      background: #fff;
      padding: 12px;
      text-align: center;
      display: flex;
      flex-direction: column;
      justify-content: center;
      min-height: 128px;
    }
    .flowStage.soft { background: #d9f1ef; }
    .flowStage.warn { background: #ffe7dd; }
    .flowStage span {
      color: #617a79;
      font-size: 10px;
      text-transform: uppercase;
      font-weight: 900;
      letter-spacing: .05em;
    }
    .flowStage strong {
      display: block;
      color: #006466;
      font-size: 24px;
      font-weight: 900;
      font-variant-numeric: tabular-nums;
    }
    .flowStage p {
      margin: 8px 0 0;
      color: #617a79;
      font-size: 11px;
      line-height: 1.35;
    }
    .useCharts {
      display: grid;
      grid-template-columns: repeat(3,minmax(0,1fr));
      gap: 10px;
    }
    .chartArea, .ageChartWrap, .supplyTrendWrap, .quadWrap, .hotspotWrap, .sparkWrap {
      min-height: 280px;
      border: 1px solid #dce8e6;
      border-radius: 14px;
      background: #fff;
      overflow: hidden;
    }
    .chartArea { height: 300px; }
    .profileSignalStrip, .needTiles, .miniGrid, .baselineTiles, .supplyMetricGrid {
      display: grid;
      grid-template-columns: repeat(2,minmax(0,1fr));
      gap: 9px;
    }
    .primaryBtn {
      width: 100%;
      margin-top: 16px;
      border: 0;
      border-radius: 9px;
      background: #006466;
      color: #fff;
      font-size: 11px;
      font-weight: 900;
      padding: 11px 12px;
      box-shadow: 0 10px 20px rgba(0,97,100,.18);
    }
    .screenKicker, .badge {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      border-radius: 999px;
      padding: 4px 8px;
      background: #eef6f4;
      border: 1px solid #dce8e6;
      color: #006466;
      font-size: 10px;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: .05em;
    }
    .profileReadSummary, .smallnote {
      color: #617a79;
      font-size: 12px;
      line-height: 1.45;
      margin: 0;
    }
    #screen-supply .supplyToolbar {
      display: grid;
      grid-template-columns: minmax(170px,.5fr) minmax(420px,1.45fr) minmax(170px,.5fr);
      gap: 9px;
      max-width: 100%;
      overflow: visible;
    }
    #screen-supply .supplyToolbar .controlGroup {
      min-width: 0;
      overflow: hidden;
    }
    #screen-supply .supplyToolbar .seg {
      width: 100%;
      min-width: 0;
    }
    #screen-supply .supplyToolbar .seg button {
      flex: 1;
      min-width: 0;
    }
    #screen-supply .supplyMetricGrid {
      grid-template-columns: repeat(3,minmax(0,1fr));
      min-width: 0;
    }
    #screen-supply .metricChoice {
      min-width: 0;
    }
    @media (max-width: 1180px) {
      .app { grid-template-columns: 1fr; }
      .side { position: relative; height: auto; }
      .nav { flex-direction: row; overflow: auto; padding: 12px; }
      .sidebox, .sidefoot { display: none; }
      .top { position: relative; }
      .toprow { flex-direction: column; }
      .controls { justify-content: flex-start; width: 100%; }
      .kpis, .topKpis { grid-template-columns: repeat(3,minmax(0,1fr)); }
      .exploreGrid, .mapStudio, .profileCanvas, .labHero, .flowWorkspace .profileCanvas, .evidenceWorkspace .profileCanvas, #screen-supply .supplyCanvas, #screen-supply .supplyDossier { grid-template-columns: 1fr; }
      .glpMetricRow, .leaderCards, .useCharts, .flowCanvas { grid-template-columns: repeat(2,minmax(0,1fr)); }
    }
    @media (max-width: 1440px) {
      .topActions, .utilityBtns { display: none; }
      .toprow { gap: 14px; }
      .controls {
        justify-content: flex-start;
        max-width: 100%;
      }
      .selectbox select { min-width: 118px; }
      .selectbox.regionBox select { min-width: 170px; }
      .kpis, .topKpis { grid-template-columns: repeat(5,minmax(150px,1fr)); }
      #screen-supply .supplyToolbar {
        grid-template-columns: minmax(0,1fr);
      }
      #screen-supply .supplyMetricGrid {
        grid-template-columns: repeat(2,minmax(0,1fr));
      }
    }
    @media (max-width: 760px) {
      .content, .top { padding-left: 14px; padding-right: 14px; }
      .controls, .selectbox, .glpCommand .field { width: 100%; min-width: 0; }
      .seg { width: 100%; }
      .seg button { flex: 1; }
      .kpis, .topKpis, .glpMetricRow, .leaderCards, .useCharts, .flowCanvas, .baselineTiles, .profileSignalStrip, .needTiles, .miniGrid { grid-template-columns: 1fr; }
      .glpMapWrap, .mapwrap { height: 430px; }
      .tableCard .glpTableWrap { max-width: 100%; overflow-x: auto; }
      table { width: max-content; min-width: 700px; }
    }

    /* GLP reference alignment polish */
    html, body {
      background: #f6faf9;
      color: #102c2b;
    }
    body:before { content: none !important; }
    .app { background: #f6faf9; }
    .side {
      background: #fbfdfd;
      border-right: 1px solid #dbe7e5;
    }
    .logo, .sideBrand {
      min-height: 88px;
      padding: 18px 18px 15px;
    }
    .logo img, .sideBrand img { width: 92px; }
    .nav {
      padding: 16px 10px;
      gap: 6px;
    }
    .nav button {
      min-height: 38px;
      border-radius: 8px;
      padding: 10px;
      gap: 8px;
      font-size: 11px;
      font-weight: 800;
      color: #223d3c;
    }
    .nav button.on {
      background: linear-gradient(180deg,#007978,#006164);
      box-shadow: 0 10px 20px rgba(0,97,100,.22);
    }
    .nav i, .nav i svg {
      width: 14px;
      height: 14px;
      flex-basis: 14px;
    }
    .sidebox {
      margin: 12px 10px;
      border-radius: 11px;
      border-color: #dfe9e7;
      box-shadow: 0 8px 20px rgba(19,48,47,.06);
    }
    .sidefoot { padding: 12px 14px; }
    .top {
      position: relative;
      top: auto;
      padding: 14px 18px 11px;
      background: #fff;
      border-bottom: 1px solid #dbe7e5;
      backdrop-filter: none;
    }
    .toprow {
      display: grid;
      grid-template-columns: minmax(360px,1fr) auto;
      grid-template-areas: "title actions" "controls controls";
      align-items: start;
      gap: 10px 14px;
    }
    .toprow > div:first-child { grid-area: title; }
    .spacer { display: none; }
    .crumb {
      font-size: 9px;
      color: #183b3a;
      letter-spacing: .08em;
    }
    .top h1 {
      margin: 2px 0 0;
      color: #0f2827;
      font-size: 20px;
      line-height: 1.05;
    }
    .subtitle { display: none; }
    .controls {
      grid-area: controls;
      display: grid;
      grid-template-columns: minmax(270px,.86fr) minmax(310px,1.14fr) minmax(260px,.94fr) minmax(210px,.76fr) minmax(210px,.76fr);
      gap: 8px;
      align-items: stretch;
      justify-content: stretch;
      width: 100%;
      max-width: none;
    }
    .topActions, .utilityBtns {
      position: static;
      grid-area: actions;
      display: flex;
      align-items: center;
      gap: 6px;
    }
    .topActions button, .utilityBtns button {
      width: 30px;
      height: 30px;
      border-radius: 8px;
      box-shadow: 0 5px 14px rgba(19,48,47,.05);
    }
    .seg {
      height: 34px;
      min-height: 34px;
      border-radius: 8px;
      background: #f3f8f7;
      border-color: #dbe7e5;
      box-shadow: none;
    }
    .controls > .seg {
      width: 100%;
      display: grid;
      grid-template-columns: repeat(4,minmax(0,1fr));
    }
    .seg button {
      border-radius: 6px;
      padding: 6px 9px;
      font-size: 10px;
      font-weight: 900;
      min-width: 0;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .seg button.on {
      background: linear-gradient(180deg,#007978,#006164);
      box-shadow: 0 7px 16px rgba(0,97,100,.18);
    }
    .selectbox {
      height: 34px;
      border-radius: 8px;
      box-shadow: none;
      min-width: 0;
      width: 100%;
      justify-content: stretch;
      gap: 10px;
      padding: 0 12px;
    }
    .selectbox label { font-size: 8px; flex: 0 0 auto; }
    .selectbox select {
      height: 28px;
      min-width: 0;
      width: 100%;
      font-size: 10px;
      flex: 1 1 auto;
    }
    .selectbox.regionBox select { min-width: 0; }
    .yearBox {
      height: 28px;
      min-height: 28px;
      grid-template-columns: minmax(86px,1fr) auto;
      width: 100%;
      flex: 1 1 auto;
      min-width: 0;
    }
    .yearBox b { font-size: 12px; }
    .kpis, .topKpis {
      grid-template-columns: repeat(5,minmax(0,1fr));
      gap: 9px;
      margin-top: 9px;
    }
    .kpi {
      min-height: 66px;
      border-radius: 10px;
      border-color: #dfe9e7;
      padding: 8px 10px;
      box-shadow: 0 8px 22px rgba(19,48,47,.05);
    }
    .kpi .l {
      font-size: 8px;
      letter-spacing: .08em;
    }
    .kpi .v {
      font-size: 18px;
      color: #006466;
    }
    .kpi .d { font-size: 9px; }
    .content {
      padding: 12px 18px 20px;
      max-width: none;
    }
    .screen.on,
    .profileWorkspace,
    .burdenWorkspace,
    .flowWorkspace,
    .labWorkspace,
    .evidenceWorkspace {
      gap: 12px;
    }
    .card, .panel {
      border-radius: 12px;
      border-color: #dfe9e7;
      background: #fff;
      box-shadow: 0 12px 34px rgba(19,48,47,.08);
    }
    .card.flat, .tableCard {
      box-shadow: 0 8px 22px rgba(19,48,47,.05);
    }
    .hd {
      min-height: 40px;
      padding: 14px 14px 9px;
    }
    .hd h2 { font-size: 13px; }
    .hd .right {
      font-size: 9px;
      text-transform: none;
    }
    .bd { padding: 0 14px 14px; }
    .glpCommand {
      gap: 10px;
      margin: 0 0 12px;
      align-items: center;
    }
    #screen-national > .glpCommand { margin-bottom: 12px; }
    .glpCommand .seg {
      min-width: 0;
      max-width: none;
      min-height: 36px;
      flex: 0 0 auto;
    }
    .glpCommand .field {
      height: 36px;
      min-width: 300px;
      max-width: 390px;
      flex: 0 1 390px;
      border-radius: 8px;
      border-color: #dbe7e5;
      box-shadow: 0 7px 18px rgba(19,48,47,.05);
      font-size: 8px;
      padding: 0 10px;
    }
    .glpCommand .field select {
      min-height: 30px;
      font-size: 11px;
    }
    .glpCommand .sortSeg,
    #leaderDirectionButtons,
    #supplyDirectionButtons {
      min-width: 0;
      flex: 0 0 auto;
    }
    .statusPill,
    .screenKicker,
    .badge {
      border-radius: 999px;
      border-color: #dbe7e5;
      background: #eef6f4;
      color: #006466;
      font-size: 9px;
      padding: 4px 7px;
      line-height: 1;
    }
    .glpMetricRow {
      gap: 9px;
      margin-bottom: 12px;
    }
    .glpMetric, .baselineTile, .profileSignal, .dataTile, .miniStat {
      border-radius: 10px;
      border-color: #dfe9e7;
      padding: 10px;
      background: #fff;
      box-shadow: 0 8px 22px rgba(19,48,47,.05);
    }
    .glpMetric span, .baselineTile span, .profileSignal span, .dataTile span, .miniStat span {
      font-size: 8px;
      letter-spacing: .08em;
      line-height: 1.15;
    }
    .glpMetric b, .baselineTile b, .profileSignal b, .dataTile b, .miniStat b {
      margin-top: 5px;
      font-size: 19px;
      line-height: 1.05;
      color: #006466;
    }
    .glpMetric em, .baselineTile em, .profileSignal em, .dataTile em, .miniStat small {
      margin-top: 3px;
      font-size: 9px;
      line-height: 1.2;
    }
    .leaderCards {
      grid-template-columns: repeat(5,minmax(0,1fr));
      gap: 8px;
      margin-top: 10px;
    }
    .leaderCard {
      border-radius: 10px;
      border-color: #dfe9e7;
      padding: 10px;
      box-shadow: 0 8px 22px rgba(19,48,47,.05);
    }
    .leaderCard span {
      font-size: 8px;
      letter-spacing: .07em;
    }
    .leaderCard b {
      font-size: 12px;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .leaderCard em { font-size: 16px; }
    .exploreGrid, .mapStudio {
      grid-template-columns: minmax(620px,1fr) minmax(360px,420px);
      gap: 14px;
      align-items: stretch;
    }
    .profileCanvas {
      grid-template-columns: minmax(360px,.95fr) minmax(360px,1.05fr);
      gap: 14px;
      align-items: stretch;
    }
    .exploreGrid > .card,
    .profileCanvas > .card,
    .profileCanvas > aside.card,
    .profileCanvas > article.card,
    .mapStudio > .card,
    .mapStudio > aside.card,
    .mapStage,
    .mapProfileCard {
      min-height: 0;
      height: auto;
    }
    .exploreGrid > .glpMapCard,
    .exploreGrid > .baselineCard {
      min-height: 500px;
      height: clamp(500px, calc(100vh - 270px), 620px);
    }
    .profileCanvas > .glpMapCard,
    .profileCanvas > .profileHeroPanel,
    .supplyMapStudio > div,
    .supplyMapStudio > .supplyProfile {
      min-height: 500px;
    }
    .glpMapCard .bd,
    .mapStage .bd {
      height: calc(100% - 40px);
      overflow: hidden;
    }
    .glpMapWrap, .mapwrap, .supplyMapWrap {
      position: relative;
      height: 100%;
      min-height: 330px;
      border: 1px solid #dfe9e7;
      border-radius: 10px;
      background: #fff;
      overflow: hidden;
    }
    .profileCanvas .glpMapWrap {
      height: clamp(390px, calc(100vh - 330px), 520px);
    }
    .supplyMapWrap {
      height: clamp(330px, calc(100vh - 360px), 455px);
      max-height: 455px;
    }
    .hotspotWrap.glpMapWrap {
      height: 260px;
      min-height: 250px;
    }
    .mapSvg {
      background: #fff;
      transform-origin: center center;
    }
    .county, .statepath {
      stroke: #fff;
      stroke-width: .35;
      vector-effect: non-scaling-stroke;
    }
    .county:hover, .statepath:hover {
      stroke: #5C2418;
      stroke-width: 1.2;
    }
    .state-outline {
      fill: none;
      stroke: rgba(18,48,47,.28);
      stroke-width: .8;
      pointer-events: none;
      vector-effect: non-scaling-stroke;
    }
    .legend {
      left: 14px;
      bottom: 14px;
      width: min(310px, 52%);
      border-color: #dbe7e5;
      border-radius: 8px;
      padding: 9px 10px;
      font-size: 9px;
      box-shadow: 0 8px 20px rgba(19,48,47,.08);
    }
    .legendBar {
      height: 9px;
      margin: 7px 0 5px;
    }
    .legendScale { font-size: 9px; }
    .choroplethLegend {
      left: 20px;
      right: 20px;
      bottom: 14px;
      width: auto;
      border: 0;
      border-radius: 0;
      background: transparent;
      box-shadow: none;
      padding: 0;
    }
    .choroplethLegend > div:first-child {
      color: #617a79;
      font-size: 8px;
      font-weight: 900;
      letter-spacing: .07em;
      text-transform: lowercase;
    }
    .legendBins {
      gap: 8px;
    }
    .legendBin {
      font-size: 10px;
    }
    .legendAction {
      height: 28px;
      border-radius: 8px;
      background: #fff;
    }
    .mapToolStack {
      left: 14px;
      top: 58px;
      gap: 6px;
    }
    .mapToolStack button {
      width: 28px;
      height: 28px;
      border-radius: 7px;
      box-shadow: 0 6px 16px rgba(19,48,47,.08);
      display: grid;
      place-items: center;
      padding: 0;
    }
    .mapToolStack svg {
      width: 15px;
      height: 15px;
      fill: none;
      stroke: currentColor;
      stroke-width: 2;
      stroke-linecap: round;
      stroke-linejoin: round;
    }
    .baselineTiles {
      grid-template-columns: repeat(3,minmax(0,1fr));
      gap: 7px;
      margin-top: 10px;
    }
    .baselineCard .profileReadSummary {
      font-size: 11px;
      line-height: 1.55;
      margin: 8px 0 12px;
    }
    .baselineCard .bd,
    .mapProfileCard .bd,
    .profileHeroPanel .bd {
      max-height: calc(100% - 40px);
      overflow: auto;
      scrollbar-width: thin;
      scrollbar-color: #cfe0dd transparent;
    }
    .baselineCard .bd::-webkit-scrollbar,
    .mapProfileCard .bd::-webkit-scrollbar,
    .profileHeroPanel .bd::-webkit-scrollbar {
      width: 8px;
    }
    .baselineCard .bd::-webkit-scrollbar-thumb,
    .mapProfileCard .bd::-webkit-scrollbar-thumb,
    .profileHeroPanel .bd::-webkit-scrollbar-thumb {
      background: #cfe0dd;
      border-radius: 999px;
    }
    .mapSideSectionTitle {
      margin: 12px 0 7px;
      color: #617a79;
      font-size: 8px;
      font-weight: 900;
      letter-spacing: .08em;
      text-transform: uppercase;
    }
    .flowBars { gap: 8px; }
    .flowBar {
      grid-template-columns: 132px 1fr 68px;
      gap: 7px;
      font-size: 10px;
    }
    .flowBar span {
      white-space: normal;
      line-height: 1.1;
    }
    .flowBar b { font-size: 10px; }
    .tableCard { margin-top: 10px; }
    .tableTitleRow {
      padding: 10px 12px 6px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
    }
    .tableTitleText {
      min-width: 0;
      display: grid;
      gap: 3px;
    }
    .tableTitleRow h2 { font-size: 13px; }
    .tableTitleRow span { font-size: 9px; color: #617a79; font-weight: 900; letter-spacing: .07em; text-transform: uppercase; }
    .tableHeaderTools {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      gap: 10px;
      min-width: 0;
    }
    .tableViewControl {
      flex: 0 0 auto;
      display: grid;
      grid-template-columns: auto minmax(130px, 170px);
      align-items: center;
      gap: 7px;
      color: #617a79;
      font-size: 8px;
      font-weight: 900;
      letter-spacing: .09em;
      text-transform: uppercase;
    }
    .tableViewControl select {
      min-height: 30px;
      height: 30px;
      border-radius: 8px;
      border: 1px solid #dbe7e5;
      background: #fff;
      color: #102c2b;
      font-size: 10px;
      font-weight: 900;
      letter-spacing: 0;
      text-transform: none;
      padding: 0 24px 0 9px;
      box-shadow: 0 1px 2px rgba(19,48,47,.04);
    }
    .tableViewControl.compact {
      grid-template-columns: auto minmax(118px, 150px);
    }
    .glpTableWrap, .tableWrap, .tablewrap, .mapDataWrap {
      border-color: #dfe9e7;
      border-radius: 10px;
      overflow-x: hidden;
    }
    .tableCard .glpTableWrap {
      max-height: 720px;
    }
    table {
      font-size: 9px;
      line-height: 1.08;
    }
    th {
      position: sticky;
      top: 0;
      z-index: 3;
      background: #f8fbfa;
      font-size: 7px;
      padding: 4px 5px;
    }
    th.sortableTh {
      padding: 0;
    }
    .sortHeader {
      width: 100%;
      min-height: 25px;
      display: flex;
      align-items: center;
      justify-content: flex-start;
      gap: 3px;
      border: 0;
      background: transparent;
      color: inherit;
      font: inherit;
      text-align: inherit;
      text-transform: inherit;
      letter-spacing: inherit;
      cursor: pointer;
      padding: 4px 5px;
    }
    .sortHeader span {
      min-width: 0;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }
    th.r .sortHeader {
      justify-content: flex-end;
      text-align: right;
    }
    .sortHeader i {
      min-width: 18px;
      color: #006466;
      font-style: normal;
      font-size: 6px;
      font-weight: 900;
      text-transform: uppercase;
      opacity: .42;
    }
    .sortHeader.on i {
      opacity: 1;
    }
    .sortHeader:hover span {
      color: #006466;
    }
    td {
      padding: 4px 6px;
      vertical-align: middle;
      line-height: 1.08;
    }
    .glpTableWrap td b {
      font-size: 9px;
      line-height: 1.08;
    }
    .glpTableWrap td em {
      font-size: 7px;
      line-height: 1.08;
      max-width: 100%;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }
    .sparkCell {
      min-width: 0;
      display: grid;
      gap: 1px;
    }
    .sparkCell strong {
      font-size: 9px;
      line-height: 1.08;
    }
    .sparkCell em {
      color: #617a79;
      font-size: 7px;
      line-height: 1.05;
      text-align: right;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
      font-style: normal;
    }
    .tableSpark {
      height: 5px;
      margin-top: 1px;
    }
    .deltaMini {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-width: 42px;
      border-radius: 999px;
      padding: 2px 5px;
      background: #e7f5f2;
      color: #006466;
      font-size: 7px;
      font-weight: 900;
      font-variant-numeric: tabular-nums;
      white-space: nowrap;
    }
    .deltaMini.neg {
      background: #fff1e9;
      color: #A64B2D;
    }
    .compactMetric {
      display: grid;
      gap: 1px;
      min-width: 0;
      text-align: right;
    }
    .compactMetric strong {
      color: #006466;
      font-size: 9px;
      font-variant-numeric: tabular-nums;
      white-space: nowrap;
    }
    .compactMetric em {
      color: #617a79;
      font-size: 7px;
      font-style: normal;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .insightTags {
      display: flex;
      flex-wrap: wrap;
      gap: 3px;
      justify-content: flex-end;
    }
    .insightTags span {
      display: inline-flex;
      align-items: center;
      min-height: 14px;
      border-radius: 999px;
      padding: 2px 4px;
      font-size: 6.5px;
      font-weight: 900;
      line-height: 1;
      white-space: nowrap;
    }
    .insightTags .fast,
    .insightTags .volume {
      background: #e6f5f2;
      color: #006466;
    }
    .insightTags .aging {
      background: #eef7f6;
      color: #1E9FA3;
    }
    .insightTags .supply {
      background: #fff1e7;
      color: #A64B2D;
    }
    .insightTags .late {
      background: #fff6e8;
      color: #D67A2C;
    }
    .insightTags .steady {
      background: #edf3f2;
      color: #617a79;
    }
    .labHero {
      grid-template-columns: minmax(360px,.8fr) minmax(560px,1.2fr);
      gap: 14px;
      align-items: stretch;
    }
    .labNarrative {
      border-radius: 12px;
      border-color: #dfe9e7;
      padding: 14px;
      box-shadow: 0 12px 34px rgba(19,48,47,.08);
    }
    .labNarrative h3 {
      font-size: 22px;
      line-height: 1.05;
    }
    .labNarrative p {
      font-size: 11px;
      line-height: 1.45;
    }
    .chartArea, .ageChartWrap, .supplyTrendWrap, .quadWrap, .hotspotWrap, .sparkWrap {
      border-radius: 10px;
      border-color: #dfe9e7;
      background: #fff;
    }
    .chartArea { height: 280px; }
    .hotspotWrap, .quadWrap { min-height: 250px; }
    .flowCanvas {
      border-radius: 10px;
      border-color: #dfe9e7;
      padding: 10px;
    }
    .flowStage {
      min-height: 116px;
      border-radius: 10px;
      border-color: #dfe9e7;
    }
    .flowStage strong { font-size: 20px; }
    .primaryBtn {
      border-radius: 8px;
      background: linear-gradient(180deg,#007978,#006164);
      font-size: 10px;
      padding: 10px 12px;
    }
    #screen-supply .supplyToolbar {
      grid-template-columns: minmax(190px,.52fr) minmax(520px,1.45fr) minmax(190px,.52fr);
      gap: 8px;
      padding: 7px;
      border: 1px solid #dfe9e7;
      border-radius: 10px;
      background: #fff;
      box-shadow: 0 8px 22px rgba(19,48,47,.05);
    }
    #screen-supply .controlGroup {
      border: 1px solid #edf3f2;
      border-radius: 8px;
      background: #f8fbfa;
      padding: 6px;
      gap: 5px;
    }
    #screen-supply .controlGroup .label {
      min-height: 16px;
      padding: 0 3px;
      font-size: 8px;
      letter-spacing: .07em;
    }
    #screen-supply .controlGroup .label b {
      font-size: 8px;
      color: #617a79;
    }
    #screen-supply .supplyMetricGrid {
      grid-template-columns: repeat(3,minmax(0,1fr));
      gap: 4px;
    }
    #screen-supply .metricChoice {
      min-height: 34px;
      border-radius: 7px;
      border-color: transparent;
      background: transparent;
      padding: 6px 7px;
      text-align: center;
    }
    #screen-supply .metricChoice.on {
      border-color: #006466;
      background: #006466;
      color: #fff;
      box-shadow: 0 7px 16px rgba(0,97,100,.18);
    }
    #screen-supply .metricChoice span {
      font-size: 9px;
      line-height: 1.05;
    }
    #screen-supply .metricChoice small,
    #screen-supply .sortHint {
      font-size: 8px;
      line-height: 1.18;
    }
    #screen-supply .profileSignalStrip,
    .profileSignalStrip,
    .needTiles,
    .miniGrid,
    .supplyMetricGrid {
      gap: 8px;
    }
    #screen-supply .mapDataWrap { max-height: 430px; }
    #nationalRegionTable,
    #profileRegionTable,
    #leaderTable,
    #supplyTable,
    #providerMarketTable,
    #usageTable {
      min-width: 100%;
      width: 100%;
      table-layout: fixed;
    }
    @media (max-width: 1440px) {
      .topActions, .utilityBtns {
        display: flex;
      }
      .toprow {
        grid-template-columns: minmax(300px,1fr) auto;
      }
      .controls {
        grid-template-columns: minmax(230px,.82fr) minmax(260px,1.08fr) minmax(220px,.9fr) minmax(170px,.7fr) minmax(170px,.7fr);
        justify-content: stretch;
      }
      .selectbox select,
      .selectbox.regionBox select {
        min-width: 0;
      }
      .kpis, .topKpis {
        grid-template-columns: repeat(5,minmax(135px,1fr));
      }
      #screen-supply .supplyToolbar {
        grid-template-columns: minmax(170px,.48fr) minmax(500px,1.45fr) minmax(170px,.48fr);
      }
      #screen-supply .supplyMetricGrid {
        grid-template-columns: repeat(3,minmax(0,1fr));
      }
    }
    @media (max-width: 1180px) {
      .topActions, .utilityBtns { display: none; }
      .toprow {
        grid-template-columns: 1fr;
        grid-template-areas: "title" "controls";
      }
      .controls {
        grid-template-columns: repeat(2,minmax(0,1fr));
        justify-content: stretch;
      }
      .controls > .seg,
      .controls > .regionBox {
        grid-column: span 1;
      }
      .controls > .seg {
        grid-column: 1 / -1;
      }
      .exploreGrid, .mapStudio, .profileCanvas, .labHero, .flowWorkspace .profileCanvas, .evidenceWorkspace .profileCanvas, #screen-supply .supplyCanvas, #screen-supply .supplyDossier {
        grid-template-columns: 1fr;
      }
      .exploreGrid > .glpMapCard,
      .exploreGrid > .baselineCard {
        height: auto;
      }
      .glpMapCard .bd,
      .mapStage .bd {
        height: auto;
      }
      .glpMapWrap, .mapwrap {
        height: 430px;
      }
    }
    @media (max-width: 760px) {
      .kpis, .topKpis {
        grid-template-columns: repeat(2,minmax(0,1fr));
      }
      .glpMetricRow,
      .leaderCards,
      .baselineTiles,
      .profileSignalStrip,
      .needTiles,
      #screen-supply .supplyMetricGrid {
        grid-template-columns: 1fr;
      }
      .selectbox select,
      .selectbox.regionBox select {
        min-width: 0;
        width: 100%;
      }
      .controls {
        grid-template-columns: 1fr;
      }
      .controls > .seg,
      .controls > .regionBox {
        grid-column: auto;
      }
    }

    .trajectoryCard {
      margin: 0 0 14px;
      box-shadow: 0 8px 22px rgba(19,48,47,.05);
    }
    .trajectoryIntro {
      margin: 0 0 10px;
      color: #294746;
      font-size: 11px;
      line-height: 1.45;
      max-width: 1120px;
    }
    .driverModel {
      border: 1px solid #dfe9e7;
      border-radius: 12px;
      background: linear-gradient(180deg,#ffffff,#f8fbfa);
      box-shadow: 0 8px 22px rgba(19,48,47,.05);
      padding: 10px;
      margin: 10px 0 12px;
      display: grid;
      gap: 10px;
    }
    .driverModelHead {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 12px;
      border-bottom: 1px solid #edf3f2;
      padding-bottom: 8px;
    }
    .driverModelHead h3 {
      margin: 0;
      color: #102c2b;
      font-size: 12px;
      line-height: 1.1;
      font-weight: 900;
      letter-spacing: 0;
    }
    .driverModelHead p {
      margin: 4px 0 0;
      color: #617a79;
      font-size: 10px;
      line-height: 1.35;
      max-width: 760px;
    }
    .driverModelHead span {
      flex: 0 0 auto;
      color: #006466;
      border: 1px solid #cfe8e4;
      background: #e8f6f3;
      border-radius: 999px;
      padding: 4px 8px;
      font-size: 8px;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: .07em;
      white-space: nowrap;
    }
    .driverEquation {
      display: flex;
      align-items: stretch;
      gap: 5px;
      flex-wrap: wrap;
    }
    .driverMetricStep {
      flex: 1 1 106px;
      min-width: 96px;
      border: 1px solid #dfe9e7;
      border-radius: 10px;
      background: #fff;
      padding: 8px;
      position: relative;
      overflow: hidden;
    }
    .driverMetricStep:before {
      content: "";
      position: absolute;
      left: 0;
      top: 0;
      bottom: 0;
      width: 4px;
      background: var(--step-color, #006466);
    }
    .driverMetricStep span {
      display: block;
      color: #617a79;
      font-size: 8px;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: .07em;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .driverMetricStep b {
      display: block;
      margin-top: 4px;
      color: var(--step-color, #006466);
      font-size: 16px;
      line-height: 1;
      font-weight: 900;
      font-variant-numeric: tabular-nums;
      white-space: nowrap;
    }
    .driverMetricStep em {
      display: block;
      margin-top: 4px;
      color: #617a79;
      font-size: 9px;
      line-height: 1.25;
      font-style: normal;
    }
    .driverOperator {
      flex: 0 0 20px;
      align-self: center;
      display: grid;
      place-items: center;
      height: 28px;
      border-radius: 999px;
      background: #edf6f4;
      color: #006466;
      font-size: 11px;
      font-weight: 900;
      box-shadow: inset 0 0 0 1px #dce8e6;
    }
    .driverInsightRow {
      display: grid;
      grid-template-columns: minmax(250px,.42fr) minmax(420px,1fr);
      gap: 10px;
      align-items: stretch;
    }
    .ageFeed {
      border: 1px solid #cfe8e4;
      border-radius: 10px;
      background: #e8f6f3;
      padding: 10px;
      color: #12302f;
    }
    .ageFeed span,
    .contributionBridge span {
      display: block;
      color: #617a79;
      font-size: 8px;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: .07em;
    }
    .ageFeed b {
      display: block;
      margin-top: 5px;
      color: #006466;
      font-size: 18px;
      line-height: 1.05;
      font-variant-numeric: tabular-nums;
    }
    .ageFeed p {
      margin: 5px 0 0;
      color: #294746;
      font-size: 10px;
      line-height: 1.35;
    }
    .contributionBridge {
      border: 1px solid #dfe9e7;
      border-radius: 10px;
      background: #fff;
      padding: 10px;
    }
    .contributionBridge > b {
      display: block;
      margin-top: 3px;
      color: #102c2b;
      font-size: 12px;
      line-height: 1.2;
    }
    .contributionBars {
      display: grid;
      gap: 7px;
      margin-top: 8px;
    }
    .contributionBar {
      display: grid;
      grid-template-columns: minmax(130px,.42fr) minmax(150px,1fr) 72px;
      gap: 8px;
      align-items: center;
      min-width: 0;
    }
    .contributionBar label {
      color: #294746;
      font-size: 9px;
      line-height: 1.2;
      font-weight: 900;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .contributionTrack {
      height: 9px;
      border-radius: 999px;
      background: #edf4f2;
      overflow: hidden;
      box-shadow: inset 0 0 0 1px #dfe9e7;
    }
    .contributionTrack i {
      display: block;
      height: 100%;
      width: var(--bar-width, 0%);
      border-radius: 999px;
      background: var(--bar-color, #2E9F7A);
    }
    .contributionBar strong {
      color: #006466;
      font-size: 10px;
      line-height: 1;
      text-align: right;
      font-variant-numeric: tabular-nums;
      white-space: nowrap;
    }
    .contributionBar.neg strong { color: #A64B2D; }
    .profileDriverModel {
      margin: 0 0 9px;
      padding: 8px;
      gap: 8px;
    }
    .profileDriverModel .driverModelHead {
      padding-bottom: 6px;
    }
    .profileDriverModel .driverModelHead h3 {
      font-size: 11px;
    }
    .profileDriverModel .driverModelHead p {
      font-size: 9px;
    }
    .profileDriverModel .driverEquation {
      gap: 5px;
    }
    .profileDriverModel .driverMetricStep {
      flex-basis: 116px;
      min-width: 108px;
      padding: 8px;
    }
    .profileDriverModel .driverMetricStep b {
      font-size: 14px;
    }
    .profileDriverModel .driverInsightRow {
      grid-template-columns: 1fr;
    }
    .profileDriverModel .contributionBar {
      grid-template-columns: minmax(116px,.45fr) minmax(110px,1fr) 62px;
    }
    .trajectoryGrid {
      display: grid;
      grid-template-columns: repeat(5,minmax(0,1fr));
      gap: 8px;
    }
    .trajectoryTile {
      --driver-color: #2E9F7A;
      position: relative;
      min-width: 0;
      border: 1px solid #dfe9e7;
      border-radius: 10px;
      background: linear-gradient(180deg,#fff,#f8fbfa);
      padding: 9px;
      box-shadow: 0 8px 22px rgba(19,48,47,.05);
    }
    .trajectoryText {
      min-width: 0;
      padding-right: 60px;
    }
    .trajectoryBadge {
      position: absolute;
      top: 8px;
      right: 8px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-width: 48px;
      height: 20px;
      padding: 0 8px;
      border-radius: 999px;
      border: 1px solid rgba(46,159,122,.24);
      background: rgba(46,159,122,.10);
      color: #2E9F7A;
      font-size: 9px;
      line-height: 1;
      font-weight: 900;
      letter-spacing: 0;
      font-variant-numeric: tabular-nums;
      white-space: nowrap;
      box-shadow: 0 6px 16px rgba(46,159,122,.08);
    }
    .trajectoryBadge[data-direction="down"] {
      border-color: rgba(166,75,45,.24);
      background: rgba(166,75,45,.08);
      color: #A64B2D;
      box-shadow: none;
    }
    .trajectoryTile span {
      display: block;
      color: #617a79;
      font-size: 8px;
      font-weight: 900;
      letter-spacing: .07em;
      text-transform: uppercase;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .trajectoryTile b {
      display: block;
      margin-top: 4px;
      color: var(--driver-color);
      font-size: 17px;
      line-height: 1;
      font-weight: 900;
      font-variant-numeric: tabular-nums;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: clip;
    }
    .trajectoryTile em {
      display: block;
      margin-top: 3px;
      color: #4f6a68;
      font-size: 9px;
      font-style: normal;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .miniTrend {
      height: 108px;
      margin-top: 6px;
      border: 1px solid #edf3f2;
      border-radius: 8px;
      background: #fff;
      overflow: hidden;
    }
    .miniTrend svg {
      width: 100%;
      height: 100%;
      display: block;
      font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    }
    .profileTrajectoryBlock {
      margin-top: 10px;
      border: 1px solid #dfe9e7;
      border-radius: 10px;
      background: #fff;
      padding: 10px;
      box-shadow: 0 8px 22px rgba(19,48,47,.05);
    }
    .miniPanelHead {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 10px;
      margin-bottom: 8px;
    }
    .miniPanelHead h3 {
      margin: 0;
      color: #102c2b;
      font-size: 12px;
      line-height: 1.1;
      font-weight: 900;
      letter-spacing: 0;
    }
    .miniPanelHead span {
      color: #617a79;
      font-size: 8px;
      font-weight: 900;
      letter-spacing: .07em;
      text-transform: uppercase;
      white-space: nowrap;
    }
    .profileTrajectoryGrid {
      grid-template-columns: 1fr;
      gap: 7px;
    }
    .profileTrajectoryGrid .trajectoryTile {
      display: grid;
      grid-template-columns: minmax(120px,.78fr) minmax(130px,1fr);
      gap: 8px;
      align-items: center;
      padding: 8px;
    }
    .profileTrajectoryGrid .trajectoryTile .miniTrend {
      margin: 0;
      height: 76px;
    }
    .profileTrajectoryGrid .trajectoryTile b {
      font-size: 15px;
    }
    .profileSummaryMini {
      display: grid;
      gap: 8px;
      margin-top: 12px;
    }
    .profileSummaryMini .summaryLine {
      display: grid;
      grid-template-columns: minmax(0,1fr) auto;
      gap: 10px;
      align-items: center;
      border: 1px solid #dfe9e7;
      border-radius: 10px;
      background: #fff;
      padding: 10px;
      box-shadow: 0 8px 22px rgba(19,48,47,.05);
    }
    .profileSummaryMini .summaryLine span {
      color: #617a79;
      font-size: 8px;
      font-weight: 900;
      letter-spacing: .07em;
      text-transform: uppercase;
    }
    .profileSummaryMini .summaryLine b {
      color: #006466;
      font-size: 15px;
      line-height: 1;
      font-weight: 900;
      font-variant-numeric: tabular-nums;
      white-space: nowrap;
    }
    .profileSummaryMini .summaryLine em {
      grid-column: 1 / -1;
      color: #617a79;
      font-size: 10px;
      font-style: normal;
      line-height: 1.3;
    }
    .profileFlowSection {
      border: 1px solid #dfe9e7;
      border-radius: 12px;
      background:
        linear-gradient(180deg,rgba(255,255,255,.97),rgba(248,251,250,.94)),
        radial-gradient(circle at 12% 18%, rgba(29,159,163,.09), transparent 36%);
      box-shadow: 0 18px 55px rgba(19,48,47,.08), 0 2px 8px rgba(19,48,47,.05);
      padding: 14px;
      overflow: hidden;
    }
    .profileFlowHead {
      display: flex;
      align-items: start;
      justify-content: space-between;
      gap: 14px;
      padding: 2px 2px 12px;
      border-bottom: 1px solid #edf3f2;
    }
    .profileFlowHead span,
    .profileFlowBridge span,
    .profileFlowAging span,
    .profileFlowNode span,
    .profileFlowMetric span {
      display: block;
      color: #617a79;
      font-size: 8px;
      font-weight: 900;
      letter-spacing: .07em;
      text-transform: uppercase;
    }
    .profileFlowHead h2 {
      margin: 3px 0 0;
      color: #102c2b;
      font-size: 18px;
      line-height: 1.08;
      font-weight: 900;
      letter-spacing: 0;
    }
    .profileFlowHead p {
      margin-top: 4px;
      color: #4f6a68;
      font-size: 11px;
      line-height: 1.35;
      max-width: 900px;
    }
    .profileFlowHead strong {
      flex: 0 0 auto;
      color: #006466;
      font-size: 10px;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: .07em;
      border: 1px solid #cfe8e4;
      border-radius: 999px;
      background: #e8f6f3;
      padding: 8px 10px;
      white-space: nowrap;
    }
    .profileFlowRail {
      display: grid;
      gap: 10px;
      padding: 12px 0 0;
    }
    .profileFlowEquation {
      display: grid;
      grid-template-columns: minmax(150px,1fr) 32px minmax(145px,.9fr) 32px minmax(150px,1fr) 32px minmax(145px,.9fr) 32px minmax(160px,1.05fr);
      gap: 8px;
      align-items: stretch;
    }
    .profileFlowSupplyLane {
      display: grid;
      grid-template-columns: minmax(160px,1fr) 32px minmax(145px,.86fr) 32px minmax(160px,1fr);
      gap: 8px;
      align-items: stretch;
    }
    .profileFlowNode,
    .profileFlowMetric,
    .profileFlowAging {
      position: relative;
      min-width: 0;
      border: 1px solid #dfe9e7;
      border-radius: 11px;
      background: #fff;
      padding: 12px;
      box-shadow: 0 10px 24px rgba(19,48,47,.06);
    }
    .profileFlowNode {
      border-left: 5px solid var(--node-color, #006466);
    }
    .profileFlowNode b,
    .profileFlowMetric b,
    .profileFlowAging b {
      display: block;
      margin-top: 6px;
      color: var(--node-color, #006466);
      font-size: 22px;
      line-height: 1;
      font-weight: 900;
      font-variant-numeric: tabular-nums;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: clip;
    }
    .profileFlowNode em,
    .profileFlowMetric em,
    .profileFlowAging em {
      display: block;
      margin-top: 6px;
      color: #617a79;
      font-size: 10px;
      font-style: normal;
      line-height: 1.3;
    }
    .profileFlowOp {
      display: grid;
      place-items: center;
      align-self: center;
      width: 32px;
      height: 32px;
      border-radius: 999px;
      border: 1px solid #cfe8e4;
      background: #e8f6f3;
      color: #006466;
      font-size: 15px;
      font-weight: 900;
      box-shadow: 0 8px 18px rgba(0,100,102,.08);
    }
    .profileFlowAging {
      display: grid;
      grid-template-columns: minmax(180px,.34fr) minmax(0,1fr);
      gap: 12px;
      align-items: center;
      background: linear-gradient(90deg,#e8f6f3,#fff);
      border-color: #cfe8e4;
    }
    .profileFlowAging p {
      margin: 0;
      color: #294746;
      font-size: 11px;
      line-height: 1.35;
      font-weight: 700;
    }
    .profileFlowLower {
      display: grid;
      grid-template-columns: minmax(260px,.34fr) minmax(0,1fr);
      gap: 12px;
      align-items: stretch;
      margin-top: 12px;
    }
    .profileFlowBridge {
      border: 1px solid #dfe9e7;
      border-radius: 11px;
      background: #fff;
      padding: 12px;
      box-shadow: 0 10px 24px rgba(19,48,47,.06);
    }
    .profileFlowBridge b {
      display: block;
      margin-top: 5px;
      color: #102c2b;
      font-size: 14px;
      line-height: 1.2;
    }
    .profileFlowBridge .contributionBars {
      margin-top: 12px;
    }
    .profileFlowBridge .contributionBar {
      grid-template-columns: minmax(112px,.38fr) minmax(130px,1fr) 72px;
    }
    .profileFlowTrajectories {
      grid-template-columns: repeat(5,minmax(0,1fr));
    }
    .profileFlowTrajectories .trajectoryTile {
      min-height: 156px;
    }
    .profileFlowTrajectories .miniTrend {
      height: 86px;
    }
    .profileCanvas > aside.profileHeroPanel.card {
      height: auto !important;
      min-height: 0;
      max-height: none;
      align-self: start;
    }
    .profileCanvas > aside.profileHeroPanel.card .bd {
      height: auto;
      max-height: none;
      overflow: visible;
    }
    .top {
      padding: 15px 24px 12px;
      background: rgba(255,255,255,.86);
      box-shadow: 0 1px 0 rgba(220,232,230,.75);
    }
    .toprow {
      grid-template-columns: minmax(390px,.55fr) minmax(760px,1fr);
      grid-template-areas: "title controls";
      gap: 12px 18px;
      align-items: end;
    }
    .toprow > div:first-child {
      grid-area: title;
    }
    .toprow .spacer,
    .topActions,
    .utilityBtns {
      display: none;
    }
    .controls {
      grid-area: controls;
      display: grid;
      grid-template-columns: 260px minmax(250px,1fr) 240px 178px 178px;
      gap: 10px;
      align-items: end;
      justify-content: stretch;
      width: 100%;
    }
    .controls > .seg,
    .controls > .regionBox {
      grid-column: auto;
    }
    .selectbox,
    .yearBox,
    .controls .seg {
      min-height: 44px;
      border-radius: 11px;
      box-shadow: 0 1px 2px rgba(19,48,47,.06);
    }
    .top h1 {
      font-size: 25px;
      line-height: 1.02;
    }
    .subtitle {
      max-width: 660px;
      font-size: 11px;
      line-height: 1.35;
    }
    .kpis,
    .topKpis {
      display: none !important;
    }
    .content {
      padding-top: 12px;
    }
    #screen-national > .glpCommand {
      max-width: 760px;
      margin-bottom: 12px;
    }
    .trajectoryCard {
      margin-top: 0;
      border-radius: 13px;
    }
    .trajectoryCard > .hd {
      min-height: 40px;
      padding: 9px 16px;
    }
    .trajectoryCard > .bd {
      padding: 11px 16px 12px;
    }
    .trajectoryIntro {
      max-width: 1160px;
      margin-bottom: 9px;
      font-size: 10.5px;
      line-height: 1.35;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .driverModel {
      padding: 10px;
      gap: 9px;
      border-radius: 13px;
      background: #fff;
      box-shadow: none;
    }
    .driverModelHead {
      align-items: center;
      padding-bottom: 7px;
    }
    .driverModelHead h3 {
      font-size: 13px;
    }
    .driverModelHead p {
      max-width: 980px;
      font-size: 9.5px;
      line-height: 1.25;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .driverEquation {
      display: grid;
      grid-template-columns: repeat(3,minmax(0,1fr));
      gap: 8px;
    }
    .driverFormulaStage {
      --stage-color: #006466;
      display: grid;
      grid-template-rows: auto 1fr;
      gap: 7px;
      min-width: 0;
      border: 1px solid #dfe9e7;
      border-left: 4px solid var(--stage-color);
      border-radius: 11px;
      background: linear-gradient(180deg,#ffffff,#f8fbfa);
      padding: 9px;
      box-shadow: 0 6px 16px rgba(19,48,47,.05);
    }
    .driverStageHead span {
      display: block;
      color: #617a79;
      font-size: 8px;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: .08em;
    }
    .driverStageHead b {
      display: block;
      margin-top: 4px;
      color: #102c2b;
      font-size: 12.5px;
      line-height: 1.18;
      font-weight: 900;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .driverStageHead p {
      margin: 3px 0 0;
      color: #617a79;
      font-size: 8.5px;
      line-height: 1.2;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .driverStageMetrics {
      display: grid;
      grid-template-columns: repeat(3,minmax(0,1fr));
      gap: 6px;
      align-items: stretch;
    }
    .driverMetricStep {
      min-width: 0;
      padding: 7px 8px 6px;
      border-radius: 9px;
      background: #fff;
      box-shadow: inset 0 0 0 1px #e6efed;
    }
    .driverMetricStep:before,
    .driverOperator {
      display: none;
    }
    .driverMetricStep span {
      font-size: 7.5px;
      letter-spacing: .06em;
    }
    .driverMetricStep b {
      margin-top: 4px;
      font-size: 15px;
    }
    .driverMetricStep em {
      margin-top: 3px;
      font-size: 8px;
      line-height: 1.2;
    }
    .driverInsightRow {
      grid-template-columns: minmax(320px,.38fr) minmax(520px,1fr);
      gap: 8px;
    }
    .ageFeed,
    .contributionBridge {
      border-radius: 11px;
      padding: 9px 10px;
    }
    .ageFeed b {
      font-size: 16px;
    }
    .ageFeed p {
      font-size: 9px;
      line-height: 1.25;
    }
    .contributionBridge > b {
      font-size: 12px;
    }
    .contributionBars {
      gap: 5px;
      margin-top: 6px;
    }
    .contributionBar {
      grid-template-columns: minmax(145px,.32fr) minmax(260px,1fr) 82px;
    }
    .trajectoryGrid {
      gap: 10px;
    }
    .trajectoryTile {
      min-height: 184px;
      padding: 9px;
      border-radius: 11px;
    }
    .trajectoryText {
      padding-right: 62px;
    }
    .trajectoryTile b {
      font-size: 16px;
    }
    .miniTrend {
      height: 96px;
      margin-top: 6px;
    }
    .profileDriverModel .driverEquation {
      grid-template-columns: 1fr;
    }
    .profileDriverModel .driverStageMetrics {
      grid-template-columns: 1fr;
    }
    .profileDriverModel .driverFormulaStage {
      gap: 8px;
      padding: 9px;
    }
    @media (max-width: 1500px) {
      .toprow {
        grid-template-columns: 1fr;
        grid-template-areas: "title" "controls";
        align-items: start;
      }
      .toprow > div:first-child {
        max-width: 820px;
      }
      .top h1 {
        white-space: nowrap;
        font-size: 24px;
      }
      .controls {
        grid-template-columns: 280px minmax(250px,1fr) 210px 160px 160px;
        gap: 8px;
        margin-top: 10px;
      }
    }
    @media (max-width: 1180px) {
      .toprow {
        grid-template-columns: 1fr;
        grid-template-areas: "title" "controls";
      }
      .controls {
        grid-template-columns: repeat(2,minmax(0,1fr));
      }
      .controls > .regionBox {
        grid-column: span 2;
      }
      .driverEquation {
        grid-template-columns: 1fr;
      }
      .driverStageMetrics {
        grid-template-columns: repeat(3,minmax(0,1fr));
      }
      .trajectoryGrid {
        grid-template-columns: repeat(2,minmax(0,1fr));
      }
      .profileTrajectoryGrid {
        grid-template-columns: repeat(2,minmax(0,1fr));
      }
      .profileTrajectoryGrid .trajectoryTile {
        grid-template-columns: 1fr;
      }
      .profileTrajectoryGrid .trajectoryTile .miniTrend {
        height: 88px;
      }
      .driverInsightRow {
        grid-template-columns: 1fr;
      }
      .providerTableSummary {
        grid-template-columns: repeat(2,minmax(0,1fr));
      }
      .profileFlowEquation,
      .profileFlowSupplyLane,
      .profileFlowLower {
        grid-template-columns: 1fr;
      }
      .profileFlowOp {
        justify-self: center;
      }
      .profileFlowTrajectories {
        grid-template-columns: repeat(2,minmax(0,1fr));
      }
      .countyInsightGrid {
        grid-template-columns: 1fr;
      }
      .countyRevenueViz {
        grid-template-columns: minmax(220px,.72fr) minmax(220px,1fr);
      }
    }
    @media (max-width: 760px) {
      .controls,
      .driverStageMetrics {
        grid-template-columns: 1fr;
      }
      .controls > .regionBox {
        grid-column: auto;
      }
      .trajectoryGrid,
      .profileTrajectoryGrid {
        grid-template-columns: 1fr;
      }
      .driverModelHead {
        display: grid;
      }
      .driverOperator {
        display: none;
      }
      .contributionBar,
      .profileDriverModel .contributionBar {
        grid-template-columns: 1fr;
      }
      .contributionBar strong {
        text-align: left;
      }
      .providerTableSummary {
        grid-template-columns: 1fr;
      }
      .profileFlowHead,
      .profileFlowAging {
        display: grid;
        grid-template-columns: 1fr;
      }
      .profileFlowTrajectories {
        grid-template-columns: 1fr;
      }
      .countyRevenueViz {
        grid-template-columns: 1fr;
      }
    }
    .glpTableWrap,
    .tableWrap,
    .tablewrap,
    .mapDataWrap {
      overflow-x: hidden !important;
    }
    #nationalRegionTable,
    #profileRegionTable,
    #leaderTable,
    #supplyTable,
    #providerMarketTable,
    #usageTable {
      min-width: 100% !important;
      width: 100% !important;
      table-layout: fixed !important;
    }
