/* ASTS reference layout. Loaded after asts-dashboard.css; no shared-site rules. */
main.investing-page .asts-dashboard {
  --asts-line: #d7e2ee;
  --asts-soft: #f3f7fc;
  background: #f5f8fc;
}

main.investing-page .asts-dashboard .asts-wrap { max-width: 1500px; }
main.investing-page .asts-dashboard .asts-hero { min-height: 220px; }
main.investing-page .asts-dashboard .asts-hero-copy { min-height: 220px; padding-block: 16px; }
main.investing-page .asts-dashboard .asts-hero h1 { max-width: 840px; margin-bottom: 8px; font-size: calc(clamp(32px,3vw,43px) * var(--asts-read-scale,1)); line-height: 1.12; }
main.investing-page .asts-dashboard .asts-hero-subtitle { max-width: 760px; margin-bottom: 8px; font-size: calc(16px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-breadcrumb { margin-bottom: 7px; }
main.investing-page .asts-dashboard .asts-hero-deck { max-width: 780px; margin: 0 0 10px; color: #d6e9fc; font-size: calc(14px * var(--asts-read-scale,1)); line-height: 1.45; }
main.investing-page .asts-dashboard :is(.asts-breadcrumb,.asts-hero-caption) { font-size: calc(13px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-hero-caption { margin-top: 6px; }
main.investing-page .asts-dashboard .asts-hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
main.investing-page .asts-dashboard .asts-hero-actions a { display: inline-flex; align-items: center; gap: 6px; min-height: 38px; padding: 7px 11px; border: 1px solid #93bce3; border-radius: 5px; background: #123653; color: #fff; font-size: calc(13px * var(--asts-read-scale,1)); font-weight: 700; line-height: 1.4; text-decoration: none; }
main.investing-page .asts-dashboard .asts-hero-actions a:hover { background: #215174; color: #fff; }
main.investing-page .asts-dashboard .asts-hero-actions .asts-icon { width: 17px; height: 17px; color: currentColor; }
main.investing-page .asts-dashboard .asts-trust { gap: 8px 18px; }
main.investing-page .asts-dashboard .asts-trust small { font-size: calc(13px * var(--asts-read-scale,1)); }

/* A quiet left contents rail and one continuous research column. */
main.investing-page .asts-dashboard .asts-reference-layout { display: grid; grid-template-columns: 220px minmax(0,1fr); align-items: start; gap: 18px; padding-block: 18px 28px; }
main.investing-page .asts-dashboard :is(.asts-research-body,.asts-top-grid,.asts-whatif-panel,.asts-whatif-grid,.asts-research-trio,.asts-research-pair,.asts-resource-details) { min-width: 0; max-width: 100%; }
main.investing-page .asts-dashboard .asts-research-body { display: grid; align-content: start; gap: 16px; }
main.investing-page .asts-dashboard .asts-reference-layout > .asts-sidebar { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
main.investing-page .asts-dashboard .asts-panel { padding: 16px; border-radius: 7px; background: #fff; box-shadow: 0 2px 5px #153c6505; }
main.investing-page .asts-dashboard .asts-panel-heading { align-items: flex-start; flex-wrap: nowrap; margin-bottom: 12px; gap: 8px; }
main.investing-page .asts-dashboard .asts-panel-heading h2,
main.investing-page .asts-dashboard .asts-panel-numbered > .asts-panel-heading h2 { font-size: calc(20px * var(--asts-read-scale,1)); line-height: 1.3; }
main.investing-page .asts-dashboard .asts-panel-heading > .asts-icon { width: 22px; height: 22px; margin-top: 2px; }
main.investing-page .asts-dashboard .asts-section-number { flex-basis: 27px; width: 27px; height: 27px; margin-top: 0; font-size: calc(17px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-sidebar .asts-panel { padding: 13px; background: #fff; }
main.investing-page .asts-dashboard .asts-sidebar :is(h2,h3) { font-size: calc(16px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-sidebar :is(p,li) { font-size: calc(14px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-sidebar :is(dt,dd) { font-size: calc(13px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-sidebar .asts-key-values > div { grid-template-columns: minmax(0,1fr); gap: 3px; padding-block: 7px; }
main.investing-page .asts-dashboard .asts-sidebar .asts-key-values dd { font-weight: 700; }
main.investing-page .asts-dashboard .asts-sidebar .asts-panel-heading { gap: 7px; }
main.investing-page .asts-dashboard .asts-sidebar .asts-panel-heading .asts-icon { width: 20px; height: 20px; }
main.investing-page .asts-dashboard .asts-contents .asts-section-nav { display: flex; flex-direction: column; gap: 2px; margin: 0; padding: 0; border: 0; background: transparent; overflow: visible; }
main.investing-page .asts-dashboard .asts-contents .asts-section-nav a { justify-content: flex-start; flex: none; gap: 7px; min-height: 39px; padding: 9px; text-align: left; font-size: calc(14px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-contents .asts-section-nav .asts-icon { width: 18px; height: 18px; }
main.investing-page .asts-dashboard .asts-reading-controls > div { display: flex; flex-wrap: wrap; gap: 5px; width: 100%; }
main.investing-page .asts-dashboard .asts-reading-controls button { flex: 1 1 60px; }
main.investing-page .asts-dashboard .asts-reading-controls :is([data-asts-contrast],[data-asts-display-reset]) { flex-basis: 100%; }
main.investing-page .asts-dashboard .asts-reading-controls [data-asts-display-status] { font-weight: 400; }

/* Seven facts stay in one strip on desktop; each remains dated in live text. */
main.investing-page .asts-dashboard .asts-research-body > .asts-metrics { grid-template-columns: repeat(7,minmax(0,1fr)); align-items: stretch; gap: 8px; margin: 0; }
main.investing-page .asts-dashboard .asts-research-body .asts-metric { align-items: flex-start; flex-direction: column; gap: 7px; padding: 12px 10px; background: #fff; }
main.investing-page .asts-dashboard .asts-research-body .asts-metric > .asts-icon { width: 27px; height: 27px; padding: 5px; }
main.investing-page .asts-dashboard .asts-research-body .asts-metric > div { min-width: 0; }
main.investing-page .asts-dashboard .asts-research-body .asts-metric-label { min-height: 2.6em; font-size: calc(13px * var(--asts-read-scale,1)); line-height: 1.35; }
main.investing-page .asts-dashboard .asts-research-body .asts-metric strong { font-size: calc(clamp(19px,1.55vw,24px) * var(--asts-read-scale,1)); line-height: 1.2; }
main.investing-page .asts-dashboard .asts-research-body .asts-metric small { font-size: calc(13px * var(--asts-read-scale,1)); line-height: 1.4; }
main.investing-page .asts-dashboard .asts-research-body .asts-metric-note { grid-column: auto; }

/* Price and scenario cards share the first analytical row. */
main.investing-page .asts-dashboard .asts-top-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); align-items: start; gap: 16px; }
main.investing-page .asts-dashboard .asts-top-grid > * { min-width: 0; }
main.investing-page .asts-dashboard .asts-top-grid .asts-price-layout { display: grid; grid-template-columns: minmax(0,1fr); gap: 12px; }
main.investing-page .asts-dashboard .asts-top-grid .asts-chart svg { width: 100%; min-height: 0; height: auto; }
main.investing-page .asts-dashboard .asts-chart figcaption { font-size: calc(13px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-chart-tools { margin: 5px 0 10px; }
main.investing-page .asts-dashboard .asts-top-grid .asts-stats dl { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 7px; }
main.investing-page .asts-dashboard .asts-top-grid .asts-stats dl > div { padding: 9px; gap: 5px; background: #f6f9fd; }
main.investing-page .asts-dashboard .asts-top-grid .asts-stats dl > div:last-child,
main.investing-page .asts-dashboard .asts-top-grid .asts-stats dl > div:nth-last-child(2) { padding-bottom: 9px; border: 1px solid var(--asts-line); }
main.investing-page .asts-dashboard .asts-top-grid .asts-stats dt { font-size: calc(13px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-top-grid .asts-stats dd { font-size: calc(19px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-top-grid .asts-scenario-form { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; margin-block: 12px; padding: 12px; }
main.investing-page .asts-dashboard .asts-top-grid .asts-scenario-form label { font-size: calc(14px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-top-grid .asts-scenario-form :is(input,select) { font-size: calc(15px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-top-grid .asts-scenario-actions { flex-direction: row; }
main.investing-page .asts-dashboard .asts-top-grid .asts-scenario-actions > button { flex: 1 1 150px; }
main.investing-page .asts-dashboard .asts-top-grid .asts-signal-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
main.investing-page .asts-dashboard .asts-signal-card { padding: 11px; background: #f5f9fe; }
main.investing-page .asts-dashboard .asts-signal-card strong { font-size: calc(23px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-signal-card small,
main.investing-page .asts-dashboard .asts-model-range small { font-size: calc(13px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-model-range p { font-size: calc(22px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-chart-export { margin: 0 0 8px; }
main.investing-page .asts-dashboard .asts-chart-export :is(.asts-button,.asts-button-outline) { padding: 8px 11px; font-size: calc(13px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard :is([data-asts-probability-status],[data-asts-export-status],[data-asts-quote-status],[data-asts-display-status],[data-asts-save-status]):empty { display: none; }

/* Compact what-if summaries sit above the fully inspectable calculations. */
main.investing-page .asts-dashboard .asts-whatif-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; align-items: start; margin-top: 12px; }
main.investing-page .asts-dashboard .asts-whatif-grid > :is(article,.asts-whatif-card,.asts-whatif) { display: flex; flex-direction: column; gap: 9px; min-width: 0; margin: 0; padding: 13px; border: 1px solid var(--asts-line); border-top: 3px solid #5c99d8; border-radius: 6px; background: #f8fbff; }
main.investing-page .asts-dashboard .asts-whatif-grid > :nth-child(2) { border-top-color: #8a9fc7; }
main.investing-page .asts-dashboard .asts-whatif-grid > :nth-child(3) { border-top-color: #638faa; }
main.investing-page .asts-dashboard .asts-whatif-grid > :nth-child(4) { border-top-color: #507bc0; }
main.investing-page .asts-dashboard .asts-whatif-grid :is(h3,h4) { margin: 0; color: #133e76; font-size: calc(16px * var(--asts-read-scale,1)); line-height: 1.35; }
main.investing-page .asts-dashboard .asts-whatif-card > h3 { display: flex; align-items: flex-start; gap: 7px; }
main.investing-page .asts-dashboard .asts-whatif-card > h3 .asts-step-number { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 22px; min-height: 22px; border-radius: 50%; background: #dcecff; color: #124c91; font-size: calc(13px * var(--asts-read-scale,1)); line-height: 1.3; }
main.investing-page .asts-dashboard .asts-whatif-grid p { margin: 0; font-size: calc(14px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-whatif-grid .asts-whatif-value { display: block; color: #0a4fa3; font-size: calc(25px * var(--asts-read-scale,1)); font-weight: 700; line-height: 1.25; font-variant-numeric: tabular-nums; }
main.investing-page .asts-dashboard .asts-whatif-grid :is(small,.asts-whatif-label,.asts-dateline) { font-size: calc(13px * var(--asts-read-scale,1)); line-height: 1.45; }
main.investing-page .asts-dashboard .asts-whatif-grid details { margin-top: auto; }
main.investing-page .asts-dashboard .asts-whatif-card > :is(.asts-note,.asts-warning,.asts-source-note) { margin-top: 0; }
main.investing-page .asts-dashboard .asts-whatif-card [data-asts-launch-controls] { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 5px; margin: 0; }
main.investing-page .asts-dashboard .asts-whatif-card [data-asts-launch-controls] button { min-width: 0; padding: 7px 5px; }
main.investing-page .asts-dashboard .asts-whatif-card .asts-resource-details { margin-top: 0; padding-inline: 10px; }
main.investing-page .asts-dashboard .asts-whatif-panel > #asts-heatmap { margin-top: 14px; }
main.investing-page .asts-dashboard .asts-heatmap-tools { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 10px 14px; margin-block: 10px; }
main.investing-page .asts-dashboard .asts-heatmap-tools label { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 8px; color: #234e78; font-size: calc(14px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-heatmap-tools select { min-width: 76px; min-height: 44px; padding: 8px; border: 1px solid #afc9ea; border-radius: 5px; background: #fff; color: #173754; font-size: calc(15px * var(--asts-read-scale,1)); }

/* A numerical table remains the heatmap's complete non-color alternative. */
main.investing-page .asts-dashboard .asts-heatmap { width: 100%; max-width: 100%; margin-block: 12px 0; font-variant-numeric: tabular-nums; }
main.investing-page .asts-dashboard .asts-heatmap table,
main.investing-page .asts-dashboard table.asts-heatmap { width: 100%; border-collapse: separate; border-spacing: 3px; table-layout: fixed; }
main.investing-page .asts-dashboard .asts-heatmap :is(th,td) { min-width: 0; padding: 10px 8px; border: 1px solid #d7e4f2; border-radius: 4px; color: #163e68; font-size: calc(13px * var(--asts-read-scale,1)); line-height: 1.4; text-align: center; vertical-align: middle; white-space: normal; overflow-wrap: anywhere; }
main.investing-page .asts-dashboard .asts-heatmap th { background: #eff5fc; font-weight: 700; }
main.investing-page .asts-dashboard .asts-heatmap th:first-child { text-align: left; }
main.investing-page .asts-dashboard .asts-heatmap td { background: #e5f0fc; font-weight: 700; }
main.investing-page .asts-dashboard .asts-heatmap :is(.is-low,[data-heat='low']) { background: #eff6fd; color: #244d78; }
main.investing-page .asts-dashboard .asts-heatmap :is(.is-medium,[data-heat='medium']) { background: #cce1f6; color: #163d67; }
main.investing-page .asts-dashboard .asts-heatmap :is(.is-high,[data-heat='high']) { background: #8ebbe4; color: #082c50; }
main.investing-page .asts-dashboard .asts-heatmap caption { padding: 8px 3px; background: transparent; color: #315274; font-size: calc(13px * var(--asts-read-scale,1)); text-align: left; }
main.investing-page .asts-dashboard .asts-heatmap-legend { display: flex; flex-wrap: wrap; align-items: center; gap: 7px 14px; margin-top: 8px; font-size: calc(13px * var(--asts-read-scale,1)); color: #315274; }

/* The next rows keep business, milestones and thesis within the same view. */
main.investing-page .asts-dashboard :is(.asts-research-trio,.asts-research-pair) { display: grid; align-items: start; gap: 16px; }
main.investing-page .asts-dashboard .asts-research-trio { grid-template-columns: repeat(3,minmax(0,1fr)); }
main.investing-page .asts-dashboard .asts-research-pair { grid-template-columns: repeat(2,minmax(0,1fr)); }
main.investing-page .asts-dashboard :is(.asts-research-trio,.asts-research-pair) > * { min-width: 0; }
main.investing-page .asts-dashboard .asts-research-trio .asts-panel-heading h2 { font-size: calc(19px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-research-trio .asts-business-flow { grid-template-columns: minmax(0,1fr); gap: 10px; margin: 0; }
main.investing-page .asts-dashboard .asts-research-trio .asts-business-step { display: grid; grid-template-columns: minmax(90px,.85fr) minmax(0,1.15fr); gap: 10px; align-items: center; text-align: left; }
main.investing-page .asts-dashboard .asts-research-trio .asts-business-step > div:first-child { min-height: 0; flex-direction: row; justify-content: flex-start; gap: 8px; padding: 9px; }
main.investing-page .asts-dashboard .asts-research-trio .asts-business-step div > .asts-icon { flex: 0 0 23px; width: 23px; height: 23px; margin: 0; }
main.investing-page .asts-dashboard .asts-research-trio .asts-business-step :is(h3,strong) { font-size: calc(13px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-research-trio .asts-business-step p { margin: 0; font-size: calc(14px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-research-trio .asts-business-step::after { content: none; }
main.investing-page .asts-dashboard .asts-timeline-item { gap: 9px; padding: 10px; border: 1px solid #e1eaf5; background: #f5f9fe; }
main.investing-page .asts-dashboard .asts-timeline-item p { font-size: calc(14px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-timeline-item > .asts-icon { flex: 0 0 20px; width: 20px; height: 20px; }
main.investing-page .asts-dashboard .asts-research-trio .asts-watch-grid { grid-template-columns: minmax(0,1fr); }
main.investing-page .asts-dashboard .asts-watch-grid p { font-size: calc(14px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-research-pair .asts-risk-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
main.investing-page .asts-dashboard .asts-risk-grid p { font-size: calc(14px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-resource-details { padding: 0 16px; border: 1px solid var(--asts-line); border-radius: 7px; background: #fff; }
main.investing-page .asts-dashboard .asts-resource-details > summary { min-height: 48px; padding-block: 13px; color: #144987; font-size: calc(15px * var(--asts-read-scale,1)); line-height: 1.5; font-weight: 700; cursor: pointer; }
main.investing-page .asts-dashboard .asts-resource-details[open] { padding-bottom: 16px; }
main.investing-page .asts-dashboard .asts-resource-details > .asts-panel { margin-top: 10px; }
main.investing-page .asts-dashboard .asts-panel details:not(.asts-data-table) :is(p,li) { font-size: calc(14px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard :is(.asts-source-note,.asts-source,.asts-panel-heading p,.asts-timeline-item small,.asts-signal-card small,.asts-pill),
main.investing-page .asts-dashboard #asts-updating-quote .asts-small { font-size: calc(13px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-footer-banner { margin: 0; padding: 20px; }
main.investing-page .asts-dashboard .asts-footer-banner h2 { font-size: calc(24px * var(--asts-read-scale,1)); }

/* Reading controls retain their inherited type scale; color never carries data alone. */
main.investing-page .asts-dashboard[data-asts-contrast='high'] :is(.asts-whatif-grid > article,.asts-whatif-card,.asts-resource-details) { border-color: #657e9b; background: #fff; }
main.investing-page .asts-dashboard[data-asts-contrast='high'] .asts-heatmap :is(th,td) { border-color: #5b7390; color: #102c49; }
main.investing-page .asts-dashboard[data-asts-contrast='high'] .asts-heatmap :is(.is-low,[data-heat='low']) { background: #fff; }
main.investing-page .asts-dashboard[data-asts-contrast='high'] .asts-heatmap :is(.is-medium,[data-heat='medium']) { background: #dceafa; }
main.investing-page .asts-dashboard[data-asts-contrast='high'] .asts-heatmap :is(.is-high,[data-heat='high']) { background: #a9caea; }
main.investing-page .asts-dashboard[data-asts-contrast='high'] .asts-hero-actions a { border-color: #fff; background: #123653; color: #fff; }
main.investing-page .asts-dashboard[data-asts-text-size='large'] .asts-research-body > .asts-metrics { grid-template-columns: repeat(4,minmax(0,1fr)); }

@media (max-width: 1199px) {
  main.investing-page .asts-dashboard .asts-reference-layout { grid-template-columns: minmax(0,1fr); }
  main.investing-page .asts-dashboard .asts-reference-layout > .asts-sidebar { display: contents; }
  main.investing-page .asts-dashboard .asts-sidebar > .asts-contents { grid-column: 1/-1; order: 0; }
  main.investing-page .asts-dashboard .asts-reference-layout > .asts-research-body { order: 1; }
  main.investing-page .asts-dashboard .asts-sidebar > :not(.asts-contents) { order: 2; }
  main.investing-page .asts-dashboard .asts-contents .asts-section-nav { flex-direction: row; flex-wrap: nowrap; gap: 4px; overflow-x: auto; padding-bottom: 5px; }
  main.investing-page .asts-dashboard .asts-contents .asts-section-nav a { flex: 0 0 auto; }
  main.investing-page .asts-dashboard .asts-reading-controls { grid-column: auto; }
  main.investing-page .asts-dashboard .asts-reading-controls :is([data-asts-contrast],[data-asts-display-reset]) { flex-basis: auto; }
  main.investing-page .asts-dashboard .asts-research-body > .asts-metrics { grid-template-columns: repeat(4,minmax(0,1fr)); }
}

@media (max-width: 999px) {
  main.investing-page .asts-dashboard .asts-top-grid { grid-template-columns: minmax(0,1fr); }
  main.investing-page .asts-dashboard .asts-top-grid .asts-chart { max-width: 760px; margin-inline: auto; }
  main.investing-page .asts-dashboard .asts-whatif-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  main.investing-page .asts-dashboard .asts-research-trio { grid-template-columns: repeat(2,minmax(0,1fr)); }
  main.investing-page .asts-dashboard .asts-research-trio > :last-child { grid-column: 1/-1; }
  main.investing-page .asts-dashboard .asts-research-trio > :last-child .asts-watch-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 720px) {
  main.investing-page .asts-dashboard .asts-wrap { padding-inline: 16px; }
  main.investing-page .asts-dashboard .asts-reference-layout { gap: 14px; padding-block: 14px 22px; }
  main.investing-page .asts-dashboard .asts-reference-layout > .asts-sidebar { grid-template-columns: repeat(2,minmax(0,1fr)); }
  main.investing-page .asts-dashboard .asts-research-body { gap: 14px; }
  main.investing-page .asts-dashboard .asts-research-body > .asts-metrics { grid-template-columns: repeat(2,minmax(0,1fr)); }
  main.investing-page .asts-dashboard .asts-research-body .asts-metric { flex-direction: row; gap: 9px; }
  main.investing-page .asts-dashboard .asts-research-body .asts-metric-label { min-height: 0; }
  main.investing-page .asts-dashboard :is(.asts-research-trio,.asts-research-pair) { grid-template-columns: minmax(0,1fr); gap: 14px; }
  main.investing-page .asts-dashboard .asts-research-trio > :last-child { grid-column: auto; }
  main.investing-page .asts-dashboard .asts-hero h1 { font-size: calc(34px * var(--asts-read-scale,1)); }
  main.investing-page .asts-dashboard .asts-hero-subtitle { max-width: 100%; font-size: calc(16px * var(--asts-read-scale,1)); }
  main.investing-page .asts-dashboard .asts-hero-actions a { min-height: 44px; }
  main.investing-page .asts-dashboard .asts-heatmap :is(th,td) { padding: 8px 5px; }
  main.investing-page .asts-dashboard[data-asts-text-size='large'] .asts-research-body > .asts-metrics { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 520px) {
  main.investing-page .asts-dashboard .asts-wrap { padding-inline: 12px; }
  main.investing-page .asts-dashboard .asts-hero-copy { padding-block: 20px; }
  main.investing-page .asts-dashboard .asts-hero h1 { font-size: calc(30px * var(--asts-read-scale,1)); }
  main.investing-page .asts-dashboard .asts-panel { padding: 13px; }
  main.investing-page .asts-dashboard .asts-reference-layout > .asts-sidebar { grid-template-columns: minmax(0,1fr); }
  main.investing-page .asts-dashboard .asts-contents .asts-section-nav { display: flex; gap: 4px; }
  main.investing-page .asts-dashboard .asts-contents .asts-section-nav a { min-height: 44px; }
  main.investing-page .asts-dashboard .asts-top-grid .asts-stats dl { grid-template-columns: repeat(2,minmax(0,1fr)); }
  main.investing-page .asts-dashboard .asts-top-grid .asts-scenario-form { grid-template-columns: minmax(0,1fr); padding: 11px; }
  main.investing-page .asts-dashboard .asts-top-grid .asts-scenario-form :is(input,select) { font-size: calc(16px * var(--asts-read-scale,1)); }
  main.investing-page .asts-dashboard .asts-whatif-grid { grid-template-columns: minmax(0,1fr); }
  main.investing-page .asts-dashboard .asts-research-trio > :last-child .asts-watch-grid,
  main.investing-page .asts-dashboard .asts-research-pair .asts-risk-grid { grid-template-columns: minmax(0,1fr); }
  main.investing-page .asts-dashboard .asts-resource-details { padding-inline: 13px; }
  main.investing-page .asts-dashboard .asts-heatmap table,
  main.investing-page .asts-dashboard table.asts-heatmap { min-width: 360px; border-spacing: 2px; }
  main.investing-page .asts-dashboard .asts-heatmap :is(th,td) { padding: 8px 4px; white-space: nowrap; overflow-wrap: normal; }
  main.investing-page .asts-dashboard[data-asts-text-size='large'] :is(.asts-top-grid .asts-stats dl,.asts-top-grid .asts-signal-grid) { grid-template-columns: minmax(0,1fr); }
}

@media (max-width: 360px) {
  main.investing-page .asts-dashboard .asts-research-body .asts-metric { flex-direction: column; }
  main.investing-page .asts-dashboard .asts-top-grid .asts-signal-grid { grid-template-columns: minmax(0,1fr); }
  main.investing-page .asts-dashboard .asts-research-trio .asts-business-step { grid-template-columns: minmax(0,1fr); }
}

@media print {
  main.investing-page .asts-dashboard { background: #fff; }
  main.investing-page .asts-dashboard .asts-reference-layout { display: block; padding-block: 0; }
  main.investing-page .asts-dashboard .asts-hero,
  main.investing-page .asts-dashboard .asts-hero-copy { min-height: 0; }
  main.investing-page .asts-dashboard .asts-hero-actions,
  main.investing-page .asts-dashboard .asts-contents { display: none !important; }
  main.investing-page .asts-dashboard :is(.asts-research-body,.asts-top-grid,.asts-research-trio,.asts-research-pair,.asts-whatif-grid) { display: block; }
  main.investing-page .asts-dashboard .asts-research-body > .asts-metrics { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); }
  main.investing-page .asts-dashboard :is(.asts-panel,.asts-whatif-grid > article,.asts-resource-details) { box-shadow: none; margin-block: 10px; }
  main.investing-page .asts-dashboard .asts-heatmap :is(th,td) { color: #111; border-color: #777; background: #fff; }
}

/* September reference: price + key stats, followed by two short-horizon labs. */
main.investing-page .asts-dashboard .asts-top-grid { grid-template-columns: minmax(0,2.1fr) minmax(250px,1fr); }
main.investing-page .asts-dashboard .asts-top-grid .asts-stats dl { display: block; }
main.investing-page .asts-dashboard .asts-top-grid .asts-stats dl > div { display: flex; flex-direction: row; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 5px; border: 0; border-bottom: 1px solid var(--asts-line); border-radius: 0; background: transparent; }
main.investing-page .asts-dashboard .asts-top-grid .asts-stats dd { flex: 0 0 auto; max-width: 48%; text-align: right; font-size: calc(16px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-top-grid .asts-stats dl > div:is(:last-child,:nth-last-child(2)) { border: 0; border-bottom: 1px solid var(--asts-line); padding: 12px 5px; }
main.investing-page .asts-dashboard .asts-direction-panel { padding: 16px; background: linear-gradient(120deg,#fff,#f5faff); }
main.investing-page .asts-dashboard :is(.asts-direction-warning,.asts-direction-verdict) { display: flex; align-items: flex-start; gap: 8px; }
main.investing-page .asts-dashboard .asts-direction-warning { border: 1px solid #ffd0d5; border-radius: 6px; background: #fff5f6; color: #9d1938; padding: 10px 12px; margin-bottom: 14px; }
main.investing-page .asts-dashboard .asts-direction-warning p { margin: 0; }
main.investing-page .asts-dashboard .asts-direction-warning .asts-icon { flex: 0 0 21px; width: 21px; height: 21px; }
main.investing-page .asts-dashboard .asts-direction-jumps { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 12px; }
main.investing-page .asts-dashboard .asts-direction-jumps a { display: inline-flex; align-items: center; justify-content: center; min-height: 42px; padding: 9px 16px; border: 1px solid #c5dcfa; background: #fff; border-radius: 5px; color: #0054c4; font-weight: 700; text-decoration: none; }
main.investing-page .asts-dashboard .asts-direction-jumps a:first-child { background: #0068ef; color: #fff; border-color: #0068ef; }
main.investing-page .asts-dashboard .asts-direction-inputs { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 8px; margin-bottom: 14px; }
main.investing-page .asts-dashboard .asts-direction-inputs > div { padding: 10px; background: #f1f7ff; border: 1px solid #d5e6fb; border-radius: 5px; }
main.investing-page .asts-dashboard .asts-direction-inputs span { display: block; font-size: calc(13px * var(--asts-read-scale,1)); color: #38587b; margin-bottom: 5px; }
main.investing-page .asts-dashboard .asts-direction-inputs strong { display: block; font-size: calc(17px * var(--asts-read-scale,1)); color: #0a315d; }
main.investing-page .asts-dashboard .asts-direction-card { border: 1px solid #cfe2fa; border-radius: 7px; background: #fff; margin-block: 14px; overflow: hidden; scroll-margin-top: 100px; }
main.investing-page .asts-dashboard .asts-direction-card > h3 { display: flex; align-items: center; gap: 12px; padding: 0; margin: 0; background: #f0f6ff; font-size: calc(17px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-direction-card > h3 > span { background: #0068ef; color: #fff; padding: 12px 18px; }
main.investing-page .asts-dashboard .asts-direction-card > h3 small { color: #38587b; font-weight: 400; font-size: calc(13px * var(--asts-read-scale,1)); padding-right: 12px; }
main.investing-page .asts-dashboard .asts-direction-grid { display: grid; grid-template-columns: 1.25fr 1.25fr 1fr 1fr; gap: 14px; padding: 14px; }
main.investing-page .asts-dashboard .asts-direction-grid > * { min-width: 0; margin: 0; }
main.investing-page .asts-dashboard .asts-direction-grid h4 { font-size: calc(14px * var(--asts-read-scale,1)); line-height: 1.45; margin: 0 0 12px; color: #0057bf; }
main.investing-page .asts-dashboard .asts-direction-verdict { padding: 9px; margin-bottom: 14px; border-radius: 5px; background: #edf5ff; color: #20446d; font-size: calc(13px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-direction-verdict .asts-icon { flex: 0 0 20px; width: 20px; height: 20px; }
main.investing-page .asts-dashboard .asts-direction-bar-row { display: grid; grid-template-columns: 42px minmax(0,1fr) 46px; gap: 7px; align-items: center; margin: 14px 0; font-size: calc(13px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-direction-bar-row strong { text-align: right; font-variant-numeric: tabular-nums; }
main.investing-page .asts-dashboard .asts-direction-track { height: 15px; overflow: hidden; border-radius: 4px; background: #e5edf6; }
main.investing-page .asts-dashboard .asts-direction-track i { display: block; height: 100%; background: #098769; }
main.investing-page .asts-dashboard .asts-direction-track [data-direction-bar='flat'] { background: #6a86b6; }
main.investing-page .asts-dashboard .asts-direction-track [data-direction-bar='down'] { background: #d83a60; }
main.investing-page .asts-dashboard .asts-direction-fan svg { display: block; width: 100%; height: auto; color: #38587b; }
main.investing-page .asts-dashboard .asts-direction-fan text { font-size: 12px; fill: currentColor; }
main.investing-page .asts-dashboard .asts-direction-fan figcaption { font-size: calc(13px * var(--asts-read-scale,1)); line-height: 1.45; color: #466483; }
main.investing-page .asts-dashboard .asts-direction-bounds dl { margin: 0; background: #f4f8fd; border-radius: 5px; }
main.investing-page .asts-dashboard .asts-direction-bounds dl > div { display: grid; gap: 5px; padding: 12px; border-bottom: 1px solid #dce7f4; }
main.investing-page .asts-dashboard .asts-direction-bounds :is(dt,dd) { margin: 0; font-size: calc(13px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-direction-bounds strong { font-size: calc(16px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-direction-bounds small { display: block; margin-top: 4px; }
main.investing-page .asts-dashboard .asts-direction-settings label { display: block; margin-bottom: 9px; font-size: calc(13px * var(--asts-read-scale,1)); font-weight: 500; }
main.investing-page .asts-dashboard .asts-direction-settings :is(select,input) { display: block; width: 100%; min-width: 0; min-height: 40px; font: inherit; color: #15365b; border: 1px solid #bdd3ee; border-radius: 4px; background: #fff; padding: 6px; margin-top: 4px; }
main.investing-page .asts-dashboard .asts-direction-settings button { width: 100%; margin-bottom: 8px; min-height: 40px; padding-inline: 6px; font-size: calc(13px * var(--asts-read-scale,1)); }
main.investing-page .asts-dashboard .asts-direction-card > :is(.asts-direction-assumptions,[data-direction-status]) { margin: 0; padding: 8px 14px; font-size: calc(13px * var(--asts-read-scale,1)); background: #f1f7ff; }
main.investing-page .asts-dashboard [data-direction-status]:empty { display: none; }
main.investing-page .asts-dashboard .asts-direction-method { border: 1px solid #cde1fb; background: #f2f8ff; padding: 12px; border-radius: 5px; }
main.investing-page .asts-dashboard .asts-direction-method summary { cursor: pointer; color: #0054bd; font-weight: 700; }
main.investing-page .asts-dashboard .asts-scenario-row { align-items: start; grid-template-columns: minmax(0,1.5fr) minmax(0,1fr); }
main.investing-page .asts-dashboard .asts-scenario-row .asts-scenario-form { grid-template-columns: repeat(2,minmax(0,1fr)); }
main.investing-page .asts-dashboard .asts-scenario-row .asts-signal-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
main.investing-page .asts-dashboard .asts-scenario-row .asts-watch-grid { grid-template-columns: minmax(0,1fr); }
main.investing-page .asts-dashboard[data-asts-contrast='high'] :is(.asts-direction-warning,.asts-direction-verdict,.asts-direction-inputs > div,.asts-direction-bounds dl,.asts-direction-method) { color: #102c49; border-color: #5b7390; background: #fff; }
main.investing-page .asts-dashboard[data-asts-text-size='large'] .asts-direction-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
@media (max-width:1399px) {
 main.investing-page .asts-dashboard .asts-direction-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width:999px) {
 main.investing-page .asts-dashboard .asts-top-grid { grid-template-columns: minmax(0,1fr); }
 main.investing-page .asts-dashboard .asts-top-grid .asts-stats dl { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width:720px) {
 main.investing-page .asts-dashboard .asts-direction-inputs { grid-template-columns: repeat(2,minmax(0,1fr)); }
 main.investing-page .asts-dashboard .asts-direction-card > h3 { align-items: stretch; flex-direction: column; gap: 0; }
 main.investing-page .asts-dashboard .asts-direction-card > h3 small { padding: 8px 12px; }
 main.investing-page .asts-dashboard .asts-scenario-row { grid-template-columns: minmax(0,1fr); }
}
@media (max-width:520px) {
 main.investing-page .asts-dashboard .asts-direction-panel { padding: 12px; }
 main.investing-page .asts-dashboard .asts-direction-grid,main.investing-page .asts-dashboard[data-asts-text-size='large'] .asts-direction-grid { grid-template-columns: minmax(0,1fr); }
 main.investing-page .asts-dashboard .asts-direction-settings :is(select,input) { min-height: 44px; font-size: 16px; }
 main.investing-page .asts-dashboard .asts-direction-settings button { min-height: 44px; }
 main.investing-page .asts-dashboard .asts-direction-bounds dl { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); }
 main.investing-page .asts-dashboard .asts-direction-bounds dl > div { padding: 8px 5px; }
 main.investing-page .asts-dashboard .asts-direction-bounds strong { font-size: calc(14px * var(--asts-read-scale,1)); }
 main.investing-page .asts-dashboard .asts-top-grid .asts-stats dl { display: block; }
}
@media print {
 main.investing-page .asts-dashboard .asts-direction-settings { display: none; }
 main.investing-page .asts-dashboard .asts-direction-grid { grid-template-columns: 1fr 1fr 1fr; }
 main.investing-page .asts-dashboard .asts-direction-jumps { display: none; }
}
