/* ============================================================
   NEPSE chart + coverage-check page styles (Private Ledger).
   Self-sufficient: nepse-chart/data-check.html loads only this file.
   On nepse-chart/ this loads AFTER css/nepse-luxury.css and must
   stay visually identical to the shared tokens. v=20261002a
   ============================================================ */
:root{
  --ink:#0C1F16; --pine:#14382A; --emerald:#1E6B4A; --emerald-deep:#155236;
  --gold:#C6A86B; --gold-soft:#E9DCC0; --gold-faint:#F4EDDD;
  --ivory:#FAF8F2; --paper:#FFFFFF;
  --hairline:rgba(12,31,22,.14); --hairline-soft:rgba(12,31,22,.08);
  --muted:#66705F; --faint:#9AA096;
  --up:#1E7A44; --down:#B23A2E;
  --radius:20px;
  --shadow:0 12px 40px rgba(12,31,22,.08);
  --shadow-hover:0 22px 60px rgba(12,31,22,.14);
  --ease:cubic-bezier(.2,0,0,1);
  --serif:'Spectral','Noto Serif Devanagari',Georgia,serif;
  --sans:'Inter',-apple-system,BlinkMacSystemFont,'SF Pro Text','Segoe UI',Helvetica,Arial,sans-serif;
  /* spacing scale: one rhythm across the suite */
  --space-1:8px; --space-2:12px; --space-3:16px; --space-4:24px;
  --space-5:32px; --space-6:48px; --space-7:64px; --space-8:96px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--sans);background:var(--ivory);color:var(--ink);font-size:16px;
  -webkit-font-smoothing:antialiased;line-height:1.6}
.wrap{max-width:1160px;margin:0 auto;padding:0 24px}
a{color:var(--emerald);text-decoration:none}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{
  outline:2px solid var(--gold);outline-offset:3px;border-radius:6px}
.skip{position:absolute;left:-9999px;top:8px;background:var(--paper);color:var(--ink);
  padding:8px 14px;border-radius:8px;z-index:200;font-weight:600}
.skip:focus{left:8px}

/* ---------- suite topbar (shared tokens, self-sufficient) ---------- */
.topbar{position:sticky;top:0;z-index:50;background:rgba(250,248,242,.9);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--hairline)}
.topbar-in{display:flex;align-items:center;gap:22px;height:70px}
.brand,.wordmark{font-family:var(--serif);font-weight:600;font-size:19px;letter-spacing:-.01em;
  color:var(--ink);white-space:nowrap;text-decoration:none}
.brand .g,.wordmark .g{color:var(--gold)}
.back{font-size:13px;color:var(--muted);font-weight:600;white-space:nowrap}
.back:hover{color:var(--ink)}
.suite-links{display:flex;gap:24px;margin-left:6px}
.suite-links a{font-size:12.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
  color:var(--muted);padding:6px 0;position:relative;transition:color .25s var(--ease)}
.suite-links a:hover{color:var(--ink)}
.suite-links a.on{color:var(--ink)}
.suite-links a.on::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;
  background:var(--gold);border-radius:2px}
.topbar .spacer{flex:1}
.dc-link{font-size:12.5px;font-weight:600;letter-spacing:.06em;color:var(--muted);
  border:1px solid var(--hairline);border-radius:999px;padding:8px 16px;background:var(--paper);
  white-space:nowrap;transition:color .25s var(--ease),border-color .25s var(--ease)}
.dc-link:hover{color:var(--ink);border-color:var(--gold)}
.btn{display:inline-flex;align-items:center;gap:8px;background:var(--emerald);color:#fff;
  font-weight:600;font-size:15px;padding:12px 26px;border-radius:999px;border:0;cursor:pointer;
  font-family:var(--sans);transition:transform .3s var(--ease),box-shadow .3s var(--ease),background .3s var(--ease)}
.btn:hover{background:var(--emerald-deep);transform:translateY(-1px);box-shadow:var(--shadow-hover);color:#fff}
.btn:active{transform:translateY(0) scale(.985);box-shadow:var(--shadow)}
.btn.small{padding:10px 20px;font-size:13.5px}
.btn.ghost{background:transparent;color:var(--emerald);border:1.5px solid var(--emerald)}
.btn.ghost:hover{background:rgba(30,107,74,.07);box-shadow:none;color:var(--emerald-deep)}
.btn:disabled{opacity:.5;cursor:default;transform:none}

/* ---------- hero ---------- */
.hero{padding:96px 0 48px;position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(720px 380px at 84% 6%,var(--gold-faint),transparent 62%),
             radial-gradient(560px 320px at 8% 90%,rgba(30,107,74,.06),transparent 60%)}
.hero .wrap{position:relative}
.hero-rule{width:56px;height:2px;background:var(--gold);margin-bottom:26px}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:12px;font-weight:700;
  letter-spacing:.2em;text-transform:uppercase;color:var(--emerald);margin-bottom:24px}
.hero h1{font-family:var(--serif);font-weight:500;font-size:clamp(42px,5.8vw,76px);
  line-height:1.04;letter-spacing:-.03em;margin:0 0 22px;max-width:16ch;text-wrap:balance}
.hero h1 em{font-style:italic;color:var(--emerald)}
.lede{color:var(--muted);font-size:clamp(16px,1.9vw,18.5px);max-width:62ch;line-height:1.65;margin:0 0 34px}
.lede strong{color:var(--ink);font-weight:600}
.asof{margin-top:12px;font-size:13.5px;color:var(--faint);font-variant-numeric:tabular-nums}

/* ---------- search: the command bar ---------- */
.nl-search{margin:26px 0 0}
.nl-search-row{display:flex;gap:10px}
#nl-sym{flex:1;font-family:var(--serif);font-size:21px;font-weight:500;letter-spacing:.01em;
  border:1px solid var(--hairline);border-radius:14px;padding:14px 20px;background:var(--paper);
  color:var(--ink);box-shadow:var(--shadow);text-transform:uppercase;font-variant-numeric:tabular-nums;
  transition:border-color .25s var(--ease),box-shadow .25s var(--ease)}
#nl-sym::placeholder{color:var(--faint);font-family:var(--serif);text-transform:none;font-size:17px}
#nl-sym:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(198,168,107,.22),var(--shadow);outline:none}
.nl-go{border:0;border-radius:14px;padding:0 30px;font-weight:700;font-size:15px;color:#fff;
  cursor:pointer;font-family:var(--sans);background:var(--emerald);
  transition:transform .3s var(--ease),box-shadow .3s var(--ease),background .3s var(--ease)}
.nl-go:hover{background:var(--emerald-deep);transform:translateY(-1px);box-shadow:var(--shadow-hover)}
.nl-go:active{transform:translateY(0) scale(.97)}
.nl-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.nl-chips button{border:1px solid var(--hairline);background:var(--paper);border-radius:999px;
  padding:8px 16px;font-weight:700;font-size:12.5px;letter-spacing:.03em;color:var(--muted);
  cursor:pointer;font-family:var(--sans);
  transition:color .25s var(--ease),border-color .25s var(--ease),background .25s var(--ease)}
.nl-chips button:hover{color:var(--emerald-deep);border-color:var(--gold);background:var(--gold-faint)}

/* ---------- live quote bar ---------- */
.nl-livebar{display:flex;align-items:center;gap:20px;background:var(--paper);
  border:1px solid var(--hairline);border-radius:16px;padding:16px 22px;
  box-shadow:var(--shadow);margin:16px 0;flex-wrap:wrap;position:relative;overflow:hidden}
.nl-livebar::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;
  background:linear-gradient(90deg,var(--gold),var(--gold-soft),var(--gold))}
.nl-lb-sym b{display:block;font-family:var(--serif);font-size:19px;font-weight:600;letter-spacing:.02em}
.nl-lb-sym span{font-size:12.5px;color:var(--muted)}
.nl-lb-px{margin-left:auto;text-align:right}
.nl-lb-px b{display:block;font-family:var(--serif);font-size:27px;font-weight:600;
  letter-spacing:-.015em;font-variant-numeric:tabular-nums}
.nl-lb-px span{font-size:13px;font-weight:700;font-variant-numeric:tabular-nums}
.nl-lb-px .up,.nl-livebar .up{color:var(--up)} .nl-lb-px .dn,.nl-livebar .dn{color:var(--down)}
.nl-lb-badge{display:flex;flex-direction:column;align-items:flex-end;gap:5px}
.nl-lb-badge small{color:var(--faint);font-size:12px}
.nl-badge{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:700;
  letter-spacing:.12em;padding:6px 14px;border-radius:999px}
