/* ==========================================================================
   design.css: 2026 visual refresh. Loaded last, so it re-tokens and restyles
   everything above it without touching markup-level CSS.
   Principles (see redesign brief): monochrome surfaces + one accent, colour only
   for state (always paired with an icon or text), sentence-case labels, mono only
   for identifiers/numbers, depth from surface steps (no glows, gradients or
   offset shadows), radius 0 for layout and 2px for controls, AA contrast.
   ========================================================================== */

/* ---------- fonts: self-hosted, no third-party requests ---------- */
@font-face{font-family:"Mona Sans";src:url("../fonts/MonaSans-VF.woff2") format("woff2");
  font-weight:200 900;font-style:normal;font-display:swap}
@font-face{font-family:"JetBrains Mono";src:url("../fonts/JetBrainsMono-Regular.woff2") format("woff2");
  font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"JetBrains Mono";src:url("../fonts/JetBrainsMono-Medium.woff2") format("woff2");
  font-weight:500 700;font-style:normal;font-display:swap}

/* ---------- tokens: dark (default) ---------- */
:root{
  color-scheme:dark;
  --bg:#0b0b0a; --panel:#121211; --raised:#1a1a18; --hover:#22221f;
  --line:#2a2a26; --line2:#3d3c37; --line-input:#706f69;
  --text:#ededec; --muted:#a9a8a2; --faint:#8a8983;
  --accent:#ff5d1a; --accent-hover:#ff7840; --accent-text:#ff7a40; --accent-dim:#5c2810; --on-accent:#0b0b0a;
  --verified:#4ccf8a; --admitted:#72a8ff; --question:#e8b33c; --scam:#ff6b5e;
  --focus:#ffb38f;
  --sans:"Mona Sans",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --grotesk:var(--sans);
  --mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
  --r:2px;
  --dur-fast:120ms; --dur-base:180ms; --ease-out:cubic-bezier(.2,0,0,1);
}
/* ---------- tokens: light (opt-in via toggle, never auto) ---------- */
html[data-theme="light"]{
  color-scheme:light;
  --bg:#fbfaf8; --panel:#f3f2ee; --raised:#eae8e3; --hover:#e3e1db;
  --line:#dedbd4; --line2:#c4c0b7; --line-input:#85817a;
  --text:#191816; --muted:#55524c; --faint:#6b6861;
  --accent:#ff5d1a; --accent-hover:#e84f10; --accent-text:#b93a06; --accent-dim:#f6c9b3; --on-accent:#191816;
  --verified:#156b41; --admitted:#1f5fc4; --question:#8a5600; --scam:#c4281c;
  --focus:#b93a06;
}

/* ---------- base ---------- */
body{font-family:var(--sans);font-size:15px;line-height:1.55;font-optical-sizing:auto;
  font-feature-settings:normal;font-variant-numeric:tabular-nums;text-rendering:optimizeLegibility}
h1,h2,h3,h4{font-family:var(--sans);text-wrap:balance;letter-spacing:-.01em}
p{text-wrap:pretty}
::selection{background:var(--accent);color:var(--on-accent)}
:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.mono,.tnum{font-variant-numeric:tabular-nums}
a{text-underline-offset:.18em}

/* Kill the "label" look: mono + uppercase + wide tracking becomes quiet sentence case. */
.lbl,.sechd h2,.sechd .more,.nav,.spons-btn,.submit-btn,.ghost-btn,.crumb,.spec .k,.block h3,
.field label,.st,.badge,.fb-field>span,.fb-lbl,.fb-chip b,.steplbl,.tsk,.sk,.dtable th,.post-meta,
.tick .ld,.tc-flag,.totalbox .tl,.feelbl,.qhead,.convcard label,.chg em,.report summary,.vo,
.rep .t,.scell .tagsp,.mast .stat .l,.filterbar label,.tor,.seg .save,
.lv-tabs a,.lv-tile .k,.lv-table th,.lv-b,.lv-copy,.lv-filter label.f,.lv-btn,.lv-form label,
.lv-dl dt,.lv-conv label,.lv-card .t em,.lv-table.stack td::before,.lv-group,.lv-kind{
  text-transform:none !important;letter-spacing:0 !important}

