/* Approved beta presentation shared by the signal terminals. */
body.signals-redesign {
  --eq-positive-rgb: 30, 109, 82;
  --eq-negative-rgb: 163, 69, 96;
  --eq-warning-rgb: 95, 106, 121;
}
[data-theme="dark"] body.signals-redesign {
  --text: #edf1f7;
  --masthead-text: #edf1f7;
  --muted: #d7dee7;
  --muted-2: #ced8e2;
  --blue: #bfdcff;
  --accent: #bfdcff;
  --green: #b5d4ff;
  --green-strong: #b5d4ff;
  --red: #eee3d4;
  --red-strong: #eee3d4;
  --green-soft: #182433;
  --red-soft: #24221f;
  --green-emphasis: #213147;
  --red-emphasis: #302d28;
  --amber: #d4dfed;
  --amber-strong: #e1ebf7;
  --eq-positive-rgb: 181, 212, 255;
  --eq-negative-rgb: 238, 227, 212;
  --eq-warning-rgb: 225, 235, 247;
}
body.signals-redesign .eq-universe-toolbar {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px 14px;
  padding: 18px 0;
  border-bottom: 1px solid var(--line);
}
body.signals-redesign .eq-universe-toolbar label { font-size: 13px; font-weight: 600; }
body.signals-redesign .eq-universe-toolbar .select { width: auto; min-width: 180px; max-width: 100%; }
body.signals-redesign .eq-beta-label { margin-left: auto; color: var(--muted); font-size: 12px; }
body.signals-redesign .metrics-grid { grid-template-columns: repeat(5, minmax(0, 1fr)) !important; }
body.signals-redesign :is(#equity-overview, #visual-explorer, #equity-diagnostics, #equity-universe) { scroll-margin-top: 64px; }
body.signals-redesign .mr-masthead h1 { max-width: none !important; }
body.signals-redesign .mr-masthead p { max-width: 660px; }

/* Same compact, unboxed signal text as the approved MR and basket tables. */
[data-theme="dark"] body.signals-redesign #table-scroll {
  --green-strong: #c5e0ff;
  --red-strong: #f3e9db;
}
[data-theme="dark"] body.signals-redesign #table-scroll tbody tr:nth-child(even) { background: #11161b !important; }
[data-theme="dark"] body.signals-redesign #table-scroll tbody tr:hover { background: var(--accent-soft) !important; }
body.signals-redesign #table-scroll th { font-size: 12px !important; }
body.signals-redesign #table-scroll :is(.momentum-value, .strength-label, .trend-chip, .strength-chip, .badge.font-mono) {
  font-size: 13px !important;
  font-weight: 500 !important;
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

/* Correlation network is unique to the equity page. */
body.signals-redesign :is(.corr-network-panel, .ticker-corr-network, .corr-network-stage, .corr-network-rail) {
  background: var(--bg) !important;
  background-image: none !important;
  border-color: var(--line) !important;
  border-radius: 4px !important;
  box-shadow: none !important;
}
body.signals-redesign :is(.corr-legend-item, .corr-rail-note, .corr-rail-stat, .corr-network-subtitle) { color: var(--muted) !important; font-weight: 400 !important; }
body.signals-redesign .corr-rail-link { color: var(--text) !important; font-weight: 500 !important; }
body.signals-redesign :is(.corr-rail-headline, .corr-rail-stat b, .corr-rail-link b) { font-family: var(--font-ui) !important; font-weight: 500 !important; }
body.signals-redesign .corr-rail-block { border-color: var(--line); }
body.signals-redesign .corr-edge.positive { stroke: var(--green-strong); }
body.signals-redesign .corr-edge.negative { stroke: var(--red-strong); }
body.signals-redesign :is(.corr-axis, .corr-orbit-ring, .corr-orbit-tick) { stroke: var(--line-strong); }
body.signals-redesign .corr-zone { fill: var(--panel); stroke: var(--line); }
body.signals-redesign .corr-hub-core { fill: var(--bg); }
body.signals-redesign .corr-hub-inner { fill: var(--panel); }
body.signals-redesign :is(.corr-hub-kicker, .corr-hub-value) { fill: var(--text); font-family: var(--font-ui); font-weight: 500; }
body.signals-redesign :is(.corr-node-label, .corr-node-symbol, .corr-quadrant-label, .corr-axis-label) {
  fill: var(--text);
  stroke: var(--bg);
  font-family: var(--font-ui);
  font-weight: 500;
}
body.signals-redesign :is(.corr-quadrant-label, .corr-axis-label) { fill: var(--muted); }
body.signals-redesign .corr-network-expand-btn { color: var(--muted) !important; }
body.signals-redesign .corr-network-panel.is-network-expanded { background: var(--bg) !important; }

