/* Stock-only Insights -----------------------------------------------------
   This sheet is deliberately self-contained. Insights selectors stay scoped;
   the named Lighter activity-map section is the sole shared visualization
   contract and composes with the terminal tokens rather than replacing them. */

[data-page="insights"] {
  --insights-content-max: var(--layout-content-max);
  --insights-screener-viewport-offset: 26.5rem;
  --insights-heatmap-viewport-offset: 31.75rem;
  --insights-summary-block-size: 5.25rem;
  --insights-chart-block-size: 28.75rem;
  --insights-chart-header-block-size: 3.125rem;
  --insights-dashboard-body-block-size: 25.5rem;
  --insights-dashboard-plot-inline-size: 28.125rem;
  --insights-dashboard-sidecar-inline-size: 9.25rem;
  --insights-table-viewport-block-size: calc(
    var(--insights-table-header-size)
    + var(--space-32)
    + var(--space-32)
    + var(--space-32)
    + var(--space-32)
    + var(--border-width-strong)
  );
  --insights-plot-compact-block-size: 20rem;
  --insights-plot-wide-block-size: 25rem;
  --insights-performance-block-size: 32rem;
  --insights-table-min-size: 63.5rem;
  --insights-table-header-size: 2.375rem;
  --insights-table-row-size: var(--space-16);
  --insights-tooltip-duration: 400ms;
  --insights-tooltip-max-size: 17.5rem;
  --insights-tooltip-safe-inset: var(--space-2);
  --insights-summary-intro-min-block-size: var(--space-32);
  --insights-kpi-responsive-min-block-size: var(--space-32);
  --insights-fact-responsive-min-block-size: calc(var(--space-16) + var(--space-12));
  --insights-section-header-min-block-size: var(--space-24);
  --insights-chart-caption-min-block-size: calc(var(--space-32) + var(--space-16));
  --insights-dashboard-caption-min-block-size: var(--insights-chart-caption-min-block-size);
  --insights-heatmap-caption-min-block-size: calc(var(--space-32) + var(--space-32));
  --insights-basket-summary-min-block-size: calc(var(--space-32) + var(--space-32));
  --insights-source-panel-min-block-size: calc(var(--space-32) + var(--space-8));
  --insights-series-aapl: var(--color-accent);
  --insights-series-nvda: var(--color-warning);
  --insights-series-tsla: var(--color-error);
  --insights-series-msft: color-mix(in srgb, var(--color-info) 68%, var(--color-accent));
  --insights-series-amzn: color-mix(in srgb, var(--color-warning) 62%, var(--color-text-secondary));
  --insights-series-googl: color-mix(in srgb, var(--color-info) 64%, var(--color-warning));
  --insights-series-spy: color-mix(in srgb, var(--color-accent-muted) 70%, var(--color-text-secondary));
  --insights-series-qqq: color-mix(in srgb, var(--color-error) 58%, var(--color-text-secondary));
  --insights-semantic-positive-depth: color-mix(in srgb, var(--color-success) 38%, var(--color-surface-elevated));
  --insights-semantic-negative-depth: color-mix(in srgb, var(--color-error) 42%, var(--color-surface-elevated));
  position: relative;
  display: block;
  inline-size: 100%;
  min-inline-size: var(--space-0);
  max-inline-size: 100%;
  overflow-x: clip;
  color: var(--color-text-secondary);
  background: var(--color-bg);
  font-size: var(--text-sm);
  line-height: var(--leading-normal);
  isolation: auto;
}

[data-page="insights"] > *,
.insights-layout > *,
.insights-main > *,
.insights-section > *,
.insights-chart > * {
  min-inline-size: var(--space-0);
}

.insights-layout {
  display: grid;
  grid-template-columns: minmax(var(--space-0), 1fr);
  align-items: start;
  gap: var(--space-4);
  inline-size: min(100%, var(--insights-layout-max));
  margin-inline: auto;
}

.insights-main,
.insights-content,
.insights-stack {
  display: grid;
  grid-template-columns: minmax(var(--space-0), 1fr);
  align-content: start;
}

.insights-main,
.insights-content {
  gap: var(--space-4);
}

.insights-main {
  inline-size: 100%;
  max-inline-size: var(--insights-content-max);
  justify-self: center;
  container-name: insights-main;
  container-type: inline-size;
}

.insights-stack {
  gap: var(--space-3);
}

/* Shared analytics navigation -------------------------------------------- */

.insights-analytics-nav {
  display: block;
  min-inline-size: var(--space-0);
  max-inline-size: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  border: var(--border-subtle);
  border-radius: var(--radius-sm);
  background: var(--color-bg-raised);
  scrollbar-color: var(--color-border-strong) var(--color-surface);
  scrollbar-width: thin;
  overscroll-behavior-inline: contain;
  scroll-snap-type: inline proximity;
}

.insights-analytics-nav::-webkit-scrollbar {
  block-size: var(--space-2);
}

.insights-analytics-nav::-webkit-scrollbar-track {
  background: var(--color-surface);
}

.insights-analytics-nav::-webkit-scrollbar-thumb {
  border: var(--border-subtle);
  border-radius: var(--radius-pill);
  background: var(--color-border-strong);
}

.insights-analytics-nav ul {
  display: flex;
  align-items: stretch;
  min-inline-size: max-content;
  margin: var(--space-0);
  padding: var(--space-0);
  list-style: none;
}

.insights-analytics-nav li {
  display: flex;
  scroll-snap-align: start;
}

.insights-analytics-nav a {
  position: relative;
  display: inline-flex;
  align-items: center;
  min-block-size: var(--size-touch-min);
  padding: var(--space-2) var(--space-3);
  border-block-end: var(--border-width-strong) solid transparent;
  color: var(--color-text-muted);
  font-size: var(--text-xs);
  font-weight: var(--weight-semibold);
  letter-spacing: var(--tracking-wide);
  line-height: var(--leading-tight);
  text-decoration: none;
  white-space: nowrap;
}

.insights-analytics-nav a[aria-current="page"] {
  border-block-end-color: var(--color-accent);
  background: var(--color-accent-soft);
  color: var(--color-text);
}

.insights-analytics-nav a:focus-visible {
  z-index: var(--z-base);
  outline: var(--border-width-strong) solid var(--color-focus-ring);
  outline-offset: calc(-1 * var(--border-width-strong));
}

[data-page="insights"] .insights-analytics-nav {
  position: sticky;
  z-index: var(--z-sticky);
  inset-block-start: var(--layout-topbar-block-size);
}

.insights-main > .insights-page-header__eyebrow,
.insights-page-header__eyebrow,
.insights-section__eyebrow,
.insights-panel__eyebrow,
.insights-control-label,
.insights-custom-range__label,
.insights-fact-card__eyebrow,
.insights-chart__eyebrow,
.insights-dashboard-card__eyebrow,
.insights-basket-card__eyebrow {
  margin: var(--space-0);
  color: var(--color-accent);
  font-family: var(--font-sans);
  font-size: var(--text-xs);
  font-weight: var(--weight-semibold);
  letter-spacing: var(--tracking-caps);
  line-height: var(--leading-tight);
  text-transform: uppercase;
}

/* Page, section, and control hierarchy ----------------------------------- */

.insights-page-header,
.insights-section,
.insights-panel {
  min-inline-size: var(--space-0);
}

.insights-page-header {
  display: grid;
  grid-template-columns: minmax(var(--space-0), 1fr);
  gap: var(--space-3);
  padding: var(--space-4);
  border: var(--border-default);
  border-radius: var(--radius-sm);
  background: var(--color-bg-raised);
}


.insights-page-header__heading,
.insights-section__heading {
  display: grid;
  gap: var(--space-1);
  min-inline-size: var(--space-0);
}

.insights-page-header__title,
.insights-section__title {
  color: var(--color-text);
  font-family: var(--font-display);
  font-weight: var(--weight-semibold);
  line-height: var(--leading-tight);
  letter-spacing: var(--tracking-snug);
}

.insights-page-header__title {
  font-size: var(--text-2xl);
}

.insights-section__title {
  font-size: var(--text-lg);
}

.insights-page-header__copy,
.insights-section__copy,
.insights-source-note,
.insights-coverage-note {
  color: var(--color-text-muted);
  font-size: var(--text-xs);
  line-height: var(--leading-relaxed);
}

.insights-page-header__copy {
  max-inline-size: var(--layout-readable-max);
}

.insights-page-header__actions,
.insights-section__actions,
.insights-toolbar,
.insights-control-group,
.insights-periods {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  min-inline-size: var(--space-0);
}

.insights-page-header__actions,
.insights-section__actions {
  gap: var(--space-2);
}

.insights-page-header__actions {
  align-self: center;
}

.insights-section {
  display: grid;
  grid-template-columns: minmax(var(--space-0), 1fr);
  gap: var(--space-3);
}

.insights-section__header {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  justify-content: space-between;
  min-inline-size: var(--space-0);
  min-block-size: var(--insights-section-header-min-block-size);
  gap: var(--space-3) var(--space-6);
}

.insights-section__meta,
.insights-updated-at {
  color: var(--color-text-subtle);
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  font-variant-numeric: tabular-nums;
  letter-spacing: var(--tracking-wide);
}

.insights-panel {
  border: var(--border-default);
  border-radius: var(--radius-sm);
  background: var(--color-bg-raised);
}

.insights-panel__header,
.insights-panel__body,
.insights-panel__footer {
  padding: var(--space-3) var(--space-4);
}

.insights-panel__header {
  border-block-end: var(--border-subtle);
}

.insights-panel__footer {
  border-block-start: var(--border-subtle);
}

.insights-toolbar {
  justify-content: space-between;
  gap: var(--space-3) var(--space-6);
  padding: var(--space-2) var(--space-3);
  border: var(--border-subtle);
  border-radius: var(--radius-sm);
  background: var(--color-bg-raised);
}

.insights-control-group {
  gap: var(--space-2);
}

.insights-control {
  display: grid;
  min-inline-size: min(100%, var(--space-32));
  gap: var(--space-1);
}

.insights-select,
.insights-screener__select {
  inline-size: auto;
  min-inline-size: var(--space-32);
  min-block-size: var(--space-9);
  border: var(--border-default);
  border-radius: var(--radius-sm);
  background: var(--color-control-bg);
  padding: var(--space-2) var(--space-3);
  color: var(--color-control-text);
  font-family: var(--font-sans);
  font-size: var(--text-sm);
  line-height: var(--leading-none);
  box-shadow: var(--shadow-inset);
}

.insights-periods {
  gap: var(--space-1);
  padding: var(--space-1);
  border: var(--border-subtle);
  border-radius: var(--radius-sm);
  background: var(--color-control-bg);
}

.insights-period-button,
.insights-segmented__button {
  min-inline-size: var(--space-12);
  min-block-size: var(--space-9);
  border: var(--border-width) solid transparent;
  border-radius: var(--radius-xs);
  background: transparent;
  padding: var(--space-2) var(--space-3);
  color: var(--color-text-muted);
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  font-weight: var(--weight-semibold);
  line-height: var(--leading-none);
  box-shadow: none;
}

.insights-period-button:is(.is-active, [aria-pressed="true"], [aria-current="true"]),
.insights-segmented__button:is(.is-active, [aria-pressed="true"], [aria-selected="true"]) {
  border-color: var(--color-border-strong);
  background: var(--color-surface-high);
  color: var(--color-text);
}

.insights-screener-range {
  display: grid;
  min-inline-size: var(--space-0);
  justify-items: end;
}

.insights-range-control {
  display: grid;
  justify-items: end;
  gap: var(--space-2);
}

.insights-period-button[data-pending="true"] {
  border-color: var(--color-info);
  color: var(--color-info);
}

.insights-custom-range {
  display: grid;
  grid-template-columns: repeat(2, minmax(var(--space-0), 1fr)) auto;
  align-items: end;
  gap: var(--space-2);
  inline-size: min(100%, 34rem);
  padding: var(--space-2);
  border: var(--border-subtle);
  border-radius: var(--radius-sm);
  background: var(--color-bg-raised);
}

.insights-custom-range[hidden] {
  display: none;
}

.insights-custom-range label {
  display: grid;
  min-inline-size: var(--space-0);
  gap: var(--space-1);
  color: var(--color-text-muted);
  font-size: var(--text-xs);
}

.insights-custom-range input {
  min-inline-size: var(--space-0);
  min-block-size: var(--size-touch-min);
}

.insights-custom-range button {
  min-block-size: var(--size-touch-min);
  padding-inline: var(--space-3);
}

.insights-range-feedback,
.insights-range-error {
  min-block-size: var(--space-5);
  margin: var(--space-0);
  color: var(--color-text-muted);
  font-size: var(--text-xs);
}

.insights-range-feedback {
  padding-inline: var(--space-4);
}

.insights-range-error {
  color: var(--color-error);
}

/* Dashboard summary and quiet KPI readouts ------------------------------- */

.insights-summary {
  display: grid;
  grid-template-columns: minmax(var(--space-0), 1fr);
  align-items: start;
  gap: var(--space-4);
}

.insights-summary__intro {
  display: grid;
  align-content: center;
  min-block-size: var(--insights-summary-intro-min-block-size);
  gap: var(--space-1);
  padding: var(--space-2) var(--space-4);
  border-block: var(--border-subtle);
}

.insights-summary__intro h1,
.insights-summary__intro h2 {
  color: var(--color-text);
  font-family: var(--font-display);
  font-size: var(--text-xl);
  font-weight: var(--weight-semibold);
  line-height: var(--leading-tight);
}

.insights-summary__intro p {
  max-inline-size: 52ch;
  color: var(--color-text-muted);
  font-size: var(--text-xs);
  line-height: var(--leading-relaxed);
}

.insights-kpi-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(var(--space-0), 1fr));
  gap: var(--space-4);
}