/* ---------- header ---------- */
.bar{background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:saturate(1.2) blur(10px);-webkit-backdrop-filter:saturate(1.2) blur(10px)}
.bar-in{height:60px;gap:18px}
.brand{font-family:var(--sans);font-weight:700;font-size:17px;letter-spacing:-.01em;gap:9px}
.brand .dim{color:var(--muted);font-weight:500}
.cmd{border-color:var(--line2);background:var(--panel);border-radius:var(--r);padding:8px 12px;font-family:var(--sans);font-size:14px;max-width:420px;
  transition:border-color var(--dur-fast) ease-out,background-color var(--dur-fast) ease-out}
.cmd:focus-within{border-color:var(--line-input);background:var(--raised)}
.cmd input{font-family:var(--sans);font-size:14px}
.cmd input::placeholder{color:var(--faint)}
.cmd .slash{border-color:var(--line2);border-radius:var(--r);color:var(--faint);font-family:var(--mono);font-size:11px;padding:1px 6px}
.nav{font-family:var(--sans);font-size:14px;font-weight:500;gap:20px;color:var(--muted)}
.nav a{padding:6px 0}
.nav a:hover,.nav a[aria-current="page"]{color:var(--text)}
.nav a[aria-current="page"]{box-shadow:inset 0 -2px 0 var(--accent)}
.spons-btn,.submit-btn{font-family:var(--sans);font-weight:600;font-size:14px;color:var(--on-accent);background:var(--accent);
  border:1px solid var(--accent);border-radius:var(--r);box-shadow:none;padding:8px 14px;line-height:1.2}
.spons-btn:hover,.submit-btn:hover{background:var(--accent-hover);border-color:var(--accent-hover);transform:none;box-shadow:none}
.spons-btn:active,.submit-btn:active{transform:translateY(1px);box-shadow:none}
.nav .spons-btn{padding:7px 12px}
.ghost-btn{font-family:var(--sans);font-weight:500;font-size:14px;color:var(--text);border:1px solid var(--line2);border-radius:var(--r);padding:8px 14px;background:transparent}
.ghost-btn:hover{border-color:var(--text);color:var(--text)}
.langsw summary,.theme-tg{font-family:var(--sans);font-size:13px;font-weight:500;color:var(--muted)}
.langsw .langmenu{border-radius:var(--r);background:var(--raised);border-color:var(--line2);padding:4px}
.langsw .langmenu a{font-family:var(--sans);border-radius:var(--r);color:var(--muted)}
.langsw .langmenu a:hover{background:var(--hover);color:var(--text)}
.langsw .langmenu a.on{color:var(--text);font-weight:600}
.theme-tg{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--line2);border-radius:var(--r);
  transition:color var(--dur-fast) ease-out,border-color var(--dur-fast) ease-out}
.theme-tg:hover{color:var(--text);border-color:var(--line-input)}
.theme-tg svg{width:16px;height:16px}

/* ---------- layout + rail ---------- */
.wrap{margin-top:24px;grid-template-columns:220px 1fr}
.rail{border-right-color:var(--line);top:84px}
.rail .hd{display:none}
.row-cat{font-size:14px;color:var(--muted);padding:6px 8px;border-left:0;border-radius:var(--r);margin:1px 0}
.row-cat:hover{color:var(--text);background:var(--panel)}
.row-cat .c{font-family:var(--sans);font-size:12px;color:var(--faint);font-variant-numeric:tabular-nums}
.row-cat.on{color:var(--text);background:var(--raised);font-weight:600;padding-left:8px}
.row-cat.on .c{color:var(--muted)}
.row-sub{font-family:var(--sans);font-size:13px;color:var(--muted);padding:4px 8px 4px 18px;border-left:1px solid var(--line);margin-left:10px}
.row-sub::before{content:none}
.row-sub:hover{color:var(--text);border-left-color:var(--line-input)}
.row-sub.on{color:var(--text);font-weight:600;border-left:2px solid var(--accent);padding-left:17px}
.main{padding-left:32px}

/* ---------- section headings ---------- */
.sec{margin-bottom:44px}
.sechd{gap:12px;margin-bottom:12px;align-items:baseline}
.sechd .num,.sechd .rule{display:none}
.sechd h2{font-family:var(--sans);font-size:20px;font-weight:650;margin:0}
.sechd .more{margin-left:auto;font-family:var(--sans);font-size:14px;font-weight:500;color:var(--muted)}
.sechd .more:hover{color:var(--accent-text)}
.sechd .more::after{content:" \2192"}
.h2big{font-size:32px;line-height:1.15;font-weight:700;letter-spacing:-.02em;margin:0 0 8px}
.subt{font-size:15px;color:var(--muted);max-width:66ch}
.crumb{font-family:var(--sans);font-size:13px;color:var(--faint);margin-bottom:14px}
.crumb a{color:var(--muted)} .crumb a:hover{color:var(--text)} .crumb b{color:var(--text);font-weight:500}

