/* Mobile-first report edition. Physical diagrams keep their own coordinates. */
.discovery-preview{display:grid;grid-template-columns:minmax(160px,.65fr) 1fr;gap:24px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:24px;margin-block-end:28px}.discovery-preview svg{width:100%;max-height:230px}.discovery-preview h2{font-size:28px;line-height:1.5;margin:8px 0}.discovery-preview p{font-size:14px;line-height:1.8;color:var(--muted)}
.profile-visual{display:grid;grid-template-columns:minmax(180px,1fr) 1fr;gap:24px;align-items:center;max-width:730px;margin-inline:auto}.profile-chart{width:100%;max-height:290px;overflow:visible}.chart-grid{fill:none;stroke:var(--line);stroke-width:1}.chart-axis{stroke:var(--line)}.chart-profile{fill:var(--brand);fill-opacity:.2;stroke:var(--brand);stroke-width:2.5;stroke-linejoin:round}.chart-point{fill:var(--brand);stroke:var(--surface);stroke-width:2}.chart-index{fill:var(--ink);font:600 12px sans-serif}.chart-legend{padding-inline-start:24px}.chart-legend li{padding:10px 4px;font-size:14px;border-block-end:1px solid var(--line);line-height:1.7}.chart-legend li::marker{color:var(--muted);font-size:12px}.chart-legend strong{float:inline-end;margin-inline-start:10px}.chart-note{font-size:12px!important;line-height:1.8!important}.report-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-block:20px}.report-shortcuts a{display:grid;gap:5px;text-decoration:none;color:var(--ink);background:var(--brand-soft);padding:16px;border-radius:14px;border:1px solid var(--line);min-height:70px}.report-shortcuts strong{font-size:17px}.report-shortcuts span{font-size:12px;color:var(--muted);line-height:1.6}.report-shortcuts a:hover{border-color:var(--brand)}#trait-results,#career-dashboard,#explorations-host,#result-journal{scroll-margin-block-start:90px}
@media(max-width:680px){.discovery-preview{grid-template-columns:1fr;padding:20px;gap:8px}.discovery-preview svg{max-height:150px}.discovery-preview h2{font-size:25px}.profile-visual{gap:8px;grid-template-columns:1fr}.profile-chart{height:210px}.chart-legend{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;padding-inline-start:22px}.chart-legend li{font-size:12px;padding-block:7px}.report-shortcuts a{padding:12px;min-height:76px}.report-shortcuts strong{font-size:15px}.profile-takeaways{margin-block-start:12px}}
:root{--bg:#f5f6fa;--surface:#fff;--surface-strong:#fff;--ink:#20294b;--muted:#58617c;--line:#dce0ec;--brand:#34488f;--brand-hover:#253775;--brand-soft:#e9edfa;--forest:#20294b;--lime:#d7e3a5;--coral:#5368ac;--focus:#3047a0;--focused-width:1000px;--radius-card:20px;--shadow:0 12px 34px #29376308}
:root[data-theme=dark]{--bg:#141a2c;--surface:#1c2540;--surface-strong:#26314d;--ink:#f0f3ff;--muted:#bec7df;--line:#3d4865;--brand:#c7d4ff;--brand-hover:#e1e8ff;--brand-soft:#293451;--brand-ink:#182443;--forest:#f0f3ff;--focus:#d7e3a5}
body{background:var(--bg);color:var(--ink)}
.site-header{background:var(--surface);border-block-end:1px solid var(--line)}
.hero{padding-block:44px;gap:48px;align-items:center}
.hero h1{font-size:clamp(36px,5vw,66px);line-height:1.35;letter-spacing:-1px}
.hero-title-accent{color:var(--brand)}
.hero-description{font-size:18px;line-height:1.85;max-width:40ch}
.hero-kicker{font-size:13px;line-height:1.7;color:var(--muted)}
.hero-art{background:none;box-shadow:none;transform:none;border:0;min-height:0}
.profile-art{width:100%;height:auto;display:block}
.art-caption{position:static;background:transparent;padding:10px 18px;font-size:12px;color:var(--muted)}
.art-label,.floating-note,.hero-facts,.trait-strip,.portrait-summary{display:none}
.hero-actions{margin-block:20px 10px}
.primary-button,.secondary-button{min-height:50px;border-radius:12px;font-weight:600}
.portrait-section{padding-block:32px}.portrait-heading h2{font-size:30px}.benefits{gap:14px}.benefit-card{padding:24px;border:1px solid var(--line);box-shadow:none}
.transparency{padding-block:32px}.transparency-heading h2{font-size:28px}
.symbols-section{margin-block:20px}.symbols-section summary{min-height:48px}
.birthday-entry{border:1px solid var(--line);border-radius:14px;padding:14px 16px;margin:16px 0;max-width:460px;min-width:0;background:var(--surface)}
.birthday-entry legend{font-size:15px;font-weight:600;padding-inline:6px}.birthday-entry p{font-size:12px;color:var(--muted);line-height:1.75;margin:0 0 10px}
.birthday-fields{display:grid;grid-template-columns:1fr 1fr 1.35fr;gap:10px}.birthday-fields label{font-size:13px;display:grid;gap:5px}
.birthday-fields input{width:100%;min-width:0;height:46px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);font:inherit;text-align:center;padding:8px}
.results-view{padding-block:30px}.results-header h1{font-size:clamp(27px,4vw,40px);line-height:1.45}.results-header .completion-lead{font-size:13px;max-width:68ch}.results-header{margin-block-end:20px}
.profile-overview{border:1px solid var(--line);padding:28px;border-radius:22px;background:var(--surface);margin-block:16px 20px}
.profile-overview h2{font-size:clamp(24px,3.5vw,34px);line-height:1.55;margin:8px 0}.profile-overview>p{color:var(--muted);font-size:15px;line-height:1.85}
.profile-takeaways{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-block-start:22px}.takeaway{padding:16px;background:var(--brand-soft);border-radius:12px}.takeaway h3{font-size:15px;margin:0 0 6px}.takeaway p{font-size:13px;line-height:1.85;margin:0}
.trait-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-block:20px}
.trait-result-card{display:grid;grid-template-columns:1fr auto;gap:10px 12px;padding:18px 20px;min-height:0;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:none}
.trait-result-card .trait-number{display:none}.trait-result-card h2{font-size:17px;line-height:1.5;margin:0;grid-column:1;grid-row:1;align-self:center}.trait-score{font-size:25px;grid-row:1;grid-column:2;line-height:1.4;direction:ltr;text-align:end}.trait-score small{font-size:11px;display:block;font-weight:400;color:var(--muted)}
.trait-result-card progress{grid-column:1/-1;grid-row:2;width:100%;height:7px;border-radius:10px;appearance:none;border:0;background:var(--line)}
.trait-result-card progress::-webkit-progress-bar{background:var(--line);border-radius:10px}.trait-result-card progress::-webkit-progress-value{background:#5266b4;border-radius:10px}
.trait-result-card .trait-score{position:static;inset:auto;display:block;font-size:25px;min-width:0}.trait-result-card .trait-score small{display:block}.trait-result-card h2{padding-inline-end:0;min-width:0}.trait-result-card progress{margin:0}
.trait-explanation{grid-column:1/-1;font-size:13px;line-height:1.8}.trait-explanation summary{padding-block:6px;min-height:44px;cursor:pointer;font-weight:600}.trait-explanation p{margin:8px 0}
.result-actions{display:flex;flex-wrap:wrap;gap:10px;margin-block:20px 32px}.result-actions>button{flex:1 1 auto;white-space:normal}
.career-dashboard,.explore-section,.zodiac-card{padding:26px;background:var(--surface);border:1px solid var(--line);border-radius:20px;margin-block:22px}
.career-dashboard h2,.explore-section>h2{font-size:26px;margin:6px 0;line-height:1.5}.dashboard-note,.explore-notice{font-size:13px;line-height:1.9;color:var(--muted)}
.career-group{border-block-start:1px solid var(--line);margin-block:14px;padding-block:8px}.career-group summary{font-size:17px;font-weight:600;padding-block:12px;min-height:48px;cursor:pointer}.job-card{border-inline-start:3px solid #b7c5ee;padding:6px 16px;margin-block:12px}.job-card h3{font-size:17px;margin:2px 0}.job-card p{font-size:14px;line-height:1.9;margin:6px 0}.career-dashboard small{display:block;color:var(--muted);font-size:12px;line-height:1.9}
.explore-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.explore-card{padding:20px;background:var(--brand-soft);border-radius:16px;border:1px solid var(--line);display:flex;flex-direction:column;align-items:stretch}.explore-card h3{font-size:19px;line-height:1.65;margin:0 0 10px}.explore-card p{font-size:13px;line-height:1.8}.explore-count{color:var(--muted);font-size:12px}.explore-card .explore-button{margin-block-start:auto}
.explore-button{min-height:48px;border:1px solid transparent;border-radius:10px;padding:10px 18px;background:var(--brand);color:var(--brand-ink);font:inherit;font-weight:600;cursor:pointer}.explore-secondary{border-color:var(--line);background:var(--surface);color:var(--ink)}.explore-button:disabled{opacity:.5;cursor:default}
.explore-question{min-width:0;border:0;padding:0;margin-block:20px}.explore-question legend{font-size:22px;font-weight:600;line-height:1.8;margin-block-end:18px}.explore-choices{display:grid;gap:10px}.explore-choice{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:12px;padding:14px 16px;min-height:50px;line-height:1.7;font-size:15px;cursor:pointer}.explore-choice:has(input:checked){background:var(--brand-soft);border-color:var(--brand)}.explore-choice input{width:19px;height:19px;accent-color:var(--brand);flex:0 0 auto}
.explore-actions{display:flex;flex-wrap:wrap;gap:10px;margin-block:20px}.explore-progress{width:100%;accent-color:var(--brand)}.explore-result h3{font-size:25px;line-height:1.6}.explore-result p,.explore-reasons li{font-size:15px;line-height:1.9}.explore-result details{border-block-start:1px solid var(--line);padding-block:12px}.explore-result summary{min-height:44px;cursor:pointer;font-weight:600}.explore-evidence{font-size:13px;line-height:1.9}
.zodiac-card{background:var(--brand-soft);border-style:dashed}.zodiac-card>p:first-child{font-size:11px;letter-spacing:.5px;font-weight:600}.zodiac-card h3{font-size:23px;margin:8px 0}.zodiac-card p{font-size:14px;line-height:1.8}.zodiac-card small{display:block;color:var(--muted);line-height:1.8;font-size:12px}
.result-symbols{border:1px solid var(--line);border-radius:14px;padding:16px;margin-block:20px}.result-symbols>summary{font-weight:600;cursor:pointer;min-height:44px}.result-symbols img{max-width:100px}.result-symbol-card{padding:14px}.result-symbol-card h2{font-size:22px}.result-symbol-card p{font-size:14px;line-height:1.8}
.assessment-view{max-width:650px;padding-block:32px}.question-title{font-size:clamp(23px,4vw,32px);line-height:1.8;margin-block:20px}.answer-scale{display:grid;grid-template-columns:1fr;gap:9px}.answer-option{min-height:53px;border-radius:12px;background:var(--surface);border:1px solid var(--line);padding:13px 16px;font-size:16px}.answer-option:has(input:checked){background:var(--brand-soft);border-color:var(--brand)}
.defer-note{font-size:13px;line-height:1.8;color:var(--muted)}.defer-button{min-height:46px;cursor:pointer;font:inherit;color:var(--muted);background:none;border:1px solid var(--line);border-radius:10px;padding:10px 14px}
.answer-option{padding:0;border:0;min-height:0;background:transparent}.answer-option span{min-block-size:50px;padding:10px 14px;font-size:15px;line-height:1.7;border-radius:12px}
.journal-panel{padding:22px}.journal-panel h2{font-size:24px}.journal-panel p{font-size:13px;line-height:1.8}
:focus-visible{outline:3px solid var(--focus);outline-offset:4px}
.answer-help,.profile-score-details,.birthday-optional{border-block:1px solid var(--line);margin-block:14px;padding-block:8px;font-size:14px;line-height:1.8}
.answer-help>summary,.profile-score-details>summary,.birthday-optional>summary{cursor:pointer;min-height:44px;display:list-item;padding-block:10px;font-weight:600}
.profile-takeaways{grid-template-columns:repeat(2,minmax(0,1fr))}
.takeaway p{font-size:15px;line-height:1.9}
#insufficient-view{padding-block:36px;line-height:1.9}
#insufficient-view button{margin-block:8px}
.question-heading{display:flex;align-items:center;gap:8px;position:relative}
.question-heading h1{flex:1;min-width:0}
#item-help{flex:0 0 44px}
#item-help summary{width:44px;height:44px;display:grid;place-items:center;cursor:pointer;border:1px solid var(--line);border-radius:50%;font-weight:700;background:var(--surface)}
#item-help[open] p{position:absolute;inset-inline:0;top:100%;z-index:3;margin:0;padding:16px;background:var(--surface);border:2px solid var(--brand);border-radius:12px;box-shadow:0 8px 24px #0002;font-size:15px;line-height:1.9}
[hidden]{display:none!important}
@media(max-width:680px){:root{--page-gutter:20px}.hero{display:block;padding-block:26px}.hero h1{font-size:38px}.hero-description{font-size:16px}.hero-art{display:none}.hero-actions{display:flex;flex-wrap:wrap}.hero-actions .primary-button{width:100%}.hero-meta{font-size:12px}.birthday-entry{max-width:none;margin-block:16px}.profile-overview,.career-dashboard,.explore-section,.zodiac-card{padding:20px}.profile-takeaways{grid-template-columns:1fr;gap:8px}.takeaway{padding:12px 14px}.takeaway h3{font-size:14px}.takeaway p{font-size:12px}.trait-results{grid-template-columns:1fr;gap:10px}.trait-result-card{padding:15px 18px}.explore-grid{grid-template-columns:1fr}.explore-card{padding:18px}.explore-card h3{font-size:18px}.result-actions{display:grid;grid-template-columns:1fr 1fr}.result-actions .primary-button{grid-column:1/-1}.result-actions .quiet-button{font-size:12px}.career-dashboard h2,.explore-section>h2{font-size:24px}.results-header h1{font-size:28px}.question-title{font-size:25px}.question-guidance{font-size:13px}.assessment-actions{gap:10px;flex-wrap:wrap}.benefits{grid-template-columns:1fr}.symbols-section summary{font-size:14px}.primary-nav{display:none}}
@media print{.explore-actions,.explore-button,.birthday-entry{display:none!important}.trait-results{grid-template-columns:1fr 1fr}.trait-result-card,.career-dashboard,.zodiac-card{break-inside:avoid}.profile-overview,.career-dashboard,.explore-section,.zodiac-card{box-shadow:none;color:#18203b;background:white}details[open]{display:block}}
@media(max-width:680px){.hero{padding-block:8px}.hero-actions .quiet-link{display:none}.hero-meta{margin-block-start:6px}.assessment-view{padding-block:16px}.question-title{margin-block:12px;font-size:23px;line-height:1.6}}
