/* V7: editorial additions on clean white surfaces; existing visual identity stays intact. */
.catalogue-intro{padding-block:0 30px;max-width:1060px}
.catalogue-intro h2{margin-top:0}
.prose table caption{text-align:left;font-weight:600;font-size:1rem;padding:0 0 14px;color:#242424}
.prose table th[scope=row]{text-align:left;font-weight:600;min-width:130px}
.source-entry{padding:22px 0;border-bottom:1px solid #ddd;scroll-margin-top:24px}
.source-entry h3{margin-top:0}
.source-credit{font-size:.875rem;color:#565656}
.example-notice{border-block:1px solid #d5d1c9;padding:24px 0;margin-bottom:40px}
.example-notice>strong{font-family:var(--serif,Georgia,serif);font-size:1.4rem}
.example-notice p{margin:12px 0 22px}
.example-story .micro{display:block;margin-bottom:12px}
.example-story h2{font-size:clamp(2rem,4vw,3.2rem);line-height:1.12;max-width:20ch}
.example-story .lead{font-family:var(--serif,Georgia,serif);font-size:1.25rem;line-height:1.6}
.example-dimensions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 30px;margin:28px 0 36px}
.example-dimensions .bar-row{min-width:0}
.example-dimensions .bar-label{gap:12px}
.example-dimensions .bar-label>span{white-space:nowrap}
.example-actions>section{border-top:1px solid #ddd;padding-top:10px}
.transfer-panel{margin-top:40px;padding-top:32px;border-top:1px solid #d5d1c9;max-width:820px}
.transfer-panel h2{font-size:clamp(1.6rem,3vw,2rem);margin-top:0}
.transfer-panel p{line-height:1.65}
.transfer-panel input[type=file]{display:block;width:100%;max-width:100%;padding:12px 0;font-size:1rem}
.transfer-panel fieldset{border:0;padding:0;margin:24px 0;min-width:0}
.transfer-panel legend{font-weight:600}
.transfer-panel .transfer-save{display:flex;align-items:flex-start;gap:10px;margin:14px 0 20px;font-size:.9375rem;line-height:1.5}
.transfer-panel .transfer-save input{flex:none;margin-top:4px;width:18px;height:18px}
.transfer-status{min-height:1.5em}
.transfer-panel a:not(.btn),.source-entry a{overflow-wrap:anywhere}
.table-scroll:focus-visible{outline:2px solid #a32929;outline-offset:4px}
@media(max-width:600px){.example-dimensions{grid-template-columns:minmax(0,1fr);gap:8px}.example-story h2{max-width:none}.catalogue-intro{padding-bottom:8px}.transfer-panel .actions{align-items:stretch}.transfer-panel .btn{white-space:normal;text-align:center;max-width:100%}.prose table{font-size:.9375rem}.prose table th,.prose table td{padding:12px}}
@media print{.transfer-panel{display:none}.example-notice .btn{display:none}}

@media screen{.reading-toc>summary{cursor:pointer;font:600 .875rem/1.4 var(--sans,Arial,sans-serif);color:#444;padding:10px 0}.reading-toc .reading-index>.micro{display:none}.reading-toc[open]>summary{margin-bottom:8px}}
@media screen and (max-width:760px){.reading-toc{border-block:1px solid #ddd}.reading-toc>summary{padding:16px 0;font-size:1rem}.reading-toc[open]>summary{margin:0}.reading-toc .reading-index{border:0;border-top:1px solid #e5e5e5;background:#fff;padding:10px 0 18px}.page-guide .reading-layout{padding-top:5px}.page-guide .internal-hero{padding-bottom:18px}}

/* A scrollable table must not impose its intrinsic minimum width on the article grid. */
.reading-copy,.reading-rail,.reading-toc,.catalogue-intro{min-width:0;max-width:100%}.table-scroll{max-width:100%;overflow-x:auto}.reading-copy{overflow-wrap:break-word}
@media screen and (max-width:760px){.reading-layout{grid-template-columns:minmax(0,1fr)}}

@media screen and (max-width:760px){.reading-rail{display:contents}.reading-toc{order:0}.reading-copy{order:1}.reading-layout .rail-related{display:block;order:2;margin-top:8px}.reading-layout .rail-related>a{font-size:1rem;padding-block:14px}}

/* V8: clearer choices and answers, within the established editorial design. */
.situation-choices{padding-block:20px 28px}
.situation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 36px;border-top:1px solid var(--line)}
.situation-card{display:flex;flex-direction:column;padding:24px 0;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink);min-width:0}
.situation-card h3{font:400 clamp(1.35rem,2vw,1.65rem)/1.2 var(--serif);margin:0 0 10px}
.situation-card p{font-size:1rem;line-height:1.6;margin:0 0 16px;max-width:52ch}
.situation-card>span{font-size:.875rem;color:var(--red);margin-top:auto;display:flex;justify-content:space-between;gap:12px}
.situation-card:hover h3{text-decoration:underline;text-underline-offset:4px}
.prose .guide-answer{font-size:1.125rem;line-height:1.65;padding:0 0 0 20px;border-left:3px solid var(--red);margin-bottom:30px}
.profile-calculation{border-block:1px solid var(--line);margin-top:30px;padding:18px 0}
.profile-calculation summary{cursor:pointer;font-size:1rem;font-weight:600;line-height:1.5}
.profile-calculation p{font-size:1rem}
.source-used{font-size:.9375rem;line-height:1.7}
.search-clear{border:0;background:transparent;color:var(--red);padding:10px 0;min-height:44px;text-decoration:underline;text-underline-offset:3px;font:inherit;font-size:.9375rem;cursor:pointer}
.breadcrumb a{display:inline-block;padding-block:4px}
@media(max-width:600px){.situation-grid{grid-template-columns:minmax(0,1fr)}.situation-card{padding-block:20px}.situation-choices .catalogue-heading{display:block}.situation-choices .catalogue-heading>p{margin-top:16px}.prose .guide-answer{font-size:1.0625rem;padding-left:15px}.dialog-close{min-height:44px}.menu-toggle{min-height:44px}.reading-copy a{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;animation-iteration-count:1!important}}

/* V9: content additions on the same white editorial surface. */
.profile-questions{margin:28px 0;padding:18px 0 18px 20px;border-left:3px solid var(--red)}
.prose .profile-questions h3{margin-top:0;font-size:1.25rem;line-height:1.35}
.profile-questions ul{margin-bottom:0;padding-left:20px}
.profile-questions li{margin-block:10px;line-height:1.6}
.directory-intro{max-width:880px;margin-bottom:38px}
.directory-intro p:first-child{margin-top:0}
.directory-intro a{overflow-wrap:anywhere}
@media(max-width:600px){.profile-questions{padding-left:15px}.directory-intro{margin-bottom:28px}}

/* V10 — short, citable question references within the existing white pages. */
.question-jump{display:flex;flex-wrap:wrap;gap:.4rem 1rem;margin:0 0 2rem;padding:1rem 0;border-block:1px solid var(--line,#d8d5cf)}
.question-jump a{display:inline-flex;align-items:center;min-height:44px;font-size:1rem}
.question-permalink{display:inline-flex;align-items:center;min-height:44px;font-size:.875rem;overflow-wrap:anywhere}
.question-bank[id],.bank-content li[id]{scroll-margin-top:7rem}
.bank-content li[id]:target{outline:2px solid #a32929;outline-offset:.4rem;background:#fff}
.bank-content li[id]>.notice{margin:.5rem 0}
.question-library-intro h2{font-size:clamp(1.45rem,3vw,2rem)}
.question-library-intro .table-scroll{margin:1.5rem 0}
@media(max-width:600px){.question-bank[id],.bank-content li[id]{scroll-margin-top:6rem}.question-jump{gap:.25rem .85rem}}

/* V12: reader resources; white surfaces and the existing shared identity. */
.resource-download{display:flex;align-items:center;justify-content:space-between;gap:1.4rem;padding:1.25rem 0;border-block:1px solid #dedede;margin:1.3rem 0;background:#fff}
.resource-download p{margin:0;flex:1;min-width:0}.resource-download .btn{flex-shrink:0;max-width:100%;white-space:normal;text-align:center;font-size:.875rem;line-height:1.45;min-height:44px}
.reading-case{display:grid;grid-template-columns:2.5rem minmax(0,1fr);gap:1rem;border-top:1px solid #e4e4e4;padding:1.4rem 0 .5rem}.reading-case h3{margin-top:0}.reading-case .case-number{font:400 1.6rem/1.2 var(--serif);color:var(--red);padding-top:.1rem}.reading-case p{margin-bottom:.8rem}.case-action{padding:0 0 1.3rem;border-bottom:1px solid #e4e4e4}.case-action h3{font-size:1.2rem}
@media(max-width:640px){.resource-download{display:block}.resource-download .btn{display:flex;margin-top:1rem;width:100%;box-sizing:border-box}.reading-case{grid-template-columns:1.8rem minmax(0,1fr);gap:.7rem}}
@media print{.resource-download .btn{display:none}.reading-case{break-inside:avoid}.test-reading-cases{background:#fff}}

/* V13: concise catalogue entry and documented question scopes, on white. */
.page-tests .catalogue-intro{max-width:1680px;padding-bottom:0}.page-tests .catalogue-intro p{max-width:70ch;margin-bottom:0}
.page-tests .catalogue-section{padding-top:25px}
.dimension-scope{padding:16px 0 4px;margin:20px 0;border-block:1px solid var(--line);font-size:1rem;line-height:1.65}
.dimension-scope p{margin-bottom:12px}.dimension-scope a{color:var(--red)}
@media(max-width:600px){.page-tests .catalogue-section{padding-top:18px}.dimension-scope{font-size:1rem}}

/* V14: the reading shortcut remains available when the decorative photo is hidden. */
.page-test .test-intro-note{display:block}
@media(max-width:760px){.page-test .test-intro-note{font-size:1rem;margin-top:16px}.page-test .test-intro-note a{display:inline-flex;align-items:center;min-height:44px}}

/* V17: source-by-source reading and a separate educational demonstration. */
.instrument-jump{display:flex;flex-wrap:wrap;gap:.25rem 1.1rem;border-block:1px solid var(--line);padding:.7rem 0;margin:1.5rem 0}
.instrument-jump a{display:inline-flex;align-items:center;min-height:44px;font-size:1rem}
.instrument-entry{border-bottom:1px solid var(--line);padding:.4rem 0 1rem}
.instrument-entry h3{scroll-margin-top:6rem;font-size:1.45rem;line-height:1.35}
.proof-route{padding:1rem 0;border-block:1px solid var(--line);margin-bottom:2rem}
.proof-route p{margin-top:0}.proof-route li{padding:.35rem 0}
.score-demo{margin:2rem 0;border-block:2px solid var(--ink);padding:1.5rem 0;background:#fff}
.score-demo fieldset{min-width:0;border:0;padding:0;margin:0}
.score-demo legend{font-weight:600;font-size:1.125rem;line-height:1.5;margin-bottom:1rem;padding:0;max-width:100%}
.score-demo-presets{display:flex;flex-wrap:wrap;gap:.7rem;margin-bottom:1rem}
.score-demo-presets .btn{font-size:.875rem;white-space:normal;text-transform:none;letter-spacing:0;min-height:44px;line-height:1.5}
.score-demo-presets .btn[aria-pressed=true],.score-demo-presets .btn[aria-pressed=true]:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.score-demo-question{padding:1.2rem 0;border-top:1px solid var(--line);display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:.8rem 1.4rem;align-items:start}
.score-demo-question label{line-height:1.55;font-size:1rem}.score-demo-question label .micro{display:block;margin-bottom:.35rem}
.score-demo-question select{width:100%;max-width:100%;min-width:0;min-height:48px;font:400 1rem/1.5 var(--sans);padding:.7rem .6rem;border:1px solid #777;border-radius:0;color:#222;background:#fff}
.score-demo-question select:focus-visible{outline:2px solid var(--red);outline-offset:3px}
.score-demo-question .score-demo-value,.score-demo-question .score-demo-selection{grid-column:1/-1;margin:0;font-size:.9375rem;line-height:1.6}
.score-demo-summary{position:sticky;top:0;z-index:2;background:#fff;border-bottom:1px solid var(--line);padding:.7rem 0;margin-bottom:1.2rem}
.score-demo-summary p{margin:0;font-size:.9375rem;line-height:1.4}
.score-demo-summary [data-demo-score]{font:400 2rem/1.2 var(--serif);margin-right:.6rem;white-space:nowrap}
.score-demo-total{border-top:1px solid var(--line);padding:1rem 0 0;overflow-wrap:anywhere}
.score-demo-total [data-demo-score]{font:400 2.25rem/1.2 var(--serif);margin-right:.6rem}
.score-demo-total p{margin:.5rem 0}
@media(max-width:640px){.score-demo-question{grid-template-columns:minmax(0,1fr);gap:.6rem}.score-demo-presets{display:grid;grid-template-columns:minmax(0,1fr)}.score-demo-presets .btn{width:100%;justify-content:center}.score-demo-total [data-demo-score]{display:block;margin-bottom:.4rem}.instrument-entry h3{font-size:1.3rem}}
@media print{.score-demo-presets{display:none}.score-demo-question{break-inside:avoid}.score-demo-total{break-inside:avoid}.score-demo-summary{position:static}}
