.grade-caution{display:block;font-size:var(--text-sm);margin-top:var(--space-2);font-weight:500}
.qualification{margin-bottom:var(--space-12)}
.qualification>.eyebrow{margin-bottom:var(--space-3)}
.qualification>.muted{margin-bottom:var(--space-5)}
.scale{position:relative;padding-top:var(--space-16);margin:var(--space-6) 0}
.scale-track{display:flex;gap:2px;height:44px;border:1px solid #111;padding:3px}
.scale-segment{background:#ededed;display:grid;place-items:center;color:#555;font-size:var(--text-xs);font-weight:600;min-width:0}
.scale-segment.current{background:#111;color:#fff}
.scale-bubble{position:absolute;left:clamp(28px,var(--position),calc(100% - 28px));top:0;transform:translateX(-50%);background:#111;color:#fff;font:700 var(--text-base)/1 var(--font-display);padding:var(--space-3) var(--space-2);min-width:56px;text-align:center}
.scale-pointer{position:absolute;left:clamp(1px,var(--position),calc(100% - 1px));top:44px;height:15px;border-left:2px solid #111}
.scale-pointer::after{content:"";position:absolute;top:12px;left:-5px;border-top:6px solid #111;border-left:4px solid transparent;border-right:4px solid transparent}
.scale-ticks{display:flex;justify-content:space-between;margin-top:var(--space-2);font-size:var(--text-xs);color:var(--color-muted)}
.scale-key{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 var(--space-6)}
.scale-key li{display:flex;gap:var(--space-3);padding:var(--space-4) 0;border-bottom:1px solid var(--color-border);font-size:var(--text-sm)}
.key-number{width:30px;height:30px;display:grid;place-items:center;flex-shrink:0;border:1px solid #aaa;font-size:var(--text-xs)}
.scale-key li.current .key-number{background:#111;color:#fff;border-color:#111}
.scale-key strong{display:block;line-height:1.4;font-size:var(--text-sm)}
.scale-key li span:not(.key-number){display:block;margin-top:var(--space-1);font-size:var(--text-xs);color:var(--color-muted)}
.scale-note{font-size:var(--text-xs);color:var(--color-muted);margin-top:var(--space-4)}
.narrative{margin-bottom:var(--space-12)}.narrative>p{margin-bottom:var(--space-5);line-height:1.7}
.narrative h2{margin-bottom:var(--space-6)}
.ideal-brief{border-left:3px solid #111;padding:var(--space-2) 0 var(--space-2) var(--space-6);margin:var(--space-8) 0}
.ideal-brief .eyebrow{margin-bottom:var(--space-3)}.ideal-brief p:not(.eyebrow){font-size:var(--text-sm);margin-top:var(--space-3);line-height:1.65}
.development{border-top:1px solid var(--color-border);padding-top:var(--space-6)}
.development>p{font-size:var(--text-sm)}.development ol{margin-top:var(--space-4);padding-left:var(--space-5)}
.development li{font-size:var(--text-sm);padding-left:var(--space-2);padding-bottom:var(--space-3)}
.development li p{line-height:1.55}
.results a{text-underline-offset:4px;text-decoration-thickness:1px}
.results a:hover{text-decoration-thickness:2px}
.framework{--reader-height:420px;background:#111;color:#fff;margin:var(--space-12) 0;padding:var(--space-8);scroll-margin-top:var(--space-6)}
.framework>h2{font-size:var(--text-xl);margin:var(--space-4) 0}
.framework-lede{font-size:var(--text-sm);color:#ddd;margin-bottom:var(--space-6);max-width:55ch}
.reader-status{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);font-size:var(--text-xs);color:#ddd;min-height:44px}
.reader-hint{white-space:nowrap}
.reader-progress{height:3px;background:#555}
.reader-progress span{display:block;height:100%;background:#fff;width:0;transition:width 120ms linear}
.framework-reader{position:relative;height:var(--reader-height);overflow-y:auto;scrollbar-color:#aaa #333;scrollbar-width:thin;border:1px solid #555;border-top:0;outline-offset:4px}
.chapter{min-height:var(--reader-height);padding:var(--space-6);border-bottom:1px solid #555}
.chapter:last-child{border-bottom:0}
.chapter-count{font-size:var(--text-xs);letter-spacing:.08em;color:#cfcfcf;margin-bottom:var(--space-5)}
.chapter h3{font-size:var(--text-lg);line-height:1.3;margin-bottom:var(--space-5);text-wrap:balance}
.chapter p:not(.chapter-count){font-size:var(--text-sm);line-height:1.7;margin-bottom:var(--space-4);color:#eee}
.chapter a{color:#fff}
.chapter.active h3{animation:chapter-in 450ms ease-out}
@keyframes chapter-in{from{opacity:.6}to{opacity:1}}
.reader-controls{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding-top:var(--space-3);font-size:var(--text-xs)}
.reader-button{color:#fff;min-height:44px;font-size:var(--text-sm);text-decoration:underline;text-underline-offset:5px;padding:var(--space-2) 0}
.reader-button:hover:not(:disabled){color:#ccc}
.reader-button:disabled{background:transparent;color:#aaa;text-decoration:none}
.foundation-link{display:inline-flex;align-items:center;min-height:44px;margin-top:var(--space-5);font-size:var(--text-sm)}
@media(max-width:600px){.scale-key{grid-template-columns:1fr}.framework{padding:var(--space-5);--reader-height:430px}.chapter{padding:var(--space-5)}.reader-status{display:block;padding-bottom:var(--space-3)}.reader-hint{display:block;margin-top:var(--space-2)}.reader-controls{gap:var(--space-2)}.reader-button{font-size:var(--text-xs)}.framework>h2{font-size:var(--text-lg)}.ideal-brief{padding-left:var(--space-4)}}
@media(prefers-reduced-motion:reduce){.chapter.active h3{animation:none}.reader-progress span{transition:none}}
