:root{--forest:#173b36;--mint:#c9f3df;--lime:#dfff76;--paper:#f7f4ec;--ink:#17201e;--muted:#66736f;--line:#d5dbd5;--coral:#ff725e;--white:#fff;--shadow:0 22px 60px rgba(23,59,54,.13)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,"Segoe UI",Arial,sans-serif}a{color:inherit}:where(a,button,input,textarea,summary):focus-visible{outline:3px solid var(--coral);outline-offset:3px}.cd-header{min-height:68px;padding:.8rem clamp(1rem,5vw,5rem);display:flex;align-items:center;justify-content:space-between;background:var(--forest);color:white}.cd-brand{display:flex;align-items:center;gap:.65rem;font-weight:800;text-decoration:none}.cd-brand span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--lime);color:var(--forest);font:900 .72rem/1 monospace}.cd-header nav,.cd-header form{display:flex;align-items:center;gap:1rem;margin:0}.cd-header nav a,.cd-header nav button{text-decoration:none;background:none;border:0;color:white;font:700 .85rem/1 inherit;cursor:pointer}.cd-header .pill{padding:.65rem 1rem;border-radius:999px;background:var(--lime);color:var(--forest)}.cd-flash{padding:1rem clamp(1rem,7vw,7rem);background:#fff0b8;border-bottom:1px solid #dbc66e}.cd-hero{min-height:650px;padding:5rem clamp(1.2rem,8vw,8rem);display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:5vw;background:var(--forest);color:white;overflow:hidden}.kicker{font:800 .72rem/1.4 monospace;text-transform:uppercase;letter-spacing:.14em;color:var(--lime)}.kicker.dark{color:#2b7668}.cd-hero h1{font:800 clamp(3.2rem,7vw,6.7rem)/.91 Georgia,serif;letter-spacing:-.055em;margin:1rem 0 1.5rem}.cd-hero p:not(.kicker){max-width:680px;font-size:1.15rem;line-height:1.7;color:#cfe0dc}.actions{display:flex;gap:.8rem;flex-wrap:wrap;margin:2rem 0 1rem}.btn{min-height:46px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:.8rem 1.25rem;font:800 .86rem/1 inherit;text-decoration:none;cursor:pointer}.btn.primary{background:var(--coral);color:#fff}.btn.ghost{border:1px solid #91afa8;color:white}.btn.outline{border:1px solid var(--forest);background:transparent;color:var(--forest)}.paper-art{transform:rotate(3deg);background:white;color:var(--ink);padding:2.5rem;min-height:390px;border-radius:8px;box-shadow:var(--shadow);font-family:Georgia,serif;position:relative}.paper-art span{font:800 .75rem monospace}.paper-art div{font-size:clamp(1.6rem,3vw,2.8rem);margin:3rem 0}.paper-art i{height:1px;background:var(--line);display:block;margin:2.5rem 0}.paper-art b{position:absolute;right:2rem;bottom:2rem}.three{display:grid;grid-template-columns:repeat(3,1fr);padding:4rem clamp(1.2rem,8vw,8rem);gap:2rem;background:var(--mint)}.three b,.subject-grid article>span,.access-card>span,.activity-list article span,.q-meta{font:800 .68rem/1.3 monospace;letter-spacing:.1em;color:#2b7668}.three h2{font:700 1.55rem Georgia,serif}.three p,.catalogue>p,.subject-grid p{line-height:1.65;color:var(--muted)}.catalogue,.shell{padding:5rem clamp(1.2rem,7vw,7rem)}.catalogue>h2,.section-title h2{font:750 clamp(2.2rem,4vw,4rem)/1 Georgia,serif;margin:.8rem 0 2.5rem}.subject-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}.subject-grid article{background:#ecece6;border:1px solid var(--line);padding:1.4rem;min-height:185px}.subject-grid article.live{background:white;border-top:5px solid var(--coral)}.subject-grid h3{font:700 1.28rem Georgia,serif;margin:.8rem 0}.subject-grid a,.back,.sources a{color:#216b5d;font-weight:800;text-decoration:none}.closing{padding:6rem 1.2rem;text-align:center;background:var(--forest);color:white}.closing h2{font:750 clamp(2.3rem,5vw,4.6rem)/1 Georgia,serif;max-width:800px;margin:1rem auto 2rem}.auth-shell{min-height:75vh;display:grid;place-items:center;padding:4rem 1rem;background:var(--mint)}.auth-card{width:min(500px,100%);padding:2.5rem;background:white;box-shadow:var(--shadow)}.auth-card h1,.dash-head h1,.subject-head h1,.exam-cover h1,.policy h1{font:750 clamp(2.3rem,5vw,4.2rem)/1 Georgia,serif;margin:.7rem 0}.auth-card form{display:grid;gap:1rem;margin:1.5rem 0}.auth-card label{display:grid;gap:.4rem;font-weight:700;font-size:.82rem}.auth-card input,.question-card textarea,.buddy textarea{width:100%;padding:.85rem;border:1px solid var(--line);font:inherit}.check{grid-template-columns:auto 1fr!important;align-items:start}.check input{width:auto}.dash-head,.subject-head,.exam-cover{display:flex;justify-content:space-between;align-items:start;gap:2rem;margin-bottom:3rem}.dash-head p,.subject-head p{color:var(--muted)}.readiness,.access-card{display:grid;gap:.4rem;background:white;border:1px solid var(--line);padding:1.3rem;min-width:210px}.readiness strong{font:800 2.3rem Georgia,serif}.paper-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:2rem 0 4rem}.paper-grid article{background:var(--forest);color:white;padding:2rem}.paper-grid article>span{color:var(--lime);font:800 .7rem monospace}.paper-grid h2{font:700 1.6rem Georgia,serif}.paper-grid li{margin:.7rem 0;color:#d9e5e1}.activity-list{display:grid;gap:.6rem}.activity-list article{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:white;border:1px solid var(--line);padding:1.2rem}.activity-list h3{margin:.4rem 0}.activity-list p{margin:0;color:var(--muted)}.locked{padding:.5rem;border:1px solid var(--line)}.coverage{margin:3rem 0;background:white;border:1px solid var(--line);padding:1.2rem}.coverage summary{cursor:pointer;font-weight:800}.coverage table{width:100%;border-collapse:collapse;margin:1rem 0}.coverage th,.coverage td{text-align:left;padding:.65rem;border-bottom:1px solid var(--line)}.sources{display:grid;gap:.7rem}.exam-shell{padding:3rem clamp(1rem,6vw,6rem)}.exam-cover>div:last-child{display:grid;grid-template-columns:auto auto;gap:.3rem 1rem;background:var(--forest);color:white;padding:1.2rem}.exam-cover strong{font-size:1.6rem;color:var(--lime)}.exam-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:1rem}.question-card,.buddy{background:white;border:1px solid var(--line);padding:2rem}.q-meta{display:flex;justify-content:space-between}.question-card h2{font:500 clamp(1.35rem,3vw,2rem)/1.5 Georgia,serif;margin:2rem 0}.question-card label{display:block;font-weight:800;margin:1rem 0 .5rem}.save-row{display:flex;align-items:center;gap:1rem;margin:1rem 0}.memo{border-top:1px solid var(--line);margin-top:2rem;padding-top:1rem}.memo summary{cursor:pointer;font-weight:800;color:#216b5d}.memo div{line-height:1.7;background:var(--paper);padding:1rem;margin-top:1rem}.buddy{background:var(--mint);position:sticky;top:1rem;align-self:start}.buddy h2{font:750 2rem/1 Georgia,serif}.hint-buttons{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin:1rem 0}.hint-buttons button{border:1px solid var(--forest);background:white;padding:.7rem;cursor:pointer;font-weight:800}.buddy-reply{min-height:120px;background:white;border-left:4px solid var(--coral);padding:1rem;white-space:pre-wrap;line-height:1.55}.math-diagram{width:min(520px,100%);background:#fbfbf7;border:1px solid var(--line);margin:1rem 0}.math-diagram path{fill:none;stroke:#74817d;stroke-width:1.5}.math-diagram path.axis{stroke:var(--coral);stroke-width:3}.math-diagram circle{fill:var(--forest)}.math-diagram text{font:14px sans-serif}.provenance{display:grid;gap:.3rem;margin-top:1rem;padding:1rem;border:1px solid var(--line);font-size:.74rem;color:var(--muted)}.policy{max-width:850px;line-height:1.75}.policy h2{font-family:Georgia,serif;margin-top:2rem}footer{display:flex;justify-content:space-between;gap:1rem;padding:1.5rem clamp(1rem,5vw,5rem);background:#0e2925;color:#bcd0ca;font-size:.72rem}footer nav{display:flex;gap:1rem}@media(max-width:850px){.cd-hero,.exam-grid{grid-template-columns:1fr}.paper-art{display:none}.subject-grid{grid-template-columns:1fr 1fr}.buddy{position:static}.three{grid-template-columns:1fr}.cd-hero{min-height:570px}}@media(max-width:620px){.cd-header{align-items:flex-start}.cd-header nav{gap:.6rem}.cd-header nav>a:first-child{display:none}.subject-grid,.paper-grid{grid-template-columns:1fr}.dash-head,.subject-head,.exam-cover,.activity-list article,footer{display:grid}.shell,.catalogue,.exam-shell{padding:2.5rem 1rem}.coverage{overflow:auto}.question-card,.buddy{padding:1.2rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{.cd-header,footer,.buddy,.save-row,.back,.access-card{display:none!important}body{background:white}.exam-shell{padding:0}.exam-grid{display:block}.question-card{border:0;padding:0}.memo{page-break-before:always}.math-diagram{break-inside:avoid}.econ-graph{break-inside:avoid}.diagram-table{break-inside:avoid}}.econ-graph{width:min(520px,100%);background:#fbfbf7;border:1px solid var(--line);margin:1rem 0}.econ-graph path.axis{fill:none;stroke:var(--forest);stroke-width:2}.econ-graph path.curve{fill:none;stroke:var(--coral);stroke-width:2}.econ-graph text{font:12px sans-serif;fill:var(--ink)}.econ-graph .axis-label{font-weight:700}.econ-graph .equilibrium-label{fill:#216b5d;font-weight:700}.diagram-table{width:100%;border-collapse:collapse;margin:1rem 0;font-size:.85rem}.diagram-table caption{text-align:left;font-weight:800;margin-bottom:.5rem;color:var(--muted)}.diagram-table th,.diagram-table td{text-align:left;padding:.5rem .65rem;border:1px solid var(--line)}.diagram-table th{background:var(--mint)}.lesson-grid{grid-template-columns:1fr;max-width:760px}.lesson-summary{font-size:1.1rem;color:var(--muted);line-height:1.6}.lesson-explanation p{line-height:1.75;margin:1rem 0}.worked-example{background:var(--paper);border:1px solid var(--line);padding:1.2rem;margin:1rem 0}.worked-example ol{margin:.6rem 0 0;padding-left:1.3rem;line-height:1.7}.key-terms{display:grid;grid-template-columns:auto 1fr;gap:.4rem 1rem;margin:1rem 0}.key-terms dt{font-weight:800;color:#216b5d}.key-terms dd{margin:0;color:var(--muted)}.lesson-prereq{background:var(--mint);padding:.9rem 1.1rem;margin-top:1.5rem}.review-list{display:grid;gap:.7rem}.review-row{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;background:white;border:1px solid var(--line);padding:1.2rem 1.4rem;border-left:5px solid var(--line)}.review-row.status-under_review{border-left-color:var(--coral)}.review-row.status-approved{border-left-color:#2b7668}.review-row.status-changes_requested{border-left-color:#c98a1f}.review-row-main{min-width:0}.review-row h3{margin:.4rem 0;font:600 1rem Georgia,serif;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:620px){.review-row{display:grid}.review-row h3{white-space:normal}.review-status{align-items:flex-start;margin-top:.6rem}}.review-tag{display:inline-block;font:800 .65rem/1.3 monospace;letter-spacing:.06em;text-transform:uppercase;color:#2b7668;background:var(--mint);padding:.15rem .5rem;border-radius:4px;margin-right:.4rem}.review-tag-warning{background:#ffe4b8;color:#8a5200}.review-status{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem}.review-status-badge{font:800 .7rem/1.3 monospace;text-transform:uppercase;color:var(--muted)}.review-panel{background:white;border:1px solid var(--line);padding:1.5rem;margin-bottom:1.5rem}.review-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1rem;align-items:flex-start}.review-changes-form{display:flex;gap:.6rem;align-items:flex-start}.review-changes-form textarea{width:260px;padding:.6rem;border:1px solid var(--line);font:inherit}.process-flow{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:1rem 0;background:#fbfbf7;border:1px solid var(--line);padding:1.2rem}.flow-step{display:flex;align-items:center;gap:.5rem;background:white;border:1px solid var(--line);padding:.5rem .9rem;font-size:.85rem}.flow-step span{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--forest);color:var(--lime);font:800 .65rem monospace;flex-shrink:0}.flow-arrow{color:var(--coral);font-weight:800}.flow-rule{background:var(--mint);padding:.7rem 1rem;margin:.6rem 0;font-size:.9rem}.answer-layout-card{background:#fbfbf7;border:1px dashed #879690;padding:1.2rem;margin:1rem 0}.answer-layout-card strong{display:block;font:800 .68rem monospace;letter-spacing:.08em;text-transform:uppercase;color:#2b7668;margin-bottom:.4rem}.series-chart{width:min(520px,100%);background:#fbfbf7;border:1px solid var(--line);margin:1rem 0}.series-chart path.axis{fill:none;stroke:var(--forest);stroke-width:2}.series-chart path.curve{fill:none;stroke:var(--coral);stroke-width:2}.series-chart circle{fill:var(--forest)}.series-chart text{font:11px sans-serif;fill:var(--ink)}.series-chart .axis-label{fill:var(--muted)}.described-schematic{background:#fbfbf7;border:1px dashed #879690;padding:1.2rem;margin:1rem 0}.described-schematic strong{display:block;margin-bottom:.6rem}.described-schematic dl{display:grid;grid-template-columns:auto 1fr;gap:.3rem 1rem;margin:0 0 .6rem}.described-schematic dt{font-weight:800;color:#2b7668;font-size:.8rem}.described-schematic dd{margin:0;font-size:.85rem}.described-schematic small{color:var(--muted)}.force-diagram{width:min(420px,100%);background:#fbfbf7;border:1px solid var(--line);margin:1rem 0}.force-diagram rect{fill:#2b7668}.force-diagram path.curve{fill:none;stroke:var(--coral);stroke-width:2}.force-diagram text{font:12px sans-serif;fill:var(--ink)}@media print{.process-flow,.answer-layout-card,.series-chart,.described-schematic,.force-diagram{break-inside:avoid}}.review-detail-head{margin:0 0 1.5rem}.btn.google{width:100%;background:white;color:var(--ink);border:1px solid var(--line)}.auth-divider{text-align:center;color:var(--muted);font-size:.8rem;margin:0}
