:root{
  --ground:#DCDFE2;
  --panel:#F4F5F6;
  --panel-2:#E7EAEC;
  --ink:#1B2126;
  --muted:#6C767E;
  --line:#B2B9BF;
  --line-soft:#C8CDD2;
  --cyan:#00707E;
  --magenta:#9B1B66;
  --amber:#946400;
  --grid:rgba(27,33,38,.055);
  --shadow:0 1px 0 rgba(255,255,255,.7) inset, 0 1px 2px rgba(27,33,38,.10);
}
@media (prefers-color-scheme: dark){
  :root{
    --ground:#12171B;
    --panel:#1A2126;
    --panel-2:#222A30;
    --ink:#E3E9ED;
    --muted:#8C979F;
    --line:#39434B;
    --line-soft:#2C353B;
    --cyan:#3ED0E0;
    --magenta:#FF74B8;
    --amber:#EBB01F;
    --grid:rgba(227,233,237,.06);
    --shadow:0 1px 0 rgba(255,255,255,.04) inset, 0 1px 2px rgba(0,0,0,.4);
  }
}

*{box-sizing:border-box}
html,body{margin:0}
body{
  background:var(--ground);
  color:var(--ink);
  font:400 15px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans","Noto Sans SC","Noto Sans JP","Noto Sans KR","Noto Sans Arabic","Noto Sans Devanagari",sans-serif;
  -webkit-font-smoothing:antialiased;
  padding:clamp(20px,4vw,56px) clamp(16px,4vw,56px) 64px;
}
.wrap{max-width:1120px;margin:0 auto}

.mono{font-family:"SF Mono",SFMono-Regular,ui-monospace,Menlo,Consolas,monospace}

/* Hidden by clipping rather than by an off-canvas offset: a large negative offset
   would widen the document, and in RTL that overflow is scrollable — which parks
   the whole page out of view on load. */
.skip{position:absolute;top:0;inset-inline-start:0;width:1px;height:1px;overflow:hidden;
  clip-path:inset(50%);white-space:nowrap;
  background:var(--ink);color:var(--panel);padding:10px 14px;z-index:99}
.skip:focus{width:auto;height:auto;clip-path:none;top:8px;inset-inline-start:8px}

/* ---------- masthead ---------- */
.masthead{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;
  border-bottom:1px solid var(--line);padding-bottom:14px}
.eyebrow{font-family:"SF Mono",SFMono-Regular,ui-monospace,Menlo,Consolas,monospace;
  font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);
  display:flex;align-items:center;gap:10px}
.dot{width:7px;height:7px;border-radius:50%;background:var(--muted);flex:none}
.dot.live{background:var(--cyan);box-shadow:0 0 0 0 currentColor;animation:ping 2.4s ease-out infinite;color:var(--cyan)}
@keyframes ping{0%{box-shadow:0 0 0 0 rgba(0,112,126,.45)}70%{box-shadow:0 0 0 7px rgba(0,112,126,0)}100%{box-shadow:0 0 0 0 rgba(0,112,126,0)}}