/* ---------- home masthead ---------- */
.mast{border:1px solid var(--line);border-top:1px solid var(--line);background:var(--panel);padding:36px 32px 28px;margin-bottom:28px}
.mast h1{font-size:clamp(30px,4.2vw,46px);line-height:1.05;font-weight:750;letter-spacing:-.025em;margin:0 0 12px;max-width:18ch}
.mast p{font-size:16px;line-height:1.55;color:var(--muted);max-width:60ch}
.mast-search{margin-top:22px;max-width:620px;gap:0}
.mast-search input{background:var(--bg);border:1px solid var(--line-input);border-right:0;border-radius:var(--r) 0 0 var(--r);
  font-family:var(--sans);font-size:16px;padding:13px 14px;color:var(--text)}
.mast-search input:focus{border-color:var(--text)}
.mast-search .submit-btn{border-radius:0 var(--r) var(--r) 0;padding:0 20px;font-size:15px}
.mast-cta{margin-top:16px;gap:10px}
.mast-meta{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:22px;padding-top:16px;border-top:1px solid var(--line);font-size:13.5px;color:var(--muted)}
.mast-meta b{color:var(--text);font-weight:650}
.mast-meta a{color:var(--muted);text-decoration:underline;text-decoration-color:var(--line2)}
.mast-meta a:hover{color:var(--text)}
.legend{gap:8px;margin-bottom:28px}

/* ---------- status badges: icon + text, tinted, no gradients/shadows ---------- */
.badge{font-family:var(--sans);font-size:12px;font-weight:600;padding:2px 8px 2px 6px;border-radius:var(--r);border:1px solid transparent;box-shadow:none;gap:5px;line-height:1.5}
.badge svg{width:13px;height:13px}
.badge-verified{color:var(--verified);background:color-mix(in srgb,var(--verified) 13%,transparent);border-color:color-mix(in srgb,var(--verified) 30%,transparent)}
.badge-admitted{color:var(--admitted);background:color-mix(in srgb,var(--admitted) 12%,transparent);border-color:color-mix(in srgb,var(--admitted) 28%,transparent)}
.badge-questionable{color:var(--question);background:color-mix(in srgb,var(--question) 13%,transparent);border-color:color-mix(in srgb,var(--question) 32%,transparent)}
.badge-scam{color:var(--scam);background:color-mix(in srgb,var(--scam) 14%,transparent);border-color:color-mix(in srgb,var(--scam) 40%,transparent)}
.phd .badge{font-size:13px;padding:3px 10px 3px 8px}
.st{font-family:var(--sans);font-size:12px;font-weight:600}
.st.admitted{color:var(--admitted)}.st.verified{color:var(--verified)}.st.question{color:var(--question)}.st.scam{color:var(--scam)}
.tor{font-family:var(--sans);font-size:11.5px;font-weight:600;color:var(--muted);border:1px solid var(--line2);border-radius:var(--r);padding:0 6px;line-height:1.6}
.tag{font-family:var(--sans);font-size:12.5px;color:var(--muted);border:1px solid var(--line);border-radius:var(--r);padding:1px 7px;display:inline-block;line-height:1.5}
.tag::before,.tag::after{content:none}
a.tag:hover{border-color:var(--line-input);color:var(--text)}
.cc{font-family:var(--sans);border-radius:var(--r)}
.flag{border-color:var(--line);border-radius:1px}

/* ---------- listing rows ---------- */
.rows{border-top:1px solid var(--line)}
.lr{position:relative;grid-template-columns:36px 1fr auto;gap:4px 14px;padding:14px 12px;border-left:0;border-bottom:1px solid var(--line);
  transition:background-color var(--dur-fast) ease-out}
.lr:hover{background:var(--panel);transform:none;padding-left:12px}
.lr .av{grid-row:auto;align-self:start;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line2);
  border-radius:var(--r);background:var(--raised);color:var(--muted);font-weight:650;font-size:15px;line-height:1;user-select:none}
