:root{color-scheme:light;--bg:#f6f8f7;--surface:#fff;--text:#17211f;--muted:#52625e;--line:#c8d2d0;--sea:#eef4f6;--green:#0b2923;--link:#1f6fb2}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Calibri,'Segoe UI',sans-serif;font-size:16px}body.dark{color-scheme:dark;--bg:#10231e;--surface:#18372e;--text:#f1f6f4;--muted:#c1d5ce;--line:#617d73;--sea:#203d43;--green:#0b2923;--link:#b9dff7}header{background:#0b2923;color:#fff;display:flex;align-items:center;gap:16px;padding:18px 4vw}header img{object-fit:contain}h1{font-size:26px;margin:0}header p{margin:3px 0 0;color:#c8e2dc}header button{margin-left:auto;background:#eaf2ef;color:#0b2923}button,select{font:inherit;min-height:40px;border:1px solid var(--line);border-radius:8px;padding:7px 12px;background:var(--surface);color:var(--text)}button{cursor:pointer}button:hover{filter:brightness(.94)}button:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #188f87;outline-offset:3px}main{max-width:1480px;margin:auto;padding:24px 4vw}h2{font-size:21px;margin:0 0 8px}.intro p{margin:0;color:var(--muted)}.layout{display:grid;grid-template-columns:minmax(0,1fr) 315px;gap:28px;margin-top:20px;align-items:start}.map-section{min-width:0}.map-tools{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;font-size:14px;color:var(--muted);margin-bottom:8px}.map-tools button{min-width:40px}.map-tools>div{display:flex;gap:6px}#map-wrap{background:var(--sea);border:1px solid var(--line);border-radius:16px;position:relative;overflow:hidden}#map{display:block;width:100%;height:min(78vh,1000px);min-height:560px;touch-action:none}.region{stroke:#5c716c;stroke-width:.65;vector-effect:non-scaling-stroke;stroke-linejoin:round;cursor:crosshair}.live .region{cursor:pointer}.region:hover,.selected .region{stroke:#0b2923;stroke-width:2.5;filter:brightness(.95)}.selected .region{stroke-dasharray:5 2}.map-label{font-size:15px;fill:#17211f;paint-order:stroke;stroke:#fff;stroke-width:3px;pointer-events:none}#tooltip{position:absolute;pointer-events:none;max-width:300px;border:1px solid var(--line);border-radius:8px;padding:10px 13px;background:var(--surface);box-shadow:0 3px 16px #0002;color:var(--text);font-size:14px;overflow-wrap:anywhere}#tooltip strong{display:block;margin-bottom:4px}aside{min-width:0}aside>label{display:block;font-weight:bold;margin-bottom:6px}select{width:100%}#detail{margin-top:18px;padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow-wrap:anywhere;min-height:220px}#detail p{margin:10px 0;line-height:1.4}.eyebrow{font-size:12px;font-weight:bold;letter-spacing:1px;color:var(--muted)}#count{font-size:28px;font-weight:bold;color:var(--text)}a{color:var(--link)}#open{display:block;font-weight:bold;line-height:1.5}#open[hidden]{display:none}#note,.small{font-size:14px;color:var(--muted)}.legend{margin-top:24px}.legend h2{font-size:18px}#bands{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.band{display:flex;align-items:center;gap:5px;font-size:12px;white-space:nowrap}.band i{display:block;flex:0 0 15px;height:15px;border:1px solid #60706b;border-radius:3px}.grey-key{display:flex;align-items:center;gap:8px;font-size:14px;margin-top:14px}.grey-key i{width:26px;height:18px;flex:0 0 26px;background:linear-gradient(90deg,#b9bfc5,#e3e5e7);border:1px solid #777;border-radius:3px}.sources{margin-top:24px;max-width:1000px;color:var(--muted);font-size:14px;line-height:1.5}.sources summary{cursor:pointer;font-weight:bold;color:var(--text)}.sources a{overflow-wrap:anywhere}@media(max-width:850px){.layout{grid-template-columns:minmax(0,1fr) 265px;gap:16px}main{padding:20px 3vw}#bands{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){header{gap:10px;padding:14px}header img{width:40px;height:40px}h1{font-size:20px}header p{font-size:13px}header button{font-size:13px;padding:7px 9px}.layout{display:flex;flex-direction:column}.map-section,aside{width:100%}#map{min-height:440px;height:68vh}#detail{min-height:0}#bands{grid-template-columns:repeat(4,minmax(0,1fr))}.map-tools>span{font-size:12px}.band{font-size:11px}#tooltip{max-width:230px}button{min-height:44px}}
