:root{--navy:#0d2633;--ink:#193540;--muted:#60747d;--gold:#bf8236;--teal:#087e88;--line:#dce4e6;--paper:#f3f6f6}*{box-sizing:border-box}body{margin:0;color:var(--ink);font:16px/1.5 system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:#fff}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}button{cursor:pointer}button{border:1px solid var(--line);background:white;color:var(--ink);border-radius:5px;padding:9px 13px}button:hover{background:#e8f0f1}a{color:var(--teal)}header{height:84px;background:var(--navy);color:white;display:flex;align-items:center;justify-content:space-between;padding:0 32px;gap:24px}.brand{display:flex;align-items:center;gap:12px;color:white;text-decoration:none;font-size:23px;letter-spacing:4px;font-weight:600}.brand small{display:block;font-size:10px;letter-spacing:2.6px;color:#aec1c9}.mark{border:1px solid #be944d;color:#efc186;font-family:Georgia,serif;font-size:31px;line-height:43px;width:43px;text-align:center;font-weight:400}nav{display:flex;gap:5px}nav button{border:0;background:transparent;color:#bdcbd1;padding:29px 18px;border-radius:0;font-size:14px;border-bottom:3px solid transparent}nav button.active{color:white;border-bottom-color:#e3b371}nav button:hover{background:#173744}.edition{font-size:11px;letter-spacing:1.5px;color:#b6c6cd}.edition b{font-size:20px;color:#e3b371;padding-left:12px}.intro{display:flex;align-items:center;gap:35px;padding:28px 32px;border-bottom:1px solid var(--line)}.intro>div:first-child{margin-right:auto}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;color:var(--teal)}h1{font:38px/1.2 Georgia,serif;margin:7px 0}p{margin:10px 0;color:var(--muted)}.intro p{font-size:14px;margin-bottom:0}.stat{padding-left:26px;border-left:1px solid var(--line)}.stat strong{font:32px/1.3 Georgia,serif;display:block;color:var(--navy)}.stat span,.scope{font-size:12px;color:var(--muted)}.scope{max-width:210px;line-height:1.8}.scope b{font-weight:500;color:var(--ink)}.workspace{display:grid;grid-template-columns:286px minmax(320px,1fr) 324px;height:620px;min-height:560px}.sidebar{border-right:1px solid var(--line);display:flex;flex-direction:column;min-height:0;background:var(--paper)}.sidehead{padding:20px 20px 12px}h2{font:29px/1.3 Georgia,serif;margin:0 0 12px}.sidehead h2{font:600 17px/1.4 system-ui;margin:0}.sidehead p{font-size:13px;margin:4px 0}.layers{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:0 18px 16px}.layers button{font-size:13px;padding:7px}.layers button.active{background:var(--navy);border-color:var(--navy);color:white}.filters{padding:0 18px 14px;border-bottom:1px solid var(--line)}label{display:block;font-size:12px;font-weight:600;margin-bottom:5px}input[type=search],select{width:100%;border:1px solid #cdd9dd;border-radius:4px;padding:9px;background:white;color:var(--ink);font-size:14px}select{margin-top:0}.filters label:not(:first-child){margin-top:12px}.listheading{display:flex;justify-content:space-between;font-size:11px;text-transform:uppercase;letter-spacing:.6px;padding:12px 19px;color:var(--muted)}#results{overflow:auto;flex:1}.result{border:0;border-bottom:1px solid #e2e9eb;border-radius:0;display:block;width:100%;padding:13px 20px;text-align:left;background:transparent;position:relative}.result.active{background:white;border-left:3px solid var(--teal);padding-left:17px}.result-title{display:flex;justify-content:space-between;gap:10px;font-size:14px;font-weight:600}.result small{display:block;font-size:12px;color:var(--muted);margin-top:3px}.result .num{font-weight:400;color:var(--teal);white-space:nowrap}.mapwrap{position:relative;background:#132c39;overflow:hidden}#map{position:absolute;inset:0;background:#132c39}#map-loading{padding:100px 35px;color:#cadce3;text-align:center}.maptools{position:absolute;top:18px;left:18px;z-index:500;display:flex;gap:7px}.maptools button{font-size:12px;padding:8px 11px;box-shadow:0 2px 8px #0002}.map-caption{position:absolute;bottom:30px;left:18px;right:18px;background:#0d2633e8;color:#e1e9ed;padding:12px 14px;z-index:500;font-size:12px;max-width:410px;border:1px solid #36505d;border-radius:4px}.map-caption small{font-size:11px;color:#b2c5ce}.line{display:inline-block;width:19px;vertical-align:middle;border-top:2px solid;margin:0 6px 0 5px}.gold{color:#edbd70}.teal{color:#67d3ca}.mapbadge{position:absolute;top:83px;left:22px;font-size:11px;letter-spacing:2.5px;color:#9db5c1;z-index:400;pointer-events:none}.leaflet-control-zoom{margin-top:18px!important}.leaflet-tooltip{background:#102c3c!important;color:white!important;border-color:#4b6571!important;font-family:inherit;box-shadow:none!important}.detail{overflow:auto;padding:25px 24px;border-left:1px solid var(--line)}.detail .eyebrow{margin-bottom:10px}.detail h2{font-size:32px;margin:4px 0}.detail .sub{font-size:13px;margin-top:3px}.pill{display:inline-block;font-size:11px;background:#edf4f3;color:#356965;padding:4px 8px;border-radius:3px;margin:8px 0}.detail h3{font-size:13px;margin:22px 0 9px}.metricrow{border-top:1px solid var(--line);padding:12px 0;display:flex;justify-content:space-between;align-items:center;gap:10px}.metricrow span{font-size:13px}.metricrow small{display:block;font-size:11px;color:var(--muted)}.metricrow strong{font:25px Georgia,serif}.metricrow .unknown{font:14px system-ui;color:var(--muted)}.detail p{font-size:14px;line-height:1.65}.note{background:var(--paper);border-left:2px solid #bb903f;padding:12px;font-size:12px!important;margin:15px 0}.source-link{display:block;font-size:12px;padding:5px 0}.big-count{font:39px/1.2 Georgia,serif;margin:13px 0 3px}.unit{font-size:13px;color:var(--muted)}.timeline{display:flex;gap:26px;align-items:center;padding:20px 30px;background:#f6f8f8;border-top:1px solid var(--line)}.timeline strong{display:block;font:25px Georgia,serif;white-space:nowrap;margin-top:5px}.range{flex:1;max-width:470px}.range input{width:100%;accent-color:var(--teal)}.ticks{display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.timeline p{max-width:340px;font-size:12px}.timeline button{font-size:13px}.timeline button.selected{background:var(--navy);color:white}.timeline input:disabled{opacity:.4}.page{max-width:1240px;margin:auto;padding:40px 32px}.page h2{font-size:34px;margin-top:10px}.page p{font-size:15px;max-width:1000px}.tablewrap{overflow:auto;margin-top:25px;border:1px solid var(--line);border-radius:6px}table{border-collapse:collapse;width:100%;font-size:14px}th{text-align:left;padding:14px;background:var(--navy);color:white;font-size:12px;font-weight:500}td{padding:11px 14px;border-bottom:1px solid var(--line)}td:first-child button{padding:0;border:0;background:none;color:var(--teal);text-align:left;font-size:14px}td small{display:block;color:var(--muted);font-size:11px}tr:nth-child(even){background:var(--paper)}td:not(:first-child){font-variant-numeric:tabular-nums}.method-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-top:25px}.method-grid h3{font-size:17px;margin-top:25px}.coverage{padding:20px 25px;margin-top:25px;background:#edf5f4;border-left:3px solid var(--teal)}.coverage h3{margin:0}.section-title{margin-top:42px!important}.source-card{border-top:1px solid var(--line);padding:18px 0}.source-card a{font-size:16px;font-weight:600}.source-card p{font-size:14px;margin-bottom:0}.event-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.event-card{padding:20px;border:1px solid var(--line);border-radius:6px}.event-card h3{font:23px Georgia,serif;margin:10px 0}.event-card p{font-size:14px}.event-card button{font-size:13px}.empty{padding:25px 20px;color:var(--muted);font-size:14px}.review-date{font-size:12px!important;margin-top:30px}footer{padding:22px 32px;background:var(--navy);color:#acbec6;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px}footer span:first-child{letter-spacing:2px;font-size:11px}footer button{background:transparent;color:white;border-color:#3b5360;font-size:12px}.legend-dot{height:10px;width:10px;display:inline-block;border:2px solid #edbd70;border-radius:50%;margin-right:7px}.leaflet-container{font-family:inherit}.leaflet-control-attribution{font-size:10px!important}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #d6a75e}.detail button{font-size:13px}[hidden]{display:none!important}@media(min-width:1600px){.workspace{height:calc(100vh - 400px);min-height:620px;grid-template-columns:310px 1fr 360px}}@media(max-width:1150px){.workspace{grid-template-columns:245px 1fr 275px}.intro{gap:20px;padding:24px}.scope{display:none}.stat{padding-left:20px}.detail{padding:22px 17px}.edition{display:none}.timeline{gap:20px}.timeline p{max-width:250px}}@media(max-width:850px){header{padding:0 18px;height:auto;flex-wrap:wrap;gap:0}.brand{font-size:18px;padding:16px 0}.brand small{font-size:9px}nav{width:100%;justify-content:space-between}nav button{padding:12px 10px;flex:1}.intro{flex-wrap:wrap;gap:20px}.intro>div:first-child{width:100%}h1{font-size:34px}.stat{border:0;padding-left:0;padding-right:25px}.stat strong{font-size:27px}.workspace{height:auto;grid-template-columns:260px 1fr}.mapwrap{min-height:490px}.sidebar{height:490px}.detail{grid-column:1/-1;max-height:none;border-top:1px solid var(--line);padding:25px}.detail h2{font-size:30px}.timeline{flex-wrap:wrap}.timeline p{max-width:none;flex-basis:100%;margin:0}.timeline .range{max-width:none}.page{padding:30px 22px}.method-grid{gap:25px}footer span:nth-child(2){display:none}}@media(max-width:550px){.workspace{display:flex;flex-direction:column}.mapwrap{order:0;min-height:400px}.sidebar{order:1;height:auto;max-height:540px}.detail{order:2}.sidehead{padding-top:17px}.layers{grid-template-columns:repeat(4,1fr);padding-bottom:12px}.layers button{font-size:12px;padding:7px 4px}.filters{display:grid;grid-template-columns:1fr 1fr;gap:5px 10px}.filters label:first-child{grid-column:1}.filters input{grid-column:1}.filters label:not(:first-child){grid-column:2;grid-row:1;margin:0}.filters select{grid-column:2;grid-row:2}#results{max-height:245px}.intro{padding:20px}.intro p{font-size:13px}.timeline{padding:20px;gap:15px}.timeline>div:first-child{width:100%}.timeline .range{min-width:160px}.method-grid,.event-grid{grid-template-columns:1fr;gap:10px}.page h2{font-size:29px}footer{padding:20px}.map-caption{font-size:11px}.brand .mark{width:36px;line-height:36px}.scope{display:none}}

/* Maintain readable map caption on the light OSM basemap. */
.mapbadge{color:#294754;background:#fffffff0;padding:5px 9px;border-radius:3px;box-shadow:0 1px 4px #0002}

.layers button[data-layer="resistance"]{grid-column:1/-1}.resistance-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#b681e6;margin:0 8px}.event-card button{margin:4px 3px 4px 0}.layers{padding-bottom:10px}