.insights-kpi {
  display: grid;
  grid-template-rows: repeat(3, auto);
  align-content: center;
  min-inline-size: var(--space-0);
  min-block-size: var(--insights-kpi-responsive-min-block-size);
  gap: var(--space-0-5);
  padding: var(--space-1) var(--space-3);
  border: var(--border-default);
  border-radius: var(--radius-sm);
  background: var(--color-bg-raised);
}

.insights-kpi__value,
.insights-fact__value {
  align-self: center;
  overflow: hidden;
  color: var(--color-text);
  font-family: var(--font-mono);
  font-size: var(--text-xl);
  font-variant-numeric: tabular-nums;
  font-weight: var(--weight-semibold);
  letter-spacing: var(--tracking-tight);
  line-height: var(--leading-none);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.insights-kpi__value {
  overflow: visible;
  line-height: var(--leading-tight);
  overflow-wrap: anywhere;
  text-overflow: clip;
  white-space: normal;
}

.insights-kpi__value[data-exact-value] {
  display: grid;
  gap: var(--space-0-5);
}

.insights-kpi__value[data-exact-value]::after {
  color: var(--color-text-secondary);
  font-size: var(--text-xs);
  font-weight: var(--weight-medium);
  letter-spacing: normal;
  line-height: var(--leading-snug);
  content: attr(data-exact-value);
}

.insights-kpi__meta {
  min-inline-size: var(--space-0);
  color: var(--color-text-muted);
  font-size: var(--text-xs);
  line-height: var(--leading-snug);
  overflow-wrap: anywhere;
}

.insights-fact__meta {
  min-inline-size: var(--space-0);
  color: var(--color-text-muted);
  font-size: var(--text-xs);
  line-height: var(--leading-snug);
  overflow-wrap: anywhere;
  white-space: normal;
}

.insights-kpi[data-status="partial"] .insights-kpi__meta,
.insights-coverage-note[data-status="partial"] {
  color: var(--color-warning);
}

.insights-kpi[data-status="unavailable"] .insights-kpi__value,
.insights-value[data-status="unavailable"] {
  color: var(--color-text-subtle);
}

.insights-dashboard,
.insights-dashboard-grid,
.insights-chart-grid {
  display: grid;
  grid-template-columns: minmax(var(--space-0), 1fr);
  gap: var(--space-4);
}

/* Shared chart frame ------------------------------------------------------ */

.insights-chart,
.insights-dashboard-card,
.insights-performance-chart,
.insights-screener,
.insights-bubble,
.insights-heatmap {
  position: relative;
  min-inline-size: var(--space-0);
  overflow: clip;
  border: var(--border-default);
  border-radius: var(--radius-xs);
  background: var(--color-bg-raised);
  color: var(--color-text-secondary);
  container-name: insights-chart;
  container-type: inline-size;
}

.insights-chart,
.insights-dashboard-card {
  display: grid;
  grid-template-rows: auto minmax(var(--space-0), 1fr) auto;
  min-block-size: var(--insights-chart-block-size);
}

.insights-chart__header,
.insights-dashboard-card__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-inline-size: var(--space-0);
  min-block-size: var(--insights-chart-header-block-size);
  gap: var(--space-3);
  padding: var(--space-3) var(--space-4);
  border-block-end: var(--border-subtle);
}

.insights-chart__heading,
.insights-dashboard-card__heading {
  display: grid;
  min-inline-size: var(--space-0);
  gap: var(--space-0-5);
}

.insights-chart__title,
.insights-dashboard-card__title {
  overflow: hidden;
  color: var(--color-text);
  font-size: var(--text-sm);
  font-weight: var(--weight-semibold);
  line-height: var(--leading-snug);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.insights-chart__meta,
.insights-dashboard-card__meta {
  overflow: hidden;
  color: var(--color-text-subtle);
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  font-variant-numeric: tabular-nums;
  line-height: var(--leading-snug);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.insights-chart__caption .insights-chart__meta {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: var(--space-1) var(--space-2);
  overflow: visible;
  white-space: normal;
}

.insights-chart__caption .insights-chart__source + .insights-chart__coverage::before {
  margin-inline-end: var(--space-2);
  color: var(--color-border-strong);
  content: "·";
}

.insights-chart__body,
.insights-dashboard-card__body {
  display: grid;
  grid-template-columns: minmax(var(--space-0), 1fr);
  min-inline-size: var(--space-0);
  min-block-size: var(--space-0);
}

.insights-chart__plot,
.insights-chart__stage,
.insights-dashboard-card__plot {
  position: relative;
  min-inline-size: var(--space-0);
  min-block-size: var(--space-0);
  overflow: clip;
  background: var(--color-bg);
  isolation: isolate;
}

.insights-chart__plot,
.insights-dashboard-card__plot {
  padding: var(--space-1);
}

/* Dashboard measurements are isolated in a visual shell. The caption and
   semantic disclosure remain outside it, so accessibility rows never consume
   the reference plot height. */
.insights-chart:has(> .insights-dashboard-panel__visual) {
  display: grid;
  grid-template-rows: auto auto auto;
  align-content: start;
  min-block-size: var(--space-0);
  overflow: visible;
  border: var(--space-0);
  border-radius: var(--radius-none);
  background: transparent;
}

.insights-dashboard-panel__visual {
  display: grid;
  grid-template-rows:
    var(--insights-chart-header-block-size)
    var(--insights-dashboard-body-block-size);
  block-size: var(--insights-chart-block-size);
  overflow: clip;
  border: var(--border-default);
  border-radius: var(--radius-xs);
  background: var(--color-bg-raised);
}

.insights-bubble {
  grid-template-rows:
    var(--insights-chart-header-block-size)
    var(--insights-dashboard-body-block-size)
    auto
    auto
    auto;
  align-content: start;
  min-block-size: var(--space-0);
}

.insights-heatmap {
  grid-template-rows:
    var(--insights-chart-header-block-size)
    var(--insights-dashboard-body-block-size)
    auto
    auto;
  align-content: start;
  min-block-size: var(--space-0);
}

.insights-dashboard-panel__visual > .insights-chart__header {
  block-size: var(--insights-chart-header-block-size);
  min-block-size: var(--space-0);
}

.insights-dashboard-panel__body {
  display: grid;
  grid-template-columns: minmax(var(--space-0), 1fr);
  block-size: var(--insights-dashboard-body-block-size);
  min-inline-size: var(--space-0);
  min-block-size: var(--space-0);
}

.insights-dashboard-panel__body > .insights-chart__plot {
  block-size: 100%;
}

.insights-dashboard-panel__sidecar {
  display: none;
  min-inline-size: var(--space-0);
  overflow: hidden;
  padding: var(--space-3);
  border-inline-start: var(--border-subtle);
  background: var(--color-bg-raised);
}

.insights-dashboard-panel__sidecar-title {
  display: block;
  margin-block-end: var(--space-2);
  color: var(--color-text-subtle);
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  font-weight: var(--weight-semibold);
  letter-spacing: var(--tracking-caps);
  line-height: var(--leading-snug);
  text-transform: uppercase;
}

.insights-dashboard-panel__sidecar ul {
  display: grid;
  gap: var(--space-1);
  margin: var(--space-0);
  padding: var(--space-0);
  list-style: none;
}

.insights-dashboard-panel__sidecar li {
  display: grid;
  grid-template-columns: minmax(var(--space-0), 1fr) minmax(var(--space-0), auto);
  align-items: baseline;
  min-block-size: var(--space-8);
  gap: var(--space-2);
  border-block-end: var(--border-subtle);
  color: var(--color-text-muted);
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  font-variant-numeric: tabular-nums;
}

.insights-dashboard-panel__sidecar li > span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.insights-dashboard-panel__sidecar li > strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--color-text);
  font-weight: var(--weight-semibold);
  text-align: end;
}

.insights-chart__stage {
  block-size: var(--insights-plot-compact-block-size);
  touch-action: pan-y;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
}

.insights-chart__explorer,
[data-page="insights"] [data-spatial-explorer],
.insights-chart__svg[data-chart-explorer] {
  position: relative;
  inline-size: 100%;
  block-size: 100%;
  min-inline-size: var(--space-0);
  overflow: hidden;
  border-radius: var(--radius-xs);
  outline: none;
  cursor: default;
  touch-action: pan-y;
}

.insights-chart__explorer:focus-visible,
[data-page="insights"] [data-spatial-explorer]:focus-visible,
.insights-chart__svg[data-chart-explorer]:focus-visible {
  outline: var(--border-width-strong) solid var(--color-focus-ring);
  outline-offset: calc(var(--border-width-strong) * -1);
  box-shadow: inset var(--space-0) var(--space-0) var(--space-0) var(--space-1) var(--color-accent-soft);
}

.insights-chart__svg {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  max-inline-size: 100%;
  overflow: hidden;
  font-family: var(--font-mono);
  font-variant-numeric: tabular-nums;
  shape-rendering: geometricPrecision;
}

.insights-chart__grid,
.insights-chart__axis {
  fill: none;
  stroke: var(--color-border-subtle);
  stroke-width: var(--border-width);
  vector-effect: non-scaling-stroke;
}

.insights-chart__grid {
  pointer-events: none;
  shape-rendering: crispEdges;
}

.insights-chart__axis {
  stroke: var(--color-border);
}

.insights-chart__tick {
  fill: var(--color-text-subtle);
  color: var(--color-text-subtle);
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  font-variant-numeric: tabular-nums;
  pointer-events: none;
}

.insights-chart__grid text,
.insights-chart__axis text,
.insights-chart__axis-label {
  fill: var(--color-text-subtle);
  stroke: none;
  color: var(--color-text-subtle);
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  font-variant-numeric: tabular-nums;
  pointer-events: none;
}

.insights-chart__axis-label {
  letter-spacing: var(--tracking-wide);
}

.insights-chart__interaction-layer {
  fill: transparent;
  pointer-events: all;
  cursor: default;
}

.insights-chart__caption {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  min-inline-size: var(--space-0);
  min-block-size: var(--insights-chart-caption-min-block-size);
  gap: var(--space-1) var(--space-4);
  padding: var(--space-3) var(--space-4);
  border-block-start: var(--border-subtle);
  color: var(--color-text-subtle);
  font-size: var(--text-xs);
  line-height: var(--leading-relaxed);
}

.insights-dashboard-grid .insights-chart__caption {
  min-block-size: var(--insights-dashboard-caption-min-block-size);
}

.insights-chart__source,
.insights-chart__coverage {
  min-inline-size: var(--space-0);
}

.insights-chart__source {
  color: var(--color-text-muted);
}

.insights-chart__coverage {
  font-family: var(--font-mono);
  font-variant-numeric: tabular-nums;
}

.insights-chart__coverage[data-status="partial"] {
  color: var(--color-warning);
}

.insights-chart__legend {
  display: flex;
  flex-wrap: wrap;
  align-content: start;
  gap: var(--space-2) var(--space-3);
  min-inline-size: var(--space-0);
  padding: var(--space-3);
  border-block-start: var(--border-subtle);
  background: var(--color-bg-raised);
}

.insights-chart__legend-item {
  display: grid;
  grid-template-columns: auto minmax(var(--space-0), 1fr) auto;
  align-items: center;
  min-inline-size: var(--space-20);
  gap: var(--space-2);
  color: var(--color-text-muted);
  font-size: var(--text-xs);
}

.insights-chart__legend-swatch,
.insights-chart-tooltip__swatch {
  inline-size: var(--space-2);
  block-size: var(--space-2);
  flex: none;
  border-radius: var(--radius-pill);
  background: var(--insights-series-color, var(--color-info));
}

.insights-chart__legend-value,
.insights-chart-tooltip__value {
  color: var(--color-text);
  font-family: var(--font-mono);
  font-variant-numeric: tabular-nums;
  text-align: end;
}

.insights-chart [data-ticker="AAPL"] {
  --insights-series-color: var(--insights-series-aapl);
}

.insights-chart [data-ticker="NVDA"] {
  --insights-series-color: var(--insights-series-nvda);
}

.insights-chart [data-ticker="TSLA"] {
  --insights-series-color: var(--insights-series-tsla);
}

.insights-chart [data-ticker="MSFT"] {
  --insights-series-color: var(--insights-series-msft);
}

.insights-chart [data-ticker="AMZN"] {
  --insights-series-color: var(--insights-series-amzn);
}

.insights-chart [data-ticker="GOOGL"] {
  --insights-series-color: var(--insights-series-googl);
}

.insights-chart [data-ticker="SPY"] {
  --insights-series-color: var(--insights-series-spy);
}

.insights-chart [data-ticker="QQQ"] {
  --insights-series-color: var(--insights-series-qqq);
}

.insights-chart-tooltip {
  position: absolute;
  z-index: var(--z-dropdown);
  top: var(--space-0);
  right: auto;
  bottom: auto;
  left: var(--space-0);
  inline-size: max-content;
  max-inline-size: min(var(--insights-tooltip-max-size), calc(100% - var(--space-4)));
  overflow: hidden;
  border: var(--border-default);
  border-radius: var(--radius-xs);
  background: var(--color-surface-elevated);
  padding: var(--space-2-5);
  color: var(--color-text-secondary);
  font-size: var(--text-xs);
  line-height: var(--leading-normal);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  box-shadow: var(--shadow-md);
  transition: transform var(--insights-tooltip-duration) var(--ease-out);
  will-change: transform;
}

.insights-chart-tooltip:is([data-visible="true"], .is-visible) {
  visibility: visible;
  opacity: 1;
}

.insights-chart-tooltip:not([hidden]) {
  visibility: visible;
  opacity: 1;
}

.insights-chart-tooltip[hidden] {
  display: none;
}

.insights-chart-tooltip__title {
  margin-block-end: var(--space-2);
  color: var(--color-text);
  font-family: var(--font-mono);
  font-size: var(--text-sm);
  font-variant-numeric: tabular-nums;
  font-weight: var(--weight-semibold);
}

