:root{--ink:#192c37;--muted:#536570;--green:#176647;--green-deep:#17372d;--green-pale:#e9f3ed;--line:#dde5e8;--canvas:#f4f7f9;--white:#fff;--blue:#2e5372;--shadow:0 5px 20px #1b344509;--reading:1.0625rem;font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--canvas);font-size:16px;font-synthesis:none}*{box-sizing:border-box}body{margin:0}a{color:var(--green);text-underline-offset:3px}button,input,textarea,select{font:inherit}button,a,input,textarea,summary{touch-action:manipulation}button{cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid #3b83bd;outline-offset:4px}button:disabled{cursor:default}button,textarea,input{color:inherit}h1,h2,h3,p{margin-top:0}h1{font-size:2.125rem;line-height:1.2;letter-spacing:-.04em;font-weight:720;margin-bottom:16px}h2{font-size:1.35rem;line-height:1.3;letter-spacing:-.025em}h3{font-size:1.1rem;line-height:1.4}p{line-height:1.65}.sidebar{position:fixed;inset:0 auto 0 0;width:258px;background:var(--white);border-right:1px solid var(--line);padding:30px 20px 18px;display:flex;flex-direction:column;z-index:20}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;font-weight:750;color:var(--ink);font-size:1.65rem;line-height:1}.brand-mark{display:grid;place-items:center;width:42px;height:46px;background:var(--green-deep);color:white;font-size:1.45rem;border-radius:9px;box-shadow:5px -5px 0 #cde4d6}.brand-sub{display:block;font-size:.6875rem;letter-spacing:.13em;color:var(--muted);font-weight:650;margin-top:8px}.sidebar nav{margin-top:35px;overflow:auto;flex:1;padding:0 2px 12px;scrollbar-width:thin}.nav-primary{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--muted);font-weight:600;font-size:.9375rem;padding:12px;border-radius:8px;margin-bottom:4px}.nav-primary.active{background:var(--green-pale);color:var(--green)}.nav-primary:hover,.module-nav:hover{background:#f1f5f6}.nav-icon{width:22px;height:22px;display:grid;place-items:center;font-size:1.1rem}.nav-label{text-transform:uppercase;letter-spacing:.1em;font-size:.6875rem;font-weight:750;color:#657680;margin:27px 12px 12px}.module-nav{display:grid;grid-template-columns:26px 1fr;gap:7px;align-items:start;text-decoration:none;color:var(--muted);padding:9px 9px;font-size:.8125rem;line-height:1.45;border-radius:7px}.module-nav b{font-size:.75rem;color:#73838a;font-weight:500;padding-top:1px}.module-nav.current{background:#eef4f7;color:#21485e}.module-nav.done b{color:var(--green)}.side-note{font-size:.75rem;line-height:1.6;color:#72818a;padding:16px 12px 0;border-top:1px solid var(--line);margin-top:12px}.workspace{margin-left:258px}.topbar{height:78px;background:#ffffffed;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:24px;padding:0 42px;position:sticky;top:0;z-index:15;backdrop-filter:blur(12px)}.top-title{font-size:.875rem;color:var(--muted);text-decoration:none}.top-progress{margin-left:auto;display:flex;align-items:center;gap:15px;font-size:.8125rem;color:var(--muted);white-space:nowrap}progress{width:112px;height:6px;border:0;appearance:none;border-radius:10px;overflow:hidden;background:#e5ece8}progress::-webkit-progress-bar{background:#e5ece8}progress::-webkit-progress-value{background:var(--green);border-radius:10px}progress::-moz-progress-bar{background:var(--green)}.top-help{font-size:.875rem;font-weight:600;text-decoration:none;margin-left:3px}.mobile-menu{display:none}.icon-button{background:transparent;border:1px solid var(--line);border-radius:8px;min-width:42px;min-height:42px;padding:6px}.content{max-width:1260px;margin:auto;padding:40px 42px 50px}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--green);margin-bottom:12px}.lead{color:var(--muted);max-width:730px;margin-bottom:28px;font-size:1rem}.welcome-row{display:flex;justify-content:space-between;gap:24px;align-items:start}.badge{display:inline-flex;align-items:center;border:1px solid var(--line);background:#fff;padding:7px 11px;border-radius:6px;font-size:.75rem;white-space:nowrap;color:var(--muted)}.start-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:20px;margin:8px 0 38px}.continue-card{background:var(--green-deep);border-radius:14px;padding:28px 30px;color:#fff;display:flex;flex-direction:column;align-items:start;position:relative;overflow:hidden;min-height:242px}.continue-card .eyebrow{color:#b9dcca;font-size:.6875rem}.continue-card h2{font-size:1.65rem;line-height:1.3;letter-spacing:-.03em;max-width:440px;margin-bottom:12px}.continue-card p{color:#c9d9d2;font-size:.875rem;margin-bottom:25px}.continue-card .button{margin-top:auto;background:#fff;color:var(--green-deep);border-color:white}.study-card{border:1px solid var(--line);background:white;border-radius:14px;padding:27px 26px}.study-card h2{font-size:1.0625rem;margin-bottom:22px}.study-steps{list-style:none;padding:0;margin:0;display:grid;gap:17px}.study-steps li{display:grid;grid-template-columns:24px 1fr;gap:12px;font-size:.875rem;line-height:1.5;color:var(--muted)}.step-number{width:24px;height:24px;background:#eef3f6;border-radius:50%;display:grid;place-items:center;font-size:.75rem;color:var(--blue);font-weight:650}.section-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:19px}.section-bar h2{margin:0}.section-bar .muted{font-size:.875rem}.module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.module-card{background:white;border:1px solid var(--line);border-radius:12px;text-decoration:none;color:inherit;padding:23px 24px;min-height:192px;display:flex;flex-direction:column;transition:border-color .16s,transform .16s;box-shadow:var(--shadow)}.module-card:hover{border-color:#92b5a0;transform:translateY(-2px)}.module-card-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.module-number{font-size:.6875rem;font-weight:750;letter-spacing:.075em;color:var(--green);background:var(--green-pale);padding:6px 8px;border-radius:5px}.module-card h3{font-size:1.0625rem;margin:0}.module-card p{color:var(--muted);font-size:.875rem;line-height:1.6;margin-bottom:20px}.module-meta{font-size:.75rem;display:flex;justify-content:space-between;gap:12px;color:#657781;margin-top:auto}.module-meta .arrow{font-size:1rem;color:var(--green)}.module-card.is-complete{border-color:#8bb39a}.button{display:inline-flex;justify-content:center;align-items:center;gap:10px;text-decoration:none;padding:12px 18px;border-radius:8px;border:1px solid var(--green);background:var(--green);color:#fff;font-size:.875rem;font-weight:650;line-height:1.4;min-height:46px}.button:hover{filter:brightness(.95)}.button.secondary{background:white;border-color:var(--line);color:var(--ink)}.button.ghost{background:transparent;border-color:transparent;color:var(--green);padding-left:0}.button.small{font-size:.8125rem;padding:9px 13px;min-height:40px}.actions{display:flex;gap:10px;flex-wrap:wrap}.muted{color:var(--muted)}.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:9px;font-size:.8125rem;color:var(--muted);margin-bottom:22px}.breadcrumb a{text-decoration:none;color:var(--muted)}.breadcrumb span[aria-hidden]{color:#9babb3}.module-intro{display:flex;justify-content:space-between;align-items:start;gap:20px}.module-intro h1{max-width:800px}.lesson-list{display:grid;gap:10px;margin:24px 0 32px}.lesson-row{display:flex;align-items:center;gap:16px;padding:19px 22px;background:#fff;border:1px solid var(--line);border-radius:10px;text-decoration:none;color:var(--ink)}.lesson-row:hover{border-color:#8faf9d}.lesson-index{border:1px solid var(--line);background:#f5f8f9;width:35px;height:35px;flex:0 0 35px;border-radius:50%;display:grid;place-items:center;font-size:.8125rem;color:var(--muted)}.lesson-index.complete{background:var(--green-pale);border-color:#bed5c6;color:var(--green)}.lesson-row strong{font-size:.9375rem;display:block;margin-bottom:5px}.lesson-row small{font-size:.75rem;color:var(--muted)}.lesson-row .arrow{margin-left:auto;color:var(--green)}.reading-layout{display:grid;grid-template-columns:minmax(0,1fr) 214px;gap:30px;align-items:start}.reader{background:#fff;border:1px solid var(--line);border-radius:12px;padding:35px 38px;min-width:0;font-size:var(--reading);line-height:1.78;overflow-wrap:anywhere}.reader h2{font-size:1.37em;margin:37px 0 17px;line-height:1.35;scroll-margin-top:100px}.reader h2:first-child{margin-top:0}.reader h3{font-size:1.07em;margin:28px 0 13px;scroll-margin-top:100px}.reader p{line-height:1.78;margin-bottom:19px}.reader ul,.reader ol{padding-left:25px;margin:16px 0 24px}.reader li{padding-left:3px;margin:9px 0}.reader pre{background:#f0f5f7;border:1px solid #e1e9ec;border-left:3px solid #507c72;padding:18px 20px;border-radius:7px;overflow:auto;font-size:.91em;line-height:1.75;margin:21px 0;white-space:pre-wrap;overflow-wrap:anywhere;tab-size:2}.reader code{font-family:Consolas,"Courier New",monospace;font-size:.94em;background:#edf3f5;padding:2px 4px;border-radius:3px}.reader pre code{padding:0;background:none;font-size:inherit}.reader details{background:#f4f8f6;border:1px solid #d4e3da;border-radius:8px;margin:17px 0 22px;padding:0 18px}.reader summary{font-size:.875rem;font-weight:650;color:var(--green);cursor:pointer;padding:14px 0;line-height:1.6}.reader details[open] summary{border-bottom:1px solid #d4e3da;margin-bottom:14px}.reader details p:last-child{margin-bottom:16px}.reader img{max-width:100%;height:auto}.table-scroll{overflow:auto;margin:20px 0}.reader table{border-collapse:collapse;min-width:500px;width:100%;font-size:.875rem;line-height:1.6}.reader th{background:#edf3f5;text-align:left;font-weight:650}.reader td,.reader th{padding:12px;border:1px solid var(--line);vertical-align:top}.reader blockquote{margin:20px 0;padding:12px 22px;border-left:3px solid var(--green);background:var(--green-pale)}.toc{position:sticky;top:104px}.toc-label{font-size:.6875rem;letter-spacing:.1em;text-transform:uppercase;color:#657680;font-weight:750;margin:0 0 15px}.toc a,.toc button{display:block;color:var(--muted);font-size:.8125rem;line-height:1.5;text-decoration:none;padding:7px 0;background:none;border:0;text-align:left;width:100%}.toc button:hover,.toc a:hover{color:var(--green)}.toc .toc-files{border-top:1px solid var(--line);margin-top:20px;padding-top:16px}.reading-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;margin-bottom:22px}.meta-line{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:.8125rem;color:var(--muted)}.meta-dot{color:#a1afb8}.lesson-title{max-width:900px;font-size:2rem}.file-link{display:inline-flex;align-items:center;gap:8px;font-size:.875rem;font-weight:600;text-decoration:none}.status-banner{padding:15px 18px;border:1px solid #c9ddcf;background:var(--green-pale);border-radius:9px;color:#27503b;font-size:.875rem;line-height:1.6;margin-bottom:22px}.footer{border-top:1px solid var(--line);padding:22px 42px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:.75rem;color:var(--muted)}.footer a{color:var(--muted)}.skip{position:fixed;left:280px;top:-100px;z-index:100;background:white;padding:16px;border:2px solid var(--green)}.skip:focus{top:10px}.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}dialog{border:0;border-radius:12px;padding:22px;width:min(360px,calc(100vw - 28px));max-height:90dvh;box-shadow:0 20px 90px #102f3e66}dialog::backdrop{background:#132f3e70;backdrop-filter:blur(2px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.noscript{position:fixed;inset:100px 20px auto 280px;padding:30px;background:#fff;border:1px solid var(--line);z-index:50}.notice{padding:20px;border:1px solid var(--line);border-radius:10px;background:#fff;line-height:1.6}
@media(min-width:1500px){.module-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.content{padding-top:45px}.reader{padding:40px 48px}}
@media(max-width:1180px){.sidebar{width:228px;padding-left:15px;padding-right:15px}.workspace{margin-left:228px}.content{padding:32px 28px 45px}.topbar{padding:0 28px}.reading-layout{grid-template-columns:minmax(0,1fr)}.toc{position:static;grid-row:1;background:#fff;border:1px solid var(--line);padding:17px 20px;border-radius:10px}.toc-links{display:flex;flex-wrap:wrap;gap:4px 16px}.toc button{width:auto;max-width:100%}.toc-files{display:none}.reader{padding:30px}.start-grid{grid-template-columns:1.4fr 1fr}.continue-card{padding:25px}.study-card{padding:25px 20px}.module-card{padding:21px}.footer{padding:22px 28px}}
@media(max-width:850px){.sidebar{display:none}.workspace{margin-left:0}.mobile-menu{display:block}.topbar{height:68px;padding:0 20px;gap:14px}.top-help{display:none}.top-title{font-weight:650}.top-progress{gap:10px}.top-progress progress{width:75px}.content{padding:28px 22px 40px}.skip{left:15px}.noscript{left:20px}.start-grid{gap:14px}.continue-card h2{font-size:1.4rem}.footer{padding:20px 22px}}
@media(max-width:570px){h1{font-size:1.8rem}.content{padding:26px 17px 35px}.topbar{padding:0 15px}.top-title{display:none}.top-progress{font-size:.8125rem}.welcome-row .badge{display:none}.start-grid{grid-template-columns:1fr;margin-bottom:32px}.continue-card{min-height:225px;padding:25px}.study-card{padding:23px}.study-steps{gap:14px}.study-card h2{margin-bottom:18px}.module-grid{grid-template-columns:1fr;gap:12px}.module-card{min-height:166px}.section-bar{align-items:start}.section-bar .muted{font-size:.75rem}.module-intro{display:block}.module-intro .actions{margin-bottom:22px}.reader{padding:23px 20px;border-radius:10px;font-size:var(--reading)}.reader h2{font-size:1.25em}.reading-layout{gap:16px}.lesson-title{font-size:1.7rem;line-height:1.3}.lesson-row{padding:17px 16px;gap:12px}.lesson-row strong{font-size:.9rem}.reading-toolbar{align-items:start}.toc-links{display:block}.toc button{padding:5px 0}.toc{padding:16px 20px}.toc-links.collapsed button:nth-child(n+5){display:none}.actions>.button{flex-grow:1}.reader pre{padding:15px;font-size:.82em}.footer{display:block}.footer span{display:block;margin-bottom:10px}.breadcrumb{font-size:.75rem}.badge{white-space:normal}.reader table{font-size:.8125rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.module-nav{font-size:.875rem}.module-card p,.nav-primary,.file-row a,.study-steps li{font-size:.9375rem}.toc summary{font-size:.875rem;font-weight:650;cursor:pointer;line-height:1.5}.toc details[open] summary{margin-bottom:15px}.completion-panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:28px 32px;margin-top:28px;max-width:900px}.completion-panel>p:not(.eyebrow){color:var(--muted);font-size:.9375rem;line-height:1.7}.completion-panel .save-note{font-size:.8125rem;margin:16px 0 0}.notes-field{margin-top:27px;border-top:1px solid var(--line);padding-top:23px}.notes-field label{font-size:1rem;font-weight:650}.notes-field p{font-size:.875rem;color:var(--muted);margin:8px 0 13px}.notes-field textarea{width:100%;resize:vertical;min-height:110px;border:1px solid #b9c8ce;border-radius:8px;padding:13px 15px;background:#fcfdfe;line-height:1.6;font-size:1rem}.save-note{font-size:.8125rem;color:var(--muted);line-height:1.6;display:block;margin-top:8px}.lesson-pagination{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:24px}.lesson-tools{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin:0 0 25px;padding-bottom:20px;border-bottom:1px solid var(--line)}.text-size{margin-left:auto;border:1px solid var(--line);background:white;font-size:.875rem;font-weight:600;padding:10px 13px;border-radius:7px;min-height:40px}.solution-return{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0}.practice-rule{display:grid;gap:8px;background:var(--green-pale);border-left:4px solid var(--green);border-radius:0 8px 8px 0;padding:22px 25px;margin-bottom:35px;font-size:.9375rem;line-height:1.65}.practice-rule span{color:#3f6451}.assessment-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.assessment-card{background:white;border:1px solid var(--line);border-radius:12px;padding:23px}.assessment-heading{display:flex;gap:12px;align-items:center;margin-bottom:18px;font-size:.8125rem}.assessment-card h3{margin-bottom:22px}.variant-links{display:flex;flex-wrap:wrap;gap:8px}.resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.resource-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:12px;text-decoration:none;color:inherit;padding:24px;min-height:174px}.resource-card:hover{border-color:#8dad9b}.resource-card .eyebrow{font-size:.6875rem;margin-bottom:12px}.resource-card h3{font-size:1.04rem;margin-bottom:20px}.resource-action{display:flex;justify-content:space-between;margin-top:auto;font-size:.875rem;color:var(--green)}.spaced{margin-top:38px}.final-check{background:var(--green-deep);color:#fff;padding:29px 30px;border-radius:12px;margin:28px 0}.final-check p{color:#cee0d5;max-width:800px;font-size:.9375rem}.final-check .button{background:white;color:var(--green-deep);border-color:white}.download-card{display:flex;align-items:center;gap:28px;justify-content:space-between;background:var(--green-pale);border:1px solid #cddfd2;padding:28px 30px;border-radius:12px;margin-bottom:35px}.download-card h2{margin-bottom:9px}.download-card p{font-size:.9375rem;color:#456352;max-width:610px;margin-bottom:8px}.download-card .button{flex-shrink:0}.file-table{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.file-row{display:flex;align-items:center;gap:15px;padding:17px 23px;border-bottom:1px solid var(--line)}.file-row:last-child{border:0}.file-row h3{font-size:.9375rem;font-weight:600;margin:0;flex:1}.file-row>div{display:flex;gap:21px;flex-wrap:wrap}.file-row a{font-size:.875rem;text-decoration:none;font-weight:600;white-space:nowrap}.local-storage-note{font-size:.875rem;color:var(--muted);padding-top:25px;max-width:800px}.window-scheme{margin:0 0 35px}.window-scheme img{width:100%;height:auto;display:block}.window-scheme figcaption{font-size:.8125rem;line-height:1.6;color:var(--muted);margin-top:10px}.storage-warning{background:#fff3dd;border-bottom:1px solid #e3cc9f;padding:17px 30px;font-size:.9375rem;line-height:1.5}.reader a[href*='/answers/']{font-weight:600}.reader h3[id]{border-top:1px solid var(--line);padding-top:24px}
@media(max-width:1180px){.toc-links{display:block}.toc{grid-row:1}.resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.download-card{align-items:start;flex-direction:column}.file-row{flex-wrap:wrap}.file-row>div{margin-left:auto}}
@media(max-width:570px){.assessment-list,.resource-grid{grid-template-columns:1fr}.completion-panel{padding:24px 20px}.lesson-pagination .button{width:100%}.lesson-tools{gap:12px 18px}.lesson-tools .file-link{font-size:.8125rem}.text-size{margin-left:0;font-size:.8125rem}.completion-panel .button{width:100%}.assessment-card{padding:22px}.download-card,.final-check{padding:24px}.download-card .button{width:100%}.resource-card{min-height:150px}.file-row{padding:17px;gap:11px}.file-row h3{min-width:calc(100% - 58px)}.file-row>div{width:100%;margin:3px 0 0 45px;gap:22px}.solution-return .button{width:100%}.reader{overflow-wrap:anywhere}.toc summary{min-height:24px}.study-steps li,.module-card p{font-size:.9375rem}}
@media print{.sidebar,.topbar,.toc,.footer,.reading-toolbar,.completion-panel,.breadcrumb,.skip,.lesson-tools,.lesson-pagination,.solution-return{display:none!important}.workspace{margin:0}.content{padding:0;max-width:none}.reading-layout{display:block}.reader{border:0;padding:0;font-size:11pt}.reader details:not([open]){display:none}h1{font-size:22pt}a{color:inherit}body{background:#fff}}