.bars{display:flex;height:7px;width:154px;border:1px solid var(--line);flex:none}
.bars i{flex:1}
.bars i:nth-child(1){background:#C0C0C0}
.bars i:nth-child(2){background:#C0C000}
.bars i:nth-child(3){background:#00C0C0}
.bars i:nth-child(4){background:#00C000}
.bars i:nth-child(5){background:#C000C0}
.bars i:nth-child(6){background:#C00000}
.bars i:nth-child(7){background:#2020C0}

/* ---------- hero ---------- */
.verdict{padding:clamp(24px,4vw,44px) 0 clamp(24px,4vw,44px);border-bottom:1px solid var(--line)}
h1{
  font:600 13px/1.35 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  letter-spacing:.16em;text-transform:uppercase;color:var(--muted);
  margin:0 0 clamp(14px,2.5vw,22px);max-width:44ch;
}
#verdictWord{
  font-family:"Avenir Next Condensed","Roboto Condensed","Arial Narrow",-apple-system,sans-serif;
  font-weight:700;text-transform:uppercase;letter-spacing:-.005em;line-height:.9;
  font-size:clamp(2.6rem,10vw,7rem);margin:0;
  color:var(--ink);
  transition:color .25s ease;
}
:lang(ar) #verdictWord,:lang(hi) #verdictWord,:lang(ja) #verdictWord,:lang(ko) #verdictWord,:lang(zh) #verdictWord{
  font-family:inherit;font-weight:700;text-transform:none;font-size:clamp(2.2rem,7.5vw,5rem);line-height:1.05
}
.v-extended  #verdictWord{color:var(--cyan)}
.v-mirrored  #verdictWord{color:var(--magenta)}
.v-mixed     #verdictWord{color:var(--amber)}
.v-blocked   #verdictWord,.v-unsupported #verdictWord{color:var(--muted)}
#verdictLine{margin:16px 0 0;max-width:58ch;font-size:1.02rem;color:var(--ink)}
#verdictLine b{font-weight:600}
.lede{margin:18px 0 0;max-width:62ch;font-size:14.5px;color:var(--muted)}
.actions{margin-top:22px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}
button{
  font:600 13px/1 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  letter-spacing:.02em;
  background:var(--ink);color:var(--panel);border:1px solid var(--ink);
  padding:11px 18px;border-radius:2px;cursor:pointer;
}
button.ghost{background:transparent;color:var(--ink);border-color:var(--line)}
button:hover{opacity:.85}
button:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}
.hint{font-size:12.5px;color:var(--muted);max-width:46ch}
.hint.warn{color:var(--magenta)}

/* ---------- layout ---------- */
.cols{display:grid;grid-template-columns:1.55fr 1fr;gap:1px;background:var(--line);
  border:1px solid var(--line);margin-top:1px}
@media (max-width:820px){.cols{grid-template-columns:1fr}}
.pane{background:var(--panel);padding:18px}
.pane h2{font:600 11px/1 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:0 0 14px}

/* ---------- the map ---------- */
#map{position:relative;height:340px;background:var(--panel-2);direction:ltr;
  background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);
  background-size:22px 22px;overflow:hidden}
@media (max-width:820px){#map{height:250px}}
.scr{position:absolute;border:1.5px solid var(--ink);background:var(--panel);
  padding:9px 10px;overflow:hidden;transition:all .3s cubic-bezier(.2,.7,.3,1)}
.scr.dup{border-style:solid;box-shadow:var(--shadow)}
.scr.current{border-color:var(--cyan);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--cyan) 18%,transparent)}
.scr .n{font-family:"Avenir Next Condensed","Roboto Condensed","Arial Narrow",sans-serif;
  font-weight:700;font-size:26px;line-height:.9;letter-spacing:-.02em}
.scr .res{font-family:"SF Mono",SFMono-Regular,ui-monospace,Menlo,monospace;font-size:10.5px;color:var(--muted);margin-top:3px;white-space:nowrap}
.scr .tags{margin-top:6px;display:flex;gap:4px;flex-wrap:wrap}
.scr .tags span{font-family:"SF Mono",SFMono-Regular,ui-monospace,Menlo,monospace;
  font-size:8.5px;letter-spacing:.09em;text-transform:uppercase;
  border:1px solid var(--line);padding:1.5px 4px;color:var(--muted);white-space:nowrap}
.scr.tiny{padding:4px 5px}
.scr.tiny .res,.scr.tiny .tags{display:none}
.scr.tiny .n{font-size:15px}
#win{position:absolute;border:1.5px dashed var(--cyan);pointer-events:none;
  background:color-mix(in srgb,var(--cyan) 9%,transparent);transition:all .18s linear}
#win b{position:absolute;top:100%;left:-1px;font-family:"SF Mono",SFMono-Regular,ui-monospace,Menlo,monospace;
  font-size:9px;letter-spacing:.09em;text-transform:uppercase;color:var(--cyan);font-weight:400;padding-top:2px;white-space:nowrap}
