:root,
[data-theme="light"] {
  --bg: #f0f3f7;
  --bg-accent: #e4ebf3;
  --card: #ffffff;
  --text: #12161c;
  --muted: #5a6572;
  --border: #d3dbe5;
  --border-strong: #c0cad6;
  --accent: #1a5a96;
  --accent-soft: #e8f1fa;
  --ok: #157a3a;
  --ok-bg: #e5f6eb;
  --ok-border: #b5dfc4;
  --warn: #9a6700;
  --warn-bg: #fff6e5;
  --warn-border: #efd29a;
  --bad: #b42318;
  --bad-bg: #fef0ef;
  --bad-border: #f0c0bc;
  --captcha: #5b3d8c;
  --captcha-bg: #f4eef9;
  --captcha-border: #d8c8ea;
  --federal: #1a5a96;
  --federal-bg: #e8f1fa;
  --federal-border: #b8cce3;
  --shadow: 0 1px 2px rgba(16, 24, 40, 0.04), 0 4px 16px rgba(16, 24, 40, 0.06);
  --shadow-hover: 0 2px 4px rgba(16, 24, 40, 0.06), 0 8px 24px rgba(16, 24, 40, 0.08);
  --radius: 12px;
  --radius-sm: 8px;
  --header-bg: rgba(240, 243, 247, 0.85);
  --filters-bg: rgba(255, 255, 255, 0.82);
  --filters-border: rgba(211, 219, 229, 0.95);
  --chip-active-bg: #e8f1fa;
  --chip-active-border: #1a5a96;
  --chip-active-text: #1a5a96;
}

[data-theme="dark"] {
  --bg: #0f1419;
  --bg-accent: #1a222d;
  --card: #171e27;
  --text: #e8eef5;
  --muted: #9aa6b5;
  --border: #2a3542;
  --border-strong: #3a4758;
  --accent: #6db3f2;
  --accent-soft: #1a2f45;
  --ok: #3dd68c;
  --ok-bg: #143526;
  --ok-border: #1f5c3c;
  --warn: #f0b429;
  --warn-bg: #3a2e0e;
  --warn-border: #6b5414;
  --bad: #f97066;
  --bad-bg: #3b1512;
  --bad-border: #7a2e28;
  --captcha: #c4a3ef;
  --captcha-bg: #2a1f3d;
  --captcha-border: #4a3a68;
  --federal: #6db3f2;
  --federal-bg: #1a2f45;
  --federal-border: #2d4f72;
  --shadow: 0 1px 2px rgba(0, 0, 0, 0.35), 0 8px 24px rgba(0, 0, 0, 0.35);
  --shadow-hover: 0 2px 6px rgba(0, 0, 0, 0.4), 0 12px 32px rgba(0, 0, 0, 0.4);
  --header-bg: rgba(15, 20, 25, 0.88);
  --filters-bg: rgba(23, 30, 39, 0.88);
  --filters-border: rgba(42, 53, 66, 0.95);
  --chip-active-bg: #1a2f45;
  --chip-active-border: #6db3f2;
  --chip-active-text: #6db3f2;
}

* { box-sizing: border-box; }

html { color-scheme: light; }
[data-theme="dark"] { color-scheme: dark; }