.lr:hover .av{color:var(--text);border-color:var(--line-input)}
.lr .l1{gap:8px}
.lr .nm{font-size:15.5px;font-weight:620;letter-spacing:-.005em}
.lr .u{font-family:var(--sans);font-size:13px;color:var(--faint)}
.lr .ds{font-size:14px;color:var(--muted);margin-top:2px;max-width:70ch;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.lr .meta{gap:6px;margin-top:8px}
.lr .right{gap:8px;align-self:center}
.lr .ext{color:var(--faint);transition:color var(--dur-fast) ease-out}
.lr:hover .ext{color:var(--text);transform:none}
.lr:focus-visible{outline-offset:-2px}
.dead .nm,.dead .ds{color:var(--faint)}
/* rows without an avatar (reviews on home) keep two columns */
.lr:not(:has(.av)){grid-template-columns:1fr auto}

.meter{font-family:var(--sans);font-size:12.5px;color:var(--muted)}
.cells{gap:2px}
.cells i{width:6px;height:12px;border-radius:1px;background:var(--line2)}
.cells i.f{background:var(--accent)}

/* ---------- sponsor grid ---------- */
.sgrid{border-color:var(--line);grid-template-columns:repeat(2,1fr)}
.scell{padding:18px 18px 16px;border-color:var(--line)}
.scell:hover{background:var(--panel)}
.scell:hover .nm{color:var(--text)}
.scell .tagsp{font-family:var(--sans);font-size:11.5px;font-weight:600;color:var(--faint);border:0;padding:12px 14px}
.scell .nm{font-size:16px;font-weight:650}
.scell .u{font-family:var(--sans);font-size:13px;color:var(--faint)}
.scell .ds{font-size:14px;color:var(--muted)}
.scell.empty .pr{font-family:var(--sans);font-size:14px}

/* ---------- reviews ---------- */
.score{font-family:var(--sans);font-size:13px;font-weight:650;color:var(--text);background:var(--raised);border:1px solid var(--line2);border-radius:var(--r);padding:0 6px}
.vo{font-family:var(--sans);font-size:11.5px;font-weight:600;color:var(--verified);border-color:color-mix(in srgb,var(--verified) 35%,transparent);border-radius:var(--r)}
.ob{font-family:var(--sans);font-size:11.5px;border-radius:var(--r)}
.rev .bd{font-size:15px}
.rev .by{font-family:var(--sans);font-size:12.5px}
.rsum .big{font-family:var(--sans);font-weight:750;letter-spacing:-.03em}
.rsum .of,.dist .d{font-family:var(--sans)}
.dist .trk{height:6px;border-radius:1px}
.rep{border-left-color:var(--accent);border-radius:0 var(--r) var(--r) 0}
.rep .t{font-family:var(--sans);font-size:12px;font-weight:600;color:var(--accent-text)}

/* ---------- listing detail ---------- */
.phd{gap:18px;padding-bottom:22px;margin-bottom:22px}
.phd .ic{width:56px;height:56px;border-radius:var(--r);background:var(--raised);border-color:var(--line2);font-family:var(--sans);font-weight:700;font-size:24px;color:var(--text)}
.phd h1{font-size:30px;font-weight:750;letter-spacing:-.02em;line-height:1.15}
.visit-btn{margin-top:12px}
.spec{border-color:var(--line);border-radius:0}
.spec .k{font-family:var(--sans);font-size:13px;font-weight:500;color:var(--muted);background:transparent;border-right:0;padding:12px 16px 12px 0}
.spec .r{grid-template-columns:140px 1fr;padding-left:16px}
.spec .v{padding:12px 16px 12px 0;font-size:14.5px}
.spec .r:hover{background:transparent}
.block{border-color:var(--line);padding:22px 24px}
.block h3{font-family:var(--sans);font-size:17px;font-weight:650;color:var(--text);margin-bottom:14px}
.block p{font-size:15px;color:var(--muted)}
.disc{font-family:var(--sans);font-size:12.5px}
.report{border-color:var(--line)}
.report summary{font-family:var(--sans);font-size:14px;font-weight:500;color:var(--muted)}
.report summary:hover,.report[open] summary{color:var(--text)}

/* ---------- forms ---------- */
.field label{font-family:var(--sans);font-size:13.5px;font-weight:550;color:var(--text);margin-bottom:6px}
.field input,.field select,.field textarea,.fb-field select,.fb-field input,.searchbar input,.filterbar select,.filterbar input{
  background:var(--bg);border:1px solid var(--line-input);border-radius:var(--r);color:var(--text);font-family:var(--sans);font-size:15px}
.field input:focus,.field select:focus,.field textarea:focus,.fb-field select:focus-visible,.fb-field input:focus-visible,.searchbar input:focus{
  border-color:var(--text);outline:2px solid color-mix(in srgb,var(--focus) 45%,transparent);outline-offset:0}
.field .hint{font-family:var(--sans);font-size:13px;color:var(--faint)}
.flash{font-family:var(--sans);font-size:14px;border-radius:var(--r);color:var(--verified);border-color:color-mix(in srgb,var(--verified) 40%,transparent);background:color-mix(in srgb,var(--verified) 9%,transparent)}
.errs{font-family:var(--sans);font-size:14px;border-radius:var(--r);color:var(--scam);border-color:color-mix(in srgb,var(--scam) 40%,transparent);background:color-mix(in srgb,var(--scam) 8%,transparent)}
.xmr-addr{font-size:13px;color:var(--text);border-radius:var(--r)}
pre.code{border-radius:var(--r);color:var(--text)}

/* filter bar */
.fb{border-color:var(--line);background:var(--panel);padding:16px 18px 14px}
.fb-field>span,.fb-lbl{font-family:var(--sans);font-size:13px;font-weight:550;color:var(--muted)}
.fb-chk{font-family:var(--sans);font-size:13.5px;border-color:var(--line2);border-radius:var(--r);padding:6px 11px;min-height:32px}
.fb-chk em{font-family:var(--sans);font-size:12px}
.fb-chip{font-family:var(--sans);font-size:13px;border-radius:var(--r);padding:4px 9px;min-height:28px}
.fb-chip b{font-family:var(--sans);font-size:12px;font-weight:500}
.fb-count,.fb-clear{font-family:var(--sans);font-size:13.5px}
.fb-clear{color:var(--accent-text)}

/* chips, pagination */
.catchip{font-family:var(--sans);font-size:13.5px;border-color:var(--line2);border-radius:var(--r);padding:6px 11px}
.catchip:hover{border-color:var(--line-input);color:var(--text)}
.pgnav{font-family:var(--sans);font-size:14px}
.pgnav .pg{border-radius:var(--r)}
.pgnav .pg:hover{border-color:var(--line-input);color:var(--text)}
nav[role="navigation"] svg{width:16px;height:16px}

/* ---------- long-form (blog, static pages) ---------- */
.prose{max-width:68ch;font-size:17px;line-height:1.68;color:var(--text)}
.prose p,.prose ul,.prose ol{font-size:17px;line-height:1.68;color:color-mix(in srgb,var(--text) 86%,var(--bg))}
.prose p{margin:0 0 1.1em}
.prose li{margin:.3em 0}
.prose h2{font-size:26px;line-height:1.2;font-weight:700;letter-spacing:-.015em;margin:2em 0 .55em;scroll-margin-top:84px}
.prose h3{font-family:var(--sans);font-size:19px;line-height:1.3;font-weight:650;margin:1.6em 0 .45em;color:var(--text);scroll-margin-top:84px}
.prose a{color:var(--accent-text);text-decoration:underline;text-decoration-thickness:1px;text-decoration-color:color-mix(in srgb,var(--accent-text) 45%,transparent)}
.prose a:hover{text-decoration-color:currentColor}
.prose strong{color:var(--text);font-weight:650}
.prose code{font-family:var(--mono);font-size:.86em;background:var(--raised);border:1px solid var(--line);border-radius:var(--r);padding:.08em .35em}
.prose pre{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:14px 16px;overflow:auto;font-size:14px;line-height:1.55}
.prose pre code{background:none;border:0;padding:0;font-size:inherit}
.prose blockquote{margin:1.4em 0;padding:.2em 0 .2em 1.1em;border-left:2px solid var(--line2);color:var(--muted)}
.prose table{width:100%;border-collapse:collapse;margin:1.4em 0;font-size:15px;display:block;overflow-x:auto}
.prose th,.prose td{text-align:left;padding:10px 14px 10px 0;border-bottom:1px solid var(--line);vertical-align:top}
.prose thead th{font-size:13.5px;font-weight:600;color:var(--muted);border-bottom-color:var(--line2);white-space:nowrap}
.prose details{border:1px solid var(--line);border-radius:var(--r);margin:.6em 0;background:var(--panel)}
.prose details summary{cursor:pointer;list-style:none;padding:13px 16px;font-weight:600;font-size:16px;display:flex;justify-content:space-between;gap:14px}
.prose details summary::-webkit-details-marker{display:none}
.prose details summary::after{content:"+";color:var(--faint);font-weight:400}
.prose details[open] summary::after{content:"\2212"}
.prose details[open] summary{border-bottom:1px solid var(--line)}
.prose details>*:not(summary){margin:12px 16px 14px}
.prose hr{border:0;border-top:1px solid var(--line);margin:2.2em 0}
.prose em{color:var(--muted)}
.post-meta{font-family:var(--sans);font-size:14px;color:var(--faint);margin-bottom:26px}
.post-meta .tag{font-size:12px}
.blog-card{padding:22px 0}
.blog-card h2{font-size:21px;font-weight:650;letter-spacing:-.01em;line-height:1.25}
.blog-card a.t:hover{color:var(--accent-text)}
.blog-card .ex{font-size:15px;max-width:72ch}
.blog-card .post-meta{margin-bottom:6px;font-size:13px}

/* ---------- data tables, tools, checkout ---------- */
.dtable th{font-family:var(--sans);font-size:13px;font-weight:600;color:var(--muted)}
.dtable td.num,.dtable th.num{font-variant-numeric:tabular-nums}
.tc-in,.stat,.chartbox,.torstat,.feecell,.totalbox,.cinput,.segbar{border-radius:0}
.tc-in{border-color:var(--line2)}
.tcard input:checked ~ .tc-in{border-color:var(--accent);background:var(--raised);box-shadow:inset 0 0 0 1px var(--accent)}
.tcard:hover .tc-in{transform:none;border-color:var(--line-input)}
.tc-p b,.feeamt,.totalbox .tv b{font-family:var(--sans)}
.tc-flag{font-family:var(--sans);font-size:11px;font-weight:650;color:var(--on-accent);padding:2px 8px}
.seg span{font-family:var(--sans);font-size:14px}
.seg input:checked ~ span{color:var(--on-accent)}
.steplbl{font-family:var(--sans);font-size:14px;font-weight:600;color:var(--text)}
.steplbl b{font-family:var(--mono);font-size:12px;color:var(--faint);font-weight:500}
.sk,.tsk,.feelbl,.totalbox .tl,.qhead,.convcard label{font-family:var(--sans);font-size:12.5px;font-weight:550;color:var(--muted)}
.qhead{color:var(--text)}
.bigprice{color:var(--text);font-weight:750}
.tick{font-family:var(--sans);font-size:13px;border-color:var(--line);color:var(--muted);padding:10px 14px}
.tick .ld{font-family:var(--sans);font-size:12.5px;font-weight:600;color:var(--faint)}
.tick a{color:var(--muted)} .tick a:hover{color:var(--text)}
.api-ep{border-radius:var(--r)}
.tier{border-color:var(--line)}
.tier h3{font-family:var(--sans);font-size:15px;font-weight:650;color:var(--text)}

/* live tools (lv-*) keep their structure; just align type */
.lv-tabs a,.lv-tile .k,.lv-table th,.lv-filter label.f,.lv-form label,.lv-dl dt,.lv-conv label,.lv-group,.lv-kind,.lv-b{font-family:var(--sans) !important}
.lv-tile .k,.lv-table th,.lv-dl dt,.lv-form label,.lv-conv label,.lv-filter label.f{font-size:12.5px !important;font-weight:550;color:var(--muted)}
.lv-tabs a{font-size:13.5px !important}

/* advertise page: drop gradient + rotated decoration, plain eyebrow */
html body .adv-hero{background:var(--panel)}
html body .adv-hero::after{content:none}
html body .adv-eye{font-family:var(--sans);font-size:13.5px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--accent-text)}
html body .adv-flag{font-family:var(--sans);letter-spacing:0;text-transform:none;font-size:11px;font-weight:650;color:var(--on-accent)}
html body .adv-stat span,html body .adv-tbl thead th,html body .adv-price span,html body .adv-alt{font-family:var(--sans);letter-spacing:0;text-transform:none}
html body .adv-card.gp{background:var(--panel)}
html body .adv-btn.pri{color:var(--on-accent)}
html body .adv-btn.pri:hover{background:var(--accent-hover);transform:none;box-shadow:none}

