/* ══════════════════════════════════════════════════
   INTELLECT FINLAB — Elite Docs v3   (layout-fixed)
   ══════════════════════════════════════════════════ */
:root{
  --bg:#08111d;--bg2:#0d1525;--bg3:#0b1120;--bg4:#060e1a;
  --border:#1e293b;--border2:#141c2e;
  --text:#e5edf7;--t2:#94a3b8;--t3:#64748b;
  --gold:#c9a84c;--goldl:#e8c96a;--goldd:rgba(201,168,76,.12);
  --green:#22c55e;--red:#ef4444;--blue:#7dd3fc;
  --amber:#f59e0b;--purple:#a78bfa;
  --font:'Inter',ui-sans-serif,system-ui,sans-serif;
  --mono:'JetBrains Mono','SF Mono','Fira Code',monospace;
  --r:10px;--r2:6px;
  --sb:268px;--tb:58px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{
  background:var(--bg);color:var(--text);
  font-family:var(--font);line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none}
ul,ol{list-style:none}
code,kbd,pre{font-family:var(--mono)}

/* ─── TOPBAR ─────────────────────────────── */
.topbar{
  position:fixed;inset:0 0 auto;height:var(--tb);
  background:rgba(8,17,29,.97);backdrop-filter:blur(16px);
  border-bottom:1px solid var(--border);
  display:flex;align-items:center;
  z-index:900;
}
.tb-brand{
  display:flex;align-items:center;gap:10px;
  width:var(--sb);padding:0 20px;height:100%;flex-shrink:0;
  border-right:1px solid var(--border);
  transition:.15s ease;cursor:pointer;
}
.tb-brand:hover{background:rgba(201,168,76,.05)}
.tb-bars{display:flex;gap:3px}
.tb-b{width:4px;height:14px;border-radius:2px;display:block}
.tb-b.g{background:var(--green)}.tb-b.r{background:var(--red)}
.tb-name{line-height:1}
.tb-main{font-size:11px;font-weight:800;letter-spacing:2.2px;color:var(--gold)}
.tb-sub{font-size:8px;font-weight:600;letter-spacing:1.8px;color:var(--t3);margin-top:3px}
.tb-mid{flex:1;padding:0 24px;display:flex;align-items:center;gap:10px}
.tb-pill{
  font-size:10px;font-weight:800;letter-spacing:.5px;
  padding:4px 12px;border-radius:999px;
  background:var(--goldd);border:1px solid rgba(201,168,76,.2);color:var(--goldl)
}
.tb-right{display:flex;align-items:center;gap:4px;padding:0 16px;margin-left:auto}
.tb-link{
  font-size:12px;font-weight:600;padding:6px 14px;border-radius:var(--r2);
  color:var(--t2);border:1px solid transparent;transition:.15s ease;
}
.tb-link:hover{background:rgba(255,255,255,.04);color:var(--text);border-color:var(--border)}
.tb-link.act{background:var(--goldd);border-color:rgba(201,168,76,.25);color:var(--goldl)}

/* ─── SIDEBAR ────────────────────────────── */
.sidebar{
  position:fixed;top:var(--tb);left:0;
  width:var(--sb);height:calc(100vh - var(--tb));
  background:var(--bg3);border-right:1px solid var(--border);
  overflow-y:auto;overflow-x:hidden;
  display:flex;flex-direction:column;
  padding:14px 0 60px;z-index:800;
}
.sidebar::-webkit-scrollbar{width:3px}
.sidebar::-webkit-scrollbar-thumb{background:#1e2d40;border-radius:3px}
.sb-group{padding:0 12px;margin-bottom:2px}
.sb-head{
  font-size:9px;font-weight:800;letter-spacing:2.5px;text-transform:uppercase;
  color:var(--t3);padding:14px 8px 6px;
}
.sb-item{
  display:flex;align-items:center;gap:9px;
  padding:8px 10px;border-radius:7px;
  font-size:12px;font-weight:500;color:var(--t2);
  transition:.12s ease;cursor:pointer;
  border:1px solid transparent;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.sb-item:hover{background:rgba(255,255,255,.04);color:var(--text)}
.sb-item.on{
  background:var(--goldd);border-color:rgba(201,168,76,.22);
  color:var(--goldl);font-weight:700;
}
.sb-ico{font-size:13px;width:18px;text-align:center;flex-shrink:0}
.sb-sep{margin:6px 14px;height:1px;background:var(--border2)}
.sb-stamp{
  margin-top:auto;padding:20px 12px 0;
  display:flex;justify-content:center;
}

/* ─── MAIN CONTENT (THE FIX) ─────────────── */
.main-content{
  /* Push right of sidebar, below topbar */
  margin-left:var(--sb);
  padding-top:var(--tb);
  min-height:100vh;
}

/* ─── PAGE HERO ──────────────────────────── */
.pg-hero{
  padding:60px 64px 52px;
  background:linear-gradient(140deg,#091422 0%,#0d1a2e 60%,#0b1320 100%);
  border-bottom:1px solid var(--border);
  position:relative;overflow:hidden;
}
.pg-hero::before{
  content:'';position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(201,168,76,.025)1px,transparent 1px),
    linear-gradient(90deg,rgba(201,168,76,.025)1px,transparent 1px);
  background-size:52px 52px;pointer-events:none;
}
.pg-hero::after{
  content:'';position:absolute;
  width:440px;height:440px;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,rgba(201,168,76,.07),transparent);
  top:-160px;right:-80px;
}
.hero-eye{
  display:inline-flex;align-items:center;gap:8px;
  font-size:10px;font-weight:800;letter-spacing:2.5px;text-transform:uppercase;
  color:var(--gold);margin-bottom:14px;position:relative;z-index:1;
}
.pulse{
  width:7px;height:7px;border-radius:50%;background:var(--green);
  animation:pulse 2s infinite;flex-shrink:0;
}
@keyframes pulse{
  0%{box-shadow:0 0 0 0 rgba(34,197,94,.6)}
  70%{box-shadow:0 0 0 8px rgba(34,197,94,0)}
  100%{box-shadow:0 0 0 0 rgba(34,197,94,0)}
}
.hero-title{
  font-size:clamp(30px,3.5vw,50px);font-weight:900;
  line-height:1.08;letter-spacing:-1.5px;
  margin-bottom:14px;position:relative;z-index:1;
}
.hero-title .gld{color:var(--gold)}
.hero-lead{
  font-size:15.5px;color:var(--t2);line-height:1.75;
  max-width:760px;margin-bottom:24px;position:relative;z-index:1;
}
.hero-badges{display:flex;flex-wrap:wrap;gap:8px;position:relative;z-index:1}
.hbadge{
  font-size:11px;font-weight:600;padding:5px 12px;border-radius:999px;
  background:rgba(255,255,255,.05);border:1px solid var(--border);color:var(--t2)
}

/* ─── BODY ───────────────────────────────── */
.pg-body{
  padding:40px 64px 80px;
}

/* ─── SECTIONS ───────────────────────────── */
.doc-sec{padding-top:52px}
.sec-banner{
  display:flex;align-items:center;gap:18px;
  padding:22px 26px;border-radius:var(--r);margin-bottom:28px;
  border:1px solid var(--border);
  background:linear-gradient(135deg,var(--bg2),var(--bg3));
}
.sec-banner.gld{border-color:rgba(201,168,76,.2);background:linear-gradient(135deg,rgba(201,168,76,.05),var(--bg2))}
.sec-banner.blu{border-color:rgba(125,211,252,.15);background:linear-gradient(135deg,rgba(125,211,252,.04),var(--bg2))}
.sec-banner.grn{border-color:rgba(34,197,94,.15);background:linear-gradient(135deg,rgba(34,197,94,.04),var(--bg2))}
.sec-banner.red{border-color:rgba(239,68,68,.15);background:linear-gradient(135deg,rgba(239,68,68,.04),var(--bg2))}
.sec-banner.pur{border-color:rgba(167,139,250,.15);background:linear-gradient(135deg,rgba(167,139,250,.04),var(--bg2))}
.sb-big-ico{font-size:36px;flex-shrink:0}
.sb-texts .sb-eyebrow{font-size:9px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:var(--t3);margin-bottom:4px}
.sb-texts .sb-title{font-size:22px;font-weight:800;letter-spacing:-.3px}
.sb-texts .sb-title .gld{color:var(--gold)}
.sb-texts .sb-desc{font-size:13.5px;color:var(--t2);margin-top:5px;line-height:1.65}

h2.s-h{
  font-size:22px;font-weight:800;letter-spacing:-.3px;
  margin-top:52px;margin-bottom:8px;
  padding-bottom:14px;border-bottom:2px solid var(--border);
}
h3.ss-h{font-size:17px;font-weight:700;margin-top:32px;margin-bottom:10px;color:var(--text)}
h4.m-h{
  font-size:11px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;
  color:var(--gold);margin-top:22px;margin-bottom:10px;
  display:flex;align-items:center;gap:7px;
}
h4.m-h::before{content:'';width:3px;height:11px;background:var(--gold);border-radius:2px;flex-shrink:0}

p{font-size:14.5px;color:var(--t2);line-height:1.75;margin-bottom:14px}
strong{color:var(--text);font-weight:700}
p code{background:rgba(125,211,252,.08);color:var(--blue);padding:1px 6px;border-radius:4px;font-size:13px}
li{font-size:14px;color:var(--t2);line-height:1.7}

/* ─── BADGES ─────────────────────────────── */
.bdg{display:inline-flex;align-items:center;font-size:9px;font-weight:800;letter-spacing:1px;text-transform:uppercase;padding:3px 9px;border-radius:999px}
.bdg.gld{background:var(--goldd);border:1px solid rgba(201,168,76,.25);color:var(--gold)}
.bdg.grn{background:rgba(34,197,94,.1);border:1px solid rgba(34,197,94,.2);color:var(--green)}
.bdg.blu{background:rgba(125,211,252,.08);border:1px solid rgba(125,211,252,.15);color:var(--blue)}
.bdg.amb{background:rgba(245,158,11,.1);border:1px solid rgba(245,158,11,.2);color:var(--amber)}
.bdg.red{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.2);color:#f87171}
.bdg.pur{background:rgba(167,139,250,.1);border:1px solid rgba(167,139,250,.2);color:var(--purple)}

/* ─── CALLOUT ────────────────────────────── */
.cbox{border-radius:var(--r);padding:18px 22px;margin:18px 0;display:flex;gap:14px;align-items:flex-start}
.cbox.gld{background:rgba(201,168,76,.06);border:1px solid rgba(201,168,76,.2)}
.cbox.grn{background:rgba(34,197,94,.05);border:1px solid rgba(34,197,94,.18)}
.cbox.blu{background:rgba(125,211,252,.04);border:1px solid rgba(125,211,252,.15)}
.cbox.red{background:rgba(239,68,68,.05);border:1px solid rgba(239,68,68,.18)}
.cbox.pur{background:rgba(167,139,250,.05);border:1px solid rgba(167,139,250,.18)}
.cbox-ico{font-size:20px;flex-shrink:0;margin-top:1px}
.cbox-body .cb-title{font-size:12px;font-weight:800;letter-spacing:.8px;text-transform:uppercase;margin-bottom:5px}
.cbox.gld .cb-title{color:var(--gold)}
.cbox.grn .cb-title{color:var(--green)}
.cbox.blu .cb-title{color:var(--blue)}
.cbox.red .cb-title{color:#f87171}
.cbox.pur .cb-title{color:var(--purple)}
.cbox-body p{margin:0;font-size:13.5px}

/* ─── STAT ROW ───────────────────────────── */
.stat-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;margin:22px 0}
.stat-c{background:var(--bg2);border:1px solid var(--border);border-radius:var(--r);padding:20px 22px}
.stat-n{font-size:30px;font-weight:900;font-family:var(--mono);letter-spacing:-1.5px;line-height:1;margin-bottom:6px}
.stat-n.gld{color:var(--gold)} .stat-n.grn{color:var(--green)} .stat-n.blu{color:var(--blue)} .stat-n.amb{color:var(--amber)}
.stat-l{font-size:11px;font-weight:600;letter-spacing:.8px;text-transform:uppercase;color:var(--t3)}
.stat-d{font-size:12px;color:var(--t2);margin-top:5px}

/* ─── TABLE ──────────────────────────────── */
.tbl-wrap{overflow-x:auto;margin:16px 0;border-radius:var(--r);border:1px solid var(--border)}
table{width:100%;border-collapse:collapse;font-size:13px}
thead{background:var(--bg3)}
th{padding:11px 16px;text-align:left;font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--t3);border-bottom:2px solid var(--border);white-space:nowrap}
td{padding:11px 16px;border-bottom:1px solid var(--border2);color:var(--t2);vertical-align:top}
tr:last-child td{border-bottom:none}
tr:hover td{background:rgba(255,255,255,.015)}
td code{background:rgba(125,211,252,.08);color:var(--blue);padding:1px 6px;border-radius:4px;font-size:11.5px;white-space:nowrap}
td.g{color:var(--gold);font-weight:700} td.gr{color:var(--green)} td.re{color:#f87171} td.am{color:var(--amber)} td.bl{color:var(--blue)}

/* ─── CODE BLOCK ─────────────────────────── */
.code-blk{background:#050c18;border:1px solid #1a2535;border-radius:var(--r);overflow:hidden;margin:16px 0;box-shadow:0 8px 24px rgba(0,0,0,.3)}
.code-hdr{display:flex;justify-content:space-between;align-items:center;padding:9px 16px;background:#070f1c;border-bottom:1px solid #1a2535}
.code-lang{font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--t3)}
.code-cp{font-size:10px;font-weight:600;padding:3px 9px;border-radius:4px;background:rgba(255,255,255,.05);border:1px solid var(--border);color:var(--t3);cursor:pointer;transition:.15s ease}
.code-cp:hover{color:var(--text)}
.code-bd{padding:16px 20px;overflow-x:auto}
.code-bd code{font-size:12.5px;line-height:1.75;color:#cfe8ff;display:block;white-space:pre}
.kw{color:#c084fc}.fn{color:#7dd3fc}.str{color:#86efac}.cm{color:#475569}.nm{color:#fcd34d}.ty{color:#a5f3fc}

/* ─── FLOW ───────────────────────────────── */
.flow-wrap{background:var(--bg3);border:1px solid var(--border);border-radius:var(--r);padding:24px;margin:18px 0;overflow-x:auto}
.flow-title{font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--t3);margin-bottom:16px}
.flow-row{display:flex;align-items:center;gap:8px;min-width:max-content}
.fnode{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 14px;border-radius:8px;min-width:96px;text-align:center;flex-shrink:0}
.fnode-l{font-size:10px;font-weight:800;letter-spacing:.3px;text-transform:uppercase;line-height:1.3}
.fnode-s{font-size:9px;color:var(--t3);line-height:1.3;margin-top:2px}
.fnode.g{background:rgba(34,197,94,.08);border:1px solid rgba(34,197,94,.2)} .fnode.g .fnode-l{color:var(--green)}
.fnode.b{background:rgba(125,211,252,.07);border:1px solid rgba(125,211,252,.18)} .fnode.b .fnode-l{color:var(--blue)}
.fnode.gd{background:var(--goldd);border:1px solid rgba(201,168,76,.22)} .fnode.gd .fnode-l{color:var(--gold)}
.fnode.am{background:rgba(245,158,11,.07);border:1px solid rgba(245,158,11,.18)} .fnode.am .fnode-l{color:var(--amber)}
.fnode.re{background:rgba(239,68,68,.07);border:1px solid rgba(239,68,68,.18)} .fnode.re .fnode-l{color:#f87171}
.fnode.pu{background:rgba(167,139,250,.07);border:1px solid rgba(167,139,250,.18)} .fnode.pu .fnode-l{color:var(--purple)}
.farr{font-size:18px;color:var(--t3);flex-shrink:0}

/* ─── STATE CARDS ────────────────────────── */
.state-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(196px,1fr));gap:10px;margin:16px 0}
.sc{border-radius:8px;padding:13px 15px}
.sc-cat{font-size:9px;font-weight:700;letter-spacing:1px;text-transform:uppercase;margin-bottom:4px}
.sc-lab{font-size:12px;font-weight:800;font-family:var(--mono)}
.sc-d{font-size:11px;color:var(--t3);margin-top:3px;line-height:1.35}
.sc.pre{background:rgba(148,163,184,.05);border:1px solid rgba(148,163,184,.12)} .sc.pre .sc-cat,.sc.pre .sc-lab{color:var(--t2)}
.sc.pen{background:rgba(245,158,11,.06);border:1px solid rgba(245,158,11,.15)} .sc.pen .sc-cat,.sc.pen .sc-lab{color:var(--amber)}
.sc.opn{background:rgba(34,197,94,.06);border:1px solid rgba(34,197,94,.18)} .sc.opn .sc-cat,.sc.opn .sc-lab{color:var(--green)}
.sc.cls{background:rgba(125,211,252,.06);border:1px solid rgba(125,211,252,.15)} .sc.cls .sc-cat,.sc.cls .sc-lab{color:var(--blue)}
.sc.ter{background:rgba(239,68,68,.06);border:1px solid rgba(239,68,68,.15)} .sc.ter .sc-cat,.sc.ter .sc-lab{color:#f87171}
.sc.pos{background:rgba(167,139,250,.06);border:1px solid rgba(167,139,250,.15)} .sc.pos .sc-cat,.sc.pos .sc-lab{color:var(--purple)}

/* ─── CHIPS ──────────────────────────────── */
.chips{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}
.chip{font-size:11px;font-weight:600;padding:4px 10px;border-radius:999px;background:rgba(125,211,252,.06);border:1px solid rgba(125,211,252,.14);color:var(--blue);font-family:var(--mono)}
.chip.gld{background:var(--goldd);border-color:rgba(201,168,76,.2);color:var(--gold)}
.chip.grn{background:rgba(34,197,94,.07);border-color:rgba(34,197,94,.18);color:var(--green)}
.chip.amb{background:rgba(245,158,11,.07);border-color:rgba(245,158,11,.18);color:var(--amber)}
.chip.red{background:rgba(239,68,68,.07);border-color:rgba(239,68,68,.18);color:#f87171}
.chip.pur{background:rgba(167,139,250,.07);border-color:rgba(167,139,250,.18);color:var(--purple)}

/* ─── FEATURE CARDS ──────────────────────── */
.fg{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin:20px 0}
.fc{background:var(--bg2);border:1px solid var(--border);border-radius:var(--r);padding:22px;transition:.2s ease}
.fc:hover{border-color:rgba(201,168,76,.2);transform:translateY(-2px);box-shadow:0 12px 32px rgba(0,0,0,.3)}
.fc-ico{font-size:26px;margin-bottom:12px}
.fc-t{font-size:15px;font-weight:700;margin-bottom:8px;color:var(--text)}
.fc-d{font-size:13px;color:var(--t2);line-height:1.65}
.fc.gld-f{border-color:rgba(201,168,76,.18);background:linear-gradient(135deg,rgba(201,168,76,.04),var(--bg2))}
.fc.blu-f{border-color:rgba(125,211,252,.14)}
.fc.grn-f{border-color:rgba(34,197,94,.14)}
.fc.red-f{border-color:rgba(239,68,68,.14)}
.fc.pur-f{border-color:rgba(167,139,250,.14)}

/* ─── STEP LIST ──────────────────────────── */
.steps{display:flex;flex-direction:column;gap:0;margin:20px 0;border:1px solid var(--border);border-radius:var(--r);overflow:hidden}
.step{display:flex;gap:0;border-bottom:1px solid var(--border)}
.step:last-child{border-bottom:none}
.step-n{
  min-width:56px;display:flex;align-items:center;justify-content:center;
  font-size:20px;font-weight:900;color:var(--gold);font-family:var(--mono);
  background:rgba(201,168,76,.05);border-right:1px solid var(--border);
  flex-shrink:0;padding:16px 0;
}
.step-c{padding:16px 22px;flex:1}
.step-t{font-size:14px;font-weight:700;color:var(--text);margin-bottom:6px}
.step-d{font-size:13px;color:var(--t2);line-height:1.65}
.step-cmd{margin-top:10px;background:#050c18;border:1px solid var(--border);border-radius:6px;padding:8px 14px;font-family:var(--mono);font-size:12.5px;color:#86efac}

/* ─── KV ─────────────────────────────────── */
.kv-panel{background:var(--bg2);border:1px solid var(--border);border-radius:var(--r);overflow:hidden;margin:16px 0}
.kv-row{display:flex;justify-content:space-between;align-items:flex-start;padding:11px 18px;border-bottom:1px solid var(--border2);font-size:13px;gap:20px}
.kv-row:last-child{border-bottom:none}
.kv-k{color:var(--t2);flex:1}
.kv-v{font-weight:700;font-family:var(--mono);text-align:right;flex-shrink:0}
.kv-v.gld{color:var(--gold)} .kv-v.grn{color:var(--green)} .kv-v.red{color:#f87171} .kv-v.amb{color:var(--amber)} .kv-v.blu{color:var(--blue)} .kv-v.dim{color:var(--t3)}

/* ─── ACCORDION ──────────────────────────── */
.acc{border:1px solid var(--border);border-radius:var(--r);overflow:hidden;margin:16px 0}
.acc-it{border-bottom:1px solid var(--border)}
.acc-it:last-child{border-bottom:none}
.acc-hdr{
  display:flex;justify-content:space-between;align-items:center;
  padding:15px 20px;cursor:pointer;background:var(--bg2);
  transition:.15s ease;user-select:none;
}
.acc-hdr:hover{background:rgba(255,255,255,.03)}
.acc-title{font-size:14px;font-weight:700;color:var(--text);display:flex;align-items:center;gap:10px}
.acc-arr{color:var(--t3);font-size:14px;transition:.2s ease;flex-shrink:0}
.acc-it.open .acc-arr{transform:rotate(180deg)}
.acc-body{padding:0 20px 20px;display:none}
.acc-it.open .acc-body{display:block;padding-top:16px}

/* ─── TIMELINE ───────────────────────────── */
.timeline{display:flex;flex-direction:column;gap:0;margin:16px 0}
.tl-it{display:flex;gap:0;min-height:72px}
.tl-l{display:flex;flex-direction:column;align-items:center;width:44px;flex-shrink:0}
.tl-dot{width:14px;height:14px;border-radius:50%;flex-shrink:0;margin-top:4px}
.tl-dot.g{background:var(--green);box-shadow:0 0 8px rgba(34,197,94,.5)}
.tl-dot.b{background:var(--blue);box-shadow:0 0 8px rgba(125,211,252,.4)}
.tl-dot.gd{background:var(--gold);box-shadow:0 0 8px rgba(201,168,76,.5)}
.tl-dot.am{background:var(--amber);box-shadow:0 0 8px rgba(245,158,11,.4)}
.tl-dot.re{background:#f87171;box-shadow:0 0 8px rgba(239,68,68,.4)}
.tl-dot.pu{background:var(--purple);box-shadow:0 0 8px rgba(167,139,250,.4)}
.tl-line{width:2px;flex:1;background:var(--border2);margin-top:6px}
.tl-it:last-child .tl-line{display:none}
.tl-c{padding:0 0 24px 16px;flex:1}
.tl-stage{font-size:11px;font-weight:800;letter-spacing:.8px;text-transform:uppercase;margin-bottom:5px}
.tl-det{font-size:13px;color:var(--t2);line-height:1.6}
.tl-ts{font-size:11px;color:var(--t3);margin-top:4px;font-family:var(--mono)}

/* ─── 2-COL ──────────────────────────────── */
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:16px 0}
@media(max-width:900px){.two-col{grid-template-columns:1fr}}

/* ─── PAGE FOOTER ────────────────────────── */
.pg-footer{
  border-top:1px solid var(--border);padding:32px 64px;
  display:flex;justify-content:space-between;align-items:center;
  background:var(--bg3);gap:16px;flex-wrap:wrap;
}
.pf-link{
  display:flex;flex-direction:column;gap:4px;
  padding:14px 20px;border-radius:var(--r);
  border:1px solid var(--border);background:var(--bg2);
  transition:.15s ease;
}
.pf-link:hover{border-color:rgba(201,168,76,.25)}
.pf-dir{font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--t3)}
.pf-title{font-size:14px;font-weight:700;color:var(--gold)}

/* ─── RESPONSIVE ─────────────────────────── */
@media(max-width:1100px){.pg-body{padding:32px 40px 80px}.pg-hero{padding:48px 40px 40px}}
@media(max-width:768px){
  .tb-right{display:none}
  .sidebar{display:none}
  .main-content{margin-left:0}
  .pg-body{padding:24px 20px 60px}
  .pg-hero{padding:32px 20px 32px}
  .pg-footer{padding:24px 20px}
  :root{--sb:0px}
}

/* ─── EXTENDED VARS & UTILITIES ─────────── */
:root {
  /* Alias vars for inline-style compatibility */
  --text-2: #94a3b8;
  --text-3: #64748b;
  --border-sub: #141c2e;
  --bg-panel: #0d1525;
}

/* Color span utilities */
.gold { color: var(--gold) }
.green { color: var(--green) }
.blue { color: var(--blue) }
.amber { color: var(--amber) }
.gld { color: var(--gold) }
.grn { color: var(--green) }
.blu { color: var(--blue) }
.amb { color: var(--amber) }
.dim { color: var(--t3) }

/* ─── PAGE CARD (User Guide) ─────────────── */
.page-card {
  background: var(--bg2);border: 1px solid var(--border);
  border-radius: var(--r);padding: 20px 22px;
  margin: 14px 0;display: flex;gap: 16px;
  transition: .2s ease;
}
.page-card:hover { border-color: rgba(201,168,76,.2); }
.pc-ico { font-size: 28px; flex-shrink: 0; margin-top: 2px; }
.pc-t { font-size: 15px; font-weight: 700; color: var(--text); margin-bottom: 6px; }
.pc-d { font-size: 13.5px; color: var(--t2); line-height: 1.65; }
.pc-path { font-size: 11px; color: var(--gold); font-family: var(--mono); margin-top: 6px; }

/* ─── TIP / WARN BOXES ───────────────────── */
.tip-box {
  background: rgba(34,197,94,.05); border: 1px solid rgba(34,197,94,.18);
  border-radius: var(--r); padding: 16px 20px;
  display: flex; gap: 12px; align-items: flex-start; margin: 14px 0;
}
.warn-box {
  background: rgba(239,68,68,.05); border: 1px solid rgba(239,68,68,.18);
  border-radius: var(--r); padding: 16px 20px;
  display: flex; gap: 12px; align-items: flex-start; margin: 14px 0;
}
.tip-box p, .warn-box p { margin: 0; font-size: 13.5px; color: var(--t2); line-height: 1.65; }
.box-ico { font-size: 20px; flex-shrink: 0; margin-top: 1px; }

/* ─── CHIP ROW ALIAS ─────────────────────── */
.chip-row { display: flex; flex-wrap: wrap; gap: 7px; margin: 12px 0; }

/* ─── SECTION WRAPPER ────────────────────── */
.doc-sec { padding-top: 56px; }

/* ─── ADDITIONAL FNODE COLORS ────────────── */
.fnode.wh { background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.1); }
.fnode.wh .fnode-l { color: var(--text); }
.fnode.grn { background: rgba(34,197,94,.08); border: 1px solid rgba(34,197,94,.2); }
.fnode.grn .fnode-l { color: var(--green); }

/* ─── BADGE INLINE ALIAS ─────────────────── */
.badge { display: inline-flex; align-items: center; font-size: 9px; font-weight: 800;
  letter-spacing: 1px; text-transform: uppercase; padding: 3px 9px; border-radius: 999px; }
.badge.blue  { background: rgba(125,211,252,.08); border: 1px solid rgba(125,211,252,.15); color: var(--blue); }
.badge.gold  { background: var(--goldd); border: 1px solid rgba(201,168,76,.25); color: var(--gold); }
.badge.green { background: rgba(34,197,94,.1); border: 1px solid rgba(34,197,94,.2); color: var(--green); }

/* ─── HERO BADGES ────────────────────────── */
.hero-badges { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; }
.hbadge {
  font-size: 11px; font-weight: 600; padding: 5px 12px; border-radius: 999px;
  background: rgba(255,255,255,.05); border: 1px solid var(--border); color: var(--t2);
}

/* ─── HERO EYE DOC VARIANT ───────────────── */
.hero-eye { position: relative; z-index: 1; }

/* ─── DENSITY FIX ────────────────────────── */
.pg-body p + h2.s-h,
.pg-body .doc-sec + .doc-sec { border-top: none; }

/* ─── SECTION BADGE IN HERO ──────────────── */
.hero-lead { position: relative; z-index: 1; }

/* ════════════════════════════════════════════════════
   ELITE DIAGRAMS v2  — interactive visual components
   ════════════════════════════════════════════════════ */

/* ─── ARCH DIAGRAM (SVG wrapper) ─────────── */
.arch-viz {
  background: linear-gradient(160deg, #060e1a 0%, #0a1628 100%);
  border: 1px solid var(--border);
  border-radius: var(--r);
  padding: 32px 24px;
  margin: 20px 0;
  position: relative;
  overflow: hidden;
}
.arch-viz::before {
  content: '';
  position: absolute; inset: 0;
  background-image:
    linear-gradient(rgba(201,168,76,.018) 1px, transparent 1px),
    linear-gradient(90deg, rgba(201,168,76,.018) 1px, transparent 1px);
  background-size: 44px 44px;
  pointer-events: none;
}
.arch-viz-title {
  font-size: 10px; font-weight: 800; letter-spacing: 2px;
  text-transform: uppercase; color: var(--t3);
  margin-bottom: 20px; position: relative; z-index: 1;
}
.arch-viz svg { display: block; width: 100%; position: relative; z-index: 1; }

/* ─── ANIMATED FLOW NODES ───────────────── */
.flow-node-ani {
  display: inline-flex; flex-direction: column; align-items: center;
  gap: 6px; padding: 14px 18px; border-radius: 10px;
  position: relative; cursor: default;
  transition: transform .2s ease, box-shadow .2s ease;
}
.flow-node-ani:hover { transform: translateY(-3px); }
.flow-node-ani .fn-ico { font-size: 22px; line-height: 1; }
.flow-node-ani .fn-lbl {
  font-size: 11px; font-weight: 800; letter-spacing: .5px;
  text-transform: uppercase; text-align: center;
}
.flow-node-ani .fn-sub { font-size: 10px; color: var(--t3); text-align: center; }
.flow-node-ani.ani-gd {
  background: rgba(201,168,76,.08); border: 1px solid rgba(201,168,76,.3);
  box-shadow: 0 0 20px rgba(201,168,76,.08);
}
.flow-node-ani.ani-gd .fn-lbl { color: var(--gold); }
.flow-node-ani.ani-gd:hover { box-shadow: 0 8px 32px rgba(201,168,76,.2); }
.flow-node-ani.ani-bl {
  background: rgba(125,211,252,.06); border: 1px solid rgba(125,211,252,.25);
}
.flow-node-ani.ani-bl .fn-lbl { color: var(--blue); }
.flow-node-ani.ani-gn {
  background: rgba(34,197,94,.07); border: 1px solid rgba(34,197,94,.25);
}
.flow-node-ani.ani-gn .fn-lbl { color: var(--green); }
.flow-node-ani.ani-re {
  background: rgba(239,68,68,.07); border: 1px solid rgba(239,68,68,.25);
}
.flow-node-ani.ani-re .fn-lbl { color: #f87171; }
.flow-node-ani.ani-pu {
  background: rgba(167,139,250,.07); border: 1px solid rgba(167,139,250,.25);
}
.flow-node-ani.ani-pu .fn-lbl { color: var(--purple); }
.flow-node-ani.ani-am {
  background: rgba(245,158,11,.07); border: 1px solid rgba(245,158,11,.25);
}
.flow-node-ani.ani-am .fn-lbl { color: var(--amber); }

/* ─── ANIMATED ARROW ─────────────────────── */
@keyframes dash-flow {
  from { stroke-dashoffset: 24; }
  to   { stroke-dashoffset: 0; }
}
@keyframes arrow-pulse {
  0%,100% { opacity: .5; } 50% { opacity: 1; }
}
.flow-svg-arrow { animation: arrow-pulse 2s infinite; }
.flow-svg-dash  { stroke-dasharray: 8 4; animation: dash-flow .8s linear infinite; }

/* ─── SCANNER LIVE PANEL ─────────────────── */
.scanner-live {
  background: #04080f;
  border: 1px solid var(--border);
  border-radius: var(--r);
  overflow: hidden; margin: 20px 0;
}
.sl-header {
  display: flex; align-items: center; gap: 12px;
  padding: 10px 16px; background: #060d18;
  border-bottom: 1px solid var(--border);
}
.sl-dot { width: 8px; height: 8px; border-radius: 50%; flex-shrink: 0; }
.sl-dot.live { background: var(--green); box-shadow: 0 0 8px rgba(34,197,94,.7);
  animation: pulse 1.5s infinite; }
.sl-title { font-size: 11px; font-weight: 700; color: var(--t2); font-family: var(--mono); }
.sl-env { margin-left: auto; font-size: 9px; font-weight: 800; letter-spacing: 1px;
  padding: 2px 8px; border-radius: 4px; background: rgba(34,197,94,.1);
  border: 1px solid rgba(34,197,94,.2); color: var(--green); }
.sl-feed {
  padding: 12px 0; max-height: 220px; overflow: hidden;
  display: flex; flex-direction: column; gap: 0;
}
.sl-row {
  display: flex; align-items: baseline; gap: 10px;
  padding: 6px 16px; font-family: var(--mono); font-size: 11.5px;
  border-bottom: 1px solid rgba(255,255,255,.03);
  animation: sl-in .4s ease;
}
@keyframes sl-in {
  from { opacity: 0; transform: translateX(-8px); }
  to   { opacity: 1; transform: translateX(0); }
}
.sl-time { color: var(--t3); flex-shrink: 0; font-size: 10px; }
.sl-tag {
  font-size: 9px; font-weight: 800; padding: 1px 7px; border-radius: 3px;
  text-transform: uppercase; letter-spacing: .5px; flex-shrink: 0;
}
.sl-tag.sc  { background: rgba(34,197,94,.1); color: var(--green); }
.sl-tag.gk  { background: rgba(125,211,252,.08); color: var(--blue); }
.sl-tag.pr  { background: rgba(201,168,76,.1); color: var(--gold); }
.sl-tag.sb  { background: rgba(34,197,94,.1); color: var(--green); }
.sl-tag.fi  { background: rgba(125,211,252,.08); color: var(--blue); }
.sl-tag.rk  { background: rgba(245,158,11,.1); color: var(--amber); }
.sl-tag.cl  { background: rgba(167,139,250,.1); color: var(--purple); }
.sl-tag.wl  { background: rgba(201,168,76,.1); color: var(--gold); }
.sl-msg { color: var(--t2); flex: 1; }
.sl-msg .hl { color: var(--gold); font-weight: 700; }
.sl-msg .gn { color: var(--green); font-weight: 700; }
.sl-msg .bl { color: var(--blue); }
.sl-cursor { display: inline-block; width: 7px; height: 13px;
  background: var(--gold); margin-left: 4px;
  animation: blink .9s step-end infinite; vertical-align: middle; }
@keyframes blink { 0%,100%{opacity:1} 50%{opacity:0} }

/* ─── DECISION TREE ──────────────────────── */
.dtree {
  background: var(--bg3); border: 1px solid var(--border);
  border-radius: var(--r); padding: 28px 24px; margin: 20px 0; overflow-x: auto;
}
.dtree-title { font-size: 10px; font-weight: 700; letter-spacing: 1.5px;
  text-transform: uppercase; color: var(--t3); margin-bottom: 20px; }
.dt-row { display: flex; align-items: flex-start; gap: 0; }
.dt-gate {
  display: flex; flex-direction: column; align-items: center; gap: 6px;
  min-width: 110px; flex-shrink: 0;
}
.dt-box {
  padding: 8px 12px; border-radius: 8px; text-align: center;
  font-size: 11px; font-weight: 700; line-height: 1.3; width: 100%;
  border: 1px solid;
}
.dt-box.check { background: rgba(245,158,11,.07); border-color: rgba(245,158,11,.25); color: var(--amber); }
.dt-box.pass  { background: rgba(34,197,94,.07); border-color: rgba(34,197,94,.25); color: var(--green); font-size: 10px; }
.dt-box.fail  { background: rgba(239,68,68,.07); border-color: rgba(239,68,68,.25); color: #f87171; font-size: 10px; }
.dt-box.exec  { background: rgba(201,168,76,.1); border-color: rgba(201,168,76,.3); color: var(--gold); }
.dt-arrow-h { display: flex; align-items: center; flex: 1; min-width: 20px; }
.dt-arrow-h::after { content: ''; display: block; width: 100%; height: 2px;
  background: linear-gradient(90deg, var(--border2), var(--border)); }
.dt-label { font-size: 9px; color: var(--t3); margin-top: 2px; letter-spacing: .5px; }

/* ─── TABS ───────────────────────────────── */
.tabs { margin: 20px 0; }
.tab-nav {
  display: flex; gap: 2px; flex-wrap: wrap;
  border-bottom: 1px solid var(--border); margin-bottom: 0;
  padding: 0 2px;
}
.tab-btn {
  padding: 9px 18px; font-size: 12px; font-weight: 600;
  color: var(--t2); border-radius: var(--r2) var(--r2) 0 0;
  cursor: pointer; transition: .15s ease; border: 1px solid transparent;
  border-bottom: none; background: transparent;
  margin-bottom: -1px; position: relative;
}
.tab-btn:hover { color: var(--text); background: rgba(255,255,255,.03); }
.tab-btn.on {
  color: var(--gold); background: var(--bg2);
  border-color: var(--border); border-bottom-color: var(--bg2);
}
.tab-pane { display: none; background: var(--bg2); border: 1px solid var(--border);
  border-top: none; border-radius: 0 0 var(--r) var(--r); padding: 24px; }
.tab-pane.on { display: block; }

/* ─── METRIC CARDS (animated) ───────────── */
.metric-grid {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  gap: 12px; margin: 20px 0;
}
.metric-card {
  background: var(--bg2); border: 1px solid var(--border);
  border-radius: var(--r); padding: 20px 18px; text-align: center;
  position: relative; overflow: hidden; transition: .2s ease;
}
.metric-card::before {
  content: ''; position: absolute; bottom: 0; left: 0; right: 0;
  height: 2px; border-radius: 0 0 var(--r) var(--r);
}
.metric-card.mc-gd::before { background: var(--gold); }
.metric-card.mc-gn::before { background: var(--green); }
.metric-card.mc-bl::before { background: var(--blue); }
.metric-card.mc-am::before { background: var(--amber); }
.metric-card.mc-re::before { background: #f87171; }
.metric-card.mc-pu::before { background: var(--purple); }
.metric-card:hover { transform: translateY(-3px); box-shadow: 0 12px 32px rgba(0,0,0,.4); }
.mc-val {
  font-size: 26px; font-weight: 900; font-family: var(--mono);
  letter-spacing: -1px; line-height: 1; margin-bottom: 6px;
}
.mc-gd .mc-val { color: var(--gold); }
.mc-gn .mc-val { color: var(--green); }
.mc-bl .mc-val { color: var(--blue); }
.mc-am .mc-val { color: var(--amber); }
.mc-re .mc-val { color: #f87171; }
.mc-pu .mc-val { color: var(--purple); }
.mc-lbl { font-size: 10px; font-weight: 700; letter-spacing: .8px;
  text-transform: uppercase; color: var(--t3); }
.mc-sub { font-size: 11px; color: var(--t2); margin-top: 4px; }

/* ─── SVG CHART (Wealth) ─────────────────── */
.chart-frame {
  background: linear-gradient(160deg, #060e1a 0%, #0b1421 100%);
  border: 1px solid var(--border);
  border-radius: var(--r); padding: 24px; margin: 20px 0; overflow: hidden;
}
.chart-frame-hdr {
  display: flex; justify-content: space-between; align-items: center;
  margin-bottom: 16px;
}
.chart-frame-title { font-size: 12px; font-weight: 700; color: var(--t2); }
.chart-legend { display: flex; gap: 16px; }
.cl-item { display: flex; align-items: center; gap: 6px; font-size: 11px; color: var(--t3); }
.cl-dot { width: 8px; height: 8px; border-radius: 50%; flex-shrink: 0; }

/* ─── DASHBOARD MOCKUP ───────────────────── */
.dash-mock {
  background: #04080f; border: 1px solid var(--border);
  border-radius: var(--r); overflow: hidden; margin: 20px 0;
  box-shadow: 0 20px 60px rgba(0,0,0,.6);
}
.dm-titlebar {
  display: flex; align-items: center; gap: 8px; padding: 10px 16px;
  background: #060d18; border-bottom: 1px solid var(--border);
}
.dm-dot { width: 10px; height: 10px; border-radius: 50%; }
.dm-dot.r { background: #ef4444; } .dm-dot.a { background: #f59e0b; } .dm-dot.g { background: #22c55e; }
.dm-title { font-size: 11px; font-weight: 600; color: var(--t3); font-family: var(--mono);
  margin: 0 auto; letter-spacing: .5px; }
.dm-env { font-size: 9px; font-weight: 800; padding: 2px 8px; border-radius: 4px;
  background: rgba(245,158,11,.1); border: 1px solid rgba(245,158,11,.2); color: var(--amber); }
.dm-body { padding: 20px; }

/* ─── HEALTH STATUS GRID ─────────────────── */
.health-grid {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 10px; margin: 16px 0;
}
.hg-item {
  background: var(--bg2); border: 1px solid var(--border);
  border-radius: 8px; padding: 14px 16px;
  display: flex; align-items: center; gap: 10px;
}
.hg-led {
  width: 10px; height: 10px; border-radius: 50%; flex-shrink: 0;
}
.hg-led.ok  { background: var(--green); box-shadow: 0 0 8px rgba(34,197,94,.6);
  animation: pulse 2s infinite; }
.hg-led.warn{ background: var(--amber); box-shadow: 0 0 8px rgba(245,158,11,.5); }
.hg-led.err { background: #ef4444; box-shadow: 0 0 8px rgba(239,68,68,.5); }
.hg-led.dim { background: var(--t3); }
.hg-label { font-size: 12px; font-weight: 600; color: var(--t2); flex: 1; }
.hg-val { font-size: 11px; font-weight: 700; font-family: var(--mono); }
.hg-val.ok   { color: var(--green); }
.hg-val.warn { color: var(--amber); }
.hg-val.err  { color: #f87171; }
.hg-val.dim  { color: var(--t3); }

/* ─── NETWORK / LAYER DIAGRAM ────────────── */
.layer-diagram {
  display: flex; flex-direction: column; gap: 8px; margin: 20px 0;
}
.layer-row {
  display: flex; align-items: stretch; gap: 8px; min-height: 56px;
}
.layer-label {
  width: 110px; flex-shrink: 0; display: flex; align-items: center;
  font-size: 10px; font-weight: 800; letter-spacing: 1.2px;
  text-transform: uppercase; color: var(--t3);
  border-right: 2px solid var(--border); padding-right: 12px;
  justify-content: flex-end; text-align: right;
}
.layer-nodes {
  display: flex; flex-wrap: wrap; gap: 6px; flex: 1; align-items: center;
}
.layer-node {
  padding: 6px 12px; border-radius: 6px; font-size: 11px; font-weight: 600;
  border: 1px solid; white-space: nowrap;
  transition: .15s ease; cursor: default;
}
.layer-node:hover { transform: translateY(-2px); filter: brightness(1.15); }
.layer-node.nd { background: var(--bg2); border-color: var(--border); color: var(--t2); }
.layer-node.gd { background: rgba(201,168,76,.07); border-color: rgba(201,168,76,.25); color: var(--gold); }
.layer-node.bl { background: rgba(125,211,252,.06); border-color: rgba(125,211,252,.2); color: var(--blue); }
.layer-node.gn { background: rgba(34,197,94,.06); border-color: rgba(34,197,94,.2); color: var(--green); }
.layer-node.re { background: rgba(239,68,68,.06); border-color: rgba(239,68,68,.2); color: #f87171; }
.layer-node.pu { background: rgba(167,139,250,.06); border-color: rgba(167,139,250,.2); color: var(--purple); }
.layer-node.am { background: rgba(245,158,11,.06); border-color: rgba(245,158,11,.2); color: var(--amber); }
.layer-connector {
  display: flex; align-items: center; justify-content: center;
  color: var(--t3); font-size: 18px; padding: 0 4px;
}

/* ─── STATE MACHINE DIAGRAM ──────────────── */
.sm-diagram {
  display: flex; flex-direction: column; gap: 0;
  background: var(--bg3); border: 1px solid var(--border);
  border-radius: var(--r); padding: 24px; margin: 20px 0;
}
.sm-row {
  display: flex; align-items: center; gap: 8px; margin-bottom: 4px;
}
.sm-state {
  display: flex; align-items: center; gap: 10px;
  padding: 11px 16px; border-radius: 8px; flex: 1;
  transition: .2s ease; cursor: default; border: 1px solid;
}
.sm-state:hover { transform: translateX(4px); filter: brightness(1.1); }
.sm-state .sm-n {
  font-size: 9px; font-weight: 800; letter-spacing: 1px;
  text-transform: uppercase; min-width: 28px;
}
.sm-state .sm-lbl { font-size: 13px; font-weight: 700; font-family: var(--mono); flex: 1; }
.sm-state .sm-d { font-size: 11px; color: var(--t3); text-align: right; }
.sm-state.pre { background: rgba(148,163,184,.04); border-color: rgba(148,163,184,.1); }
.sm-state.pre .sm-lbl, .sm-state.pre .sm-n { color: var(--t2); }
.sm-state.sub { background: rgba(245,158,11,.05); border-color: rgba(245,158,11,.18); }
.sm-state.sub .sm-lbl, .sm-state.sub .sm-n { color: var(--amber); }
.sm-state.fil { background: rgba(34,197,94,.05); border-color: rgba(34,197,94,.2); }
.sm-state.fil .sm-lbl, .sm-state.fil .sm-n { color: var(--green); }
.sm-state.cls { background: rgba(125,211,252,.05); border-color: rgba(125,211,252,.18); }
.sm-state.cls .sm-lbl, .sm-state.cls .sm-n { color: var(--blue); }
.sm-state.don { background: rgba(201,168,76,.07); border-color: rgba(201,168,76,.25); }
.sm-state.don .sm-lbl, .sm-state.don .sm-n { color: var(--gold); }
.sm-state.err { background: rgba(239,68,68,.05); border-color: rgba(239,68,68,.18); }
.sm-state.err .sm-lbl, .sm-state.err .sm-n { color: #f87171; }
.sm-arrow { color: var(--t3); font-size: 14px; padding: 0 4px; }
.sm-side { font-size: 10px; color: var(--t3); min-width: 120px; text-align: right;
  font-family: var(--mono); padding-right: 12px; }
.sm-timing { font-size: 9px; color: var(--t3); font-family: var(--mono);
  background: var(--bg2); border: 1px solid var(--border2);
  padding: 2px 8px; border-radius: 4px; min-width: 60px; text-align: center; }

/* ─── PIPELINE VIZ ───────────────────────── */
.pipeline {
  display: grid; gap: 0; margin: 20px 0;
  border-radius: var(--r); overflow: hidden;
  border: 1px solid var(--border);
}
.pipeline-stage {
  display: flex; align-items: center; gap: 16px;
  padding: 16px 20px; border-bottom: 1px solid var(--border2);
  transition: .15s ease; cursor: default;
  background: var(--bg2);
}
.pipeline-stage:last-child { border-bottom: none; }
.pipeline-stage:hover { background: rgba(255,255,255,.02); }
.ps-num {
  width: 28px; height: 28px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 11px; font-weight: 900; font-family: var(--mono);
  flex-shrink: 0; border: 2px solid;
}
.ps-num.gd { background: rgba(201,168,76,.1); border-color: var(--gold); color: var(--gold); }
.ps-num.bl { background: rgba(125,211,252,.08); border-color: var(--blue); color: var(--blue); }
.ps-num.gn { background: rgba(34,197,94,.08); border-color: var(--green); color: var(--green); }
.ps-num.am { background: rgba(245,158,11,.08); border-color: var(--amber); color: var(--amber); }
.ps-num.re { background: rgba(239,68,68,.08); border-color: #f87171; color: #f87171; }
.ps-num.pu { background: rgba(167,139,250,.08); border-color: var(--purple); color: var(--purple); }
.ps-ico { font-size: 20px; flex-shrink: 0; }
.ps-body { flex: 1; }
.ps-title { font-size: 13px; font-weight: 700; color: var(--text); margin-bottom: 2px; }
.ps-desc { font-size: 12px; color: var(--t2); line-height: 1.5; }
.ps-timing { font-size: 10px; font-family: var(--mono); color: var(--t3);
  background: var(--bg3); border: 1px solid var(--border2);
  padding: 3px 10px; border-radius: 4px; flex-shrink: 0; }
.ps-badge { font-size: 9px; font-weight: 800; letter-spacing: .5px;
  text-transform: uppercase; padding: 3px 8px; border-radius: 4px;
  flex-shrink: 0; }
.ps-badge.ok { background: rgba(34,197,94,.1); border: 1px solid rgba(34,197,94,.2); color: var(--green); }
.ps-badge.warn { background: rgba(245,158,11,.1); border: 1px solid rgba(245,158,11,.2); color: var(--amber); }
.ps-badge.block { background: rgba(239,68,68,.1); border: 1px solid rgba(239,68,68,.2); color: #f87171; }
