/* Stark Drama 1.06 / representative editorial templates.
   Loaded ONLY for routes selected in includes/redesign.php. No app rules here. */
.sd-editorial {--primary-teal:var(--sd-accent);--accent-purple:var(--sd-purple);--bg-color:var(--sd-bg);--text-dim:var(--sd-secondary);color:var(--sd-text)}
.sd-editorial :is(h1,h2,h3,h4) {color:var(--sd-text);text-transform:none;letter-spacing:-.02em;border:0;padding:0;line-height:1.18}
.sd-editorial h1 {font-size:clamp(2.1rem,4vw,3.4rem);font-weight:720;margin:0 0 16px}
.sd-editorial h2 {font-size:clamp(1.45rem,2.2vw,2rem);font-weight:660;margin:0 0 16px}
.sd-editorial h3 {font-size:1.16rem;font-weight:650;margin:0 0 8px}
.sd-editorial p,.sd-editorial li {color:var(--sd-secondary);line-height:1.65;font-size:1rem}
.sd-editorial p {margin:0 0 16px}
.sd-editorial strong {color:var(--sd-text)}
.sd-editorial a {transition:color .12s,background .12s,border-color .12s}
.sd-editorial a:hover {color:var(--sd-accent)}
.sd-editorial :is(a,button,input,summary,select,textarea):focus-visible {outline:2px solid var(--sd-accent);outline-offset:3px;box-shadow:none}
.sd-editorial [hidden] {display:none!important}
.sd-container {width:calc(100% - 64px);margin:0 auto;padding:32px 0 0}
.sd-wide {max-width:1280px}.sd-standard {max-width:1120px}
.sd-editorial .sd-overline {font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--sd-accent);line-height:1.4;margin:0 0 12px}
.sd-editorial .sd-lead {font-size:1.06rem;line-height:1.65;max-width:720px;color:var(--sd-secondary)}
.sd-editorial .sd-muted {font-size:.82rem;color:var(--sd-muted)}
.sd-page-heading {margin:0 0 32px;max-width:840px}
.sd-page-heading .sd-lead:last-child {margin:0}
.sd-section {margin-top:48px}
.sd-section-heading {display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:20px}
.sd-section-heading h2 {margin:0}
.sd-section-heading .sd-overline {margin-bottom:8px}
.sd-button,.sd-editorial .primary-button,.sd-editorial .secondary-button,.sd-editorial .generate-btn {display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:44px;border:1px solid var(--sd-accent);border-radius:4px;background:var(--sd-accent);color:#09211d;font:inherit;font-size:.875rem;font-weight:650;padding:10px 16px;text-decoration:none;cursor:pointer;white-space:normal;line-height:1.35}
.sd-button:hover,.sd-editorial .primary-button:hover,.sd-editorial .generate-btn:hover {background:#a1e7d9;color:#09211d;transform:none}
.sd-button--secondary,.sd-editorial .secondary-button {background:transparent;border-color:#526168;color:var(--sd-text)}
.sd-button--secondary:hover,.sd-editorial .secondary-button:hover {background:#1c282d;color:var(--sd-text);border-color:var(--sd-accent)}
.sd-button:disabled {opacity:.45;cursor:not-allowed}
.sd-editorial .sd-text-action {display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:.86rem;font-weight:650;color:var(--sd-accent);line-height:1.4}
.sd-text-action:hover {text-decoration:underline;text-underline-offset:4px}
.sd-editorial .sd-back,.sd-editorial .back-link {display:inline-flex;align-items:center;min-height:44px;margin-bottom:12px;font-size:.8rem;text-transform:none;letter-spacing:0;font-weight:600;color:var(--sd-secondary)}
/* Homepage: compact work routes, then a genuine visual centre. */
.sd-home-intro {display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:64px;padding:8px 0 32px;align-items:center}
.sd-home-intro h1 {font-size:clamp(2.35rem,3.8vw,3.6rem);max-width:740px;line-height:1.08;letter-spacing:-.035em}
.sd-home-intro h1 span {color:var(--sd-accent)}
.sd-home-intro .sd-lead {font-size:1rem;margin-bottom:20px;max-width:760px}
.sd-search {display:flex;align-items:stretch;gap:8px;max-width:690px}
.sd-search input {width:100%;min-width:0;min-height:48px;padding:10px 14px;border:1px solid #526169;border-radius:4px;background:var(--sd-quiet);color:var(--sd-text);font:inherit;font-size:.94rem}
.sd-search input::placeholder {color:var(--sd-muted)}
.sd-course {padding-left:28px;border-left:1px solid var(--sd-line)}
.sd-course h2 {font-size:1.55rem;margin:0 0 12px}
.sd-course p {font-size:.9rem}
.sd-course .sd-text-action {display:flex;margin-top:8px}
.sd-editorial .sd-small-heading {font-size:1.05rem;margin:0 0 16px;letter-spacing:0}
.sd-study-routes {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--sd-line);border-bottom:1px solid var(--sd-line)}
.sd-study-routes>a {min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:10px;padding:20px 16px 20px 0}
.sd-study-routes>a+a {padding-left:18px;border-left:1px solid var(--sd-line)}
.sd-study-routes h3 {font-size:1rem;line-height:1.4;letter-spacing:0}
.sd-study-routes p {font-size:.81rem;margin:0;line-height:1.55}
.sd-route-number {font:600 .65rem/1.6 ui-monospace,SFMono-Regular,monospace;color:var(--sd-muted);padding-top:3px}
.sd-study-routes>a>span:last-child {font-size:1.05rem;color:var(--sd-accent)}
.sd-study-routes>a:hover {background:var(--sd-quiet)}
.sd-home .sd-section {margin-top:36px}
/* Tools: media and description, no nested decorative cards. */
.sd-tools {display:grid;gap:28px;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}
.sd-tool {min-width:0}
.sd-tool-visual {display:block;overflow:hidden;border:1px solid #35454d;border-radius:8px;background:#11171b}
.sd-tool-visual img {display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;transition:filter .18s}
.sd-tool-visual:hover img {filter:brightness(1.08)}
.sd-tool-copy {padding-top:16px}
.sd-tool h3 {font-size:1.4rem;margin:0 0 10px}
.sd-tool h3>a {display:flex;align-items:center;justify-content:space-between;gap:20px}
.sd-tool h3 span {font-size:1rem;color:var(--sd-accent)}
.sd-tool p {font-size:.9rem;margin:0 0 6px;max-width:620px}
.sd-tool--lighting {grid-row:span 2;align-self:start}
.sd-tools--home .sd-tool:not(.sd-tool--lighting) {display:grid;grid-template-columns:42% minmax(0,1fr);gap:20px;align-items:start;padding-bottom:24px;border-bottom:1px solid var(--sd-line)}
.sd-tools--home .sd-tool:not(.sd-tool--lighting) .sd-tool-copy {padding:0}
.sd-tools--home .sd-tool:not(.sd-tool--lighting) h3 {font-size:1.15rem}
.sd-tools--home .sd-tool:not(.sd-tool--lighting) .sd-tool-visual img {aspect-ratio:1/1;object-fit:cover;object-position:50% 35%}
.sd-tools--design {grid-template-columns:1fr 1fr;gap:32px}
.sd-tools--design .sd-tool--lighting {grid-column:1/-1;grid-row:auto;display:grid;grid-template-columns:minmax(0,1.8fr) minmax(260px,1fr);gap:32px;align-items:center;border-bottom:1px solid var(--sd-line);padding-bottom:32px}
.sd-tools--design .sd-tool--lighting h3 {font-size:2rem}
.sd-tools--design .sd-tool--lighting p {font-size:1.02rem}
.sd-tools--design .sd-tool-copy {max-width:600px}
.sd-editorial .sd-mode-note {color:var(--sd-muted);font-size:.8rem;margin:20px 0 8px}
.sd-recent {border-top:1px solid var(--sd-line);padding-top:24px}
.sd-recent .recent-list {grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.sd-recent .recent-link {padding:10px 0;border:0;border-bottom:1px solid var(--sd-line);border-radius:0;background:transparent;display:grid;gap:6px;min-height:64px}
.sd-recent .recent-link span {font-size:.92rem;font-weight:600}.sd-recent .recent-link small {text-align:left;color:var(--sd-muted)}
.sd-teacher-strip {display:flex;justify-content:space-between;align-items:center;gap:32px;border-top:1px solid var(--sd-line);padding:24px 0 0}
.sd-teacher-strip h2 {font-size:1.45rem;margin-bottom:8px}
.sd-teacher-strip p {max-width:800px;font-size:.93rem;margin-bottom:0}
.sd-teacher-strip .sd-overline {margin-bottom:8px}
.sd-teacher-strip>.sd-button {flex-shrink:0}
/* Theatre design: existing teaching resources retained under tool discovery. */
.sd-support-routes {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;padding:24px 0;border-top:1px solid var(--sd-line);border-bottom:1px solid var(--sd-line);margin-top:32px}
.sd-support-routes>a {display:grid;grid-template-columns:1fr auto;gap:8px;min-width:0;min-height:64px}
.sd-support-routes strong {font-weight:650;font-size:.92rem;line-height:1.4}
.sd-support-routes span {grid-column:1;font-size:.82rem;line-height:1.5;color:var(--sd-secondary)}
.sd-support-routes b {grid-column:2;grid-row:1;color:var(--sd-accent);font-weight:400}
.sd-design .design-section,.sd-design .design-evidence-strip {margin-top:48px;padding-top:32px;border:0;border-top:1px solid var(--sd-line);border-radius:0;background:transparent;box-shadow:none}
.sd-design .design-section:first-of-type {margin-top:32px}
.sd-design .eyebrow {font-size:.7rem;font-weight:700;color:var(--sd-accent);margin-bottom:8px}
.sd-design .design-section-heading {font-size:1.7rem;margin:0 0 16px}
.sd-design .design-process-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:0;margin:24px 0;list-style:none}
.sd-design .design-process-grid li {display:grid;grid-template-columns:24px 1fr;align-content:start;gap:6px 10px;padding:0;border:0;border-radius:0;background:none}
.sd-design .design-process-grid li>span {width:auto;height:auto;padding:0;border:0;border-radius:0;background:none;color:var(--sd-accent);grid-row:1/3;font-size:.85rem;line-height:1.5;font-weight:600}
.sd-design .design-process-grid strong {font-size:.95rem}
.sd-design .design-process-grid small {grid-column:2;color:var(--sd-secondary);font-size:.84rem;line-height:1.6}
.sd-design #designProcessHeading~.design-process-grid {grid-template-columns:repeat(5,minmax(0,1fr))}
.sd-design .design-discipline-grid,.sd-design .design-brief-grid {display:grid;grid-template-columns:1fr 1fr;gap:0 32px}
.sd-design .design-discipline-grid>a,.sd-design .design-brief-grid>a {display:grid;gap:7px;padding:18px 0;border:0;border-radius:0;border-bottom:1px solid var(--sd-line);background:none;box-shadow:none;transform:none}
.sd-design .design-discipline-grid>a:hover strong,.sd-design .design-brief-grid>a:hover strong {color:var(--sd-accent)}
.sd-design .design-discipline-grid span,.sd-design .design-brief-grid span {color:var(--sd-secondary);font-size:.9rem;line-height:1.6}
.sd-design .design-brief-grid small {color:var(--sd-muted);font-size:.73rem}
.sd-inline-links {display:flex;flex-wrap:wrap;gap:0 20px;align-items:center;margin:20px 0 8px;border-top:1px solid var(--sd-line);padding-top:8px}
.sd-inline-links>span {color:var(--sd-muted);font-size:.8rem}
.sd-inline-links a {min-height:44px;display:inline-flex;align-items:center;color:var(--sd-accent);font-size:.85rem}
.sd-design .design-evidence-strip {display:grid;grid-template-columns:1fr 1.4fr;gap:40px}
.sd-design .design-evidence-strip ol {padding:0;list-style:none;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:20px}
.sd-design .design-evidence-strip li {padding:0;border:0;display:grid;gap:6px;font-size:.88rem;line-height:1.6}
/* Set-text hub. Only AIC is migrated in this candidate. */
.sd-play .set-text-breadcrumbs {padding:0;margin:0 0 24px;font-size:.75rem;gap:12px;flex-wrap:wrap}
.sd-play-hero {display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.45fr);gap:48px;align-items:start}
.sd-play-intro {padding:24px 0 0}
.sd-play-intro h1 {font-size:clamp(2.4rem,4vw,3.75rem);max-width:440px;letter-spacing:-.035em}
.sd-play-intro .sd-lead {color:var(--sd-text)}
.sd-play-intro p:not(.sd-overline) {max-width:420px}
.sd-play-intro .sd-button {margin-top:8px}
.sd-play .set-text-visual {margin:0;border:0;background:transparent;border-radius:0;overflow:visible}
.sd-play .set-text-visual img {width:100%;height:auto;border:1px solid var(--sd-line);border-radius:8px;display:block;aspect-ratio:16/9;object-fit:cover}
.sd-play .set-text-visual figcaption {padding:8px 0 0;border:0;background:transparent;color:var(--sd-secondary);font-size:.85rem}
.sd-play .set-text-visual summary {font-size:.8rem;color:var(--sd-muted);min-height:44px;padding:8px 0;cursor:pointer}
.sd-caption-detail {padding:8px 0;line-height:1.65}
.sd-caption-detail p {font-size:.84rem;margin:8px 0 0}
.sd-play .set-text-nav-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 32px;margin:0}
.sd-play .set-text-nav-card {display:block;min-height:0;padding:20px 0;border:0;border-bottom:1px solid var(--sd-line);border-radius:0;background:transparent;box-shadow:none;transform:none}
.sd-play .set-text-nav-card .nav-icon {display:none}
.sd-play .set-text-nav-card .card-heading {font-size:1.14rem;color:var(--sd-text);margin:0 0 8px;font-weight:650}
.sd-play .set-text-nav-card p {font-size:.87rem;line-height:1.6;margin:0;color:var(--sd-secondary)}
.sd-play .set-text-nav-card:hover .card-heading {color:var(--sd-accent)}
.sd-play-tools {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;border-bottom:1px solid var(--sd-line);padding-bottom:24px}
.sd-play-tools h2 {grid-column:1/-1;margin:0;font-size:1.5rem}
.sd-play-tools>a {display:flex;gap:14px;align-items:center;min-height:74px}
.sd-play-tools img {width:96px;height:64px;object-fit:cover;border-radius:4px;border:1px solid var(--sd-line)}
.sd-play-tools strong {font-size:.95rem;display:block}
.sd-play-tools small {display:block;color:var(--sd-secondary);font-size:.78rem;line-height:1.5;margin-top:6px}
.sd-play-tools b {color:var(--sd-accent);font-weight:400;margin-left:auto}
.sd-play .set-text-concept-panel {margin:40px 0 0;padding:28px;border:1px solid var(--sd-line);border-radius:8px;background:var(--sd-quiet)}
.sd-play .set-text-concept-heading>span {display:none}
.sd-play .set-text-concept-heading h2 {font-size:1.55rem}
.sd-play .set-text-concept-heading p {font-size:.94rem}
.sd-play .set-text-board-toggle {background:none;border:0;padding:0;gap:4px;margin:16px 0}
.sd-play .set-text-board-toggle legend {font-size:.78rem;color:var(--sd-secondary);margin-bottom:8px}
.sd-play .set-text-board-toggle .board-label {border-radius:4px;min-height:44px;display:inline-flex;align-items:center;background:none;border:1px solid #526169;padding:8px 18px;color:var(--sd-secondary)}
.sd-play .set-text-board-toggle .board-radio:checked+.board-label {background:#23352f;color:var(--sd-text);border-color:var(--sd-accent)}
.sd-play .set-text-board-toggle input:focus-visible+.board-label {outline:2px solid var(--sd-accent);outline-offset:3px}
.sd-play .concept-btn {border:1px solid #526169;border-radius:4px;background:transparent;color:var(--sd-text);min-height:44px;padding:9px 14px;font:inherit;font-size:.85rem;cursor:pointer}
.sd-play .concept-btn.active {background:#21372f;border-color:var(--sd-accent)}
.sd-play .concept-output {margin-top:20px;background:none;border:0;border-left:2px solid var(--sd-accent);border-radius:0;padding:8px 0 8px 20px;line-height:1.75;min-height:72px;color:var(--sd-secondary);font-size:.98rem}
.sd-play .set-text-production-row {margin-top:24px}
.sd-play .production-nav-card {display:block;padding:20px 0;background:none;border:0;border-top:1px solid var(--sd-line);border-radius:0;min-height:0;transform:none;box-shadow:none}
.sd-play .production-nav-card .nav-icon {display:none}
.sd-play .production-nav-card h2 {font-size:1.25rem;margin-bottom:8px}
.sd-play .production-nav-card p {margin:0;font-size:.9rem}
/* Reading: readable measure + an ordinary, progressively enhanced contents rail. */
.sd-reading {max-width:1120px;display:grid;grid-template-columns:200px minmax(0,760px);column-gap:56px;align-items:start}
.sd-reading>.back-link {grid-column:1/-1;margin:0 0 24px;min-height:44px}
.sd-contents {position:sticky;top:88px;min-width:0;max-height:calc(100dvh - 112px);overflow:auto;font-size:.82rem}
.sd-contents>summary {font-size:.74rem;text-transform:uppercase;letter-spacing:.09em;font-weight:650;color:var(--sd-muted);min-height:44px;cursor:pointer}
.sd-contents nav {display:grid;gap:2px}
.sd-contents a {display:block;color:var(--sd-secondary);min-height:44px;padding:10px 12px;border-left:2px solid var(--sd-line);font-size:.83rem;line-height:1.5}
.sd-contents a[aria-current=location] {border-color:var(--sd-accent);color:var(--sd-accent);background:var(--sd-quiet)}
.sd-prose {min-width:0}
.sd-prose :is(p,li) {font-size:1.06rem;line-height:1.75}
.sd-prose .page-subtitle {text-transform:none;letter-spacing:0;color:var(--sd-secondary);font-weight:400;font-size:1.03rem}
.sd-prose .set-text-visual {margin:32px 0;border:0;border-radius:0;background:transparent;overflow:visible}
.sd-prose .set-text-visual img {width:100%;height:auto;display:block;border:1px solid var(--sd-line);border-radius:8px}
.sd-prose .set-text-visual figcaption {background:none;border:0;padding:16px 0;font-size:.9rem;color:var(--sd-secondary);line-height:1.65}
.sd-prose .set-text-visual figcaption p {font-size:.9rem;margin:8px 0 0}
.sd-prose .feature-box {padding:16px 20px;margin:0;border:0;border-left:2px solid var(--sd-warm);border-radius:0;background:var(--sd-quiet)}
.sd-prose .feature-box h3 {font-size:1.18rem}
.sd-prose .feature-box p {font-size:1.01rem}
.sd-prose .section-title {margin:32px 0 16px;text-align:left}
.sd-prose .journey-container {margin:32px 0;padding:0;border-left:1px solid var(--sd-line)}
.sd-prose .journey-node {margin:0;padding:8px 0 32px 28px;border:0;position:relative}
.sd-prose .journey-node:before {content:'';position:absolute;left:-4px;top:16px;width:7px;height:7px;background:var(--sd-accent);border-radius:50%}
.sd-prose .phase-tag {display:block;font-size:.78rem;color:var(--sd-accent);margin-bottom:8px;font-weight:600}
.sd-prose .node-content h3 {font-size:1.4rem;margin-bottom:12px}
.sd-prose .node-content p {margin:0}
.sd-prose [data-sd-section],.sd-question {scroll-margin-top:90px}
.sd-prose .exam-table-container {margin:32px 0;padding:24px 0;border:0;border-top:1px solid var(--sd-line);background:none;overflow:auto}
.sd-prose .exam-table-container h3 {gap:20px;flex-wrap:wrap;font-size:1.18rem;color:var(--sd-text)!important}
.sd-prose .generate-btn {margin:0;font-size:.8rem}
.sd-prose .exam-table {width:100%;border-collapse:collapse}
.sd-prose .exam-table th,.sd-prose .exam-table td {padding:16px 12px 16px 0;text-align:left;border-bottom:1px solid var(--sd-line);vertical-align:top;font-size:.92rem;line-height:1.65}
.sd-prose .exam-table th {font-size:.77rem;font-weight:600;color:var(--sd-secondary)}
/* Written exam: semantic HTML remains readable without JavaScript. */
.sd-exam .feature-box {margin:0 0 32px;padding:18px 22px;border:0;border-left:2px solid var(--sd-warm);border-radius:0;background:var(--sd-quiet)}
.sd-exam .feature-box h3 {font-size:1.14rem}
.sd-exam .feature-box p {font-size:.95rem}
.sd-paper {display:grid;grid-template-columns:208px minmax(0,1fr);gap:48px;align-items:start}
.sd-paper-map {position:sticky;top:88px;max-height:calc(100dvh - 112px);overflow:auto}
.sd-paper-map>summary {min-height:44px;font-size:.74rem;color:var(--sd-muted);text-transform:uppercase;letter-spacing:.1em;cursor:pointer}
.sd-paper-map h2 {display:flex;justify-content:space-between;gap:12px;font-size:.8rem;margin:16px 0 8px;color:var(--sd-text);letter-spacing:0}
.sd-paper-map h2 span {color:var(--sd-muted);font-size:.7rem;font-weight:400}
.sd-paper-map a {display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:44px;padding:10px 12px;border-left:2px solid var(--sd-line);color:var(--sd-secondary);font-size:.86rem}
.sd-paper-map a span:last-child {font-size:.73rem}
.sd-paper-map a:hover {color:var(--sd-text);background:var(--sd-quiet)}
.sd-paper-map a[aria-current=location] {color:var(--sd-accent);background:#182622;border-left-color:var(--sd-accent)}
.sd-paper-map .sd-button {margin-top:24px;width:100%;font-size:.8rem}
.sd-paper-content {min-width:0}
.sd-paper-context {margin-bottom:28px;border-bottom:1px solid var(--sd-line);padding-bottom:16px}
.sd-paper-context summary {min-height:38px;padding:8px 0;font-size:.82rem;color:var(--sd-secondary);cursor:pointer}
.sd-paper-context p {font-size:.93rem;padding:8px 0;margin:0}
.sd-question {padding:0 0 32px;margin:0 0 32px;border-bottom:1px solid var(--sd-line)}
.sd-question-title {display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:8px}
.sd-question-title h2 {font-size:1.9rem;margin:0;line-height:1.3}
.sd-question-title>span {font-size:.93rem;color:var(--sd-accent);white-space:nowrap}
.sd-editorial .sd-question-role {font-size:.86rem;color:var(--sd-warm);margin-bottom:24px;font-weight:600}
.sd-question>p:not(.sd-overline,.sd-question-role) {font-size:1.06rem;line-height:1.8}
.sd-question>p>strong:first-child {display:block;margin-bottom:10px;font-size:.95rem}
.sd-strategy {font-size:1rem;line-height:1.8;color:var(--sd-secondary);margin-top:24px;padding:24px 0 0;border-top:1px solid var(--sd-line)}
.sd-strategy>strong:first-child {display:block;margin-bottom:8px;font-size:.95rem;color:var(--sd-text)}
.sd-paper-pager {display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:0}
.sd-paper-pager>span {font-size:.78rem;color:var(--sd-muted);text-align:center}
.sd-paper-pager .sd-button {font-size:.8rem}
/* Staffroom: one lighting launch area, not six cards for the same app. */
.sd-teacher-lab {display:grid;grid-template-columns:minmax(320px,1fr) minmax(0,1.4fr);gap:48px;padding-bottom:32px;border-bottom:1px solid var(--sd-line);align-items:start}
.sd-teacher-lab h2 {font-size:1.8rem}
.sd-teacher-lab figure {padding:0;margin:0}
.sd-teacher-lab img {width:100%;height:auto;display:block;border:1px solid var(--sd-line);border-radius:8px}
.sd-teacher-lab figcaption {color:var(--sd-muted);font-size:.8rem;padding-top:12px;line-height:1.6}
.sd-teacher-preview {margin-top:24px;display:grid;gap:16px}
.sd-teacher-preview>a {border-top:1px solid var(--sd-line);padding-top:14px;display:grid;gap:6px}
.sd-teacher-preview strong {font-size:.9rem;color:var(--sd-accent)}
.sd-teacher-preview span {font-size:.84rem;line-height:1.6;color:var(--sd-secondary)}
.sd-teacher-scenes {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.sd-teacher-scenes>a {border-top:1px solid var(--sd-line);padding-top:20px;display:flex;flex-direction:column}
.sd-teacher-scenes p {font-size:.93rem;margin-bottom:8px}.sd-teacher-scenes .sd-text-action{margin-top:auto}
.sd-teacher-other {display:grid;grid-template-columns:1fr 1fr;gap:40px}
.sd-teacher-other>a {display:grid;grid-template-columns:40% minmax(0,1fr);gap:20px}
.sd-teacher-other img {display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border:1px solid var(--sd-line);border-radius:4px}
.sd-teacher-other p {font-size:.88rem}.sd-teacher-other .sd-text-action {font-size:.82rem}
.sd-lesson-workflow {padding-top:24px;border-top:1px solid var(--sd-line)}
.sd-lesson-workflow ol {padding:0;margin:20px 0 0;list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.sd-lesson-workflow li {display:grid;gap:8px;font-size:.93rem}
/* Responsive composition follows the content rather than app-style fixed heights. */
@media(max-width:1199px){
  .sd-container{width:calc(100% - 48px)}
  .sd-home-intro{gap:40px;grid-template-columns:minmax(0,1fr) 260px}
  .sd-study-routes{grid-template-columns:1fr 1fr}.sd-study-routes>a:nth-child(3){border-left:0;padding-left:0}.sd-study-routes>a:nth-child(n+3){border-top:1px solid var(--sd-line)}
  .sd-tools--home{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:24px}
  .sd-tools--home .sd-tool:not(.sd-tool--lighting){grid-template-columns:1fr;gap:12px;padding-bottom:16px}
  .sd-tools--home .sd-tool:not(.sd-tool--lighting) .sd-tool-visual img{aspect-ratio:16/7}
  .sd-reading{grid-template-columns:170px minmax(0,760px);gap:32px}
  .sd-play-hero{gap:32px}.sd-play-intro{padding:8px 0}
  .sd-play-tools img{width:76px;height:56px}.sd-play-tools{gap:20px}
  .sd-teacher-lab{gap:32px;grid-template-columns:1fr 1.1fr}
}
@media(min-width:700px) and (max-width:1023px){
  .sd-home-intro{grid-template-columns:minmax(0,1fr) 230px;gap:28px}.sd-course{padding-left:20px}
  .sd-support-routes{grid-template-columns:1fr 1fr}
  .sd-design #designProcessHeading~.design-process-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .sd-play-hero{grid-template-columns:1fr 1.2fr}.sd-play-intro h1{font-size:2.6rem}
  .sd-play .set-text-nav-grid{grid-template-columns:1fr 1fr}
  .sd-play-tools{grid-template-columns:1fr}.sd-play-tools>a{border-top:1px solid var(--sd-line);padding-top:12px}
  .sd-teacher-lab{grid-template-columns:1fr}.sd-teacher-lab figure{order:-1}.sd-teacher-lab img{aspect-ratio:16/7;object-fit:cover}
  .sd-teacher-other{grid-template-columns:1fr}
  .sd-paper{grid-template-columns:170px minmax(0,1fr);gap:28px}
}
@media(max-width:699px){
  .sd-container{width:calc(100% - 32px);padding-top:24px}
  .sd-editorial h1{font-size:2.35rem}.sd-editorial h2{font-size:1.5rem}.sd-editorial h3{font-size:1.1rem}
  .sd-section{margin-top:32px}.sd-section-heading{gap:12px;align-items:start;flex-direction:column;margin-bottom:16px}
  .sd-home-intro{grid-template-columns:1fr;gap:24px;padding:0 0 28px}.sd-home-intro h1{font-size:2.55rem;max-width:500px}
  .sd-course{border-left:0;border-top:1px solid var(--sd-line);padding:20px 0 0}.sd-course .sd-overline{margin-bottom:8px}.sd-course h2{font-size:1.2rem;margin-bottom:8px}.sd-course p{font-size:.88rem}.sd-course .sd-text-action{margin:0;display:inline-flex;padding-left:12px}
  .sd-search{gap:8px}.sd-search input{font-size:.86rem;padding:10px;min-height:46px}.sd-search .sd-button{padding:10px 12px}
  .sd-study-routes{grid-template-columns:1fr}.sd-study-routes>a,.sd-study-routes>a+a{border:0;border-top:1px solid var(--sd-line);padding:16px 0;gap:12px}.sd-study-routes>a:first-child{border-top:0}
  .sd-study-routes h3{font-size:1.03rem;margin-bottom:5px}.sd-study-routes p{font-size:.86rem}
  .sd-tools,.sd-tools--home,.sd-tools--design{grid-template-columns:1fr;gap:28px}.sd-tool--lighting{grid-row:auto}
  .sd-tools--home .sd-tool:not(.sd-tool--lighting){grid-template-columns:1fr;gap:0;padding:0 0 24px}.sd-tools--home .sd-tool:not(.sd-tool--lighting) .sd-tool-copy{padding-top:14px}
  .sd-tools--home .sd-tool:not(.sd-tool--lighting) .sd-tool-visual img{aspect-ratio:16/9}
  .sd-tools--design .sd-tool--lighting{grid-template-columns:1fr;gap:16px;padding-bottom:24px}.sd-tools--design .sd-tool--lighting h3{font-size:1.65rem}
  .sd-tool-copy{padding-top:12px}.sd-tool h3{font-size:1.3rem!important}.sd-tool p{font-size:.94rem}
  .sd-recent .recent-list{grid-template-columns:1fr}
  .sd-teacher-strip{display:block}.sd-teacher-strip>.sd-button{margin-top:16px}
  .sd-support-routes{grid-template-columns:1fr 1fr;gap:20px 16px}.sd-support-routes strong{font-size:.9rem}.sd-support-routes span{font-size:.8rem}
  .sd-design .design-section,.sd-design .design-evidence-strip{margin-top:32px;padding-top:24px}
  .sd-design .design-section-heading{font-size:1.5rem}
  .sd-design .design-process-grid,.sd-design #designProcessHeading~.design-process-grid{grid-template-columns:1fr;gap:20px}
  .sd-design .design-discipline-grid,.sd-design .design-brief-grid,.sd-design .design-evidence-strip,.sd-design .design-evidence-strip ol{grid-template-columns:1fr;gap:12px}
  .sd-design .design-section-heading-row{flex-direction:column;align-items:start}
  .sd-play .set-text-breadcrumbs{margin-bottom:16px}.sd-play-hero{grid-template-columns:1fr;gap:24px}
  .sd-play-intro h1{max-width:none;font-size:2.7rem}.sd-play-intro .sd-lead{margin-bottom:12px}
  .sd-play .set-text-nav-grid{grid-template-columns:1fr;gap:0}.sd-play .set-text-nav-card{padding:16px 0}
  .sd-play-tools{grid-template-columns:1fr;gap:16px}.sd-play-tools img{width:108px;height:70px}
  .sd-play .set-text-concept-panel{padding:20px 16px}.sd-play .set-text-concept-actions{gap:8px}.sd-play .concept-btn{width:100%}
  .sd-play .concept-output{padding-left:14px;font-size:.95rem}.sd-play .set-text-board-toggle .board-label{padding:8px 16px}
  .sd-reading{grid-template-columns:1fr;gap:0}.sd-reading>.back-link{margin-bottom:16px}
  .sd-contents{position:static;max-height:none;border-top:1px solid var(--sd-line);border-bottom:1px solid var(--sd-line);margin-bottom:24px;padding:8px 0}
  .sd-contents>summary{display:list-item;min-height:44px;padding:8px 0;cursor:pointer}.sd-contents nav{margin:8px 0}
  .sd-prose .sd-page-heading h1{font-size:2.2rem}.sd-prose p,.sd-prose li{font-size:1.04rem;line-height:1.75}
  .sd-prose .feature-box{padding:16px}.sd-prose .journey-node{padding-left:20px}
  .sd-prose .exam-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  .sd-prose .exam-table,.sd-prose .exam-table tbody,.sd-prose .exam-table tr,.sd-prose .exam-table td{display:block;width:100%;min-width:0}
  .sd-prose .exam-table td{padding:14px 0!important;font-family:inherit!important}
  .sd-prose .exam-table td:before{display:block;color:var(--sd-muted);font-size:.74rem;font-weight:600;margin-bottom:8px}
  .sd-prose .exam-table td:nth-child(1):before{content:'Directorial choice (What)'}.sd-prose .exam-table td:nth-child(2):before{content:'Impact justification (Why)'}.sd-prose .exam-table td:nth-child(3):before{content:'Key terminology'}
  .sd-exam .feature-box{padding:16px}.sd-paper{grid-template-columns:1fr;gap:20px}
  .sd-paper-map{position:static;max-height:none;border-top:1px solid var(--sd-line);border-bottom:1px solid var(--sd-line);padding:8px 0}
  .sd-paper-map>summary{padding:8px 0;min-height:44px}.sd-paper-map nav{margin-top:8px}
  .sd-paper-map .sd-button{margin:16px 0}.sd-question-title h2{font-size:1.65rem}.sd-question-title>span{font-size:.85rem}
  .sd-paper-pager{flex-wrap:wrap;gap:8px}.sd-paper-pager>span{order:3;flex-basis:100%;padding-top:8px}
  .sd-question>p:not(.sd-overline,.sd-question-role){font-size:1.02rem}.sd-strategy{font-size:.97rem}
  .sd-teacher-lab{grid-template-columns:1fr;gap:24px}.sd-teacher-lab figure{order:0}
  .sd-teacher-scenes,.sd-teacher-other,.sd-lesson-workflow ol{grid-template-columns:1fr;gap:24px}
  .sd-teacher-other>a{grid-template-columns:1fr;gap:14px}.sd-teacher-other img{aspect-ratio:16/9}
}
@media(prefers-reduced-motion:reduce){.sd-editorial *,.sd-editorial *:before,.sd-editorial *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{
  .sd-editorial,.sd-editorial :is(p,li,h1,h2,h3,strong,span,div){color:#111!important;background:transparent!important}
  .sd-container{width:100%;max-width:none;padding:0}.sd-contents,.sd-paper-map,.sd-paper-pager,.sd-editorial button,.sd-editorial .sd-back{display:none!important}
  .sd-reading,.sd-paper{display:block}.sd-paper .sd-question[hidden]{display:block!important}.sd-question{break-inside:avoid}
  .sd-prose img{max-height:16cm;object-fit:contain}.sd-prose .exam-table{display:table}.sd-prose .exam-table thead{position:static;clip-path:none;height:auto;width:auto;display:table-header-group}
  .sd-prose .exam-table tbody{display:table-row-group}.sd-prose .exam-table tr{display:table-row}.sd-prose .exam-table td{display:table-cell}.sd-prose .exam-table td:before{display:none}
}

.sd-play .set-text-breadcrumbs a{display:inline-flex;align-items:center;min-height:44px}

/* Keep the paper itself visible on a school laptop. */
.sd-exam .sd-page-heading{margin-bottom:20px}
.sd-exam .sd-page-heading h1{font-size:clamp(2.1rem,3.4vw,2.8rem)}
.sd-exam-guidance{margin:0 0 24px;padding:8px 16px;border-left:2px solid var(--sd-warm);background:var(--sd-quiet)}
.sd-exam-guidance summary{min-height:44px;padding:10px 0;font-weight:600;font-size:.9rem;cursor:pointer;color:var(--sd-text)}
.sd-exam-guidance p{font-size:.94rem;margin:8px 0 12px}
@media print{.sd-exam-guidance:not([open])>p{display:block!important}.sd-exam-guidance{padding:0;border:0}}
