/* Investor Atlas is isolated from the existing commerce and assessment UI. */
.investor-atlas-page { background: #fff; }
body.investor-atlas-page .ia { --ia-ink: #141414; --ia-muted: #626262; --ia-line: #dedede; color: var(--ia-ink); font: 15px/1.6 var(--font-ui); letter-spacing: 0; max-width: 1440px; margin: auto; padding: 0 64px; }
body.investor-atlas-page .ia * { box-sizing: border-box; letter-spacing: 0; }
body.investor-atlas-page .ia [hidden] { display: none !important; }
body.investor-atlas-page .ia h1, body.investor-atlas-page .ia h2, body.investor-atlas-page .ia h3 { font-family: var(--font-serif) !important; font-weight: 500 !important; line-height: 1.08 !important; text-transform: none !important; color: inherit; overflow-wrap: anywhere; margin: 0; }
body.investor-atlas-page .ia h1 { font-size: 74px !important; }
body.investor-atlas-page .ia h2 { font-size: 44px !important; }
body.investor-atlas-page .ia h3 { font-size: 32px !important; }
.ia p { margin: 0 0 20px; }
.ia svg { width: 18px; height: 18px; flex-shrink: 0; stroke-width: 1.5px; }
body.investor-atlas-page .ia button { font-family: var(--font-ui) !important; cursor: pointer; border-radius: 0 !important; box-shadow: none !important; text-transform: none !important; letter-spacing: 0 !important; }
body.investor-atlas-page .ia label { font-family: var(--font-ui) !important; font-size: 14px !important; font-weight: 400 !important; text-transform: none !important; letter-spacing: 0 !important; }
body.investor-atlas-page .ia svg { width: 18px !important; height: 18px !important; flex-shrink: 0 !important; }
.ia button:disabled { cursor: default; opacity: .4; }
.ia :is(button,a,input,summary):focus-visible { outline: 2px solid currentColor !important; outline-offset: 5px; }
.ia h2:focus, .ia legend:focus { outline: none !important; }
.ia-masthead { display: flex; justify-content: space-between; align-items: end; gap: 32px; padding: 42px 0 32px; }
.ia-masthead > p { margin: 0 8px 6px 0; font-size: 15px; line-height: 1.6; color: var(--ia-muted); }
.ia-back-link { display: inline-flex; align-items: center; gap: 10px; font-size: 11px; text-transform: uppercase; text-decoration: none; margin-bottom: 16px; }
.ia-status-line { border-block: 1px solid var(--ia-line); display: flex; justify-content: space-between; gap: 20px; padding: 13px 0; font-size: 10px; text-transform: uppercase; color: var(--ia-muted); align-items: center; }
.ia-language-label { margin: 0; }
.ia-language-label select { border: 0 !important; border-bottom: 1px solid #bbb !important; background: #fff !important; color: #111 !important; font: 12px var(--font-ui) !important; padding: 10px 24px 10px 0 !important; min-height: 44px !important; height: 44px !important; border-radius: 0 !important; }
body.investor-atlas-page .ia .ia-text-link { background: none; border: 0; color: inherit; display: inline-flex; align-items: center; justify-content: flex-start; gap: 8px; min-height: 32px; padding: 3px 0; font-size: 11px; text-transform: uppercase; text-decoration: underline; text-underline-offset: 5px; }
.ia-disclosure { padding: 36px 0; max-width: 800px; }
.ia-disclosure h2 { margin-bottom: 20px !important; }
.ia-chapters { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 16px; padding: 25px 0 0; }
body.investor-atlas-page .ia-chapters button { background: transparent; border: 0; border-bottom: 1px solid transparent; padding: 0 0 14px; display: flex; align-items: center; gap: 10px; font-size: 12px; color: var(--ia-muted); text-align: left; min-height: 44px; }
.ia-chapters button[aria-current="step"] { color: #111; border-bottom-color: #111; }
.ia-chapters button > span:first-child { font-family: var(--font-serif); font-size: 22px; font-weight: 500; }
.ia-chapters button > span:last-child { font: 500 12px/1.4 var(--font-ui); }
.ia-chapters button svg { width: 15px; }
.ia-workspace { display: grid; grid-template-columns: minmax(0,1.04fr) minmax(0,1fr); column-gap: 90px; padding: 40px 0 60px; }
.ia-interview { min-width: 0; }
.ia-question-meta { display: flex; justify-content: space-between; gap: 16px; font-size: 11px; color: var(--ia-muted); text-transform: uppercase; margin-bottom: 13px; }
.ia-progress { display: block; width: 100%; height: 2px; border: none; appearance: none; background: #e5e5e5; color: #111; margin: 0 0 27px; }
.ia-progress::-webkit-progress-bar { background: #e5e5e5; }
.ia-progress::-webkit-progress-value { background: #111; }
.ia-progress::-moz-progress-bar { background: #111; }
.ia fieldset { border: 0; padding: 0; margin: 0; min-width: 0; }
body.investor-atlas-page .ia legend { font: 500 36px/1.12 var(--font-serif) !important; margin: 0 0 16px; padding: 0; width: 100%; overflow-wrap: anywhere; }
#ia-question-context { font-size: 14px; color: var(--ia-muted); max-width: 52ch; line-height: 1.6; margin-bottom: 25px; }
.ia-options { border-top: 1px solid var(--ia-line); }
.ia-option { position: relative; display: flex; gap: 15px; padding: 17px 2px; min-height: 57px; border-bottom: 1px solid var(--ia-line); cursor: pointer; align-items: center; font-size: 14px; line-height: 1.5; }
.ia-option input { appearance: none; width: 19px !important; min-width: 19px !important; height: 19px !important; min-height: 19px !important; border: 1px solid #777 !important; border-radius: 50% !important; padding: 0 !important; margin: 0 !important; flex-shrink: 0; background: #fff !important; }
.ia-option input:checked { border: 5px solid #111 !important; }
.ia-option:has(input:checked) { color: #000; font-weight: 600; }
.ia-option:has(input:focus-visible) { outline: 2px solid #111; outline-offset: 3px; }
.ia-question-actions { display: flex; justify-content: space-between; align-items: center; margin-top: 23px; gap: 12px; }
.ia-question-actions > span { color: var(--ia-muted); font-size: 11px; }
body.investor-atlas-page .ia .ia-icon-button { display: inline-flex; justify-content: center; align-items: center; width: 44px !important; height: 44px !important; padding: 0 !important; border: 1px solid var(--ia-line); background: transparent; color: #111; flex-shrink: 0; }
body.investor-atlas-page .ia .ia-next { display: inline-flex; justify-content: space-between; align-items: center; gap: 32px; min-height: 48px; padding: 13px 22px; border: 1px solid #111; background: #111; color: #fff; font-size: 12px; }
.ia-why { margin: 24px 0; border: none; }
.ia-why summary { display: flex; align-items: center; justify-content: space-between; cursor: pointer; min-height: 44px; font-size: 12px; list-style: none; }
.ia-why summary::-webkit-details-marker { display: none; }
.ia-why[open] summary svg { transform: rotate(45deg); }
.ia-why p { color: var(--ia-muted); font-size: 13px; max-width: 58ch; }
.ia-remember { display: flex; align-items: center; gap: 10px; font-size: 12px; color: var(--ia-muted); cursor: pointer; min-height: 44px; }
.ia-remember input { width: 18px !important; min-width: 18px !important; height: 18px !important; min-height: 18px !important; padding: 0 !important; accent-color: #111; }
.ia-small { font-size: 11px; line-height: 1.5; color: var(--ia-muted); }
.ia-error { font-size: 13px; padding: 16px 0; border-bottom: 2px solid #111; color: #111; }
.ia-visual { min-width: 0; position: sticky; top: 100px; align-self: start; }
.ia-visual-heading { display: flex; align-items: center; justify-content: space-between; font-size: 10px; text-transform: uppercase; color: var(--ia-muted); }
.ia-visual-heading .ia-icon-button, .ia-visual-controls .ia-icon-button { border: none !important; }
.ia-scene { height: 405px; width: 100%; position: relative; touch-action: pan-y; }
.ia-scene canvas { display: block; width: 100%; height: 100%; cursor: grab; touch-action: pan-y; }
.ia-scene canvas:active { cursor: grabbing; }
.ia-scene-fallback { display: flex; flex-direction: column; align-items: center; justify-content: center; height: 100%; font: 500 48px/1.2 var(--font-serif); }
.ia-scene[data-ready] .ia-scene-fallback { display: none; }
.ia-visual-controls { display: flex; justify-content: center; gap: 12px; margin: -16px 0 20px; }
.ia-compass-readout { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border-top: 1px solid var(--ia-line); padding-top: 18px; gap: 12px; }
.ia-compass-readout span { display: block; font-size: 10px; color: var(--ia-muted); margin-bottom: 6px; }
.ia-compass-readout strong { font: 500 21px/1.2 var(--font-serif); display: block; }
body.investor-atlas-page .ia .ia-visual-note { font: italic 23px/1.3 var(--font-serif) !important; text-align: center; margin-top: 32px !important; }
.ia-eyebrow { font-size: 11px; color: var(--ia-muted); text-transform: uppercase; margin-bottom: 18px; }
.ia-review { padding: 64px 0; max-width: 900px; margin: auto; }
.ia-review > p { margin-top: 20px; }
.ia-review-chapter { padding-top: 28px; }
.ia-review-chapter h3 { margin-bottom: 20px !important; }
.ia-review-row { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 20px; border-top: 1px solid var(--ia-line); padding: 16px 0; align-items: center; }
.ia-review-row p { margin: 0; font-size: 13px; }
.ia-review-row strong { display: block; font-size: 14px; font-weight: 500; }
.ia-review-row p span { display: block; color: var(--ia-muted); margin-top: 5px; }
.ia-review-actions { display: flex; align-items: center; gap: 28px; padding-top: 40px; }
.ia-review-actions p { font-size: 12px; color: var(--ia-muted); max-width: 360px; margin: 0; }
.ia-report { padding-top: 60px; }
.ia-report-heading { text-align: center; max-width: 860px; margin: auto; }
body.investor-atlas-page .ia-report-heading h2 { font-size: 64px !important; }
#ia-report-subtitle { margin: 24px auto; font-size: 16px; color: var(--ia-muted); }
.ia-report-actions { display: flex; justify-content: center; flex-wrap: wrap; gap: 28px; }
.ia-report-disclaimer { text-align: center; font-size: 12px; color: var(--ia-muted); max-width: 620px; margin: 25px auto 42px !important; }
.ia-report-tabs { display: flex; gap: 40px; border-bottom: 1px solid var(--ia-line); }
body.investor-atlas-page .ia-report-tabs button { background: transparent; border: none; border-bottom: 2px solid transparent; padding: 17px 0; color: var(--ia-muted); font-size: 13px; }
.ia-report-tabs button[aria-selected="true"] { color: #111; border-bottom-color: #111; }
.ia-report-panel { padding: 48px 0; }
.ia-profile-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; }
.ia-dimension { border-top: 1px solid var(--ia-line); padding: 20px 0; }
.ia-dimension-heading { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; }
.ia-dimension h3 { font-size: 27px !important; }
.ia-dimension strong { font-weight: 400; font-size: 12px; text-align: right; }
.ia-dimension progress { display: block; width: 100%; height: 3px; appearance: none; margin: 20px 0 12px; border: 0; color: #111; }
.ia-dimension progress::-webkit-progress-bar { background: #ededed; }
.ia-dimension progress::-webkit-progress-value { background: #111; }
.ia-dimension progress::-moz-progress-bar { background: #111; }
.ia-dimension p { color: var(--ia-muted); font-size: 12px; margin: 0; }
.ia-flag { padding: 20px 0; border-top: 1px solid var(--ia-line); }
.ia-flag h3 { font-size: 27px !important; margin-bottom: 10px !important; }
.ia-flag p { font-size: 13px; color: var(--ia-muted); margin-bottom: 0; }
.ia-priorities { border-block: 1px solid var(--ia-line); display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 28px; padding: 30px 0; margin: 30px 0 50px; }
.ia-priorities p { margin: 0; font-size: 13px; }
.ia-priorities span { display: block; font-size: 10px; text-transform: uppercase; margin-bottom: 10px; color: var(--ia-muted); }
.ia-loss-lab { background: #111; color: #fff; display: grid; grid-template-columns: 1fr 1fr; gap: 64px; padding: 48px; }
.ia-loss-lab .ia-eyebrow { color: #ccc; }
.ia-loss-lab h3 { font-size: 44px !important; margin-bottom: 20px !important; }
.ia-loss-lab p { color: #ccc; font-size: 13px; max-width: 40ch; }
body.investor-atlas-page .ia .ia-lab-inputs label { display: block; color: #eee !important; font-size: 12px !important; margin-bottom: 24px; }
body.investor-atlas-page .ia .ia-lab-inputs input[type="number"] { display: block; background: transparent !important; color: #fff !important; width: 100%; border: 0 !important; border-bottom: 1px solid #777 !important; font: 500 32px var(--font-serif) !important; padding: 12px 0 !important; border-radius: 0; }
.ia-loss-lab .ia-error { color: #fff; border-color: #fff; }
.ia-lab-inputs input[type="range"] { display: block; width: 100%; height: 40px; accent-color: #fff; margin-top: 12px; }
.ia-lab-results { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.ia-lab-results span { font-size: 11px; color: #ccc; display: block; }
.ia-lab-results strong { font: 500 36px var(--font-serif); }
.ia-panel-intro { display: flex; justify-content: space-between; gap: 50px; padding-bottom: 40px; }
.ia-panel-intro h3 { font-size: 44px !important; }
.ia-panel-intro p { max-width: 460px; color: var(--ia-muted); font-size: 14px; }
.ia-asset { border-top: 1px solid var(--ia-line); }
.ia-asset summary { display: grid; grid-template-columns: 36px 1fr auto; align-items: center; gap: 20px; min-height: 105px; cursor: pointer; list-style: none; padding: 20px 0; }
.ia-asset summary::-webkit-details-marker { display: none; }
.ia-asset summary > span { color: var(--ia-muted); font-size: 11px; }
.ia-asset summary small { display: block; text-transform: uppercase; font: 10px/1.5 var(--font-ui); margin-bottom: 5px; }
.ia-asset summary strong { font: 500 34px/1.15 var(--font-serif); display: block; }
.ia-pathway-title { display: block; margin-top: 12px; color: var(--ia-muted); font: 400 13px/1.55 var(--font-ui); max-width: 66ch; }
.ia-asset[open] summary svg { transform: rotate(45deg); }
.ia-asset-body { padding: 0 0 32px 56px; display: grid; grid-template-columns: 1fr 1fr; gap: 22px 48px; }
.ia-asset-body h4 { font: 600 11px/1.6 var(--font-ui); text-transform: uppercase; margin: 0 0 8px; }
.ia-asset-body p { font-size: 14px; color: var(--ia-muted); margin: 0; }
.ia-asset-reflection { grid-column: 1/-1; border-left: 2px solid #8a6a3e; padding-left: 20px; }
.ia-evidence { grid-column: 1/-1; padding-top: 14px; }
.ia-evidence-row { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 24px; border-top: 1px solid var(--ia-line); padding: 14px 0; }
.ia-evidence-row p span { display: block; font-size: 12px; color: var(--ia-muted); margin-bottom: 4px; }
.ia-evidence-row strong { display: block; color: var(--ia-ink); font-size: 14px; font-weight: 500; }
body.investor-atlas-page .ia .ia-evidence-row button { min-width: 44px; min-height: 44px; }
.ia-next-steps { padding: 0 0 56px; }
.ia-next-steps h3 { margin-bottom: 28px !important; }
.ia-next-steps ol { list-style: none; counter-reset: next-step; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px; }
.ia-next-steps li { counter-increment: next-step; border-top: 1px solid var(--ia-line); padding-top: 22px; }
.ia-next-steps li::before { content: "0" counter(next-step); display: block; margin-bottom: 18px; font: 400 28px/1 var(--font-serif); }
body.investor-atlas-page .ia .ia-next-steps h4 { margin: 0 0 14px; font: 500 25px/1.16 var(--font-serif) !important; text-transform: none !important; overflow-wrap: anywhere; }
.ia-next-steps p { font-size: 13px; color: var(--ia-muted); }
.ia-learning-note { padding: 30px 0; border-bottom: 1px solid var(--ia-line); display: grid; grid-template-columns: 160px 1fr; gap: 28px; }
.ia-learning-note > span { font-size: 11px; text-transform: uppercase; }
.ia-learning-note h4 { font: 500 25px/1.2 var(--font-serif); margin: 0 0 14px; }
.ia-learning-note p { color: var(--ia-muted); font-size: 14px; }
.ia-adviser { margin-top: 50px; max-width: 760px; }
.ia-adviser li { padding: 8px 0; }
.ia-method { max-width: 800px; }
.ia-method h3 { margin-bottom: 24px !important; }
.ia-method ul { padding: 0; list-style: none; }
.ia-method li { border-top: 1px solid var(--ia-line); padding: 18px 0; }
.ia-method a { display: flex; justify-content: space-between; gap: 16px; text-underline-offset: 5px; }
.ia-footnote { display: flex; justify-content: space-between; gap: 40px; padding: 30px 0 50px; border-top: 1px solid var(--ia-line); color: var(--ia-muted); font-size: 11px; }
.ia-footnote p { max-width: 65ch; margin: 0; }
.ia-footnote > span { white-space: nowrap; }
.ia-dialog { width: min(540px,calc(100% - 40px)); padding: 40px; background: #fff; color: #111; border: 1px solid #111; border-radius: 0; }
.ia-dialog::backdrop { background: rgb(0 0 0 / .55); }
.ia-dialog h2 { margin-bottom: 20px !important; }
.ia-dialog .ia-text-link { margin: 20px 0 0; display: block !important; }
@media (max-width: 1100px) {
  body.investor-atlas-page .ia { padding-inline: 36px; }
  .ia-workspace { column-gap: 44px; }
  .ia-chapters { gap: 12px; }
  .ia-chapters button { flex-direction: column; align-items: start; gap: 3px !important; }
  .ia-scene { height: 340px; }
  .ia-compass-readout { grid-template-columns: 1fr; gap: 15px; }
  .ia-compass-readout > div { display: flex; justify-content: space-between; gap: 10px; }
  .ia-profile-grid { gap: 40px; }
}
@media (max-width: 760px) {
  body.investor-atlas-page .ia { padding-inline: 24px; }
  body.investor-atlas-page .ia h1 { font-size: 56px !important; }
  .ia-masthead { padding-top: 28px; }
  .ia-masthead > p { font-size: 12px; }
  .ia-status-line { flex-wrap: wrap; gap: 0 12px; }
  .ia-status-line > button { margin-left: auto; }
  .ia-workspace { grid-template-columns: 1fr; padding-top: 24px; }
  .ia-visual { position: relative; top: 0; order: -1; display: grid; grid-template-columns: 1fr 1fr; align-items: center; padding-bottom: 28px; }
  .ia-visual-heading { position: absolute; top: 0; left: 0; z-index: 1; }
  .ia-visual-heading > span { display: none; }
  .ia-scene { height: 200px; grid-column: 1; grid-row: 1; }
  .ia-compass-readout { border: 0; padding: 0 0 0 12px; gap: 15px; }
  .ia-compass-readout > div { display: block; }
  .ia-compass-readout strong { font-size: 19px; }
  .ia-visual-controls { display: none; }
  .ia-visual-note { display: none; }
  .ia-chapters { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 6px 16px; padding-top: 15px; }
  body.investor-atlas-page .ia-chapters button { flex-direction: row; gap: 8px !important; align-items: center; padding-bottom: 6px; min-height: 44px; font-size: 11px; }
  .ia-chapters button > span:first-child { font-size: 18px; }
  .ia-chapters button > span:last-child { font-size: 11px; }
  body.investor-atlas-page .ia legend { font-size: 32px !important; }
  .ia-report-tabs { gap: 16px; flex-wrap: wrap; }
  .ia-report-tabs button { font-size: 12px !important; }
  .ia-profile-grid { grid-template-columns: 1fr; gap: 32px; }
  .ia-priorities { grid-template-columns: 1fr 1fr; }
  .ia-loss-lab { grid-template-columns: 1fr; padding: 32px 24px; gap: 16px; }
  .ia-panel-intro { display: block; }
  .ia-panel-intro p { margin-top: 20px; }
  .ia-asset-body { grid-template-columns: 1fr; padding-left: 0; }
  .ia-next-steps ol { grid-template-columns: 1fr; gap: 16px; }
  .ia-next-steps li { display: grid; grid-template-columns: 32px minmax(0,1fr); gap: 16px; }
  .ia-evidence-row { gap: 16px; }
  .ia-asset summary { grid-template-columns: 24px 1fr auto; gap: 10px; }
  .ia-asset summary strong { font-size: 28px; }
  .ia-learning-note { grid-template-columns: 1fr; gap: 14px; }
  .ia-review-actions { display: block; }
  .ia-review-actions p { margin-top: 20px; }
  .ia-footnote { display: block; }
  .ia-footnote > span { display: block; margin-top: 20px; }
  body.investor-atlas-page .ia-report-heading h2 { font-size: 46px !important; }
}
@media (max-width: 430px) {
  body.investor-atlas-page .ia { padding-inline: 20px; }
  .ia-masthead > p { display: none; }
  .ia-status-line { font-size: 9px; }
  .ia-status-line > button { font-size: 9px !important; }
  .ia-chapters { gap: 6px 10px; }
  .ia-scene { height: 175px; }
  .ia-priorities { grid-template-columns: 1fr; }
  .ia-lab-results strong { font-size: 29px; }
}
@media (prefers-reduced-motion: reduce) { .ia *, .ia *::before, .ia *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; } }
@media print {
  body.investor-atlas-page .topbar, body.investor-atlas-page .footer, .ia-masthead, .ia-status-line, .ia-chapters, .ia-workspace, .ia-review, .ia-report-actions, .ia-report-tabs, .ia-loss-lab, .ia-dialog, .ia-disclosure { display: none !important; }
  body.investor-atlas-page .ia { padding: 0; font-size: 11pt; }
  body.investor-atlas-page .ia .ia-report-panel[hidden] { display: block !important; }
  .ia-report-panel { padding: 24px 0; }
  .ia-profile-grid, .ia-asset-body { display: block; }
  .ia-flag, .ia-dimension, .ia-asset { break-inside: avoid; }
  .ia-report-heading { text-align: left; }
}
