:root{--blue:#2454df;--ink:#16273d;--body:#495b70;--line:#dce4ee;--soft:#f3f6fa;--yellow:#fff0ae;--mint:#daf0e1;--pink:#f9dce3;--lavender:#e9e2fc}
*{box-sizing:border-box}html{height:100%}body{margin:0;height:100dvh;display:grid;grid-template-rows:3.5rem minmax(0,1fr) 2rem;background:#fff;color:var(--ink);font:16px/1.5 Arial,Helvetica,sans-serif;overflow:hidden}button,input,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}a{color:var(--blue);text-underline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #7397ff;outline-offset:3px}[hidden]{display:none!important}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.15;letter-spacing:-.025em}h1{font-size:clamp(26px,2.8vw,36px);font-weight:600;margin-bottom:.45rem}h2{font-size:25px}h3{font-size:18px}p{margin-bottom:.8rem}em{font-family:Georgia,serif;font-weight:400}.eyebrow,.small-label{font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#637798;margin-bottom:.7rem}.topbar{display:flex;align-items:center;justify-content:space-between;gap:1.2rem;padding:0 2rem;border-bottom:1px solid var(--line)}.wordmark{font-size:25px;font-weight:750;letter-spacing:-1px;color:var(--ink);text-decoration:none;white-space:nowrap}.wordmark span{font:italic 1.12em Georgia,serif;color:var(--blue)}.series-label{font-size:12px;letter-spacing:.08em;color:#617591}.top-tools{display:flex;align-items:center;gap:1.3rem}.top-tools button,.course-footer button,.quiet{background:none;border:0;color:var(--blue);padding:.4rem 0;font-size:14px;white-space:nowrap}.top-tools button:hover,.quiet:hover{text-decoration:underline}.course-layout{display:grid;grid-template-columns:224px minmax(0,1fr);min-height:0}.syllabus{background:#f6f8fc;border-right:1px solid var(--line);padding:1.7rem 1.15rem 1rem;display:flex;flex-direction:column;min-height:0;overflow:auto}.syllabus-title h2{font-size:32px;margin-bottom:.7rem;line-height:1.05}.syllabus-title>p:last-child{font-size:13px;color:#647691;margin-bottom:1.25rem}.syllabus nav{display:grid;gap:.4rem}.lesson-link{display:flex;align-items:center;gap:.7rem;text-align:left;border:0;background:transparent;color:var(--body);padding:.7rem .5rem;font-size:14px;line-height:1.4;border-radius:5px}.lesson-link[aria-current]{background:#e5edff;color:#244ba6;font-weight:600}.lesson-number{color:#5577b8;min-width:1.3rem;font-size:13px}.course-progress{margin-top:auto;padding-top:1.25rem}.progress-label{display:flex;align-items:center;justify-content:space-between;gap:.4rem;font-size:12px;color:#536982}.progress-label .quiet{font-size:13px}progress{height:4px;width:100%;border:0;border-radius:2px;background:#dce5f4;display:block;appearance:none}progress::-webkit-progress-bar{background:#dce5f4}progress::-webkit-progress-value{background:var(--blue)}progress::-moz-progress-bar{background:var(--blue)}#storage-note{font-size:12px;color:#64748a;margin:.65rem 0 0}.mobile-nav{display:none}
main{min-width:0;min-height:0;max-width:1250px;width:100%;margin:auto;height:100%;padding:1.4rem clamp(1.2rem,3vw,3rem) 0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;outline:none;gap:1rem}.lesson-heading{min-width:0}.lesson-kicker{display:flex;gap:1rem;justify-content:space-between;font-size:12px;color:#657b97;margin-bottom:.45rem}.lesson-heading>p{color:var(--body);font-size:16px;line-height:1.45;margin:0;max-width:64rem}.lesson-workspace{display:grid;grid-template-rows:minmax(0,1fr) auto;gap:.8rem;min-height:0}.activity{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:3px}.two-panels{height:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.25rem;min-height:0}.panel{background:#fff;border:1px solid var(--line);border-radius:8px;padding:1.1rem;min-width:0;min-height:0;overflow:auto;scrollbar-width:thin}.panel h2{font-size:23px;margin-bottom:.7rem}.panel p{color:var(--body)}.panel .small-label{color:#617b9c}.panel p:last-child{margin-bottom:0}.record-panel{display:flex;flex-direction:column;padding:.8rem;gap:.4rem}.panel-header{display:flex;justify-content:space-between;gap:.5rem;font-size:12px;color:#63758d;padding:.25rem .25rem .6rem}.record-list{display:grid;gap:.4rem;min-height:0;overflow:auto;scrollbar-width:thin}.record-button{display:block;width:100%;padding:.5rem .7rem;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--ink);text-align:left;line-height:1.35}.record-button[aria-pressed=true]{border-color:#7d9fe8;background:#eef4ff}.record-button small{display:flex;justify-content:space-between;font-size:14px;color:#5b6f89;margin-bottom:.15rem}.record-button strong{font-weight:500;font-size:16px}.field-explanation{background:var(--yellow);border:0;position:relative;padding:1.35rem}.field-explanation .selected-value{font-weight:600;color:#433919;padding-bottom:.8rem;border-bottom:1px solid #d3bc7455}.field-explanation p{color:#514627}.field-explanation h2{color:#433919}.inspector-intro img{display:block;width:100%;height:clamp(80px,17vh,160px);object-fit:cover;border-radius:5px;margin-bottom:1rem}.inspector-intro h2{font-size:24px}.prompt-parts{display:grid;gap:.55rem;align-content:start}.prompt-part{display:flex;align-items:center;gap:.7rem;padding:.65rem .8rem;border:1px solid var(--line);border-radius:5px;background:#fff;cursor:pointer;font-size:16px;line-height:1.35}.prompt-part:has(input:checked){border-color:#8da9ea;background:#edf3ff}.prompt-part input,.choice input{width:18px;height:18px;margin:0;accent-color:var(--blue);flex-shrink:0}.prompt-preview{background:#112a4b;color:#eff4ff;display:flex;flex-direction:column}.prompt-preview .small-label{color:#b9ceef}.prompt-preview p{color:#eff4ff;font-size:16px;line-height:1.55;white-space:pre-line}.prompt-preview .quiet{color:#bdceff;margin-top:auto;align-self:flex-start}.muted{color:#62738b}.choice-list{display:grid;gap:.7rem;align-content:start}.choice{display:flex;align-items:flex-start;gap:.7rem;padding:.85rem 1rem;border:1px solid var(--line);border-radius:6px;background:white;cursor:pointer;color:var(--ink);font-size:16px;line-height:1.45}.choice:has(input:checked){border-color:var(--blue);background:#eff4ff}.choice input{margin-top:.2rem}.choice strong{display:block;font-size:16px;font-weight:600;margin-bottom:.2rem}.choice small{display:block;font-size:14px;line-height:1.45;color:#5b6f87}.policy-panel{background:#f0f5ff}.policy-panel h2{font-size:23px}.policy-panel .policy-line{margin-bottom:1rem}.draft-lines{display:grid;gap:.65rem;align-content:start}.draft-line{display:block;text-align:left;width:100%;padding:.9rem 1rem;border:1px solid var(--line);border-radius:5px;line-height:1.5;color:var(--ink);background:#fff;font-size:16px}.draft-line[aria-pressed=true]{background:#fff0d3;border-color:#c99645}.feedback{padding:.65rem 1rem;border-left:3px solid #ba8435;background:#fff4de;color:#63451f;font-size:14px;line-height:1.45;max-height:7.5rem;overflow:auto;scrollbar-width:thin}.feedback strong{display:block;font-size:16px;margin-bottom:.2rem}.feedback p{margin:0;color:inherit}.feedback.good{border-color:#2d8053;background:#eaf6ee;color:#205b3c}.lesson-controls{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:4.6rem;padding:.7rem 0;border-top:1px solid var(--line)}.control-hint{font-size:13px;color:#60728a;line-height:1.35;margin:0;max-width:26rem}.control-left{display:flex;align-items:center;gap:1.2rem}.button-row{display:flex;align-items:center;flex-wrap:wrap;gap:.65rem}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.65rem 1.05rem;min-height:44px;border:1px solid var(--blue);border-radius:4px;font-size:14px;font-weight:600;line-height:1.4;text-decoration:none;white-space:normal}.primary{color:#fff;background:var(--blue)}.primary:hover{background:#173dae}.secondary{background:#fff;color:var(--ink);border-color:#cbd6e5}.flow-board{height:100%;display:flex;flex-direction:column;gap:.8rem;background:#f2f5f9;border:1px solid var(--line);border-radius:9px;padding:1.1rem;min-height:0;overflow:auto}.trail{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;padding:0;margin:0}.trail li{background:#e1eafa;padding:.3rem .6rem;font-size:12px;line-height:1.35;border-radius:3px}.sticky-question,.flow-result{position:relative;background:var(--yellow);padding:1.3rem 1.5rem;box-shadow:3px 5px 13px #213f6310;transform:rotate(-.3deg);width:min(100%,650px);margin:auto;flex-shrink:0}.sticky-question::before,.flow-result::before{content:'';position:absolute;top:-8px;left:calc(50% - 30px);width:60px;height:17px;background:#fff9c7c9;transform:rotate(3deg)}.sticky-question h2,.flow-result h2{font-size:clamp(23px,2.6vw,30px);margin-bottom:.7rem}.sticky-question p,.flow-result p{margin:0;color:#574b29;font-size:16px;line-height:1.5}.flow-result{background:var(--mint)}.flow-result p{color:#29523c}.decision-choices{display:flex;flex-wrap:wrap;gap:.7rem;justify-content:center;padding-top:.3rem}.quiz-panel{max-width:850px;margin:auto;height:100%;padding:.15rem;display:flex;flex-direction:column;gap:.65rem}.quiz-steps{display:flex;gap:.45rem;flex-wrap:wrap;margin-bottom:.4rem}.quiz-steps button{border:1px solid #cdd9eb;border-radius:50%;height:30px;width:30px;background:#fff;color:#4e6992;font-size:13px}.quiz-steps button[aria-current]{background:var(--blue);border-color:var(--blue);color:#fff}.quiz-item{border:0;padding:0;margin:0}.quiz-item legend{font-size:19px;font-weight:600;line-height:1.4;margin-bottom:.8rem;padding:0}.quiz-item .choice{margin-bottom:.6rem;padding:.7rem .9rem}.completion{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:100%;padding:1.4rem 1.7rem;background:#eaf5ee;border:1px solid #bfdbc9;border-radius:8px}.completion .score{font-size:54px;line-height:1;color:var(--blue);font-weight:700;letter-spacing:-2px;margin-bottom:.7rem}.completion h2{font-size:29px;margin-bottom:.7rem}.completion p{max-width:40rem;color:var(--body)}.course-footer{padding:0 2rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;border-top:1px solid var(--line);font-size:12px;color:#63748a}.course-footer>div{display:flex;gap:1.2rem;align-items:center}.course-footer a,.course-footer button{font-size:12px;padding:0}.skip{position:absolute;left:-9999px;z-index:50}.skip:focus{left:15px;top:15px;padding:12px;background:#fff}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
dialog{border:1px solid var(--line);border-radius:12px;width:min(920px,calc(100% - 32px));max-height:calc(100dvh - 32px);padding:1.6rem;color:var(--ink);overflow:auto}dialog::backdrop{background:#142b4799;backdrop-filter:blur(4px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.dialog-heading h2{margin:0;font-size:28px}.dialog-close{border:0;background:transparent;color:#33547e;font-size:28px;width:36px;height:36px;line-height:1}.dialog-content>p{color:var(--body)}.rule-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.rule-grid section{background:#f0f4fb;padding:1rem;border-radius:5px}.rule-grid h3{font-size:19px;margin-bottom:.7rem}.rule-grid p{font-size:16px;color:var(--body);margin:0}.dialog-content .scope{font-size:13px;color:#63738a;margin:.9rem 0 0}.source-list{display:grid;gap:.8rem;margin:1rem 0;padding-left:1.3rem}.small-dialog{max-width:470px}.small-dialog h2{font-size:25px}.noscript{position:fixed;inset:auto 1rem 3rem;background:#fff;padding:1rem;border:1px solid var(--line)}
@media(max-height:720px) and (min-width:761px){main{padding-top:.85rem;gap:.7rem}.syllabus{padding-top:1rem}.syllabus-title h2{font-size:29px}.syllabus-title>p:last-child{margin-bottom:.7rem}.lesson-link{padding:.55rem .4rem}.lesson-controls{min-height:4.1rem}.panel{padding:.85rem}.record-button{padding:.35rem .6rem}.feedback{padding:.5rem .8rem}.draft-line{padding:.7rem .8rem}.prompt-part{padding:.5rem .65rem}}
@media(max-width:1000px){.course-layout{grid-template-columns:195px minmax(0,1fr)}.syllabus{padding-inline:.8rem}.topbar{padding-inline:1.3rem}.two-panels{gap:.8rem}.panel{padding:.85rem}.control-hint{display:none}.series-label{display:none}}
@media(max-width:760px){body{grid-template-rows:3.4rem minmax(0,1fr) 2rem}.topbar{padding-inline:1rem;gap:.5rem}.wordmark{font-size:23px}.top-tools{gap:.9rem}.top-tools button{font-size:14px}.course-layout{display:grid;grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.syllabus{padding:.5rem 1rem;border-right:0;border-bottom:1px solid var(--line);display:flex;flex-direction:row;gap:1rem;align-items:center;overflow:visible}.syllabus-title,.syllabus nav,#storage-note,.course-progress .quiet{display:none}.mobile-nav{display:flex;align-items:center;gap:.5rem;font-size:14px;color:#536986;flex:1;min-width:0}.mobile-nav select{max-width:100%;min-width:0;width:100%;border:1px solid #c6d4e8;background:#fff;border-radius:4px;padding:.3rem;font-size:14px;color:var(--ink)}.course-progress{margin:0;padding:0;width:90px;flex-shrink:0}.progress-label{font-size:12px;margin-bottom:.2rem;white-space:nowrap}main{padding:.8rem 1rem 0;gap:.7rem}h1{font-size:27px}.lesson-heading>p{font-size:16px;line-height:1.35}.lesson-kicker{font-size:12px}.lesson-kicker span:last-child{display:none}.lesson-controls{min-height:4.3rem;gap:.5rem}.control-left{gap:.4rem}.button-row{gap:.4rem}.primary,.secondary{padding:.55rem .7rem;font-size:14px}.two-panels{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.65rem}.panel{padding:.7rem}.record-panel{padding:.4rem}.panel-header{font-size:12px}.panel-header span:last-child{display:none}.record-button{padding:.45rem .5rem}.record-button strong{display:none}.record-button small{font-size:14px;margin:0}.record-button{min-height:44px}.field-explanation{padding:.9rem}.panel h2,.field-explanation h2{font-size:21px}.field-explanation .selected-value{font-size:14px}.field-explanation p{font-size:16px}.inspector-intro img{height:90px}.inspector-intro h2{font-size:21px}.inspector-intro p{font-size:14px}.prompt-part{font-size:14px;padding:.55rem .5rem;gap:.5rem}.prompt-preview p{font-size:16px}.account-layout,.draft-layout{display:flex;flex-direction:column;gap:.65rem}.account-layout .policy-panel,.draft-layout .policy-panel{flex-shrink:0;padding:.7rem .8rem;order:-1}.account-layout .policy-panel h2,.draft-layout .policy-panel h2{display:none}.account-layout .policy-panel p,.draft-layout .policy-panel p{font-size:14px;line-height:1.4;margin:0}.account-layout .policy-panel .small-label,.draft-layout .policy-panel .small-label{margin-bottom:.25rem;font-size:12px}.choice{padding:.65rem .75rem}.choice small{font-size:14px}.draft-line{padding:.6rem .75rem}.feedback{font-size:14px;max-height:7.6rem}.feedback strong{font-size:16px}.flow-board{padding:.8rem;gap:.65rem}.sticky-question,.flow-result{padding:1rem}.sticky-question h2,.flow-result h2{font-size:23px}.trail{gap:.3rem}.trail li{font-size:12px;padding:.2rem .4rem}.decision-choices{gap:.4rem}.quiz-item legend{font-size:18px}.quiz-panel{gap:.25rem}.quiz-item .choice{padding:.6rem .75rem;font-size:16px}.completion{padding:1rem}.completion h2{font-size:25px}.completion .score{font-size:43px}.course-footer{padding-inline:1rem;font-size:12px}.course-footer>span{max-width:56%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.course-footer>div{gap:.9rem}.rule-grid{grid-template-columns:1fr;gap:.6rem}.rule-grid section{padding:.8rem}.rule-grid h3{font-size:18px;margin-bottom:.4rem}.dialog-heading h2{font-size:25px}dialog{padding:1.15rem}.control-hint{display:none}}
@media(max-width:380px){.top-tools{gap:.55rem}.topbar{padding-inline:.7rem}main{padding-inline:.7rem}.course-progress{width:75px}.progress-label{font-size:12px}.panel{padding:.6rem}.prompt-part{padding:.5rem .35rem}.prompt-part input{width:16px;height:16px}.two-panels{gap:.4rem}}
.quiz-item .choice.is-answer{border-color:#6c9c7f;background:#edf7f0}.quiz-item .choice.is-answer small{color:#2b6943;font-weight:600}
/* Preserve readable content on unusually short windows and at high browser zoom. */
@media(max-height:560px){body{height:auto;min-height:100dvh;overflow:auto;grid-template-rows:3.5rem minmax(34rem,1fr) 2rem}.course-layout{min-height:34rem}main{min-height:30rem;height:100%}.lesson-controls{position:sticky;bottom:0;background:#fff;z-index:3}.syllabus{max-height:none}.activity{min-height:0}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.sticky-question,.flow-result{transform:none}}
/* Case-led activities: readable evidence, explicit choices, and one scroll surface. */
.brief-layout blockquote{margin:.75rem 0;padding:.75rem 1rem;border-left:3px solid #809fec;background:#fff;color:var(--ink);font-size:16px}
.case-caption{font-size:14px!important;line-height:1.5;color:#536781!important}
.prompt-part{align-items:flex-start}.prompt-part input{margin-top:.3rem}.prompt-part strong{display:block;font-size:14px;margin-bottom:.15rem;color:#536781}.prompt-part small{display:block;font-size:16px;line-height:1.45;color:var(--ink)}
.prompt-parts{overflow:auto;scrollbar-width:thin}.prompt-preview{min-height:200px}.choice-list h2{margin:.2rem 0 .4rem}.panel hr{border:0;border-top:1px solid #cbd7eb;margin:1rem 0}
.selection-mark{color:var(--blue);margin-right:.3rem}.handover-workspace{display:flex;flex-direction:column;gap:1rem;height:100%;min-height:0}.handover-workspace>.two-panels{flex:1;min-height:0}
.handover-steps{list-style:none;margin:0;padding:.4rem;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.handover-steps li{background:var(--yellow);padding:.75rem 1rem;border-radius:2px;box-shadow:2px 4px 0 #142b4710;font-size:14px;line-height:1.5;transform:rotate(-.4deg)}.handover-steps li:nth-child(2){background:var(--lavender);transform:rotate(.4deg)}.handover-steps li:nth-child(3){background:var(--mint)}.handover-steps strong{font-size:16px;font-weight:500}
.lesson-link:disabled{opacity:.55}.activity>.two-panels{min-height:min-content}.control-hint{font-size:14px}.small-label{font-size:13px}.lesson-workspace{overflow:auto;display:flex;flex-direction:column}.activity{flex:1;overflow:visible}.feedback{flex-shrink:0;max-height:none;overflow:visible}.lesson-controls .primary{min-width:160px}
@media(min-width:761px){.lesson-workspace .two-panels{height:auto;min-height:100%}.lesson-workspace .panel{overflow:visible}.prompt-parts{overflow:visible}.activity{min-height:auto}.handover-workspace{height:auto}.lesson-workspace{scrollbar-width:thin;overscroll-behavior:contain}}
@media(max-width:760px){
 html{height:auto}body{height:auto;min-height:100dvh;display:flex;flex-direction:column;overflow:auto}
 .topbar{min-height:3.5rem;flex-wrap:wrap;padding:.5rem 1rem}.top-tools{gap:.75rem}.top-tools button{font-size:14px}.wordmark{font-size:24px}
 .course-layout{display:flex;flex-direction:column;flex:1;min-height:0}.syllabus{padding:.65rem 1rem;gap:.65rem}.course-progress{width:88px}
 main{height:auto;display:flex;flex-direction:column;padding:1rem 1rem 0;gap:1rem;max-width:none;margin:0}
 .lesson-heading h1{font-size:28px}.lesson-heading>p{line-height:1.5}.lesson-workspace{display:flex;overflow:visible;min-height:0;gap:1rem}.activity{overflow:visible;padding:0}
 .two-panels,.account-layout,.draft-layout{display:flex;flex-direction:column;height:auto;gap:1rem}.panel,.prompt-parts,.choice-list,.record-list{overflow:visible;max-height:none;min-height:0}
 .panel{padding:1rem}.brief-layout .policy-panel{order:0}.prompt-part{padding:.8rem;gap:.7rem}.prompt-preview{min-height:0}.prompt-preview .quiet{margin-top:.75rem}
 .account-layout .policy-panel,.draft-layout .policy-panel{order:-1;padding:1rem}.account-layout .policy-panel p,.draft-layout .policy-panel p{font-size:16px;line-height:1.5}.account-layout .policy-panel .small-label,.draft-layout .policy-panel .small-label{font-size:13px;margin-bottom:.5rem}
 .choice,.draft-line{padding:.85rem;font-size:16px}.feedback{max-height:none;overflow:visible}.handover-steps{grid-template-columns:1fr;gap:.65rem}.handover-workspace{height:auto}
 .lesson-controls{position:sticky;bottom:0;background:#fff;z-index:5;padding:.75rem 0;margin-top:.5rem;min-height:4.5rem;box-shadow:0 -5px 15px #ffffffed}.lesson-controls .primary{min-width:0}.lesson-controls .button-row{margin-left:auto}
 .course-footer{min-height:3rem;flex-wrap:wrap;padding:.65rem 1rem;gap:.5rem}.course-footer>span{max-width:none;white-space:normal;overflow:visible}.course-footer a,.course-footer button{font-size:14px}
 .quiz-panel{height:auto}.quiz-steps button{width:36px;height:36px;font-size:14px}.completion{min-height:0}.control-hint{display:none}
}