#mapNote{margin:10px 0 0;font-size:11.5px;color:var(--muted)}

/* ---------- signals ---------- */
.sig{display:grid;grid-template-columns:1fr auto;gap:0 14px;align-items:baseline;margin:0}
.sig dt{font-size:12.5px;color:var(--muted);padding:8px 0;border-top:1px solid var(--line-soft)}
.sig dd{margin:0;padding:8px 0;border-top:1px solid var(--line-soft);text-align:end;
  font-family:"SF Mono",SFMono-Regular,ui-monospace,Menlo,monospace;font-size:12.5px}
.sig dt:first-of-type,.sig dd:first-of-type{border-top:0}
.yes{color:var(--cyan)} .no{color:var(--muted)} .warn{color:var(--magenta)}

/* ---------- screens table ---------- */
.tablewrap{overflow-x:auto;border:1px solid var(--line);border-top:0;background:var(--panel)}
table{border-collapse:collapse;width:100%;min-width:660px}
th,td{text-align:start;padding:10px 14px;border-bottom:1px solid var(--line-soft);white-space:nowrap}
th{font:600 10px/1 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:.16em;
  text-transform:uppercase;color:var(--muted);background:var(--panel-2)}
td{font-family:"SF Mono",SFMono-Regular,ui-monospace,Menlo,monospace;font-size:12.5px}
tr:last-child td{border-bottom:0}
td.dupmark{color:var(--magenta)}

/* ---------- prose sections ---------- */
.prose{margin-top:44px;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px 40px}
.prose section{min-width:0}
h2.sec{font:600 11px/1.3 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:0 0 12px;
  padding-bottom:9px;border-bottom:1px solid var(--line-soft)}
.prose p{margin:0 0 11px;font-size:13.8px;color:var(--ink);max-width:54ch}
.prose ol,.prose ul{margin:0 0 11px;padding-inline-start:20px;font-size:13.8px;max-width:54ch}
.prose li{margin:0 0 7px}
.prose b{font-weight:600}
code{font-family:"SF Mono",SFMono-Regular,ui-monospace,Menlo,monospace;font-size:12px;
  background:var(--panel);border:1px solid var(--line-soft);padding:1px 4px;white-space:nowrap}

/* ---------- faq ---------- */
.faq{margin-top:44px}
.faq h2.sec{max-width:none}
details{border-bottom:1px solid var(--line-soft);background:var(--panel);
  border-inline:1px solid var(--line-soft)}
details:first-of-type{border-top:1px solid var(--line-soft)}
summary{cursor:pointer;padding:13px 16px;font-weight:600;font-size:14px;list-style:none;
  display:flex;justify-content:space-between;gap:14px;align-items:baseline}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";color:var(--muted);font-family:"SF Mono",SFMono-Regular,ui-monospace,monospace;flex:none}
details[open] summary::after{content:"−"}
summary:hover{color:var(--cyan)}
summary:focus-visible{outline:2px solid var(--cyan);outline-offset:-2px}
.faq .ans{padding:0 16px 15px;max-width:70ch}
.faq .ans p{margin:0 0 10px;font-size:13.8px}
.faq .ans p:last-child{margin:0}

/* ---------- language switcher ---------- */
.langs{margin-top:44px;padding-top:16px;border-top:1px solid var(--line)}
.langs h2{font:600 11px/1 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:0 0 14px}
.langs ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 10px}
.langs a{display:inline-block;font-size:13px;text-decoration:none;color:var(--ink);
  border:1px solid var(--line);padding:6px 11px;border-radius:2px;background:var(--panel)}
.langs a:hover{border-color:var(--cyan);color:var(--cyan)}
.langs a[aria-current="page"]{background:var(--ink);color:var(--panel);border-color:var(--ink)}

footer{margin-top:34px;padding-top:14px;border-top:1px solid var(--line);
  font-size:11.5px;letter-spacing:.03em;color:var(--muted);
  display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
footer a{color:var(--muted)}

@media (prefers-reduced-motion:reduce){
  *{animation:none !important;transition:none !important}
}