/* ---------- footer ---------- */
footer{margin-top:56px;border-top:1px solid var(--line);background:var(--panel)}
.foot{max-width:1200px;margin:0 auto;padding:40px 22px 24px;display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:28px}
.foot h4{font-size:13.5px;font-weight:650;margin:0 0 12px;color:var(--text);letter-spacing:0}
.foot ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.foot a{font-size:14px;color:var(--muted)}
.foot a:hover{color:var(--text)}
.foot .about p{font-size:14px;color:var(--muted);margin:10px 0 14px;max-width:38ch;line-height:1.55}
.foot .onion{font-family:var(--mono);font-size:11.5px;color:var(--faint);word-break:break-all;display:block;max-width:40ch}
.foot-base{max-width:1200px;margin:0 auto;padding:16px 22px 28px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:8px 20px;font-size:13px;color:var(--faint)}
.foot-base a{color:var(--faint)} .foot-base a:hover{color:var(--text)}
.fin{font-family:var(--sans);font-size:13px}

/* ---------- light-theme fixes for hard-coded colours ---------- */
html[data-theme="light"] .logo-mark rect{stroke:var(--accent)}
html[data-theme="light"] .lr:hover,html[data-theme="light"] .scell:hover{background:var(--panel)}
html[data-theme="light"] .qrwrap,html[data-theme="light"] .lv-qr{box-shadow:0 0 0 1px var(--line)}
html[data-theme="light"] .tsdot{box-shadow:none !important}
html[data-theme="light"] img.flag{filter:none}

