:root{
  --bg:#0d0f12; --panel:#14181d; --text:#e7e9ec; --muted:#a7b0bb;
  --green:#14b86e; --red:#e05252; --grey:#5b6470; --border:#20262d;
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text)}

.topbar{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border)}
.brand{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-weight:700;
  color:#fff;
  text-decoration:none;
}
.brand .brand-banner{
  height:34px;
  max-height:34px;
  width:auto;
  display:inline-block;
}
.brand .muted{
  color:var(--muted);
  font-weight:700;
}
.market-close{display:inline-flex;align-items:center;gap:6px;color:var(--muted);}
.market-close .mc-dot{font-size:11px;line-height:1;}
.market-close .mc-dot.is-open{color:var(--green);}
.market-close .mc-dot.is-closed{color:var(--red);}
.market-close .mc-status{font-size:12px;font-weight:800;letter-spacing:.05em;}
.market-close .mc-body{color:var(--muted);}
.controls{display:flex;gap:8px;align-items:center}
.controls input,.controls select{background:#0f1318;color:var(--text);border:1px solid var(--border);padding:8px;border-radius:8px;min-width:240px}
.controls button{background:#2a313a;color:#fff;border:1px solid var(--border);padding:8px 12px;border-radius:8px;cursor:pointer}
.controls button:active{transform:scale(0.98)}
.hint{color:var(--muted);font-size:12px;margin-left:4px}

.grid{display:grid;grid-template-columns:1.6fr 1fr;gap:16px;padding:16px}
.left #chart{height:520px;background:var(--panel);border:1px solid var(--border);border-radius:10px}
.favorites{margin-top:12px;background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:12px}
.fg-title{color:var(--muted);margin-bottom:6px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{background:#1a2027;border:1px solid var(--border);color:#cfd6de;padding:6px 10px;border-radius:999px;cursor:pointer}
.chip:hover{background:#232a33}

.right .panel{background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:12px;margin-bottom:12px}
.kv{width:100%;border-collapse:collapse}
.kv td{padding:6px 4px;border-bottom:1px dashed #1f252c}
.kv tr:last-child td{border-bottom:none}
.analysis{white-space:pre-wrap;line-height:1.4;color:#dbe2ea}

.decision{padding:14px;border-radius:12px;margin-bottom:12px;border:1px solid var(--border);background:#161b21}
.decision .decision-title{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px}
.decision .decision-value{font-size:34px;font-weight:800;margin-bottom:4px}
.decision .confidence{color:#c7cfda}

.decision.long{background:rgba(20,184,110,.08);border-color:rgba(20,184,110,.3)}
.decision.long .decision-value{color:var(--green)}
.decision.short{background:rgba(224,82,82,.08);border-color:rgba(224,82,82,.3)}
.decision.short .decision-value{color:var(--red)}
.decision.none{background:rgba(91,100,112,.08);border-color:rgba(91,100,112,.3)}
.decision.none .decision-value{color:var(--grey)}

@media (max-width: 1080px){
  .grid{grid-template-columns:1fr}
  .controls input{min-width:180px}
}

.rel-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:2px 8px;
  border-radius:999px;
  font-size:12px;
  line-height:16px;
  font-weight:600;
  letter-spacing:.2px;
  white-space:nowrap;
  border:1px solid rgba(255,255,255,.08);
  user-select:none;
  gap:6px;
  position:relative;
  background:rgba(255,255,255,.04);
  color:#eaeaea;
  min-width:44px;
}
.rel-pill:focus-visible{
  outline:2px solid rgba(124,58,237,.55);
  outline-offset:2px;
}
.rel-pill--na{ background:#3a3a3a; color:#eaeaea; }
.rel-pill--low{ background:var(--rel-red, #a52b2b); color:#fff; }
.rel-pill--medium{ background:var(--rel-amber, #b8860b); color:#111; }
.rel-pill--high{ background:var(--rel-green, #1f8f3e); color:#fff; }
.rel-pill.rel-pill--verified{
  background:transparent;
  border:0;
  /* keep the badge clickable/hoverable; keep existing sizing from .rel-pill */
  color:var(--rel-green, #1f8f3e);
}
.rel-pill .rel-dot{
  width:8px;
  height:8px;
  border-radius:50%;
  background:currentColor;
  opacity:.85;
}
.rel-tip{
  position:absolute;
  z-index:9999;
  max-width:320px;
  background:rgba(20,20,25,.98);
  color:#eaeaea;
  padding:8px 10px;
  border-radius:8px;
  box-shadow:0 8px 24px rgba(0,0,0,.35);
  font-size:12px;
  line-height:1.35;
  border:1px solid rgba(255,255,255,.06);
  bottom:calc(100% + 8px);
  left:50%;
  transform:translate(-50%,6px);
  pointer-events:none;
  opacity:0;
  transition:opacity .15s ease, transform .15s ease;
}
.rel-tip::after{
  content:"";
  position:absolute;
  top:100%;
  left:50%;
  transform:translateX(-50%);
  border-width:6px;
  border-style:solid;
  border-color:rgba(20,20,25,.98) transparent transparent transparent;
}
.rel-tip[data-visible="1"]{
  opacity:1;
  transform:translate(-50%,0);
}

/* === Header nav pills (reuse DeepDive news pill styling) === */
.nav-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 6px 10px;
  border-radius: 10px;
  border: 1px solid #3b2f7a;
  background: linear-gradient(135deg, #2563eb 0%, #7c3aed 55%, #22d3ee 100%);
  color: #fff !important;
  font-weight: 800;
  text-decoration: none !important;
  box-shadow: none;
  cursor: pointer;
}

.nav-pill:hover {
  filter: brightness(1.05);
}

.nav-pill + .nav-pill {
  margin-left: 10px;
}
