*{box-sizing:border-box}body{margin:0}a{color:var(--school-primary);text-underline-offset:3px}button,input,textarea,select{font:inherit}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}:focus-visible{outline:3px solid var(--school-copper);outline-offset:4px}h1:focus{outline:none}h1,h2,h3,p{margin-top:0}p{line-height:1.75}h1{font-size:clamp(34px,4vw,54px);line-height:1.12;margin-bottom:20px}h2{font-size:30px;line-height:1.23;margin-bottom:18px}h3{font-size:19px;line-height:1.4;margin-bottom:9px}.content{max-width:1160px;margin:auto}.reading{max-width:800px;margin:auto}.small{font-size:13px;line-height:1.7;color:var(--school-muted)}.topline{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:10px;letter-spacing:.12em;color:var(--school-muted);margin-bottom:22px}.tag{display:inline-block;font-size:11px;line-height:1.5;letter-spacing:.03em;border:1px solid #c8d2c0;border-radius:5px;padding:5px 9px;color:var(--school-primary);white-space:nowrap}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.spaced{margin-top:30px}.hero{display:grid;grid-template-columns:1.5fr 1fr;gap:30px;background:var(--school-tint);border:1px solid #d9e0cf;border-radius:8px;padding:44px 42px}.hero h1{font-size:clamp(40px,4.7vw,64px);letter-spacing:-.045em;line-height:1.08;margin:15px 0 24px}.hero p:not(.school-eyebrow){font-size:16px;max-width:45ch;color:var(--school-muted);margin-bottom:28px}.hero-diagram{position:relative;align-self:center;justify-self:center;width:250px;height:285px;overflow:hidden;color:var(--school-primary)}.diagram-dot{position:absolute;top:20px;left:114px;width:22px;height:22px;border:6px solid #a54e35;border-radius:50%}.diagram-label{position:absolute;top:53px;left:0;right:0;text-align:center;font-size:11px;letter-spacing:.16em}.diagram-center{position:absolute;top:100px;left:47px;width:156px;height:100px;background:#244e42;color:#fffefa;display:grid;place-items:center;font:500 46px var(--school-serif);border-radius:50%}.diagram-bottom{position:absolute;top:230px;left:0;right:0;font-size:10px;letter-spacing:.1em;text-align:center}.diagram-line{position:absolute;inset:75px 8px 71px;border:1px solid #a6b59b;border-radius:50%}.diagram-number{position:absolute;bottom:0;right:0;letter-spacing:.13em;font-size:10px;color:var(--school-muted)}.stat-strip{display:flex;align-items:center;gap:35px;border-block:1px solid var(--school-line);padding:25px 0;margin:28px 0 45px}.stat-strip>div{display:grid;gap:5px}.stat-strip strong{font:500 29px/1.15 var(--school-serif)}.stat-strip small{font:400 17px var(--school-sans);color:var(--school-muted)}.stat-strip span{font-size:11px;line-height:1.5;color:var(--school-muted)}.stat-strip>a{font-size:12px;font-weight:600;margin-left:auto;min-height:44px;display:flex;align-items:center}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px}.section-heading h2{margin-bottom:0;font-size:34px}.section-heading a{font-size:12px;font-weight:600;min-height:44px;display:flex;align-items:center}.part-list{border-top:1px solid var(--school-line);margin-bottom:40px}.part-row{display:flex;align-items:center;gap:22px;min-height:106px;border-bottom:1px solid var(--school-line);padding:20px 10px;color:inherit;text-decoration:none}.part-row:hover{background:var(--school-tint)}.part-number{font:500 26px var(--school-serif);color:#718265;min-width:34px}.part-row h3{font-size:18px;font-weight:600;margin:0 0 5px}.part-row p{font-size:13px;color:var(--school-muted);margin:0;line-height:1.65}.part-chapters{font-size:11px;white-space:nowrap;margin-left:auto;color:var(--school-muted)}.feature-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:22px;margin:30px 0}.podcast-callout,.tool-callout{border:1px solid var(--school-line);border-radius:8px;padding:30px}.podcast-callout{background:#244e42;color:#fffefa}.podcast-callout .school-eyebrow{color:#dfae91}.podcast-callout p:not(.school-eyebrow){color:#e1e6d9;font-size:14px}.podcast-callout h2{font-size:34px}.podcast-callout .school-button{border-color:#adbba4}.tool-callout{background:var(--school-paper)}.tool-callout p{font-size:14px;color:var(--school-muted)}.page-heading{margin-bottom:30px}.page-heading .school-lead{line-height:1.8}.page-heading h1{max-width:22ch}.topic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.topic-card,.activity-card{position:relative;display:flex;flex-direction:column;background:var(--school-paper);border:1px solid var(--school-line);padding:27px;border-radius:8px;color:inherit;text-decoration:none;min-width:0}.topic-card:hover{border-color:#98ab8c;background:#f2f4eb}.topic-card h2{font-size:27px}.topic-card h3{font-family:var(--school-serif);font-size:26px;font-weight:500;letter-spacing:-.03em}.topic-card p{font-size:14px;color:var(--school-muted);line-height:1.75}.topic-card .text-link{margin-top:auto;padding-top:12px}.card-meta{display:flex;justify-content:space-between;gap:16px;margin-bottom:18px;font-size:11px;color:var(--school-muted)}.text-link{font-size:12px;font-weight:600;color:var(--school-primary)}.activity-card h2{font-size:28px}.activity-card>p:not(.school-eyebrow){color:var(--school-muted);font-size:14px}.activity-card.wide{grid-column:1/-1;background:var(--school-tint)}.activity-bottom{display:flex;gap:14px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-top:auto}.activity-card>.small{margin:15px 0 0}.filter-tabs{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:25px}.filter-tabs>a:not(.school-button){display:grid;place-items:center;min-width:44px;min-height:44px;text-decoration:none;border-radius:5px;border:1px solid var(--school-line)}.filter-tabs [aria-current]{background:var(--school-primary);color:white}.search-field{max-width:500px}.note-box,.example-box{border-radius:8px;margin:28px 0;padding:23px 26px;font-size:14px;line-height:1.8}.note-box{border-left:3px solid #a54e35;background:#f4eee3}.note-box p:last-child,.example-box p:last-child{margin-bottom:0}.example-box{background:var(--school-tint);border:1px solid var(--school-line)}.back{display:inline-flex;align-items:center;min-height:44px;font-size:12px;text-decoration:none;margin-bottom:18px}.reading-body section{display:grid;grid-template-columns:34px 1fr;gap:18px;margin:36px 0}.section-number{font:500 19px var(--school-serif);color:#8a9b7c;padding-top:5px}.reading-body h2{font-size:28px}.reading-body p{font-size:16px;line-height:1.95;margin-bottom:0}.recall{margin:36px 0;padding-block:30px;border-block:1px solid var(--school-line)}.recall p{font-size:14px;color:var(--school-muted)}.recall h2{font-size:29px}.chips{display:flex;flex-wrap:wrap;gap:9px}.chips>a{padding:10px 13px;min-height:44px;border:1px solid var(--school-line);border-radius:6px;font-size:12px;text-decoration:none;background:var(--school-paper)}.related h2{font-size:23px}.term-controls{display:flex;gap:20px;align-items:flex-end;flex-wrap:wrap;margin-bottom:24px}.term-controls>.school-field{flex:1;min-width:220px}.check-label{display:flex;gap:10px;align-items:center;min-height:44px;font-size:14px;line-height:1.6}.check-label input{width:19px;height:19px;flex:0 0 auto;accent-color:var(--school-primary)}.term-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.term-card{border:1px solid var(--school-line);border-radius:8px;background:var(--school-paper);padding:24px;min-width:0}.term-card>div{position:relative;padding-right:40px}.term-card h2{font:500 25px/1.2 var(--school-serif);margin-bottom:18px}.term-card .small{font-size:11px;margin:0 0 7px}.term-card>p,.term-card details{font-size:14px;line-height:1.8}.term-card summary{cursor:pointer;min-height:44px;padding:8px 0}.star-button{position:absolute;top:0;right:-7px;width:44px;height:44px;border:0;background:transparent;color:#8c6338;font-size:26px}.term-card .text-link{display:inline-flex;align-items:center;min-height:44px}.worksheet{margin-top:25px}.work-field{display:flex;gap:18px;margin-bottom:27px}.work-number{font:500 20px var(--school-serif);color:#7c906d;padding-top:0;min-width:28px}.field-content{flex:1;min-width:0}.field-content>strong{display:block;font-size:15px;margin-bottom:12px}.field-content textarea{display:block;resize:vertical;min-height:125px;width:100%;max-width:100%;background:var(--school-paper);border:1px solid #b8c4b3;border-radius:6px;padding:14px;font-size:15px;line-height:1.85;color:var(--school-ink)}textarea::placeholder{font-size:13px;color:#697569}.save-line{font-size:12px;border-left:3px solid #8ca17d;padding:10px 15px;background:var(--school-tint)}.guided-list{padding-left:21px;line-height:1.85}.guided-list li{padding:4px 0 9px}.checklist{padding:25px;background:var(--school-tint);border-radius:8px;border:1px solid var(--school-line);margin-top:35px}.checklist h2{font-size:27px}.checklist>p{font-size:13px}.checklist .check-label{align-items:flex-start;padding:9px 0}.checklist .check-label input{margin-top:4px}.panel{background:var(--school-paper);border:1px solid var(--school-line);border-radius:8px;padding:27px}.panel h2{font-size:26px}.calculator-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:25px;align-items:start}.input-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.input-grid .school-field{font-size:12px;align-content:start}.input-grid span{min-height:36px}.input-grid input{font-size:15px}.calculator-layout button{margin-top:24px}.metrics{padding-top:10px;min-width:0}.metrics h2{font-size:26px}.metric{display:grid;grid-template-columns:1.2fr 1fr;gap:6px 10px;padding:16px 0;border-bottom:1px solid var(--school-line)}.metric>span{font-size:13px;font-weight:600}.metric strong{font:500 25px/1.2 var(--school-serif);text-align:right;overflow-wrap:anywhere}.metric small{grid-column:1/-1;color:var(--school-muted);font-size:11px;line-height:1.6}.map-layout{display:grid;grid-template-columns:320px 1fr;gap:25px;align-items:start}.map-layout .panel>.school-field{margin-bottom:17px}.map-item{border:0;border-top:1px solid var(--school-line);margin:20px 0 0;padding:15px 0 0;min-width:0}.map-item legend{font-size:12px;padding:0 8px 0 0;font-weight:600}.map-item .school-field{font-size:12px}.range-field{display:grid;gap:7px;margin-top:16px;font-size:12px}.range-field>span{display:flex;justify-content:space-between}.range-field input{width:100%;min-height:30px;accent-color:var(--school-primary)}.map-panel{background:var(--school-paper);border:1px solid var(--school-line);padding:22px;border-radius:8px;min-width:0}.map-panel svg{width:100%;height:auto;display:block;font-family:var(--school-sans);font-size:12px}.map-panel table{width:100%;border-collapse:collapse;text-align:left;font-size:12px;margin:20px 0}.map-panel td,.map-panel th{padding:12px 6px;border-bottom:1px solid var(--school-line);overflow-wrap:anywhere;max-width:180px}.key-dot{width:22px;height:22px;display:inline-grid;place-items:center;vertical-align:middle;border-radius:50%;color:white;margin-right:5px;font-size:10px}.progress-list{display:grid;gap:18px}.progress-list>div{display:grid;grid-template-columns:1fr auto;gap:10px;font-size:13px}.progress-list progress{grid-column:1/-1;width:100%;height:8px;border:none;border-radius:4px;overflow:hidden;accent-color:var(--school-primary)}progress::-webkit-progress-bar{background:#e7ebdf}progress::-webkit-progress-value{background:#244e42}.history-list details{border-top:1px solid var(--school-line);padding:10px 0}.history-list summary{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:48px;cursor:pointer;font-size:14px;font-weight:600}.history-list summary:before{content:'+';color:var(--school-copper)}.history-list details[open] summary:before{content:'−'}.history-list summary>span{font-size:11px;color:var(--school-muted);margin-left:auto;white-space:nowrap}.history-row{display:grid;gap:5px;border-bottom:1px solid var(--school-line);padding:15px 0;font-size:12px}.history-list .school-button{margin:15px 0}.backup-panel{padding:30px;border-radius:8px;background:var(--school-tint);border:1px solid var(--school-line)}.backup-panel>p{font-size:14px;max-width:75ch}.file-button{position:relative;overflow:hidden}.file-button input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}.file-button:focus-within{outline:3px solid var(--school-copper);outline-offset:3px}#import-result{font-size:14px;line-height:1.8;margin-top:14px}.assessment{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;padding-block:22px;margin-bottom:15px;border-block:1px solid var(--school-line)}.assessment>div{display:grid;gap:12px}.assessment strong{font:500 36px var(--school-serif)}.assessment span{font-size:13px;line-height:1.8}.page-footer{display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:14px;margin-top:50px;padding-top:20px;border-top:1px solid var(--school-line);font-size:10px;color:var(--school-muted)}.page-footer a{min-height:44px;display:flex;align-items:center}.school-practice-heading h1{max-width:22ch}.school-practice{padding-top:0}.error-box{background:#fff0e5;border-left:3px solid var(--school-copper);padding:18px;font-size:14px;line-height:1.8}.error-box .school-button{margin-top:15px;display:flex}.noscript{padding:30px;font-family:sans-serif}#notice{position:fixed;bottom:25px;left:calc(var(--school-sidebar) + 30px);right:30px;max-width:700px;margin-left:auto;background:var(--school-primary);color:white;box-shadow:0 6px 30px #153e3120;border-radius:7px;padding:16px 20px;z-index:300;font-size:13px;line-height:1.7;pointer-events:none;opacity:0;transform:translateY(15px);transition:opacity .15s,transform .15s}#notice.visible{opacity:1;transform:none}#notice.error{background:#783e2a}.storage-banner{background:#fff0e5;border-left:3px solid var(--school-copper);padding:15px;margin-bottom:25px;font-size:13px}.school-brand-text strong{font-size:24px}.school-brand-text small{font-size:9px}body.school-app{overflow-wrap:anywhere}button:disabled,input:disabled,textarea:disabled{opacity:.6;cursor:not-allowed}
@media(min-width:1600px){body.school-app main.school-workspace{padding-inline:60px}.hero{padding:50px}}
@media(max-width:1150px){.hero{padding:32px 28px;gap:15px;grid-template-columns:1.6fr 1fr}.hero-diagram{width:210px;transform:scale(.84)}.part-chapters{display:none}.stat-strip{gap:24px}.map-layout{grid-template-columns:280px 1fr}.map-panel{padding:15px}}
@media(max-width:900px){.hero h1{font-size:52px}.hero-diagram{transform:scale(.95);width:250px}.school-brand-text strong{font-size:23px}.map-layout{grid-template-columns:280px 1fr}#notice{left:20px;right:20px;bottom:80px}}
@media(max-width:680px){h1{font-size:37px}.hero{grid-template-columns:1fr;padding:30px 24px}.hero h1{font-size:45px}.hero-diagram{display:none}.hero p:not(.school-eyebrow){font-size:15px}.hero .actions{gap:10px}.hero .school-button{font-size:12px;padding-inline:13px}.topline{font-size:9px}.stat-strip{gap:18px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding-block:22px;margin-bottom:32px}.stat-strip strong{font-size:27px}.stat-strip small{font-size:14px}.stat-strip span{font-size:10px}.stat-strip>a{grid-column:1/-1;margin:0;min-height:30px}.section-heading h2{font-size:28px}.section-heading>a{font-size:11px}.part-row{gap:13px;padding-inline:0}.part-number{font-size:23px;min-width:26px}.part-row h3{font-size:16px}.part-row p{font-size:12px}.part-row>span:last-child{margin-left:auto}.feature-grid,.topic-grid,.term-grid,.calculator-layout,.map-layout{grid-template-columns:1fr}.feature-grid{gap:16px}.podcast-callout,.tool-callout{padding:26px}.podcast-callout h2{font-size:31px}.topic-card,.activity-card{padding:23px}.page-heading .school-lead{font-size:16px}.reading-body section{grid-template-columns:26px 1fr;gap:10px;margin:30px 0}.reading-body h2{font-size:26px}.reading-body p{font-size:15px;line-height:1.95}.note-box,.example-box{padding:21px 20px}.recall h2{font-size:26px}.work-field{gap:11px}.work-number{font-size:18px;min-width:23px}.field-content textarea{font-size:16px}.panel,.backup-panel{padding:23px 20px}.metrics{padding-top:0}.map-panel{padding:18px 12px}.map-panel svg{max-width:470px;margin:auto}.map-item{padding-top:14px}.range-field{margin-top:16px}.range-field input{min-height:42px}.history-list summary{font-size:12px;gap:10px}.assessment{gap:10px}.assessment strong{font-size:32px}.assessment span{font-size:11px}.page-footer{margin-top:35px;gap:7px;font-size:10px}.page-footer>span:last-child{flex-basis:100%}.term-controls>.school-field{min-width:100%}.input-grid{gap:17px 13px}.input-grid .school-field{font-size:11px}.map-panel th{font-size:10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media print{body{background:white!important;color:#111!important}.content,.reading{max-width:none}.hero-diagram,.actions,.filter-tabs,.term-controls,.page-footer,.back,#notice,.save-line,.school-button,.star-button{display:none!important}.page-heading h1{font-size:30px}.panel,.topic-card,.term-card,.note-box,.example-box{break-inside:avoid;box-shadow:none}.field-content textarea{border:0;min-height:0;padding:0;field-sizing:content;overflow:visible}.work-field{break-inside:avoid}.hero,.podcast-callout,.tool-callout{background:white!important;color:#111!important}.topic-grid,.term-grid{grid-template-columns:1fr 1fr}.reading-body p{line-height:1.6}.storage-banner{display:none}}
.school-menu-dialog>.school-sync-badge{display:block;margin:0 0 20px;min-height:44px}.school-sync-dialog h2{font-family:var(--school-serif);font-weight:500}.school-header>.school-sync-badge{min-height:44px}.school-sync-badge{flex-shrink:0}.school-sync-dialog [hidden]{display:none!important}@media print{.school-sync-dialog,.school-sync-badge{display:none!important}}
