:root{
  --bg:#14120f;--paper:#e9dfc4;--paper2:#d9cca8;--ink:#1d1a15;--muted:#6b6250;
  --red:#b3261e;--amber:#e0a526;--grey:#8a8a8a;--line:#3a342a;
  --mono:'IBM Plex Mono','Sarabun',ui-monospace,monospace;
  --type:'Special Elite','Sarabun',ui-monospace,monospace;
  --th:'Sarabun','IBM Plex Mono',sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:#e6dcc4;font-family:var(--th);font-size:15px}
body{background:radial-gradient(ellipse at top,#262019 0%,#14120f 60%) fixed}
a{color:#7fb3ff}
.grain{pointer-events:none;position:fixed;inset:0;z-index:2000;opacity:.07;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
.scan{pointer-events:none;position:fixed;inset:0;z-index:2001;
  background:repeating-linear-gradient(0deg,rgba(0,0,0,.12) 0 1px,transparent 1px 3px)}
.hdr{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:18px 20px 10px;flex-wrap:wrap}
.tab{display:inline-block;background:var(--paper2);color:var(--ink);font-family:var(--type);padding:4px 14px;border-radius:6px 6px 0 0;font-size:12px;letter-spacing:2px}
h1{margin:0;font-family:var(--type);font-weight:400;font-size:clamp(20px,4vw,34px);letter-spacing:2px;color:var(--paper)}
h1 .th{font-family:var(--th);font-weight:700}
.sub{margin:4px 0 0;color:#b5a988;font-family:var(--mono);font-size:13px}
.redact{background:#000;color:#000;border-radius:2px;user-select:none}
.hdr-right{text-align:right}
.stamp{display:inline-block;border:4px double var(--red);color:var(--red);font-family:var(--type);font-size:24px;
  padding:4px 14px;transform:rotate(-8deg);letter-spacing:3px;line-height:1;opacity:.9;text-align:center;
  mix-blend-mode:screen}
.stamp small{font-family:var(--th);font-weight:700;font-size:16px;letter-spacing:1px}
.updated{margin-top:14px;font-family:var(--mono);font-size:12px;color:#b5a988}
.sample-banner{background:var(--amber);color:#000;text-align:center;font-weight:700;padding:6px;font-family:var(--mono)}
.tabs{display:flex;gap:4px;padding:0 20px;flex-wrap:wrap;border-bottom:2px solid var(--paper2)}
.tabs button{background:#2b261e;color:#cfc3a3;border:1px solid var(--line);border-bottom:none;border-radius:8px 8px 0 0;
  padding:8px 14px;font-family:var(--th);font-size:14px;cursor:pointer}
.tabs button.on{background:var(--paper2);color:var(--ink);font-weight:700}
.folder{background:linear-gradient(180deg,var(--paper),var(--paper2));color:var(--ink);border-radius:4px;
  box-shadow:0 2px 0 #b9a97f,0 8px 24px rgba(0,0,0,.5)}
.counters{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;padding:14px 20px}
.ctr{background:#211d17;border:1px solid var(--line);border-left:4px solid var(--red);padding:10px 12px;font-family:var(--mono)}
.ctr .n{font-size:26px;color:var(--paper);font-family:var(--type)}
.ctr .l{font-size:12px;color:#a99d7c}
.ctr ul{list-style:none;margin:4px 0 0;padding:0;font-size:12px;color:#cfc3a3;max-height:110px;overflow:auto}
.ctr li{display:flex;justify-content:space-between;gap:6px;cursor:pointer}
.ctr li:hover{color:#fff}
.filters{margin:0 20px 14px;padding:10px 12px}
.f-row{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:flex-end}
.f-row label{display:flex;flex-direction:column;font-size:12px;font-family:var(--mono);color:var(--muted)}
.f-row .grow{flex:1;min-width:160px}
select,input{font-family:var(--th);font-size:14px;padding:5px 6px;border:1px solid #8c7d58;background:#f6efda;color:var(--ink);border-radius:2px}
.btn{font-family:var(--mono);background:var(--ink);color:var(--paper);border:none;padding:7px 12px;cursor:pointer;border-radius:2px}
.f-count{font-family:var(--mono);font-size:12px;margin-top:6px;color:var(--muted)}
main{padding:0 20px 20px}
.view{display:none}.view.on{display:block}
#view-map.on{display:grid;grid-template-columns:1fr 360px;gap:14px}
#view-map.on .dossier[hidden]{display:none}
#view-map.on:has(.dossier[hidden]){grid-template-columns:1fr}
.map-wrap{position:relative;padding:8px}
#map{height:min(68vh,620px);border:1px solid #8c7d58;background:#0b0b0b}
.legend{display:flex;flex-wrap:wrap;gap:10px;font-family:var(--mono);font-size:12px;padding:6px 2px 0}
.legend span{display:inline-flex;align-items:center;gap:4px}
.legend i{display:inline-block;width:12px;height:12px;border-radius:50%}
.dossier{padding:14px;max-height:min(72vh,660px);overflow:auto;position:relative}
.dossier h2{font-family:var(--type);font-weight:400;margin:0 0 4px;font-size:20px}
.dossier .close{position:absolute;right:10px;top:8px;background:none;border:none;font-size:20px;cursor:pointer}
.dossier .meta{font-family:var(--mono);font-size:12px;color:var(--muted);margin-bottom:8px}
.ev{border-top:1px dashed #9c8c62;padding:8px 0}
.ev .dt{font-family:var(--mono);font-size:12px;color:var(--muted)}
.ev .t{font-weight:600;margin:2px 0}
.ev .src{font-size:12px}
.ev .src a{color:#1d4f9a}
.badge{display:inline-block;font-family:var(--mono);font-size:11px;padding:0 6px;border:1.5px solid;border-radius:2px;margin-left:4px;transform:rotate(-2deg)}
.b-verified{color:#2e6b2e}.b-unverified{color:#9a6a00;border-style:dashed}.b-debunked{color:#666;text-decoration:line-through}
.tag{display:inline-block;font-family:var(--mono);font-size:11px;background:#d0c094;padding:0 5px;margin-right:3px;border-radius:2px}
.day{margin-bottom:14px;padding:12px 14px}
.day h3{margin:0 0 4px;font-family:var(--type);font-weight:400;font-size:18px;border-bottom:2px solid var(--ink);display:flex;justify-content:space-between}
.day h3 small{font-family:var(--mono);font-size:12px}
.ev.debunked .t{text-decoration:line-through;color:#666}
.thread,.watchbox{padding:14px;margin-bottom:14px}
.thread h3,.watchbox h3{margin:0 0 8px;font-family:var(--type);font-weight:400}
.steps{list-style:none;margin:0;padding:0 0 0 14px;border-left:3px solid var(--red)}
.steps li{position:relative;padding:4px 0 8px 8px}
.steps li::before{content:"";position:absolute;left:-21px;top:9px;width:11px;height:11px;background:var(--red);border-radius:50%}
.steps li.unverified::before{background:var(--amber)}
.steps li.debunked::before{background:var(--grey)}
.w-item{display:flex;gap:10px;border-top:1px dashed #9c8c62;padding:8px 0;align-items:baseline}
.w-item .d{font-family:var(--mono);font-weight:600;min-width:110px}
.w-item.past{opacity:.55}
.empty{font-family:var(--mono);padding:20px;color:#b5a988}
.ftr{border-top:1px solid var(--line);padding:14px 20px 30px;font-size:13px;color:#a99d7c;text-align:center}
.ftr .small{font-size:11px;opacity:.7}
.leaflet-popup-content-wrapper{background:var(--paper);color:var(--ink);font-family:var(--th);border-radius:2px}
.leaflet-popup-tip{background:var(--paper)}
@media (max-width:860px){
  #view-map.on{grid-template-columns:1fr}
  .hdr-right{text-align:left}
  .stamp{font-size:18px}
  #map{height:52vh}
  .dossier{max-height:none}
}
