:root{--ink:#182c29;--green:#16594b;--lime:#d8ee9b;--muted:#697972;--line:#e0e6dc}*{box-sizing:border-box}body{margin:0;background:#f6f7f2;color:var(--ink);font:15px 'Segoe UI',sans-serif}aside{width:235px;position:fixed;inset:0 auto 0 0;background:white;border-right:1px solid var(--line);padding:35px 22px;display:flex;flex-direction:column}.brand{color:var(--green);font-weight:800;font-size:21px;letter-spacing:1px;text-decoration:none}small{display:block;font-size:11px;color:var(--muted);margin-top:6px}.brand small{letter-spacing:3px;padding-left:45px;font-size:9px}.eyebrow{font-size:10px;letter-spacing:1.5px;color:var(--muted);margin-top:55px}button{cursor:pointer;font:inherit}nav button{display:block;width:100%;text-align:left;border:0;background:none;padding:15px 10px;border-radius:8px;margin:5px 0;color:#61716a;font-size:14px}nav button.active{background:#eaf1df;color:var(--green);font-weight:700}.sidefoot{margin-top:auto;border-top:1px solid var(--line);padding-top:20px;font-size:12px}main{margin-left:235px;padding:0 42px;max-width:1500px}header{height:85px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);font-size:10px;letter-spacing:1.5px;color:var(--muted)}.tag{display:inline-block;background:#ecf0e5;border-radius:20px;padding:7px 13px;font-size:11px}.heading{margin:32px 0 24px}h1{font-size:31px;letter-spacing:-1px;margin:0 0 10px}h2{font-size:23px}h3{font-size:16px}p{line-height:1.65;color:var(--muted);margin:8px 0}.hero{background:var(--green);border-radius:17px;color:white;padding:32px 36px;display:grid;grid-template-columns:1.4fr 1fr;min-height:255px;overflow:hidden}.hero p{color:#c5dacf;max-width:450px}.hero h2{font-size:34px;margin:15px 0;line-height:1.25}.hero .tag{background:#39735e;color:#e5f3ce}.heroart{display:grid;place-items:center}.orbit{width:175px;height:175px;border:1px solid #66977b;border-radius:50%;display:grid;place-items:center;transform:rotate(-12deg);font-size:45px;color:var(--lime);position:relative}.orbit:after{content:'y = kx';position:absolute;bottom:-10px;left:-25px;background:#f8f9ec;color:var(--green);font-size:24px;padding:16px;border-radius:10px}.primary{border:0;background:var(--lime);color:var(--ink);border-radius:8px;padding:12px 18px;font-weight:700;margin-top:14px}.secondary{border:1px solid var(--line);background:white;color:var(--green);padding:10px 14px;border-radius:8px;font-size:13px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:22px 0 30px}.stat,.card{background:white;border:1px solid var(--line);border-radius:12px;padding:22px}.stat strong{font-size:27px;display:block;margin:9px 0}.sectionhead{display:flex;justify-content:space-between;align-items:center;margin:25px 0 15px}.sectionhead h2{font-size:20px;margin:0}.columns,.two{display:grid;grid-template-columns:1.8fr 1fr;gap:22px}.lesson{display:flex;gap:14px;align-items:center;border-bottom:1px solid var(--line);padding:16px 0}.lesson:last-child{border:0}.num{background:#f0f3e7;border-radius:10px;min-width:40px;height:40px;display:grid;place-items:center;font-weight:700}.lesson h3{margin:0;font-size:14px}.lesson button{margin-left:auto}.coachcard{background:#eaf0dc}.coachicon{font-size:32px;color:var(--green)}.coachcard h3{font-size:22px}.bar{background:#e8eddf;height:7px;border-radius:7px;overflow:hidden;margin-top:12px}.bar div{background:#59946b;height:100%}.target{background:#edf3e2;border-left:3px solid #80a451;padding:16px;margin:20px 0;line-height:1.6}.visual{background:#f7f8f2;border-radius:10px;padding:20px;margin:18px 0;text-align:center}table{border-collapse:collapse;width:100%;margin:14px 0}th,td{padding:12px;border:1px solid var(--line);text-align:center}th{background:#edf2e4}input,textarea,select{font:inherit;padding:12px;border:1px solid #cbd6c5;border-radius:8px;width:100%;background:white;color:var(--ink)}label{display:block;margin:15px 0 8px}.feedback{padding:13px;border-radius:8px;background:#eef3e5;margin:14px 0;line-height:1.6}.error{background:#fff0dd}.chat{height:330px;overflow:auto;display:flex;flex-direction:column;gap:12px;padding:10px 0}.bubble{padding:14px;border-radius:12px;background:#edf2e5;max-width:90%;line-height:1.6;white-space:pre-wrap}.bubble.me{background:var(--green);color:white;align-self:flex-end}.actions{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.actions button{font-size:12px}footer{padding:35px 0;color:#829084;font-size:11px}a{color:var(--green)}.note{font-size:12px}.chip{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#65813b;font-weight:700}.unitlist{display:grid;grid-template-columns:1fr 1fr;gap:14px}button:hover{filter:brightness(.95)}button:focus-visible,a:focus-visible{outline:3px solid #80ad48;outline-offset:3px}@media(max-width:1000px){aside{width:195px}main{margin-left:195px;padding:0 24px}.columns,.two{grid-template-columns:1fr}}@media(max-width:650px){aside{position:static;width:auto;padding:18px}.eyebrow,.sidefoot{display:none}nav{display:flex;overflow:auto;margin-top:20px}nav button{min-width:140px;font-size:12px}main{margin:0;padding:0 18px}header{height:60px}.hero{padding:25px;grid-template-columns:1fr}.heroart{display:none}.hero h2{font-size:28px}.stats{gap:8px}.stat{padding:12px}.unitlist{grid-template-columns:1fr}h1{font-size:26px}}
.review{border-top:1px solid var(--line);padding:24px 0}.sidefoot button{margin-top:12px}[hidden]{display:none!important}button:disabled{opacity:.5;cursor:not-allowed}

.state-filters{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:16px}.state-list{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px}.state-item{background:#f6f8f0;border:1px solid var(--line);border-radius:10px;padding:16px;text-align:left;color:var(--ink)}.state-item span{display:block;margin-top:8px;font-size:12px;line-height:1.6}.state-item.selected{border:2px solid var(--green)}.state-source{display:inline-block;margin:12px 0}.state-document{margin:16px 0}.state-document object{margin-top:12px;border:1px solid var(--line)}summary{cursor:pointer;padding:12px 0;color:var(--green);font-weight:600}.state-choices{border:1px solid var(--line);border-radius:10px;margin-top:20px}.state-choices label{display:inline-flex;align-items:center;gap:8px;margin:15px 20px}.state-choices input{width:auto}.state-table{overflow:auto}.state-table th,.state-table td{font-size:12px;min-width:110px;text-align:left}.state-answer{white-space:pre-wrap;overflow-wrap:anywhere;background:#f5f7f1;padding:16px}.state-tabs .primary{margin-top:0}@media(max-width:1000px){.state-list{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.state-list,.state-filters{grid-template-columns:1fr}aside .sidefoot{display:block;padding-top:10px;margin-top:10px}nav button{min-width:125px}nav{flex-wrap:wrap;overflow:visible}nav button{width:auto;flex:1 1 40%}aside{overflow:visible}.state-document object{height:450px}}

.student-class-banner{font-size:1.15rem;font-weight:700;margin-bottom:20px}

.extra-practice{border-top:1px solid #d9dfd7;margin-top:24px;padding-top:16px}
