.cu{--cu-green:#38533d;--cu-sage:#eaf0e0;--cu-clay:#945135;background:#fffbf3;color:#29392e;min-height:100vh;font-size:16px;line-height:1.75}.cu *{box-sizing:border-box}.cu a{color:var(--cu-green);text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.cu a:hover{color:#8a482f}.cu button,.cu input,.cu select,.cu textarea{font:inherit}.cu .cu-button,.cu button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:12px 22px;border:1px solid var(--cu-green);border-radius:999px;background:var(--cu-green);color:#fffdf6;font-size:14px;font-weight:600;line-height:1.5;text-decoration:none;cursor:pointer;max-width:100%;text-align:center}.cu .cu-button:hover,.cu button:hover{background:#294531;color:#fff}.cu button:disabled{opacity:.5;cursor:not-allowed}.cu .cu-secondary{background:#fffaf1;color:var(--cu-green);border-color:#a8b39c}.cu :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #a65f35;outline-offset:4px}.cu-main:focus{outline:none}.cu p{margin:0 0 18px}.cu :is(h1,h2,h3){font-family:Georgia,serif;font-weight:400;letter-spacing:-.025em;color:#2d4132}.cu h1{font-size:clamp(34px,4.5vw,58px);line-height:1.12;margin:12px 0 24px;max-width:900px}.cu h2{font-size:clamp(25px,2.7vw,34px);line-height:1.2;margin:35px 0 18px}.cu h3{font-size:25px;line-height:1.25;margin:12px 0 16px}.cu .eyebrow{font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:#69725e}.cu ol,.cu ul{padding-left:24px;margin:15px 0 24px;list-style:revert}.cu li{margin:10px 0}.cu small,.cu-hint{font-size:13px;line-height:1.65;color:#5d6758}.cu .cu-lead{font-size:18px;line-height:1.75;max-width:780px}.cu-skip{position:absolute;left:20px;top:-100px;padding:10px;background:#fff;z-index:100}.cu-skip:focus{top:15px}.cu-header{max-width:1360px;margin:auto;padding:28px 5% 20px;display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between;align-items:center;border-bottom:1px solid #e2ddce}.cu-brand{font-size:22px;font-weight:750;letter-spacing:-.04em;text-decoration:none!important}.cu-brand sup{font-size:10px}.cu-brand span{display:block;font-weight:400;letter-spacing:0;font-size:11px;line-height:1.6;margin-top:5px}.cu nav{display:flex;flex-wrap:wrap;gap:7px 10px}.cu nav a{font-size:13px;display:inline-flex;align-items:center;min-height:44px;padding:10px 13px;border-radius:999px;background:#edf1e5;text-decoration:none}.cu-main{max-width:1240px;margin:auto;padding:40px 5% 65px}.cu-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:36px;margin-bottom:35px}.cu-image{margin:0 0 24px;background:#f3eddc;padding:9px;border:1px solid #e2dccb;border-radius:24px;overflow:hidden;min-width:0}.cu-image img{display:block;width:100%;height:auto;object-fit:contain;border-radius:16px}.cu-image figcaption{font-size:12px;line-height:1.65;padding:12px 10px 5px;color:#535f4c}.cu-image figcaption small{display:block;font-size:10px;margin-top:5px}.cu-image details{margin:10px;background:#fffaf0;border-radius:12px;padding:12px;font-size:14px}.cu-image details p{margin:12px 0 0}.cu-image-compact figcaption{font-size:11px}.cu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:22px 0 35px}.cu-three{grid-template-columns:repeat(3,minmax(0,1fr))}.cu-card,.cu-panel{padding:27px;background:#fffdf7;border:1px solid #dfdfcf;border-radius:25px;min-width:0}.cu-card{display:flex;flex-direction:column;align-items:flex-start}.cu-card .cu-button{margin-top:auto}.cu-card h2{font-size:29px;margin-top:16px}.cu-card .cu-image{width:100%}.cu-card-diagram{display:block;width:100%;height:auto;border-radius:18px;margin-bottom:22px}.cu-meta{gap:8px 20px;justify-content:space-between;font-size:11px;width:100%;color:#69725e}.cu-actions,.cu-meta{display:flex;flex-wrap:wrap}.cu-actions{align-items:center;gap:15px;margin:25px 0}.cu-notice{background:#eaf0e0;border:1px solid #d1dcca;border-radius:20px;padding:23px;margin:25px 0;font-size:15px}.cu-notice h2,.cu-notice h3{margin-top:0}.cu-notice p:last-child,.cu-panel p:last-child{margin-bottom:0}.cu-stop{background:#fbefdb;border-color:#e8ccb2}.cu-reading{margin-bottom:35px}.cu-reading p{max-width:760px}.cu-lesson-layout{display:grid;grid-template-columns:minmax(0,1fr) 275px;gap:28px;align-items:start}.cu-lesson-layout>.cu-panel{font-size:14px}.cu-lesson-layout>div>.cu-panel{margin:28px 0}.cu-panel h2:first-child{margin-top:0}.cu-crumb{font-size:13px}.cu fieldset{min-width:0}.cu-form-group{border:0;padding:0;margin:0}.cu-question{border:1px solid #ccd7c2;border-radius:18px;margin:26px 0;padding:20px}.cu legend{padding:0 8px;font-size:16px;font-weight:650}.cu .cu-option{display:flex;gap:12px;align-items:flex-start;margin:10px 0;padding:13px;background:#f2f5ec;border-radius:14px;font-size:14px;font-weight:400;cursor:pointer}.cu .cu-option input{flex:0 0 auto;width:18px;height:18px;margin:4px 0 0;accent-color:var(--cu-green)}.cu input:not([type=checkbox]):not([type=radio]),.cu select,.cu textarea{display:block;width:100%;max-width:100%;padding:13px 15px;border-radius:13px;border:1px solid #aebba4;background:#fffef9;color:#283b2b;font-size:16px;line-height:1.65}.cu textarea{resize:vertical;min-height:130px}.cu label{display:block;font-weight:600;margin-bottom:8px}.cu select{margin-bottom:18px}.cu summary{cursor:pointer;font-size:16px;font-weight:600;min-height:44px;line-height:1.7;padding:8px 0}.cu .cu-card details{margin-bottom:20px;width:100%}.cu-progress{margin:23px 0}.cu-progress progress{display:block;width:100%;height:10px;accent-color:var(--cu-green);margin-bottom:8px}.cu-progress span{font-size:12px}.cu-stat{font:42px/1.2 Georgia,serif}.cu-sources span{display:block;font-size:12px}.cu-source-list li{padding:20px;background:#f0f3e7;border-radius:20px;margin:18px 0}.cu-source-list p{font-size:14px;margin:8px 0}.cu-worksheet{max-width:820px}.cu-field{margin:30px 0;break-inside:avoid}.cu-field .cu-hint{margin:0 0 10px}.cu-print-answer{display:none}.cu-agenda{padding-left:0!important;list-style:none!important}.cu-agenda>li{margin:18px 0}.cu-qa{background:#623f25;color:#fff8eb;padding:13px 5%;font-size:13px}.cu-qa a{color:#fff;text-decoration:underline}.cu-footer{max-width:1240px;padding:35px 5% 20px;margin:auto;border-top:1px solid #dedacb;font-size:12px;color:#5d6858}.cu-footer strong{font-size:15px;display:block;margin-bottom:15px}.cu-footer div{display:flex;flex-wrap:wrap;gap:15px;margin:20px 0}.cu-storage{max-width:1240px;margin:0 auto!important;padding:0 5% 40px;font-size:12px;color:#5d6858}@media(max-width:950px){.cu-lesson-layout{grid-template-columns:minmax(0,1fr)}.cu-lesson-layout>aside{grid-row:1}.cu-three{grid-template-columns:minmax(0,1fr)}.cu-hero{gap:24px}.cu-card{padding:22px}}@media(max-width:700px){.cu-header{padding:23px 6% 16px;gap:15px}.cu-header nav{gap:5px}.cu nav a{font-size:12px;padding:9px 11px}.cu-main{padding:28px 6% 45px}.cu-grid,.cu-hero{grid-template-columns:minmax(0,1fr)}.cu h1{font-size:37px}.cu h2{font-size:29px}.cu h3{font-size:25px}.cu .cu-lead{font-size:16px}.cu-card,.cu-panel{padding:20px;border-radius:22px}.cu-question{padding:12px}.cu .cu-option{padding:11px}.cu-actions{align-items:stretch}.cu-actions>*{max-width:100%}.cu-image{border-radius:20px}.cu-notice{padding:20px}.cu-lesson-layout{gap:20px}.cu-source-list{padding-left:20px!important}}@media(prefers-reduced-motion:reduce){.cu *{scroll-behavior:auto!important;transition:none!important}}@media print{@page{margin:16mm}.cu{background:white;color:#111;font-size:11pt;line-height:1.5}.cu .cu-actions,.cu .cu-button,.cu .cu-no-print,.cu button,.cu progress,.cu-footer,.cu-header,.cu-qa,.cu-skip,.cu-storage{display:none!important}.cu-main{padding:0;max-width:none}.cu-grid,.cu-hero,.cu-lesson-layout{display:block}.cu h1{font-size:26pt}.cu h2{font-size:18pt}.cu h3{font-size:15pt}.cu-image{max-width:500px;padding:0;border:0;margin:16px 0;break-inside:avoid}.cu-image img{max-height:210px}.cu-image figcaption{font-size:9pt}.cu-card,.cu-notice,.cu-panel{background:white;border:1px solid #aaa;padding:15px;margin:16px 0}.cu .cu-print-answer{display:block;white-space:pre-wrap;overflow-wrap:anywhere;min-height:75px;border-bottom:1px solid #888;padding:8px 0}.cu .cu-worksheet>.cu-image details,.cu-field input,.cu-field textarea{display:none}.cu .cu-option input{display:inline-block}.cu a{color:#111}.cu .cu-field,.cu .cu-lesson-layout>aside{break-inside:avoid}}