/* ═══════════════════════════════════════════════════════════════════════
   NovisData · Elite Enterprise Design System
   Elevates the existing terminal UI to $10K/month institutional grade.
   Preserves all functionality. Transforms the visual experience.
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Core token overrides ─────────────────────────────────────────── */
:root {
  --bg:   #040B16;
  --s1:   #070F1C;
  --s2:   #0C1828;
  --s3:   #111E30;
  --sur:  #0A1622;
  --sur2: #0F1D2C;
  --tx:   #F0EBE0;
  --tx2:  #C4BEB4;
  --tx3:  #7A8898;
  --dim:  #4A5668;
  --bd:   rgba(255,255,255,0.055);
  --bd2:  rgba(255,255,255,0.10);
  --gold: #C8A84A;
  --gold2:#EDD070;
  --gold-d: rgba(200,168,74,0.10);
  --gold-b: rgba(200,168,74,0.20);
  --gr:   #12D688;
  --rd:   #F05252;
  --am:   #F09840;
  --bl:   #4AAAE8;
  --pu:   #9B82E8;
  --r:    12px;
  --r2:   8px;
  --nav-h: 60px;
  --serif:'Cormorant Garamond',Georgia,serif;
  --sans: 'DM Sans',system-ui,sans-serif;
  --mono: 'DM Mono',monospace;
}

/* ── Body & base ──────────────────────────────────────────────────── */
body {
  background: var(--bg);
  background-image:
    radial-gradient(ellipse 80% 50% at 50% -20%, rgba(200,168,74,0.04) 0%, transparent 70%),
    radial-gradient(ellipse 60% 40% at 80% 110%, rgba(18,214,136,0.03) 0%, transparent 60%);
}

