/* Capacity vs. investment by state card. Shared by the tracker page and /embed/capacity-by-state. */
.sbc{background:#fff;border:1px solid #e5e4e0;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.05);font-family:Inter,sans-serif;color:#111827}
.sbc-hd{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 22px;border-bottom:1px solid #e5e4e0}
.sbc-ey{margin:0 0 6px;font:700 10px/1 Inter,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#6b7280}
.sbc-t{margin:0;font:800 clamp(1.05rem,2vw,1.25rem)/1.25 Inter,sans-serif;letter-spacing:-.01em;color:#0f1923}
.sbc-sub{margin:6px 0 0;font-size:12.5px;line-height:1.6;color:#6b7280;max-width:720px}
.sbc-share{flex:none;display:inline-flex;align-items:center;gap:7px;font:600 12px/1 Inter,sans-serif;color:#0f1923;background:#fff;border:1px solid #d6d3cd;border-radius:6px;padding:9px 13px;cursor:pointer;text-decoration:none;transition:border-color .12s,background .12s}
.sbc-share:hover,.sbc-share:focus-visible{border-color:#0f1923;background:#faf9f7;outline:0}
.sbc-share svg{width:14px;height:14px}

.sbc-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#e5e4e0;border-bottom:1px solid #e5e4e0;min-height:88px}
.sbc-kpi{background:#fff;padding:14px 18px}
.sbc-kpi p{margin:0}
.sbc-kl{font:700 9.5px/1.4 Inter,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#9ca3af;margin-bottom:7px!important}
.sbc-kv{font:500 1.2rem/1.15 'Martian Mono',monospace;color:#111827;letter-spacing:-.02em}
.sbc-kv small{font:600 12px Inter,sans-serif;color:#374151;letter-spacing:0;margin-left:6px}
.sbc-ks{font-size:11px;line-height:1.45;color:#6b7280;margin-top:5px!important}

.sbc-body{display:grid;grid-template-columns:minmax(0,1fr) 380px}
.sbc-plot{padding:14px 16px 12px;min-width:0}
.sbc-viz{position:relative;min-height:300px}
.sbc-viz svg{display:block;overflow:visible}
.sbc-grid line{stroke:#ececea;stroke-width:1}
.sbc-ax text{fill:#9ca3af;font:10.5px 'Martian Mono',monospace}
.sbc-axt{fill:#6b7280!important;font:600 10.5px Inter,sans-serif!important}
.sbc-avg{stroke:#94a3b8;stroke-width:1.5;stroke-dasharray:5 4;fill:none}
.sbc-avgl{fill:#6b7280;font:600 10.5px Inter,sans-serif}
.sbc-b{fill:#0061fe;fill-opacity:.78;stroke:#fff;stroke-width:2;transition:fill-opacity .15s}
.sbc-lbl{fill:#111827;font:600 11px Inter,sans-serif;paint-order:stroke;stroke:#fff;stroke-width:3px;stroke-linejoin:round;pointer-events:none}
.sbc-hit{fill:transparent;cursor:pointer}
.sbc-svg.has-hl .sbc-b{fill-opacity:.16}
.sbc-svg.has-hl .sbc-lbl{opacity:.35}
.sbc-svg.has-hl .sbc-b.hl{fill-opacity:1;stroke:#0f1923}
.sbc-svg.has-hl .sbc-lbl.hl{opacity:1}

.sbc-key{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;margin-top:10px;font-size:11.5px;color:#6b7280}
.sbc-key span{display:inline-flex;align-items:center;gap:7px}
.sbc-key svg{flex:none}
.sbc-note{margin:8px 0 0;font-size:11.5px;line-height:1.6;color:#6b7280}

.sbc-side{border-left:1px solid #e5e4e0;display:flex;flex-direction:column;min-width:0}
.sbc-sh{display:flex;justify-content:space-between;align-items:baseline;padding:12px 16px;border-bottom:1px solid #e5e4e0;background:#faf9f7}
.sbc-sh b{font:700 10px/1 Inter,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#111827}
.sbc-sh span{font:500 10px/1 'Martian Mono',monospace;color:#9ca3af}
.sbc-scroll{position:relative;overflow-y:auto;max-height:520px;flex:1}
.sbc-tbl{width:100%;border-collapse:collapse;font-size:12px}
.sbc-tbl th{position:sticky;top:0;z-index:1;background:#fff;box-shadow:inset 0 -1px #e5e4e0;padding:8px 10px;font:700 9px/1 Inter,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#9ca3af;text-align:right;white-space:nowrap}
.sbc-tbl th:nth-child(2){text-align:left}
.sbc-tbl td{padding:7px 10px;border-top:1px solid #f0efeb;text-align:right;white-space:nowrap;font:400 11.5px 'Martian Mono',monospace;color:#374151}
.sbc-tbl td:nth-child(2){text-align:left;font:600 12px Inter,sans-serif;color:#111827;white-space:normal}
.sbc-tbl td.rk{color:#a8a29e;font-size:10.5px;width:1%}
.sbc-tbl a{color:inherit;text-decoration:none}
.sbc-tbl tr[data-state]:hover td,.sbc-tbl tr.on td{background:#eef4ff}
.sbc-tbl tr.on td:first-child{box-shadow:inset 2px 0 #0061fe}
.sbc-tbl tr[data-state]:hover a,.sbc-tbl tr.on a,.sbc-tbl a:focus-visible{color:#0061fe;outline:0}
.sbc-tbl tr.na td{background:#faf9f7;color:#9ca3af}
.sbc-tbl tr.na td:nth-child(2){color:#6b7280;font-weight:500}
.sbc-tbl .open-demo-modal,.sbc-tbl .sbc-req{font:700 9px/1 Inter,sans-serif;letter-spacing:.07em;text-transform:uppercase;color:#0061fe;background:none;border:0;padding:0;cursor:pointer;text-decoration:none}

.sbc-ft{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 16px;padding:11px 22px;border-top:1px solid #e5e4e0;background:#faf9f7;font-size:11px;color:#6b7280}
.sbc-ft a{color:#374151;font-weight:600;text-decoration:none}
.sbc-ft a:hover{color:#0061fe}
.sbc-dl{display:inline-flex;align-items:center;gap:8px}
.sbc-dl img{height:22px;width:auto;border:1px solid #e5e4e0;border-radius:3px;background:#fff}

.sbc-tip{position:absolute;pointer-events:none;display:none;z-index:30;background:#fff;border:1px solid #e5e4e0;border-radius:6px;box-shadow:0 8px 28px rgba(0,0,0,.14);padding:9px 12px;font-size:11.5px;min-width:180px}
.sbc-tip .h{font-weight:700;color:#111827;margin-bottom:5px;display:flex;align-items:center;gap:6px}
.sbc-tip .h i{width:8px;height:8px;border-radius:99px;background:#0061fe}
.sbc-tip .r{display:flex;justify-content:space-between;gap:16px;padding:1.5px 0;color:#6b7280}
.sbc-tip .r b{font:500 11px 'Martian Mono',monospace;color:#111827}
.sbc-tip .f{margin-top:6px;padding-top:6px;border-top:1px solid #f0efeb;color:#374151}

/* Share dialog */
.sbc-ov{position:fixed;inset:0;z-index:2000;background:rgba(15,25,35,.55);display:flex;align-items:center;justify-content:center;padding:16px}
.sbc-ov[hidden]{display:none}
.sbc-dlg{width:min(560px,100%);max-height:calc(100vh - 32px);overflow:auto;background:#fff;border-radius:12px;box-shadow:0 24px 60px rgba(0,0,0,.3);font-family:Inter,sans-serif;color:#111827}
.sbc-dh{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e5e4e0}
.sbc-dh h4{margin:0;font-size:15px;font-weight:700}
.sbc-x{background:none;border:0;cursor:pointer;color:#6b7280;padding:6px;border-radius:4px;line-height:0}
.sbc-x:hover{color:#111827;background:#f5f4f1}
.sbc-tabs{display:flex;gap:4px;padding:12px 20px 0;border-bottom:1px solid #e5e4e0}
.sbc-tab{font:600 12.5px Inter,sans-serif;color:#6b7280;background:none;border:0;border-bottom:2px solid transparent;padding:8px 10px 10px;cursor:pointer;margin-bottom:-1px}
.sbc-tab[aria-selected=true]{color:#0f1923;border-bottom-color:#0061fe}
.sbc-tab:focus-visible{outline:2px solid #0f1923;outline-offset:-2px}
.sbc-pane{padding:18px 20px 20px}
.sbc-pane[hidden]{display:none}
.sbc-lead{margin:0 0 12px;font-size:12.5px;line-height:1.6;color:#6b7280}
.sbc-field{width:100%;box-sizing:border-box;font:12px/1.55 'Martian Mono',monospace;color:#111827;background:#faf9f7;border:1px solid #e5e4e0;border-radius:6px;padding:10px 12px;resize:none}
.sbc-field:focus{outline:2px solid #0f1923;outline-offset:1px}
.sbc-cite{font:13px/1.65 Inter,sans-serif;color:#111827;background:#faf9f7;border:1px solid #e5e4e0;border-radius:6px;padding:12px 14px;word-break:break-word}
.sbc-styles{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.sbc-chip{font:600 11.5px Inter,sans-serif;color:#374151;background:#fff;border:1px solid #e5e4e0;border-radius:99px;padding:6px 12px;cursor:pointer}
.sbc-chip[aria-pressed=true]{background:#0f1923;border-color:#0f1923;color:#fff}
.sbc-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px}
.sbc-row small{font-size:11px;color:#9ca3af}
.sbc-copy{display:inline-flex;align-items:center;gap:6px;font:700 12px Inter,sans-serif;color:#fff;background:#0f1923;border:0;border-radius:6px;padding:10px 16px;cursor:pointer;flex:none}
.sbc-copy:hover{background:#1e2d3d}
.sbc-copy.ok{background:#15803d}

@media (max-width:960px){
  .sbc-body{grid-template-columns:1fr}
  .sbc-side{border-left:0;border-top:1px solid #e5e4e0}
  .sbc-scroll{max-height:380px}
}
@media (max-width:640px){
  .sbc-hd{padding:16px;flex-direction:column}
  .sbc-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sbc-kpi{padding:12px 14px}
  .sbc-kv{font-size:1.05rem}
  .sbc-plot{padding:12px 10px 10px}
  .sbc-ft{padding:10px 16px}
}
@media (prefers-reduced-motion:reduce){.sbc-b{transition:none}}

/* Pipeline by development stage: bento card (stage-bento.js), shares the .sbc card shell */
.sbn-body{padding:20px 22px}
.sbn-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:8px;min-height:300px}
.sbn-b{border-radius:10px;padding:16px 18px}
.sbn-b0{grid-row:span 2}.sbn-b3{grid-column:span 2}
.sbn-k{margin:0;font:700 11px/1.2 Inter,sans-serif;letter-spacing:.08em;text-transform:uppercase;opacity:.8}
.sbn-n{margin:8px 0 3px;font:700 30px/1 'Martian Mono',monospace}
.sbn-n small{font:500 11px Inter,sans-serif;opacity:.85}
.sbn-s{margin:0 0 12px;font:500 11px 'Martian Mono',monospace;opacity:.85}
.sbn-b ul{list-style:none;margin:0;padding:0;font-size:12px}
.sbn-b li{display:flex;justify-content:space-between;gap:12px;padding:5px 0;border-top:1px solid rgba(15,25,35,.1)}
.sbn-b2 li,.sbn-b3 li{border-top-color:rgba(255,255,255,.18)}
.sbn-b li b{font-family:'Martian Mono',monospace}
.sbn-more{margin-top:14px;border:1px solid #e5e4e0;border-radius:8px}
.sbn-more summary{cursor:pointer;padding:10px 14px;font:600 12px Inter,sans-serif;color:#374151;list-style-position:inside}
.sbn-more summary:hover{color:#0f1923}
.sbn-more[open] summary{border-bottom:1px solid #e5e4e0}
.sbn-tw{overflow-x:auto}
.sbn-tbl{width:100%;border-collapse:collapse;min-width:520px;font-size:12px}
.sbn-tbl th,.sbn-tbl td{padding:8px 14px;text-align:right;white-space:nowrap;border-top:1px solid #f0efeb}
.sbn-tbl th{font:700 9.5px Inter,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#9ca3af;background:#faf9f7;border-top:0}
.sbn-tbl td{font-family:'Martian Mono',monospace;color:#374151}
.sbn-tbl th:nth-child(-n+2),.sbn-tbl td:nth-child(-n+2){text-align:left}
.sbn-tbl td:first-child{font:600 12px Inter,sans-serif;color:#0f1923}
.sbn-tbl td:nth-child(2){font:400 12px Inter,sans-serif;color:#6b7280}
.sbn-tbl td i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:7px}
.sbn-tbl tfoot td{font-weight:700;color:#0f1923;border-top:2px solid #e5e4e0}
@media (max-width:640px){
  .sbn-body{padding:14px 16px}
  .sbn-grid{grid-template-columns:1fr;min-height:0}
  .sbn-b0,.sbn-b3{grid-row:auto;grid-column:auto}
  .sbn-n{font-size:24px}
}
