/* Layout: map row on top (main + right inset), panel under it */
.us-hs-wrap{display:block}
.us-hs-row{display:flex;gap:1rem;align-items:flex-start}
.us-hs-map{flex:1 1 auto;background:#fff;border:1px solid #e6e9ef;border-radius:14px;padding:10px;box-shadow:0 4px 20px rgba(0,0,0,.06)}
.us-hs-inset{width:260px;flex:0 0 260px}
@media (max-width:1100px){.us-hs-row{flex-direction:column}.us-hs-inset{width:100%;flex:0 0 auto}}

.us-hs-panel{margin-top:1rem;background:#fff;border:1px solid #e6e9ef;border-radius:14px;padding:18px;box-shadow:0 4px 20px rgba(0,0,0,.06)}
.us-hs-panel h2{margin:.25rem 0 .5rem;font-size:1.15rem}
.us-hs-content h3{margin:.25rem 0;font-size:1.05rem}
.us-hs-content p{margin:.25rem 0 .75rem}
.us-hs-content a{display:inline-block;margin-top:.4rem;text-decoration:none;border:1px solid #d5dae4;border-radius:10px;padding:.45rem .7rem}
.us-hs-content a:hover{background:#f7f9fe}

/* Map visuals */
svg.us-map, svg.us-inset{width:100%;height:auto;display:block}
.state{
  stroke:#6b7a90;stroke-width:.8;cursor:pointer;
  transition:transform .12s ease, filter .12s ease, stroke .2s ease;
}
.state:hover{filter:brightness(1.18) saturate(1.08)}
.state.active{stroke:#2a58a5;stroke-width:1.8}
.state:focus, .state:focus-visible{outline:none}

/* Borders, inset frame */
.boundary{fill:none;stroke:#9aa7b8;stroke-width:.6;pointer-events:none}
.inset-frame{background:#fff;border:1px solid #d3dae6;border-radius:12px;padding:8px}
.inset-label{font:12px/1.2 system-ui,-apple-system,Segoe UI,Roboto,Arial;color:#5b6470;margin:0 0 6px 2px}

/* Two-letter labels inside shapes; never intercept clicks */
.labels, .labels text, .labels .state-label{
  pointer-events:none !important;
  user-select:none; -webkit-user-select:none;
}
.labels text.state-label{
  font:600 11px/1 system-ui,-apple-system,Segoe UI,Roboto,Arial;
  fill:#2b333b; text-anchor:middle;
  paint-order:stroke; stroke:#ffffff; stroke-width:3px;
}
@media (max-width:900px){ .labels text.state-label{font-size:10px} }

/* NE callout codes on the right */
.callouts, .callouts *{pointer-events:none !important; user-select:none; -webkit-user-select:none;}
.callouts text{
  font:700 12px/1 system-ui,-apple-system,Segoe UI,Roboto,Arial; /* make codes a tad larger */
  fill:#2b333b;
}
.callouts .label-bg{
  fill:#fff; stroke:#d3dae6; stroke-width:1; rx:6; ry:6;
}
.callouts .leader{
  stroke:#6b7a90; stroke-width:.8; fill:none;
}

/* --- Force readable text/colors in the info panel --- */
.us-hs-panel{
  background:#fff;            /* keep panel white */
  color:#1f2937 !important;   /* base text color */
}

/* headings + paragraphs */
.us-hs-panel h2,
.us-hs-content h3{ color:#111827 !important; }
.us-hs-content p,
.us-hs-content li,
.us-hs-content strong,
.us-hs-content em{ color:#1f2937 !important; }

/* the "Read full guide" link button */
.us-hs-content a{
  color:#0f3d8a !important;           /* visible link color */
  background:#fff;                    /* keep it on white */
  border-color:#cbd5e1;
}
.us-hs-content a:hover{
  background:#eef4ff;
  color:#0a2f6b !important;
}
.us-hs-content a:visited{
  color:#5b21b6 !important;
}

/* ====== (existing map styles stay above) ====== */

/* ---------- State page styles ---------- */
.hs-page{max-width:1000px;margin:0 auto;padding:20px}
.hs-hero{background:#ffffff;border:1px solid #e6e9ef;border-radius:16px;padding:18px 18px 14px;box-shadow:0 4px 20px rgba(0,0,0,.06)}
.hs-hero-top{display:flex;justify-content:space-between;gap:12px;margin-bottom:.25rem}
.hs-back{font-size:.95rem;text-decoration:none;border:1px solid #d5dae4;border-radius:10px;padding:.35rem .6rem;color:#0f3d8a}
.hs-back:hover{background:#eef4ff}
.hs-updated{font-size:.9rem;color:#5b6470}
.hs-hero h1{margin:.2rem 0 .3rem;font-size:1.6rem}
.hs-sub{margin:.2rem 0 .5rem;color:#374151}
.hs-quick{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.3rem}
.hs-chip{font-size:.85rem;border:1px solid #e3e8f2;border-radius:999px;padding:.25rem .6rem;background:#f7f9fe;color:#1f2937}

.hs-toc{display:flex;flex-wrap:wrap;gap:.5rem;margin:10px 0 14px}
.hs-toc a{font-size:.92rem;text-decoration:none;border:1px solid #dce2ee;border-radius:10px;padding:.35rem .55rem;color:#0f3d8a}
.hs-toc a:hover{background:#eef4ff}

.hs-glance{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:10px 0 18px}
@media (max-width:900px){.hs-glance{grid-template-columns:repeat(2,1fr)}}
.hs-card{background:#fff;border:1px solid #e6e9ef;border-radius:14px;padding:12px}
.hs-card h3{margin:.1rem 0 .35rem;font-size:1rem}
.hs-ul{margin:.25rem 0 .5rem 1.1rem}
.hs-ol{margin:.25rem 0 .5rem 1.2rem}
.hs-section{background:#fff;border:1px solid #e6e9ef;border-radius:14px;padding:16px;margin:12px 0;box-shadow:0 2px 12px rgba(0,0,0,.04)}
.hs-section h2{margin:.1rem 0 .6rem}
.hs-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
@media (max-width:800px){.hs-grid-2{grid-template-columns:1fr}}

.hs-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid #e6e9ef;border-radius:12px;overflow:hidden}
.hs-table th,.hs-table td{padding:.6rem .7rem;border-bottom:1px solid #eef2f8}
.hs-table thead th{background:#f7f9fe;text-align:left}
.hs-table tbody tr:last-child td{border-bottom:none}

.hs-link{color:#0f3d8a;text-decoration:none;border-bottom:1px dotted #9db5e5}
.hs-link:hover{background:#eef4ff}

.hs-btn{display:inline-block;text-decoration:none;background:#0f3d8a;color:#fff;border-radius:10px;padding:.55rem .9rem;border:1px solid #0c3070}
.hs-btn:hover{filter:brightness(1.05)}
.hs-btn-secondary{display:inline-block;text-decoration:none;background:#fff;color:#0f3d8a;border-radius:10px;padding:.55rem .9rem;border:1px solid #cbd5e1}
.hs-btn-secondary:hover{background:#eef4ff}

.hs-program{border:1px dashed #e3e8f2;border-radius:12px;padding:10px;margin:.4rem 0}
.hs-faq{border:1px dashed #e3e8f2;border-radius:12px;padding:.6rem .8rem;margin:.45rem 0}
.hs-faq summary{cursor:pointer;font-weight:600}
.hs-contact h3{margin:.1rem 0 .3rem}
.hs-footer{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:.3rem}

/* Force readable text in panel & pages */
.us-hs-panel, .hs-page{background:#fff;color:#1f2937}
.us-hs-panel h2, .hs-page h1, .hs-page h2, .hs-page h3{color:#111827}
.us-hs-content a{color:#0f3d8a}