/* A consistent scale for the equity overview and its denser supporting lists. */
body.signals-redesign .mr-masthead h1 { font-size: 48px !important; }
body.signals-redesign .hero-side { grid-template-columns: repeat(5, minmax(0, 1fr)) !important; }
body.signals-redesign .signal-ribbon {
  grid-template-columns: minmax(0, .95fr) minmax(0, 1fr) minmax(0, 1.1fr) minmax(0, 1.4fr) !important;
}
body.signals-redesign .ribbon-panel { min-width: 0; min-height: 0 !important; }
body.signals-redesign :is(.side-kicker, .metric-label, .ribbon-label, .section-label, .kicker) { font-size: 12px !important; }
body.signals-redesign :is(.industry-pulse-head > span, .industry-pulse-row span, .industry-pulse-row small,
  .extreme-heading, .extreme-row span, .extreme-score small, .sector-meta, .subtext,
  .viz-kpi span, .diagnostic-pill span, .discovery-card span, .discovery-card small) {
  font-size: 12px !important;
  line-height: 1.45 !important;
}
body.signals-redesign .ribbon-label { margin-bottom: 0; }
body.signals-redesign .ribbon-value { margin: 12px 0 0 !important; }
body.signals-redesign .ribbon-gauge {
  width: 100%;
  grid-template-columns: 130px minmax(0, 1fr) !important;
  gap: 16px 12px !important;
  margin: 20px 0 0 !important;
}
body.signals-redesign .gauge-svg { width: 130px !important; }
body.signals-redesign .ribbon-insight { display: contents; }
body.signals-redesign .ribbon-insight b { font-size: 28px !important; }
body.signals-redesign .ribbon-insight span { grid-column: 1 / -1; font-size: 13px !important; font-weight: 400; }
body.signals-redesign .dual-trend-stack {
  flex: 0 0 auto;
  grid-template-rows: auto auto;
  align-content: start;
  gap: 18px !important;
  margin-top: 14px !important;
}
body.signals-redesign .trend-stack-block { grid-template-rows: auto; grid-auto-rows: auto; gap: 7px; }
body.signals-redesign .trend-stack-title { font-size: 13px !important; line-height: 1.4; margin-bottom: 2px !important; }
body.signals-redesign .trend-stack-row {
  grid-template-columns: 77px minmax(0, 1fr) 27px !important;
  margin: 0 !important;
  gap: 6px !important;
  line-height: 18px !important;
}
body.signals-redesign .trend-stack-row :is(span:first-child, strong) { font-size: 12px !important; }
body.signals-redesign .trend-stack-track { height: 7px !important; }
body.signals-redesign .industry-pulse-list { margin-top: 14px; padding-bottom: 0; gap: 0; }
body.signals-redesign .industry-pulse-row strong { font-size: 13px !important; line-height: 1.4; }
body.signals-redesign .industry-pulse-controls { position: static; margin-top: 12px !important; }
body.signals-redesign .extremes-card { gap: 16px !important; }
body.signals-redesign .extreme-row { padding: 8px 0 !important; align-items: start; }
body.signals-redesign .extreme-row strong { font-size: 14px !important; }
body.signals-redesign .extreme-row span {
  white-space: normal;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  font-weight: 400;
}
body.signals-redesign .extreme-score { min-width: 0; font-family: var(--font-ui); font-variant-numeric: tabular-nums; }
body.signals-redesign .extreme-score small { white-space: nowrap; font-weight: 400; }