body {
  margin: 0;
  font-family: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  background:
    radial-gradient(1200px 500px at 10% -10%, var(--bg-accent), transparent 55%),
    var(--bg);
  color: var(--text);
  line-height: 1.5;
  min-height: 100vh;
}
a { color: var(--accent); }
:focus-visible { outline: 3px solid var(--accent); outline-offset: 2px; border-radius: 4px; }
.sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.wrap { max-width: 860px; margin: 0 auto; padding: 0 20px; }
.topbar { display:flex; justify-content:space-between; align-items:center; padding:14px 0; gap:12px; }
.brand { font-weight:700; font-size:1.05rem; color:var(--text); text-decoration:none; }
.topbar-actions { display:flex; gap:8px; }
.btn { font:inherit; border:1px solid var(--border-strong); background:var(--card); color:var(--text); padding:8px 14px; border-radius:var(--radius-sm); cursor:pointer; text-decoration:none; display:inline-flex; align-items:center; gap:6px; }
.btn:hover { border-color: var(--accent); }
.btn-primary { background:var(--accent); border-color:var(--accent); color:#fff; font-weight:600; }
[data-theme="dark"] .btn-primary { color:#0f1419; }
.btn-big { width:100%; justify-content:center; padding:14px; font-size:1.1rem; margin-top:8px; }
.btn-sm { padding:5px 10px; font-size:.88rem; }
.hero { padding: 40px 0 24px; text-align:center; }
.hero h1 { font-size: clamp(1.6rem, 4vw, 2.3rem); margin: 0 0 8px; }
.hero p { color: var(--muted); margin: 0 auto; max-width: 600px; }
.search-card { background:var(--card); border:1px solid var(--border); border-radius:var(--radius); box-shadow:var(--shadow); padding:22px; margin-bottom:32px; }
.search-card h2 { margin:0 0 14px; font-size:1.4rem; }
.row { display:grid; grid-template-columns: 1fr 1fr; gap:14px; }
.field { display:flex; flex-direction:column; gap:5px; font-weight:600; font-size:.92rem; }
.field .hint { font-weight:400; color:var(--muted); font-size:.82rem; }
select, input[type=text], input[type=search] { font:inherit; padding:10px 12px; border:1px solid var(--border-strong); border-radius:var(--radius-sm); background:var(--card); color:var(--text); width:100%; }
select:disabled { opacity:.55; }
fieldset.types { border:0; padding:0; margin:16px 0 0; }
fieldset.types legend { font-weight:600; font-size:.92rem; margin-bottom:6px; }
.pills { display:flex; flex-wrap:wrap; gap:8px; }
.pills label { cursor:pointer; }
.pills input { position:absolute; opacity:0; }
.pills span { display:inline-block; padding:7px 14px; border:1px solid var(--border-strong); border-radius:999px; background:var(--card); }
.pills input:checked + span { background:var(--chip-active-bg); border-color:var(--chip-active-border); color:var(--chip-active-text); font-weight:600; }
.pills input:focus-visible + span { outline:3px solid var(--accent); outline-offset:2px; }
details.more { margin-top:16px; border-top:1px solid var(--border); padding-top:12px; }
details.more summary { cursor:pointer; font-weight:600; color:var(--accent); }
.more-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px 18px; margin-top:12px; }
.check { display:flex; gap:8px; align-items:flex-start; font-size:.93rem; }
.check input { margin-top:4px; width:18px; height:18px; }
.results-head { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:10px; margin:20px 0 6px; }
.results-head h1 { font-size:1.4rem; margin:0; }
.active-filters { color:var(--muted); font-size:.9rem; margin:0 0 16px; }
.section { margin: 22px 0; }
.section h2 { font-size:1.08rem; margin:0 0 4px; }
.section .sub { color:var(--muted); font-size:.88rem; margin:0 0 10px; }
.card { background:var(--card); border:1px solid var(--border); border-left:4px solid var(--border-strong); border-radius:var(--radius-sm); padding:12px 14px; margin-bottom:10px; box-shadow:var(--shadow); }
.card.s-ok { border-left-color: var(--ok); }
.card.s-degraded { border-left-color: var(--warn); }
.card.s-none_found { border-left-color: var(--bad); }
.card h3 { font-size:1rem; margin:0 0 6px; overflow-wrap:anywhere; }
.badges { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:8px; }
.badge { font-size:.78rem; padding:2px 8px; border-radius:999px; border:1px solid var(--border-strong); color:var(--muted); }
.b-ok { color:var(--ok); background:var(--ok-bg); border-color:var(--ok-border); }
.b-warn { color:var(--warn); background:var(--warn-bg); border-color:var(--warn-border); }
.b-bad { color:var(--bad); background:var(--bad-bg); border-color:var(--bad-border); }
.b-info { color:var(--federal); background:var(--federal-bg); border-color:var(--federal-border); }
.card-actions { display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
.card details { margin-top:8px; font-size:.88rem; color:var(--muted); }
.card details summary { cursor:pointer; color:var(--accent); }
.degraded-note { font-size:.85rem; color:var(--warn); margin:0 0 8px; }
.empty { background:var(--warn-bg); border:1px solid var(--warn-border); border-radius:var(--radius-sm); padding:14px; }
.more-btn { margin-top:4px; }
footer { color:var(--muted); font-size:.85rem; text-align:center; padding:30px 0; border-top:1px solid var(--border); margin-top:40px; }
footer button { background:none; border:0; color:var(--accent); font:inherit; cursor:pointer; text-decoration:underline; }
dialog { max-width:560px; width:calc(100% - 32px); border:1px solid var(--border); border-radius:var(--radius); background:var(--card); color:var(--text); padding:22px; }
dialog::backdrop { background:rgba(0,0,0,.5); }
dialog dt { font-weight:700; margin-top:10px; }
dialog dd { margin:2px 0 0; color:var(--muted); }
.toast { position:fixed; bottom:20px; left:50%; transform:translateX(-50%); background:var(--text); color:var(--bg); padding:8px 16px; border-radius:999px; }
[hidden] { display:none !important; }
@media (max-width: 620px) { .row, .more-grid { grid-template-columns:1fr; } .search-card { padding:16px; } .hero { padding:24px 0 16px; } }
#summary:focus { outline: none; }
.field-top { display:flex; justify-content:space-between; align-items:baseline; gap:8px; min-height:1.4em; }
.row { align-items:end; }
.nsopw { display:flex; align-items:center; justify-content:space-between; gap:16px; background:var(--card); border:1px solid var(--border); border-radius:var(--radius); padding:14px 18px; margin:-16px 0 32px; box-shadow:var(--shadow); }
.nsopw h2 { font-size:1rem; margin:0 0 2px; }
.nsopw p { margin:0; color:var(--muted); font-size:.88rem; }
.nsopw .btn { white-space:nowrap; flex-shrink:0; }
@media (max-width: 620px) { .nsopw { flex-direction:column; align-items:stretch; text-align:left; } .nsopw .btn { justify-content:center; } }

/* Sidebar nav */
.sidebar{position:fixed;top:0;left:0;bottom:0;width:232px;background:var(--bg-accent);border-right:1px solid var(--border);padding:.75rem .5rem;overflow-y:auto;z-index:40;transition:width .15s,transform .2s}
.sb-head{display:flex;align-items:center;justify-content:space-between;padding:.25rem .5rem .75rem}
.sb-title{font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;opacity:.7}
.sb-collapse,.sb-close{background:none;border:1px solid var(--border);border-radius:6px;color:inherit;cursor:pointer;font:inherit;padding:.15rem .5rem}
.sb-close{display:none}
.tabs{display:flex;flex-direction:column;gap:.15rem}
.tabs [role=tab]{display:flex;align-items:center;gap:.6rem;width:100%;text-align:left;background:none;border:0;border-left:3px solid transparent;border-radius:6px;color:inherit;font:inherit;font-weight:600;padding:.55rem .6rem;cursor:pointer;white-space:nowrap}
.tabs [role=tab]:hover{background:var(--accent-soft)}
.tabs [role=tab][aria-selected=true]{background:var(--accent-soft);border-left-color:var(--accent);color:var(--accent)}
.tabs [role=tab]:focus-visible,.sb-collapse:focus-visible,.hamburger:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.tabs .ico{width:1.4rem;text-align:center;flex:0 0 auto}
.tabs .soon{margin-left:auto;font-size:.65rem;font-weight:500;padding:.05rem .4rem;border-radius:999px;border:1px solid currentColor;opacity:.7}
body{padding-left:232px;transition:padding-left .15s}
body.sb-collapsed{padding-left:68px}
body.sb-collapsed .sidebar{width:68px}
body.sb-collapsed .sidebar .lbl,body.sb-collapsed .sidebar .sb-title{display:none}
body.sb-collapsed .tabs .soon{position:absolute;width:8px;height:8px;padding:0;font-size:0;margin:0 0 1.2rem 1.6rem;background:currentColor}
body.sb-collapsed .tabs [role=tab]{justify-content:center;position:relative}
body.sb-collapsed .sb-head{justify-content:center}
.hamburger{display:none}
.sb-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:35}
@media (max-width:899px){
  body,body.sb-collapsed{padding-left:0}
  .sidebar,body.sb-collapsed .sidebar{width:260px;transform:translateX(-100%);box-shadow:none}
  body.sb-collapsed .sidebar .lbl,body.sb-collapsed .sidebar .sb-title{display:inline}
  body.sb-collapsed .tabs [role=tab]{justify-content:flex-start}
  body.sb-collapsed .tabs .soon{position:static;width:auto;height:auto;padding:.05rem .4rem;font-size:.65rem;margin-left:auto;background:none}
  .sidebar{visibility:hidden}
  body.sb-open .sidebar{visibility:visible;transform:none;box-shadow:0 0 30px rgba(0,0,0,.3)}
  .hamburger{display:inline-flex;margin-right:.5rem}
  .sb-collapse{display:none}.sb-close{display:inline-block}
  .topbar .brand{flex:1}
}
@media (prefers-reduced-motion:reduce){.sidebar,body{transition:none}}
.coming-soon{text-align:center;padding:2.5rem 1rem}
.coming-soon h2{margin-top:0}
[hidden]{display:none!important}
.nsopw[hidden] { display:none !important; }
.coming-soon + .nsopw { margin-top:16px; }
/* International divider (Canada / UK) */
.sb-divider{margin:.75rem .6rem .25rem;padding-top:.6rem;border-top:1px solid var(--border);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;opacity:.65}
body.sb-collapsed .sb-divider{font-size:0;margin:.5rem .4rem;padding-top:0}
@media (max-width: 899px){body.sb-collapsed .sb-divider{font-size:.7rem;margin:.75rem .6rem .25rem;padding-top:.6rem}}

/* UI round 2 */
.results-tagline{color:var(--muted);margin:-4px 0 8px;font-size:.92rem}
.results-tools{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px;margin:0 0 14px}
.results-tools[hidden]{display:none}
.qf-text{flex:1 1 240px}.qf-text input{width:100%;padding:8px 10px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font:inherit}
.qf-toggles{display:flex;flex-wrap:wrap;gap:6px 14px}.qf-export{display:flex;gap:8px;margin-left:auto}
.recent{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0 0 14px;font-size:.9rem}
.recent[hidden]{display:none}
.recent h2{font-size:.9rem;margin:0;color:var(--muted)}.recent ul{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0;padding:0}
.recent li a{display:inline-block;padding:3px 10px;border:1px solid var(--border-strong);border-radius:999px;color:var(--accent);text-decoration:none;background:var(--card)}
.recent-note{margin:0;color:var(--muted);font-size:.78rem;flex-basis:100%}
.print-url{display:none}
.notfound h2{margin-top:0}
#helpDlg{max-height:90vh;overflow:auto}
@media (max-width:620px){.qf-export{margin-left:0;width:100%}.qf-export .btn{flex:1}}
@media print{
 .sidebar,.sb-backdrop,.topbar,footer,.results-tools,#newSearch,.card-actions .btn,.more-btn,.toast,.nsopw,.hamburger{display:none!important}
 .wrap{margin:0!important;padding:0!important}body{background:#fff;color:#000}
 .card{box-shadow:none;break-inside:avoid;border-color:#999}.badge{color:#000;border-color:#999}
 .print-url{display:block;font-size:.8rem;overflow-wrap:anywhere}.card details{display:block}.card details>*{display:block}
}

#reportDlg{max-width:440px;width:calc(100% - 32px)}#reportDlg .field{display:block;margin:10px 0}#reportDlg select,#reportDlg textarea{width:100%;font:inherit;padding:8px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg);color:var(--text)}
.report-msg{min-height:1.2em;font-size:.9rem}.report-msg.ok{color:var(--ok)}.report-msg.err{color:var(--bad)}
/* Sidebar groups (Public Records / OSINT) */
.sb-group+.sb-group{margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--border)}
.sb-group-btn{display:flex;align-items:center;gap:.6rem;width:100%;background:none;border:0;border-radius:6px;color:inherit;font:inherit;font-weight:800;font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;padding:.55rem .6rem;cursor:pointer;white-space:nowrap}
.sb-group-btn:hover{background:var(--accent-soft)}
.sb-group-btn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.sb-group-btn .ico{width:1.4rem;text-align:center;flex:0 0 auto}
.sb-group-btn .chev{margin-left:auto;transition:transform .15s;opacity:.7}
.sb-group-btn[aria-expanded=true] .chev{transform:rotate(90deg)}
.sb-group-body{display:flex;flex-direction:column;gap:.15rem;padding-left:.35rem}
.sb-group-body[hidden]{display:none}
body.sb-collapsed .sb-group-btn{justify-content:center}
body.sb-collapsed .sb-group-btn .chev{display:none}
body.sb-collapsed .sb-group-body{padding-left:0}
@media (max-width: 899px){body.sb-collapsed .sb-group-btn{justify-content:flex-start}body.sb-collapsed .sb-group-btn .chev{display:inline}body.sb-collapsed .sb-group-body{padding-left:.35rem}}
.osint-intro{margin:.5rem 0 1rem;padding:.75rem 1rem;border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:8px;background:var(--bg-accent);font-size:.92rem}
.osint-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.6rem}
.osint-topic{display:flex;align-items:center;gap:.6rem;padding:.8rem 1rem;border:1px solid var(--border);border-radius:10px;color:inherit;text-decoration:none;font-weight:600;background:var(--bg-accent)}
.osint-topic:hover,.osint-topic:focus-visible{border-color:var(--accent);color:var(--accent)}
.osint-topic .cnt{margin-left:auto;font-size:.75rem;opacity:.7}
.card-desc{margin:.4rem 0}
.sidebar{overflow-x:hidden}.tabs [role=tab] .lbl,.sb-group-btn .lbl{overflow:hidden;text-overflow:ellipsis;min-width:0}

/* ===== Restyle 2026-10-15 (v=ad): neutral greys + one accent, Inter ===== */
:root,[data-theme="light"]{
  --bg:#f7f8fa;--bg-accent:#ffffff;--card:#ffffff;--text:#111318;--muted:#5b6170;
  --border:#e4e6eb;--border-strong:#d2d5dc;--accent:#2f5bea;--accent-soft:#eef2fe;
  --federal:#2f5bea;--federal-bg:#eef2fe;--federal-border:#cdd8fb;
  --chip-active-bg:#eef2fe;--chip-active-border:#2f5bea;--chip-active-text:#2346c4;
  --shadow:0 1px 2px rgba(17,19,24,.04),0 1px 3px rgba(17,19,24,.04);
  --shadow-hover:0 4px 16px rgba(17,19,24,.08);
  --radius:14px;--radius-sm:10px;--ring:0 0 0 3px rgba(47,91,234,.25);
}
[data-theme="dark"]{
  --bg:#0c0d10;--bg-accent:#121318;--card:#15171c;--text:#eceef2;--muted:#9ba1ad;
  --border:#24272e;--border-strong:#333740;--accent:#7c9cff;--accent-soft:#1a2140;
  --federal:#7c9cff;--federal-bg:#1a2140;--federal-border:#2e3a6b;
  --chip-active-bg:#1a2140;--chip-active-border:#7c9cff;--chip-active-text:#a9bdff;
  --shadow:0 1px 2px rgba(0,0,0,.4);--shadow-hover:0 6px 20px rgba(0,0,0,.45);--ring:0 0 0 3px rgba(124,156,255,.3);
}
html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
body{background:var(--bg);font-family:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:15px;line-height:1.55;letter-spacing:-.003em;font-feature-settings:"cv11","ss01"}
h1,h2,h3{letter-spacing:-.018em;font-weight:650}
a{text-decoration-thickness:1px;text-underline-offset:2px}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}
.wrap{max-width:900px;padding:0 28px}
.topbar{position:sticky;top:0;z-index:30;padding:12px 0;background:color-mix(in srgb,var(--bg) 85%,transparent);backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--border);margin:0 -28px;padding-left:28px;padding-right:28px}
.brand{display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:1rem;letter-spacing:-.02em}
.brand-mark{width:22px;height:22px;border-radius:7px;background:var(--accent);position:relative;flex:0 0 auto}
.brand-mark::after{content:"";position:absolute;inset:6px;border:2px solid #fff;border-radius:50%}
[data-theme="dark"] .brand-mark::after{border-color:#0c0d10}
.btn{border-radius:9px;border-color:var(--border-strong);font-weight:500;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s}
.btn:hover{border-color:var(--text);background:var(--bg)}
.btn:focus-visible{outline:none;box-shadow:var(--ring);border-color:var(--accent)}
.btn-primary,.btn-primary:hover{background:var(--accent);border-color:var(--accent);color:#fff}
.btn-primary:hover{filter:brightness(1.08)}
[data-theme="dark"] .btn-primary{color:#0c0d10}
.btn-sm{padding:6px 12px;font-size:.84rem}
.btn-big{border-radius:11px;font-size:1rem;font-weight:600;padding:13px}
.hamburger{padding:6px 8px}
.hero{padding:56px 0 28px}
.hero h1{font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700;letter-spacing:-.035em;line-height:1.15;margin-bottom:12px}
.hero p{font-size:1.02rem;max-width:620px}
.search-card{border-radius:var(--radius);padding:28px;box-shadow:var(--shadow)}
.search-card h2,.results-head h1{font-size:1.4rem;font-weight:700}
.field{font-weight:500;font-size:.88rem}
select,input[type=text],input[type=search],#reportDlg select,#reportDlg textarea,.qf-text input{border-radius:9px;border-color:var(--border-strong);background:var(--card);transition:border-color .15s,box-shadow .15s;padding:10px 12px}
select:focus,input:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:var(--ring)}
fieldset.types legend{font-weight:500;font-size:.88rem}
.pills span{padding:6px 13px;font-size:.88rem;font-weight:500;transition:all .15s}
.pills label:hover span{border-color:var(--text)}
.pills input:focus-visible+span{outline:none;box-shadow:var(--ring)}
details.more summary{font-weight:500;font-size:.92rem}
.check{font-size:.9rem}.check input{accent-color:var(--accent);width:16px;height:16px}
.nsopw{border-radius:var(--radius);padding:18px 20px;box-shadow:var(--shadow);transition:border-color .15s}
.nsopw:hover{border-color:var(--border-strong)}
.nsopw h2{font-size:.98rem;font-weight:650}
.section{margin:28px 0}
.section h2{font-size:1.02rem;font-weight:650;margin-bottom:4px}
.card{border-left:1px solid var(--border);border-radius:var(--radius-sm);padding:16px 18px;position:relative;box-shadow:var(--shadow);transition:border-color .15s,box-shadow .15s}
.card::before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:3px;border-radius:0 3px 3px 0;background:var(--border-strong)}
.card.s-ok::before{background:var(--ok)}.card.s-degraded::before{background:var(--warn)}.card.s-none_found::before{background:var(--bad)}
.card.s-ok,.card.s-degraded,.card.s-none_found{border-left-color:var(--border)}
.card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-hover)}
.card h3{font-size:.98rem;font-weight:600}
.badge{font-size:.72rem;font-weight:500;padding:2px 9px;border-radius:999px;letter-spacing:.01em;background:var(--bg)}
.b-ok::before,.b-warn::before,.b-bad::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor;margin-right:6px;vertical-align:1px}
.results-tools{border-radius:var(--radius-sm);padding:12px 14px;box-shadow:var(--shadow)}
.empty{border-radius:var(--radius-sm)}
dialog{border-radius:16px;padding:26px;box-shadow:0 24px 60px rgba(0,0,0,.25)}
dialog::backdrop{background:rgba(10,12,16,.45);backdrop-filter:blur(3px)}
footer{font-size:.8rem}
.toast{font-size:.88rem;font-weight:500;box-shadow:var(--shadow-hover)}
/* sidebar */
.sidebar{background:var(--bg-accent);border-right:1px solid var(--border);padding:14px 10px}
.sb-title{font-size:.7rem;font-weight:600;letter-spacing:.08em;color:var(--muted);opacity:1}
.sb-collapse,.sb-close{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border-radius:8px;border-color:var(--border);color:var(--muted);transition:all .15s}
.sb-collapse:hover,.sb-close:hover{color:var(--text);border-color:var(--border-strong)}
@media (max-width:899px){.sb-close{display:inline-flex}}
.tabs [role=tab]{border-left:0;border-radius:8px;font-weight:500;font-size:.88rem;padding:7px 10px;color:var(--muted);transition:background-color .12s,color .12s}
.tabs [role=tab]:hover{background:var(--bg);color:var(--text)}
[data-theme="dark"] .tabs [role=tab]:hover{background:#1b1d23}
.tabs [role=tab][aria-selected=true]{background:var(--accent-soft);color:var(--chip-active-text);font-weight:600}
.tabs .ico,.sb-group-btn .ico{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center}
.tabs .ico svg,.sb-group-btn .ico svg{width:17px;height:17px}
.mono{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:6px;border:1px solid currentColor;font-size:.58rem;font-weight:700;letter-spacing:.02em;opacity:.85;line-height:1}
.tabs .soon{font-size:.62rem;opacity:.75}
.sb-group-btn{font-weight:600;font-size:.72rem;letter-spacing:.08em;color:var(--muted);padding:8px 10px;border-radius:8px}
.sb-group-btn:hover{background:var(--bg);color:var(--text)}
.sb-group-btn .chev{display:inline-flex;opacity:.6}.sb-group-btn .chev svg{width:14px;height:14px}
.sb-group-body{padding-left:0;margin-bottom:4px}
.sb-divider{font-size:.66rem;font-weight:600;letter-spacing:.08em;color:var(--muted);opacity:1;margin:.6rem .6rem .2rem}
.sb-backdrop{background:rgba(10,12,16,.4);backdrop-filter:blur(2px)}
.sidebar,body{transition:width .2s ease,padding-left .2s ease,transform .22s ease}
/* osint */
.osint-intro{border-left:3px solid var(--accent);border-radius:var(--radius-sm);background:var(--card);padding:14px 16px;font-size:.9rem}
.osint-grid{gap:10px}
.osint-topic{background:var(--card);border-radius:var(--radius-sm);padding:14px 16px;font-weight:500;box-shadow:var(--shadow);transition:border-color .15s,box-shadow .15s,transform .15s}
.osint-topic:hover,.osint-topic:focus-visible{border-color:var(--accent);color:var(--text);box-shadow:var(--shadow-hover);transform:translateY(-1px)}
.osint-topic .mono{color:var(--accent)}
.osint-topic .cnt{font-variant-numeric:tabular-nums;background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:1px 8px;opacity:1;color:var(--muted)}
.recent li a{font-size:.84rem;transition:border-color .15s}.recent li a:hover{border-color:var(--accent)}
@media (max-width:620px){.wrap{padding:0 16px}.topbar{margin:0 -16px;padding-left:16px;padding-right:16px}.search-card{padding:18px}.hero{padding:32px 0 18px}}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
@media print{.card::before{display:none}.topbar{position:static}}
@media (min-width:900px){.sb-close{display:none}}
@media (max-width:899px){.sb-collapse{display:none}}
/* Header suggest button (v=ae) */
.btn-suggest{font-weight:600;box-shadow:0 1px 2px rgba(47,91,234,.25)}
.btn-suggest:hover{filter:brightness(1.08);background:var(--accent);border-color:var(--accent)}
.btn-suggest:focus-visible{box-shadow:var(--ring)}
[data-theme="dark"] .btn-suggest{color:#0c0d10;box-shadow:none}
.btn-suggest .lbl-short{display:none}
@media (max-width:520px){.btn-suggest .lbl-long{display:none}.btn-suggest .lbl-short{display:inline}.topbar-actions{gap:6px}.topbar-actions .btn-sm{padding:6px 10px}.brand{font-size:.95rem;gap:8px}}
@media (max-width:360px){.brand-mark{display:none}}
#suggestDlg select,#suggestDlg input,#suggestDlg textarea{width:100%;font:inherit;padding:8px;border:1px solid var(--border-strong);border-radius:9px;background:var(--bg);color:var(--text)}#suggestDlg .field{display:block;margin:10px 0}
.topbar-actions .btn,.brand{white-space:nowrap}
@media (max-width:520px){.brand-mark{display:none}.topbar{gap:8px}.topbar-actions{flex-shrink:0}.hamburger{margin-right:0}}
@media (max-width:420px){.topbar-actions{gap:4px}.topbar-actions .btn-sm{padding:6px 8px;font-size:.8rem}.brand{font-size:.9rem}}

/* ---- Review upgrade (Oct 19): landing, global search, static pages, mobile header ---- */
.landing-hero{padding:48px 0 20px}
.gs-form{display:flex;align-items:center;gap:8px;max-width:720px;margin:22px auto 0;background:var(--card);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);padding:6px 6px 6px 14px}
.gs-form:focus-within{border-color:var(--accent,#2f5bea);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent,#2f5bea) 18%,transparent)}
.gs-ico{color:var(--muted);display:inline-flex}
.gs-q{flex:1;min-width:0;border:0!important;background:transparent!important;box-shadow:none!important;font:inherit;font-size:1rem;padding:10px 4px;outline:none;color:inherit}
.gs-state{max-width:170px;border:0;border-left:1px solid var(--border);border-radius:0;background:transparent;font:inherit;font-size:.9rem;padding:8px 10px;color:inherit}
.landing-meta{margin-top:14px!important;font-size:.88rem}
.landing-meta a,.landing-more{color:var(--accent,#2f5bea);text-decoration:none;font-weight:500}
.landing-sec{margin:28px 0}
.landing-sec h2{font-size:1rem;font-weight:600;letter-spacing:-.01em;margin:0 0 12px;display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.landing-more{font-size:.85rem}
.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}
.tile{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:10px;row-gap:2px;padding:14px;background:var(--card);border:1px solid var(--border);border-radius:12px;text-decoration:none;color:inherit;transition:border-color .15s,transform .15s}
.tile:hover{border-color:var(--accent,#2f5bea);transform:translateY(-1px)}
.tile .ico{grid-row:1/3;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:9px;background:color-mix(in srgb,var(--accent,#2f5bea) 10%,transparent);color:var(--accent,#2f5bea)}
.tile-t{font-weight:600;font-size:.95rem;grid-column:2;align-self:center}
.tile-d{grid-column:2;font-size:.8rem;color:var(--muted);line-height:1.35}
.sb-home{padding:0 0 4px}
.sb-foot{display:none;gap:8px;padding:12px;border-top:1px solid var(--border);margin-top:auto}
.static-hero{padding:36px 0 18px;text-align:left}
.static-hero p{margin:8px 0 0}
.static-notes{font-size:.88rem;color:var(--muted);margin:8px 0 0}
.prose p{max-width:720px;line-height:1.6}
.prose h2{margin-top:24px}
footer a{color:inherit}
@media (max-width:899px){
  .sb-foot{display:flex}
  #themeToggle{display:none}
}
@media (max-width:620px){
  .landing-hero{padding:22px 0 8px}
  .landing-hero h1,.hero h1{font-size:1.45rem}
  .hero p{font-size:.92rem}
  .gs-form{flex-wrap:wrap;padding:8px}
  .gs-q{flex-basis:calc(100% - 30px)}
  .gs-state{flex:1;max-width:none;border-left:0;border-top:1px solid var(--border)}
  .gs-form .btn{flex:1}
  .tiles{grid-template-columns:1fr 1fr}
  .tile{grid-template-columns:1fr;padding:12px}.tile .ico{grid-row:auto;width:28px;height:28px}.tile-t{grid-column:1}.tile-d{display:none}
  #homeView .hero{padding:16px 0 10px}
  #homeView .hero p{display:none}
}

/* ---- audit 2 ---- */
.hero .pg-title{font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700;letter-spacing:-.035em;line-height:1.15;margin:0 0 12px}
.results-head .pg-title{font-size:1.4rem;font-weight:700;margin:0}
kbd{font:inherit;font-size:.8em;padding:1px 6px;border:1px solid var(--border);border-bottom-width:2px;border-radius:5px;background:var(--card)}
.guide-row{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 14px;margin:14px auto 0;font-size:.9rem;max-width:760px}
.guide-row .guide-lbl{color:var(--muted);font-weight:500}
.guide-row a{color:var(--accent);text-decoration:none}.guide-row a:hover{text-decoration:underline}
.start-here{border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:10px;padding:12px 16px;margin:0 0 18px;background:var(--card)}
.start-here h2{font-size:.95rem;margin:0 0 6px}
.start-here ul{margin:0;padding-left:18px;font-size:.92rem}.start-here li{margin:2px 0}
.start-here .sh-nf{margin:8px 0 0;font-size:.85rem;color:var(--muted)}
.sb-foot{display:flex;gap:6px;flex-wrap:wrap}.sb-help{display:none}
@media (max-width:620px){.topbar-actions #helpBtn,.topbar-actions #whatsNewBtn{display:none}.sb-help{display:inline-flex}.guide-row{justify-content:flex-start;font-size:.88rem}}
.guide-steps{counter-reset:st;list-style:none;padding:0;margin:0}
.guide-steps li{counter-increment:st;position:relative;padding:12px 0 12px 40px;border-bottom:1px solid var(--border)}
.guide-steps li::before{content:counter(st);position:absolute;left:0;top:12px;width:26px;height:26px;border-radius:50%;background:var(--accent);color:#fff;font-weight:600;font-size:.85rem;display:flex;align-items:center;justify-content:center}
.guide-steps h3{margin:0 0 4px;font-size:1rem}.guide-steps p{margin:0 0 6px;color:var(--muted);font-size:.92rem}
.guide-steps .links a{margin-right:12px;font-size:.9rem}
.guide-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}
.guide-list a{display:block;border:1px solid var(--border);border-radius:10px;padding:14px;text-decoration:none;color:inherit}
.guide-list a:hover{border-color:var(--accent)}.guide-list span{display:block;color:var(--muted);font-size:.88rem;margin-top:4px}
.cl-entry{border-bottom:1px solid var(--border);padding:14px 0}.cl-entry h2{font-size:1.05rem;margin:0 0 2px}.cl-entry time{color:var(--muted);font-size:.85rem}
.cl-entry ul{margin:8px 0 0;padding-left:18px}
.cov-map{max-width:640px;width:100%;height:auto;display:block;margin:8px 0}
.cov-legend{display:flex;gap:14px;flex-wrap:wrap;font-size:.85rem;color:var(--muted)}.cov-legend i{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:5px;vertical-align:-1px}
.cov-sec{margin:18px 0}.cov-sec summary{cursor:pointer;font-weight:600}
.cov-sec .cov-note{font-size:.88rem;color:var(--muted);margin:6px 0 0}
[data-theme="dark"] .guide-steps li::before{color:#0c0d10}
.captcha-box{margin:10px 0}.captcha-box:empty{display:none}
/* sidebar type + indent (2026-10-20) */
.sb-group-btn{font-size:.8rem}
.sb-home [role=tab]{font-weight:600;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.sb-home [role=tab][aria-selected=true],.sb-home [role=tab]:hover{color:var(--text)}
.sb-group-body{padding-left:14px}
body.sb-collapsed .sb-group-body{padding-left:0}
.sb-group-body [role=tab]{font-size:.86rem}

/* ---- typeahead ---- */
.gs-form{position:relative}
.ta-list{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:40;margin:0;padding:6px;list-style:none;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm,10px);box-shadow:var(--shadow);max-height:min(60vh,380px);overflow:auto;text-align:left}
.ta-opt{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:8px 10px;border-radius:7px;cursor:pointer;font-size:.93rem;color:var(--text)}
.ta-opt.ta-sep{margin-top:5px;position:relative}.ta-opt.ta-sep::before{content:"";position:absolute;left:10px;right:10px;top:-3px;border-top:1px solid var(--border)}
.ta-opt:hover,.ta-opt[aria-selected="true"]{background:var(--accent-soft)}
.ta-main{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ta-main mark{background:none;color:var(--accent);font-weight:600}
.ta-sub{flex-shrink:0;font-size:.78rem;color:var(--muted)}
@media (max-width:620px){.ta-opt{padding:11px 10px}.ta-sub{display:none}}
.tabs a[role=tab],.sb-foot a.btn{text-decoration:none}
