*{box-sizing:border-box}html{scroll-padding-top:90px}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button:disabled{opacity:.5;cursor:not-allowed}a{color:var(--school-primary);text-underline-offset:3px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--school-copper);outline-offset:3px}h1:focus{outline:0}p{line-height:1.75}h1,h2,h3,p{overflow-wrap:anywhere}h1{font-size:clamp(36px,4.2vw,58px);line-height:1.13;margin:12px 0 18px;max-width:21ch}h2{font-size:30px;line-height:1.25;margin:0 0 18px}h3{font-size:17px;line-height:1.45;margin:0 0 12px}.page{max-width:1160px;margin:0 auto}.page-heading{margin-bottom:30px}.lead{font-size:18px;line-height:1.7;color:var(--school-muted);max-width:66ch;margin:0}.small,.note,small{font-size:13px;line-height:1.65;color:var(--school-muted)}.note{padding:16px 20px;border-left:3px solid #a3b295;background:var(--school-tint);margin:26px 0}.actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:24px}.actions .text-link{font-size:14px}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:38px 0 19px}.section-heading h2{margin:0}.section-heading a{font-size:13px;font-weight:600}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.panel,.card{background:var(--school-paper);border:1px solid var(--school-line);border-radius:var(--school-radius);padding:26px;min-width:0}.card{color:inherit;text-decoration:none;display:flex;flex-direction:column;align-items:flex-start;position:relative;transition:border-color .15s,transform .15s}.card:hover{border-color:#8b9d82;transform:translateY(-2px)}.card h3{font:500 25px/1.25 var(--school-serif);letter-spacing:-.02em;margin:9px 0 10px}.card p{font-size:14px;color:var(--school-muted);margin:0 0 18px}.card-meta{font-size:11px;color:var(--school-copper);letter-spacing:.06em;font-weight:600}.card-foot{margin-top:auto;font-size:12px;color:var(--school-primary);display:flex;justify-content:space-between;gap:12px;width:100%;padding-top:15px;border-top:1px solid var(--school-line)}.tag{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;font-size:11px;background:var(--school-tint);border-radius:4px;color:var(--school-primary)}.tool-symbol{font:500 25px/1.3 var(--school-serif);color:var(--school-copper);min-height:40px}.hero{display:grid;grid-template-columns:1.12fr 1fr;gap:34px;align-items:center;padding:36px;background:#edf1e7;border:1px solid var(--school-line);border-radius:8px}.hero h1{font-size:clamp(39px,4.2vw,59px);margin:15px 0 20px}.hero .lead{font-size:16px}.hero .actions{gap:10px}.process-art{background:#f7f7f0;border:1px solid #ced7c5;border-radius:8px;padding:27px 22px;min-width:0}.process-art .school-eyebrow{margin-top:0}.process-line{display:grid;grid-template-columns:1fr 24px 1fr 24px 1fr;align-items:center;margin:28px 0}.process-step{text-align:center;min-width:0}.process-step svg{display:block;margin:0 auto 14px;width:46px;height:46px;stroke:#244e42;fill:none;stroke-width:1.5}.process-step strong{display:block;font-size:11px}.process-step small{display:block;font-size:11px;margin-top:4px}.process-arrow{font-size:23px;color:#87947e;text-align:center}.process-note{padding-top:18px;border-top:1px solid #d7ddcf;display:flex;justify-content:space-between;gap:18px;align-items:center}.process-note strong{font:500 34px/1 var(--school-serif)}.process-note p{font-size:12px;margin:0;max-width:21ch}.hero-caption{font-size:10px!important;margin:16px 0 0!important;color:var(--school-muted)}.stat-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:24px 0 0;padding:18px 0;border-bottom:1px solid var(--school-line)}.stat-strip>div{padding:0 20px;border-right:1px solid var(--school-line)}.stat-strip>div:first-child{padding-left:0}.stat-strip>div:last-child{border:0}.stat-strip strong{display:block;font:500 27px/1.2 var(--school-serif)}.stat-strip span{font-size:11px;color:var(--school-muted)}.resume{display:flex;gap:20px;align-items:center;justify-content:space-between;border-left:3px solid var(--school-copper);padding:18px 23px;background:var(--school-paper);margin:24px 0}.resume p{margin:3px 0 0;font-size:13px}.resume strong{font-size:15px}.home-bottom{display:grid;grid-template-columns:1.2fr 1fr;gap:18px;margin-top:26px}.dark-panel{background:var(--school-primary);color:#fffefa;border:0}.dark-panel h2{font-size:33px}.dark-panel p{color:#e1e8dc;font-size:14px}.dark-panel .school-button{background:#fffefa}.chapter-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:24px}.reading{max-width:76ch}.reading section{padding-bottom:25px;border-bottom:1px solid var(--school-line);margin-bottom:28px}.reading h2{font-size:29px;margin-top:0}.reading p{font-size:16px;margin:0 0 17px}.reading ol,.reading ul{padding-left:22px;line-height:1.8}.goal-list{padding-left:20px;font-size:14px;line-height:1.8}.aside-panel{position:sticky;top:96px;align-self:start;padding:22px}.aside-panel h2{font-size:22px}.aside-panel a{font-size:13px}.aside-panel .school-button{width:100%;margin-top:12px}.aside-panel .checkline{align-items:flex-start;font-size:12px}.callout,.example{background:var(--school-tint);border-left:3px solid #819675;border-radius:0 5px 5px 0;padding:16px 18px;font-size:14px;line-height:1.75;margin:20px 0}.callout.warning{background:#fbf0e6;border-color:var(--school-copper)}.example:before{content:"DÆMI";display:block;color:var(--school-copper);font-size:10px;font-weight:600;letter-spacing:.14em;margin-bottom:6px}.formula{font-family:Consolas,monospace;font-size:14px;line-height:1.8;white-space:pre-wrap;background:#eef1e8;border:1px solid var(--school-line);padding:17px;border-radius:6px;overflow-wrap:anywhere}.checkline{display:flex;gap:12px;align-items:center;min-height:44px;font-size:14px;line-height:1.6;cursor:pointer}.checkline input{width:18px;height:18px;flex:0 0 auto;accent-color:var(--school-primary)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:24px}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.school-field select,.school-field textarea{font:400 16px/1.5 var(--school-sans);color:var(--school-ink);background:#fff;border:1px solid #b8c4b3;border-radius:6px;padding:10px 12px;width:100%;min-height:46px;max-width:100%}.school-field small{font-weight:400;font-size:11px}.school-field textarea{resize:vertical;min-height:200px}.form-status{font-size:12px;line-height:1.65;color:var(--school-muted);min-height:1.65em}.form-status.error{color:#8b3d29}.tool-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:20px;align-items:start}.tool-layout .form-grid{grid-template-columns:1fr}.tool-layout h2{font-size:26px}.result-panel{position:sticky;top:96px}.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0 26px}.metric{min-width:0}.metric>span{display:block;font-size:11px;line-height:1.5;color:var(--school-muted);margin-bottom:10px}.metric>strong{display:block;font:500 clamp(24px,2.4vw,34px)/1.3 var(--school-serif);overflow-wrap:anywhere}.metric strong small{font:400 11px/1.5 var(--school-sans)}.metric>small{display:block;margin-top:6px;font-size:10px}.table-scroll{overflow:auto;width:100%;margin:20px 0;scrollbar-width:thin}table{width:100%;border-collapse:collapse;font-size:12px;text-align:left}caption{text-align:left;font-size:11px;line-height:1.5;color:var(--school-muted);padding:0 0 12px}th,td{padding:12px 10px;border-bottom:1px solid var(--school-line);vertical-align:top;white-space:normal;min-width:75px}th{font-weight:600;font-size:11px;background:var(--school-tint)}tbody tr:last-child td{border-bottom:0}.mass-stack{display:flex;height:28px;border-radius:5px;overflow:hidden;gap:2px;margin-top:18px}.mass-product{background:#244e42}.mass-side{background:#a66a45}.mass-other{background:#cdd5c2}.legend{display:flex;flex-wrap:wrap;gap:12px;font-size:10px;margin:9px 0}.legend>span:nth-child(2){color:#9c5734}.legend>span:nth-child(3){color:#59644f}.bars{display:grid;gap:18px;margin:24px 0 30px}.bar-row{display:grid;grid-template-columns:80px 1fr 90px;gap:12px;align-items:center;font-size:12px}.bar-row>div{background:#e7ebde;min-height:16px;border-radius:3px;overflow:hidden}.bar-row>div>span{display:block;height:16px;background:#466951;min-width:2px}.bar-row strong{text-align:right;font-size:12px}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#edf1e7;padding:20px;border-radius:6px;font:12px/1.8 Consolas,monospace}details>summary{cursor:pointer;font-size:14px;line-height:1.5;min-height:44px;align-content:center;font-weight:600}details.panel{margin:20px 0}.trace-map{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:24px 0}.trace-node{border:1px solid var(--school-line);border-radius:6px;padding:16px 13px;opacity:.62;min-width:0;background:#f4f4ed}.trace-node span,.trace-node small{display:block;font-size:10px}.trace-node strong{display:block;font-size:13px;margin:7px 0}.trace-node.active{background:#e7eedc;border-color:#8c9c7e;opacity:1}.trace-node.start{border:2px solid var(--school-copper);padding:15px 12px}.flashcard{padding:48px 36px;text-align:center;max-width:760px;min-height:320px;margin:24px auto;display:flex;align-items:center;justify-content:center;flex-direction:column}.flashcard h2{font-size:42px}.flashcard p{max-width:55ch}.flashcard .definition{font-size:18px}.flash-actions{justify-content:center}.glossary-list{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}.glossary-list>div{border-bottom:1px solid var(--school-line);padding:22px 0}.glossary-list dt{font:500 24px/1.3 var(--school-serif);margin-bottom:9px}.glossary-list dd{margin:0;font-size:14px;line-height:1.8;color:var(--school-muted)}.filter-row{display:flex;align-items:end;gap:16px;flex-wrap:wrap}.filter-row .school-field{flex:1 1 220px;max-width:500px}.filter-row .form-status{margin-bottom:12px}.progress-row{display:grid;grid-template-columns:minmax(160px,1fr) 1fr auto;gap:20px;align-items:center;padding:22px 0;border-bottom:1px solid var(--school-line)}.progress-row:last-child{border:0}.progress-row h3{margin:0 0 5px}.progress-row p{font-size:12px;margin:0;color:var(--school-muted)}progress{width:100%;height:9px;accent-color:var(--school-primary);border:0;border-radius:9px;background:#e0e7d6}progress::-webkit-progress-bar{background:#e0e7d6;border-radius:9px}progress::-webkit-progress-value{background:var(--school-primary);border-radius:9px}progress::-moz-progress-bar{background:var(--school-primary);border-radius:9px}.save-panel{margin-top:24px}.work-note{margin-top:22px}.oral-grid .card{min-height:200px}.oral-prompt{max-width:830px;margin:0 auto}.oral-prompt .checkline{padding:10px 0;border-bottom:1px solid var(--school-line)}.oral-prompt .school-field{margin-top:24px}.error-banner{padding:16px 20px;background:#fff0e4;border:1px solid #c79c7e;border-radius:6px;margin-bottom:24px;font-size:14px;line-height:1.7}.empty{padding:25px;color:var(--school-muted);text-align:center}.page-footer{border-top:1px solid var(--school-line);padding-top:22px;margin-top:48px;display:flex;justify-content:space-between;gap:20px;font-size:11px;line-height:1.7;color:var(--school-muted)}.page-footer p{margin:0}.page-footer a{color:inherit}.loading{padding:50px}.course-flow{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.course-flow span{font-size:12px;line-height:1.5;background:var(--school-tint);padding:9px 13px;border-radius:5px}.source-list{padding-left:20px}.source-list li{line-height:1.8;margin:12px 0}.source-list small{display:block}.backup-actions{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0}.file-label{cursor:pointer}.page-heading .back{margin-bottom:22px}.notice{font-size:12px;color:var(--school-muted)}
@media(min-width:1450px){.tool-layout .form-grid{grid-template-columns:1fr 1fr}}@media(max-width:1200px){.hero{padding:28px;gap:24px}.hero h1{font-size:44px}.process-art{padding:22px 15px}.chapter-layout{grid-template-columns:minmax(0,1fr) 230px}.grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}.trace-map{grid-template-columns:repeat(3,minmax(0,1fr))}.tool-layout{grid-template-columns:1fr}.tool-layout .form-grid{grid-template-columns:1fr 1fr}.result-panel{position:static}}@media(max-width:900px){.page{max-width:820px}.hero h1{font-size:43px}.chapter-layout{grid-template-columns:1fr}.aside-panel{position:static}.aside-panel .school-button{width:auto;margin-right:8px}.reading{max-width:none}.form-grid.three{grid-template-columns:1fr 1fr}.school-brand-text strong{font-size:24px}.page-footer{padding-bottom:10px}.metrics .metric strong{font-size:32px}}@media(max-width:650px){h1{font-size:38px}.hero{grid-template-columns:1fr;padding:24px 22px;gap:24px}.hero h1{font-size:44px}.hero .actions{align-items:stretch}.hero .school-button{flex:1 1 auto}.process-art{padding:22px}.process-line{margin:20px 0}.stat-strip{grid-template-columns:repeat(2,1fr);gap:18px}.stat-strip>div:nth-child(3){padding-left:0}.stat-strip>div:nth-child(2){border:0}.stat-strip>div{padding-right:14px}.stat-strip strong{font-size:27px}.section-heading{margin-top:30px}.section-heading h2{font-size:27px}.grid,.grid.three,.home-bottom{grid-template-columns:1fr}.card,.panel{padding:22px}.resume{align-items:flex-start;flex-direction:column;gap:12px}.form-grid,.tool-layout .form-grid,.form-grid.three{grid-template-columns:1fr}.metrics{gap:12px}.metrics .metric strong{font-size:26px}.metric>span{font-size:10px}.glossary-list{grid-template-columns:1fr}.trace-map{grid-template-columns:1fr 1fr}.trace-node{padding:15px 11px}.progress-row{grid-template-columns:1fr auto;gap:14px}.progress-row>div:nth-child(2){grid-column:1/-1;grid-row:2}.flashcard{padding:32px 22px;min-height:330px}.flashcard h2{font-size:35px}.flashcard .definition{font-size:16px}.page-footer{flex-direction:column;gap:10px}.bar-row{grid-template-columns:65px 1fr 76px;gap:8px;font-size:11px}.bar-row strong{font-size:11px}.page-heading .lead{font-size:16px}.source-list{padding-left:17px}pre{padding:15px;font-size:11px}}@media(max-width:380px){.hero{padding:20px 17px}.hero h1{font-size:39px}.process-art{padding:20px 12px}.process-step strong{font-size:10px}.process-line{grid-template-columns:1fr 17px 1fr 17px 1fr}.process-arrow{font-size:18px}.metrics{grid-template-columns:1fr}.metrics .metric{padding-bottom:14px;border-bottom:1px solid var(--school-line)}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}@media print{body.school-app main.school-workspace{padding:0!important}.page{max-width:none}.page-footer,.actions,.aside-panel,.save-panel,.backup-actions,.filter-row,.form-status{display:none!important}.hero,.panel,.card{background:white;border:1px solid #aaa;break-inside:avoid}.chapter-layout,.tool-layout{display:block}.reading section{break-inside:avoid}.page-heading h1{font-size:32px}.lead{font-size:15px}h2{font-size:24px}p{font-size:12pt}.reading p{font-size:12pt}.table-scroll{overflow:visible}button,form{display:none!important}}