/* ---------- responsive ---------- */
@media (max-width:1000px){.foot{grid-template-columns:1fr 1fr}}
@media (max-width:860px){
  .wrap{grid-template-columns:1fr}
  .main{padding-left:0}
  .wrap{margin-top:16px}
  .mast{padding:26px 20px 22px}
  .h2big{font-size:26px}
  .lr{grid-template-columns:32px 1fr;padding:13px 4px}
  .lr .av{width:32px;height:32px;font-size:14px}
  .lr .right{grid-column:2;flex-direction:row;align-items:center;justify-self:start}
  .lr:not(:has(.av)){grid-template-columns:1fr}
  .lr:not(:has(.av)) .right{grid-column:1}
  .spec .r{grid-template-columns:1fr;padding-left:14px}
  .spec .k{padding:10px 14px 0 0}
  .spec .v{padding:2px 14px 10px 0}
  .prose,.prose p,.prose ul,.prose ol{font-size:16.5px}
  .prose h2{font-size:23px}
}
@media (max-width:760px){
  .bar{position:relative}
  .bar-in{height:auto;padding:10px 16px 12px}
  .nav{font-size:14px;gap:6px 16px}
  .theme-tg{width:30px;height:30px}
}
@media (max-width:560px){.foot{grid-template-columns:1fr}.mast-search input{font-size:16px}}
@media (prefers-reduced-motion:reduce){*{transition-duration:0ms !important}}

