.local-constellation{margin:var(--space-5,24px) 0;padding:var(--space-4,20px);border:1px solid var(--color-border,#d9dde3);background:var(--color-surface,#fff)}
.local-constellation-heading{display:flex;justify-content:space-between;gap:var(--space-4,20px)}
.local-constellation-kicker{margin:0;color:var(--color-text-soft,#59636f);font:600 .75rem/1.3 var(--font-label,system-ui);letter-spacing:.08em;text-transform:uppercase}
.local-constellation-heading h2{margin:.25rem 0 .35rem;font-size:1.2rem}
.local-constellation-summary{margin:0;color:var(--color-text-soft,#59636f)}
.local-constellation-body{margin-top:var(--space-4,20px)}
.local-constellation-map{display:block;width:100%;max-width:420px;height:auto;margin:0 auto var(--space-4,20px);color:var(--color-action,#1769aa)}
.local-district-map{max-width:420px;overflow:visible;color:var(--color-text,#17212b)}
.local-district-map-shape{stroke:var(--color-surface,#fff);stroke-width:1.3;vector-effect:non-scaling-stroke}
.local-district-map-adjacent{fill:var(--color-action-soft,#a9cbe2);opacity:.82}
.local-district-map-central{fill:var(--color-action,#1769aa);opacity:.92;stroke:var(--color-text,#17212b);stroke-width:2;paint-order:stroke;vector-effect:non-scaling-stroke}
.local-district-map-label{font:600 11px/1 var(--font-label,system-ui);paint-order:stroke;stroke:var(--color-surface,#fff);stroke-width:3px;stroke-linejoin:round;pointer-events:none}
/* Pair each label with the opposite edge treatment of its map fill: the
   highlighted action-blue district gets a light label with a dark keyline,
   while lighter adjacent districts keep dark ink with a light keyline. */
.local-district-map-label-central{fill:var(--color-surface,#fff);stroke:var(--color-text,#17212b)}
.local-district-map-label-adjacent{fill:var(--color-text,#17212b)}
.local-constellation-list{display:grid;gap:.5rem;margin:0;padding:0;list-style:none}
.local-constellation-list-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.25rem .75rem;padding:.55rem .65rem;border-block:1px solid var(--color-border,#d9dde3);min-width:0}
.local-constellation-node-main{min-width:0;display:flex;gap:.45rem;align-items:baseline}
.local-constellation-node-link,.local-constellation-node-held{min-width:0;overflow-wrap:anywhere}
.local-constellation-node-dot{color:var(--color-action,#1769aa);font-size:.7rem}
.local-constellation-relation{grid-column:1/-1;color:var(--color-text-soft,#59636f);font-size:.9rem}
.local-constellation-held-label{color:var(--color-text-soft,#59636f);font-size:.8rem}
.local-constellation-empty{margin:var(--space-4,20px) 0 0;color:var(--color-text-soft,#59636f)}
@media(max-width:680px){.local-constellation-list-item{grid-template-columns:1fr}}
