/* V7.14 main map hierarchy; Menta palette, geography never encoded by color alone. */
.map-hierarchy-intro{margin:.8rem 0 1rem}.map-view-choice{display:flex;gap:.55rem;flex-wrap:wrap}.map-view-choice button{min-height:46px;border:1px solid #6f947f;border-radius:12px;background:#fff;color:#245b48;padding:.62rem .9rem;font:inherit;font-weight:750;cursor:pointer}.map-view-choice button[aria-pressed=true]{background:#245b48;color:#fff;border-color:#245b48}.map-view-choice button:focus-visible,.map-breadcrumb button:focus-visible,.map-side button:focus-visible,.map-hierarchy-toolbar button:focus-visible{outline:3px solid #245b48;outline-offset:3px}.map-mode-help{margin:.55rem 0;font-size:.9rem;line-height:1.55;color:#41594b}
.map-breadcrumb{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap;margin:.6rem 0 0;padding:.45rem .55rem;border:1px solid #d1dfd3;border-radius:12px;background:#f5f8f3;font-size:.85rem}.map-breadcrumb button{border:0;background:transparent;color:#245b48;text-decoration:underline;font:inherit;cursor:pointer;padding:.3rem}.map-breadcrumb span[aria-current=page]{font-weight:750;color:#213f32}
.map-hierarchy-form .map-filters{grid-template-columns:minmax(180px,1.4fr) minmax(145px,.8fr) minmax(145px,.8fr) minmax(165px,.9fr) minmax(180px,1fr) auto}.map-hierarchy-form [hidden]{display:none!important}.map-filter-actions{align-items:center}
.map-hierarchy-area{margin-top:1rem}.map-hierarchy-toolbar{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center;margin:.55rem 0}.map-hierarchy-toolbar button{min-height:44px;border:1px solid #789584;border-radius:10px;background:#fff;color:#245b48;padding:.55rem .75rem;font:inherit;font-weight:650;cursor:pointer}.map-hierarchy-toolbar button:hover{background:#edf6ef}.map-hierarchy-toolbar p{flex:1 1 250px;margin:0;font-size:.8rem;line-height:1.45}
.map-hierarchy-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:1rem;align-items:start}.map-hierarchy-layout[hidden]{display:none!important}.map-canvas.hierarchy-canvas{height:500px;width:100%;border:1px solid #829f8e;border-radius:16px;background:#edf2eb;z-index:0}.map-side{display:grid;gap:.8rem}.map-side-card{border:1px solid #c2d5c6;border-radius:15px;background:#f7faf6;padding:.9rem}.map-side-card h2,.map-side-card h3{margin:0 0 .35rem;line-height:1.3}.map-side-card h2{font-size:1.1rem}.map-side-card h3{font-size:.95rem}.map-level-total{font-size:1.55rem;font-weight:800;margin:.2rem 0}.map-level-coverage{font-size:.84rem;line-height:1.5;margin:.25rem 0}.map-level-admin{margin:.65rem 0 0;display:grid;gap:.25rem}.map-level-admin>div{display:flex;justify-content:space-between;gap:1rem;font-size:.8rem}.map-level-admin dt{font-weight:400}.map-level-admin dd{margin:0;font-weight:750}
.map-choice-list{display:grid;gap:.35rem;max-height:310px;overflow:auto;padding-right:.15rem}.map-choice-list button{display:flex;align-items:center;justify-content:space-between;gap:.6rem;width:100%;min-height:43px;border:1px solid #b7c9bd;border-radius:9px;background:#fff;color:#254738;text-align:left;padding:.48rem .6rem;font:inherit;cursor:pointer}.map-choice-list button:hover{background:#edf6ef}.map-choice-list button[aria-pressed=true]{border:2px solid #245b48;background:#deeee2;font-weight:750}.map-choice-list strong{font-size:.8rem}.map-choice-help{font-size:.76rem;line-height:1.45;color:#4b6254;margin:.25rem 0 .5rem}.map-choice-empty{font-size:.82rem;line-height:1.45;margin:.35rem 0}
.hierarchy-balloon{background:transparent!important;border:0!important}.hierarchy-balloon>span{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:46px;background:#fffefb;border:2px solid #35694f;border-radius:13px;box-shadow:0 3px 8px #19392b26;color:#173e2d;font-size:11px;line-height:1.15;padding:4px}.hierarchy-balloon b{font-size:16px}
.hierarchy-pin{background:transparent!important;border:0!important}.hierarchy-pin span{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;border:2px solid #fff;background:#245b48;color:#fff;font-size:11px;font-weight:800;box-shadow:0 2px 5px #203c324d}.hierarchy-pin.non-asl span{background:#5c456f}.hierarchy-pin.unknown span{background:#60502f}.hierarchy-pin.group span{background:#203f35;font-size:16px}.hierarchy-pin.indicative span{border:2px dashed #fff}
.hierarchy-popup{color:#223d32}.hierarchy-popup h2,.hierarchy-popup h3{margin:.15rem 0 .35rem;line-height:1.3}.hierarchy-popup p{font-size:.82rem;line-height:1.45;margin:.3rem 0}.hierarchy-popup section+section{border-top:1px solid #d4dfd7;margin-top:.65rem;padding-top:.5rem}.hierarchy-popup a{display:inline-flex;align-items:center;min-height:42px;font-weight:750;color:#174c35!important;text-decoration:underline}
.map-hierarchy-note{font-size:.78rem;line-height:1.55;color:#41594b;margin:.65rem 0}.map-hierarchy-note a{color:#245b48;text-decoration:underline}.map-hierarchy-area .leaflet-control-attribution{font-size:10px;max-width:100%;overflow-wrap:anywhere;background:#fffefbea}.map-hierarchy-area .leaflet-control-attribution a{color:#245b48}.map-hierarchy-area .leaflet-control-zoom a{width:38px;height:38px;line-height:38px;color:#244c37}.map-hierarchy-area .leaflet-popup-content{margin:14px}
@media(max-width:1050px){.map-hierarchy-form .map-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.map-hierarchy-layout{grid-template-columns:minmax(0,1fr) 240px}.map-canvas.hierarchy-canvas{height:440px}}
@media(max-width:720px){.map-hierarchy-form .map-filters{grid-template-columns:1fr 1fr}.map-hierarchy-layout{grid-template-columns:1fr}.map-canvas.hierarchy-canvas{height:360px}.map-side{grid-template-columns:1fr}.map-choice-list{max-height:250px}.map-view-choice button{flex:1 1 160px}.map-hierarchy-toolbar{align-items:stretch}.map-hierarchy-toolbar button{flex:1 1 140px}.map-hierarchy-toolbar p{flex-basis:100%}}
@media(max-width:430px){.map-hierarchy-form .map-filters{grid-template-columns:1fr}.map-canvas.hierarchy-canvas{height:330px}.map-level-total{font-size:1.35rem}.hierarchy-balloon>span{font-size:9px;min-height:42px;padding:3px;border-radius:10px}.hierarchy-balloon b{font-size:14px}}
@media(prefers-reduced-motion:reduce){.map-hierarchy-area *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media print{.map-view-choice,.map-breadcrumb,.map-hierarchy-toolbar,.map-canvas,.map-choice-list{display:none!important}.map-hierarchy-layout{display:block}.map-side-card{break-inside:avoid}}