.insights-chart-tooltip__list {
  display: grid;
  gap: var(--space-1);
  margin: var(--space-0);
  padding: var(--space-0);
  list-style: none;
}

.insights-chart-tooltip__row {
  display: grid;
  grid-template-columns: auto minmax(var(--space-0), 1fr) auto;
  align-items: center;
  min-block-size: var(--space-6);
  gap: var(--space-2);
}

.insights-chart-tooltip__label {
  overflow: hidden;
  color: var(--color-text-muted);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.insights-chart-tooltip > strong {
  display: block;
  margin-block-end: var(--space-2);
  color: var(--color-text);
  font-family: var(--font-mono);
  font-size: var(--text-sm);
  font-variant-numeric: tabular-nums;
  font-weight: var(--weight-semibold);
}

.insights-chart-tooltip > ul {
  display: grid;
  gap: var(--space-1);
  margin: var(--space-0);
  padding: var(--space-0);
  list-style: none;
}

.insights-chart-tooltip > ul > li {
  display: grid;
  grid-template-columns: minmax(var(--space-0), 1fr) auto;
  align-items: center;
  min-block-size: var(--space-6);
  gap: var(--space-3);
}

.insights-chart-tooltip > ul > li > span {
  display: flex;
  align-items: center;
  min-inline-size: var(--space-0);
  gap: var(--space-2);
  color: var(--color-text-muted);
}

.insights-chart-tooltip > ul i {
  display: inline-block;
  inline-size: var(--space-2);
  block-size: var(--space-2);
  flex: none;
  border-radius: var(--radius-pill);
}

.insights-chart-tooltip > ul b {
  color: var(--color-text);
  font-family: var(--font-mono);
  font-variant-numeric: tabular-nums;
  font-weight: var(--weight-semibold);
}

.insights-chart-tooltip > dl {
  display: grid;
  gap: var(--space-1);
  margin: var(--space-0);
}

.insights-chart-tooltip > dl > div {
  display: grid;
  grid-template-columns: minmax(var(--space-0), 1fr) auto;
  gap: var(--space-3);
  min-block-size: var(--space-6);
}

.insights-chart-tooltip > dl dt {
  color: var(--color-text-muted);
}

.insights-chart-tooltip > dl dd {
  margin: var(--space-0);
  color: var(--color-text);
  font-family: var(--font-mono);
  font-variant-numeric: tabular-nums;
  text-align: end;
}

.insights-chart-tooltip[data-presentation="floating"],
.insights-chart[data-tooltip-presentation="floating"] [data-chart-tooltip],
.insights-chart[data-tooltip-mode="floating"] .insights-chart-tooltip {
  top: var(--space-0);
  right: auto;
  bottom: auto;
  left: var(--space-0);
  inline-size: max-content;
  max-inline-size: min(var(--insights-tooltip-max-size), calc(100% - var(--space-4)));
}

.insights-chart-tooltip[data-presentation="docked"],
.insights-chart[data-tooltip-presentation="docked"] [data-chart-tooltip],
.insights-chart[data-tooltip-mode="docked"] .insights-chart-tooltip {
  top: auto;
  right: var(--insights-tooltip-safe-inset);
  bottom: var(--insights-tooltip-safe-inset);
  left: var(--insights-tooltip-safe-inset);
  inline-size: auto;
  max-inline-size: none;
  transform: none !important;
  transition: none;
  will-change: auto;
}

.insights-chart-tooltip[data-presentation="hidden"],
.insights-chart[data-tooltip-presentation="hidden"] [data-chart-tooltip],
.insights-chart[data-tooltip-mode="hidden"] .insights-chart-tooltip {
  top: var(--space-0);
  right: auto;
  bottom: auto;
  left: var(--space-0);
  display: none;
  transform: none !important;
  transition: none;
  will-change: auto;
}

/* Semantic View data disclosures ---------------------------------------- */

.insights-chart__data-disclosure,
.insights-chart-data {
  border-block-start: var(--border-subtle);
  background: var(--color-bg-raised);
}

.insights-chart__data-disclosure > summary,
.insights-chart-data > summary {
  min-block-size: var(--size-touch-min);
  padding: var(--space-3) var(--space-4);
  color: var(--color-text-secondary);
  font-size: var(--text-xs);
  font-weight: var(--weight-semibold);
  line-height: var(--leading-normal);
  cursor: pointer;
}

.insights-chart__data-disclosure > summary::marker,
.insights-chart-data > summary::marker {
  color: var(--color-accent-muted);
}

.insights-chart__data-disclosure[open] > summary,
.insights-chart-data[open] > summary {
  border-block-end: var(--border-subtle);
  color: var(--color-text);
}

.insights-chart__data-table {
  max-inline-size: 100%;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  -webkit-overflow-scrolling: touch;
}

.insights-chart__data-table > table,
.insights-chart-data__scroller > table,
.insights-chart-data__table {
  inline-size: 100%;
  border-collapse: collapse;
  font-size: var(--text-xs);
}

.insights-chart-data__scroller,
.insights-chart__data-scroller {
  max-inline-size: 100%;
  max-block-size: min(60dvh, calc(var(--space-32) * 3.5));
  overflow: auto;
  scrollbar-color: var(--color-border-strong) var(--color-surface);
  scrollbar-width: thin;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
}

.insights-chart__data-disclosure > summary:focus-visible,
.insights-chart-data > summary:focus-visible,
.insights-chart__data-table:focus-visible,
.insights-chart-data__scroller:focus-visible,
.insights-chart__data-scroller:focus-visible {
  outline: var(--border-width-strong) solid var(--color-focus-ring);
  outline-offset: calc(var(--border-width-strong) * -1);
}

.insights-chart__data-table :is(th, td),
.insights-chart-data__scroller :is(th, td),
.insights-chart-data__table :is(th, td) {
  padding: var(--space-2) var(--space-3);
  border-block-end: var(--border-subtle);
  white-space: nowrap;
}

.insights-chart-data__scroller thead th {
  position: sticky;
  z-index: calc(var(--z-base) + 1);
  inset-block-start: var(--space-0);
}

.insights-chart-data__scroller :is(thead, tbody) tr > th:first-child {
  position: sticky;
  z-index: var(--z-base);
  inset-inline-start: var(--space-0);
  border-inline-end: var(--border-subtle);
  background: var(--color-bg-raised);
  text-align: start;
}

.insights-chart-data__scroller thead tr > th:first-child {
  z-index: calc(var(--z-base) + 2);
}

.insights-chart__data-table th,
.insights-chart-data__scroller th,
.insights-chart-data__table th {
  background: var(--color-bg-raised);
  color: var(--color-text-subtle);
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  letter-spacing: var(--tracking-wide);
}

.insights-chart__data-table :is([data-numeric], .insights-numeric, td),
.insights-chart-data__scroller :is([data-numeric], .insights-numeric, td),
.insights-chart-data__table :is([data-numeric], .insights-numeric, td) {
  font-family: var(--font-mono);
  font-variant-numeric: tabular-nums;
  text-align: end;
}

.insights-chart-data__details {
  margin: var(--space-0);
  padding: var(--space-2) var(--space-4);
  color: var(--color-text-muted);
  font-size: var(--text-xs);
  line-height: var(--leading-relaxed);
  overflow-wrap: anywhere;
}

.insights-chart-data__details + .insights-chart-data__details {
  padding-block-start: var(--space-0);
}

.insights-chart-data__unavailable {
  display: grid;
  gap: var(--space-2);
  padding: var(--space-3) var(--space-4);
  border-block-end: var(--border-subtle);
  color: var(--color-text-muted);
  font-size: var(--text-xs);
}

.insights-chart-data__unavailable strong {
  color: var(--color-text-secondary);
}

.insights-chart-data__unavailable ul {
  display: grid;
  gap: var(--space-1);
  margin: var(--space-0);
  padding-inline-start: var(--space-5);
}

.insights-chart__data-disclosure .insights-chart__meta {
  flex-wrap: wrap;
  overflow: visible;
  text-overflow: clip;
  white-space: normal;
}

.insights-chart-data__scroller [data-direction="positive"],
.insights-chart__data-table [data-direction="positive"],
.insights-chart-tooltip [data-direction="positive"],
.insights-chart-tooltip[data-direction="positive"],
.insights-bubble__readout[data-direction="positive"] {
  color: var(--color-success);
}

.insights-chart-data__scroller [data-direction="negative"],
.insights-chart__data-table [data-direction="negative"],
.insights-chart-tooltip [data-direction="negative"],
.insights-chart-tooltip[data-direction="negative"],
.insights-bubble__readout[data-direction="negative"] {
  color: var(--color-error);
}

.insights-chart-data__scroller [data-direction="flat"],
.insights-chart-data__scroller [data-direction="unavailable"],
.insights-chart__data-table [data-direction="flat"],
.insights-chart__data-table [data-direction="unavailable"],
.insights-chart-tooltip [data-direction="flat"],
.insights-chart-tooltip [data-direction="unavailable"],
.insights-chart-tooltip[data-direction="flat"],
.insights-chart-tooltip[data-direction="unavailable"],
.insights-bubble__readout:is([data-direction="flat"], [data-direction="unavailable"]) {
  color: var(--color-text-muted);
}
.insights-fact__value[data-direction="positive"] {
  color: var(--color-success);
}

.insights-fact__value[data-direction="negative"] {
  color: var(--color-error);
}

.insights-fact__value:is([data-direction="flat"], [data-direction="unavailable"]) {
  color: var(--color-text-muted);
}

.insights-chart-data__empty {
  padding: var(--space-4);
  color: var(--color-text-muted);
  font-size: var(--text-xs);
  text-align: center;
}

/* Performance explorer --------------------------------------------------- */

.insights-performance-chart {
  display: grid;
  grid-template-rows: minmax(var(--space-0), 1fr) auto auto;
}

.insights-performance-chart .insights-chart__stage {
  block-size: var(--insights-performance-block-size);
}

.insights-performance-chart__svg {
  touch-action: pan-y;
}

.insights-performance-chart__svg > text {
  fill: var(--color-text-muted);
  color: var(--color-text-muted);
  font-family: var(--font-mono);
  font-size: var(--text-xs);
}

.insights-performance-chart [data-performance-series="AAPL"],
.insights-performance-chart__dot[data-performance-dot="AAPL"],
.insights-screener [data-screener-point="AAPL"] {
  --insights-series-color: var(--insights-series-aapl);
}

.insights-performance-chart [data-performance-series="NVDA"],
.insights-performance-chart__dot[data-performance-dot="NVDA"],
.insights-screener [data-screener-point="NVDA"] {
  --insights-series-color: var(--insights-series-nvda);
}

.insights-performance-chart [data-performance-series="TSLA"],
.insights-performance-chart__dot[data-performance-dot="TSLA"],
.insights-screener [data-screener-point="TSLA"] {
  --insights-series-color: var(--insights-series-tsla);
}

.insights-performance-chart [data-performance-series="MSFT"],
.insights-performance-chart__dot[data-performance-dot="MSFT"],
.insights-screener [data-screener-point="MSFT"] {
  --insights-series-color: var(--insights-series-msft);
}

.insights-performance-chart [data-performance-series="AMZN"],
.insights-performance-chart__dot[data-performance-dot="AMZN"],
.insights-screener [data-screener-point="AMZN"] {
  --insights-series-color: var(--insights-series-amzn);
}

.insights-performance-chart [data-performance-series="GOOGL"],
.insights-performance-chart__dot[data-performance-dot="GOOGL"],
.insights-screener [data-screener-point="GOOGL"] {
  --insights-series-color: var(--insights-series-googl);
}

.insights-performance-chart [data-performance-series="SPY"],
.insights-performance-chart__dot[data-performance-dot="SPY"],
.insights-screener [data-screener-point="SPY"] {
  --insights-series-color: var(--insights-series-spy);
}

.insights-performance-chart [data-performance-series="QQQ"],
.insights-performance-chart__dot[data-performance-dot="QQQ"],
.insights-screener [data-screener-point="QQQ"] {
  --insights-series-color: var(--insights-series-qqq);
}

.insights-performance-chart [data-performance-series][data-direction="positive"] {
  --insights-series-color: var(--color-success);
}

.insights-performance-chart [data-performance-series][data-direction="negative"] {
  --insights-series-color: var(--color-error);
}

.insights-performance-chart [data-performance-series][data-direction="flat"],
.insights-performance-chart [data-performance-series][data-direction="unavailable"] {
  --insights-series-color: var(--color-text-muted);
}
.insights-performance-chart__dot[data-direction="positive"],
.insights-chart-tooltip [data-performance-series][data-direction="positive"],
.insights-screener [data-screener-point][data-direction="positive"] {
  --insights-series-color: var(--color-success);
}

.insights-performance-chart__dot[data-direction="negative"],
.insights-chart-tooltip [data-performance-series][data-direction="negative"],
.insights-screener [data-screener-point][data-direction="negative"] {
  --insights-series-color: var(--color-error);
}

.insights-performance-chart__dot:is([data-direction="flat"], [data-direction="unavailable"]),
.insights-chart-tooltip [data-performance-series]:is([data-direction="flat"], [data-direction="unavailable"]),
.insights-screener [data-screener-point]:is([data-direction="flat"], [data-direction="unavailable"]) {
  --insights-series-color: var(--color-text-muted);
}

.insights-performance-chart__line-depth,
.insights-performance-chart__line,
.insights-performance-chart__leader,
.insights-performance-chart__endpoint-dot {
  stroke: var(--insights-series-color, var(--color-info));
  vector-effect: non-scaling-stroke;
  pointer-events: none;
}

.insights-performance-chart__line-depth,
.insights-performance-chart__line {
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.insights-performance-chart__line-depth {
  stroke-width: 6px;
  opacity: 0.12;
}

.insights-performance-chart__line {
  stroke-width: 2.25px;
}

.insights-performance-chart__leader {
  stroke-width: 1px;
  opacity: 0.45;
}

.insights-performance-chart__endpoint-dot {
  fill: var(--color-bg);
  stroke-width: 2.25px;
}

.insights-performance-chart__endpoint {
  fill: var(--insights-series-color, var(--color-info));
  color: var(--insights-series-color, var(--color-info));
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  font-variant-numeric: tabular-nums;
  font-weight: var(--weight-semibold);
  pointer-events: none;
}

.insights-performance-chart [data-performance-series] {
  transition: opacity var(--duration-fast) var(--ease-out), filter var(--duration-fast) var(--ease-out);
}

.insights-performance-chart[data-active-series]:not([data-active-series=""])
  [data-performance-series][data-active="false"] {
  opacity: 0.32;
}

.insights-performance-chart [data-performance-series][data-active="true"] {
  filter: brightness(1.25);
}

.insights-performance-chart__guide {
  stroke: var(--color-border-strong);
  stroke-width: var(--border-width);
  vector-effect: non-scaling-stroke;
  pointer-events: none;
}

.insights-performance-chart__dot {
  fill: var(--insights-series-color, var(--color-info));
  stroke: var(--color-bg);
  stroke-width: var(--border-width-strong);
  vector-effect: non-scaling-stroke;
  pointer-events: none;
}

.insights-performance-chart [data-performance-empty] {
  fill: var(--color-text-muted);
  color: var(--color-text-muted);
  font-family: var(--font-mono);
  font-size: var(--text-xs);
}

/* Fixed-point screener --------------------------------------------------- */

.insights-screener {
  display: grid;
  grid-template-rows: auto auto auto auto auto;
  align-content: start;
}

.insights-screener__selectors {
  display: grid;
  grid-template-columns: repeat(2, minmax(var(--space-0), 1fr)) auto;
  align-items: end;
  gap: var(--space-3);
  padding: var(--space-3) var(--space-4);
  border-block-end: var(--border-subtle);
}

.insights-screener__selectors label {
  display: grid;
  min-inline-size: var(--space-0);
  gap: var(--space-1);
  color: var(--color-text-muted);
  font-size: var(--text-xs);
  font-weight: var(--weight-medium);
}

.insights-screener__select {
  inline-size: 100%;
  min-inline-size: var(--space-0);
}

.insights-screener [data-screener-reset] {
  min-block-size: var(--size-touch-min);
  padding: var(--space-2) var(--space-3);
  border: var(--border-default);
  border-radius: var(--radius-sm);
  background: var(--color-control-bg);
  color: var(--color-text-secondary);
  font-family: var(--font-sans);
  font-size: var(--text-xs);
  font-weight: var(--weight-semibold);
  line-height: var(--leading-none);
  box-shadow: none;
}

.insights-screener [data-screener-reset]:disabled {
  border-color: var(--color-border-subtle);
  background: var(--color-control-bg-disabled);
  color: var(--color-text-disabled);
  cursor: not-allowed;
}

.insights-screener__zoom-controls {
  display: grid;
  grid-template-columns: repeat(3, minmax(var(--space-0), 1fr));
  align-items: end;
  gap: var(--space-3);
  padding: var(--space-3) var(--space-4);
  border-block-end: var(--border-subtle);
  background: var(--color-bg-raised);
}

.insights-screener__zoom-control {
  display: grid;
  min-inline-size: var(--space-0);
  gap: var(--space-1);
  color: var(--color-text-muted);
  font-size: var(--text-xs);
  font-weight: var(--weight-medium);
  line-height: var(--leading-snug);
}

.insights-screener__zoom-slider {
  inline-size: 100%;
  min-inline-size: var(--space-0);
  block-size: var(--size-touch-min);
  min-block-size: var(--size-touch-min);
  margin: var(--space-0);
  accent-color: var(--color-accent);
  cursor: ew-resize;
}

.insights-screener__zoom-slider:disabled {
  cursor: not-allowed;
  opacity: var(--opacity-disabled);
}

.insights-screener__zoom-slider:focus-visible {
  outline: var(--border-width-strong) solid var(--color-focus-ring);
  outline-offset: calc(var(--border-width-strong) * -1);
}

.insights-screener__zero-axis {
  stroke: var(--color-border-strong);
  stroke-width: var(--border-width);
  stroke-dasharray: var(--space-1) var(--space-1);
  vector-effect: non-scaling-stroke;
  pointer-events: none;
}

.insights-screener__quadrant {
  fill: var(--color-text-subtle);
  color: var(--color-text-subtle);
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  letter-spacing: var(--tracking-wide);
  pointer-events: none;
}

.insights-screener__zoom {
  color: var(--color-text-secondary);
}

.insights-screener__zoom-track {
  cursor: pointer;
  touch-action: pan-y;
}

.insights-screener__zoom-window {
  cursor: grab;
  touch-action: pan-y;
}

.insights-screener__zoom-handle {
  cursor: ew-resize;
  touch-action: pan-y;
}

.insights-screener__zoom-hit {
  pointer-events: all;
  touch-action: pan-y;
}

.insights-screener__zoom-hit[data-screener-zoom="track"] {
  cursor: pointer;
}

.insights-screener__zoom-hit[data-screener-zoom="window"] {
  cursor: grab;
}

.insights-screener__zoom-hit:is(
  [data-screener-zoom="start"],
  [data-screener-zoom="end"]
) {
  cursor: ew-resize;
}

.insights-screener__point,
.insights-screener__hit {
  cursor: pointer;
}

.insights-screener__point {
  color: var(--insights-series-color, var(--color-accent));
  fill: var(--insights-series-color, var(--color-accent));
  stroke: color-mix(in srgb, var(--insights-series-color, var(--color-accent)) 58%, var(--color-bg));
  stroke-width: var(--border-width);
  opacity: 1;
  paint-order: stroke fill;
  transform-box: fill-box;
  transform-origin: center;
  transform: scale(1);
  transition:
    transform var(--duration-fast) var(--ease-out),
    filter var(--duration-fast) var(--ease-out),
    stroke var(--duration-fast) var(--ease-out);
}

.insights-screener__hit {
  fill: transparent;
  stroke: transparent;
  pointer-events: all;
}

.insights-screener__point-label {
  fill: var(--color-text-secondary);
  color: var(--color-text-secondary);
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  font-weight: var(--weight-semibold);
  pointer-events: none;
}

.insights-screener :is(
  .insights-screener__point.is-active,
  .insights-screener__point[data-active="true"],
  .insights-screener__point[aria-current="true"],
  [data-active-ticker="AAPL"] [data-screener-point="AAPL"] .insights-screener__point,
  [data-active-ticker="NVDA"] [data-screener-point="NVDA"] .insights-screener__point,
  [data-active-ticker="TSLA"] [data-screener-point="TSLA"] .insights-screener__point,
  [data-active-ticker="MSFT"] [data-screener-point="MSFT"] .insights-screener__point,
  [data-active-ticker="AMZN"] [data-screener-point="AMZN"] .insights-screener__point,
  [data-active-ticker="GOOGL"] [data-screener-point="GOOGL"] .insights-screener__point,
  [data-active-ticker="SPY"] [data-screener-point="SPY"] .insights-screener__point,
  [data-active-ticker="QQQ"] [data-screener-point="QQQ"] .insights-screener__point
) {
  filter: brightness(1.32) saturate(1.08);
  stroke: var(--color-text);
  stroke-width: var(--border-width-strong);
}

/* Packed bubbles: exact return area with layered semantic marks ----------- */

.insights-bubble__node {
  color: inherit;
  text-decoration: none;
  cursor: pointer;
  pointer-events: visiblePainted;
  -webkit-tap-highlight-color: transparent;
}

.insights-bubble__target {
  fill: var(--color-text);
  fill-opacity: 0.01;
  stroke: none;
  pointer-events: all;
  touch-action: manipulation;
}

.insights-bubble__halo,
.insights-bubble__disc,
.insights-bubble__rim {
  vector-effect: non-scaling-stroke;
  pointer-events: none;
}

.insights-bubble__halo {
  fill: none;
  stroke: var(--color-info);
  stroke-width: 6px;
  opacity: 0.12;
}

.insights-bubble__disc {
  fill: var(--color-info-soft);
  stroke: none;
}

.insights-bubble__rim {
  fill: none;
  stroke: var(--color-info);
  stroke-width: var(--border-width-strong);
}

.insights-bubble__node:is([data-sign="positive"], [data-direction="positive"]) .insights-bubble__disc {
  fill: var(--color-success-soft);
}

.insights-bubble__node:is([data-sign="positive"], [data-direction="positive"]) :is(.insights-bubble__halo, .insights-bubble__rim) {
  stroke: var(--color-success);
}

.insights-bubble__node:is([data-sign="negative"], [data-direction="negative"]) .insights-bubble__disc {
  fill: var(--color-error-soft);
}

.insights-bubble__node:is([data-sign="negative"], [data-direction="negative"]) :is(.insights-bubble__halo, .insights-bubble__rim) {
  stroke: var(--color-error);
}

.insights-bubble__node[data-area-scaled="false"] :is(.insights-bubble__disc, .insights-bubble__rim) {
  fill: var(--color-bg-raised);
  stroke: var(--color-text-subtle);
  stroke-dasharray: var(--space-1) var(--space-1);
}

.insights-bubble__logo {
  opacity: 0.38;
  pointer-events: none;
}

.insights-bubble__node:is(:focus-visible, [data-active="true"])
  :is(.insights-bubble__halo, .insights-bubble__disc, .insights-bubble__rim, .insights-bubble__logo, text) {
  filter: brightness(1.25);
  opacity: 1;
}

.insights-bubble__ticker,
.insights-bubble__value {
  fill: var(--color-text);
  color: var(--color-text);
  font-family: var(--font-mono);
  font-variant-numeric: tabular-nums;
  text-anchor: middle;
  pointer-events: none;
}

.insights-bubble__ticker {
  font-size: var(--text-xs);
  font-weight: var(--weight-semibold);
}

.insights-bubble__node[data-label-tier="full"] .insights-bubble__ticker {
  font-size: var(--text-sm);
}

.insights-bubble__node[data-label-tier="ticker"] .insights-bubble__ticker {
  font-size: var(--text-2xs);
}

.insights-bubble__value {
  fill: var(--color-text-muted);
  color: var(--color-text-muted);
  font-size: var(--text-xs);
}

.insights-bubble__node[data-direction="positive"] .insights-bubble__value {
  fill: var(--color-success);
  color: var(--color-success);
}

.insights-bubble__node[data-direction="negative"] .insights-bubble__value {
  fill: var(--color-error);
  color: var(--color-error);
}

.insights-bubble__node:is([data-direction="flat"], [data-direction="unavailable"]) .insights-bubble__value {
  fill: var(--color-text-muted);
  color: var(--color-text-muted);
}

.insights-bubble__readout {
  display: grid;
  grid-template-columns: minmax(var(--space-0), 1fr) auto;
  align-items: baseline;
  gap: var(--space-2);
  min-block-size: var(--size-touch-min);
  padding: var(--space-3) var(--space-4);
  border-block-start: var(--border-subtle);
  background: var(--color-bg-raised);
  color: var(--color-text-muted);
  font-size: var(--text-xs);
}

.insights-bubble__readout strong {
  color: var(--color-text);
  font-family: var(--font-mono);
  font-variant-numeric: tabular-nums;
}

/* Squarified heatmap: whole-tile hit, immutable hover geometry ------------ */

.insights-heatmap .insights-chart__plot {
  display: grid;
  grid-template-rows: minmax(var(--space-0), 1fr) auto;
  padding: var(--space-0);
}

.insights-heatmap [data-heatmap-layout] {
  min-block-size: var(--space-0);
  border-radius: var(--radius-none);
}

.insights-heatmap__tile {
  color: inherit;
  text-decoration: none;
  cursor: pointer;
  pointer-events: visiblePainted;
  -webkit-tap-highlight-color: transparent;
}

.insights-heatmap__tile :is(.insights-heatmap__rect, text) {
  transition: filter var(--duration-fast) var(--ease-out), opacity var(--duration-fast) var(--ease-out);
}

.insights-heatmap__tile:is(:focus-visible, [data-active="true"]) :is(.insights-heatmap__rect, text) {
  filter: brightness(1.34) saturate(1.08);
}

.insights-heatmap__tile:is(:focus-visible, [data-active="true"]) .insights-heatmap__rect {
  stroke: var(--color-text);
  stroke-width: calc(var(--border-width-strong) + var(--border-width));
}

.insights-heatmap__rect {
  stroke: var(--color-bg);
  stroke-width: var(--border-width-strong);
  vector-effect: non-scaling-stroke;
}

.insights-heatmap__tile:is([data-return-state="positive"], [data-direction="positive"]) .insights-heatmap__rect,
.insights-heatmap__rect--positive {
  fill: var(--insights-semantic-positive-depth);
  stroke: var(--color-success-border);
}

.insights-heatmap__tile:is([data-return-state="negative"], [data-direction="negative"]) .insights-heatmap__rect,
.insights-heatmap__rect--negative {
  fill: var(--insights-semantic-negative-depth);
  stroke: var(--color-error-border);
}

.insights-heatmap__tile:is([data-return-state="zero"], [data-direction="flat"]) .insights-heatmap__rect,
.insights-heatmap__rect--zero {
  fill: var(--color-surface-elevated);
  stroke: var(--color-border-strong);
}

.insights-heatmap__tile:is([data-return-state="unavailable"], [data-direction="unavailable"]) .insights-heatmap__rect,
.insights-heatmap__rect--missing {
  stroke: var(--color-text-subtle);
  stroke-dasharray: var(--space-1) var(--space-1);
}

.insights-heatmap__ticker,
.insights-heatmap__value,
.insights-heatmap__return {
  fill: var(--color-text);
  color: var(--color-text);
  font-family: var(--font-mono);
  font-variant-numeric: tabular-nums;
  pointer-events: none;
}

.insights-heatmap__ticker {
  font-size: var(--text-xs);
  font-weight: var(--weight-semibold);
}

.insights-heatmap__value {
  fill: var(--color-text-secondary);
  color: var(--color-text-secondary);
  font-size: var(--text-xs);
}

.insights-heatmap__return {
  fill: var(--color-text-secondary);
  color: var(--color-text-secondary);
  font-size: var(--text-xs);
}

.insights-heatmap__tile[data-direction="positive"] .insights-heatmap__return {
  fill: var(--color-success);
  color: var(--color-success);
}

.insights-heatmap__tile[data-direction="negative"] .insights-heatmap__return {
  fill: var(--color-error);
  color: var(--color-error);
}

.insights-heatmap__tile:is([data-direction="flat"], [data-direction="unavailable"]) .insights-heatmap__return {
  fill: var(--color-text-muted);
  color: var(--color-text-muted);
}

.insights-heatmap__missing-value {
  pointer-events: none;
}

.insights-heatmap__legend {
  align-content: center;
  align-items: center;
  gap: var(--space-2) var(--space-3);
  padding: var(--space-2) var(--space-3);
  border-block-start: var(--border-subtle);
}

.insights-heatmap__legend .insights-chart__legend-item {
  display: inline-flex;
  grid-template-columns: none;
  align-items: center;
  min-inline-size: var(--space-0);
  gap: var(--space-1);
  font-size: var(--text-xs);
  white-space: nowrap;
}

.insights-heatmap__legend .insights-chart__legend-item::before {
  inline-size: var(--space-3);
  block-size: var(--space-3);
  flex: none;
  border: var(--border-width) solid var(--color-border-strong);
  border-radius: var(--radius-xs);
  background: var(--color-surface-elevated);
  content: "";
}

.insights-heatmap__legend [data-heatmap-legend="positive"]::before {
  border-color: var(--color-success-border);
  background: var(--insights-semantic-positive-depth);
}

.insights-heatmap__legend [data-heatmap-legend="zero"]::before {
  background: var(--color-surface-high);
}

.insights-heatmap__legend [data-heatmap-legend="negative"]::before {
  border-color: var(--color-error-border);
  background: var(--insights-semantic-negative-depth);
}

.insights-heatmap__legend [data-heatmap-legend="missing-value"]::before {
  border-color: var(--color-warning);
  background:
    repeating-linear-gradient(
      45deg,
      var(--color-warning) var(--space-0) var(--border-width),
      transparent var(--border-width) var(--space-1)
    ),
    var(--color-surface-elevated);
}

.insights-heatmap__legend [data-heatmap-legend="missing-return"]::before {
  background:
    repeating-linear-gradient(
      135deg,
      var(--color-text-subtle) var(--space-0) var(--border-width),
      transparent var(--border-width) var(--space-1)
    ),
    var(--color-surface-elevated);
}

/* Dashboard categorical bars, donut, and reporting status --------------- */

.insights-dashboard-bars__band {
  fill: var(--color-highlight);
  pointer-events: all;
  cursor: default;
}

.insights-dashboard-bars__band:is(.is-active, [data-active="true"]) {
  fill: var(--color-highlight);
}

.insights-dashboard-bars__bar:not(.insights-dashboard-bars__bar--missing) {
  fill: var(--insights-series-color, var(--color-accent));
  pointer-events: none;
}

.insights-dashboard-bars__bar--missing {
  pointer-events: none;
}

.insights-dashboard-bars__label,
.insights-dashboard-bars__value {
  fill: var(--color-text-muted);
  color: var(--color-text-muted);
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  font-variant-numeric: tabular-nums;
  pointer-events: none;
}

.insights-dashboard-bars__value {
  fill: var(--color-text-secondary);
  color: var(--color-text-secondary);
  text-anchor: end;
}

.insights-dashboard-donut__slice {
  fill: var(--insights-series-color, var(--color-info));
  stroke: var(--color-bg);
  stroke-width: var(--border-width-strong);
  vector-effect: non-scaling-stroke;
  cursor: default;
}

.insights-dashboard-donut__center,
.insights-dashboard-donut__center-label,
.insights-dashboard-donut__center-value,
.insights-dashboard-donut__center-share {
  pointer-events: none;
  text-anchor: middle;
}

.insights-dashboard-donut__center-label,
.insights-dashboard-donut__center-share {
  fill: var(--color-text-muted);
  color: var(--color-text-muted);
  font-family: var(--font-mono);
  font-size: var(--text-xs);
}

.insights-dashboard-donut__center-value {
  fill: var(--color-text);
  color: var(--color-text);
  font-family: var(--font-mono);
  font-size: var(--text-sm);
  font-variant-numeric: tabular-nums;
  font-weight: var(--weight-semibold);
}

.insights-reporting-status .insights-chart__plot {
  padding: var(--space-3);
}

.insights-reporting-status .insights-chart__explorer {
  display: grid;
  align-content: start;
  gap: var(--space-3);
}

.insights-reporting-status .insights-chart__explorer > ul {
  display: grid;
  gap: var(--space-1);
  margin: var(--space-0);
  padding: var(--space-0);
  list-style: none;
}

.insights-reporting-status__row {
  display: grid;
  grid-template-columns: minmax(var(--space-0), 1fr) auto;
  align-items: center;
  min-block-size: var(--space-8);
  gap: var(--space-3);
  padding-inline: var(--space-2);
  border-block-end: var(--border-subtle);
}

.insights-reporting-status__row[data-active="true"] {
  box-shadow: inset var(--border-width-strong) var(--space-0) var(--space-0) var(--color-text-secondary);
  background: var(--color-highlight);
}

.insights-reporting-status__row:last-child {
  border-block-end: var(--space-0);
}

.insights-reporting-status__ticker,
.insights-reporting-status__state {
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  font-variant-numeric: tabular-nums;
}

.insights-reporting-status__ticker {
  color: var(--color-text-secondary);
  font-weight: var(--weight-semibold);
}

.insights-reporting-status__state {
  color: var(--color-text-muted);
  text-align: end;
}

.insights-reporting-status__row[data-reporting-state="positive"] .insights-reporting-status__state,
.insights-reporting-status__state[data-status="positive"] {
  color: var(--color-success);
}

.insights-reporting-status__row[data-reporting-state="zero"] .insights-reporting-status__state,
.insights-reporting-status__state[data-status="zero"] {
  color: var(--color-text-secondary);
}

.insights-reporting-status__row[data-reporting-state="unavailable"] .insights-reporting-status__state,
.insights-reporting-status__state[data-status="unavailable"] {
  color: var(--color-text-subtle);
}

.insights-reporting-status__bar {
  grid-column: 1 / -1;
  block-size: var(--space-0-5);
  overflow: hidden;
  border-radius: var(--radius-pill);
  background: var(--color-surface-high);
}

.insights-reporting-status__bar > span {
  display: block;
  block-size: 100%;
  border-radius: inherit;
  background: var(--color-accent);
}

/* Dense sortable Stock Token table -------------------------------------- */

.insights-table-section {
  display: grid;
  grid-template-columns: minmax(var(--space-0), 1fr);
  gap: var(--space-3);
  min-inline-size: var(--space-0);
}

.insights-table-scroll,
.insights-token-table-scroll {
  max-inline-size: 100%;
  overflow: auto;
  overscroll-behavior-inline: contain;
  border: var(--border-default);
  border-radius: var(--radius-sm);
  background: var(--color-bg-raised);
  scrollbar-color: var(--color-border-strong) var(--color-bg-raised);
  -webkit-overflow-scrolling: touch;
}

.insights-token-table {
  inline-size: 100%;
  min-inline-size: var(--insights-table-min-size);
  border-collapse: separate;
  border-spacing: var(--space-0);
  color: var(--color-text-secondary);
  font-size: var(--text-xs);
  font-variant-numeric: tabular-nums;
  table-layout: auto;
}

.insights-token-table thead {
  position: sticky;
  z-index: var(--z-sticky);
  inset-block-start: var(--space-0);
}

.insights-token-table thead tr {
  block-size: var(--insights-table-header-size);
}

.insights-token-table tbody tr {
  block-size: var(--insights-table-row-size);
  background: var(--color-bg-raised);
  cursor: default;
  transition: none;
}

.insights-token-table :is(th, td) {
  block-size: inherit;
  padding-block: var(--space-0);
  padding-inline: var(--space-4);
  border-block-end: var(--border-subtle);
  text-align: start;
  vertical-align: middle;
  white-space: nowrap;
}

.insights-token-table thead th {
  background: var(--color-surface);
  color: var(--color-text-subtle);
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  font-weight: var(--weight-semibold);
  letter-spacing: var(--tracking-caps);
  text-transform: uppercase;
  box-shadow: inset var(--space-0) calc(var(--border-width) * -1) var(--space-0) var(--color-border);
}

.insights-token-table tbody tr:last-child > * {
  border-block-end: var(--space-0);
}

.insights-token-table :is([data-numeric], .insights-numeric) {
  font-family: var(--font-mono);
  font-feature-settings: var(--font-feature-numeric);
  text-align: end;
}

.insights-token-table__identity,
.insights-token-identity {
  display: flex;
  align-items: center;
  min-inline-size: var(--space-32);
  gap: var(--space-2);
}

.insights-token-table__identity-copy,
.insights-token-identity__copy {
  display: grid;
  min-inline-size: var(--space-0);
  gap: var(--space-0-5);
}

.insights-token-table__ticker,
.insights-token-identity__ticker {
  color: var(--color-text);
  font-family: var(--font-mono);
  font-weight: var(--weight-semibold);
}

.insights-token-table__issuer,
.insights-token-identity__issuer,
.insights-token-table__address {
  overflow: hidden;
  color: var(--color-text-muted);
  font-size: var(--text-xs);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.insights-token-table__identity-link,
.insights-token-identity__link {
  display: inline-flex;
  align-items: center;
  min-block-size: var(--size-touch-min);
  border-radius: var(--radius-xs);
  color: inherit;
  text-decoration-color: var(--color-border-strong);
  text-decoration-thickness: var(--border-width);
  text-underline-offset: var(--space-1);
  cursor: pointer;
}

.insights-sort-button {
  display: inline-flex;
  min-inline-size: var(--space-0);
  min-block-size: var(--space-8);
  align-items: center;
  justify-content: flex-start;
  gap: var(--space-2);
  border: var(--space-0);
  border-radius: var(--radius-xs);
  background: transparent;
  padding: var(--space-1) var(--space-0);
  color: inherit;
  font: inherit;
  letter-spacing: inherit;
  line-height: var(--leading-none);
  text-transform: inherit;
  box-shadow: none;
  cursor: pointer;
}

.insights-token-table :is([data-numeric], .insights-numeric) .insights-sort-button {
  inline-size: 100%;
  flex-direction: row-reverse;
  justify-content: flex-start;
}

.insights-sort-button:is(.is-active, [aria-sort="ascending"], [aria-sort="descending"]),
.insights-token-table th[aria-sort]:not([aria-sort="none"]) .insights-sort-button {
  color: var(--color-text);
}

.insights-sort-button__caret {
  color: var(--color-text-subtle);
  font-size: var(--text-xs);
  opacity: var(--opacity-muted);
}

.insights-sort-button:is(.is-active, [aria-sort="ascending"], [aria-sort="descending"]) .insights-sort-button__caret,
.insights-token-table th[aria-sort]:not([aria-sort="none"]) .insights-sort-button__caret {
  color: var(--color-accent);
  opacity: 1;
}

.insights-table-status,
.insights-status-badge {
  display: inline-flex;
  align-items: center;
  min-block-size: var(--space-6);
  gap: var(--space-1);
  border: var(--border-subtle);
  border-radius: var(--radius-pill);
  padding: var(--space-1) var(--space-2);
  background: var(--color-surface-elevated);
  color: var(--color-text-muted);
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  line-height: var(--leading-none);
  white-space: nowrap;
}

.insights-table-status[data-status="reported"],
.insights-status-badge[data-status="complete"] {
  border-color: var(--color-border-strong);
  color: var(--color-text-secondary);
}

.insights-table-status[data-status="partial"],
.insights-status-badge[data-status="partial"] {
  border-color: var(--color-warning-border);
  color: var(--color-warning);
}

.insights-table-status[data-status="unavailable"],
.insights-status-badge[data-status="unavailable"] {
  color: var(--color-text-subtle);
}

/* Baskets and stock drilldown facts -------------------------------------- */

.insights-basket-grid,
.insights-facts-grid,
.insights-stock-metrics {
  display: grid;
  grid-template-columns: minmax(var(--space-0), 1fr);
  gap: var(--space-4);
}

.insights-basket-card,
.insights-fact {
  min-inline-size: var(--space-0);
  border: var(--border-default);
  border-radius: var(--radius-sm);
  background: var(--color-bg-raised);
}

.insights-basket-card {
  display: grid;
  gap: var(--space-3);
  padding: var(--space-4);
  min-block-size: var(--insights-basket-summary-min-block-size);
}

.insights-basket-card__header,
.insights-stock-header,
.insights-stock-identity {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  min-inline-size: var(--space-0);
}

.insights-basket-card__header,
.insights-stock-header {
  justify-content: space-between;
  gap: var(--space-3);
}

.insights-basket-card__title,
.insights-stock-identity__ticker {
  color: var(--color-text);
  font-family: var(--font-display);
  font-size: var(--text-lg);
  font-weight: var(--weight-semibold);
}

.insights-basket-card__copy,
.insights-stock-identity__issuer {
  color: var(--color-text-muted);
  font-size: var(--text-xs);
}

.insights-constituents {
  display: grid;
  grid-template-columns: repeat(2, minmax(var(--space-0), 1fr));
  margin: var(--space-0);
  padding: var(--space-0);
  border-block: var(--border-subtle);
  list-style: none;
}

.insights-constituent {
  display: grid;
  grid-template-columns: minmax(var(--space-0), 1fr) auto;
  gap: var(--space-2);
  padding: var(--space-2) var(--space-3);
  border-block-end: var(--border-subtle);
  color: var(--color-text-secondary);
  font-family: var(--font-mono);
  font-size: var(--text-xs);
}

.insights-constituent:nth-last-child(-n + 2) {
  border-block-end: var(--space-0);
}

.insights-constituent__weight {
  color: var(--color-text-muted);
  font-variant-numeric: tabular-nums;
}

.insights-fact {
  display: grid;
  min-block-size: var(--insights-fact-responsive-min-block-size);
  gap: var(--space-1);
  padding: var(--space-4);
}

.insights-stock-header {
  padding: var(--space-4);
  border: var(--border-default);
  border-radius: var(--radius-sm);
  background: var(--color-bg-raised);
}

.insights-stock-metrics + .insights-panel {
  min-block-size: var(--insights-source-panel-min-block-size);
}

.insights-stock-identity {
  gap: var(--space-3);
}

.insights-stock-identity__copy {
  display: grid;
  min-inline-size: var(--space-0);
  gap: var(--space-0-5);
}

.insights-stock-note {
  padding: var(--space-3) var(--space-4);
  border-inline-start: var(--border-width-strong) solid var(--color-info);
  background: var(--color-info-soft);
  color: var(--color-text-secondary);
  font-size: var(--text-xs);
  line-height: var(--leading-relaxed);
}

/* Loading, empty, error, and unavailable states -------------------------- */

.insights-state,
.insights-loading,
.insights-empty,
.insights-error {
  display: grid;
  place-items: center;
  min-block-size: var(--space-24);
  gap: var(--space-2);
  padding: var(--space-6);
  border: var(--border-subtle);
  border-radius: var(--radius-sm);
  background: var(--color-bg-raised);
  color: var(--color-text-muted);
  text-align: center;
}

.insights-state-shell {
  position: relative;
  min-inline-size: var(--space-0);
  isolation: isolate;
}

.insights-state-shell > .insights-state {
  position: absolute;
  z-index: var(--z-base);
  inset: var(--space-0);
  min-block-size: var(--space-0);
  align-content: start;
}

.insights-state-shell__geometry,
.insights-state-shell__dashboard-grid,
.insights-state-shell__chart-grid,
.insights-state-shell__kpi-grid,
.insights-state-shell__facts {
  display: grid;
  grid-template-columns: minmax(var(--space-0), 1fr);
  min-inline-size: var(--space-0);
  align-content: start;
  gap: var(--space-4);
}

.insights-state-shell__geometry {
  gap: var(--space-3);
}

.insights-state-shell--dashboard .insights-state-shell__geometry,
.insights-state-shell--tokens .insights-state-shell__geometry {
  gap: var(--space-4);
}

.insights-state-shell__route-header {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  justify-content: space-between;
  min-inline-size: var(--space-0);
  min-block-size: var(--insights-section-header-min-block-size);
  gap: var(--space-3) var(--space-6);
}

.insights-state-shell__route-heading {
  display: grid;
  flex: 1 1 var(--space-32);
  min-inline-size: var(--space-0);
  gap: var(--space-1);
}

.insights-state-shell__eyebrow,
.insights-state-shell__title,
.insights-state-shell__copy {
  display: block;
}

.insights-state-shell__eyebrow {
  inline-size: min(30%, var(--space-24));
  block-size: var(--space-3);
}

.insights-state-shell__title {
  inline-size: min(65%, calc(var(--space-32) + var(--space-24)));
  block-size: var(--space-5);
}

.insights-state-shell__copy {
  inline-size: min(85%, calc(var(--space-32) + var(--space-32)));
  block-size: var(--space-16);
}

.insights-state-shell__controls {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  min-inline-size: var(--space-0);
  gap: var(--space-1);
}

.insights-state-shell__control {
  flex: none;
  inline-size: var(--space-12);
  block-size: var(--space-9);
}

.insights-state-shell__summary {
  display: grid;
  grid-template-columns: minmax(var(--space-0), 1fr);
  align-items: start;
  min-inline-size: var(--space-0);
  gap: var(--space-4);
}

.insights-state-shell__summary-intro {
  display: grid;
  align-content: center;
  min-block-size: var(--insights-summary-intro-min-block-size);
  gap: var(--space-1);
  padding: var(--space-2) var(--space-4);
  border-block: var(--border-subtle);
}

.insights-state-shell__kpi-grid {
  grid-template-columns: repeat(2, minmax(var(--space-0), 1fr));
}

.insights-state-shell__kpi,
.insights-state-shell__fact {
  min-inline-size: var(--space-0);
  min-block-size: var(--insights-fact-responsive-min-block-size);
  border: var(--border-default);
  border-radius: var(--radius-sm);
}

.insights-state-shell__kpi {
  min-block-size: var(--insights-kpi-responsive-min-block-size);
}

.insights-state-shell__panel,
.insights-state-shell__chart,
.insights-state-shell__source-panel {
  display: grid;
  grid-template-columns: minmax(var(--space-0), 1fr);
  align-content: start;
  min-inline-size: var(--space-0);
}

.insights-state-shell__panel,
.insights-state-shell__chart {
  container-name: insights-chart;
  container-type: inline-size;
}

.insights-state-shell__visual {
  min-inline-size: var(--space-0);
  block-size: var(--insights-chart-block-size);
  border: var(--border-default);
}

.insights-state-shell__caption {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  min-inline-size: var(--space-0);
  min-block-size: var(--insights-chart-caption-min-block-size);
  gap: var(--space-1) var(--space-4);
  padding: var(--space-3) var(--space-4);
  border-block-start: var(--border-subtle);
  background: var(--color-bg-raised);
}

.insights-state-shell__caption > span {
  inline-size: min(45%, var(--space-32));
  block-size: var(--space-3);
}

.insights-state-shell__caption > span:first-child {
  inline-size: min(65%, calc(var(--space-32) + var(--space-16)));
}

.insights-state-shell__disclosure {
  block-size: var(--size-touch-min);
  border-block-start: var(--border-subtle);
  background: var(--color-bg-raised);
}

.insights-state-shell__panel .insights-state-shell__caption {
  min-block-size: var(--insights-dashboard-caption-min-block-size);
}

.insights-heatmap .insights-chart__caption,
.insights-state-shell--heatmap .insights-state-shell__geometry > .insights-state-shell__chart > .insights-state-shell__caption,
.insights-state-shell--baskets .insights-state-shell__chart-grid > .insights-state-shell__chart:last-child > .insights-state-shell__caption {
  min-block-size: var(--insights-heatmap-caption-min-block-size);
}

.insights-state-shell__chart > .insights-state-shell__controls {
  min-block-size: var(--insights-chart-header-block-size);
  justify-content: flex-end;
  padding: var(--space-2) var(--space-4);
  border-block-end: var(--border-subtle);
  background: var(--color-bg-raised);
}

.insights-state-shell--performance .insights-state-shell__chart > .insights-state-shell__visual,
.insights-state-shell--stock .insights-state-shell__chart > .insights-state-shell__visual,
.insights-state-shell--baskets .insights-state-shell__geometry > .insights-state-shell__chart > .insights-state-shell__visual {
  block-size: var(--insights-performance-block-size);
}

.insights-state-shell--bubbles .insights-state-shell__geometry > .insights-state-shell__chart > .insights-state-shell__visual,
.insights-state-shell--baskets .insights-state-shell__chart-grid > .insights-state-shell__chart:first-child > .insights-state-shell__visual {
  block-size: calc(var(--insights-chart-block-size) + var(--size-touch-min));
}

.insights-state-shell--screener .insights-state-shell__chart > .insights-state-shell__controls {
  display: grid;
  grid-template-columns: repeat(3, minmax(var(--space-0), 1fr));
  justify-content: stretch;
  gap: var(--space-3);
  padding: var(--space-3) var(--space-4);
}

.insights-state-shell--screener .insights-state-shell__chart > .insights-state-shell__controls .insights-state-shell__control {
  inline-size: auto;
  min-block-size: var(--space-16);
}

.insights-state-shell--screener .insights-state-shell__chart > .insights-state-shell__visual {
  block-size: var(--insights-plot-compact-block-size);
}

.insights-state-shell__basket-summary {
  display: grid;
  align-content: start;
  min-inline-size: var(--space-0);
  min-block-size: var(--insights-basket-summary-min-block-size);
  gap: var(--space-3);
  padding: var(--space-4);
  border: var(--border-default);
  border-radius: var(--radius-sm);
  background: var(--color-bg-raised);
}

.insights-state-shell__basket-header {
  inline-size: min(55%, calc(var(--space-32) + var(--space-16)));
  block-size: var(--space-6);
}

.insights-state-shell__basket-copy {
  inline-size: min(80%, calc(var(--space-32) + var(--space-32)));
  block-size: var(--space-4);
}

.insights-state-shell__basket-constituents {
  display: grid;
  grid-template-columns: repeat(2, minmax(var(--space-0), 1fr));
  min-inline-size: var(--space-0);
  border-block: var(--border-subtle);
}

.insights-state-shell__basket-constituent {
  min-inline-size: var(--space-0);
  min-block-size: var(--space-8);
  border-block-end: var(--border-subtle);
  border-radius: var(--radius-none);
}

.insights-state-shell__table {
  block-size: var(--insights-table-viewport-block-size);
}

.insights-state-shell__note {
  min-block-size: var(--size-touch-min);
  border-inline-start: var(--border-width-strong) solid var(--color-info);
}

.insights-state-shell__source-panel {
  grid-template-rows: auto minmax(var(--space-0), 1fr);
  min-block-size: var(--insights-source-panel-min-block-size);
  overflow: hidden;
  border: var(--border-default);
  border-radius: var(--radius-sm);
  background: var(--color-bg-raised);
}

.insights-state-shell__source-header {
  min-block-size: var(--space-11);
  border-radius: var(--radius-none);
  border-block-end: var(--border-subtle);
}

.insights-state-shell__source-body {
  display: grid;
  align-content: start;
  gap: var(--space-3);
  min-inline-size: var(--space-0);
  padding: var(--space-3) var(--space-4);
}

.insights-state-shell__source-row {
  inline-size: min(85%, calc(var(--space-32) + var(--space-32)));
  block-size: var(--space-5);
}

.insights-state__title,
.insights-empty__title,
.insights-error__title {
  color: var(--color-text);
  font-size: var(--text-sm);
  font-weight: var(--weight-semibold);
}

.insights-state__copy,
.insights-loading__copy,
.insights-empty__copy,
.insights-error__copy {
  max-inline-size: 52ch;
  color: var(--color-text-muted);
  font-size: var(--text-xs);
  line-height: var(--leading-relaxed);
}

.insights-error,
.insights-state[data-state="error"] {
  border-color: var(--color-error-border);
  background: var(--color-error-soft);
}

.insights-error__title,
.insights-state[data-state="error"] .insights-state__title {
  color: var(--color-error);
}

.insights-loading__indicator,
.insights-state[data-state="loading"] .insights-state__indicator {
  inline-size: var(--space-4);
  block-size: var(--space-4);
  border: var(--border-width-strong) solid var(--color-border-strong);
  border-block-start-color: var(--color-accent);
  border-radius: var(--radius-pill);
  animation: insights-loading-spin var(--duration-slower) var(--ease-linear) infinite;
}

.insights-skeleton {
  position: relative;
  min-block-size: var(--space-4);
  overflow: hidden;
  border-radius: var(--radius-xs);
  background: var(--color-surface-elevated);
  color: transparent;
  pointer-events: none;
}

.insights-skeleton::after {
  position: absolute;
  inset: var(--space-0);
  background: var(--sheen-raised);
  content: "";
  animation: insights-loading-sheen var(--duration-pulse) var(--ease-in-out) infinite alternate;
}

.insights-sr-only {
  position: absolute !important;
  inline-size: var(--border-width) !important;
  block-size: var(--border-width) !important;
  margin: calc(var(--border-width) * -1) !important;
  overflow: hidden !important;
  clip: rect(var(--space-0) var(--space-0) var(--space-0) var(--space-0)) !important;
  clip-path: inset(50%) !important;
  border: var(--space-0) !important;
  padding: var(--space-0) !important;
  white-space: nowrap !important;
}

.insights-value[data-sign="positive"] {
  color: var(--color-success);
}

.insights-value[data-sign="negative"] {
  color: var(--color-error);
}

.insights-value[data-sign="neutral"] {
  color: var(--color-text-secondary);
}

@keyframes insights-loading-spin {
  to {
    transform: rotate(1turn);
  }
}

@keyframes insights-loading-sheen {
  from {
    opacity: var(--opacity-muted);
  }

  to {
    opacity: 1;
  }
}

/* Lighter activity bubbles: user offsets translate the complete node while
   a nested marks group floats independently of immutable hit geometry. Every
   float vector stays within 2px so paired motion cannot consume the 4px gap. */
.market-volume-map[data-mode="map"] {
  --market-volume-float-duration: calc(var(--duration-pulse) * 4);
  --market-volume-float-delay: calc(var(--duration-instant) * 0);
  --market-volume-drag-x: 0px;
  --market-volume-drag-y: 0px;
  --market-volume-float-x: 2px;
  --market-volume-float-y: 0px;
  --market-volume-halo-opacity: 0.22;
  --market-volume-halo-active-opacity: 0.46;
  --market-volume-positive-fill: color-mix(in srgb, var(--color-success) 34%, var(--color-surface-elevated));
  --market-volume-negative-fill: color-mix(in srgb, var(--color-error) 38%, var(--color-surface-elevated));
}

.market-volume-map[data-mode="map"] .market-volume-map__node {
  cursor: grab;
  transform: translate(var(--market-volume-drag-x), var(--market-volume-drag-y));
  transform-box: view-box;
}

.market-volume-map[data-mode="map"] .market-volume-map__visible-marks {
  pointer-events: none;
  transform-box: view-box;
  animation:
    insights-market-volume-float
    var(--market-volume-float-duration)
    var(--ease-in-out)
    var(--market-volume-float-delay)
    infinite
    alternate;
}

.market-volume-map[data-mode="map"] .market-volume-map__node[data-motion-slot="1"] {
  --market-volume-float-duration: calc(var(--duration-pulse) * 3.5);
  --market-volume-float-delay: calc(var(--duration-pulse) * -1);
  --market-volume-float-x: -1px;
  --market-volume-float-y: 1.5px;
}

.market-volume-map[data-mode="map"] .market-volume-map__node[data-motion-slot="2"] {
  --market-volume-float-duration: calc(var(--duration-pulse) * 4.5);
  --market-volume-float-delay: calc(var(--duration-pulse) * -2);
  --market-volume-float-x: 0px;
  --market-volume-float-y: 2px;
}

.market-volume-map[data-mode="map"] .market-volume-map__node[data-motion-slot="3"] {
  --market-volume-float-duration: calc(var(--duration-pulse) * 3.75);
  --market-volume-float-delay: calc(var(--duration-pulse) * -1.5);
  --market-volume-float-x: -2px;
  --market-volume-float-y: 0px;
}

.market-volume-map[data-mode="map"] .market-volume-map__node[data-motion-slot="4"] {
  --market-volume-float-duration: calc(var(--duration-pulse) * 4.25);
  --market-volume-float-delay: calc(var(--duration-pulse) * -2.5);
  --market-volume-float-x: 1px;
  --market-volume-float-y: -1.5px;
}

.market-volume-map[data-mode="map"] .market-volume-map__node[data-motion-slot="5"] {
  --market-volume-float-duration: calc(var(--duration-pulse) * 3.25);
  --market-volume-float-delay: calc(var(--duration-pulse) * -0.5);
  --market-volume-float-x: 0px;
  --market-volume-float-y: -2px;
}

.market-volume-map[data-mode="map"] .market-volume-map__target {
  cursor: grab;
}

.market-volume-map[data-mode="map"] .market-volume-map__node[data-sign="positive"] .market-volume-map__disc {
  fill: var(--market-volume-positive-fill);
}

.market-volume-map[data-mode="map"] .market-volume-map__node[data-sign="negative"] .market-volume-map__disc {
  fill: var(--market-volume-negative-fill);
}

.market-volume-map[data-mode="map"] .market-volume-map__node .market-volume-map__halo {
  opacity: var(--market-volume-halo-opacity);
}

.market-volume-map[data-mode="map"] .market-volume-map__node.market-volume-map__node--stale
  :is(.market-volume-map__halo, .market-volume-map__rim) {
  stroke: var(--color-warning);
}

.market-volume-map[data-mode="map"] .market-volume-map__node:is(
  :focus-visible,
  [data-active="true"],
  [data-dragging="true"]
) .market-volume-map__target {
  stroke: var(--color-focus-ring);
  stroke-width: calc(var(--border-width-strong) + var(--border-width));
}

.market-volume-map[data-mode="map"] .market-volume-map__node:is(
  :focus-visible,
  [data-active="true"],
  [data-dragging="true"]
) :is(.market-volume-map__halo, .market-volume-map__disc, .market-volume-map__rim, text) {
  filter: brightness(1.34) saturate(1.08);
}

.market-volume-map[data-mode="map"] .market-volume-map__node:is(
  :focus-visible,
  [data-active="true"],
  [data-dragging="true"]
) .market-volume-map__halo {
  opacity: var(--market-volume-halo-active-opacity);
}

.market-volume-map[data-mode="map"] .market-volume-map__node[data-dragging="true"],
.market-volume-map[data-mode="map"] .market-volume-map__node[data-dragging="true"] .market-volume-map__target {
  cursor: grabbing;
}

.market-volume-map[data-mode="map"] .market-volume-map__node[data-dragging="true"] .market-volume-map__visible-marks {
  animation-play-state: paused;
}

@keyframes insights-market-volume-float {
  from {
    transform: translate(0, 0);
  }

  to {
    transform: translate(var(--market-volume-float-x), var(--market-volume-float-y));
  }
}

/* Pointer capabilities, not viewport width, choose floating vs docked UI. */

@media (any-hover: hover) and (any-pointer: fine) {
  .insights-analytics-nav a:hover,
  .insights-period-button:hover,
  .insights-segmented__button:hover,
  .insights-sort-button:hover,
  .insights-performance-chart__periods > button:hover,
  .insights-screener [data-screener-reset]:not(:disabled):hover {
    border-color: var(--color-border-strong);
    background: var(--color-surface-hover);
    color: var(--color-text);
  }

  .insights-select:hover,
  .insights-screener__select:hover {
    border-color: var(--color-control-border-hover);
    background: var(--color-control-bg-hover);
  }

  .insights-token-table tbody tr:hover {
    background: var(--color-surface-hover);
  }

  .insights-token-table__identity-link:hover,
  .insights-token-identity__link:hover {
    color: var(--color-text);
    text-decoration-color: var(--color-accent-muted);
  }
}

@media (any-pointer: coarse) {
  .insights-period-button,
  .insights-segmented__button,
  .insights-performance-chart__periods > button,
  .insights-sort-button,
  .insights-select,
  .insights-screener__select,
  .insights-screener [data-screener-reset],
  .insights-screener__zoom-control,
  .insights-screener__zoom-slider,
  .insights-state-shell__control {
    min-block-size: var(--size-touch-min);
  }
}

/* Responsive geometry ---------------------------------------------------- */

@media (min-width: 35rem) {
  [data-page="insights"] {
    --insights-summary-intro-min-block-size: calc(var(--space-16) + var(--space-12));
    --insights-kpi-responsive-min-block-size: calc(var(--space-16) + var(--space-12));
    --insights-fact-responsive-min-block-size: calc(var(--space-16) + var(--space-8));
    --insights-basket-summary-min-block-size: calc(var(--space-32) + var(--space-10));
  }

  .insights-state-shell__copy {
    block-size: calc(var(--space-8) + var(--space-2));
  }

  .insights-basket-grid,
  .insights-facts-grid,
  .insights-stock-metrics,
  .insights-state-shell__facts {
    grid-template-columns: repeat(2, minmax(var(--space-0), 1fr));
  }

  .insights-constituents {
    grid-template-columns: repeat(4, minmax(var(--space-0), 1fr));
  }

  .insights-state-shell__basket-constituents {
    grid-template-columns: repeat(4, minmax(var(--space-0), 1fr));
  }

  .insights-constituent:nth-last-child(-n + 4) {
    border-block-end: var(--space-0);
  }

  .insights-state-shell__basket-constituent:nth-last-child(-n + 4) {
    border-block-end: var(--space-0);
  }

  .insights-page-header {
    align-items: end;
  }
}

@media (min-width: 48rem) {
  .insights-dashboard-grid,
  .insights-chart-grid,
  .insights-state-shell__dashboard-grid,
  .insights-state-shell__chart-grid {
    grid-template-columns: repeat(2, minmax(var(--space-0), 1fr));
  }
}

@media (min-width: 64rem) {
  [data-page="insights"][data-insights-view="screener"]
    .insights-screener[data-viewport-fill="remaining"]
    .insights-chart__stage {
    block-size: max(
      var(--insights-plot-compact-block-size),
      var(
        --insights-viewport-fill-block-size,
        calc(100dvh - var(--insights-screener-viewport-offset))
      )
    );
  }

  [data-page="insights"][data-insights-view="heatmap"]
    .insights-heatmap[data-viewport-fill="remaining"] {
    grid-template-rows:
      var(--insights-chart-header-block-size)
      auto
      auto
      auto;
  }

  [data-page="insights"][data-insights-view="heatmap"]
    .insights-heatmap[data-viewport-fill="remaining"]
    .insights-chart__plot {
    block-size: max(
      var(--insights-plot-compact-block-size),
      var(
        --insights-viewport-fill-block-size,
        calc(100dvh - var(--insights-heatmap-viewport-offset))
      )
    );
  }
}

@container insights-main (min-width: 75rem) {
  .insights-summary,
  .insights-state-shell__summary {
    grid-template-columns: minmax(var(--space-0), 25.625rem) minmax(var(--space-0), 1fr);
    gap: var(--space-6);
  }

  .insights-summary__intro,
  .insights-state-shell__summary-intro {
    min-block-size: var(--insights-summary-block-size);
  }

  .insights-kpi-grid,
  .insights-state-shell__kpi-grid {
    grid-template-columns: repeat(4, minmax(var(--space-0), 1fr));
    align-items: start;
  }

  .insights-kpi,
  .insights-state-shell__kpi {
    min-block-size: var(--insights-summary-block-size);
  }

  .insights-kpi__meta {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}

@container insights-chart (min-width: 35rem) {
  .insights-chart__body--with-legend,
  .insights-dashboard-card__body--with-legend {
    grid-template-columns: minmax(var(--space-0), 1fr) 9.25rem;
  }

  .insights-chart__body--with-legend .insights-chart__legend,
  .insights-dashboard-card__body--with-legend .insights-chart__legend {
    display: grid;
    grid-template-columns: minmax(var(--space-0), 1fr);
    align-content: start;
    border-block-start: var(--space-0);
    border-inline-start: var(--border-subtle);
  }

  .insights-chart__stage {
    block-size: var(--insights-plot-wide-block-size);
  }

  .insights-state-shell--screener .insights-state-shell__chart > .insights-state-shell__visual {
    block-size: var(--insights-plot-wide-block-size);
  }
}

@container insights-chart (min-width: 39rem) {
  .insights-dashboard-panel__body {
    grid-template-columns:
      var(--insights-dashboard-plot-inline-size)
      var(--insights-dashboard-sidecar-inline-size);
    column-gap: var(--space-4);
    padding-inline: var(--space-1);
  }

  .insights-dashboard-panel__sidecar {
    display: block;
  }

  .insights-chart__caption,
  .insights-state-shell__caption {
    min-block-size: calc(var(--space-32) + var(--space-2));
  }

  .insights-heatmap .insights-chart__caption,
  .insights-state-shell--heatmap .insights-state-shell__geometry > .insights-state-shell__chart > .insights-state-shell__caption,
  .insights-state-shell--baskets .insights-state-shell__chart-grid > .insights-state-shell__chart:last-child > .insights-state-shell__caption {
    min-block-size: calc(var(--space-32) + var(--space-16));
  }

  .insights-dashboard-grid .insights-chart__caption,
  .insights-state-shell__panel .insights-state-shell__caption {
    min-block-size: calc(var(--space-24) + var(--space-2));
  }
}

@container insights-chart (min-width: 60rem) {
  .insights-chart__caption,
  .insights-state-shell__caption {
    min-block-size: var(--space-24);
  }

  .insights-heatmap .insights-chart__caption,
  .insights-state-shell--heatmap .insights-state-shell__geometry > .insights-state-shell__chart > .insights-state-shell__caption,
  .insights-state-shell--baskets .insights-state-shell__chart-grid > .insights-state-shell__chart:last-child > .insights-state-shell__caption {
    min-block-size: calc(var(--space-32) + var(--space-2));
  }
}

@media (max-width: 34.999rem) {
  .insights-toolbar,
  .insights-screener__selectors,
  .insights-page-header__actions,
  .insights-section__actions,
  .insights-control-group {
    align-items: stretch;
  }

  .insights-toolbar {
    flex-direction: column;
  }

  .insights-screener__selectors {
    grid-template-columns: minmax(var(--space-0), 1fr);
  }

  .insights-screener__zoom-controls {
    grid-template-columns: minmax(var(--space-0), 1fr);
  }

  .insights-control,
  .insights-screener__selectors label,
  .insights-select,
  .insights-screener__select,
  .insights-screener [data-screener-reset],
  .insights-page-header__actions,
  .insights-section__actions,
  .insights-control-group {
    inline-size: 100%;
  }

  .insights-periods {
    display: grid;
    grid-template-columns: repeat(3, minmax(var(--space-0), 1fr));
  }

  .insights-period-button,
  .insights-segmented__button {
    inline-size: 100%;
  }

  .insights-chart__caption,
  .insights-state-shell__caption,
  .insights-bubble__readout {
    display: grid;
    grid-template-columns: minmax(var(--space-0), 1fr);
  }

  .insights-chart__caption,
  .insights-dashboard-grid .insights-chart__caption,
  .insights-heatmap .insights-chart__caption,
  .insights-state-shell__caption,
  .insights-state-shell__panel .insights-state-shell__caption {
    min-block-size: auto;
  }

  .insights-state-shell__route-header {
    align-items: stretch;
    flex-direction: column;
  }

  .insights-state-shell__route-header > .insights-state-shell__controls {
    display: grid;
    grid-template-columns: repeat(3, minmax(var(--space-0), 1fr));
    inline-size: 100%;
  }

  .insights-state-shell__route-header > .insights-state-shell__controls .insights-state-shell__control {
    inline-size: auto;
  }

  .insights-state-shell--baskets .insights-state-shell__route-header > .insights-state-shell__controls {
    row-gap: var(--space-2);
  }

  .insights-state-shell--baskets .insights-state-shell__route-header > .insights-state-shell__controls .insights-state-shell__control:first-child {
    grid-column: 1 / -1;
    block-size: var(--space-16);
    min-block-size: var(--space-16);
  }

  .insights-state-shell--screener .insights-state-shell__chart > .insights-state-shell__controls {
    grid-template-columns: minmax(var(--space-0), 1fr);
  }

  .insights-state-shell--screener .insights-state-shell__chart > .insights-state-shell__controls:first-child .insights-state-shell__control:last-child {
    block-size: var(--size-touch-min);
    min-block-size: var(--size-touch-min);
  }

  .insights-range-control,
  .insights-custom-range {
    inline-size: 100%;
  }

  .insights-range-control {
    justify-items: stretch;
  }

  .insights-custom-range {
    grid-template-columns: minmax(var(--space-0), 1fr);
  }
  .insights-performance-chart .insights-chart-data__scroller {
    inline-size: 100%;
    min-inline-size: var(--space-0);
    max-block-size: min(45dvh, var(--insights-plot-compact-block-size));
    overflow: auto;
    overscroll-behavior-inline: contain;
    overscroll-behavior-block: auto;
  }

  .insights-performance-chart .insights-chart-data__details:empty {
    display: none;
  }
  .insights-performance-chart .insights-chart__stage {
    block-size: var(--insights-plot-compact-block-size);
  }
  .insights-performance-chart__svg :is(
    [data-performance-x-tick="1"],
    [data-performance-x-tick="3"],
    [data-performance-x-tick="4"]
  ) {
    display: none;
  }

  .insights-state-shell--performance .insights-state-shell__chart > .insights-state-shell__visual,
  .insights-state-shell--screener .insights-state-shell__chart > .insights-state-shell__visual,
  .insights-state-shell--stock .insights-state-shell__chart > .insights-state-shell__visual,
  .insights-state-shell--baskets .insights-state-shell__geometry > .insights-state-shell__chart > .insights-state-shell__visual {
    block-size: var(--insights-plot-compact-block-size);
  }
}

@media (max-width: 20rem) {
  [data-page="insights"] {
    --insights-summary-intro-min-block-size: calc(var(--space-32) + var(--space-4));
    --insights-kpi-responsive-min-block-size: calc(var(--space-32) + var(--space-4));
    --insights-heatmap-caption-min-block-size: calc(var(--space-32) + var(--space-32) + var(--space-16));
  }
  .insights-performance-chart__svg [data-performance-x-tick="2"] {
    display: none;
  }

  .insights-kpi-grid {
    grid-template-columns: minmax(var(--space-0), 1fr);
  }

  .insights-kpi__value {
    font-size: var(--text-lg);
  }
}

.insights-chart-tooltip[data-reduced-motion="true"],
.insights-chart[data-reduced-motion="true"] .insights-chart-tooltip,
[data-page="insights"][data-reduced-motion="true"] .insights-chart-tooltip,
[data-page="insights"] [data-reduced-motion="true"] .insights-chart-tooltip,
.insights-chart[data-reduced-motion="true"] .insights-performance-chart__line,
.insights-chart[data-reduced-motion="true"] .insights-performance-chart__dot,
.insights-chart[data-reduced-motion="true"] .insights-screener__point,
.insights-chart[data-reduced-motion="true"] .insights-dashboard-donut__slice,
[data-page="insights"][data-reduced-motion="true"] .insights-performance-chart__line,
[data-page="insights"][data-reduced-motion="true"] .insights-performance-chart__dot,
[data-page="insights"][data-reduced-motion="true"] .insights-screener__point,
[data-page="insights"][data-reduced-motion="true"] .insights-dashboard-donut__slice {
  transition: none !important;
  will-change: auto;
}

.market-volume-map[data-mode="map"][data-reduced-motion="true"] .market-volume-map__visible-marks {
  animation: none !important;
  transform: none;
  will-change: auto;
}

/* Accessibility preferences --------------------------------------------- */

@media (prefers-reduced-motion: reduce) {
  [data-page="insights"],
  [data-page="insights"] * {
    scroll-behavior: auto;
  }

  [data-page="insights"] *,
  [data-page="insights"] *::before,
  [data-page="insights"] *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    transition-delay: 0ms !important;
  }

  .insights-chart-tooltip,
  .insights-performance-chart__line,
  .insights-performance-chart__dot,
  .insights-screener__point,
  .insights-dashboard-donut__slice {
    transition: none !important;
    will-change: auto;
  }

  .market-volume-map[data-mode="map"] .market-volume-map__visible-marks {
    animation: none !important;
    transform: none;
    will-change: auto;
  }

  .insights-loading__indicator,
  .insights-state[data-state="loading"] .insights-state__indicator,
  .insights-skeleton::after {
    animation: none;
  }
}

@media (prefers-contrast: more) {
  .insights-kpi,
  .insights-panel,
  .insights-chart,
  .insights-dashboard-card,
  .insights-performance-chart,
  .insights-screener,
  .insights-bubble,
  .insights-heatmap,
  .insights-table-scroll,
  .insights-token-table-scroll,
  .insights-basket-card,
  .insights-fact,
  .insights-stock-header {
    border-color: var(--color-border-strong);
  }

  .insights-chart__grid {
    stroke: var(--color-border-strong);
  }

  .insights-chart__tick,
  .insights-chart__meta,
  .insights-chart__caption,
  .insights-token-table thead th {
    color: var(--color-text-secondary);
    fill: var(--color-text-secondary);
  }

  .insights-performance-chart__line-depth {
    opacity: 0.28;
  }

  .insights-performance-chart__line {
    stroke-width: 3px;
  }

  .insights-bubble__rim {
    stroke-width: 2px;
  }

  .market-volume-map[data-mode="map"] .market-volume-map__node:is(
    :focus-visible,
    [data-active="true"],
    [data-dragging="true"]
  ) .market-volume-map__rim {
    stroke-width: calc(var(--border-width-strong) + var(--border-width));
  }
}

@media (forced-colors: active) {
  .insights-analytics-nav,
  .insights-page-header,
  .insights-panel,
  .insights-kpi,
  .insights-chart,
  .insights-dashboard-card,
  .insights-performance-chart,
  .insights-screener,
  .insights-bubble,
  .insights-heatmap,
  .insights-table-scroll,
  .insights-token-table-scroll,
  .insights-basket-card,
  .insights-fact,
  .insights-stock-header,
  .insights-chart-tooltip {
    border: var(--border-width) solid CanvasText;
    background: Canvas;
    color: CanvasText;
    box-shadow: none;
  }

  .insights-analytics-nav a[aria-current="page"],
  .insights-period-button:is(.is-active, [aria-pressed="true"], [aria-current="true"]),
  .insights-segmented__button:is(.is-active, [aria-pressed="true"], [aria-selected="true"]) {
    forced-color-adjust: none;
    border-color: Highlight;
    background: Highlight;
    color: HighlightText;
  }

  .insights-analytics-nav a:focus-visible,
  .insights-chart__explorer:focus-visible,
  .insights-chart__svg[data-chart-explorer]:focus-visible,
  .insights-sort-button:focus-visible,
  .insights-select:focus-visible,
  .insights-screener__select:focus-visible,
  .insights-screener [data-screener-reset]:focus-visible,
  .insights-screener__zoom-slider:focus-visible,
  .insights-nav-filter__input:focus-visible,
  .insights-chart__data-disclosure > summary:focus-visible,
  .insights-chart-data > summary:focus-visible,
  .insights-chart__data-table:focus-visible,
  .insights-chart-data__scroller:focus-visible,
  .insights-chart__data-scroller:focus-visible {
    outline: var(--border-width-strong) solid Highlight;
    outline-offset: calc(var(--border-width-strong) * -1);
    box-shadow: none;
  }

  .insights-performance-chart__line-depth,
  .insights-performance-chart__line,
  .insights-performance-chart__leader,
  .insights-performance-chart__endpoint-dot,
  .insights-performance-chart__guide,
  .insights-chart__grid,
  .insights-chart__axis,
  .insights-bubble__rim,
  .insights-heatmap__rect,
  .insights-screener__zero-axis,
  .insights-dashboard-donut__slice {
    stroke: CanvasText;
  }

  .insights-heatmap__tile:is(:focus-visible, [data-active="true"]) .insights-heatmap__rect {
    stroke: Highlight;
  }

  .insights-bubble__halo,
  .insights-bubble__logo {
    display: none;
  }

  .insights-bubble__disc {
    fill: Canvas;
  }
  .insights-bubble__node[data-direction="positive"] .insights-bubble__rim {
    stroke-width: 3px;
    stroke-dasharray: none;
  }

  .insights-bubble__node[data-direction="negative"] .insights-bubble__rim {
    stroke-width: 3px;
    stroke-dasharray: var(--space-2) var(--space-1);
  }

  .insights-bubble__node[data-direction="flat"] .insights-bubble__rim {
    stroke-width: 3px;
    stroke-dasharray: var(--border-width) var(--space-1);
  }

  .insights-screener [data-screener-point][data-direction="positive"] .insights-screener__point {
    fill: Highlight;
    stroke: HighlightText;
  }

  .insights-screener [data-screener-point][data-direction="negative"] .insights-screener__point {
    fill: CanvasText;
    stroke: Canvas;
  }

  .insights-screener [data-screener-point]:is([data-direction="flat"], [data-direction="unavailable"]) .insights-screener__point {
    fill: Canvas;
    stroke: CanvasText;
    stroke-dasharray: var(--border-width) var(--space-1);
  }

  .insights-performance-chart [data-performance-series],
  .insights-bubble__node,
  .insights-heatmap__tile {
    filter: none;
    opacity: 1;
  }

  .market-volume-map[data-mode="map"] .market-volume-map__visible-marks {
    animation: none;
    filter: none;
    transform: none;
    will-change: auto;
  }

  .market-volume-map[data-mode="map"] .market-volume-map__node
    :is(.market-volume-map__halo, .market-volume-map__disc, .market-volume-map__rim, text) {
    filter: none;
    opacity: 1;
  }

  .market-volume-map[data-mode="map"] .market-volume-map__halo {
    display: none;
  }

  .market-volume-map[data-mode="map"] .market-volume-map__disc {
    fill: Canvas;
  }

  .market-volume-map[data-mode="map"] .market-volume-map__rim {
    stroke: CanvasText;
  }

  .market-volume-map[data-mode="map"] .market-volume-map__node:is(
    :focus-visible,
    [data-active="true"],
    [data-dragging="true"]
  ) .market-volume-map__target {
    stroke: Highlight;
  }
  .insights-performance-chart__dot,
  .insights-dashboard-bars__bar,
  .insights-screener__point,
  .insights-screener__zoom-handle {
    fill: Highlight;
  }

  .insights-chart__tick,
  .insights-performance-chart__endpoint,
  .insights-screener__point-label,
  .insights-screener__quadrant,
  .insights-performance-chart [data-performance-empty],
  .insights-bubble__ticker,
  .insights-bubble__value,
  .insights-heatmap__ticker,
  .insights-heatmap__value,
  .insights-heatmap__return,
  .insights-dashboard-bars__label,
  .insights-dashboard-bars__value,
  .insights-dashboard-donut__center-label,
  .insights-dashboard-donut__center-value,
  .insights-dashboard-donut__center-share {
    fill: CanvasText;
    color: CanvasText;
  }

  .insights-screener__zoom {
    color: CanvasText;
  }

  .insights-heatmap__missing-value {
    fill: transparent;
    stroke: CanvasText;
    stroke-dasharray: var(--space-1) var(--space-1);
  }

  .insights-heatmap__rect {
    forced-color-adjust: none;
    fill: var(--insights-forced-pattern, Canvas);
    stroke: CanvasText;
  }

  .insights-heatmap__tile[data-return-state="unavailable"] .insights-heatmap__rect {
    stroke-dasharray: var(--space-1) var(--space-1);
  }

  .insights-heatmap__legend .insights-chart__legend-item::before {
    forced-color-adjust: none;
    border-color: CanvasText;
    background: Canvas;
  }

  .insights-heatmap__legend [data-heatmap-legend="positive"]::before {
    background:
      repeating-linear-gradient(
        135deg,
        CanvasText var(--space-0) var(--border-width),
        Canvas var(--border-width) var(--space-1)
      );
  }

  .insights-heatmap__legend [data-heatmap-legend="zero"]::before {
    background:
      radial-gradient(
        circle,
        CanvasText var(--space-0) var(--border-width),
        Canvas var(--border-width)
      )
      var(--space-0) var(--space-0) / var(--space-2) var(--space-2);
  }

  .insights-heatmap__legend [data-heatmap-legend="negative"]::before {
    background:
      repeating-linear-gradient(
        45deg,
        CanvasText var(--space-0) var(--border-width),
        transparent var(--border-width) var(--space-1)
      ),
      repeating-linear-gradient(
        -45deg,
        CanvasText var(--space-0) var(--border-width),
        Canvas var(--border-width) var(--space-1)
      );
  }

  .insights-heatmap__legend [data-heatmap-legend="missing-value"]::before {
    border-style: double;
    background:
      repeating-linear-gradient(
        45deg,
        CanvasText var(--space-0) var(--border-width),
        Canvas var(--border-width) var(--space-1)
      );
  }

  .insights-heatmap__legend [data-heatmap-legend="missing-return"]::before {
    border-style: dashed;
    background:
      repeating-linear-gradient(
        135deg,
        CanvasText var(--space-0) var(--border-width),
        Canvas var(--border-width) var(--space-1)
      );
  }

  .insights-chart:has(> .insights-dashboard-panel__visual) {
    border: var(--space-0);
    background: transparent;
  }

  .insights-dashboard-panel__visual {
    border-color: CanvasText;
    background: Canvas;
  }

  .insights-reporting-status__row[data-active="true"] {
    outline: var(--border-width) solid Highlight;
    outline-offset: calc(var(--border-width) * -1);
    box-shadow: none;
  }
}
