/* Focus and reflow safeguards; browser/assistive-technology validation remains required. */
:root { --audit-focus:#5b21b6; }
:focus-visible { outline:3px solid var(--audit-focus)!important; outline-offset:4px!important; }
html { scroll-padding-top:7rem; }
button, input, select, summary { min-height:2rem; }
.scene-controls button,.icon-btn { min-width:2rem; min-height:2rem; }
.article-body,.wiki-page,.wrap,.search-result,.lesson-source { overflow-wrap:anywhere; }
.table-scroll { max-width:100%; overflow-x:auto; }
pre { max-width:100%; overflow-x:auto; }
#search-dialog { max-width:min(42rem,calc(100vw - 2rem)); max-height:calc(100dvh - 2rem); overflow:auto; }
#search-status { padding:.5rem 1rem; font-size:.95rem; color:#332d46; }
.optional-nav { margin-top:.75rem; }
.optional-nav summary { cursor:pointer; padding:.5rem; }
.lesson-exercise { border-left:3px solid #7160b4; padding-left:1rem; }
.editorial-note { margin:0 0 1rem; padding:0; border:0; border-radius:0; background:none; font-size:.95rem; }
@media(max-width:60rem){.article-layout{display:block!important}.article-aside{display:none!important}.mobile-article-toc{display:block!important}.article-layout article{min-width:0}.header-cta{display:none!important}}
@media(max-width:30rem){.header-inner{gap:.5rem!important}.brand-sub,.search-label,.search-shortcut{display:none!important}.wrap{padding-left:1rem!important;padding-right:1rem!important}.academy-paths,.library-topic-grid,.wiki-detail-grid{grid-template-columns:1fr!important}.article-header h1,.page-head h1{font-size:2rem!important}.term-pop{max-width:calc(100vw - 24px)!important}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.chapter-back { margin-block: 1rem; }

/* Task-first entry points: keep the established violet palette and quiet reading pages. */
.library-intro{padding:28px 32px}.library-intro h1{font-size:clamp(32px,3.2vw,44px);margin-bottom:14px}.library-intro .eyebrow{margin-bottom:12px}.library-intro .home-actions{margin-top:18px}.library-intro .intro-detail{top:50%;transform:translateY(-50%)}.intro-logo{max-width:150px;height:auto}
.task-entry{padding:28px 0 8px}.task-entry h2{font-size:23px;margin:0 0 16px}.task-entry-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.task-entry-grid>a{display:flex;flex-direction:column;padding:20px;border:1px solid #d3cbec;border-radius:8px;background:#fff;color:#241a5c}.task-entry-grid>a:hover{border-color:#684ec9;background:#f5f2fc}.task-entry-grid h3{font-size:18px;line-height:1.35;margin:0 0 10px}.task-entry-grid p{font-size:15px;line-height:1.55;margin:0 0 18px;color:#484057}.task-entry-grid span{margin-top:auto;font-size:14px;font-weight:600;color:#4a33a4}.supporting-title{font-size:23px;margin:32px 0 16px}.path-position{padding:12px 16px;background:#efecfa;border-radius:5px;font-size:15px;color:#392779}
.header .search-open{display:inline-flex!important;gap:7px;width:auto!important;min-height:40px;padding:8px!important}.header .search-label{display:inline!important;font-size:14px}.header .search-shortcut{display:none!important}
@media(max-width:1050px){.task-entry-grid{grid-template-columns:1fr}.task-entry-grid>a{padding:16px 18px}.task-entry-grid p{margin-bottom:12px}}
@media(max-width:720px){.library-intro{padding:24px}.header-inner{padding-inline:14px!important}.header .brand{font-size:21px}.header .search-open{gap:5px}.task-entry{padding-top:24px}}

.prompting-figure{margin:24px 0}.prompting-figure-scroll{max-width:100%;overflow-x:auto}.prompting-figure img{display:block;width:100%;min-width:520px;height:auto}.prompting-figure figcaption{font-size:14px;line-height:1.5;margin-top:10px;color:#484057}
