
:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#1c303a;background:#f5f7f8;font-synthesis:none;--navy:#152c39;--ink:#203641;--muted:#5c6d76;--line:#dde4e7;--green:#c6ed8e;--teal:#24624f;--white:#fff;--radius:16px}
*{box-sizing:border-box}body{margin:0;font-size:16px;line-height:1.6}button,input,textarea{font:inherit}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:default}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.2;letter-spacing:-.035em}h1{font-size:clamp(2rem,3.3vw,3.25rem);font-weight:650;margin-bottom:16px}h2{font-size:1.45rem;font-weight:650;margin-bottom:18px}h3{font-size:1.06rem;font-weight:650}p{margin-bottom:18px;color:var(--muted)}:focus-visible{outline:3px solid #397ed0;outline-offset:4px;border-radius:4px}main:focus{outline:none}.icon{width:21px;height:21px;flex:none;vertical-align:middle}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:16px;z-index:50;background:white;padding:12px 18px;border:2px solid var(--navy);border-radius:8px}.skip-link:focus{top:12px}.sidebar{position:fixed;inset:0 auto 0 0;width:258px;z-index:20;background:var(--navy);color:#d8e2e7;padding:31px 20px 0;display:flex;flex-direction:column;overflow-y:auto}.brand{display:flex;align-items:center;gap:12px;padding:0 12px;font-size:1.55rem;letter-spacing:-.07em;font-weight:650;color:#fff}.brand>.icon{color:var(--green);width:32px;height:32px}.brand-sub{display:block;font-size:.67rem;letter-spacing:.19em;color:#b5c3cc;font-weight:550;line-height:1.7}.sidebar-label{font-size:.66rem;font-weight:650;letter-spacing:.13em;color:#a8bac4;margin:43px 12px 12px}.main-nav{display:grid;gap:7px}.main-nav a{display:flex;align-items:center;gap:12px;font-size:.875rem;border-radius:7px;padding:12px}.main-nav a[aria-current]{background:#304552;color:white}.main-nav a:hover,.lesson-nav a:hover,.guide-link:hover{background:#263d4a}.main-nav .icon{width:18px}.course-label{display:flex;justify-content:space-between;margin-top:35px}.course-label span{color:#8ea5b3}.lesson-nav{display:grid;gap:6px}.lesson-nav a{display:flex;gap:12px;align-items:center;padding:10px;border-radius:8px;font-size:.875rem;line-height:1.5}.lesson-nav a[aria-current]{background:#2d4550;color:#fff}.step-dot{width:27px;height:27px;display:grid;place-items:center;border:1px solid #536773;border-radius:50%;font-size:.7rem;flex:none;color:#bdcdd5}.step-dot.done{background:var(--green);border-color:var(--green);color:var(--navy)}.step-dot .icon{width:16px;height:16px}.lesson-nav a[aria-current] .step-dot{border-color:var(--green);color:var(--green)}.lesson-nav a[aria-current] .step-dot.done{color:var(--navy)}.sidebar-bottom{margin-top:auto;padding-top:35px}.sidebar-progress{margin:0 12px 20px}.sidebar-progress>div{display:flex;justify-content:space-between;font-size:.78rem;color:#c6d4db}.sidebar-progress strong{color:var(--green);font-weight:500}.sidebar-progress p{font-size:.73rem;color:#a9bcc7;margin:7px 0 0}progress{width:100%;height:5px;appearance:none;display:block;margin-top:11px;border:0;border-radius:5px;overflow:hidden;background:#405461}progress::-webkit-progress-bar{background:#405461}progress::-webkit-progress-value{background:var(--green);border-radius:5px}progress::-moz-progress-bar{background:var(--green)}.guide-link{display:flex;gap:10px;align-items:center;padding:16px 12px;border-top:1px solid #374d59;font-size:.84rem}.guide-link .icon{width:17px}.profile{display:flex;align-items:center;gap:11px;padding:21px 12px;border-top:1px solid #374d59;font-size:.79rem;color:#e6edf0}.avatar{height:33px;width:33px;border-radius:50%;background:#41606b;display:grid;place-items:center;color:#e4f2da}.profile small{display:block;color:#9fb4c0;font-size:.66rem}.workspace{margin-left:258px;min-height:100vh}.topbar{height:79px;padding:0 43px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}.breadcrumbs{display:flex;gap:16px;align-items:center;font-size:.84rem;color:#687b85}.breadcrumbs strong{font-weight:500;color:#2c4652}.crumb-divider{color:#bbc5ca}.poc-badge{display:flex;align-items:center;gap:8px;border:1px solid #dce5dd;border-radius:20px;padding:5px 12px;background:#f6faf5;font-size:.72rem;white-space:nowrap;color:#486342}.poc-badge>span{width:6px;height:6px;background:#698b53;border-radius:50%}.mobile-toggle{display:none}main{padding:42px 43px 28px;max-width:1530px;margin:0 auto}.eyebrow{font-size:.68rem;letter-spacing:.15em;font-weight:700;color:#537062;margin-bottom:13px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.page-heading h1 span{color:#537064}.page-heading p{font-size:.97rem;margin-bottom:0}.page-heading.compact{margin-bottom:30px}.page-heading.compact h1{font-size:2.5rem}.course-seal{border:1px solid #cad6cd;color:#637d6a;border-radius:50%;width:101px;height:101px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:5px;flex:none;transform:rotate(9deg);margin-right:15px}.course-seal .icon{width:26px;height:26px}.course-seal span{font-size:.5rem;line-height:1.6;letter-spacing:.18em;font-weight:650}.course-meta{display:flex;flex-wrap:wrap;gap:24px;margin:23px 0 29px;padding-bottom:27px;border-bottom:1px solid var(--line);font-size:.81rem;color:#657881}.course-meta>span{display:flex;gap:8px;align-items:center}.course-meta .icon{width:17px;height:17px;color:#6d8276}.section-heading{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:15px}.section-heading h2{font-size:1.14rem;letter-spacing:-.02em;margin:0}.section-heading>span{color:#71828b;font-size:.76rem}.path-options{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:31px}.path-option{position:relative;border:1px solid #d8e1e4;border-radius:10px;background:#fff;display:flex;align-items:flex-start;gap:12px;text-align:left;padding:17px 15px;color:var(--ink);min-height:112px}.path-option.selected{border-color:#547a59;background:#f3f8ec;box-shadow:inset 0 0 0 1px #547a59}.path-radio{margin-top:3px;width:15px;height:15px;border:1px solid #acbdc5;border-radius:50%;flex:none}.selected .path-radio{border:4px solid #547a59;background:#fff}.path-option strong{display:block;font-size:1.12rem;line-height:1.4}.path-option small{font-weight:500;margin-left:8px;font-size:.77rem}.path-option>span>span{font-size:.76rem;display:block;color:#6a7a82;margin-top:5px;line-height:1.6}.recommended{position:absolute;right:12px;top:-8px;background:#e2eae5;color:#40594b;padding:1px 7px;border-radius:3px;font-size:.52rem;letter-spacing:.09em}.overview-columns{display:grid;grid-template-columns:minmax(0,1fr) 288px;gap:25px}.continue-card{background:var(--navy);color:white;border-radius:var(--radius);padding:29px;position:relative;overflow:hidden;min-height:227px;margin-bottom:30px}.continue-card .eyebrow{color:var(--green);font-size:.6rem;letter-spacing:.15em}.continue-card h2{font-size:1.7rem;margin-bottom:10px;max-width:82%}.continue-card p{color:#bacbd5;max-width:82%;font-size:.87rem;line-height:1.7;margin-bottom:21px}.continue-bottom{display:flex;align-items:center;gap:18px;flex-wrap:wrap;position:relative;z-index:1}.continue-bottom>span{font-size:.71rem;color:#b5c8d2;display:flex;gap:6px;align-items:center}.continue-bottom .icon{width:15px;height:15px}.button{border:1px solid transparent;border-radius:7px;padding:11px 17px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-size:.875rem;font-weight:600;line-height:1.4;min-height:43px}.button .icon{width:17px;height:17px}.button.primary{background:var(--green);color:#20392a;border-color:var(--green)}.button.primary:hover{background:#b3df76}.button.secondary{background:#fff;border-color:#cad7dd;color:#284450}.button.secondary:hover{background:#eef3f4}.continue-accent{position:absolute;right:28px;top:33px;display:grid;grid-template-columns:25px 35px;align-items:center;gap:14px 5px;color:#7b9994;opacity:.45;font-size:1.15rem;transform:rotate(-8deg)}.continue-accent span{font-size:.5rem;letter-spacing:.1em}.module-list{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}.module-row{display:flex;gap:17px;align-items:center;padding:21px 20px;border-bottom:1px solid var(--line);transition:background .15s}.module-row:last-child{border-bottom:0}.module-row:hover{background:#f3f7f3}.module-number{font-size:.83rem;color:#688074;border:1px solid #d8e2da;background:#f6f9f3;height:37px;width:37px;border-radius:9px;display:grid;place-items:center;flex:none}.module-number.complete{background:#d5edb7}.module-number .icon{width:19px}.module-tag{font-size:.54rem;letter-spacing:.12em;font-weight:700;color:#788b84;display:block;margin-bottom:5px}.module-row h3{font-size:.98rem;letter-spacing:-.02em;margin:0 0 5px}.module-row p{margin:0;font-size:.77rem;color:#70818a;line-height:1.55}.module-row-end{margin-left:auto;display:flex;align-items:center;gap:20px;color:#789084;font-size:.7rem;white-space:nowrap}.module-row-end .icon{width:17px}.course-aside>section{margin-bottom:22px}.principle-card{background:#e9efdf;border:1px solid #dce5cf;border-radius:var(--radius);padding:24px}.mini-icon{width:35px;height:35px;border:1px solid #b8c9a5;color:#527542;display:grid;place-items:center;border-radius:9px;margin-bottom:20px}.principle-card .eyebrow{font-size:.54rem;letter-spacing:.1em;color:#667856;margin-bottom:14px}.principle-card h2{font-size:1.55rem;color:#354c2e;line-height:1.23;margin-bottom:14px}.principle-card p{font-size:.82rem;color:#5a6d53;line-height:1.8}.mini-cycle{display:flex;justify-content:space-between;gap:4px;align-items:center;font-size:.65rem;font-weight:550;padding:14px 0;border-top:1px solid #cdd9bf;border-bottom:1px solid #cdd9bf;margin-bottom:16px;color:#405835}.mini-cycle b{font-weight:400;color:#738967}.small-text{font-size:.78rem!important;line-height:1.7!important}.principle-card .small-text{margin-bottom:0;font-size:.72rem!important}.tool-card{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:23px}.tool-card h2{font-size:1rem;margin-bottom:18px}.tool-link{display:flex;gap:12px;align-items:center;padding:14px 0;border-top:1px solid #e9edf0}.tool-link>.icon{margin-left:auto;width:13px;height:13px;color:#819399}.tool-logo{width:33px;height:33px;border:1px solid #e0e5e9;display:grid;place-items:center;border-radius:8px;background:#f7f8fa;flex:none;font-family:Georgia,serif;font-size:1.2rem}.tool-logo.gemini{color:#497bc7;background:#f2f5fe}.tool-link strong{display:block;font-size:.84rem;font-weight:600}.tool-link small{display:block;font-size:.63rem;color:#6b7e87}.tool-card>p{font-size:.73rem;margin:9px 0 0;line-height:1.8}.before-card{padding:0 8px}.before-card h3{font-size:.91rem;margin-bottom:10px}.before-card p{font-size:.77rem;line-height:1.8}.before-card a{display:flex;align-items:center;gap:7px;font-size:.75rem;color:#426a50;text-decoration:underline;text-underline-offset:4px;margin-bottom:17px}.before-card .icon{width:15px}.page-footer{max-width:1530px;padding:23px 43px 28px;margin:0 auto;display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);color:#829098;font-size:.7rem}.back-link{font-size:.8rem;color:#6a7c86;display:inline-block;margin-bottom:28px}.lesson-heading{margin-bottom:34px}.lesson-heading .eyebrow span{margin:0 8px}.lesson-heading h1{font-size:clamp(2rem,3vw,2.85rem)}.lesson-heading>p{font-size:1rem;margin-bottom:16px}.lesson-meta{display:flex;gap:18px;flex-wrap:wrap;color:#687f88;font-size:.8rem}.lesson-meta>span{display:flex;align-items:center;gap:7px}.lesson-meta .icon{width:17px}.status-complete{color:#34734d!important}.lesson-layout{display:grid;grid-template-columns:minmax(0,1fr) 235px;gap:30px;align-items:start}.lesson-section{background:white;border:1px solid var(--line);border-radius:14px;padding:30px;margin-bottom:23px}.section-kicker{font-size:.63rem;letter-spacing:.12em;font-weight:650;color:#698177;margin-bottom:14px}.lesson-section>p,.lesson-section li{font-size:.95rem;line-height:1.85}.lesson-section p:last-child{margin-bottom:0}.lesson-section .objective{font-weight:550;color:#345147;border-left:3px solid #aaca8c;padding-left:15px;margin-bottom:24px}blockquote{margin:25px 0 0;padding:20px;background:#edf3e6;border-radius:8px;display:flex;gap:14px;align-items:flex-start}blockquote>.icon{color:#5b7a4b;margin-top:3px}blockquote p{color:#40573a;margin:0;line-height:1.7;font-size:.94rem}.field-label{display:block;font-size:.875rem;font-weight:600;margin:24px 0 8px;color:#324d57}.field-hint{font-size:.78rem;margin-bottom:10px}.lesson-section textarea{display:block;width:100%;padding:16px;border:1px solid #bfcfd6;background:#fcfdfd;border-radius:8px;resize:vertical;color:#233d49;font-size:.94rem;line-height:1.7;min-height:150px}.lesson-section textarea::placeholder{color:#8a989e}.checkbox-label{display:flex;align-items:flex-start;gap:10px;font-size:.84rem;line-height:1.6;margin:15px 0 8px;color:#4e6772}.checkbox-label input{margin:5px 0 0;accent-color:#467753;width:16px;height:16px;flex:none}.attempt-section>p.small-text{color:#7e8b92}.text-link{display:inline-flex;align-items:center;gap:8px;font-size:.87rem;text-decoration:underline;text-underline-offset:4px;color:#36624c}.text-link .icon{width:15px;height:15px}.activity-steps{padding-left:23px;color:#556c76}.activity-steps li{padding-left:5px;margin-bottom:12px}.activity-steps li::marker{color:#53765e;font-weight:600}.button-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.prompt-locked{display:flex;gap:16px;background:#f2f5ef;border:1px solid #dfe7d8;border-radius:10px;padding:22px;margin:25px 0}.prompt-locked .mini-icon{flex:none}.prompt-locked h3{font-size:1rem;margin:0 0 8px}.prompt-locked p{font-size:.85rem}.prompt-locked .button{font-size:.8rem}.prompt-card{background:#f0f4ed;border:1px solid #d3dfc9;padding:22px;border-radius:10px;margin:25px 0}.prompt-card h3{font-size:.95rem;margin:0}.prompt-text{font-size:.95rem;color:#344b3b;line-height:1.85}.prompt-card .small-text{color:#6c7e65}.small-button{background:transparent;border:1px solid #cbd7cc;border-radius:6px;padding:7px 10px;font-size:.78rem;color:#446149;display:inline-flex;align-items:center;gap:7px}.small-button:hover{background:#e6eede}.small-button .icon{height:14px;width:14px}.example-details{border:1px solid var(--line);border-radius:9px;margin-top:24px;overflow:hidden}.example-details summary{padding:16px;font-size:.86rem;font-weight:600;cursor:pointer;color:#405c69}.example-details>div{padding:3px 20px 20px}.example-details p{font-size:.9rem;line-height:1.8;margin-top:12px}.label-pill{font-size:.59rem;letter-spacing:.07em;font-weight:650;background:#e6eef3;color:#526f83;border-radius:4px;padding:4px 7px;display:inline-block}.extension{border-top:1px solid var(--line);padding-top:25px;margin-top:30px}.extension h3{font-size:1.16rem;margin:14px 0}.extension p{font-size:.93rem;line-height:1.8}.checkpoint fieldset{border:0;padding:0;margin:0 0 18px;min-width:0}.checkpoint legend{font-size:1rem;font-weight:550;line-height:1.7;margin-bottom:18px}.quiz-options{display:grid;gap:11px}.quiz-option{display:flex;align-items:flex-start;gap:12px;padding:15px;border:1px solid #d8e2e7;border-radius:8px;font-size:.88rem;cursor:pointer;line-height:1.65}.quiz-option.chosen{background:#eff5e9;border-color:#8ea97b}.quiz-option input{accent-color:#426c39;width:16px;height:16px;margin:5px 0 0;flex:none}.quiz-feedback{padding:18px;border-radius:9px;margin-top:22px;font-size:.9rem}.quiz-feedback p{margin:8px 0 0;font-size:.88rem;color:inherit}.quiz-feedback.correct{background:#eaf4e3;color:#3d6132}.quiz-feedback.retry{background:#fbf1da;color:#796023}.completion-bar{margin:28px 0 35px}.completion-bar .small-text{margin:15px 0 0}.completion-errors{background:#fff2dd;color:#755022;border:1px solid #e6d3b8;padding:19px;border-radius:9px;margin-bottom:20px;font-size:.9rem}.completion-errors ul{padding-left:20px;margin-bottom:0}.sticky-note{position:sticky;top:24px;background:#eaf0e1;border:1px solid #dbe5ce;border-radius:13px;padding:23px}.lesson-aside{position:sticky;top:24px}.sticky-note .eyebrow{font-size:.54rem;letter-spacing:.08em}.sticky-note h3{font-size:1.22rem;margin:13px 0 22px}.sticky-note ol{list-style:none;counter-reset:loop;padding:0}.sticky-note li{counter-increment:loop;position:relative;padding-left:31px;margin:0 0 21px;line-height:1.6}.sticky-note li:before{content:counter(loop);position:absolute;left:0;top:1px;border:1px solid #bacbad;width:20px;height:20px;border-radius:50%;font-size:.62rem;text-align:center;line-height:19px;color:#688258}.sticky-note li strong{font-size:.84rem;font-weight:650;display:block;color:#405938}.sticky-note li span{font-size:.76rem;color:#6c7f61;display:block}.note-divider{border-top:1px solid #cad8bf;margin:20px 0}.sticky-note p{font-size:.79rem;color:#6b7b62;line-height:1.8}.sticky-note a{display:flex;align-items:center;justify-content:space-between;font-size:.75rem;font-weight:600;color:#4d6c3d}.sticky-note a .icon{width:15px}.privacy-note{padding:18px 5px;color:#84918b}.journal-summary{display:grid;grid-template-columns:repeat(3,1fr);background:var(--navy);color:#fff;border-radius:14px;padding:29px;margin-bottom:24px}.journal-summary>div{padding:0 22px;border-right:1px solid #4b616c}.journal-summary>div:last-child{border:0}.journal-summary strong{font-size:2rem;font-weight:550;letter-spacing:-.03em;color:var(--green)}.journal-summary strong span{color:#8198a3;font-size:1.4rem;margin-left:7px}.journal-summary p{color:#b6c9d3;margin:0;font-size:.8rem}.notice{background:#eaf0f3;border:1px solid #d8e3e8;padding:17px 20px;border-radius:9px;font-size:.84rem;color:#526b79;margin-bottom:27px}.notice.warning{background:#fff0d7;color:#7e5b2a}.journal-entry{background:#fff;border:1px solid var(--line);border-radius:10px;margin-bottom:16px;overflow:hidden}.journal-entry summary{display:flex;gap:17px;align-items:center;padding:21px;cursor:pointer;font-size:.94rem}.journal-entry summary>span:first-child{font-size:.8rem;color:#82968a}.entry-status{margin-left:auto;font-size:.73rem;color:#67805c;white-space:nowrap}.journal-entry-body{padding:8px 25px 25px;border-top:1px solid #edf0f2}.journal-entry-body h3{font-size:.85rem;margin-top:20px;margin-bottom:10px;color:#516d59}.user-text{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.92rem;line-height:1.8}.journal-entry-body .text-link{margin-top:10px;font-size:.8rem}.journal-footer{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:30px 0}.journal-footer p{font-size:.8rem;margin:0}.danger-text{color:#9b4138;border-color:#dcc8c6}.celebration{display:flex;gap:20px;background:#edf5e4;border:1px solid #cdddbe;border-radius:12px;padding:25px;margin-bottom:25px}.celebration .mini-icon{flex:none}.celebration h2{font-size:1.3rem}.celebration p{font-size:.9rem;margin:0}.guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:23px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:.87rem;margin-bottom:20px}caption{text-align:left;color:#74848c;font-size:.8rem;margin-bottom:14px}th,td{text-align:left;padding:13px 15px;border-bottom:1px solid var(--line)}thead{background:#eef3ea;color:#456237}tbody th{font-weight:500}td{color:#607782}.total-row{font-weight:600;background:#f3f6ef}.source-links{padding-left:22px}.source-links li{padding:6px 0}.source-links a{color:#406e52;text-decoration:underline;text-underline-offset:4px}.source-links .icon{width:13px;height:13px}dialog{border:1px solid #cbd6dc;border-radius:16px;max-width:520px;width:calc(100% - 32px);padding:30px;color:var(--ink);box-shadow:0 25px 90px #0b26363b}dialog::backdrop{background:#142a397d}dialog h2{font-size:1.5rem}dialog p{font-size:.95rem}.button.danger{background:#a84438;color:white}.icon-button{border:0;background:transparent;padding:5px;color:var(--ink)}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);max-width:min(560px,calc(100% - 40px));background:#16313d;color:#fff;padding:13px 20px;border-radius:9px;font-size:.85rem;box-shadow:0 8px 30px #132c3c30;z-index:100;opacity:0;pointer-events:none;transition:opacity .18s,transform .18s}#toast.show{opacity:1;transform:translate(-50%,0)}
@media(min-width:1600px){main{padding-top:50px}.overview-columns{grid-template-columns:minmax(0,1fr) 325px}.continue-card{padding:33px}.course-aside .principle-card{padding:27px}.module-row{padding:24px}.path-option{padding:20px}.lesson-layout{grid-template-columns:minmax(0,1fr) 285px}}
@media(max-width:1250px){.sidebar{width:233px;padding-left:14px;padding-right:14px}.workspace{margin-left:233px}.topbar{padding:0 29px}main{padding:32px 29px}.page-footer{padding-left:29px;padding-right:29px}.overview-columns{grid-template-columns:minmax(0,1fr) 245px;gap:19px}.path-option{padding:15px 12px;gap:9px}.path-option small{display:block;margin-left:0}.path-options{gap:9px}.path-option>span>span{font-size:.71rem}.continue-card{padding:23px}.continue-card h2{font-size:1.45rem;max-width:88%}.continue-card p{max-width:85%}.continue-accent{right:17px;opacity:.2}.continue-bottom{gap:14px}.module-row{gap:12px;padding:18px 15px}.module-row-end{gap:8px}.module-row p{font-size:.73rem}.module-row-end>span{font-size:.66rem}.principle-card,.tool-card{padding:20px}.tool-link{gap:8px}.tool-link small{font-size:.59rem}.lesson-layout{grid-template-columns:minmax(0,1fr) 210px;gap:22px}.lesson-section{padding:25px}.sticky-note{padding:20px}}
@media(max-width:1050px){.course-seal{display:none}.overview-columns{grid-template-columns:1fr}.course-aside{display:grid;grid-template-columns:1fr 1fr;gap:20px}.course-aside .before-card{grid-column:1/-1;padding:0}.principle-card h2 br{display:none}.lesson-layout{grid-template-columns:1fr}.lesson-aside{position:static}.sticky-note{position:static}.sticky-note ol{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.sticky-note p{max-width:600px}.sticky-note a{justify-content:flex-start;gap:20px}.lesson-heading h1{font-size:2.4rem}.guide-grid{grid-template-columns:1fr;gap:0}}
@media(max-width:760px){.sidebar{width:258px;transform:translateX(-100%);transition:transform .2s;top:65px;box-shadow:10px 0 35px #1735452e;padding-top:25px}.sidebar.is-open{transform:translateX(0)}.sidebar-label{margin-top:27px}.sidebar-bottom{padding-top:25px}.workspace{margin-left:0}.topbar{height:65px;padding:0 20px;gap:13px;position:sticky;top:0;z-index:25}.mobile-toggle{display:inline-flex}.breadcrumbs{font-size:.75rem;gap:10px;flex:1;min-width:0}.breadcrumbs>span:first-child,.crumb-divider{display:none}.breadcrumbs strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.poc-badge{font-size:.6rem;padding:4px 9px}main{padding:27px 20px}.eyebrow{font-size:.6rem}.page-heading h1{font-size:2.2rem}.page-heading p{font-size:.9rem}.course-meta{gap:12px 19px;font-size:.7rem;margin-top:21px;margin-bottom:24px;padding-bottom:22px}.course-meta .icon{width:15px;height:15px}.section-heading h2{font-size:1rem}.section-heading>span{font-size:.68rem}.path-options{grid-template-columns:1fr;gap:10px;margin-bottom:24px}.path-option{min-height:0;padding:14px;align-items:center}.path-option>span>span{font-size:.72rem;margin-top:2px}.path-option strong{font-size:1rem}.path-option small{display:inline-block;margin-left:8px;font-size:.74rem}.path-radio{margin-top:0}.recommended{font-size:.46rem}.continue-card{padding:25px;min-height:220px}.continue-card h2{font-size:1.6rem;max-width:88%}.continue-card p{font-size:.85rem}.continue-accent{opacity:.2;right:18px;top:30px}.module-row{padding:18px 13px;gap:12px;align-items:flex-start}.module-number{width:31px;height:31px;font-size:.7rem;margin-top:5px}.module-row h3{font-size:.93rem}.module-row p{font-size:.73rem}.module-row-end{flex-direction:column;gap:12px;padding-top:7px}.module-row-end span{font-size:.66rem}.module-tag{font-size:.51rem}.course-aside{grid-template-columns:1fr;gap:0}.principle-card{padding:25px}.tool-card{padding:25px}.tool-link strong{font-size:.9rem}.tool-link small{font-size:.75rem}.tool-card>p{font-size:.8rem}.tool-link{gap:13px}.before-card p{font-size:.83rem}.before-card a{font-size:.83rem}.page-footer{padding:20px;font-size:.64rem;gap:12px}.page-heading.compact{flex-direction:column;align-items:flex-start;gap:22px}.page-heading.compact h1{font-size:2rem}.lesson-heading h1{font-size:2rem}.lesson-heading>p{font-size:.91rem}.lesson-meta{font-size:.73rem;gap:12px}.lesson-section{padding:22px 19px}.lesson-section h2{font-size:1.3rem}.lesson-section>p,.lesson-section li{font-size:.92rem}.lesson-section textarea{font-size:1rem}.lesson-layout{gap:0}.button{font-size:.82rem}.prompt-locked{padding:18px;gap:12px}.prompt-locked .mini-icon{display:none}.prompt-card{padding:18px}.sticky-note ol{grid-template-columns:1fr 1fr}.journal-summary{padding:20px 8px}.journal-summary>div{padding:0 12px}.journal-summary strong{font-size:1.6rem}.journal-summary strong span{font-size:1rem}.journal-summary p{font-size:.68rem}.journal-entry summary{padding:18px 14px;gap:12px;font-size:.85rem;flex-wrap:wrap}.journal-entry .entry-status{font-size:.66rem}.journal-entry-body{padding:4px 18px 21px}.journal-footer{align-items:flex-start;flex-direction:column}.celebration{padding:20px;gap:13px}.celebration .mini-icon{display:none}.notice{font-size:.8rem}.table-wrap{margin:0 -6px}th,td{padding:12px 10px;font-size:.79rem}.source-links li{font-size:.84rem}.lesson-section .small-text{font-size:.76rem!important}.button-row{gap:9px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}}
.disclosure-guide{padding:22px;background:#f2f5f8;border:1px solid #dbe4e9;border-radius:9px;margin-top:24px}.disclosure-guide h3{margin-bottom:13px}.disclosure-guide .prompt-text{color:#405967}.disclosure-guide .small-text{padding-top:16px;border-top:1px solid #d5dfe5}
.lesson-video{padding:22px;overflow:hidden}.lesson-video video{display:block;width:100%;aspect-ratio:16/9;background:#152c39;border-radius:8px}.lesson-video .section-heading{margin-bottom:17px}.lesson-video .video-note{font-size:.83rem;line-height:1.7;margin:16px 0}.video-transcript{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.video-transcript summary{padding:14px 0;font-size:.87rem;font-weight:600;cursor:pointer}.video-transcript>div{padding-bottom:18px}.video-transcript h3{font-size:.94rem;margin:20px 0 9px}.video-transcript p{font-size:.9rem;line-height:1.8}.video-downloads{display:flex;gap:12px 22px;flex-wrap:wrap;padding-top:17px;font-size:.79rem;color:#406649}.video-downloads a{display:flex;align-items:center;gap:6px;text-decoration:underline;text-underline-offset:4px}.video-downloads .icon{width:15px;height:15px}.video-error{padding:14px;background:#fff0d7;color:#775425;font-size:.85rem;margin-top:18px!important}.video-error[hidden]{display:none}@media(max-width:760px){.lesson-video{padding:18px 12px}.lesson-video .section-heading,.lesson-video .video-note,.video-transcript,.video-downloads{margin-left:5px;margin-right:5px}}
.sidebar-label,.eyebrow,.brand-sub,.module-tag,.section-kicker,.label-pill,.course-seal span,.principle-card .eyebrow,.sticky-note .eyebrow,.recommended{font-size:.75rem}.module-row p,.course-meta,.before-card p,.tool-card>p,.tool-link small{font-size:.875rem}.course-seal{width:114px;height:114px}.course-seal span{font-size:.625rem}.tool-link small{font-size:.75rem}.module-row-end>span,.sidebar-progress p,.profile small,.page-footer,.poc-badge,.path-option>span>span,.entry-status{font-size:.75rem}.continue-card .eyebrow{font-size:.75rem}.path-option small{font-size:.8rem}.course-aside .mini-cycle{font-size:.75rem}.recommended{font-size:.625rem}.course-label{font-size:.6875rem}
.notebook-panels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;gap:20px;margin:24px 0;padding:0;counter-reset:notebook-panel}.notebook-panels li{border-top:3px solid #82a665;padding-top:15px;counter-increment:notebook-panel}.notebook-panels h3{font-size:1rem;margin:0 0 10px}.notebook-panels p{font-size:.86rem;line-height:1.65;margin:0}.notebook-access{background:#f0f5e9;border-left:3px solid #82a665;padding:16px 18px;font-size:.87rem!important}.notebook-features details,.notebook-difference{border-bottom:1px solid var(--line)}.notebook-features summary,.notebook-difference>summary{cursor:pointer;padding:17px 0;line-height:1.5}.notebook-features summary strong{font-size:.96rem}.notebook-features summary span{display:block;margin:5px 0 0 18px;font-size:.78rem;color:#506773}.notebook-features details>div,.notebook-difference>div{padding:0 0 22px 18px}.notebook-features details p,.notebook-difference p{font-size:.9rem!important;line-height:1.8}.notebook-features h3{font-size:.86rem;margin:18px 0 8px}.notebook-difference{margin-top:14px}.notebook-difference>summary{font-weight:600;font-size:.9rem}.notebook-source-links{display:flex;gap:14px;flex-wrap:wrap;margin-top:20px}.notebook-guide .text-link{font-size:.8rem}.notebook-guide summary:focus-visible{outline:3px solid #6a924a;outline-offset:4px;border-radius:3px}@media(max-width:760px){.notebook-panels{grid-template-columns:1fr;gap:17px}.notebook-panels li{padding-top:12px}.notebook-features summary span{font-size:.8rem}.notebook-features details>div,.notebook-difference>div{padding-left:0}}
@media print{.sidebar,.topbar,.page-footer,#toast,.journal-footer,.page-heading>.button,.text-link,.skip-link,dialog{display:none!important}.workspace{margin:0}main{padding:0}.journal-entry{break-inside:avoid}.journal-entry-body{display:block!important}.journal-summary{background:#fff;color:#111;border:1px solid #ccc}.journal-summary strong,.journal-summary p{color:#111}.notice{background:#fff}.user-text{color:#111}}

/* Student-authored prompt practice and shared real-task setup. */
/* First lesson: a focused card deck. Later labs retain their existing styles. */
main:has(> .intro-deck) { padding-top:24px; padding-bottom:24px; }
.ownership-intro.intro-deck { max-width:960px; margin:0 auto; }
.intro-deck .intro-heading { margin-bottom:24px; }
.intro-deck .intro-title-row { display:flex; justify-content:space-between; align-items:center; gap:20px; }
.intro-deck .intro-title-row .section-kicker { display:block; margin-bottom:8px; }
.intro-deck .intro-title-row a { text-decoration:underline; text-underline-offset:3px; }
.intro-deck h1 { font-size:clamp(1.45rem,2.5vw,2rem); line-height:1.2; margin:0; }
.intro-deck .lesson-meta { white-space:nowrap; align-items:center; gap:7px; flex-wrap:nowrap; }
.intro-deck #module-status { display:inline-block; margin-top:10px; font-size:.8rem; }
.intro-deck #module-status:empty { display:none; }
.intro-deck .intro-card-progress { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px 24px; align-items:center; margin:0 0 20px; scroll-margin-top:20px; }
.intro-deck .intro-card-progress>div { grid-column:1; grid-row:1; display:flex; flex-wrap:wrap; gap:4px 16px; justify-content:space-between; color:#4b6570; font-size:.8rem; }
.intro-deck .intro-card-progress progress { grid-column:1; grid-row:2; display:block; width:100%; height:7px; margin:0; border:0; border-radius:10px; overflow:hidden; background:#dce6e1; accent-color:#547748; }
.intro-deck progress::-webkit-progress-bar { background:#dce6e1; }
.intro-deck progress::-webkit-progress-value { background:#547748; border-radius:10px; }
.intro-deck progress::-moz-progress-bar { background:#547748; }
.intro-deck .intro-step-links { grid-column:2; grid-row:1 / span 2; display:flex; gap:6px; }
.intro-deck .intro-step-links button { width:44px; height:44px; flex:none; border:1px solid #bfcfc9; border-radius:50%; background:#fff; color:#375762; font:inherit; font-size:.85rem; cursor:pointer; }
.intro-deck .intro-step-links button:hover { border-color:#547748; background:#eaf1e3; }
.intro-deck .intro-step-links button[aria-current="step"] { color:#fff; background:#244a58; border-color:#244a58; font-weight:700; box-shadow:0 0 0 3px #244a5814; }
.intro-deck button:focus-visible,.intro-deck summary:focus-visible,.intro-deck select:focus-visible { outline:3px solid #426836; outline-offset:4px; }
.intro-deck .intro-active-card { background:#fff; border:1px solid #d6e1e4; border-radius:16px; padding:28px 30px; min-height:310px; box-shadow:0 4px 20px #203c4905; overflow-wrap:anywhere; }
.intro-deck .intro-active-card>.section-kicker { display:block; margin-bottom:10px; color:#506c5d; font-size:.72rem; letter-spacing:.09em; }
.intro-deck h2 { font-size:clamp(1.25rem,2vw,1.65rem); line-height:1.3; margin:0 0 18px; }
.intro-deck h3 { line-height:1.45; }
.intro-deck #intro-card-title:focus { outline:none; }
.intro-deck .intro-active-card p { font-size:.95rem; line-height:1.7; color:#4c626c; }
.intro-deck .intro-active-card p:last-child { margin-bottom:0; }
.intro-deck .intro-active-card .small-text { font-size:.83rem!important; }
.intro-deck .intro-card-lead { margin:0 0 22px; }
.intro-deck .intro-opening-layout { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:28px; align-items:start; }
.intro-deck .intro-video-placeholder { min-width:0; margin:0; overflow:hidden; border:1px solid #d7e2dc; border-radius:12px; background:#f6f9f5; }
.intro-deck .intro-video-art { background:radial-gradient(ellipse at 100% 0,#356256 0,transparent 65%),#193542; color:#ecf4ec; padding:17px; aspect-ratio:16/9; display:flex; flex-direction:column; justify-content:space-between; gap:16px; }
.intro-deck .intro-video-topline { display:flex; align-items:center; justify-content:space-between; gap:12px; font-size:.66rem; letter-spacing:.04em; color:#c4d9d0; }
.intro-deck .intro-video-topline>span:last-child { border:1px solid #759286; border-radius:50%; width:25px; height:25px; display:grid; place-items:center; }
.intro-deck .intro-video-roles { display:grid; grid-template-columns:1fr 1fr; gap:9px; }
.intro-deck .intro-video-roles>span { display:flex; gap:7px; align-items:center; font-size:.67rem; padding:9px 7px; background:#ffffff0c; border:1px solid #ffffff24; border-radius:8px; }
.intro-deck .intro-video-roles .icon { width:18px; height:18px; color:#c6ed8e; }
.intro-deck .intro-video-student { display:flex; align-items:center; gap:9px; padding-top:12px; border-top:1px solid #ffffff26; color:#def0ca; font-size:.76rem; }
.intro-deck .intro-video-student .icon { width:18px; height:18px; }
.intro-deck .intro-video-placeholder figcaption { padding:14px 16px; }
.intro-deck .intro-video-status { display:block; color:#294f41; font-weight:650; font-size:.85rem; }
.intro-deck .intro-video-duration { display:block; margin-top:2px; color:#51685b; font-size:.74rem; }
.intro-deck .intro-video-placeholder p { margin:8px 0 0; font-size:.78rem; line-height:1.55; }
.intro-deck .intro-video { min-width:0; margin:0; overflow:hidden; border:1px solid #d7e2dc; border-radius:12px; background:#f6f9f5; }
.supplied-video video { display:block; width:100%; aspect-ratio:16/9; background:#152c39; }
.intro-deck .intro-video figcaption { padding:14px 16px; }
.intro-deck .intro-video figcaption>p { margin:8px 0 12px; font-size:.78rem; line-height:1.55; }
.intro-deck .intro-video .video-transcript { margin:12px 0 0; }
.intro-deck .intro-video .video-transcript summary { padding:12px 0; font-size:.8rem; }
.intro-deck .intro-video .video-transcript p { font-size:.85rem; }
.intro-deck .intro-video .video-downloads { margin:0; padding-top:6px; gap:4px 18px; }
.intro-video .video-downloads a { min-height:44px; }
.intro-deck .expert-video>.intro-video { width:100%; max-width:none; margin-top:16px; }
.intro-deck .intro-welcome-summary { display:flex; gap:14px; background:#edf3e7; border:1px solid #dce7d3; border-radius:10px; padding:17px 20px; margin-top:24px; align-items:center; }
.intro-deck .intro-welcome-summary>.icon { flex:none; width:30px; height:30px; color:#537249; }
.intro-deck .intro-welcome-summary p { margin:0; font-size:.86rem; }
.intro-deck .intro-welcome-summary strong { color:#345337; }
.intro-deck .intro-role-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.intro-deck .intro-flip { width:100%; height:100%; min-height:185px; display:flex; flex-direction:column; text-align:left; border:1px solid #ccdcd7; border-radius:12px; padding:20px; font:inherit; color:#294653; background:#f4f8f7; cursor:pointer; transition:border-color .15s,box-shadow .15s; }
.intro-deck .intro-flip:hover { border-color:#6b9478; box-shadow:0 3px 10px #203c4910; }
.intro-deck .intro-flip.is-flipped { background:#edf4e7; border-color:#aac598; }
.intro-deck .intro-flip-top { display:flex; align-items:center; gap:12px; margin-bottom:13px; }
.intro-deck .intro-flip-top>strong { font-size:1.03rem; }
.intro-deck .intro-role-icon { display:grid; place-items:center; width:36px; height:36px; border-radius:10px; flex:none; background:#e1ece6; color:#3d6553; }
.intro-deck .intro-flip-copy { display:block; font-size:.9rem; line-height:1.65; }
.intro-deck .intro-card-label { font-size:.75rem; color:#45613d; }
.intro-deck .intro-flip-prompt { display:block; margin:6px 0 12px; font-size:.92rem; }
.intro-deck .intro-flip-student { display:block; border-top:1px solid #c9d9be; padding-top:10px; font-size:.83rem; }
.intro-deck .intro-flip-hint { display:flex; align-items:center; gap:8px; font-size:.78rem; color:#3b6046; padding-top:17px; margin-top:auto; font-weight:600; }
.intro-deck .intro-flip.is-flipped .intro-flip-copy { animation:intro-card-turn .16s ease-out; }
@keyframes intro-card-turn { from { opacity:.3; transform:rotateY(-9deg); } to { opacity:1; transform:none; } }
.intro-deck .intro-more { margin:16px 0; padding:0 18px; background:#f3f6f7; border:1px solid #dce5e4; border-radius:10px; }
.intro-deck .intro-more > summary { margin:0 -18px; padding:14px 18px; min-height:52px; border-radius:9px; font-size:.86rem; font-weight:600; line-height:1.55; cursor:pointer; }
.intro-deck .intro-more > summary::marker { color:#52755c; }
.intro-deck .intro-more > summary:hover { background:#eaf0ed; }
.intro-deck .intro-more > summary:focus-visible { outline:3px solid #426836; outline-offset:3px; }
.intro-deck .intro-more[open] { padding-bottom:18px; }
.intro-deck .intro-more[open] > summary { margin-bottom:16px; border-bottom:1px solid #dce5e4; border-radius:9px 9px 0 0; }
:where(.intro-deck .intro-more) > p { margin:0 0 16px; padding:0; }
.intro-deck .intro-more > :last-child { margin-bottom:0; }
.intro-deck .intro-more:first-child { margin-top:0; }
.intro-deck .intro-more:last-child { margin-bottom:0; }
.intro-deck .lesson-criteria-cards { align-items:start; }
.intro-deck .lesson-criteria-cards > .intro-more { margin:0; }
.intro-deck .intro-active-card > .button-row { margin:24px 0 16px; }
.intro-deck .intro-active-card > .button-row > a.button.primary[target="_blank"] { background:#fff; border-color:#b9cdc3; color:#315c46; }
.intro-deck .intro-active-card > .button-row > a.button.primary[target="_blank"]:hover { background:#edf4ee; border-color:#759780; }
.intro-deck .intro-role-note { margin:18px 0 0; }
.intro-deck .intro-visual { list-style:none; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:19px; margin:6px 0 24px; }
.intro-deck .intro-visual li { position:relative; padding:16px 12px; display:grid; grid-template-columns:25px 1fr; column-gap:8px; background:#f1f6eb; border:1px solid #d6e1cd; border-radius:10px; }
.intro-deck .intro-visual li+li::before { content:'→'; position:absolute; top:20px; left:-18px; color:#497044; }
.intro-deck .intro-visual strong { font-size:.9rem; }
.intro-deck .intro-visual span { font-size:.76rem; margin-top:4px; color:#546957; }
.intro-deck .intro-visual .icon { grid-row:span 2; align-self:center; color:#537249; width:21px; }
.intro-deck .intro-principle { display:flex; gap:12px; border-top:1px solid #dce5d8; margin:22px 0 0; padding-top:18px; color:#35522f; font-weight:550; }
.intro-deck .intro-principle .icon { margin-top:4px; color:#537249; }
.intro-deck .intro-check fieldset { border:0; padding:0; margin:0; min-width:0; }
.intro-deck .intro-check legend { font-size:1rem; line-height:1.65; margin-bottom:18px; }
.intro-deck .intro-choices { display:grid; gap:11px; }
.intro-deck .intro-choice { display:flex; align-items:flex-start; gap:13px; border:1px solid #c4d4da; border-radius:10px; padding:16px 18px; cursor:pointer; line-height:1.65; font-size:.92rem; scroll-margin-bottom:110px; }
.intro-deck .intro-choice:hover { border-color:#6c8b74; background:#f7faf5; }
.intro-deck .intro-choice:has(input:checked) { border-color:#698a54; background:#edf4e6; box-shadow:inset 0 0 0 1px #698a54; }
.intro-deck .intro-choice input { flex:none; width:19px; height:19px; accent-color:#4a703b; margin:3px 0 0; }
.intro-deck .intro-choice:focus-within { outline:3px solid #426836; outline-offset:3px; }
.intro-deck .intro-choice-feedback { border-radius:10px; padding:17px 20px; margin-top:18px; font-size:.92rem; color:#5d4c2f; background:#faf4e8; border:1px solid #e2d3b7; scroll-margin-bottom:110px; }
.intro-deck .intro-choice-feedback.correct { background:#edf5e6; border-color:#c1d4b0; color:#35542c; }
.intro-deck .intro-choice-feedback p { font-size:.9rem; margin:8px 0 0; }
.intro-deck .intro-rules-copy { padding:17px 20px; background:#f2f6ed; border-left:3px solid #91ac7e; border-radius:0 8px 8px 0; margin-bottom:24px; }
.intro-deck .intro-example-picker { display:flex; gap:20px; align-items:center; }
.intro-deck .intro-example-picker label { font-size:.88rem; font-weight:600; flex:1; }
.intro-deck .intro-example-picker label span { font-weight:400; color:#61747d; }
.intro-deck .intro-example-picker select { width:54%; padding:12px; border:1px solid #afc4ca; border-radius:8px; background:#fff; color:#294653; font:inherit; font-size:.92rem; }
.intro-deck .intro-example-note { font-size:.8rem; margin:12px 0 18px; }
.intro-deck .intro-example-context { padding:18px 20px; background:#f1f5f6; border-radius:10px; }
.intro-deck .intro-example-context .section-kicker { font-size:.72rem; }
.intro-deck .intro-example-context p { font-size:.9rem; margin:8px 0 0; }
.intro-deck .intro-example-switch { display:flex; gap:9px; margin:18px 0 13px; }
.intro-deck .intro-example-switch button { flex:1; min-height:48px; font:inherit; font-size:.86rem; line-height:1.45; border:1px solid #bacdc8; background:white; color:#395666; border-radius:8px; padding:12px; cursor:pointer; }
.intro-deck .intro-example-switch button:hover { border-color:#547748; }
.intro-deck .intro-example-switch button[aria-pressed="true"] { background:#244a58; border-color:#244a58; color:white; }
.intro-deck .intro-prompt-card { padding:18px 20px; border:1px solid #e4d6c5; border-radius:10px; background:#faf5ee; }
.intro-deck .intro-prompt-card.intro-partner { background:#f1f6ec; border-color:#c5d7b7; }
.intro-deck .intro-prompt-card h3 { margin:0; font-size:1rem; }
.intro-deck .intro-prompt-card blockquote { margin:15px 0; padding:0 0 0 15px; border-left:3px solid #cfb18e; background:none; border-radius:0; }
.intro-deck .intro-partner blockquote { border-left-color:#9eb98b; }
.intro-deck .intro-prompt-card blockquote p { font-size:.95rem; line-height:1.65; color:#2d4650; }
.intro-deck .intro-prompt-card>p { font-size:.88rem; margin-bottom:0; }
.intro-deck .intro-example-next { margin-top:13px; padding-top:13px; border-top:1px solid #d7dfd0; }
.intro-deck .intro-takeaway-quote { display:flex; align-items:flex-start; gap:18px; padding:26px; background:#eaf1e3; border:1px solid #d9e5ce; border-radius:12px; margin:22px 0; }
.intro-deck .intro-takeaway-quote .icon { flex:none; width:32px; height:32px; color:#547748; }
.intro-deck .intro-takeaway-quote p { margin:0; font-size:1.3rem; line-height:1.5; color:#355332; }
.intro-deck .intro-finish { margin:26px 0 0; padding-top:22px; border-top:1px solid #e0e7e3; }
.intro-deck .intro-finish>p { margin-top:14px; }
.intro-deck .intro-card-navigation { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:22px; padding:14px 0 max(14px,env(safe-area-inset-bottom)); position:sticky; bottom:0; background:#f5f7f8; border-top:1px solid #d9e2e1; box-shadow:0 -10px 18px #f5f7f8ed; z-index:2; }
.intro-deck .intro-card-navigation>span { color:#526b76; font-size:.78rem; text-align:center; }
.intro-deck .button { min-height:48px; }
.intro-deck .button.primary { background:#2f5947; border-color:#2f5947; color:#fff; }
.intro-deck .button.primary:not(:disabled):hover { background:#224a38; border-color:#224a38; }
.intro-deck .button:disabled { opacity:1; background:#e5eae8; border-color:#d1dad6; color:#70817a; cursor:default; box-shadow:none; }
.intro-deck .intro-card-navigation .primary { min-width:190px; justify-content:space-between; gap:20px; }
.intro-deck .intro-next-label { display:block; text-align:left; }
.intro-deck .intro-next-label>span { display:block; font-weight:400; font-size:.7rem; color:#d7e6dd; }
.intro-deck .intro-next-label strong { display:block; font-weight:600; font-size:.87rem; }
@media(max-width:1100px) {
  .intro-deck .intro-card-progress { grid-template-columns:1fr; gap:12px; }
  .intro-deck .intro-step-links { grid-column:1; grid-row:3; }
  .intro-deck .intro-opening-layout { grid-template-columns:1fr; gap:22px; }
  .intro-deck .intro-video-placeholder { max-width:440px; width:100%; }
}
@media(max-width:760px) {
  main:has(> .intro-deck) { padding-top:22px; }
  .intro-deck .intro-title-row { align-items:flex-start; flex-direction:column; gap:10px; }
  .intro-deck .intro-title-row .lesson-meta { font-size:.78rem; }
  .intro-deck .intro-heading { margin-bottom:20px; }
  .intro-deck .intro-card-progress { scroll-margin-top:82px; }
  .intro-deck .intro-step-links { display:grid; grid-template-columns:repeat(8,minmax(0,1fr)); gap:5px; }
  .intro-deck .intro-step-links button { justify-self:center; }
  .intro-deck .intro-active-card { padding:23px 20px; min-height:0; }
  .intro-deck .intro-role-grid { grid-template-columns:1fr; }
  .intro-deck .intro-flip { min-height:0; }
  .intro-deck .intro-visual { grid-template-columns:1fr; gap:16px; }
  .intro-deck .intro-visual li+li::before { content:'↓'; top:-22px; left:23px; }
  .intro-deck .intro-example-picker { display:block; }
  .intro-deck .intro-example-picker select { width:100%; margin-top:10px; font-size:1rem; }
  .intro-deck .intro-choice { padding:15px; }
  .intro-deck .intro-card-navigation>span { display:none; }
  .intro-deck .intro-card-navigation { gap:12px; }
  .intro-deck .intro-card-navigation .button { font-size:.85rem; }
  .intro-deck .intro-card-navigation .primary { min-width:0; max-width:66%; flex:1; }
  .intro-deck .intro-takeaway-quote { padding:19px; gap:12px; }
  .intro-deck .intro-takeaway-quote p { font-size:1.13rem; }
}
@media(max-width:460px) {
  .intro-deck .intro-step-links { grid-template-columns:repeat(4,1fr); gap:8px; }
  .intro-deck .intro-step-links button { width:100%; border-radius:9px; }
  .intro-deck .intro-welcome-summary { align-items:flex-start; padding:16px; gap:11px; }
  .intro-deck .intro-welcome-summary>.icon { width:24px; height:24px; margin-top:3px; }
}
@media(prefers-reduced-motion:reduce) {
  .intro-deck .intro-flip.is-flipped .intro-flip-copy { animation:none; }
}

/* The remaining lessons use the same focused deck, with room for saved practice. */
.lesson-deck.intro-deck { max-width:960px; margin:0 auto; }
.intro-deck .lesson-card-progress { grid-template-columns:minmax(0,1fr) auto; gap:8px 24px; }
.intro-deck .lesson-card-jump { grid-column:2; grid-row:1 / span 2; position:relative; }
.intro-deck .lesson-card-jump>summary { min-height:44px; display:list-item; padding:10px 14px; border:1px solid #bdcfc8; border-radius:8px; font-size:.83rem; font-weight:600; color:#37594a; background:#fff; cursor:pointer; }
.intro-deck .lesson-card-jump .intro-step-links { position:absolute; top:calc(100% + 9px); right:0; z-index:5; width:460px; max-height:55vh; overflow-y:auto; overscroll-behavior:contain; padding:12px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; background:#fff; border:1px solid #c6d5cf; border-radius:12px; box-shadow:0 10px 30px #16313d21; }
.intro-deck .lesson-card-jump .intro-step-links button { width:100%; height:auto; min-height:48px; display:flex; align-items:center; gap:10px; text-align:left; border-radius:8px; padding:8px 10px; font-size:.8rem; line-height:1.4; }
.intro-deck .lesson-jump-number { width:24px; height:24px; flex:none; display:grid; place-items:center; font-size:.72rem; border:1px solid currentColor; border-radius:50%; opacity:.8; }
.lesson-deck .lesson-active-card { margin:0; }
.lesson-deck #lesson-card-title:focus { outline:none; }
.lesson-deck .lesson-active-card textarea,.lesson-deck .lesson-active-card select { scroll-margin-top:95px; scroll-margin-bottom:115px; }
.lesson-deck .lesson-active-card textarea:focus-visible { outline:3px solid #426836; outline-offset:3px; }
.lesson-deck .lesson-active-card h3 { font-size:1rem; }
.lesson-deck .lesson-video-topic { display:flex; align-items:center; gap:16px; padding:8px 0; }
.lesson-deck .lesson-video-topic>.icon { width:44px; height:44px; color:#c6ed8e; }
.lesson-deck .lesson-video-topic strong { max-width:15ch; font-size:1.3rem; line-height:1.35; font-weight:550; }
.lesson-deck .lesson-active-card .prompt-card { margin:20px 0; }
.lesson-deck .lesson-active-card .prompt-card .label-pill { margin-bottom:14px; }
.lesson-deck .lesson-criteria-cards { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.lesson-deck .lesson-criteria-cards summary { display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:58px; list-style:none; }
.lesson-deck .lesson-criteria-cards summary::after { content:'+'; font-size:1.35rem; font-weight:400; color:#547748; }
.lesson-deck .lesson-criteria-cards details[open]>summary::after { content:'−'; }
.lesson-deck .lesson-criteria-cards summary::-webkit-details-marker { display:none; }
.lesson-deck .lesson-criteria-cards p { font-size:.87rem; }
.lesson-deck .lab-task { margin:0 0 22px; padding:18px 20px; }
.lesson-deck .lab-task h3 { margin:12px 0 8px; }
.lesson-deck .lab-task p { margin-bottom:12px; font-size:.9rem; }
.lesson-deck button.text-link { border:0; background:none; padding:6px 0; min-height:44px; font:inherit; font-size:.86rem; text-align:left; cursor:pointer; }
.lesson-deck .lesson-track-hint,.lesson-deck .lesson-draft-summary,.lesson-deck .lesson-feedback-summary,.lesson-deck .lesson-disclosure-scaffold,.lesson-deck .lesson-practice-notes { margin:20px 0; }
.lesson-deck .lesson-active-card .notebook-guide { margin:0; border:0; border-radius:0; padding:0; background:none; }
.lesson-deck .notebook-guide>.section-kicker { display:none; }
.lesson-deck .notebook-panels { gap:16px; }
.lesson-deck .notebook-panels p { font-size:.86rem; }
.lesson-deck .lesson-practice-notes textarea { margin-bottom:16px; }
.lesson-deck .manual-review { margin:20px 0; }
.lesson-deck .manual-review select { min-height:48px; }
.lesson-deck .revision-step { margin:0 0 20px; padding:0; border:0; }
.lesson-deck .revision-step legend { display:none; }
.lesson-deck .revision-step .field-hint { margin-top:0; }
.lesson-deck .revision-step:disabled { opacity:1; }
.lesson-deck .revision-step:disabled textarea { color:#637975; background:#edf1ef; border-color:#d2dcd7; }
.lesson-deck .lesson-feedback-summary .prompt-feedback { margin:0 0 18px; }
.lesson-deck #revision-review-status:not(:empty) { padding:14px 16px; border:1px solid #e3d2b9; background:#faf3e7; border-radius:8px; color:#685332; margin-bottom:20px; font-size:.86rem; }
.lesson-deck .quiz-option { min-height:54px; font-size:.92rem; border-color:#c4d4da; border-radius:10px; padding:16px 18px; }
.lesson-deck .quiz-option input { width:19px; height:19px; margin-top:3px; }
.lesson-deck .quiz-option:hover { background:#f7faf5; border-color:#6c8b74; }
.lesson-deck .quiz-option.chosen { background:#edf4e6; border-color:#698a54; box-shadow:inset 0 0 0 1px #698a54; }
.lesson-deck .quiz-option:focus-within { outline:3px solid #426836; outline-offset:3px; }
.lesson-deck .quiz-feedback { scroll-margin-bottom:115px; }
.lesson-deck .lesson-finish-links { padding:20px 22px; background:#f4f7f3; border:1px solid #d8e3d1; border-radius:10px; margin:22px 0; }
.lesson-deck .lesson-finish-links h3 { margin-bottom:8px; }
.lesson-deck .lesson-finish-links ul { padding:0; margin:0; list-style:none; display:grid; grid-template-columns:1fr 1fr; gap:0 20px; }
.lesson-deck .lesson-finish-links li { border-top:1px solid #dce6d8; }
.lesson-deck .lesson-finish-links a { min-height:44px; padding:8px 0; }
.lesson-deck .lesson-ready { padding:16px 18px; background:#eff5e8; border-radius:9px; color:#385b31; }
.lesson-deck .completion-bar { margin:22px 0 0; }
@media(max-width:760px) {
  .intro-deck .lesson-card-progress { grid-template-columns:minmax(0,1fr) auto; gap:8px 16px; }
  .intro-deck .lesson-card-progress>div { display:block; }
  .intro-deck .lesson-card-progress>div>span { display:block; font-size:.75rem; margin-top:2px; }
  .intro-deck .lesson-card-jump { align-self:start; }
  .intro-deck .lesson-card-jump>summary { font-size:.76rem; padding:10px; }
  .intro-deck .lesson-card-jump .intro-step-links { width:min(320px,calc(100vw - 40px)); grid-template-columns:1fr; }
  .lesson-deck .lesson-criteria-cards,.lesson-deck .lesson-finish-links ul { grid-template-columns:1fr; }
  .lesson-deck .lesson-video-topic strong { font-size:1.2rem; }
  .lesson-deck .lesson-active-card textarea { font-size:1rem; }
  .lesson-deck .lesson-finish-links { padding:16px; }
}

/* Guided orientation: evidence, decisions and useful progress. */
.orientation-mode { display:flex; align-items:center; justify-content:space-between; gap:12px 20px; flex-wrap:wrap; padding:14px 18px; margin:0 0 24px; border:1px solid #d6e3dc; border-radius:10px; background:#edf4e9; }
.orientation-mode strong { display:block; font-size:.9rem; color:#294e40; }
.orientation-mode p { margin:4px 0 0; font-size:.85rem; color:#4c626c; }
.orientation-mode .text-link { margin:0; }
.workshop-resume { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:4px 16px; margin:-8px 0 20px; padding-bottom:12px; border-bottom:1px solid #d6e3dc; color:#4c626c; font-size:.82rem; }
.workshop-resume .text-link { margin:0; font-size:.82rem; }
.workshop-invitation { display:grid; grid-template-columns:40px minmax(0,1fr); gap:16px; margin:28px 0; padding:24px; border:1px solid #d1dfcf; border-radius:12px; background:linear-gradient(120deg,#f0f6eb,#f8faf6); }
.workshop-invitation-icon { display:grid; place-items:center; width:40px; height:40px; border:1px solid #cddfc5; border-radius:50%; background:#e4eedc; color:#426836; }
.workshop-invitation .section-kicker { color:#506c5d; font-size:.67rem; letter-spacing:.07em; }
.intro-deck .workshop-invitation h3 { margin:7px 0 10px; color:#244c48; font-size:1.15rem; }
.intro-deck .workshop-invitation p { margin:0 0 12px; font-size:.9rem; }
.workshop-invitation .button { margin:4px 0 12px; max-width:100%; }
.workshop-invitation .small-text { color:#506c5d; }
.workshop-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; list-style:none; padding:0; margin:24px 0; counter-reset:workshop-step; }
.workshop-steps li { min-width:0; counter-increment:workshop-step; padding:18px; border:1px solid #d6e3dc; border-radius:10px; background:#f7faf5; }
.workshop-steps li::before { content:counter(workshop-step,decimal-leading-zero); display:block; margin-bottom:12px; color:#50734b; font-size:.75rem; font-weight:650; }
.workshop-steps strong { display:block; font-size:.95rem; color:#244c48; }
.intro-deck .workshop-steps p { margin:8px 0 0; font-size:.86rem; }
.lab-deck .intro-welcome-summary + .button-row { margin-top:20px; }
.guided-deck { max-width:860px; margin-inline:auto; }
.guided-deck .intro-active-card .guided-hook { font-size:clamp(1.15rem,2vw,1.45rem); line-height:1.5; color:#244c48; font-weight:600; margin-bottom:20px; }
.guided-deck .guided-outcome { border-left:3px solid #7da368; background:#edf4e7; border-radius:0 10px 10px 0; padding:17px 20px; margin:22px 0; }
.guided-deck .guided-outcome p { margin:5px 0 0; }
.guided-deck .guided-concepts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; padding:0; margin:24px 0; list-style:none; }
.guided-deck .guided-concept { min-width:0; padding:20px 18px; border:1px solid #cdded7; background:#f0f6f1; border-radius:12px; }
.guided-deck .guided-concept strong { display:block; color:#294e40; font-size:1rem; margin-bottom:8px; }
.guided-deck .guided-concept p,.guided-deck .guided-concept span { font-size:.86rem; line-height:1.6; }
.guided-deck .guided-concept .icon { width:30px; height:30px; color:#507d5b; margin-bottom:13px; }
.guided-deck .mission-shell { margin-top:22px; }
.guided-deck .mission-progress { display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin-bottom:18px; color:#496657; font-size:.82rem; font-weight:600; }
.guided-deck .mission-progress progress { width:100%; margin:0; height:6px; }
.guided-deck .mission-scenario { padding:19px 21px; background:#eff4f7; border:1px solid #d9e3e9; border-radius:12px; margin:0 0 22px; }
.guided-deck .mission-scenario p:last-child { margin:0; }
.guided-deck .mission-source { padding:20px 22px; border:1px solid #dacfab; border-left:4px solid #a58b4f; border-radius:4px 12px 12px 4px; background:#fbf8ee; margin:20px 0 24px; }
.guided-deck .mission-source h3,.guided-deck .mission-source strong { color:#645027; }
.guided-deck .mission-source p,.guided-deck .mission-source blockquote { color:#514b3d; font-size:.92rem; line-height:1.8; white-space:pre-line; }
.guided-deck .mission-source blockquote { margin:12px 0; padding:0; border:0; background:none; }
.guided-deck .mission-source cite { font-size:.78rem; font-style:normal; color:#715f3d; }
.guided-deck .mission-source summary { cursor:pointer; min-height:44px; font-weight:650; }
.guided-deck .mission-transcript { display:grid; gap:12px; margin:22px 0; }
.guided-deck .mission-turn { max-width:92%; padding:15px 19px; border:1px solid #d7e3e6; border-radius:13px 13px 13px 3px; background:#f0f5f7; }
.guided-deck .mission-turn:nth-child(even) { justify-self:end; border-color:#d0dfc8; border-radius:13px 13px 3px 13px; background:#eff5e8; }
.guided-deck .mission-turn strong { display:block; font-size:.78rem; letter-spacing:.02em; color:#385b68; margin-bottom:6px; }
.guided-deck .mission-turn p { margin:0; font-size:.92rem; }
.guided-deck .mission-options { display:grid; gap:12px; margin:19px 0; }
.guided-deck .mission-options .intro-choice { min-height:60px; padding:17px 18px; line-height:1.65; }
.guided-deck .mission-options input { flex:none; }
.guided-deck .mission-options button { text-align:left; font:inherit; color:#304f59; background:#fff; border:1px solid #bfcfd3; border-radius:10px; padding:17px 19px; line-height:1.65; min-height:60px; }
.guided-deck .mission-options button:hover { background:#f2f7ef; border-color:#709865; }
.guided-deck .mission-options button[aria-pressed="true"] { background:#edf4e7; border-color:#5b8050; box-shadow:inset 0 0 0 1px #5b8050; }
.guided-deck .mission-feedback:not(:empty) { margin:20px 0; padding:20px 22px; border:1px solid #cbdcba; border-radius:12px; background:#edf5e5; scroll-margin-top:100px; scroll-margin-bottom:130px; }
.guided-deck .mission-feedback.retry { border-color:#ddcdad; background:#faf5e9; }
.guided-deck .mission-feedback strong { display:block; margin-bottom:7px; color:#365937; }
.guided-deck .mission-feedback.retry strong { color:#6c562e; }
.guided-deck .mission-feedback p { margin:0; }
.verification-visual { margin:20px 0 4px; border:1px solid #cbd8d3; border-radius:12px; overflow:hidden; background:#fff; box-shadow:0 8px 24px #20372b12; }
.verification-visual-crop { aspect-ratio:1376 / 736; overflow:hidden; background:#f7f7ee; }
.verification-visual img { display:block; width:100%; height:auto; }
.verification-visual figcaption { margin:0; padding:11px 14px 12px; color:#526b63; font-size:.82rem; line-height:1.55; border-top:1px solid #dbe3df; background:#f8faf8; }
.lesson-visual { margin:20px 0 4px; border:1px solid #cbd8d3; border-radius:12px; overflow:hidden; background:#fff; box-shadow:0 8px 24px #20372b12; }
.lesson-visual-crop { aspect-ratio:1376 / 736; overflow:hidden; background:#f7f7ee; }
.lesson-visual img { display:block; width:100%; height:auto; }
.lesson-visual figcaption { margin:0; padding:11px 14px 12px; color:#526b63; font-size:.82rem; line-height:1.55; border-top:1px solid #dbe3df; background:#f8faf8; }
.guided-deck .mission-think-first { margin:0 0 16px; color:var(--muted); font-size:.9rem; line-height:1.65; }
.tool-purpose { border-left:3px solid #75915f; padding:1px 18px; margin:22px 0; background:#f6f9f5; }
.tool-purpose p:first-child { margin-top:14px; }
.tool-purpose p:last-child { margin-bottom:14px; }
.tool-use-cases { margin:26px 0; }
.tool-use-cases h3 { margin-bottom:8px; }
.tool-use-cases>.small-text { margin-bottom:14px; }
.tool-use-case { margin:10px 0; border:1px solid #cddcd5; border-radius:10px; background:#f8faf7; }
.tool-use-case>summary { padding:14px 18px; min-height:52px; cursor:pointer; font-weight:600; font-size:.95rem; line-height:1.55; }
.tool-use-case>summary::marker { color:#577761; }
.tool-use-case[open]>summary { border-bottom:1px solid #dce5df; }
.tool-use-case>div { padding:18px; }
.tool-use-case p { font-size:.93rem; line-height:1.65; }
.tool-use-case p:last-child { margin-bottom:0; }
.tool-use-case .tool-use-case-label { margin-bottom:7px; font-size:.78rem; font-weight:700; color:#476955; }
.tool-use-case blockquote { margin:0 0 18px; border-left:3px solid #8ca875; padding:12px 15px; background:#fff; }
.tool-conversation { margin-bottom:20px; }
.tool-conversation-turn { border:1px solid #d0ddd7; border-radius:12px; padding:18px 20px; margin:14px 0; background:#f7faf6; }
.tool-conversation-turn p { margin:0 0 12px; font-size:.95rem; line-height:1.65; }
.tool-conversation-turn p:last-child { margin-bottom:0; }
.tool-conversation-turn .tool-conversation-speaker { font-size:.78rem; font-weight:700; color:#365d4d; margin-bottom:9px; }
.tool-conversation-turn .tool-conversation-note { border-top:1px solid #d5e2cc; padding-top:12px; font-size:.85rem; color:#537047; }
.tool-conversation-pause { margin:20px 0; }
.tool-conversation-reveal .tool-conversation-takeaway { border-left:3px solid #789764; border-radius:0 8px 8px 0; padding:14px 16px; background:#f0f6ea; margin:20px 0 0; }
.tool-features h3 { font-size:1rem; margin:20px 0 8px; }
.tool-starting-request blockquote { border-left:3px solid #8ca875; margin:18px 0; padding:14px 18px; background:#f7faf5; }
.tool-output-bridge section { margin:22px 0; padding-top:20px; border-top:1px solid var(--line); }
.tool-output-bridge h3 { font-size:1rem; margin-bottom:10px; }
.tool-output-bridge blockquote { margin:16px 0; border-left:3px solid #8ca875; padding:12px 16px; background:#f7faf5; }
.tool-workflow { list-style:none; padding:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin:22px 0; }
.tool-workflow li { display:flex; gap:12px; padding:20px; background:#f6f9f5; border:1px solid var(--line); border-radius:12px; }
.tool-workflow-number { flex:0 0 28px; height:28px; border-radius:50%; background:#e5efdd; color:#365937; font-weight:700; display:grid; place-items:center; }
.tool-workflow h3,.tool-example h3 { margin:0 0 10px; font-size:1rem; }
.tool-workflow p { margin:0; font-size:.93rem; line-height:1.65; }
.tool-example { padding:22px; margin:22px 0; border:1px solid var(--line); border-radius:14px; background:#f5f8fa; }
.tool-example .label-pill { margin-bottom:14px; }
.tool-example blockquote { margin:18px 0; padding:4px 0 4px 16px; border-left:3px solid #75915f; }
.tool-example blockquote p { margin:0; color:var(--ink); }
.tool-example>p:last-child { margin-bottom:0; }
.tool-practice-steps { padding-left:24px; }
.tool-practice-steps li { padding-left:5px; margin:12px 0; }
.tool-resources { margin-top:28px; padding-top:22px; border-top:1px solid var(--line); }
.tool-resources ul { padding:0; list-style:none; }
.tool-resources li { padding:15px 0; border-bottom:1px solid var(--line); }
.tool-resources li p { margin:5px 0 0; font-size:.9rem; }
.tool-optional-scenarios .mission-shell { margin:22px 0 16px; }
@media(max-width:650px) { .tool-workflow { grid-template-columns:1fr; } .tool-workflow li,.tool-example { padding:16px; } }
.guided-deck .mission-answer-check { border:1px solid var(--line); border-radius:12px; padding:0 18px; background:#f6f9f5; }
.guided-deck .mission-answer-check>summary,.guided-deck .mission-reasoning summary { padding:15px 0; min-height:44px; cursor:pointer; font-weight:650; color:#315746; }
.guided-deck .mission-answer-check[open]>.mission-options { padding-top:5px; }
.guided-deck .mission-answer-check .intro-choice { background:#fff; }
.guided-deck .mission-answer-check>#mission-feedback { margin-bottom:16px; }
.guided-deck .mission-answer-check .mission-feedback:not(:empty) { padding:16px; }
.guided-deck .mission-reasoning { margin:18px 0; border-top:1px solid var(--line); }
.guided-deck .mission-reasoning p { font-size:.9rem; line-height:1.7; }
.guided-deck .mission-reasoning details { padding:0 14px; border-left:3px solid #d4e1cd; }
.guided-deck .mission-nav { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:12px; border-top:1px solid #dbe4e0; padding:18px 0 0; margin-top:20px; }
.guided-deck .mission-nav .button { min-height:48px; }
.guided-deck fieldset { min-width:0; border:0; padding:0; margin:0; }
.lesson-deck .checkpoint > fieldset { margin-bottom:20px; }
.guided-deck fieldset legend { padding:0; margin-bottom:14px; font-weight:600; line-height:1.6; color:var(--ink); }
.guided-deck .practice-case-picker { border:1px solid #ccddd2; border-radius:12px; background:#f5f8f0; padding:22px; margin:22px 0; }
.guided-deck .practice-case-picker select,.guided-deck .guided-disclosure textarea,.guided-deck .guided-disclosure input,.guided-deck .guided-disclosure select { display:block; width:100%; max-width:100%; min-height:48px; padding:13px 14px; border:1px solid #b7cbd2; border-radius:8px; background:white; color:#2a4651; font:inherit; line-height:1.5; }
.guided-deck .practice-case-preview { margin:20px 0; padding-top:18px; border-top:1px solid #d1dfcc; }
.guided-deck .practice-case-material,.lesson-task-setup .practice-case-material { white-space:pre-line; font-size:.88rem; line-height:1.8; background:#fff; border:1px solid #d8e2d5; border-radius:9px; padding:18px 20px; margin:16px 0; }
.guided-deck .guided-disclosure { margin:22px 0; }
.guided-deck .guided-disclosure textarea { min-height:135px; resize:vertical; }
.guided-deck .guided-disclosure .field-label { margin-top:22px; }
.guided-deck .guided-habits { display:grid; gap:10px; margin:16px 0 22px; }
.guided-deck .guided-habits label { display:flex; align-items:flex-start; gap:12px; padding:15px 17px; border:1px solid #c9d9d1; border-radius:9px; background:#f6f9f3; cursor:pointer; line-height:1.6; }
.guided-deck .guided-habits label:has(input:checked) { background:#eaf3df; border-color:#678b51; }
.guided-deck .guided-habits input { width:18px; height:18px; flex:none; margin-top:4px; accent-color:#527747; }
.guided-deck .guided-habits label strong { display:block; font-size:.94rem; }
.guided-deck .guided-habits label span { font-size:.86rem; }
.guided-deck .skill-achievement { padding:26px; margin:20px 0; border:1px solid #bbd3a9; border-radius:14px; background:linear-gradient(125deg,#e8f2de,#f5f9f0); }
.guided-deck .skill-achievement>.icon { width:36px; height:36px; color:#4e7740; margin-bottom:16px; }
.guided-deck .skill-achievement h3 { font-size:1.3rem; color:#36592f; }
.skill-trail { display:grid; grid-template-columns:1fr; gap:12px; margin:20px 0 28px; padding:0; list-style:none; }
.skill-trail.module-list { border:0; background:none; overflow:visible; }
.skill-trail>li { display:block; min-width:0; padding:0; border:0; background:none; }
.skill-trail .module-row { display:grid; grid-template-columns:36px minmax(0,1fr); align-content:start; align-items:start; gap:11px 16px; border:1px solid #d4e0d9; border-radius:14px; padding:21px 22px; height:100%; background:#fff; }
.skill-trail .module-row:hover { border-color:#a6bdb6; background:#fafcf9; }
.skill-trail .module-row:focus-visible { outline:3px solid #397ed0; outline-offset:3px; }
.skill-trail .module-number { width:36px; height:36px; margin:0; background:#f4f7f5; border-color:#d0ded6; }
.skill-trail .module-number.complete { background:#e7f1dc; border-color:#b3caa1; }
.skill-trail .module-row-end { grid-column:2; display:flex; flex-direction:row; align-items:center; justify-content:space-between; gap:12px; width:100%; margin:0; padding:9px 0 0; border-top:1px solid #edf1ee; }
.skill-trail .module-row-end>span { font-size:.78rem; color:#60746d; }
.skill-trail .module-row-end>.icon { width:20px; height:20px; color:#42675b; }
.skill-trail .module-row h3 { font-size:1.06rem; line-height:1.35; margin:3px 0 7px; color:#233e49; }
.skill-trail .module-row p { font-size:.88rem; line-height:1.55; color:#5e717a; }
.skill-trail .module-tag { display:block; font-size:.68rem; line-height:1.4; letter-spacing:.075em; color:#657d72; }
.skill-trail .earned,.skill-trail .complete { border-color:#a8c497; background:#eaf3df; color:#365d34; }
.skill-trail .icon { width:21px; height:21px; flex:none; }
.orientation-preferences { margin:24px 0; background:#fff; border:1px solid #d5e1de; border-radius:12px; padding:0 22px; }
.orientation-preferences>summary { cursor:pointer; padding:19px 0; font-size:1rem; font-weight:600; min-height:52px; }
.orientation-preferences[open]>summary { border-bottom:1px solid #dce5e0; margin-bottom:23px; }
.guided-journal { margin:22px 0; }
.guided-journal article,.guided-journal .journal-decision { padding:18px 0; border-bottom:1px solid #dce5e0; }
.guided-journal h3 { margin-bottom:8px; }
.guided-journal p { line-height:1.75; }
.guided-deck .actual-help-summary { margin:20px 0; padding:18px 20px; border:1px solid #d0dfcc; background:#f1f6ec; border-radius:10px; }
.guided-deck .actual-help-summary ul { padding-left:20px; line-height:1.8; }
.guided-deck .guided-recall { margin:22px 0; }
.guided-deck .guided-recall textarea { width:100%; min-height:112px; padding:14px 16px; border:1px solid #bacdd3; border-radius:9px; font:inherit; color:#2a4751; resize:vertical; }
.guided-deck .revision-decisions { margin:22px 0; }
.lesson-deck .feedback-details { margin:20px 0; padding:0 17px; border:1px solid #d5e0dd; border-radius:9px; background:#f7faf7; }
.lesson-deck .feedback-details summary { min-height:48px; padding:14px 0; cursor:pointer; font-weight:600; font-size:.9rem; }
.lesson-deck .feedback-details .rubric-feedback { margin-top:6px; }
.guided-deck .guided-video-resource { margin-top:24px; }
.guided-deck .guided-video-resource .lesson-video-placeholder { max-width:440px; margin:0 0 18px; }
.orientation-preferences>select { display:block; min-height:48px; padding:12px 14px; font:inherit; width:100%; border:1px solid #b8cdd3; border-radius:8px; background:#fff; color:#2b4752; margin-bottom:16px; }
@media(max-width:760px) {
  .orientation-mode { padding:14px 16px; }
  .workshop-invitation { grid-template-columns:minmax(0,1fr); padding:18px; gap:12px; }
  .workshop-steps { grid-template-columns:minmax(0,1fr); }
  .guided-deck .guided-concepts { grid-template-columns:1fr; gap:10px; }
  .guided-deck .guided-concept { padding:17px 18px; }
  .guided-deck .mission-source,.guided-deck .mission-scenario,.guided-deck .mission-feedback:not(:empty) { padding:17px; }
  .guided-deck .mission-turn { max-width:96%; padding:14px 16px; }
  .guided-deck .mission-options .intro-choice { padding:15px 16px; }
  .guided-deck .practice-case-picker { padding:17px; }
  .guided-deck .practice-case-picker select,.guided-deck .guided-disclosure input,.guided-deck .guided-disclosure select,.guided-deck .guided-disclosure textarea { font-size:1rem; }
  .skill-trail { grid-template-columns:1fr; gap:10px; }
  .skill-trail .module-row { padding:18px; gap:10px 13px; grid-template-columns:32px minmax(0,1fr); }
  .skill-trail .module-number { width:32px; height:32px; }
  .guided-deck .guided-recall textarea,.orientation-preferences>select { font-size:1rem; }
  .orientation-preferences { padding:0 18px; }
}
@media(prefers-reduced-motion:reduce) { .guided-deck * { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }

/* GPC identity and always-available orientation preferences. */
.onboarding-shell { min-height:100dvh; background:#f2f5f3; }
.onboarding-brand { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:20px max(24px,calc((100% - 760px)/2)); background:var(--navy); color:#e5edea; }
.onboarding-brand img { display:block; width:150px; height:auto; }
.onboarding-brand span { font-size:.8rem; }
.onboarding-shell main { width:100%; max-width:760px; margin:0 auto; padding:30px 24px 24px; }
.onboarding-progress { display:flex; flex-wrap:wrap; justify-content:space-between; gap:10px; margin:0 0 22px; font-size:.85rem; color:#46615b; }
.onboarding-progress progress { width:100%; height:7px; }
.onboarding-progress progress::-webkit-progress-bar { background:#dce6df; }
.onboarding-progress progress::-webkit-progress-value { background:#55784e; }
.onboarding-progress progress::-moz-progress-bar { background:#55784e; }
.onboarding-card { padding:32px; border:1px solid #d4dfda; border-radius:20px; background:#fff; box-shadow:0 8px 28px #233c3210; }
.onboarding-card h1 { font-size:2rem; line-height:1.2; margin:12px 0 16px; letter-spacing:-.035em; }
.onboarding-lead { color:#52666e; font-size:1rem; line-height:1.65; margin:0 0 24px; }
.experience-options { border:0; padding:0; margin:0; display:grid; gap:12px; min-width:0; }
.experience-options legend { font-size:1rem; font-weight:700; margin:0 0 12px; padding:0; }
.experience-option { display:flex; gap:14px; align-items:flex-start; padding:19px; border:1px solid #cddbd5; border-radius:12px; background:#fff; cursor:pointer; line-height:1.5; }
.experience-option:hover { border-color:#557f62; background:#fafcf8; }
.experience-option:has(input:checked) { border:2px solid #52764c; padding:18px; background:#f0f6e9; }
.experience-option:has(input:focus-visible) { outline:3px solid #397ed0; outline-offset:3px; }
.experience-option input { flex:none; width:19px; height:19px; margin:3px 0 0; accent-color:#426c47; }
.experience-option>span { display:grid; gap:5px; }
.experience-option strong { color:#243b43; font-size:1rem; }
.experience-option>span>span { font-size:.89rem; color:#52666e; }
.onboarding-reassurance { margin:22px 0 0; line-height:1.6; }
.onboarding-card .field-label { display:block; font-weight:600; margin:20px 0 10px; }
.onboarding-card select,.onboarding-card input[type=text],.orientation-settings input[type=text] { width:100%; min-height:48px; border:1px solid #b9ccd2; border-radius:9px; padding:12px; background:#fff; color:#263f4b; font:inherit; }
.onboarding-card select:focus-visible,.onboarding-card input[type=text]:focus-visible,.orientation-settings input[type=text]:focus-visible { outline:3px solid #397ed0; outline-offset:3px; }
.onboarding-card .small-text { line-height:1.6; }
.onboarding-match { margin-top:24px; padding:18px; border-left:3px solid #79976a; background:#f1f5eb; border-radius:0 10px 10px 0; }
.onboarding-match p { font-size:.9rem; line-height:1.6; margin:6px 0; }
.onboarding-match span { font-size:.8rem; color:#56695f; }
.onboarding-actions { display:flex; align-items:center; justify-content:space-between; gap:16px; border-top:1px solid #e0e7e1; margin-top:24px; padding-top:22px; }
.onboarding-actions>span { font-size:.78rem; color:#62756f; max-width:140px; }
.onboarding-actions .button { min-height:48px; }
.onboarding-privacy { font-size:.78rem; line-height:1.6; color:#62756f; text-align:center; margin:20px auto 0; max-width:580px; }
#onboarding-error { color:#923d32; margin:18px 0 0; font-size:.9rem; }
#onboarding-error:empty { display:none; }
.learning-profile-summary { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:18px 22px; margin:0 0 24px; border:1px solid #d2dfd4; border-radius:12px; background:#f0f5ec; }
.learning-profile-summary strong { display:block; font-size:.94rem; line-height:1.5; }
.learning-profile-summary p { margin:6px 0 0; font-size:.83rem; color:#576b60; }
.learning-profile-summary .section-kicker { font-size:.65rem; margin-bottom:6px; display:block; }
.learning-profile-summary .text-link { flex:none; font-size:.83rem; min-height:44px; }
.experience-mode { font-size:.82rem; color:#52695b; line-height:1.6; max-width:760px; margin:10px 0 0; }
.experience-support { margin:22px 0; border:1px solid #d5e1d1; border-radius:12px; padding:17px 20px; background:#f4f7ef; }
.experience-support>summary { font-weight:600; cursor:pointer; color:#35533f; line-height:1.5; }
.experience-support p,.experience-support li { font-size:.9rem; line-height:1.7; }
.experience-support p { margin:14px 0 0; }
.experience-support ol,.experience-support ul { padding-left:22px; margin:14px 0; }
.experience-support li+li { margin-top:10px; }
.experience-support h3 { font-size:1rem; margin-top:20px; }
.experience-support .support-example { padding:14px; border-left:3px solid #8ba176; background:#fff; }
.experience-support details { margin:16px 0 0; }
.experience-support details summary { cursor:pointer; font-weight:600; }
.experience-support.expert-reference { background:#f2f6f7; border-color:#d5e1e5; }
.settings-example-override { margin-top:18px; }
.settings-example-override>summary { font-size:.84rem; cursor:pointer; color:#496256; }
.settings-example-override[open]>summary { margin-bottom:15px; }
.orientation-settings .experience-option { padding:13px; gap:11px; }
.orientation-settings .experience-option:has(input:checked) { padding:12px; }
.orientation-settings .experience-option>span>span { font-size:.82rem; }
.orientation-settings input[type=text] { margin-bottom:10px; }
@media(max-width:760px) {
  .onboarding-brand { padding:16px 22px; }
  .onboarding-brand img { width:124px; }
  .onboarding-brand span { font-size:.7rem; max-width:115px; text-align:right; }
  .onboarding-shell main { padding:24px 16px; }
  .onboarding-card { padding:24px 20px; border-radius:16px; }
  .onboarding-card h1 { font-size:1.65rem; }
  .onboarding-lead { font-size:.93rem; }
  .experience-option { padding:16px; gap:12px; }
  .experience-option:has(input:checked) { padding:15px; }
  .onboarding-actions { align-items:stretch; flex-direction:column; gap:14px; }
  .onboarding-actions>span { max-width:none; text-align:center; }
  .onboarding-actions .button { justify-content:center; }
  .learning-profile-summary { flex-direction:column; align-items:flex-start; padding:17px 18px; gap:7px; }
  .experience-support { padding:15px 17px; }
}
.sidebar .brand { display:flex; flex-direction:column; align-items:flex-start; gap:12px; padding:0 12px 8px; }
.sidebar .brand img { display:block; width:180px; max-width:100%; height:auto; }
.sidebar .brand-sub { color:#c9d8df; font-size:.6rem; line-height:1.6; letter-spacing:.13em; }
.topbar { position:sticky; top:0; z-index:25; height:78px; gap:24px; background:var(--navy); border-bottom-color:#294553; color:#fff; }
.topbar-brand { display:none; align-items:center; flex:none; padding:6px 0; }
.topbar-brand img { display:block; width:130px; height:auto; }
.topbar .breadcrumbs { flex:1; min-width:0; color:#b9cbd6; }
.topbar .breadcrumbs strong { color:#e6eef2; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.topbar .breadcrumbs>span { display:none; }
.topbar-actions { display:flex; align-items:center; flex:none; margin-left:auto; }
.topbar .icon-button { color:#fff; width:44px; height:44px; display:inline-flex; align-items:center; justify-content:center; border:1px solid #4a626e; border-radius:10px; background:#ffffff08; padding:10px; }
.topbar .mobile-toggle { display:none; }
.topbar .icon-button:hover { background:#ffffff17; border-color:#9bb1bc; }
.topbar .icon-button:focus-visible,.topbar-brand:focus-visible,.sidebar .brand:focus-visible { outline:3px solid #c6ed8e; outline-offset:4px; }
.topbar .icon-button .icon { width:22px; height:22px; }
.orientation-settings { width:calc(100% - 40px); max-width:560px; max-height:calc(100dvh - 40px); padding:26px 28px; border:1px solid #c9d9dc; border-radius:18px; overflow-y:auto; overscroll-behavior:contain; }
.orientation-settings::backdrop { background:#112b39aa; }
body:has(.orientation-settings[open]) { overflow:hidden; }
.settings-heading { display:flex; justify-content:space-between; align-items:center; gap:16px; padding-bottom:16px; border-bottom:1px solid #dce5e4; }
.settings-heading h2 { margin:0; font-size:1.4rem; letter-spacing:-.025em; }
#settings-description { margin:18px 0 0; }
.settings-close { display:inline-flex; align-items:center; justify-content:center; flex:none; min-width:44px; height:44px; padding:10px; border:1px solid #c7d5db; border-radius:10px; background:#fff; color:#294653; }
.settings-close:hover { background:#edf3f4; }
.settings-section { margin-top:24px; }
.settings-section+.settings-section { padding-top:23px; border-top:1px solid #e1e8e5; }
.settings-section h3 { font-size:1rem; margin-bottom:9px; }
.orientation-settings p { font-size:.88rem; line-height:1.6; }
.orientation-settings .field-label { display:block; font-size:.9rem; font-weight:600; margin:0 0 9px; }
.orientation-settings select { display:block; width:100%; min-height:48px; padding:12px 14px; font:inherit; border:1px solid #b9ccd2; border-radius:9px; background:#fff; color:#263f4b; margin-bottom:12px; }
.orientation-settings .path-options { grid-template-columns:1fr; gap:10px; margin:14px 0; }
.orientation-settings .path-option { min-height:0; width:100%; padding:14px 16px; gap:12px; }
.orientation-settings .path-option strong { font-size:1rem; }
.orientation-settings .path-option small { font-size:.83rem; }
.orientation-settings .path-option>span>span { font-size:.83rem; line-height:1.5; }
.orientation-settings .path-radio { margin-top:5px; }
.orientation-settings .small-text { font-size:.8rem; margin-bottom:0; }
.settings-task .text-link { margin-top:12px; min-height:44px; text-align:left; }
.settings-status { margin-top:18px; padding:11px 13px; border-radius:8px; background:#edf4e7; color:#375c40; }
.settings-status:empty { display:none; }
.settings-footer { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px; border-top:1px solid #dce5e4; margin-top:22px; padding-top:18px; }
.settings-footer .button { min-height:44px; padding-inline:24px; }
.orientation-settings button:focus-visible,.orientation-settings select:focus-visible { outline:3px solid #397ed0; outline-offset:3px; }
.page-footer .footer-pilot { color:#6a7c86; }
@media(max-width:760px) {
  .topbar { display:grid; grid-template-columns:44px minmax(0,1fr) 44px; height:72px; padding:0 19px; gap:16px; }
  .topbar .mobile-toggle { display:inline-flex; }
  .topbar-brand { display:flex; margin:0; justify-content:center; }
  .topbar-brand img { width:118px; }
  .topbar .breadcrumbs { display:none; }
  .topbar-actions { margin-left:0; justify-content:flex-end; }
  .orientation-settings { width:calc(100% - 24px); max-height:calc(100dvh - 24px); padding:20px; border-radius:16px; }
  .settings-heading h2 { font-size:1.25rem; }
  .orientation-settings select { font-size:1rem; }
  .orientation-settings .path-option { padding:13px 14px; }
  .page-footer { flex-wrap:wrap; gap:7px 16px; }
}
@media(max-width:360px) {
  .topbar { padding:0 16px; gap:12px; }
  .topbar-brand img { width:108px; }
  .orientation-settings { padding:17px; }
}

.task-setup { margin-bottom: 32px; }
.lesson-task-setup { max-width:780px; margin:0 auto; scroll-margin-top:20px; }
.lesson-task-setup .task-setup-return { margin:0 0 12px; min-height:44px; }
.lesson-task-setup .task-setup-context { padding:18px 20px; margin:0 0 22px; border-left:3px solid #83a36f; border-radius:0 10px 10px 0; background:#edf3e8; }
.lesson-task-setup .task-setup-context>strong { display:block; margin-bottom:6px; color:#35543c; }
.lesson-task-setup .task-setup-context p { margin:0; font-size:.87rem; line-height:1.65; }
.lesson-task-setup .task-setup-context p+p { margin-top:8px; }
.lesson-task-setup .task-setup-progress { display:grid; grid-template-columns:auto 1fr; gap:9px 16px; margin:0 0 20px; color:#4b6570; font-size:.83rem; scroll-margin-top:20px; }
.lesson-task-setup .task-setup-progress>span { text-align:right; }
.lesson-task-setup .task-setup-progress progress { grid-column:1/-1; display:block; width:100%; height:7px; margin:0; border:0; border-radius:10px; overflow:hidden; background:#dce6e1; accent-color:#547748; }
.lesson-task-setup .task-setup-card { background:#fff; border:1px solid #d6e1e4; border-radius:16px; padding:28px 30px; margin:0; box-shadow:0 4px 20px #203c4905; overflow-wrap:anywhere; }
.lesson-task-setup .task-setup-card h2 { margin-bottom:18px; }
.lesson-task-setup .task-setup-card .field-label { margin-top:22px; }
.lesson-task-setup .task-setup-card .field-hint { font-size:.86rem; line-height:1.65; }
.lesson-task-setup input,.lesson-task-setup select,.lesson-task-setup textarea { display:block; width:100%; max-width:100%; border:1px solid #b8cbd2; background:#fff; border-radius:8px; padding:13px 14px; color:#263f4b; font:inherit; line-height:1.5; scroll-margin-top:95px; scroll-margin-bottom:125px; }
.lesson-task-setup textarea { min-height:118px; resize:vertical; }
.lesson-task-setup input:focus-visible,.lesson-task-setup select:focus-visible,.lesson-task-setup textarea:focus-visible { outline:3px solid #426836; outline-offset:3px; }
.lesson-task-setup #task-setup-heading:focus { outline:none; }
.lesson-task-setup .task-setup-ideas { margin:18px 0 22px; padding:14px 16px; border:1px solid #d8e2db; border-radius:9px; background:#f5f8f2; }
.lesson-task-setup .task-setup-ideas>summary { cursor:pointer; font-size:.88rem; font-weight:600; min-height:24px; }
.lesson-task-setup .task-setup-ideas .track-details { margin:14px 0 0; padding:0; border:0; background:none; }
.lesson-task-setup .task-setup-errors:not(:empty) { margin:18px 0; padding:16px 18px; border:1px solid #e2c399; border-radius:9px; background:#fff6e9; color:#6b4f29; }
.lesson-task-setup .task-setup-errors p { color:inherit; margin-bottom:8px; }
.lesson-task-setup .task-setup-errors ul { margin:0; padding-left:20px; }
.lesson-task-setup .task-setup-errors button { min-height:44px; text-align:left; }
.lesson-task-setup .task-setup-navigation { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:22px; padding:14px 0 max(14px,env(safe-area-inset-bottom)); position:sticky; bottom:0; z-index:2; background:#f5f7f8; border-top:1px solid #d9e2e1; box-shadow:0 -10px 18px #f5f7f8ed; }
.lesson-task-setup .task-setup-navigation>.small-text,.lesson-task-setup .task-setup-navigation>span { font-size:.78rem; color:#526b76; text-align:center; }
.lesson-task-setup .task-setup-navigation .primary { min-width:190px; }
@media(max-width:760px) {
  .lesson-task-setup { scroll-margin-top:82px; }
  .lesson-task-setup .task-setup-progress { scroll-margin-top:82px; }
  .lesson-task-setup .task-setup-context { padding:15px 17px; margin-bottom:18px; }
  .lesson-task-setup .task-setup-card { padding:23px 20px; }
  .lesson-task-setup input,.lesson-task-setup select,.lesson-task-setup textarea { font-size:1rem; }
  .lesson-task-setup .task-setup-navigation { gap:12px; }
  .lesson-task-setup .task-setup-navigation>.small-text,.lesson-task-setup .task-setup-navigation>span { display:none; }
  .lesson-task-setup .task-setup-navigation .primary { min-width:0; max-width:70%; flex:1; }
}
.task-setup select,.task-setup input,.manual-review select { display:block;width:100%;border:1px solid #b8cbd2;background:#fff;border-radius:8px;padding:13px 14px;color:#263f4b;font:inherit;line-height:1.5; }
.task-setup textarea { min-height:108px; }
.task-setup input:focus-visible,.task-setup select:focus-visible,.manual-review select:focus-visible { outline:3px solid #82a665;outline-offset:2px; }
.track-details { padding:20px 22px;margin:18px 0 25px;border-left:3px solid #8cab70;background:#f4f7ef; }
.track-details>p { font-size:.9rem;line-height:1.8; }
.track-examples { padding-left:21px;margin-bottom:18px; }
.track-examples li { font-size:.86rem;line-height:1.8;margin:8px 0; }
.program-sources summary,.lesson-reading>summary,.manual-review>summary,.lesson-video>summary,.journal-review>summary { cursor:pointer;font-weight:600;font-size:.92rem;line-height:1.6; }
.program-sources ul { margin:14px 0 0;padding-left:20px; }
.program-sources a { text-decoration:underline;text-underline-offset:3px;font-size:.83rem; }
.program-sources .icon { width:13px;height:13px; }
.prompt-lab { border-top:4px solid #779960; }
.prompt-lab h3 { margin:28px 0 12px;font-size:1.06rem; }
.prompt-lab p { line-height:1.8; }
.lab-task { padding:20px 22px;background:#f0f4ed;border-radius:9px;margin:22px 0; }
.lab-task h3 { margin-top:15px; }
.lab-task .text-link { font-size:.82rem;margin-top:5px; }
.track-context { padding:16px 19px;background:#f0f4f8;border-left:3px solid #91acbe;font-size:.9rem; }
.lab-criteria { padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:20px 0 29px; }
.lab-criteria li { border:1px solid var(--line);border-radius:8px;padding:16px; }
.lab-criteria strong,.lab-criteria span { display:block;font-size:.86rem;line-height:1.65; }
.lab-criteria span { color:#5c737b;margin-top:7px;font-size:.8rem; }
.prompt-lab .lab-step-label { font-size:1.06rem;margin-top:32px; }
.feedback-availability { font-size:.87rem;padding:15px 18px;background:#f0f4f7;border-radius:8px;color:#415e6d; }
.feedback-privacy { margin:12px 0 20px; }
.button:disabled { opacity:.58;cursor:wait; }
.review-error { padding:16px 18px;border:1px solid #e7cfad;background:#fff3e0;color:#6f4f28;font-size:.9rem;border-radius:8px;margin-top:18px;overflow-wrap:anywhere; }
.manual-review { border:1px solid #d7e0e4;border-radius:9px;margin:22px 0;padding:18px 20px; }
.manual-review>p { font-size:.86rem;margin-top:16px; }
.manual-criteria { display:grid;gap:16px;margin:22px 0; }
.manual-criteria label { display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:16px;align-items:center; }
.manual-criteria strong { display:block;font-size:.86rem;line-height:1.5; }
.manual-criteria small { display:block;color:#60747c;font-size:.79rem;line-height:1.65;margin-top:6px; }
.manual-review .button { margin-top:18px; }
.prompt-feedback { padding:23px;border:1px solid #cad9bf;background:#f3f7ee;border-radius:10px;margin:26px 0;overflow-wrap:anywhere; }
.prompt-feedback.manual { background:#f4f6f8;border-color:#d4dfe5; }
.prompt-feedback .section-heading { align-items:flex-start;flex-wrap:wrap;gap:12px;margin:0 0 15px; }
.prompt-feedback .section-heading h3 { margin:0;font-size:1.08rem; }
.prompt-feedback h4 { margin:22px 0 8px;font-size:.91rem; }
.prompt-feedback p { font-size:.89rem; }
.feedback-quote { border-left:3px solid #98b181;padding-left:15px;font-style:italic;color:#3f5c42; }
.rubric-feedback { list-style:none;padding:0;margin:25px 0; }
.rubric-feedback li { padding:15px 0;border-top:1px solid #d5dfce; }
.rubric-feedback li>div { display:flex;justify-content:space-between;align-items:center;gap:16px; }
.rubric-feedback strong { font-size:.85rem; }
.rubric-feedback li p { font-size:.83rem;line-height:1.75;margin:10px 0 0; }
.criterion-status { font-size:.72rem;padding:3px 9px;border-radius:5px;background:#e8edde;white-space:nowrap; }
.criterion-status.developing { background:#f6eacb;color:#725b25; }
.criterion-status.missing { background:#f3e1dc;color:#7b493c; }
.feedback-question { background:#e6eedc;padding:15px 18px;border-radius:7px; }
.revision-step { border:0;border-top:1px solid #d6e1e5;padding:27px 0 0;margin:35px 0 22px;min-width:0; }
.revision-step legend { float:left;width:100%;font-size:1.06rem;font-weight:600;margin-bottom:13px; }
.revision-step>.field-hint { clear:both; }
.revision-step:disabled { opacity:.65; }
.revision-step textarea[rows="3"],.manual-review textarea { min-height:100px; }
.recheck-button { margin-top:19px; }
.recheck-button+.small-text { margin-top:12px; }
.lesson-reading { margin:0 0 24px; }
.lesson-reading>summary { padding:20px 23px;border:1px solid #d7e0e4;border-radius:9px;background:white;margin-bottom:20px; }
.lesson-video>summary { padding:3px 0; }
.video-draft-content { margin-top:20px; }
.video-draft-content>.small-text { margin-bottom:18px; }
.journal-task h3 { font-size:.9rem;margin-top:24px; }
.journal-review { padding:17px 18px;border:1px solid #d9e2e6;border-radius:8px;margin:14px 0; }
.journal-review p,.journal-review li { font-size:.84rem;line-height:1.8; }
.journal-review ul { padding-left:20px; }
@media(max-width:760px) {
  .lab-criteria { grid-template-columns:1fr;gap:10px; }
  .manual-criteria label { grid-template-columns:1fr;gap:9px; }
  .lab-task,.track-details,.manual-review,.prompt-feedback { padding:17px; }
  .rubric-feedback li>div { align-items:flex-start;gap:9px; }
  .task-setup select,.task-setup input,.manual-review select { font-size:1rem; }
  .prompt-feedback .section-heading h3 { font-size:1.02rem; }
}
