@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');
:root{--navy:#12264b;--navy2:#1b3968;--pink:#d9307d;--pink2:#f6e8f0;--blue:#3578cf;--blue2:#eaf3ff;--ink:#26334a;--muted:#7d899e;--line:#e8edf4;--canvas:#f6f8fc;--white:#fff;--green:#1b9a70;--shadow:0 8px 28px rgba(20,43,78,.07)}*{box-sizing:border-box}body{margin:0;background:var(--canvas);color:var(--ink);font:15px/1.5 'DM Sans',sans-serif}button,select{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;display:flex}.sidebar{width:252px;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;padding:25px 16px 20px;flex-shrink:0}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--navy);padding:0 9px 29px}.brand b{display:block;font:800 19px Manrope,sans-serif;letter-spacing:-.7px}.brand b span{color:var(--pink)}.brand small{font-size:9px;letter-spacing:1.8px;color:#8490a4;font-weight:700}.brand-mark{height:35px;width:35px;border-radius:11px;background:var(--navy);display:flex;align-items:flex-end;justify-content:center;gap:3px;padding:7px;transform:rotate(-6deg)}.brand-mark span{display:block;background:#fff;border-radius:5px 5px 2px 2px;width:8px}.brand-mark span:first-child{height:18px}.brand-mark span:last-child{height:23px;background:#ef66a4}.profile-switch{padding:13px 12px 17px;background:#f5f7fb;border-radius:12px;margin:0 2px 21px}.profile-switch label{display:block;font-size:10px;letter-spacing:1.1px;color:var(--muted);font-weight:700;margin-bottom:5px}.profile-switch select{border:0;background:transparent;color:var(--navy);font-weight:700;width:100%;outline:0}.main-nav{display:grid;gap:5px}.nav-item{border:0;background:transparent;color:#647188;text-align:left;padding:12px 12px;border-radius:10px;display:flex;align-items:center;gap:13px;font-weight:600}.nav-item i{width:22px;text-align:center;font-size:20px;font-style:normal;color:#8795aa}.nav-item:hover{background:#f7f8fb;color:var(--navy)}.nav-item.active{background:#fceef5;color:var(--pink)}.nav-item.active i{color:var(--pink)}.nav-badge{margin-left:auto;color:#fff;background:var(--pink);font-size:11px;border-radius:20px;padding:1px 7px}.sidebar-bottom{margin-top:auto}.help-card{background:var(--blue2);border-radius:14px;padding:16px;margin:15px 2px 20px}.help-icon{height:25px;width:25px;border-radius:8px;background:white;color:var(--blue);display:grid;place-items:center;font-weight:800;margin-bottom:12px}.help-card b{color:var(--navy)}.help-card p{font-size:12px;color:#6e7d94;margin:5px 0 8px}.text-button{border:0;background:none;padding:0;color:var(--blue);font-weight:700;font-size:12px}.text-button span{margin-left:4px}.side-footer{border-top:1px solid var(--line);padding:16px 10px 0;color:#9aa4b3;font-size:11px;line-height:1.8}.main-area{min-width:0;flex:1}.topbar{height:72px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 38px;position:sticky;top:0;z-index:5}.crumb{font-size:13px;color:#8490a2}.crumb span{padding:0 9px;color:#c3cad4}.crumb b{color:var(--navy);font-weight:600}.top-actions{display:flex;align-items:center;gap:20px}.icon-button{border:0;background:none;font-size:22px;color:#75839a;position:relative}.notification-dot{position:absolute;width:6px;height:6px;background:var(--pink);border:1px solid #fff;border-radius:50%;right:1px;top:3px}.user-pill{display:flex;align-items:center;gap:10px;border:0;background:none;text-align:left;color:var(--navy)}.avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:#a74472;background:#fae4ef;font-weight:700;font-size:12px}.user-meta b,.user-meta small{display:block}.user-meta b{font-size:12px}.user-meta small{font-size:10px;color:var(--muted)}.down{color:#9ca7b7}.content{max-width:1440px;padding:31px 38px 56px;margin:auto}.welcome-row{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:21px}.eyebrow{color:var(--pink);font-size:11px;text-transform:uppercase;letter-spacing:1.1px;font-weight:800}.welcome-row h1{margin:4px 0 3px;font:800 28px Manrope,sans-serif;letter-spacing:-1px;color:var(--navy)}.welcome-row p{margin:0;color:#7d899b}.date-label{font-size:12px;color:#78869b;background:#fff;border:1px solid var(--line);border-radius:9px;padding:9px 12px}.hero-card{border-radius:18px;overflow:hidden;color:#fff;background:linear-gradient(112deg,#183765,#23558e);display:grid;grid-template-columns:1.15fr .85fr;min-height:208px;position:relative;box-shadow:var(--shadow)}.hero-copy{padding:26px 30px;position:relative;z-index:1}.hero-copy .eyebrow{color:#ffb2d2}.hero-copy h2{font:800 24px Manrope,sans-serif;margin:5px 0 7px;letter-spacing:-.6px}.hero-copy p{max-width:440px;color:#dbe8f8;margin:0 0 17px;font-size:13px}.button{border:0;border-radius:9px;padding:11px 16px;font-weight:700;font-size:12px}.button.pink{background:var(--pink);color:#fff;box-shadow:0 5px 12px rgba(217,48,125,.25)}.button.white{background:#fff;color:var(--navy)}.button.outline{background:#fff;border:1px solid var(--line);color:#485974}.button.blue{background:var(--blue);color:white}.hero-visual{position:relative;display:flex;align-items:center;justify-content:center}.orbit{position:absolute;width:214px;height:214px;border:1px solid rgba(255,255,255,.18);border-radius:50%;right:15%;top:-2px}.orbit:before,.orbit:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.15);border-radius:50%;inset:21px}.orbit:after{inset:47px}.lesson-tile{z-index:1;background:#fff;color:var(--navy);width:250px;border-radius:14px;padding:15px;box-shadow:0 15px 30px #0c214555;transform:rotate(2deg)}.tile-head{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#8490a0}.live-tag{background:#ffedf5;color:var(--pink);font-weight:800;border-radius:20px;padding:4px 7px}.lesson-tile h3{font:700 14px Manrope;margin:9px 0 5px}.tile-foot{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);margin-top:11px;padding-top:10px;font-size:10px;color:#8190a5}.tutor-mini{display:flex;align-items:center;gap:6px}.tiny-avatar{width:24px;height:24px;background:#dbeafc;border-radius:50%;display:grid;place-items:center;color:#37679c;font-weight:700}.dashboard-grid{display:grid;grid-template-columns:1.42fr .88fr;gap:19px;margin-top:20px}.section-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:19px 20px;box-shadow:0 2px 12px rgba(20,43,78,.025)}.section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.section-head h2{font:700 15px Manrope;color:var(--navy);margin:0}.section-head button{border:0;background:none;color:var(--blue);font-weight:700;font-size:11px}.lesson-row{display:flex;align-items:center;gap:13px;padding:13px 0;border-top:1px solid #f0f2f6}.lesson-row:first-of-type{border-top:0}.subject-icon{height:42px;width:42px;border-radius:12px;display:grid;place-items:center;font-size:18px;font-weight:800;flex:0 0 auto}.subject-icon.math{background:#eaf3ff;color:#4582cc}.subject-icon.eng{background:#fcecf4;color:#cf4a86}.subject-icon.sci{background:#e7f6f0;color:#288566}.row-main{min-width:0;flex:1}.row-main b{display:block;color:var(--navy);font-size:12px}.row-main small{display:block;color:#8793a5;font-size:10px;margin-top:3px}.row-time{text-align:right;color:#718098;font-size:11px;white-space:nowrap}.row-time b{display:block;color:var(--navy);font-size:11px}.mini-action{border:1px solid #e7ebf2;background:#fff;color:#52637d;border-radius:7px;padding:7px 9px;font-weight:700;font-size:10px;white-space:nowrap}.mini-action.pink{color:var(--pink);border-color:#f5ccdf;background:#fff8fb}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.stat{padding:11px;background:#f8fafe;border-radius:10px}.stat small{display:block;color:#8793a5;font-size:9px}.stat b{display:block;color:var(--navy);font:800 19px Manrope;margin-top:3px}.stat em{font-style:normal;color:var(--green);font-size:9px}.progress-label{display:flex;justify-content:space-between;font-size:11px;color:#718098;margin:17px 0 7px}.progress-label b{color:var(--navy)}.progress{height:8px;background:#edf1f6;border-radius:8px;overflow:hidden}.progress span{height:100%;width:68%;background:linear-gradient(90deg,var(--pink),#f17dae);display:block;border-radius:8px}.focus-note{display:flex;gap:10px;background:#fdf5f9;border-radius:10px;padding:11px;margin-top:16px;color:#6b5360;font-size:10px}.focus-note strong{display:block;color:#9e3768;font-size:11px;margin-bottom:2px}.spark{font-size:17px;color:var(--pink)}.work-row{display:flex;align-items:center;justify-content:space-between;padding:11px 0;border-top:1px solid #f0f2f6}.work-row:first-of-type{border-top:0}.due{font-size:9px;color:#a6732f;background:#fff4df;border-radius:20px;padding:4px 7px;white-space:nowrap}.due.done{color:#368261;background:#e9f7f1}.two-col{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}.subhead{margin:0 0 14px;color:var(--navy);font:800 22px Manrope;letter-spacing:-.6px}.muted{color:#7d899b}.class-panel{background:#14294f;border-radius:15px;color:white;min-height:435px;overflow:hidden;display:flex;flex-direction:column}.class-top{padding:15px 18px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ffffff20}.class-top small{color:#adc0db}.class-top b{display:block}.participants{display:flex;gap:5px;align-items:center;color:#c1cde0;font-size:10px}.meeting-stage{flex:1;display:grid;place-items:center;text-align:center;padding:25px;background:radial-gradient(circle at 50% 30%,#375987,#14294f 60%)}.teacher-avatar{height:82px;width:82px;border-radius:50%;display:grid;place-items:center;background:#f4dbe8;color:#99476d;font:800 24px Manrope;margin:0 auto 12px;border:4px solid #ffffff33}.meeting-stage h3{margin:0;font:700 16px Manrope}.meeting-stage p{margin:4px 0;color:#c7d5e9;font-size:12px}.secure-label{display:inline-block;background:#ffffff16;border-radius:20px;padding:5px 9px;font-size:9px;margin-top:12px;color:#d8e6f7}.meeting-controls{display:flex;justify-content:center;gap:10px;padding:14px;background:#102344}.control{width:40px;height:40px;border-radius:50%;border:0;background:#ffffff19;color:white;font-size:15px}.control.end{background:#d93a69}.class-info{padding:18px}.class-info h3{font:700 14px Manrope;color:var(--navy);margin:0 0 8px}.class-info p{font-size:12px;color:#77859a}.resource{padding:11px 0;border-top:1px solid var(--line);font-size:11px;display:flex;justify-content:space-between;color:#52617a}.quiz-option{display:block;width:100%;text-align:left;border:1px solid var(--line);background:#fff;padding:11px 12px;border-radius:9px;margin:8px 0;color:#485974;font-size:12px}.quiz-option:hover,.quiz-option.selected{border-color:var(--pink);background:#fff7fb;color:#a72e63}.feedback{min-height:21px;color:var(--green);font-size:11px;margin:8px 0}.chat-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px;min-height:380px;display:flex;flex-direction:column}.chat-head{display:flex;gap:10px;align-items:center;padding-bottom:12px;border-bottom:1px solid var(--line)}.ai-orb{height:36px;width:36px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#fbe6f0,#e6efff);color:var(--pink);font-size:19px}.chat-head b{font-size:12px;color:var(--navy);display:block}.chat-head small{font-size:10px;color:#8490a3}.chat-messages{padding:15px 0;display:grid;gap:10px;align-content:start;flex:1}.bubble{max-width:88%;padding:10px 12px;background:#f3f6fb;border-radius:4px 12px 12px 12px;color:#53617a;font-size:11px}.bubble.me{justify-self:end;background:#fceef5;color:#8f3862;border-radius:12px 4px 12px 12px}.chat-compose{display:flex;gap:8px;border-top:1px solid var(--line);padding-top:12px}.chat-compose input{min-width:0;flex:1;border:1px solid var(--line);border-radius:8px;padding:10px;font-size:11px;outline-color:#d9307d}.chat-compose button{border:0;border-radius:8px;background:var(--pink);color:white;padding:0 14px;font-weight:700}.guardrail{font-size:9px;color:#929db0;margin-top:8px}.topic-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.topic{border:1px solid var(--line);border-radius:11px;padding:13px;background:#fff;text-align:left}.topic:hover{border-color:#e6a6c4}.topic b{display:block;color:var(--navy);font-size:11px}.topic small{color:#8995a7;font-size:9px}.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.plan-card{padding:18px;border-radius:14px;background:white;border:1px solid var(--line)}.plan-card.featured{border:2px solid var(--pink);box-shadow:0 9px 25px #dc4b8812}.plan-card h3{font:700 14px Manrope;color:var(--navy);margin:0}.price{font:800 25px Manrope;color:var(--navy);margin:12px 0}.price small{font:500 10px 'DM Sans';color:#8793a5}.plan-card ul{padding:0 0 0 17px;color:#6e7d91;font-size:11px;line-height:2}.tag{font-size:9px;letter-spacing:.8px;text-transform:uppercase;color:var(--pink);font-weight:800}.notice{padding:12px 14px;background:#fff7e8;border:1px solid #f5e1bb;border-radius:10px;color:#886837;font-size:11px;margin:15px 0}.tutor-tools{display:flex;gap:8px;flex-wrap:wrap}.tutor-tools .button{font-size:11px}.empty-message{color:#8995a7;font-size:12px;padding:25px 4px}.mobile-menu{display:none;border:0;background:none;color:var(--navy);font-size:21px}.toast{position:fixed;bottom:23px;left:50%;transform:translate(-50%,20px);opacity:0;background:#152a50;color:white;padding:11px 17px;border-radius:10px;box-shadow:var(--shadow);font-size:12px;transition:.25s;z-index:10;pointer-events:none}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:1050px){.sidebar{width:220px}.content{padding:26px 24px}.topbar{padding:0 24px}.dashboard-grid,.two-col{grid-template-columns:1fr}.hero-card{grid-template-columns:1fr .7fr}.plan-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.sidebar{position:fixed;z-index:8;top:0;bottom:0;left:-270px;width:250px;box-shadow:var(--shadow);transition:left .25s}.sidebar.open{left:0}.topbar{height:62px;padding:0 15px;gap:12px}.mobile-menu{display:block}.crumb{margin-right:auto;font-size:11px}.user-meta,.down{display:none}.top-actions{gap:11px}.content{padding:22px 15px 38px}.welcome-row{align-items:flex-start;flex-direction:column;gap:12px}.welcome-row h1{font-size:24px}.date-label{align-self:flex-start}.hero-card{grid-template-columns:1fr;min-height:0}.hero-copy{padding:22px}.hero-copy h2{font-size:21px}.hero-visual{display:none}.dashboard-grid{gap:13px}.section-card{padding:16px}.lesson-row{gap:9px}.subject-icon{height:37px;width:37px}.row-time{font-size:9px}.mini-action{padding:7px;font-size:9px}.stats{gap:6px}.stat{padding:9px}.stat b{font-size:17px}.plan-grid{grid-template-columns:1fr}.subhead{font-size:20px}.class-panel{min-height:380px}.topic-grid{grid-template-columns:1fr 1fr}}
.pilot-notice{display:flex;gap:12px;align-items:center;padding:11px 14px;background:#fff;border:1px solid var(--line);border-left:3px solid var(--pink);border-radius:10px;color:#75839a;font-size:11px;margin:0 0 16px}.pilot-notice b{color:var(--navy);white-space:nowrap}.checklist{display:grid;gap:9px;margin:0 0 18px}.checklist div{display:flex;gap:10px;align-items:flex-start;color:var(--pink);font-size:12px;font-weight:800}.checklist span{color:#66758b;font-weight:500}.field{display:grid;gap:6px;margin:13px 0}.field label,.field-label{font-size:11px;color:#65738a;font-weight:700}.field input,.field select,.field textarea,.answer-box{width:100%;padding:10px 11px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);font:inherit;font-size:12px;outline-color:var(--pink)}.field textarea,.answer-box{resize:vertical}.field .button{justify-self:start}.tiny{font-size:10px}.section-gap{margin-top:18px}.question-card{padding:13px 0;border-top:1px solid var(--line);font-size:12px;color:var(--navy)}.option-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px}.option-grid .quiz-option{margin:0;height:100%;font-size:11px}.practice-prompt{padding:15px 0}.practice-prompt blockquote{margin:10px 0;padding:13px 15px;border-left:3px solid var(--pink);background:#fcf5f9;color:var(--navy);font:700 16px/1.5 Manrope, sans-serif;border-radius:0 10px 10px 0}.practice-prompt p,.muted{font-size:12px}.practice-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:10px}.steps{display:grid;gap:12px;margin:6px 0 16px}.steps>div{display:flex;gap:11px;align-items:center}.steps>div>b{height:28px;width:28px;display:grid;place-items:center;border-radius:50%;background:#fceef5;color:var(--pink);font-size:12px}.steps strong,.steps small{display:block}.steps strong{font-size:12px;color:var(--navy)}.steps small{font-size:10px;color:#8995a7}.pilot-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pilot-facts>div{padding:12px;background:#f8fafe;border-radius:10px}.pilot-facts small,.pilot-facts b{display:block}.pilot-facts small{color:#8490a3;font-size:10px}.pilot-facts b{color:var(--navy);font-size:12px;margin-top:3px}.small-notice{font-size:10px}.pilot-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.pilot-grid>div{padding:13px;background:#f8fafe;border-radius:10px}.pilot-grid b{font-size:12px;color:var(--navy)}.pilot-grid p{margin:4px 0 0;font-size:11px;color:#7b879a}.soft-rule{border:0;border-top:1px solid var(--line);margin:16px 0}.class-panel .due{white-space:nowrap}
@media(max-width:720px){.option-grid{grid-template-columns:1fr}.pilot-facts,.pilot-grid{grid-template-columns:1fr}.pilot-notice{align-items:flex-start;flex-direction:column;gap:3px}.question-card{font-size:11px}.practice-prompt blockquote{font-size:14px}}
.tab-row{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 12px}.tab-button{border:1px solid var(--line);border-radius:8px;background:#fff;color:#627089;padding:8px 10px;font-size:10px;font-weight:700}.tab-button.active{border-color:#f0bad1;background:#fff4f9;color:#b52c6d}.spec-links{display:grid;gap:8px;margin-top:12px}.spec-links a{font-size:11px;color:var(--blue);font-weight:700;text-decoration:none}.spec-links a:hover{text-decoration:underline}.field-help{font-size:10px;color:var(--green)}.practice-prompt blockquote{white-space:pre-line}
.runtime-error{margin:12px 38px 0;padding:10px 13px;border-radius:9px;border:1px solid #f0d49b;background:#fff8e8;color:#805c17;font-size:11px}.runtime-error[hidden]{display:none}
@media(max-width:720px){.runtime-error{margin:10px 15px 0}}
.sidebar-backdrop{display:none}
@media(max-width:720px){.sidebar-backdrop.is-visible{display:block;position:fixed;inset:0;z-index:7;border:0;padding:0;background:rgba(17,37,75,.38);cursor:default}.sidebar{z-index:8}}