/* ── NAV ELEVATION ────────────────────────────────────────────────── */
nav {
  background: rgba(4,11,22,0.96) !important;
  backdrop-filter: blur(32px) saturate(1.4) !important;
  border-bottom: 1px solid rgba(200,168,74,0.12) !important;
  height: var(--nav-h) !important;
}
.nav-logo {
  font-size: 20px !important;
  letter-spacing: 0 !important;
  background: linear-gradient(135deg, #F0EBE0 0%, #C8A84A 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.nav-logo em { -webkit-text-fill-color: transparent !important; }

/* Nav toolbar buttons — more refined */
.tb-btn {
  font-size: 10px !important;
  letter-spacing: .5px !important;
  border-radius: 6px !important;
  transition: all .18s ease !important;
}
.tb-btn.gold {
  background: rgba(200,168,74,0.10) !important;
  border-color: rgba(200,168,74,0.30) !important;
  color: var(--gold2) !important;
}
.tb-btn.gold:hover { background: rgba(200,168,74,0.18) !important; }

/* ── TICKER ELEVATION ─────────────────────────────────────────────── */
.ticker-bar {
  background: linear-gradient(90deg, #020810 0%, #040C18 50%, #020810 100%) !important;
  border-bottom: 1px solid rgba(200,168,74,0.07) !important;
}
.ticker-label {
  background: linear-gradient(90deg, #020810, #040C18) !important;
  border-right: 1px solid rgba(200,168,74,0.15) !important;
  color: var(--gold) !important;
  letter-spacing: 2.5px !important;
}

/* ── LAYOUT — widen main, tighten sidebar ─────────────────────────── */
.app-layout {
  grid-template-columns: 200px 1fr 280px !important;
  background: var(--bg) !important;
}

/* ── SIDEBAR ELEVATION ────────────────────────────────────────────── */
.sidebar {
  background: linear-gradient(180deg, var(--s1) 0%, var(--bg) 100%) !important;
  border-right: 1px solid rgba(200,168,74,0.08) !important;
  padding: 20px 0 !important;
}
.sb-label {
  font-size: 8px !important;
  letter-spacing: 2.5px !important;
  color: var(--gold) !important;
  opacity: .5;
  padding: 0 8px 10px !important;
}
.sb-item {
  border-radius: 6px !important;
  font-size: 11.5px !important;
  letter-spacing: .15px !important;
  color: var(--tx3) !important;
  margin: 0 8px 1px !important;
  padding: 7px 10px !important;
  transition: all .15s ease !important;
}
.sb-item:hover {
  background: rgba(200,168,74,0.06) !important;
  color: var(--tx) !important;
}
.sb-item.active {
  background: rgba(200,168,74,0.10) !important;
  color: var(--gold2) !important;
  border: none !important;
}
.sb-item-icon { font-size: 13px !important; }
.sb-section { padding: 0 4px !important; margin-bottom: 24px !important; }
.sb-divider { background: rgba(200,168,74,0.08) !important; margin: 8px 16px 16px !important; }

/* Terminal card in sidebar */
.sb-terminal-card {
  background: rgba(200,168,74,0.04) !important;
  border: 1px solid rgba(200,168,74,0.10) !important;
  border-radius: 8px !important;
  transition: all .2s ease !important;
}
.sb-terminal-card:hover {
  border-color: rgba(200,168,74,0.22) !important;
  background: rgba(200,168,74,0.08) !important;
}
.sb-terminal-card.active {
  border-color: rgba(200,168,74,0.30) !important;
  background: rgba(200,168,74,0.08) !important;
  box-shadow: 0 0 20px rgba(200,168,74,0.06) !important;
}
.sdc-name { color: var(--tx) !important; font-size: 11px !important; font-weight: 700 !important; }
.sdc-stat { color: var(--tx3) !important; font-size: 9px !important; margin-top: 3px !important; }

/* ── PANEL ELEVATION ──────────────────────────────────────────────── */
.panel {
  background: var(--s1) !important;
  border: 1px solid var(--bd) !important;
  border-radius: var(--r) !important;
  overflow: hidden !important;
  transition: border-color .2s ease, box-shadow .2s ease !important;
  box-shadow: 0 2px 20px rgba(0,0,0,0.3) !important;
}
.panel:hover {
  border-color: rgba(200,168,74,0.12) !important;
  box-shadow: 0 4px 32px rgba(0,0,0,0.4), 0 0 0 1px rgba(200,168,74,0.05) !important;
}
.panel-head {
  background: linear-gradient(90deg, rgba(200,168,74,0.03) 0%, transparent 60%) !important;
  border-bottom: 1px solid var(--bd) !important;
  padding: 13px 18px !important;
}
.panel-title {
  font-size: 9.5px !important;
  font-weight: 800 !important;
  letter-spacing: 2px !important;
  color: var(--tx3) !important;
}
.panel-badge {
  font-size: 7px !important;
  font-weight: 600 !important;
  letter-spacing: .5px !important;
  padding: 1px 6px !important;
  border-radius: 3px !important;
  opacity: .6 !important;
}
.pb-live {
  background: transparent !important;
  color: var(--gr) !important;
  border: 1px solid rgba(18,214,136,0.15) !important;
}
.pb-nova {
  background: transparent !important;
  color: var(--gold) !important;
  border: 1px solid rgba(200,168,74,0.15) !important;
}
.pb-ai {
  background: transparent !important;
  color: var(--pu) !important;
  border: 1px solid rgba(155,130,232,0.15) !important;
}
.panel-action {
  font-size: 10px !important;
  color: var(--gold) !important;
  opacity: .7;
  transition: opacity .15s !important;
  cursor: pointer !important;
}
.panel-action:hover { opacity: 1 !important; }

/* ── KPI CELLS ────────────────────────────────────────────────────── */
.kpi-cell {
  padding: 16px 18px !important;
  background: var(--s1) !important;
  transition: background .15s !important;
  position: relative;
}
.kpi-cell:hover { background: var(--s2) !important; }
.kpi-label {
  font-size: 8px !important;
  font-weight: 800 !important;
  letter-spacing: 1.8px !important;
  text-transform: uppercase !important;
  color: var(--tx3) !important;
  margin-bottom: 7px !important;
}
.kpi-val {
  font-family: var(--mono) !important;
  font-size: 24px !important;
  font-weight: 400 !important;
  letter-spacing: -.5px !important;
  color: var(--tx) !important;
  line-height: 1 !important;
}
.kpi-val.warn { color: var(--am) !important; }
.kpi-val.up   { color: var(--gr) !important; }
.kpi-val.dn   { color: var(--rd) !important; }
.kpi-chg { font-size: 11px !important; margin-top: 5px !important; }
.kpi-sub {
  font-size: 9px !important;
  color: var(--tx3) !important;
  margin-top: 3px !important;
  line-height: 1.5 !important;
}

/* ── WINDOW BAR (Deal Status) — most important element ───────────── */
.window-bar {
  background: linear-gradient(135deg,
    rgba(18,214,136,0.06) 0%,
    rgba(200,168,74,0.04) 50%,
    rgba(4,11,22,0.2) 100%) !important;
  border: 1px solid rgba(18,214,136,0.18) !important;
  border-radius: var(--r) !important;
  padding: 14px 18px !important;
  position: relative;
  overflow: hidden;
}
.window-bar::before {
  content: '';
  position: absolute;
  top: 0; left: 0;
  width: 3px; height: 100%;
  background: linear-gradient(180deg, var(--gr), var(--am));
  opacity: .6;
}
.win-dot {
  width: 9px !important;
  height: 9px !important;
  border-radius: 50% !important;
  background: var(--gr) !important;
  box-shadow: 0 0 10px rgba(18,214,136,0.6) !important;
  animation: pulseGlow 2s ease-in-out infinite !important;
  flex-shrink: 0 !important;
}
@keyframes pulseGlow {
  0%,100% { box-shadow: 0 0 8px rgba(18,214,136,0.5); }
  50%      { box-shadow: 0 0 18px rgba(18,214,136,0.9), 0 0 32px rgba(18,214,136,0.3); }
}
.win-label {
  font-size: 10px !important;
  font-weight: 800 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  color: var(--gr) !important;
}
.win-desc {
  font-size: 12px !important;
  color: var(--tx2) !important;
  line-height: 1.5 !important;
}
.wc { font-size: 10px !important; font-family: var(--mono) !important; }
.wc.ok   { color: var(--gr) !important; }
.wc.warn { color: var(--am) !important; }

/* ── MODE BAR ─────────────────────────────────────────────────────── */
.mode-bar {
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
  flex-wrap: wrap !important;
  padding: 0 !important;
}
.mode-label {
  font-size: 8px !important;
  font-weight: 800 !important;
  letter-spacing: 2px !important;
  color: var(--gold) !important;
  opacity: .5;
  text-transform: uppercase !important;
}
.mode-btn {
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: .3px !important;
  padding: 5px 12px !important;
  border-radius: 6px !important;
  border: 1px solid rgba(255,255,255,0.07) !important;
  background: transparent !important;
  color: var(--tx3) !important;
  cursor: pointer !important;
  transition: all .15s ease !important;
}
.mode-btn:hover {
  border-color: rgba(200,168,74,0.25) !important;
  color: var(--gold) !important;
  background: rgba(200,168,74,0.06) !important;
}
.mode-btn.active {
  background: rgba(200,168,74,0.12) !important;
  border-color: rgba(200,168,74,0.35) !important;
  color: var(--gold2) !important;
}

/* ── ARIA PANEL — centerpiece ─────────────────────────────────────── */
.aria-panel {
  background: linear-gradient(135deg,
    rgba(200,168,74,0.05) 0%,
    var(--s1) 40%) !important;
  border: 1px solid rgba(200,168,74,0.18) !important;
  border-radius: var(--r) !important;
  box-shadow:
    0 4px 40px rgba(0,0,0,0.4),
    inset 0 1px 0 rgba(200,168,74,0.10),
    0 0 60px rgba(200,168,74,0.04) !important;
  position: relative;
  overflow: hidden;
}
.aria-panel::before {
  content: '';
  position: absolute;
  top: -60px; right: -60px;
  width: 180px; height: 180px;
  background: radial-gradient(circle, rgba(200,168,74,0.08) 0%, transparent 70%);
  pointer-events: none;
}
.aria-head {
  background: linear-gradient(90deg,
    rgba(200,168,74,0.08) 0%,
    rgba(200,168,74,0.03) 50%,
    transparent 100%) !important;
  border-bottom: 1px solid rgba(200,168,74,0.12) !important;
  padding: 16px 20px !important;
}
.aria-name {
  font-family: var(--serif) !important;
  font-size: 20px !important;
  font-weight: 600 !important;
  color: var(--gold2) !important;
  letter-spacing: -.2px !important;
}
.aria-role {
  font-size: 10px !important;
  color: var(--tx3) !important;
  margin-top: 2px !important;
  letter-spacing: .3px !important;
}
.aria-status {
  font-size: 9px !important;
  font-weight: 800 !important;
  letter-spacing: 1px !important;
  color: var(--gr) !important;
  text-transform: uppercase !important;
}
.aria-status-dot {
  width: 6px !important;
  height: 6px !important;
  border-radius: 50% !important;
  background: var(--gr) !important;
  box-shadow: 0 0 8px rgba(18,214,136,0.7) !important;
  animation: pulseGlow 2s ease-in-out infinite !important;
}
.aria-mode-bar {
  background: rgba(0,0,0,0.2) !important;
  border-bottom: 1px solid rgba(200,168,74,0.08) !important;
  padding: 10px 18px !important;
}
.aria-chips {
  padding: 12px 18px !important;
  border-bottom: 1px solid var(--bd) !important;
  gap: 6px !important;
}
.chip {
  background: rgba(200,168,74,0.05) !important;
  border: 1px solid rgba(200,168,74,0.14) !important;
  border-radius: 100px !important;
  padding: 5px 13px !important;
  font-size: 11px !important;
  color: var(--tx3) !important;
  cursor: pointer !important;
  transition: all .15s ease !important;
  white-space: nowrap !important;
}
.chip:hover {
  border-color: rgba(200,168,74,0.35) !important;
  color: var(--gold2) !important;
  background: rgba(200,168,74,0.10) !important;
}
.aria-input-area {
  padding: 14px 18px !important;
  border-bottom: 1px solid var(--bd) !important;
}
.aria-inp {
  background: rgba(255,255,255,0.03) !important;
  border: 1px solid rgba(200,168,74,0.18) !important;
  border-radius: var(--r2) !important;
  color: var(--tx) !important;
  font-size: 13px !important;
  padding: 10px 14px !important;
  transition: border-color .18s !important;
}
.aria-inp:focus {
  border-color: rgba(200,168,74,0.50) !important;
  background: rgba(200,168,74,0.03) !important;
  box-shadow: 0 0 0 3px rgba(200,168,74,0.07) !important;
  outline: none !important;
}
.aria-inp::placeholder { color: var(--tx3) !important; }
.aria-send {
  background: linear-gradient(135deg, var(--gold), #A8862A) !important;
  color: #040B16 !important;
  font-weight: 800 !important;
  font-size: 12px !important;
  letter-spacing: .3px !important;
  border-radius: var(--r2) !important;
  padding: 10px 18px !important;
  border: none !important;
  cursor: pointer !important;
  transition: all .18s ease !important;
  box-shadow: 0 2px 12px rgba(200,168,74,0.25) !important;
}
.aria-send:hover {
  background: linear-gradient(135deg, var(--gold2), var(--gold)) !important;
  box-shadow: 0 4px 20px rgba(200,168,74,0.40) !important;
  transform: translateY(-1px) !important;
}
.aria-resp {
  font-size: 13px !important;
  line-height: 1.75 !important;
  color: var(--tx2) !important;
  padding: 0 18px !important;
}
.aria-resp.open { padding: 16px 18px !important; max-height: 600px !important; }
.aria-text strong { color: var(--tx) !important; }
.conf-badge { font-size: 8px !important; letter-spacing: 1.2px !important; }
.conf-hi { background: rgba(18,214,136,0.08) !important; color: var(--gr) !important; }
.conf-md { background: rgba(240,152,64,0.10) !important; color: var(--am) !important; }

/* ── BRIEF PANEL ──────────────────────────────────────────────────── */
.brief-content { padding: 18px 20px !important; }
.brief-date {
  font-size: 9px !important;
  font-weight: 800 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  color: var(--tx3) !important;
  margin-bottom: 16px !important;
}
.brief-item {
  display: flex !important;
  gap: 12px !important;
  margin-bottom: 14px !important;
  padding-bottom: 14px !important;
  border-bottom: 1px solid rgba(255,255,255,0.04) !important;
}
.brief-num {
  color: var(--gold) !important;
  font-family: var(--mono) !important;
  font-size: 11px !important;
  opacity: .5;
  flex-shrink: 0 !important;
  padding-top: 1px !important;
}
.brief-txt {
  font-size: 12.5px !important;
  line-height: 1.7 !important;
  color: var(--tx2) !important;
}
.brief-txt strong { color: var(--tx) !important; font-weight: 600 !important; }
.brief-tag {
  font-size: 7.5px !important;
  font-weight: 800 !important;
  letter-spacing: .8px !important;
  padding: 2px 7px !important;
  border-radius: 3px !important;
  margin-left: 5px !important;
}
.bt-hi  { background: rgba(240,82,82,0.12); color: var(--rd); }
.bt-wa  { background: rgba(240,152,64,0.12); color: var(--am); }
.bt-ok  { background: rgba(18,214,136,0.08); color: var(--gr); }
.bt-si  { background: rgba(74,170,232,0.10); color: var(--bl); }

/* ── SIGNAL FEED ──────────────────────────────────────────────────── */
.sig-item {
  padding: 11px 16px !important;
  border-bottom: 1px solid var(--bd) !important;
  cursor: pointer !important;
  transition: background .12s !important;
}
.sig-item:hover { background: rgba(200,168,74,0.03) !important; }
.sig-icon {
  width: 28px !important; height: 28px !important;
  border-radius: 7px !important;
  font-size: 13px !important;
}
.si-hi  { background: rgba(240,82,82,0.10) !important; }
.si-wa  { background: rgba(240,152,64,0.08) !important; }
.si-ok  { background: rgba(18,214,136,0.07) !important; }
.si-in  { background: rgba(74,170,232,0.08) !important; }
.sig-title { font-size: 11.5px !important; color: var(--tx) !important; line-height: 1.4 !important; }
.sig-meta  { font-size: 9.5px  !important; color: var(--tx3) !important; margin-top: 4px !important; }
.sig-tag   { font-size: 7.5px !important; font-weight: 800 !important; letter-spacing: .5px !important; padding: 1px 6px !important; border-radius: 3px !important; }
.tg-hi  { background: rgba(240,82,82,0.12); color: var(--rd); }
.tg-wa  { background: rgba(240,152,64,0.12); color: var(--am); }
.tg-ok  { background: rgba(18,214,136,0.08); color: var(--gr); }
.tg-in  { background: rgba(74,170,232,0.10); color: var(--bl); }

/* ── TOOL CARDS ───────────────────────────────────────────────────── */
.tool-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 10px !important;
  padding: 16px !important;
}
.tool-card {
  background: rgba(200,168,74,0.03) !important;
  border: 1px solid rgba(200,168,74,0.10) !important;
  border-radius: 10px !important;
  padding: 14px 16px !important;
  cursor: pointer !important;
  transition: all .18s ease !important;
}
.tool-card:hover {
  border-color: rgba(200,168,74,0.28) !important;
  background: rgba(200,168,74,0.07) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 8px 24px rgba(0,0,0,0.3) !important;
}
.tool-icon { font-size: 20px !important; margin-bottom: 4px !important; display: block !important; }
.tool-name { font-size: 12px !important; font-weight: 700 !important; color: var(--tx) !important; margin-bottom: 4px !important; }
.tool-desc { font-size: 10.5px !important; color: var(--tx3) !important; line-height: 1.5 !important; }

/* ── DECISION LOG ─────────────────────────────────────────────────── */
.dec-item {
  padding: 12px 18px !important;
  border-bottom: 1px solid rgba(255,255,255,0.04) !important;
  cursor: pointer !important;
  transition: background .12s !important;
}
.dec-item:hover { background: rgba(255,255,255,0.02) !important; }
.dec-icon {
  width: 24px !important; height: 24px !important;
  border-radius: 6px !important;
  font-size: 11px !important;
}
.di-green  { background: rgba(18,214,136,0.10) !important; color: var(--gr) !important; }
.di-amber  { background: rgba(240,152,64,0.10) !important; color: var(--am) !important; }
.di-red    { background: rgba(240,82,82,0.10)  !important; color: var(--rd) !important; }
.di-blue   { background: rgba(74,170,232,0.10) !important; color: var(--bl) !important; }
.dec-title { font-size: 12px !important; color: var(--tx) !important; line-height: 1.35 !important; }
.dec-meta  { font-size: 10px !important; color: var(--tx3) !important; margin-top: 3px !important; }
.dec-conf  { font-size: 8.5px !important; font-weight: 800 !important; letter-spacing: .5px !important; padding: 2px 7px !important; border-radius: 3px !important; }
.dc-hi  { background: rgba(18,214,136,0.08); color: var(--gr); }
.dc-md  { background: rgba(240,152,64,0.10); color: var(--am); }
.dc-lo  { background: rgba(240,82,82,0.10);  color: var(--rd); }

/* ── WATCH ALERTS ─────────────────────────────────────────────────── */
.watch-item {
  padding: 11px 16px !important;
  border-bottom: 1px solid var(--bd) !important;
  cursor: pointer !important;
  transition: background .12s !important;
}
.watch-item:hover { background: rgba(255,255,255,0.02) !important; }
.wi-icon {
  width: 26px !important; height: 26px !important;
  border-radius: 6px !important;
  background: rgba(200,168,74,0.08) !important;
  font-size: 12px !important;
}
.wi-label  { font-size: 11.5px !important; font-weight: 600 !important; color: var(--tx) !important; }
.wi-trigger{ font-size: 10px   !important; color: var(--tx3) !important; margin-top: 2px !important; line-height: 1.4 !important; }
.ws-active { background: var(--gr) !important; box-shadow: 0 0 6px rgba(18,214,136,0.6) !important; animation: pulseGlow 2.5s infinite !important; }
.ws-quiet  { background: var(--tx3) !important; opacity: .4 !important; }
.add-watch-inp {
  background: rgba(255,255,255,0.03) !important;
  border: 1px solid var(--bd2) !important;
  border-radius: var(--r2) !important;
  color: var(--tx) !important;
  font-size: 11px !important;
}
.add-watch-inp:focus {
  border-color: rgba(200,168,74,0.35) !important;
  outline: none !important;
}
.add-watch-btn {
  background: rgba(200,168,74,0.10) !important;
  border: 1px solid rgba(200,168,74,0.25) !important;
  color: var(--gold) !important;
  border-radius: var(--r2) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  transition: all .15s !important;
}
.add-watch-btn:hover { background: rgba(200,168,74,0.18) !important; }

/* ── CALENDAR ─────────────────────────────────────────────────────── */
.cal-item { padding: 11px 16px !important; }
.cal-day  { font-size: 18px !important; color: var(--gold) !important; font-family: var(--mono) !important; font-weight: 500 !important; }
.cal-mon  { font-size: 8px !important; font-weight: 800 !important; letter-spacing: 1px !important; color: var(--tx3) !important; }
.cal-title{ font-size: 11.5px !important; font-weight: 600 !important; color: var(--tx) !important; }
.cal-impact { font-size: 8px !important; font-weight: 800 !important; letter-spacing: .5px !important; padding: 2px 7px !important; border-radius: 3px !important; margin-top: 4px !important; display: inline-block !important; }
.ci-hi  { background: rgba(240,82,82,0.12); color: var(--rd); }
.ci-md  { background: rgba(240,152,64,0.10); color: var(--am); }
.ci-lo  { background: rgba(18,214,136,0.08); color: var(--gr); }

/* ── RIGHT PANEL ──────────────────────────────────────────────────── */
.right-panel {
  background: linear-gradient(180deg, var(--s1) 0%, var(--bg) 100%) !important;
  border-left: 1px solid rgba(200,168,74,0.08) !important;
}
.rp-head {
  padding: 13px 16px !important;
  border-bottom: 1px solid var(--bd) !important;
}
.rp-title {
  font-size: 8px !important;
  font-weight: 800 !important;
  letter-spacing: 2.5px !important;
  text-transform: uppercase !important;
  color: var(--tx3) !important;
}
.rp-action { font-size: 10px !important; color: var(--gold) !important; opacity: .6; cursor: pointer !important; }
.rp-action:hover { opacity: 1 !important; }

/* ── SPREAD TABLE ─────────────────────────────────────────────────── */
.str { padding: 11px 18px !important; border-bottom: 1px solid rgba(255,255,255,0.04) !important; }
.str.hd { background: rgba(0,0,0,0.25) !important; font-size: 8px !important; letter-spacing: 1.2px !important; padding: 8px 18px !important; }
.str-rating { font-family: var(--mono) !important; font-size: 14px !important; font-weight: 700 !important; }
.str-bar-bg { height: 4px !important; border-radius: 2px !important; background: rgba(255,255,255,0.07) !important; }
.str-spread { font-family: var(--mono) !important; font-size: 13px !important; font-weight: 500 !important; }
.str-interp { font-size: 11px !important; font-weight: 600 !important; }

/* ── LBO GRID ─────────────────────────────────────────────────────── */
.lbo-grid { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 1px !important; background: var(--bd) !important; }
.lbo-cell { background: var(--s1) !important; padding: 16px 18px !important; }
.lbo-lbl { font-size: 9px !important; font-weight: 800 !important; letter-spacing: 1.5px !important; text-transform: uppercase !important; color: var(--tx3) !important; margin-bottom: 10px !important; }
.lbo-math { font-family: var(--mono) !important; font-size: 11.5px !important; color: var(--tx2) !important; line-height: 2 !important; }
.lbo-math .hl  { color: var(--gold2) !important; }
.lbo-math .result { color: var(--tx) !important; font-size: 15px !important; }
.lbo-math .w   { color: var(--am) !important; }
.lbo-math .ok  { color: var(--gr) !important; }
.lbo-math .bad { color: var(--rd) !important; }

/* ── LP DYNAMICS ──────────────────────────────────────────────────── */
.lp-row { padding: 10px 18px !important; border-bottom: 1px solid rgba(255,255,255,0.04) !important; font-size: 12px !important; }
.lp-row.hd { background: rgba(0,0,0,0.2) !important; font-size: 8px !important; letter-spacing: 1.2px !important; padding: 8px 18px !important; color: var(--tx3) !important; }
.lp-met { color: var(--tx2) !important; }
.lp-val { font-family: var(--mono) !important; font-weight: 500 !important; }
.sp { font-size: 9px !important; font-weight: 800 !important; letter-spacing: .5px !important; padding: 2px 8px !important; border-radius: 4px !important; }
.sp-p { background: rgba(240,82,82,0.10); color: var(--rd); }
.sp-w { background: rgba(240,152,64,0.10); color: var(--am); }
.sp-o { background: rgba(18,214,136,0.08); color: var(--gr); }

/* ── RATE CURVE ───────────────────────────────────────────────────── */
.curve-item { padding: 9px 18px !important; border-bottom: 1px solid rgba(255,255,255,0.04) !important; }
.ci-lbl  { font-family: var(--mono) !important; font-size: 10px !important; font-weight: 700 !important; color: var(--tx3) !important; }
.ci-bg   { height: 4px !important; background: rgba(255,255,255,0.06) !important; border-radius: 2px !important; }
.ci-fill { height: 100% !important; border-radius: 2px !important; }
.ci-rate { font-family: var(--mono) !important; font-size: 12px !important; font-weight: 600 !important; }
.ci-note { font-size: 10px !important; color: var(--tx3) !important; }

/* ── RELATED TERMINALS ────────────────────────────────────────────────── */
.related-grid {
  display: grid !important;
  grid-template-columns: repeat(3,1fr) !important;
  gap: 1px !important;
  background: var(--bd) !important;
}
.rd-cell {
  background: var(--s1) !important;
  padding: 14px 10px !important;
  text-align: center !important;
  cursor: pointer !important;
  transition: background .15s !important;
}
.rd-cell:hover { background: rgba(200,168,74,0.05) !important; }
.rd-icon { font-size: 20px !important; }
.rd-name { font-size: 10px !important; font-weight: 700 !important; color: var(--tx) !important; margin-top: 5px !important; }
.rd-desc { font-size: 9px !important; color: var(--tx3) !important; }

/* ── STATS STRIP ──────────────────────────────────────────────────── */
.stats-strip { background: var(--bd) !important; gap: 1px !important; }
.stat-cell { background: var(--s1) !important; padding: 12px !important; text-align: center !important; }
.stat-val  { font-family: var(--mono) !important; font-size: 18px !important; font-weight: 500 !important; }
.stat-lbl  { font-size: 8px !important; font-weight: 800 !important; letter-spacing: 1.5px !important; color: var(--tx3) !important; }

/* ── REPORT STRIP ─────────────────────────────────────────────────── */
.report-strip { padding: 12px 16px !important; gap: 6px !important; }
.rpt-btn {
  flex: 1 !important;
  background: rgba(200,168,74,0.05) !important;
  border: 1px solid rgba(200,168,74,0.12) !important;
  border-radius: 7px !important;
  color: var(--gold) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  padding: 9px 8px !important;
  transition: all .15s !important;
}
.rpt-btn:hover {
  background: rgba(200,168,74,0.12) !important;
  border-color: rgba(200,168,74,0.28) !important;
}

/* ── MODALS ELEVATION ─────────────────────────────────────────────── */
.overlay {
  background: rgba(2,6,14,0.92) !important;
  backdrop-filter: blur(20px) !important;
}
.modal {
  background: linear-gradient(135deg, var(--s1) 0%, var(--s2) 100%) !important;
  border: 1px solid rgba(200,168,74,0.15) !important;
  border-radius: 16px !important;
  box-shadow: 0 24px 80px rgba(0,0,0,0.7), 0 0 0 1px rgba(200,168,74,0.06) !important;
  padding: 32px !important;
}
.modal h2 {
  font-family: var(--serif) !important;
  font-size: 28px !important;
  font-weight: 600 !important;
  color: var(--tx) !important;
  margin-bottom: 10px !important;
}
.modal-close {
  background: rgba(255,255,255,0.06) !important;
  border: 1px solid var(--bd2) !important;
  border-radius: 6px !important;
  width: 28px !important; height: 28px !important;
  color: var(--tx3) !important;
  cursor: pointer !important;
  font-size: 14px !important;
  transition: all .15s !important;
}
.modal-close:hover { background: rgba(255,255,255,0.10) !important; color: var(--tx) !important; }
.modal-textarea {
  background: rgba(255,255,255,0.03) !important;
  border: 1px solid rgba(200,168,74,0.15) !important;
  border-radius: 8px !important;
  color: var(--tx) !important;
  font-size: 13px !important;
}
.modal-textarea:focus { border-color: rgba(200,168,74,0.40) !important; outline: none !important; }
.modal-go {
  background: linear-gradient(135deg, var(--gold), #A8862A) !important;
  color: #040B16 !important;
  border-radius: 8px !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  padding: 11px 26px !important;
  border: none !important;
  cursor: pointer !important;
  transition: all .18s !important;
  box-shadow: 0 4px 16px rgba(200,168,74,0.25) !important;
}
.modal-go:hover { transform: translateY(-1px) !important; box-shadow: 0 8px 24px rgba(200,168,74,0.35) !important; }
.modal-tab.active { background: rgba(200,168,74,0.12) !important; color: var(--gold2) !important; }

/* ── USER MENU ────────────────────────────────────────────────────── */
.user-menu {
  background: var(--s1) !important;
  border: 1px solid rgba(200,168,74,0.15) !important;
  border-radius: 12px !important;
  box-shadow: 0 16px 48px rgba(0,0,0,0.6) !important;
}
.um-name  { font-size: 13px !important; font-weight: 700 !important; color: var(--tx) !important; }
.um-email { font-size: 11px !important; color: var(--tx3) !important; }
.um-item  { font-size: 12px !important; color: var(--tx2) !important; transition: background .12s !important; }
.um-item:hover { background: rgba(200,168,74,0.05) !important; color: var(--tx) !important; }
.um-item.danger:hover { background: rgba(240,82,82,0.06) !important; }

/* ── ONBOARDING BAR ───────────────────────────────────────────────── */
.ob-bar {
  background: rgba(200,168,74,0.05) !important;
  border: 1px solid rgba(200,168,74,0.16) !important;
  border-radius: 10px !important;
  padding: 12px 16px !important;
}
.ob-label { font-size: 10px !important; font-weight: 800 !important; letter-spacing: 1px !important; color: var(--gold) !important; }
.ob-step { font-size: 11px !important; color: var(--tx3) !important; }
.ob-step.done { color: var(--gr) !important; }

/* ── ANIMATIONS ───────────────────────────────────────────────────── */
@keyframes fadeUp {
  from { opacity: 0; transform: translateY(14px); }
  to   { opacity: 1; transform: translateY(0); }
}
.panel, .aria-panel, .window-bar, .mode-bar {
  animation: fadeUp .3s ease both !important;
}
.panel:nth-child(2)  { animation-delay: .04s !important; }
.panel:nth-child(3)  { animation-delay: .08s !important; }
.panel:nth-child(4)  { animation-delay: .12s !important; }
.panel:nth-child(5)  { animation-delay: .16s !important; }
.panel:nth-child(6)  { animation-delay: .20s !important; }
.panel:nth-child(7)  { animation-delay: .24s !important; }
.panel:nth-child(8)  { animation-delay: .28s !important; }

/* Typing dots */
.dot { background: var(--gold) !important; }
@keyframes dots {
  0%,80%,100% { opacity: .2; transform: scale(.8); }
  40%          { opacity: 1;  transform: scale(1); }
}

/* ── FLOAT BUTTON ─────────────────────────────────────────────────── */
.aria-float-btn {
  background: linear-gradient(135deg, rgba(200,168,74,0.15), rgba(200,168,74,0.08)) !important;
  border: 1px solid rgba(200,168,74,0.28) !important;
  color: var(--gold2) !important;
  box-shadow: 0 4px 20px rgba(0,0,0,0.4) !important;
}
.aria-float-btn:hover {
  border-color: rgba(200,168,74,0.50) !important;
  box-shadow: 0 6px 28px rgba(0,0,0,0.5), 0 0 20px rgba(200,168,74,0.12) !important;
}
.aria-float-panel {
  background: linear-gradient(135deg, var(--s1), var(--s2)) !important;
  border: 1px solid rgba(200,168,74,0.18) !important;
  border-radius: 16px !important;
  box-shadow: 0 20px 60px rgba(0,0,0,0.65) !important;
}

/* ── MISC UTILITY ─────────────────────────────────────────────────── */
.up   { color: var(--gr) !important; }
.dn   { color: var(--rd) !important; }
.warn { color: var(--am) !important; }
.neu  { color: var(--tx3) !important; }

/* ── Performance: kill pulseGlow — runs on every terminal page load ── */
@keyframes pulseGlow { 0%,100% { box-shadow: none; opacity: 1; } }