@media (max-width: 1100px) {
  body.signals-redesign .hero-side { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
  body.signals-redesign .metrics-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
  body.signals-redesign .signal-ribbon { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (max-width: 640px) {
  body.signals-redesign .mr-masthead h1 { font-size: 38px !important; }
  body.signals-redesign .hero-side { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  body.signals-redesign .signal-ribbon { grid-template-columns: 1fr !important; }
  body.signals-redesign .dual-trend-stack { grid-template-columns: 1fr !important; grid-template-rows: auto auto; }
  body.signals-redesign .trend-stack-row { grid-template-columns: 88px minmax(0, 1fr) 30px !important; }
  body.signals-redesign .metrics-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  body.signals-redesign .metric-card:nth-child(3) { border-right: 1px solid var(--line) !important; }
  body.signals-redesign .metric-card:nth-child(even) { border-right: 0 !important; }
  body.signals-redesign .eq-universe-toolbar { gap: 10px; }
  body.signals-redesign .eq-universe-toolbar .select { min-width: 0; flex: 1; }
  body.signals-redesign .eq-universe-toolbar #market-scope-filter { flex-basis: calc(100% - 70px); }
  body.signals-redesign .eq-beta-label { display: none; }
  body.signals-redesign .mr-header-actions { gap: 10px; }
}

body.signals-redesign { --mr-positive-rgb: var(--eq-positive-rgb); --mr-negative-rgb: var(--eq-negative-rgb); }
body.signals-redesign .metrics-grid { grid-template-columns: repeat(var(--signal-metric-columns, 5), minmax(0, 1fr)) !important; }
[data-theme="dark"] body.signals-redesign .mr-masthead :is(p, .mr-eyebrow, .mr-masthead-meta) { color: var(--muted); }
body.signals-redesign #table-scroll .badge[data-signal-level] { font-size: 13px !important; font-weight: 500 !important; background: transparent !important; border-color: transparent !important; box-shadow: none !important; }
@media (max-width: 1100px) { body.signals-redesign .metrics-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; } }
@media (max-width: 640px) { body.signals-redesign .metrics-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }

/* Factor-specific diagnostics retain their own data and panel arrangement. */
body.signals-redesign :is(.value-intel-panel, .value-portfolio-panel) { padding: 24px 16px; background: var(--bg); border-color: var(--line); }
body.signals-redesign .value-panel-head h2 { font: 600 18px/1.3 var(--font-ui) !important; text-transform: none; }
body.signals-redesign :is(.value-panel-head p, .value-portfolio-head p, .value-row small, .value-row-meta, .value-stat-label, .value-portfolio-kpi span, .portfolio-card-kicker, .portfolio-month-row span) { color: var(--muted); font-size: 12px; line-height: 1.5; font-weight: 400; }
body.signals-redesign :is(.value-row, .value-stat, .value-mini-kpi, .value-portfolio-kpi, .portfolio-card, .value-lane) { border-radius: 0; background: var(--bg); border-color: var(--line); box-shadow: none; }
body.signals-redesign .value-row strong { font-size: 14px; font-weight: 600; line-height: 1.4; }
body.signals-redesign .value-row b { background: transparent; border: 0; border-radius: 0; font-size: 13px; font-weight: 500; }
body.signals-redesign :is(.value-stat strong, .value-mini-kpi strong, .value-portfolio-kpi strong) { font-size: 24px; font-weight: 500; }
body.signals-redesign .value-breadth-chart { background: var(--bg); border-color: var(--line); border-radius: 4px; }
body.signals-redesign .value-breadth-area { fill: var(--green-soft); }
body.signals-redesign .value-chart-zone { fill: var(--bg); stroke: var(--line); }
body.signals-redesign .value-chart-label { fill: var(--muted); }
body.signals-redesign :is(#value-intelligence, #signals-overview, #signals-diagnostics, #signals-universe) { scroll-margin-top: 64px; }

/* Value/low-vol cells are the factor equivalents of beta momentum cells. */
body.signals-redesign #table-scroll :is(.value-trend, .value-strength) { display: inline-flex; align-items: center; justify-content: center; gap: 4px; white-space: nowrap; }
body.signals-redesign #table-scroll :is(.value-value, .value-strength .strength-label) { font-family: "Plus Jakarta Sans", "Space Grotesk", sans-serif; font-size: 13px !important; font-weight: 500 !important; height: 22px; padding: 0 7px; background: transparent !important; border-color: transparent !important; box-shadow: none !important; }
body.signals-redesign #table-scroll .value-trend.pos .value-value,
body.signals-redesign #table-scroll :is(.value-strength.pos, .value-strength.mod) .strength-label { color: var(--green-strong) !important; }
body.signals-redesign #table-scroll .value-trend.neg .value-value,
body.signals-redesign #table-scroll .value-strength.neg .strength-label { color: var(--red-strong) !important; }
body.signals-redesign #table-scroll .value-trend.neu .value-value,
body.signals-redesign #table-scroll .value-strength.neu .strength-label { color: var(--muted) !important; }
body.signals-redesign #table-scroll .value-bars { display: inline-flex; gap: 2px; }
body.signals-redesign #table-scroll :is(.value-bars, .strength-bars) i { background: var(--track) !important; height: 15px; width: 6px; border-radius: 3px; }
body.signals-redesign #table-scroll .value-trend.pos .value-bars i.on,
body.signals-redesign #table-scroll :is(.value-strength.pos, .value-strength.mod) .strength-bars i.on { background: var(--green-strong) !important; }
body.signals-redesign #table-scroll .value-trend.neg .value-bars i.on,
body.signals-redesign #table-scroll .value-strength.neg .strength-bars i.on { background: var(--red-strong) !important; }
body.signals-redesign #table-scroll .value-trend.neu .value-bars i.on,
body.signals-redesign #table-scroll .value-strength.neu .strength-bars i.on { background: var(--muted) !important; }
body.signals-redesign #table-scroll .mobile-value-table :is(th, td) { border-color: var(--line) !important; }
body.signals-redesign #table-scroll .mobile-value-table thead .asset-cell { background: var(--panel) !important; }
body.signals-redesign #table-scroll .mobile-value-table tbody .asset-cell { background: inherit !important; }
body.signals-redesign #table-scroll .mobile-value-table .subtext { font-size: 12px !important; color: var(--muted) !important; }
/* All grid children may shrink within the available width after a theme change. */
body.signals-redesign :is(.shell, .hero-side, .metric-card, .ribbon-panel, .ribbon-gauge, .extremes-card, .extremes-col, .extreme-row, .extreme-row > div, .extreme-score, .value-intel-panel) { min-width: 0; }
body.signals-redesign .extreme-row > div:first-child { overflow: hidden; }
body.signals-redesign .extreme-row span { overflow-wrap: anywhere; }
/* Match the beta table's rendered sans-serif fallback explicitly. */
body.signals-redesign #table-scroll :is(th, td, .ticker-cell, .subtext, .momentum-value, .value-value, .strength-label) { font-family: Arial, sans-serif !important; }
body.signals-redesign #table-scroll :is(.num, .font-mono, .badge, .trend-chip, .strength-chip) { font-family: var(--font-ui) !important; }
body.signals-redesign #table-scroll th { font-size: 12px !important; font-weight: 600 !important; }
body.signals-redesign #table-scroll td { font-size: 12px !important; font-weight: 400 !important; }
body.signals-redesign #table-scroll .ticker-cell { font-size: 14px !important; font-weight: 600 !important; }
body.signals-redesign #table-scroll .subtext { font-size: 12px !important; font-weight: 700 !important; line-height: 1.45 !important; }
body.signals-redesign #table-scroll :is(.momentum-value, .value-value, .strength-label) { font-size: 13px !important; font-weight: 500 !important; }