/* ---------- self-hosted favicons ---------- */
/* Light tile in both themes: most favicons are drawn for light backgrounds. */
.lr .av:has(img),.phd .ic:has(img){background:#f6f5f2;border-color:var(--line2);padding:5px}
.lr .av img,.phd .ic img{width:100%;height:100%;object-fit:contain;display:block;border-radius:1px}
.scell .nm .sic{width:22px;height:22px;object-fit:contain;background:#f6f5f2;border:1px solid var(--line2);border-radius:var(--r);padding:2px;flex:0 0 auto}

/* no icon: keep the column so names stay aligned, but show nothing */
.lr .av.av-none{border:0;background:none;padding:0}

/* ---------- refinements after visual review ---------- */
/* name first, then status, then host (scan the name column straight down) */
.lr .l1 .nm{order:1}.lr .l1 .badge{order:2}.lr .l1 .u{order:3}.lr .l1 .tor{order:4}
.row-sub::first-letter{text-transform:uppercase}
/* tools: plain icons (no tiles, no corner pixel), no pulsing dot */
.lv-ico{border:0 !important;background:none !important;box-shadow:none !important;color:var(--muted) !important}
.lv-ico::before,.lv-ico::after{content:none !important;display:none !important}
.lv-card:hover .lv-ico{color:var(--text) !important}
.lv-fresh .pulse{animation:none !important}
/* no scroll-reveal entrances */
.sgrid .scell,.tcard,.blog-card{animation:none !important;opacity:1 !important;transform:none !important}
