/* v0.2: scholarly inline math, quiet diagrams, and evidence-based learning portraits. */
.math-inline .katex{font-size:1.06em;line-height:1.2}
.math-display{display:block;overflow-x:auto;max-width:100%;padding:5px 0}
.math-display .katex-display{margin:.65em 0;text-align:left}
.math-inline{color:inherit}
.math-punctuation{font-family:serif}
.math-punctuation-a11y{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.question-stem{line-height:2;margin-bottom:24px}
.option>span:last-child{min-width:0}
.option .math-inline{line-height:inherit}
.answer-field>label>span{min-width:0}
.explanation-body{font-size:13px;line-height:1.95;padding-bottom:7px}
.explanation-body h3{font-size:12px;color:var(--muted);margin:12px 0 8px;font-weight:500}
.explanation-body ul,.explanation-body ol{padding-left:20px;margin:6px 0 18px}
.explanation-body li+li{margin-top:9px}
.explanation-body .math-inline .katex{font-size:1.08em}
.svg-label.svg-symbol{font-family:KaTeX_Main,'Times New Roman',serif;font-style:italic;font-size:16px}
.ray-diagram .svg-value{font-family:KaTeX_Main,'Times New Roman',serif;font-size:13px}
.zoom-image img{display:block;width:100%;min-width:700px}
.question-figure{margin-top:20px}
.profile-topline{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:10px 0 18px}
.profile-topline .eyebrow{margin:0}
.profile-topline>span{font:11px var(--data);color:var(--muted)}
.profile-hero{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:40px;align-items:center;border:1px solid #d8dfdd;border-radius:14px;padding:42px 46px;background:#f1f4f0;position:relative;overflow:hidden}
.profile-hero:before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:#597a6a}
.profile-kicker{font-size:12px;color:#596a61;margin-bottom:13px;letter-spacing:1px}
.profile-copy h1{font-size:42px;letter-spacing:1px;line-height:1.3;margin-bottom:15px}
.profile-tagline{font-size:17px;color:#43594b;letter-spacing:.2px}
.profile-conclusion{font-size:14px;line-height:1.9;max-width:650px;color:#535f57;margin-top:18px!important}
.profile-copy .button-row{margin-top:28px;gap:20px}
.profile-copy .text-link{font-size:12px}
.profile-art{display:grid;justify-items:center;position:relative;width:100%;max-width:310px}
.profile-art svg{width:100%;max-height:270px;overflow:visible}
.portrait-index{font:11px var(--data);letter-spacing:5px;color:#607467}
.portrait-caption{font-size:11px;letter-spacing:3px;color:#667c6e}
.portrait-orbit{fill:none;stroke:#cad9cf;stroke-width:1;stroke-dasharray:3 8;transform-origin:150px 140px;animation:portrait-orbit-in 1.2s ease-out both}
.portrait-orbit.inner{stroke:#dce5dd;stroke-dasharray:none;animation-delay:.1s}
.portrait-axis{stroke:#baccc0;stroke-width:1;stroke-dasharray:4 5}
.portrait-lens{fill:#e4ede5;stroke:#637e6a;stroke-width:1.5;animation:portrait-in .6s ease-out both}
.portrait-ray{fill:none;stroke:#417759;stroke-width:1.7;stroke-dasharray:630;animation:portrait-trace 1.4s .2s ease-out both}
.portrait-ray.secondary{stroke:#849e8c;stroke-width:1;animation-delay:.4s}
.portrait-focus{fill:#417759;stroke:#f1f4f0;stroke-width:3;animation:portrait-in .6s 1s ease-out both}
.profile-copy{animation:portrait-in .65s ease-out both}
.profile-stats{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line);padding:26px 0;margin-bottom:32px}
.profile-stats>div{padding:0 26px;border-left:1px solid var(--line);display:flex;align-items:baseline;gap:14px}
.profile-stats>div:first-child{padding-left:4px;border-left:0}
.profile-stats strong{font:30px var(--data);letter-spacing:-1px}
.profile-stats small{font-size:13px;letter-spacing:0;color:var(--muted)}
.profile-stats span{font-size:11px;color:var(--muted)}
.profile-plan{display:grid;grid-template-columns:1.1fr 1fr;gap:46px;margin:26px 0 34px}
.profile-plan h2{font-size:21px;margin-bottom:24px}
.profile-dimensions{padding:4px 0}
.dimension-row{margin:23px 0}
.dimension-row>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:13px;margin-bottom:9px}
.dimension-row>div>span{font-size:11px;color:var(--muted)}
.dimension-track{height:6px;border-radius:4px;background:#e4e8e1;overflow:hidden}
.dimension-track>span{display:block;width:var(--progress);height:100%;background:#728d7c;border-radius:4px;transform-origin:left;animation:portrait-bar .9s .15s ease-out both}
.dimension-row>small{display:block;font-size:10px;color:var(--muted);margin-top:7px}
.profile-next{border-left:1px solid var(--line);padding:4px 0 8px 38px}
.strength-note{font-size:13px;line-height:1.9;color:var(--muted);margin-top:0}
.next-reason{border-left:2px solid #b0c2b3;padding:3px 0 3px 17px;margin:23px 0}
.next-reason>.mono{font-size:10px;color:#697c6e}
.next-reason>p{font-size:14px;line-height:1.85;margin-top:5px}
.profile-next>.text-link{font-size:13px}
.profile-evidence{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:4px 0;margin:8px 0 17px}
.profile-evidence>summary{cursor:pointer;min-height:56px;display:flex;align-items:center;gap:20px;font-size:14px;font-weight:500;list-style:none}
.profile-evidence>summary>span{font-size:11px;font-weight:400;color:var(--muted);margin-left:auto}
.profile-evidence>summary:after{content:'+';font:20px var(--data);color:var(--muted)}
.profile-evidence[open]>summary:after{content:'−'}
.profile-evidence>.micro{margin:0 0 20px}
.profile-evidence .results-grid{margin-bottom:20px}
.profile-footnote{font-size:11px;line-height:1.8;color:var(--muted);margin-bottom:22px}
@keyframes portrait-trace{from{stroke-dashoffset:630}to{stroke-dashoffset:0}}
@keyframes portrait-in{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@keyframes portrait-bar{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes portrait-orbit-in{from{opacity:0;transform:rotate(-16deg) scale(.95)}to{opacity:1;transform:rotate(0) scale(1)}}
@media(max-width:1150px){.profile-hero{grid-template-columns:minmax(0,1fr) 240px;gap:20px;padding:34px}.profile-stats>div{display:block;padding:0 19px}.profile-stats span{display:block;margin-top:6px}.profile-plan{gap:30px}.profile-next{padding-left:27px}}
@media(max-width:700px){.profile-topline{align-items:flex-start;gap:8px}.profile-topline .eyebrow{font-size:9px;letter-spacing:.6px}.profile-topline>span{font-size:9px;white-space:nowrap}.profile-hero{grid-template-columns:1fr;padding:27px 23px;gap:20px}.profile-copy h1{font-size:32px}.profile-tagline{font-size:14px}.profile-conclusion{font-size:13px}.profile-kicker{font-size:10px}.profile-art{grid-row:1;max-width:180px;justify-self:center}.profile-art svg{max-height:130px}.portrait-caption{display:none}.portrait-index{font-size:9px}.profile-copy .button-row{gap:15px}.profile-copy .button{font-size:12px}.profile-stats{grid-template-columns:repeat(2,1fr);gap:23px 0;padding:24px 0}.profile-stats>div{padding-left:22px}.profile-stats>div:nth-child(odd){border-left:0;padding-left:4px}.profile-stats strong{font-size:27px}.profile-plan{grid-template-columns:1fr;gap:20px;margin-top:12px}.profile-next{padding:25px 0 8px;border-left:0;border-top:1px solid var(--line)}.profile-plan h2{font-size:19px}.profile-evidence>summary{font-size:12px}.question-stem{line-height:2;font-size:15px}.option{line-height:1.95}.explanation-body{font-size:12px;line-height:2}.math-inline .katex{font-size:1.07em}}
@media(prefers-reduced-motion:reduce){.profile-hero *,.profile-plan *{animation:none!important;transition:none!important}.portrait-ray{stroke-dashoffset:0}}
