:root{
  color-scheme:dark;
  --bg:#090b0c;
  --panel:#101315;
  --panel-2:#14181a;
  --ink:#f0eee7;
  --muted:#929a9b;
  --line:#2b3133;
  --line-strong:#41494b;
  --accent:#f05a45;
  --signal:#a8e6a3;
  --map-land:#171b1d;
  --country:#98a3a5;
  --mono:"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;
  --sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}
html{background:var(--bg);scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);line-height:1.5}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:4px}
button,input,select{font:inherit}
button{color:inherit}
.skip-link{position:absolute;left:-9999px;top:auto}
.skip-link:focus{left:1rem;top:1rem;z-index:10000;background:var(--ink);color:var(--bg);padding:.7rem 1rem}
.site-header{height:68px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,4vw,64px);position:relative;z-index:20;background:rgba(9,11,12,.96)}
.brand{font-family:var(--mono);font-weight:700;letter-spacing:.07em;font-size:.95rem}
.top-nav{display:flex;gap:1.5rem;color:#c5c8c5;font-size:.88rem}
main{width:min(1560px,100%);margin:0 auto;padding:0 clamp(14px,3vw,48px) 3rem}
.hero{padding:clamp(38px,7vw,92px) 0 34px;border-bottom:1px solid var(--line)}
.eyebrow,.terminal-label{font-family:var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--signal);font-size:.72rem}
h1{font-family:var(--mono);font-size:clamp(2.8rem,8vw,7.5rem);line-height:.86;letter-spacing:-.075em;margin:.35rem 0 1.4rem;max-width:13ch}
.hero-copy{max-width:900px;font-size:clamp(1rem,1.55vw,1.3rem);color:#c8cbc7;margin:0 0 2.1rem}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line);max-width:1050px}
.stats>div{padding:1rem 1.1rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.stats strong{font-family:var(--mono);display:block;font-size:1.4rem;color:var(--ink)}
.stats span{font-size:.76rem;color:var(--muted)}
.control-strip{display:grid;grid-template-columns:minmax(250px,2fr) minmax(170px,.8fr) minmax(110px,.5fr) auto auto;gap:12px;align-items:end;padding:18px 0;border-bottom:1px solid var(--line)}
label{display:block;color:var(--muted);font-size:.72rem;font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;margin-bottom:6px}
input[type="search"],select{width:100%;min-height:44px;border:1px solid var(--line-strong);background:#0d1011;color:var(--ink);padding:0 .8rem;border-radius:0;outline:none}
input[type="search"]:focus,select:focus,button:focus-visible,a:focus-visible{outline:2px solid var(--signal);outline-offset:2px}
.toggle-row{display:flex;align-items:center;gap:.6rem;min-height:44px;margin:0;padding:0 .7rem;border:1px solid var(--line);cursor:pointer;white-space:nowrap}
.toggle-row input{position:absolute;opacity:0;pointer-events:none}
.toggle-row span:last-child{font-size:.72rem;color:#c6cbc6}
.toggle-ui{width:32px;height:18px;border:1px solid var(--line-strong);position:relative;background:#0c0e0f}
.toggle-ui:after{content:"";position:absolute;width:10px;height:10px;top:3px;left:3px;background:var(--muted);transition:.15s}
.toggle-row input:checked+.toggle-ui:after{left:17px;background:var(--signal)}
.button{min-height:44px;border:1px solid var(--line-strong);background:transparent;padding:0 .9rem;font-family:var(--mono);font-size:.74rem;text-transform:uppercase;letter-spacing:.04em;cursor:pointer}
.button:hover{border-color:var(--ink)}
.atlas-shell{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(320px,.78fr);min-height:720px;border-bottom:1px solid var(--line)}
.map-column{min-width:0;border-right:1px solid var(--line)}
.map-head{height:64px;display:flex;justify-content:space-between;align-items:center;padding:0 16px;border-bottom:1px solid var(--line)}
.map-head>div:first-child{display:flex;flex-direction:column;gap:2px}
.map-head strong{font-size:.82rem;font-weight:500;color:#c9ceca}
.view-tabs{display:flex;border:1px solid var(--line)}
.tab{border:0;border-right:1px solid var(--line);background:#0c0f10;padding:.5rem .85rem;font-family:var(--mono);font-size:.7rem;text-transform:uppercase;cursor:pointer}
.tab:last-child{border-right:0}.tab.active{background:var(--ink);color:var(--bg)}
.view-panel{height:656px}.view-panel[hidden]{display:none}
#map{height:610px;width:100%;background:#0b0e10}
.map-key{height:46px;display:flex;align-items:center;gap:18px;padding:0 14px;border-top:1px solid var(--line);font-family:var(--mono);font-size:.67rem;color:var(--muted);overflow:auto;white-space:nowrap}
.precision-dot{width:8px;height:8px;display:inline-block;border-radius:50%;margin-right:6px}.precision-dot.place{background:var(--accent)}.precision-dot.country{border:1px solid var(--country)}
.inspector{height:720px;overflow:auto;background:var(--panel);padding:20px}
.inspector-empty{min-height:100%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;max-width:390px;margin:auto}
.inspector-empty h2{font-size:1.65rem;line-height:1.15;margin:.75rem 0}.inspector-empty p{color:var(--muted);font-size:.9rem}
.crosshair{width:56px;height:56px;border:1px solid var(--line-strong);border-radius:50%;position:relative;margin-bottom:18px}.crosshair span:first-child{position:absolute;left:27px;top:8px;width:1px;height:40px;background:var(--line-strong)}.crosshair span:last-child{position:absolute;top:27px;left:8px;height:1px;width:40px;background:var(--line-strong)}
.location-kicker{display:flex;align-items:center;gap:.5rem;margin-bottom:.45rem}.location-kicker .pill{font-family:var(--mono);font-size:.61rem;border:1px solid var(--line-strong);padding:.2rem .38rem;color:var(--muted);text-transform:uppercase}
.inspector h2{font-family:var(--mono);font-size:1.35rem;line-height:1.15;margin:.35rem 0 .7rem}.inspector-summary{color:var(--muted);font-size:.82rem;margin-bottom:1rem}
.location-list{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.incident-card{padding:16px 0;border-bottom:1px solid var(--line)}
.incident-meta{display:flex;flex-wrap:wrap;gap:.45rem .7rem;font-family:var(--mono);font-size:.62rem;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}
.category-mark{display:inline-flex;align-items:center;gap:.35rem}.category-mark i{width:7px;height:7px;border-radius:50%;display:inline-block}
.incident-card h3{font-size:1rem;line-height:1.25;margin:.55rem 0 .65rem}.finding-label{font-family:var(--mono);font-size:.62rem;color:var(--signal);text-transform:uppercase;letter-spacing:.06em}.incident-card p{font-size:.86rem;color:#c3c7c3;margin:.25rem 0 .8rem}
.article-link{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--mono);font-size:.7rem;text-transform:uppercase;color:var(--ink);border-bottom:1px solid var(--accent);padding-bottom:2px}
.archive-list{height:100%;overflow:auto;padding:0 16px;background:#0b0e0f}.archive-item{display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:16px;padding:15px 0;border-bottom:1px solid var(--line);align-items:start}.archive-item time{font-family:var(--mono);font-size:.65rem;color:var(--muted)}.archive-item h3{font-size:.95rem;line-height:1.25;margin:0 0 .25rem}.archive-item p{font-size:.78rem;color:var(--muted);margin:.2rem 0}.archive-actions{display:flex;gap:.45rem}.mini-button{border:1px solid var(--line);background:transparent;color:var(--muted);font-family:var(--mono);font-size:.62rem;padding:.35rem .5rem;cursor:pointer;text-transform:uppercase}.mini-button:hover{color:var(--ink);border-color:var(--ink)}
.method-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(24px,7vw,120px);padding:60px 0}.method-grid h2{font-size:clamp(1.6rem,3vw,2.8rem);line-height:1.05;margin:.45rem 0}.method-copy{max-width:780px}.method-copy p{color:#bdc2bd}.method-copy strong{color:var(--ink)}
.site-footer{border-top:1px solid var(--line);padding:30px clamp(18px,4vw,64px) 44px;display:flex;justify-content:space-between;gap:20px;color:var(--muted)}.site-footer p{font-family:var(--mono);font-size:.68rem}.footer-links{display:flex;gap:1.3rem;font-size:.8rem}
.leaflet-container{font-family:var(--sans);background:#0b0e10}.leaflet-tile{filter:grayscale(1) brightness(.38) contrast(1.25)}.leaflet-control-zoom a{background:#0e1112!important;color:#d5d8d3!important;border-color:var(--line)!important}.leaflet-control-attribution{background:rgba(9,11,12,.83)!important;color:#6d7677!important;font-size:9px!important}.leaflet-control-attribution a{color:#8a9495!important}
.atlas-marker{background:transparent!important;border:0!important}.marker-core{display:flex;align-items:center;justify-content:center;border-radius:50%;background:#111516;border:2px solid var(--accent);color:var(--ink);font-family:var(--mono);font-weight:700;font-size:11px;box-shadow:0 0 0 4px rgba(9,11,12,.7)}.marker-core.country{border-color:#80898a;border-style:dashed;color:#c1c7c4}.marker-core.active{background:var(--ink);color:var(--bg);border-color:var(--ink)}
@media(max-width:980px){.top-nav{display:none}.control-strip{grid-template-columns:1fr 1fr}.search-wrap{grid-column:1/-1}.atlas-shell{grid-template-columns:1fr}.map-column{border-right:0}.inspector{height:auto;min-height:360px;border-top:1px solid var(--line)}.method-grid{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.view-panel{height:570px}#map{height:524px}}
@media(max-width:620px){main{padding:0 12px 2rem}.site-header{padding:0 14px}.hero{padding-top:42px}h1{font-size:clamp(2.6rem,16vw,4.8rem)}.stats{grid-template-columns:1fr 1fr}.control-strip{grid-template-columns:1fr}.search-wrap{grid-column:auto}.compact{min-width:0}.atlas-shell{margin:0 -12px}.map-head{height:auto;min-height:68px;gap:12px;padding:10px 12px}.map-head .terminal-label{font-size:.62rem}.view-panel{height:540px}#map{height:494px}.map-key{gap:12px}.inspector{padding:18px 14px}.archive-item{grid-template-columns:76px minmax(0,1fr)}.archive-actions{grid-column:2}.method-grid{padding:42px 0}.site-footer{padding:26px 14px 40px;flex-direction:column}.footer-links{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.toggle-ui:after{transition:none}}
