/* st.css — jurisdiction map */
.grid-st { display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; }
.grid-st > * { min-width: 0; }
@media (min-width: 900px) { .grid-st { grid-template-columns: minmax(0, 1fr) 320px; align-items: start; } }
.stmap { height: 520px; }
.stmap [data-st="map"] { position: absolute; inset: 0; background: #050608; }
@media (min-width: 900px) { .stmap { height: 640px; } }
.stmap .leaflet-control-attribution { background: rgba(5,6,8,.7); color: #8f887b; font: 9px/1.4 var(--t-mono); }
.stmap .leaflet-control-attribution a { color: #b3ac9e; }
.stmap .leaflet-control-zoom a { background: rgba(5,6,8,.85); color: #ece8de; border-color: rgba(236,232,222,.2); border-radius: 0 !important; width: 36px; height: 36px; line-height: 36px; }
.stmap .leaflet-control-scale-line { background: rgba(5,6,8,.6); color: #ece8de; border-color: #ece8de; font: 9px var(--t-mono); }
.stmap .leaflet-interactive { cursor: crosshair; }
.st-tip { background: rgba(5,6,8,.9); color: #ece8de; border: 1px solid rgba(236,232,222,.25); border-radius: 0; font: 500 10px/1.3 var(--t-mono); box-shadow: none; padding: 3px 6px; }
.st-tip::before { display: none; }
.st-lbl span { position: absolute; white-space: nowrap; font: 500 8.5px/1 var(--t-mono); color: #8fc0d2; text-shadow: 0 1px 3px #000; letter-spacing: .04em; }
.st-haz i { position: absolute; inset: 1px; background: #e35d70; transform: rotate(45deg); box-shadow: 0 0 0 1px #000; }
.st-layers { display: flex; flex-wrap: wrap; gap: 0 18px; margin-top: 10px; padding: 8px 12px; border: 1px solid var(--t-hair2); background: rgba(17,17,21,.72); }
.st-layers label { display: flex; align-items: center; gap: 7px; min-height: 34px; font: 11.5px/1.2 var(--t-mono); color: var(--t-ink); cursor: pointer; }
.st-layers input { appearance: none; -webkit-appearance: none; width: 13px; height: 13px; border: 1px solid var(--t-muted); margin: 0; background: transparent; flex: none; }
.st-layers input:checked { background: #e0283f; border-color: #e0283f; box-shadow: inset 0 0 0 2px #0b0b0d; }
.st-layers b { font: 500 10px/1 var(--t-mono); color: var(--t-dim); }
.st-act { background: none; border: 0; padding: 0; min-height: 34px; color: var(--t-link); font: 500 11px/1 var(--t-mono); letter-spacing: .14em; text-transform: uppercase; cursor: pointer; border-bottom: 1px solid transparent; }
.st-act::after { content: ' →'; }
.st-act:hover { border-bottom-color: currentColor; }
.st-inspect { border: 1px solid var(--t-hair2); background: rgba(17,17,21,.82); padding: 14px; min-height: 200px; }
@media (min-width: 900px) { .st-inspect { position: sticky; top: 76px; max-height: 640px; overflow: auto; } }
.st-ih { font: 500 10.5px/1.4 var(--t-mono); letter-spacing: .18em; text-transform: uppercase; color: #e0283f; padding-bottom: 10px; border-bottom: 1px solid var(--t-hair2); }
.st-inspect dl { margin: 0; }
.st-inspect dl > div { display: flex; justify-content: space-between; gap: 14px; padding: 8px 0; border-bottom: 1px solid var(--t-hair); }
.st-inspect dt { font: 500 9.5px/1.5 var(--t-mono); letter-spacing: .14em; text-transform: uppercase; color: var(--t-dim); flex: none; max-width: 48%; }
.st-inspect dd { margin: 0; font: 500 12.5px/1.4 var(--t-mono); color: var(--t-ink); text-align: right; overflow-wrap: anywhere; }
.st-img { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; margin-top: 10px; filter: grayscale(1) contrast(1.3); background: #050608; }
.st-back { margin-top: 6px; }
@media (max-width: 640px) { .stmap .gev-hud.tr { display: none; } }