.nl-badge.live{background:#E3F2E9;color:#0E5C30;border:1px solid #BFE3CC}
.nl-badge.eod{background:var(--ivory);color:var(--muted);border:1px solid var(--hairline)}
.nl-pulse{width:8px;height:8px;border-radius:50%;background:var(--emerald);animation:pulse 2.4s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.3}}

/* ---------- verdict ---------- */
.nl-verdict{background:var(--paper);border:1px solid var(--hairline);border-radius:var(--radius);
  box-shadow:var(--shadow);padding:30px 32px;margin:0 0 16px;position:relative;overflow:hidden}
.nl-verdict::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;
  background:linear-gradient(90deg,var(--gold),var(--gold-soft),var(--gold))}
.nl-verdict:empty{display:none}
.nl-v-top{display:flex;gap:26px;align-items:center;flex-wrap:wrap;margin-bottom:18px}
.nl-v-k{font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
  color:var(--faint);margin-bottom:6px}
.nl-v-label{font-family:var(--serif);font-size:clamp(30px,3.8vw,42px);font-weight:600;
  letter-spacing:-.02em;line-height:1.05}
.nl-v-label.sbuy{color:#0E6B3A}.nl-v-label.buy{color:var(--emerald)}
.nl-v-label.hold{color:var(--gold)}.nl-v-label.exit{color:var(--down)}
.nl-v-label.sexit{color:#8C2A20}.nl-v-label.insufficient{color:var(--muted)}
.nl-v-meterwrap{flex:1;min-width:220px}
.nl-v-meter{height:8px;border-radius:999px;background:var(--ivory);border:1px solid var(--hairline-soft);overflow:hidden}
.nl-v-fill{height:100%;border-radius:999px;transition:width .5s var(--ease)}
.nl-v-fill.sbuy,.nl-v-fill.buy{background:linear-gradient(90deg,var(--emerald),var(--gold))}
.nl-v-fill.hold{background:var(--gold)}
.nl-v-fill.exit,.nl-v-fill.sexit{background:linear-gradient(90deg,var(--gold),var(--down))}
.nl-v-score{font-size:12.5px;color:var(--muted);margin-top:8px;font-weight:600;
  font-variant-numeric:tabular-nums}
.nl-v-factors{width:100%;border-collapse:collapse;font-size:14px}
.nl-v-factors td{padding:11px 6px;border-top:1px solid var(--hairline-soft);vertical-align:top}
.nl-v-factors tr:first-child td{border-top:0}
.nl-v-factors td:first-child small{display:block;color:var(--muted);font-size:12.5px;font-weight:400;margin-top:2px}
.nl-fpts{font-weight:700;white-space:nowrap;text-align:right;min-width:48px;
  font-variant-numeric:tabular-nums}
.nl-fpts.up{color:var(--up)} .nl-fpts.dn{color:var(--down)}
.nl-v-foot{font-size:13px;color:var(--faint);margin-top:16px;max-width:74ch;line-height:1.6}
.nl-ltp-note{display:inline-block;background:var(--gold-faint);border:1px solid var(--gold-soft);
  color:#7A5E2B;border-radius:8px;padding:6px 12px;font-weight:600;margin-bottom:8px}
.nl-v-loading,.nl-v-err{padding:26px}
.nl-v-err{border:1px solid var(--hairline);border-left:3px solid var(--gold);border-radius:14px;
  background:var(--ivory);text-align:left}
.nl-v-err b{display:block;font-family:var(--serif);font-size:20px;font-weight:600;
  letter-spacing:-.01em;margin-bottom:6px;color:var(--ink)}
.nl-v-err span{font-size:14px;color:var(--muted);line-height:1.6}

/* ---------- signal history ---------- */
.nl-sighist{background:var(--paper);border:1px solid var(--hairline);border-radius:var(--radius);
  box-shadow:var(--shadow);padding:28px 30px;margin:0 0 16px}
.nl-sighist:empty{display:none}
.nl-sighist h2{font-family:var(--serif);font-size:22px;font-weight:600;letter-spacing:-.015em;margin:0 0 4px}
.nl-sh-sub{font-size:13.5px;color:var(--muted);margin:0 0 14px}
.nl-sh-wrap{overflow-x:auto;border:1px solid var(--hairline);border-radius:14px}
.nl-sh-table{width:100%;border-collapse:collapse;font-size:.88rem;min-width:560px;
  font-variant-numeric:tabular-nums}
.nl-sh-table thead th{background:var(--ivory);text-align:left;font-size:.68rem;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:11px 14px;
  border-bottom:1px solid var(--hairline);white-space:nowrap}
.nl-sh-table tbody td{padding:10px 14px;border-top:1px solid var(--hairline-soft);vertical-align:middle}
.nl-sh-table tbody tr:first-child td{border-top:0}
.nl-sh-table tbody tr:hover{background:var(--gold-faint)}
.nl-sh-table .num{text-align:right;white-space:nowrap}
.nl-sh-d{color:var(--muted);font-weight:600;white-space:nowrap}
.nl-sh-pill{display:inline-block;font-size:11.5px;font-weight:700;padding:5px 13px;
  border-radius:999px;white-space:nowrap;letter-spacing:.02em}
.nl-sh-pill.sbuy{background:#0E6B3A;color:#fff}
.nl-sh-pill.buy{background:#DCEFE3;color:#0E5C30}
.nl-sh-pill.hold{background:var(--ivory);color:var(--ink);border:1px solid var(--hairline)}
.nl-sh-pill.exit{background:#F9E2DC;color:#93331F}
.nl-sh-pill.sexit{background:#B23A2E;color:#fff}
/* P1-5: exit pills follow the theme — no light-pink chip in dark mode */
[data-theme="dark"] .nl-sh-pill.exit{background:#40201b;color:#f2b8a9;border:1px solid #6e332a}
[data-theme="dark"] .nl-sh-pill.buy{background:#1d3a28;color:#b9e6c8;border:1px solid #2f5c40}
.nl-sh-pill.insufficient{background:var(--ivory);color:var(--faint);border:1px dashed var(--hairline)}
/* 2026-10-02: paged signal-history box — fixed height, rows move inside */
.nl-sh-wrap{min-height:420px}
.nl-sh-pages{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:12px;padding-top:12px;border-top:1px solid var(--hairline)}
.nl-sh-rpp{font-size:.82rem;color:var(--muted);display:flex;align-items:center;gap:8px}
.nl-sh-rpp select{padding:6px 10px;border:1px solid var(--hairline);border-radius:8px;background:var(--paper);color:var(--ink);font-size:.82rem}
.nl-sh-pageinfo{font-size:.82rem;color:var(--muted);font-variant-numeric:tabular-nums}
.nl-sh-nav{display:flex;gap:8px;margin-left:auto}
.nl-sh-pbtn{padding:8px 16px;border:1px solid var(--hairline);border-radius:8px;background:var(--paper);color:var(--ink);cursor:pointer;font-size:.85rem;font-weight:600}
.nl-sh-pbtn:hover:not(:disabled){border-color:var(--ink)}
.nl-sh-pbtn:disabled{opacity:.45;cursor:default}

/* ---------- per-symbol news ---------- */
.nl-news{margin:26px 0}
.nl-news:empty{display:none}
.nl-news h2{font-family:var(--serif);font-size:clamp(24px,3vw,34px);font-weight:500;
  letter-spacing:-.025em;margin:0 0 6px}
.nl-news-list{display:grid;gap:10px;margin-top:14px}
.nl-news-item{display:flex;gap:14px;align-items:flex-start;background:var(--paper);
  border:1px solid var(--hairline);border-radius:14px;padding:14px 18px;box-shadow:var(--shadow);
  transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.nl-news-item:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover)}
.nl-news-sym{flex:none;font-size:11.5px;font-weight:700;letter-spacing:.05em;color:var(--emerald-deep);
  background:var(--gold-faint);border:1px solid var(--gold-soft);border-radius:8px;
  padding:5px 11px;text-decoration:none;margin-top:2px}
.nl-news-sym:hover{background:var(--gold-soft)}
.nl-news-body{flex:1;min-width:0}
.nl-news-body a{font-family:var(--serif);color:var(--ink);font-weight:500;font-size:16px;
  text-decoration:none;line-height:1.45;letter-spacing:-.005em}
.nl-news-body a:hover{color:var(--emerald)}
.nl-news-body p{margin:5px 0 0;font-size:12.5px;color:var(--faint)}
.nl-news-empty{color:var(--muted);font-size:14px;background:var(--paper);
  border:1px dashed var(--hairline);border-radius:14px;padding:20px}
.nl-news-more{margin:12px 0 0;text-align:right;font-size:14px}
.nl-news-more a{font-weight:600;color:var(--emerald)}

/* ---------- market stats ---------- */
.stats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:26px 0}
.stat{background:var(--paper);border:1px solid var(--hairline);border-radius:16px;
  padding:18px 20px;box-shadow:var(--shadow);
  transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.stat:hover{transform:translateY(-3px);box-shadow:var(--shadow-hover)}
.nl-stat-k{display:block;font-size:10.5px;font-weight:700;letter-spacing:.16em;
  text-transform:uppercase;color:var(--faint);margin-bottom:8px}
.nl-stat-v{display:block;font-family:var(--serif);font-size:24px;font-weight:600;
  letter-spacing:-.015em;font-variant-numeric:tabular-nums}
.nl-stat-v.small{font-size:18px}
.nl-stat-v small{font-family:var(--sans);font-size:12px;font-weight:600;color:var(--muted);margin-left:5px}

/* ---------- chart card ---------- */
.chart-card{background:var(--paper);border:1px solid var(--hairline);border-radius:var(--radius);
  box-shadow:var(--shadow);padding:26px 28px;margin:26px 0}
.controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:16px}
.seg{display:inline-flex;background:var(--ivory);border:1px solid var(--hairline);
  border-radius:999px;padding:4px;gap:2px}
.seg button{border:0;background:transparent;font-family:var(--sans);font-size:13px;font-weight:600;
  color:var(--muted);padding:8px 18px;border-radius:999px;cursor:pointer;
  transition:all .25s var(--ease)}
.seg button.on{background:var(--ink);color:#fff;box-shadow:0 4px 12px rgba(12,31,22,.25)}
/* Dark mode: --ink becomes light for the pill background, so text must go dark for contrast */
[data-theme="dark"] .seg button.on{color:#0C1F16}
.seg button:active{transform:scale(.95)}
.seg button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.toggles{display:inline-flex;gap:8px;margin-left:auto;flex-wrap:wrap}
.toggles button{border:1px solid var(--hairline);background:var(--paper);border-radius:999px;
  padding:8px 16px;font-size:12.5px;font-weight:600;color:var(--muted);cursor:pointer;
  font-family:var(--sans);transition:all .25s var(--ease)}
.toggles button.on{background:var(--emerald);border-color:var(--emerald);color:#fff}
.toggles button:active{transform:scale(.95)}
.toggles button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}

/* ---------- indicator toggles (Wave 3): accessible checkboxes ---------- */
.ind-group{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;
  border:1px solid var(--hairline-soft);border-radius:14px;padding:8px 12px;background:var(--ivory)}
.ind-title{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--muted);margin-right:4px}
.ind{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;
  font-size:12.5px;font-weight:600;color:var(--muted);cursor:pointer;white-space:nowrap;
  transition:background .25s var(--ease),color .25s var(--ease)}
.ind:hover{background:var(--gold-faint);color:var(--ink)}
.ind input{accent-color:var(--emerald);width:15px;height:15px;margin:0;cursor:pointer;flex:none}
.ind input:checked + .ind-name{color:var(--ink)}
.ind input:focus-visible{outline:2px solid var(--gold);outline-offset:2px;border-radius:4px}
.ind input:disabled{cursor:not-allowed}
.ind.ind-off,.ind-group.ind-off .ind{cursor:not-allowed}
.ind .info-tip{width:24px;height:24px;font-size:10px;margin-left:2px;flex:none}
.ind-note{font-size:12.5px;color:var(--muted);margin:0 0 10px}
.ind-note[hidden]{display:none}
.nl-tip .nl-tip-ind{color:var(--gold-soft);font-size:11.5px}
.chart-wrap{position:relative;background:var(--ivory);border:1px solid var(--hairline-soft);
  border-radius:14px;padding:14px}
.chart-wrap canvas{display:block;width:100%;touch-action:pan-y;cursor:crosshair;border-radius:6px}
/* chart loading shimmer: holds the canvas footprint while data arrives */
.chart-wrap.loading{pointer-events:none}
.chart-wrap.loading::after{content:"";position:absolute;inset:14px;border-radius:8px;
  background:linear-gradient(100deg,var(--ivory) 42%,#ffffff 50%,var(--ivory) 58%);
  background-size:200% 100%;animation:skl-shimmer 1.7s var(--ease) infinite}
@keyframes skl-shimmer{to{background-position:-200% 0}}
/* skeleton utilities (duplicated here: data-check.html loads only this file) */
.skl{display:block;border-radius:8px;pointer-events:none;
  background:linear-gradient(100deg,var(--ivory) 42%,#ffffff 50%,var(--ivory) 58%);
  background-size:200% 100%;animation:skl-shimmer 1.7s var(--ease) infinite}
.skl-line{height:14px;margin:10px 0}
.skl-block{height:56px;margin:0 0 12px}
.skl-row{height:46px;margin:6px 0}
.nl-tip{position:absolute;pointer-events:none;background:var(--ink);color:#fff;border-radius:10px;
  padding:10px 14px;font-size:12.5px;box-shadow:var(--shadow-hover);z-index:5;
  font-variant-numeric:tabular-nums}
.nl-tip b{display:block;font-size:13px}
.nl-tip .up{color:#7BD9A0;font-weight:700} .nl-tip .down{color:#F0A08E;font-weight:700}
.legend{display:flex;gap:16px;flex-wrap:wrap;font-size:12.5px;color:var(--muted);margin-top:14px}
.legend span{display:inline-flex;align-items:center;gap:7px}
.legend .sw{display:inline-block;width:10px;height:10px;border-radius:3px}
.sw.up{background:var(--up)} .sw.down{background:var(--down)}
.legend .ln{display:inline-block;width:18px;height:3px;border-radius:2px}
.ln.sma20{background:#2563eb} .ln.sma50{background:#d97706}
.ln.bb{background:var(--gold)} .ln.ema20{background:#8b5cf6}
.ln.divb{background:repeating-linear-gradient(90deg,var(--emerald) 0 4px,transparent 4px 7px)}
.ln.pat{background:var(--gold)}
.legend .mk{font-size:11px}
.mk.buy{color:var(--up)} .mk.sell{color:var(--down)}
.legend .ath{color:var(--faint);letter-spacing:.06em}
.chart-wrap.rsi{margin-top:10px}
.hint{text-align:center;color:var(--faint);font-size:12.5px;margin:12px 0 0}

/* ---------- scanner ---------- */
.nl-scan{margin:56px 0 24px}
.nl-scan h2{font-family:var(--serif);font-size:clamp(24px,3vw,34px);font-weight:500;
  letter-spacing:-.025em;margin:0 0 8px}
.nl-scan-sub{color:var(--muted);font-size:15px;margin:0 0 18px;max-width:70ch}
.nl-scan-item{display:flex;gap:14px;align-items:flex-start;background:var(--paper);
  border:1px solid var(--hairline);border-radius:14px;padding:16px 18px;margin-bottom:10px;
  box-shadow:var(--shadow);transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.nl-scan-item:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover)}
.nl-dot{width:10px;height:10px;border-radius:50%;margin-top:6px;flex:none}
.nl-dot.bullish{background:var(--up)} .nl-dot.bearish{background:var(--down)}
.nl-dot.neutral{background:var(--gold)}
.nl-scan-body{flex:1;min-width:0}
.nl-scan-body b{font-size:15px}
.nl-scan-dates{margin-left:10px;font-size:12.5px;color:var(--faint);font-weight:600;
  font-variant-numeric:tabular-nums}
.nl-scan-body p{margin:5px 0 0;font-size:13.5px;color:var(--muted);line-height:1.55}
.nl-scan-go{flex:none;border:1px solid var(--hairline);background:var(--paper);border-radius:999px;
  padding:8px 18px;font-size:13px;font-weight:600;color:var(--emerald);cursor:pointer;
  font-family:var(--sans);transition:border-color .25s var(--ease),background .25s var(--ease)}
.nl-scan-go:hover{border-color:var(--gold);background:var(--gold-faint)}
.nl-scan-empty{background:var(--paper);border:1px dashed var(--hairline);border-radius:14px;
  padding:22px;text-align:center;color:var(--muted);font-size:14px}

/* ---------- screener cross-link ---------- */
.nl-scan-link{margin:26px 0;background:var(--ink);border-radius:var(--radius);
  padding:28px 30px;text-align:center;position:relative;overflow:hidden}
.nl-scan-link::before{content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(480px 220px at 50% 0%,rgba(198,168,107,.16),transparent 62%)}
.nl-scan-link p{margin:0;font-size:16px;color:#EDEAE0;position:relative}
.nl-scan-link a{font-weight:600;color:var(--gold)}
.nl-scan-link a:hover{color:var(--gold-soft)}

/* ---------- explain ---------- */
.explain{margin:56px 0}
.explain h2{font-family:var(--serif);font-size:clamp(24px,3vw,34px);font-weight:500;
  letter-spacing:-.025em;margin:0 0 16px}
.nl-engine-short{font-size:15.5px;max-width:72ch;margin:0 0 16px;color:var(--muted);line-height:1.65}
.nl-engine-short strong{color:var(--ink)}
.honest{background:var(--ivory);border:1px solid var(--hairline);border-left:3px solid var(--gold);
  border-radius:14px;padding:20px 24px;font-size:14.5px;color:var(--muted);margin:0 0 12px;
  max-width:78ch;line-height:1.65}
.honest strong{color:var(--ink)}

/* ---------- footer ---------- */
.foot{border-top:1px solid var(--hairline);padding:44px 0 52px;color:var(--muted);
  font-size:13.5px;background:var(--paper);margin-top:88px}
.disclaimer{background:var(--ivory);border:1px solid var(--hairline);border-left:3px solid var(--gold);
  border-radius:12px;padding:18px 22px;margin-bottom:30px;font-size:13px;line-height:1.65;
  color:var(--muted)}
.foot .row{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;align-items:center}
.foot .links{display:flex;gap:22px;flex-wrap:wrap}
.foot .links a{font-size:12.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;
  color:var(--muted)}
.foot .links a:hover{color:var(--ink)}

/* ---------- faq ---------- */
.faq h2{font-family:var(--serif);font-size:clamp(24px,3vw,34px);font-weight:500;
  letter-spacing:-.025em;margin:0 0 20px}
.faq details{border:1px solid var(--hairline);border-radius:16px;margin-bottom:12px;
  background:var(--paper);overflow:hidden;transition:box-shadow .3s var(--ease)}
.faq details[open]{box-shadow:var(--shadow)}
.faq summary{padding:21px 24px;font-family:var(--serif);font-weight:600;font-size:17px;
  cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;
  gap:18px;color:var(--ink)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:22px;color:var(--gold);font-weight:400;
  transition:transform .3s var(--ease);flex:none}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{padding:0 24px 22px;color:var(--muted);font-size:14.5px;max-width:72ch}
.faq-more{margin-top:14px;font-size:14.5px;color:var(--muted)}

/* ---------- data-check page ---------- */
.dc-wrap{max-width:1160px;margin:0 auto;padding:0 24px}
.dc{padding:88px 0 60px}
.dc h1{font-family:var(--serif);font-weight:500;font-size:clamp(34px,4.5vw,56px);
  letter-spacing:-.03em;margin-bottom:14px;text-wrap:balance}
.dc-sub{color:var(--muted);font-size:16.5px;max-width:66ch;margin-bottom:32px}
.dc-controls{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:22px}
.dc-btn{background:var(--emerald);color:#fff;border:0;border-radius:999px;padding:12px 26px;
  font-weight:600;font-size:14.5px;cursor:pointer;font-family:var(--sans);
  transition:transform .3s var(--ease),box-shadow .3s var(--ease),background .3s var(--ease)}
.dc-btn:hover{background:var(--emerald-deep);transform:translateY(-1px);box-shadow:var(--shadow-hover)}
.dc-btn:active{transform:translateY(0) scale(.985);box-shadow:var(--shadow)}
.dc-btn.sec{background:var(--paper);color:var(--emerald);border:1.5px solid var(--emerald)}
.dc-btn.sec:hover{background:rgba(30,107,74,.07)}
.dc-btn:disabled{opacity:.5;cursor:default}
.dc-count{font-size:14px;color:var(--muted);margin-bottom:14px;font-variant-numeric:tabular-nums}
.bar{height:8px;background:var(--gold-faint);border-radius:99px;overflow:hidden;margin-bottom:26px}
.fill{height:100%;width:0;background:linear-gradient(90deg,var(--emerald),var(--gold));
  border-radius:99px;transition:width .25s var(--ease)}
.dc-tablewrap{overflow-x:auto;border:1px solid var(--hairline);border-radius:16px;
  background:var(--paper);box-shadow:var(--shadow)}
.dc table{width:100%;border-collapse:collapse;font-size:.88rem;min-width:900px;
  font-variant-numeric:tabular-nums}
.dc th{background:var(--ivory);text-align:left;font-size:.68rem;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:12px 14px;
  border-bottom:1px solid var(--hairline);white-space:nowrap}
.dc td{padding:11px 14px;border-top:1px solid var(--hairline-soft)}
.dc-legend{display:flex;gap:18px;flex-wrap:wrap;font-size:13px;color:var(--muted);margin:18px 0}
.dc-new{color:var(--gold);font-weight:700}
.dc-prev{color:var(--faint)}
.dc-result{font-weight:700}
.dc-note{background:var(--ivory);border:1px solid var(--hairline);border-left:3px solid var(--gold);
  border-radius:12px;padding:18px 22px;font-size:13.5px;color:var(--muted);margin:24px 0;max-width:76ch}
.dc-foot{color:var(--faint);font-size:13px;margin-top:30px}

/* ---------- luxury details: selection, scrollbar ---------- */
::selection{background:var(--gold-soft);color:var(--ink)}
*{scrollbar-width:thin;scrollbar-color:rgba(12,31,22,.26) transparent}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:rgba(12,31,22,.2);border-radius:8px;
  border:3px solid var(--ivory)}
::-webkit-scrollbar-thumb:hover{background:rgba(12,31,22,.34)}

/* ---------- responsive ---------- */
@media(max-width:920px){
  .hero{padding:72px 0 36px}
  .stats{grid-template-columns:repeat(3,1fr)}
  .nl-search-row{flex-direction:column}
  .nl-go{padding:14px}
  .nl-lb-px{margin-left:0;text-align:left}
  .nl-lb-badge{align-items:flex-start}
  .chart-card{padding:20px 16px}
  .toggles{margin-left:0}
}
@media(max-width:640px){
  .stats{grid-template-columns:repeat(2,1fr)}
  .suite-links,.dc-link{display:none}
  .topbar-in{gap:14px}
  .hero h1{font-size:clamp(36px,10vw,48px)}
  #nl-sym{font-size:18px}
  .nl-v-factors{font-size:13px}
  .nl-verdict,.nl-sighist{padding:22px 18px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;
    transition-duration:.01ms !important}
  .nl-pulse{animation:none}
  .skl,.chart-wrap.loading::after{animation:none;background:var(--ivory)}
}

/* ---------- app sidebar rail (desktop only, >=1100px; duplicated for data-check) ---------- */
.suite-rail{display:none}
@media(min-width:1100px){
  body{padding-left:236px}
  .suite-rail{display:flex;flex-direction:column;position:fixed;left:0;top:0;bottom:0;
    width:236px;z-index:120;background:var(--paper);border-right:1px solid var(--hairline);
    padding:30px 0 26px}
  .rail-word{font-family:var(--serif);font-weight:600;font-size:17px;letter-spacing:-.01em;
    color:var(--ink);padding:0 28px;margin-bottom:36px;white-space:nowrap}
  .rail-word .g{color:var(--gold)}
  .rail-k{font-size:10.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;
    color:var(--faint);padding:0 28px;margin-bottom:12px}
  .suite-rail nav{display:flex;flex-direction:column;gap:2px;padding:0 14px}
  .suite-rail nav a{position:relative;display:block;padding:11px 14px;border-radius:12px;
    font-size:14px;font-weight:600;color:var(--muted);transition:color .25s var(--ease),
    background .25s var(--ease)}
  .suite-rail nav a:hover{color:var(--ink);background:var(--ivory)}
  .suite-rail nav a.on{color:var(--ink);background:var(--gold-faint)}
  .suite-rail nav a.on::before{content:"";position:absolute;left:-14px;top:11px;bottom:11px;
    width:3px;border-radius:3px;background:var(--gold)}
  .rail-foot{margin-top:auto;padding:0 28px;font-size:11.5px;color:var(--faint);
    letter-spacing:.08em;text-transform:uppercase}
  .topbar .suite-links{display:none}
}

/* ---------- info tooltips (duplicated for data-check) ---------- */
.info-tip{position:relative;display:inline-flex;align-items:center;justify-content:center;
  width:24px;height:24px;border-radius:50%;border:1px solid var(--hairline);
  background:transparent;color:var(--faint);font-size:11px;font-weight:700;line-height:1;
  cursor:help;font-family:var(--sans);margin-left:7px;vertical-align:2px;padding:0;
  text-transform:none;letter-spacing:0}
.info-tip:hover,.info-tip:focus-visible{border-color:var(--gold);color:var(--gold)}
.info-tip::after{content:attr(data-tip);position:absolute;bottom:calc(100% + 9px);left:50%;
  transform:translateX(-50%) translateY(4px);width:max-content;max-width:230px;
  background:var(--ink);color:#F4F1E8;font-size:12.5px;font-weight:400;line-height:1.55;
  padding:10px 14px;border-radius:10px;opacity:0;pointer-events:none;display:none;
  z-index:60;
  white-space:normal;text-align:left;box-shadow:var(--shadow-hover)}
.info-tip:hover::after,.info-tip:focus-visible::after{display:block;opacity:1;
  transform:translateX(-50%) translateY(0)}
.info-tip.tip-edge::after{left:auto;right:-10px;transform:translateY(4px)}
.info-tip.tip-edge:hover::after,.info-tip.tip-edge:focus-visible::after{transform:translateY(0)}

/* ---------- relative-time freshness badge (duplicated for data-check) ---------- */
.fresh{display:inline-block;font-size:12px;font-weight:600;color:var(--emerald);
  background:rgba(30,107,74,.08);border:1px solid var(--hairline);border-radius:999px;
  padding:2px 11px;margin-left:9px;font-variant-numeric:tabular-nums;white-space:nowrap;
  vertical-align:1px}

/* ---------- NEPSE index candlestick module (after #nl-livebar) ---------- */
.nl-index{background:var(--paper);border:1px solid var(--hairline);border-radius:18px;
  padding:22px;margin:18px 0}
.nl-ix-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;
  flex-wrap:wrap;margin-bottom:14px}
.nl-ix-head h2{font-family:var(--serif);font-size:22px;font-weight:600;margin:0}
.nl-ix-tabs{display:flex;gap:6px}
.nl-ix-tabs button{font:inherit;font-size:13px;font-weight:600;padding:8px 14px;border-radius:999px;
  border:1px solid var(--hairline);background:transparent;color:var(--muted);cursor:pointer}
.nl-ix-tabs button.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.nl-ix-stats{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:14px}
.nl-ix-stat{display:flex;flex-direction:column;gap:2px}
.nl-ix-k{font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--faint);font-weight:600}
.nl-ix-v{font-size:16px;font-weight:700;color:var(--ink)}
.nl-ix-chart{width:100%;height:340px;border-radius:12px;overflow:hidden}
.nl-ix-note{font-size:13.5px;color:var(--muted);margin:10px 0 0}
.nl-ix-foot{font-size:12px;color:var(--faint);margin:12px 0 0}
@media(max-width:760px){
  .nl-ix-stats{grid-template-columns:repeat(3,1fr)}
  .nl-index{padding:16px}
}

/* ---- premium 3D layer ---- */
.chart-card{
  background: linear-gradient(180deg, rgba(255,255,255,.5), rgba(255,255,255,0) 35%), var(--paper);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.6), 0 1px 2px rgba(0,0,0,.06), 0 12px 32px rgba(0,0,0,.09);
}
[data-theme="dark"] .chart-card{
  background: linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,0) 35%), var(--nd-panel, #12141A);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 1px 2px rgba(0,0,0,.4), 0 12px 32px rgba(0,0,0,.32);
}
.controls .seg{
  box-shadow: inset 0 2px 5px rgba(0,0,0,.1), inset 0 1px 0 rgba(255,255,255,.04);
}
.controls .seg button{ transition: transform .15s, box-shadow .18s; }
.controls .seg button:active{ transform: scale(.96); }

/* ---- chart label contrast per theme ---- */
[data-theme="dark"] .nl-v-label.sbuy{ color:#4ADE80; }
[data-theme="dark"] .nl-v-label.sexit{ color:#F87171; }
[data-theme="light"] .nl-tip .up{ color:#0E6B3A; }
[data-theme="light"] .nl-tip .down{ color:#8C2A20; }

/* ==========================================================================
   TEARDOWN 2026-10-28 — cinema re-theme + 48px design-rich controls + new
   blocks. Appended, never rewritten: every legacy class above keeps working;
   these rules win on source order at equal specificity and move the visible
   design onto the --nd-* tokens (canvas #0A0C10 / #F6F7F9, lime sole
   accent, Spectral titles + big numerals, Inter body, IBM Plex Mono labels).
   ========================================================================== */

/* ---- focus: lime everywhere (master law) ---- */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{
  outline:2px solid var(--nd-lime,#B8E62E);outline-offset:3px;border-radius:6px}
.seg button:focus-visible,.toggles button:focus-visible,.ind input:focus-visible{
  outline:2px solid var(--nd-lime,#B8E62E);outline-offset:2px}

/* ---- 48px design-rich controls (every button/input on the page) ---- */
#nl-sym{min-height:48px;background:var(--nd-panel,#12141A);border:1px solid var(--nd-border,#1E2430);
  color:var(--nd-text,#fff);box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 10px 26px rgba(0,0,0,.22)}
#nl-sym::placeholder{color:var(--nd-dim,#8E98A8)}
#nl-sym:focus{border-color:var(--nd-lime,#B8E62E);
  box-shadow:0 0 0 3px rgba(184,230,46,.22),0 10px 26px rgba(0,0,0,.22);outline:none}
.nl-go{min-height:48px;display:inline-flex;align-items:center;justify-content:center;
  background:var(--nd-lime,#B8E62E);color:var(--nd-on-lime,#0A0C10)}
.nl-go:hover{background:var(--nd-lime,#B8E62E);filter:brightness(1.06);box-shadow:0 10px 26px rgba(0,0,0,.22)}
.nl-chips button{min-height:48px;padding:12px 18px;background:var(--nd-panel,#12141A);
  border:1px solid var(--nd-border,#1E2430);color:var(--nd-muted,#B8C0CE)}
.nl-chips button:hover{color:var(--nd-text,#fff);border-color:var(--nd-lime,#B8E62E);
  background:var(--nd-lime-faint,rgba(184,230,46,.06))}
.seg{background:var(--nd-inset,#0D0F14);border:1px solid var(--nd-border,#1E2430)}
.seg button{min-height:48px;padding:12px 18px;color:var(--nd-muted,#B8C0CE)}
.seg button.on{background:var(--nd-lime,#B8E62E);color:var(--nd-on-lime,#0A0C10);box-shadow:none}
[data-theme="dark"] .seg button.on{color:#0A0C10}
.toggles button{min-height:48px;padding:12px 18px;background:var(--nd-panel,#12141A);
  border:1px solid var(--nd-border,#1E2430);color:var(--nd-muted,#B8C0CE)}
.toggles button.on{background:var(--nd-lime,#B8E62E);border-color:var(--nd-lime,#B8E62E);
  color:var(--nd-on-lime,#0A0C10)}
.ind-group{background:var(--nd-inset,#0D0F14);border:1px solid var(--nd-border,#1E2430)}
.ind{min-height:48px;padding:12px 14px;color:var(--nd-muted,#B8C0CE)}
.ind:hover{background:var(--nd-lime-faint,rgba(184,230,46,.06));color:var(--nd-text,#fff)}
.ind input{accent-color:var(--nd-lime,#B8E62E);width:18px;height:18px}
.ind input:checked + .ind-name{color:var(--nd-text,#fff)}
.ind .info-tip{min-width:28px;height:28px;font-size:11px}
.nl-scan-go{min-height:48px;padding:12px 20px;background:var(--nd-panel,#12141A);
  border:1px solid var(--nd-border,#1E2430);color:var(--nd-lime,#B8E62E)}
.nl-scan-go:hover{border-color:var(--nd-lime,#B8E62E);background:var(--nd-lime-faint,rgba(184,230,46,.06))}
.nl-sh-pbtn{min-height:48px;padding:12px 18px;background:var(--nd-panel,#12141A);
  border:1px solid var(--nd-border,#1E2430);color:var(--nd-text,#fff)}
.nl-sh-pbtn:hover:not(:disabled){border-color:var(--nd-lime,#B8E62E)}
.nl-sh-rpp select{min-height:48px;padding:12px 14px;background:var(--nd-panel,#12141A);
  border:1px solid var(--nd-border,#1E2430);color:var(--nd-text,#fff)}

/* ---- shell surfaces onto cinema tokens ---- */
.nl-livebar{background:var(--nd-panel,#12141A);border:1px solid var(--nd-border,#1E2430);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 10px 26px rgba(0,0,0,.22)}
.nl-livebar::before{background:linear-gradient(90deg,var(--nd-lime,#B8E62E),rgba(184,230,46,.15),var(--nd-lime,#B8E62E))}
.nl-lb-sym b{font-family:var(--nd-font-display,Georgia,serif);color:var(--nd-text,#fff)}
.nl-lb-sym span{color:var(--nd-muted,#B8C0CE)}
.nl-lb-px b{font-family:var(--nd-font-display,Georgia,serif);color:var(--nd-text,#fff)}
.nl-lb-badge small{color:var(--nd-dim,#8E98A8)}
.nl-badge.live{background:var(--nd-up-soft,rgba(74,222,128,.12));color:var(--nd-up,#4ADE80);
  border:1px solid rgba(74,222,128,.4)}
.nl-badge.delayed{background:var(--nd-lime-soft,rgba(184,230,46,.12));color:var(--nd-lime,#B8E62E);
  border:1px solid rgba(184,230,46,.35)}
.nl-badge.closed{background:rgba(245,179,1,.12);color:var(--nd-amber,#F5B301);
  border:1px solid rgba(245,179,1,.4)}
.nl-verdict{background:var(--nd-panel,#12141A);border:1px solid var(--nd-border,#1E2430);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 10px 26px rgba(0,0,0,.22)}
.nl-verdict::before{background:linear-gradient(90deg,var(--nd-lime,#B8E62E),rgba(184,230,46,.15),var(--nd-lime,#B8E62E))}
.nl-v-k{color:var(--nd-dim,#8E98A8)}
.nl-v-label{font-family:var(--nd-font-display,Georgia,serif);color:var(--nd-text,#fff)}
.nl-v-label.sbuy{color:var(--nd-up,#4ADE80)}
.nl-v-label.buy{color:var(--nd-lime,#B8E62E)}
.nl-v-label.hold{color:var(--nd-flat,#9AA3B2)}
.nl-v-label.exit,.nl-v-label.sexit{color:var(--nd-down,#F87171)}
.nl-v-label.insufficient{color:var(--nd-dim,#8E98A8)}
.nl-v-meter{background:var(--nd-inset,#0D0F14);border:1px solid var(--nd-border,#1E2430)}
.nl-v-fill.sbuy,.nl-v-fill.buy{background:linear-gradient(90deg,var(--nd-up,#4ADE80),var(--nd-lime,#B8E62E))}
.nl-v-fill.hold{background:var(--nd-flat,#9AA3B2)}
.nl-v-fill.exit,.nl-v-fill.sexit{background:linear-gradient(90deg,var(--nd-lime,#B8E62E),var(--nd-down,#F87171))}
.nl-v-score{color:var(--nd-muted,#B8C0CE)}
.nl-v-factors td{border-top:1px solid var(--nd-border,#1E2430);color:var(--nd-text,#fff)}
.nl-v-factors td:first-child small{color:var(--nd-muted,#B8C0CE)}
.nl-fpts.up{color:var(--nd-up,#4ADE80)} .nl-fpts.dn{color:var(--nd-down,#F87171)}
.nl-v-foot{color:var(--nd-dim,#8E98A8)}
.nl-ltp-note{background:rgba(245,179,1,.12);border:1px solid rgba(245,179,1,.4);color:var(--nd-amber,#F5B301)}
.nl-v-err{background:var(--nd-panel,#12141A);border:1px solid var(--nd-border,#1E2430);
  border-left:3px solid var(--nd-lime,#B8E62E)}
.nl-v-err b{font-family:var(--nd-font-display,Georgia,serif);color:var(--nd-text,#fff)}
.nl-v-err span{color:var(--nd-muted,#B8C0CE)}
.nl-sighist{background:var(--nd-panel,#12141A);border:1px solid var(--nd-border,#1E2430);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 10px 26px rgba(0,0,0,.22)}
.nl-sighist h2{font-family:var(--nd-font-display,Georgia,serif);color:var(--nd-text,#fff)}
.nl-sh-sub{color:var(--nd-muted,#B8C0CE)}
.nl-sh-wrap{border:1px solid var(--nd-border,#1E2430)}
.nl-sh-table thead th{background:var(--nd-panel-2,#161A23);color:var(--nd-dim,#8E98A8);
  border-bottom:1px solid var(--nd-border,#1E2430)}
.nl-sh-table tbody td{border-top:1px solid var(--nd-border,#1E2430);color:var(--nd-text,#fff)}
.nl-sh-table tbody tr:hover{background:var(--nd-lime-faint,rgba(184,230,46,.06))}
.nl-sh-d{color:var(--nd-muted,#B8C0CE)}
.nl-sh-pill.sbuy{background:var(--nd-up,#4ADE80);color:#0A0C10}
.nl-sh-pill.buy{background:var(--nd-lime-soft,rgba(184,230,46,.12));color:var(--nd-lime,#B8E62E);
  border:1px solid rgba(184,230,46,.35)}
.nl-sh-pill.hold{background:var(--nd-panel-2,#161A23);color:var(--nd-muted,#B8C0CE);
  border:1px solid var(--nd-border,#1E2430)}
.nl-sh-pill.exit{background:var(--nd-down-soft,rgba(248,113,113,.12));color:var(--nd-down,#F87171);
  border:1px solid rgba(248,113,113,.35)}
.nl-sh-pill.sexit{background:rgba(248,113,113,.2);color:#FCA5A5;border:1px solid rgba(248,113,113,.5)}
.nl-sh-pill.insufficient{background:var(--nd-panel-2,#161A23);color:var(--nd-dim,#8E98A8);
  border:1px dashed var(--nd-border,#1E2430)}
[data-theme="dark"] .nl-sh-pill.exit{background:var(--nd-down-soft,rgba(248,113,113,.12));color:var(--nd-down,#F87171);border:1px solid rgba(248,113,113,.35)}
[data-theme="dark"] .nl-sh-pill.buy{background:var(--nd-lime-soft,rgba(184,230,46,.12));color:var(--nd-lime,#B8E62E);border:1px solid rgba(184,230,46,.35)}
.nl-sh-pages{border-top:1px solid var(--nd-border,#1E2430)}
.nl-sh-rpp,.nl-sh-pageinfo{color:var(--nd-muted,#B8C0CE)}
.chart-card{background:var(--nd-panel,#12141A);border:1px solid var(--nd-border,#1E2430);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 10px 26px rgba(0,0,0,.22)}
.chart-wrap{background:var(--nd-inset,#0D0F14);border:1px solid var(--nd-border,#1E2430)}
.chart-wrap.loading::after{background:linear-gradient(100deg,var(--nd-inset,#0D0F14) 42%,var(--nd-panel-2,#161A23) 50%,var(--nd-inset,#0D0F14) 58%)}
.skl{background:linear-gradient(100deg,var(--nd-inset,#0D0F14) 42%,var(--nd-panel-2,#161A23) 50%,var(--nd-inset,#0D0F14) 58%)}
.legend{color:var(--nd-muted,#B8C0CE)}
.legend .ath{color:var(--nd-dim,#8E98A8)}
.hint{color:var(--nd-dim,#8E98A8)}
.nl-scan h2,.explain h2,.faq h2{font-family:var(--nd-font-display,Georgia,serif);color:var(--nd-text,#fff)}
.nl-scan-sub,.nl-engine-short{color:var(--nd-muted,#B8C0CE)}
.nl-engine-short strong{color:var(--nd-text,#fff)}
.nl-scan-item{background:var(--nd-panel,#12141A);border:1px solid var(--nd-border,#1E2430);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 10px 26px rgba(0,0,0,.22)}
.nl-scan-item:hover{box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 14px 30px rgba(0,0,0,.28)}
.nl-scan-body b{color:var(--nd-text,#fff)}
.nl-scan-dates{color:var(--nd-dim,#8E98A8)}
.nl-scan-body p{color:var(--nd-muted,#B8C0CE)}
.nl-scan-empty{background:var(--nd-panel,#12141A);border:1px dashed var(--nd-border,#1E2430);
  color:var(--nd-muted,#B8C0CE)}
.honest{background:var(--nd-panel,#12141A);border:1px solid var(--nd-border,#1E2430);
  border-left:3px solid var(--nd-lime,#B8E62E);color:var(--nd-muted,#B8C0CE)}
.honest strong{color:var(--nd-text,#fff)}
.faq details{background:var(--nd-panel,#12141A);border:1px solid var(--nd-border,#1E2430)}
.faq details[open]{box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 10px 26px rgba(0,0,0,.22)}
.faq summary{font-family:var(--nd-font-display,Georgia,serif);color:var(--nd-text,#fff)}
.nl-news h2{font-family:var(--nd-font-display,Georgia,serif);color:var(--nd-text,#fff)}
.nl-news-item{background:var(--nd-panel,#12141A);border:1px solid var(--nd-border,#1E2430);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 10px 26px rgba(0,0,0,.22)}
.nl-news-item:hover{box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 14px 30px rgba(0,0,0,.28)}
.nl-news-sym{background:var(--nd-lime-soft,rgba(184,230,46,.12));border:1px solid rgba(184,230,46,.35);
  color:var(--nd-lime,#B8E62E)}
.nl-news-sym:hover{background:var(--nd-lime-faint,rgba(184,230,46,.06))}
.nl-news-body a{font-family:var(--nd-font-display,Georgia,serif);color:var(--nd-text,#fff)}
.nl-news-body a:hover{color:var(--nd-lime,#B8E62E)}
.nl-news-body p{color:var(--nd-dim,#8E98A8)}
.nl-news-empty{background:var(--nd-panel,#12141A);border:1px dashed var(--nd-border,#1E2430);
  color:var(--nd-muted,#B8C0CE)}
.nl-news-more a{color:var(--nd-lime,#B8E62E)}

/* ---- 3D stat cards (replaces the flat stat row) ---- */
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:26px 0}
.stat{background:var(--nd-panel,#12141A);border:1px solid var(--nd-border,#1E2430);
  border-radius:18px;padding:18px 20px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 10px 26px rgba(0,0,0,.22)}
.stat:hover{transform:translateY(-2px)}
.nl-stat-k{font-family:var(--nd-font-mono,ui-monospace,monospace);color:var(--nd-dim,#8E98A8)}
.nl-stat-v{font-family:var(--nd-font-display,Georgia,serif);color:var(--nd-text,#fff)}
.nl-stat-v.up{color:var(--nd-up,#4ADE80)} .nl-stat-v.dn{color:var(--nd-down,#F87171)}
.nl-stat-v small{font-family:var(--nd-font-sans,Inter,system-ui,sans-serif);color:var(--nd-muted,#B8C0CE)}
/* 52-week range bar: track + fill to the marker + marker */
.nl-range{position:relative;height:8px;border-radius:999px;background:var(--nd-inset,#0D0F14);
  border:1px solid var(--nd-border,#1E2430);margin:12px 0 6px;overflow:visible}
.nl-range i{display:block;height:100%;border-radius:999px;background:var(--nd-lime,#B8E62E)}
.nl-range b{position:absolute;top:50%;width:14px;height:14px;border-radius:50%;
  background:var(--nd-panel,#12141A);border:2px solid var(--nd-lime,#B8E62E);
  transform:translate(-50%,-50%);box-shadow:0 2px 8px rgba(0,0,0,.4)}
.nl-range-ends{display:flex;justify-content:space-between;font-size:12px;color:var(--nd-dim,#8E98A8);
  font-variant-numeric:tabular-nums}
/* RSI strip: stretched zones + marker */
.nl-rsi-strip{position:relative;height:8px;border-radius:999px;background:var(--nd-inset,#0D0F14);
  border:1px solid var(--nd-border,#1E2430);margin:12px 0 6px;overflow:hidden}
.nl-rsi-zone{position:absolute;top:0;bottom:0}
.nl-rsi-zone.low{left:0;width:30%;background:rgba(74,222,128,.18)}
.nl-rsi-zone.high{right:0;width:30%;background:rgba(248,113,113,.18)}
.nl-rsi-strip b{position:absolute;top:50%;width:14px;height:14px;border-radius:50%;
  background:var(--nd-panel,#12141A);border:2px solid var(--nd-lime,#B8E62E);
  transform:translate(-50%,-50%);box-shadow:0 2px 8px rgba(0,0,0,.4);z-index:1}

/* ---- shared head for every new block: lime square + Spectral head ---- */
.nl-sec-head{display:flex;align-items:center;gap:12px;
  font-family:var(--nd-font-display,Georgia,serif);font-size:clamp(1.25rem,2.4vw,1.7rem);
  font-weight:600;letter-spacing:-.015em;color:var(--nd-text,#fff);margin:0 0 6px}
.nl-sec-sq{flex:none;width:12px;height:12px;background:var(--nd-lime,#B8E62E);border-radius:3px}
.nl-sec-sub{color:var(--nd-muted,#B8C0CE);font-size:14px;margin:0 0 16px;max-width:74ch;line-height:1.6}
.nl-sec-note{color:var(--nd-dim,#8E98A8);font-size:13px;margin:12px 0 0;line-height:1.6;max-width:74ch}
.nl-session:empty,.nl-sector:empty,.nl-value:empty,.nl-news:empty,.nl-actions:empty,
.nl-forward:empty,.nl-links:empty{display:none}
.nl-session,.nl-sector,.nl-value,.nl-forward,.nl-actions{margin:26px 0}
.nl-links{margin:26px 0}

/* ---- session strip ---- */
.nl-session-card{background:var(--nd-panel,#12141A);border:1px solid var(--nd-border,#1E2430);
  border-radius:18px;padding:18px 22px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 10px 26px rgba(0,0,0,.22);
  display:flex;flex-wrap:wrap;gap:10px 22px;align-items:center}
.nl-session-date{font-family:var(--nd-font-display,Georgia,serif);font-size:1.25rem;font-weight:600;
  color:var(--nd-text,#fff);letter-spacing:-.01em}
.nl-session-meta{font-size:13px;color:var(--nd-muted,#B8C0CE);font-variant-numeric:tabular-nums}
.nl-session-meta b{color:var(--nd-text,#fff)}
.nl-chip{display:inline-flex;align-items:center;min-height:32px;padding:6px 14px;border-radius:999px;
  font-size:11.5px;font-weight:700;letter-spacing:.08em;white-space:nowrap}
.nl-chip.live{background:var(--nd-up-soft,rgba(74,222,128,.12));color:var(--nd-up,#4ADE80);
  border:1px solid rgba(74,222,128,.4)}
.nl-chip.delayed{background:var(--nd-lime-soft,rgba(184,230,46,.12));color:var(--nd-lime,#B8E62E);
  border:1px solid rgba(184,230,46,.35)}
.nl-chip.closed{background:rgba(245,179,1,.12);color:var(--nd-amber,#F5B301);
  border:1px solid rgba(245,179,1,.4)}
.nl-chip.stale{background:var(--nd-down-soft,rgba(248,113,113,.12));color:var(--nd-down,#F87171);
  border:1px solid rgba(248,113,113,.35)}
.nl-chip.unverified{background:rgba(154,163,178,.14);color:var(--nd-flat,#9AA3B2);
  border:1px solid var(--nd-border,#1E2430)}

/* ---- sector-stocks block: search + sort + paginated table ---- */
.nl-sec-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:0 0 14px}
.nl-sec-controls input[type="search"],.nl-sec-controls select{min-height:48px;padding:12px 16px;
  border:1px solid var(--nd-border,#1E2430);border-radius:12px;background:var(--nd-inset,#0D0F14);
  color:var(--nd-text,#fff);font-size:14px}
.nl-sec-controls input[type="search"]{flex:1;min-width:200px}
.nl-sec-controls select{cursor:pointer;font-weight:600}
.nl-sec-tablewrap{overflow:auto;background:var(--nd-panel,#12141A);
  border:1px solid var(--nd-border,#1E2430);border-radius:18px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 10px 26px rgba(0,0,0,.22)}
.nl-sec-table{width:100%;border-collapse:collapse;font-size:.9rem;min-width:620px;
  font-variant-numeric:tabular-nums}
.nl-sec-table thead th{background:var(--nd-panel-2,#161A23);text-align:left;font-size:.68rem;
  font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--nd-dim,#8E98A8);
  padding:12px 16px;border-bottom:1px solid var(--nd-border,#1E2430);white-space:nowrap}
.nl-sec-table thead th.num,.nl-sec-table tbody td.num{text-align:right}
.nl-sec-table tbody td{padding:11px 16px;border-top:1px solid var(--nd-border,#1E2430);
  color:var(--nd-text,#fff);vertical-align:middle}
.nl-sec-table tbody tr:first-child td{border-top:0}
.nl-sec-table tbody tr:hover td{background:var(--nd-lime-faint,rgba(184,230,46,.06))}
.nl-sec-table tbody tr.cur td{background:var(--nd-lime-soft,rgba(184,230,46,.12))}
.nl-sec-table a{color:var(--nd-text,#fff);font-weight:600;text-decoration:none}
.nl-sec-table a:hover{color:var(--nd-lime,#B8E62E);text-decoration:underline}
.nl-sec-table td.pos{color:var(--nd-up,#4ADE80);font-weight:700}
.nl-sec-table td.neg{color:var(--nd-down,#F87171);font-weight:700}
.nl-sec-table td.sym{font-family:var(--nd-font-mono,ui-monospace,monospace);font-weight:700}
/* pager: Prev quiet, Next lime primary, real buttons */
.nl-pager{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:14px}
.nl-pager-info{font-size:.85rem;color:var(--nd-dim,#8E98A8);font-variant-numeric:tabular-nums}
.nl-pager-nav{display:flex;gap:8px;margin-left:auto}
.nl-pager-prev,.nl-pager-next,.nl-pager-pg{min-height:48px;padding:12px 18px;border-radius:12px;
  cursor:pointer;font-size:.85rem;font-weight:600}
.nl-pager-prev{background:var(--nd-panel,#12141A);border:1px solid var(--nd-border,#1E2430);
  color:var(--nd-muted,#B8C0CE)}
.nl-pager-next{background:var(--nd-lime,#B8E62E);border:1px solid var(--nd-lime,#B8E62E);
  color:var(--nd-on-lime,#0A0C10)}
.nl-pager-pg{background:var(--nd-panel,#12141A);border:1px solid var(--nd-border,#1E2430);
  color:var(--nd-text,#fff)}
.nl-pager-pg.cur{background:var(--nd-lime,#B8E62E);border-color:var(--nd-lime,#B8E62E);
  color:var(--nd-on-lime,#0A0C10)}
.nl-pager-prev:hover:not(:disabled),.nl-pager-next:hover:not(:disabled),.nl-pager-pg:hover{
  border-color:var(--nd-lime,#B8E62E)}
.nl-pager-prev:disabled,.nl-pager-next:disabled{opacity:.4;cursor:default}

/* ---- valuation context: paired bars vs sector median ---- */
.nl-val-grid{display:grid;gap:12px}
@media(min-width:760px){.nl-val-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.nl-val-card{background:var(--nd-panel,#12141A);border:1px solid var(--nd-border,#1E2430);
  border-radius:18px;padding:18px 20px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 10px 26px rgba(0,0,0,.22)}
.nl-val-card h3{font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  color:var(--nd-dim,#8E98A8);margin:0 0 10px}
.nl-val-big{font-family:var(--nd-font-display,Georgia,serif);font-size:1.6rem;font-weight:600;
  color:var(--nd-text,#fff);font-variant-numeric:tabular-nums}
.nl-val-pair{margin-top:12px;display:grid;gap:8px}
.nl-val-row{display:grid;grid-template-columns:110px 1fr 64px;gap:10px;align-items:center;
  font-size:.85rem;color:var(--nd-muted,#B8C0CE)}
.nl-val-row b{text-align:right;color:var(--nd-text,#fff);font-variant-numeric:tabular-nums}
.nl-val-track{height:8px;border-radius:999px;background:var(--nd-inset,#0D0F14);
  border:1px solid var(--nd-border,#1E2430);overflow:hidden}
.nl-val-track i{display:block;height:100%;border-radius:999px;background:var(--nd-lime,#B8E62E)}
.nl-val-track.median i{background:var(--nd-dim,#8E98A8)}
.nl-val-note{color:var(--nd-muted,#B8C0CE);font-size:13.5px;line-height:1.65;max-width:74ch}
.nl-val-note strong{color:var(--nd-text,#fff)}

/* ---- forward record table + category pills ---- */
.nl-fw-tablewrap{overflow:auto;background:var(--nd-panel,#12141A);
  border:1px solid var(--nd-border,#1E2430);border-radius:18px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 10px 26px rgba(0,0,0,.22)}
.nl-fw-table{width:100%;border-collapse:collapse;font-size:.9rem;min-width:640px;
  font-variant-numeric:tabular-nums}
.nl-fw-table thead th{background:var(--nd-panel-2,#161A23);text-align:left;font-size:.68rem;
  font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--nd-dim,#8E98A8);
  padding:12px 16px;border-bottom:1px solid var(--nd-border,#1E2430);white-space:nowrap}
.nl-fw-table thead th.num,.nl-fw-table tbody td.num{text-align:right}
.nl-fw-table tbody td{padding:11px 16px;border-top:1px solid var(--nd-border,#1E2430);
  color:var(--nd-text,#fff)}
.nl-fw-table tbody tr:first-child td{border-top:0}
.nl-cat{display:inline-block;font-size:11.5px;font-weight:700;padding:5px 13px;border-radius:999px;
  white-space:nowrap}
.nl-cat.up{background:var(--nd-up-soft,rgba(74,222,128,.12));color:var(--nd-up,#4ADE80);
  border:1px solid rgba(74,222,128,.4)}
.nl-cat.down{background:var(--nd-down-soft,rgba(248,113,113,.12));color:var(--nd-down,#F87171);
  border:1px solid rgba(248,113,113,.35)}
.nl-cat.watch{background:rgba(245,179,1,.12);color:var(--nd-amber,#F5B301);
  border:1px solid rgba(245,179,1,.4)}
.nl-cat.pending{background:rgba(154,163,178,.14);color:var(--nd-flat,#9AA3B2);
  border:1px solid var(--nd-border,#1E2430)}
.nl-cat.bb{background:rgba(245,179,1,.12);color:var(--nd-amber,#F5B301);
  border:1px solid rgba(245,179,1,.4)}

/* ---- verified notices + links ---- */
.nl-act-list{display:grid;gap:10px}
.nl-act-item{background:var(--nd-panel,#12141A);border:1px solid var(--nd-border,#1E2430);
  border-radius:14px;padding:16px 20px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 10px 26px rgba(0,0,0,.22)}
.nl-act-item b{display:block;color:var(--nd-text,#fff);font-size:.95rem;line-height:1.5}
.nl-act-item b a{color:var(--nd-text,#fff);text-decoration:none}
.nl-act-item b a:hover{color:var(--nd-lime,#B8E62E)}
.nl-act-meta{font-size:.8rem;color:var(--nd-dim,#8E98A8);margin-top:6px}
.nl-act-meta a{color:var(--nd-lime,#B8E62E);font-weight:600}
.nl-links-grid{display:grid;gap:12px}
@media(min-width:700px){.nl-links-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.nl-link-card{display:block;min-height:48px;padding:16px 20px;border-radius:14px;
  background:var(--nd-panel,#12141A);border:1px solid var(--nd-border,#1E2430);
  color:var(--nd-text,#fff);text-decoration:none;font-weight:700;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 10px 26px rgba(0,0,0,.22)}
.nl-link-card span{display:block;font-weight:400;font-size:.85rem;color:var(--nd-muted,#B8C0CE);
  margin-top:4px;line-height:1.5}
.nl-link-card:hover{border-color:var(--nd-lime,#B8E62E);background:var(--nd-lime-faint,rgba(184,230,46,.06))}
.nl-link-card:hover{color:var(--nd-text,#fff)}
@media(max-width:520px){
  .nl-sec-controls input[type="search"]{flex-basis:100%}
  .nl-pager-nav{margin-left:0}
}

/* Skip-link AA (light only): beats design-system's `.nd a { color: inherit }`
   (0,1,1), which otherwise inherits body ink onto the lime pill (3.4-3.5:1).
   Light-scoped so dark keeps its own pill (theme.css:43) untouched. */
[data-nd-ed="light"] body.nd .skip-link, [data-theme="light"] body.nd .skip-link { color: var(--nd-on-lime, #0A0C10); }
