:root{--dashboard-rail:var(--ink);--dashboard-rail-active:var(--slate-2);--tile-yellow:#eebf36;--tile-green:#79bd81;--tile-coral:#ed927f;--tile-sky:#79c5e2;--tile-lilac:#ac91df;--tile-teal:#40b9ad;--poster-coral:#fc9383;--poster-yellow:#ffdf70;--dashboard-shadow:0 8px 28px color-mix(in srgb,var(--ink) 12%,transparent);--sidebar-width:288px;--dashboard-radius:20px}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;line-height:1.5}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.2}a{text-decoration:none}button{font:inherit;cursor:pointer}[hidden]{display:none!important}.sprite{position:absolute;width:0;height:0;overflow:hidden}.icon{width:24px;height:24px;flex:none}.btn{display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;color:var(--ink);background:transparent;font:inherit;box-shadow:none}.btn:disabled{opacity:.6;cursor:wait}:focus-visible{outline:3px solid var(--focus);outline-offset:4px}.skip{position:fixed;left:1rem;top:-100px;z-index:100;background:var(--paper);padding:1rem;border-radius:8px}.skip:focus{top:1rem}
.sidebar{position:fixed;inset:0 auto 0 0;z-index:40;width:var(--sidebar-width);background:var(--dashboard-rail);color:var(--chalk);display:flex;flex-direction:column;padding:38px 23px 24px;transition:width .2s;overflow:visible}.dashboard-logo{display:flex;align-items:center;gap:13px;color:var(--chalk);font-size:25px;font-weight:800;line-height:1.05;min-height:62px;margin-bottom:43px}.dashboard-logo>.icon{width:46px;height:46px;color:var(--chalk)}.dashboard-logo strong{font-size:32px;font-weight:900}.sidebar-collapse{position:absolute;right:-15px;top:63px;width:30px;height:30px;border-radius:50%!important;background:var(--dashboard-rail);color:var(--chalk);border:2px solid var(--paper)}.sidebar-collapse .icon{width:18px;height:18px}.primary-nav{list-style:none;margin:0;padding:0;display:grid;gap:14px}.sidebar .primary-nav a{display:flex;align-items:center;gap:16px;min-height:52px;padding:10px 14px;border-radius:8px;color:var(--chalk)!important;font-weight:700;font-size:13px;letter-spacing:0}.primary-nav a.active,.primary-nav a:hover{background:var(--dashboard-rail-active)}.primary-nav a.active>.icon{color:var(--teal)}.primary-nav .icon{color:var(--chalk-dim);width:25px;height:25px}.sidebar-bottom{margin-top:auto;padding-top:48px;display:grid;gap:8px}.sidebar-bottom>a,.sidebar-signout{min-height:38px;padding:8px 14px;display:flex;align-items:center;justify-content:flex-start;gap:15px;font-size:14px;color:var(--chalk);text-align:left;border-radius:8px}.sidebar-bottom>a:hover,.sidebar-signout:hover{background:var(--dashboard-rail-active)}.sidebar-bottom .icon{width:20px;height:20px;color:var(--chalk-dim)}.copyright{font-size:11px;color:var(--chalk-dim);padding:20px 14px 0}.dashboard-body{margin-left:var(--sidebar-width);transition:margin-left .2s;min-width:0}.dashboard-topbar{height:84px;border-bottom:1px solid var(--line);display:flex;justify-content:flex-end;align-items:center;padding:0 48px;gap:16px}.top-actions{display:flex;gap:24px;align-items:center}.round-action{display:flex;flex-direction:column;gap:4px;color:var(--ink);background:none;border:0;min-width:60px}.round-action>span{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--teal);color:var(--ink)}.round-action.renew-action>span{border:2px solid var(--teal);background:var(--paper)}.round-action small{font-size:12px;font-weight:500}.mobile-menu,.mobile-brand{display:none}main{max-width:1760px;margin:0 auto;padding:28px 48px 0}main:focus{outline:none}.school-welcome{margin-bottom:26px;padding-bottom:18px;border-bottom:1px solid var(--line)}.welcome-row{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}.welcome-row h1{font-size:44px;font-weight:900;min-width:0;overflow-wrap:anywhere}.welcome-subline{display:flex;align-items:center;gap:14px;margin-top:13px;flex-wrap:wrap}.welcome-subline>p{font-size:15px;color:var(--muted)}.preview-label{font-size:10px;border:1px solid var(--line);padding:3px 7px;border-radius:4px;color:var(--muted);white-space:nowrap}.licence-pill{position:relative;display:flex;gap:7px;align-items:center;padding:8px 12px;border-radius:50px;background:color-mix(in srgb,var(--teal) 12%,var(--paper));font-size:11px;color:var(--ink);max-width:100%}.licence-pill .icon{width:17px;height:17px}.licence-pill h2,.licence-pill p{font-size:11px;font-weight:600;line-height:1.3}.licence-pill:not(.warning):not(.expired) p{position:absolute;top:calc(100% + 8px);right:0;width:260px;padding:12px;background:var(--paper);border:1px solid var(--line);box-shadow:var(--dashboard-shadow);border-radius:8px;visibility:hidden;z-index:5;color:var(--muted)}.licence-pill:hover p,.licence-pill:focus p{visibility:visible!important}.licence-pill.warning{background:var(--amber-soft)}.licence-pill.warning h2{display:none}.licence-pill.expired{background:var(--red-soft);align-items:flex-start;border-radius:12px}.licence-pill.expired p{font-weight:400;max-width:260px;font-size:10px;margin-top:3px}.pill-renew{display:flex;align-items:center;gap:4px;color:var(--ink);font-weight:800;border-left:1px solid color-mix(in srgb,var(--ink) 20%,transparent);padding-left:9px;margin-left:4px}.pill-renew .icon{width:13px;height:13px}
.feature-section{position:relative}.feature-track{display:flex;gap:22px;overflow:hidden;scroll-snap-type:x mandatory}.feature-card{flex:0 0 calc((100% - 44px)/3);min-width:0;scroll-snap-align:start}.feature-card a{color:var(--ink);display:block}.feature-card h3{font-size:17px;font-weight:800;min-height:42px}.feature-card p{font-size:14px;color:var(--muted);min-height:42px;margin-top:4px;margin-bottom:8px}.feature-card img,.poster{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;height:auto;border-radius:8px}.feature-card a:hover img{filter:brightness(1.025)}.poster{padding:18px;overflow:hidden}.levels{background:var(--poster-coral);display:flex;flex-direction:column;justify-content:center;gap:6px}.levels>span{font-size:26px;font-weight:900;line-height:1}.levels>span:nth-child(2){color:var(--poster-yellow)}.levels>span:nth-child(3){align-self:flex-end;color:var(--ink)}.levels small{font-weight:700;font-size:11px;margin-top:12px}.phone-poster{background:var(--ink);color:var(--chalk);display:flex;flex-direction:column;justify-content:center;gap:15px}.phone-poster .icon{width:55px;height:55px;color:var(--teal)}.phone-poster strong,.retrieval strong{font-weight:900;font-size:24px;line-height:1.15}.retrieval{background:var(--poster-yellow);display:flex;align-items:center;justify-content:center;gap:15px}.retrieval .icon{width:54px;height:70px;color:var(--brand)}.carousel-arrow{position:absolute;right:-21px;top:calc(50% + 24px);width:44px;height:44px;border-radius:50%!important;background:var(--teal);color:var(--ink);box-shadow:var(--dashboard-shadow)}.carousel-footer{display:flex;align-items:center;justify-content:space-between;margin-top:10px;color:var(--muted);font-size:12px}.carousel-dots{display:flex;gap:7px}.dot{width:7px;height:7px;background:var(--line);border-radius:50%!important;position:relative}.dot::before{content:'';position:absolute;inset:-8px}.dot.active{background:var(--brand)}
.school-section{padding:26px 0;border-top:1px solid var(--line);scroll-margin-top:22px}.lesson-section{margin-top:20px}.school-section h2{font-size:24px;font-weight:800;margin-bottom:12px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.section-heading h2{margin:0}.section-heading>span{font-size:13px;color:var(--muted)}.section-heading>a{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--ink)}.section-heading>a .icon{width:17px;height:17px}.lesson-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}.lesson-tile{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;min-width:0;aspect-ratio:1/1.23;border-radius:var(--dashboard-radius);color:var(--chalk);padding:22px 10px 20px;transition:transform .18s,box-shadow .18s;overflow:hidden}.tile-yellow{background:var(--tile-yellow)}.tile-green{background:var(--tile-green)}.tile-coral{background:var(--tile-coral)}.tile-sky{background:var(--tile-sky)}.tile-lilac{background:var(--tile-lilac)}.tile-teal{background:var(--tile-teal)}.lesson-tile>.icon{width:52px;height:52px;stroke-width:1.5;margin:auto 0}.lesson-tile h3{font-size:15px;font-weight:800;text-align:center;min-height:36px;display:flex;align-items:center;justify-content:center;max-width:100%}.tile-open{display:none}.lesson-tile:hover{transform:translateY(-4px);box-shadow:var(--dashboard-shadow)}.recent-list{list-style:none;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;padding:0;margin:0}.recent-list li{min-width:0}.recent-list a{display:flex;flex-direction:column;align-items:center;justify-content:center;aspect-ratio:1/1.05;border-radius:16px;text-align:center;padding:12px 8px;color:var(--chalk);font-size:14px;font-weight:800;gap:7px;background:var(--tile-teal)}.recent-list .icon{width:32px;height:32px;margin-bottom:2px}.recent-list time{font-size:11px;font-weight:500}.guide-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.guide-card{min-width:0;padding:19px 16px;border:1px solid var(--line);border-radius:8px;background:var(--paper)}.guide-card>.icon{width:28px;height:28px;color:var(--brand);margin-bottom:10px}.guide-card h3{font-size:15px;font-weight:800;line-height:1.35}.guide-card p{font-size:13px;color:var(--muted);line-height:1.6;margin-top:6px}.lower-columns{display:grid;grid-template-columns:1fr 1fr;gap:40px}.eyebrow{font-size:11px;font-weight:800;color:var(--brand);text-transform:uppercase;margin-bottom:5px}.lower-columns h2{font-size:21px}.updates h3{font-size:15px;margin-bottom:5px}.updates>div+div{margin-top:18px}.updates ul{padding-left:18px;margin:0;color:var(--muted);font-size:14px}.updates li+li{margin-top:5px}.included-list{list-style:none;margin:0;padding:0;display:grid;gap:14px}.included-list li{display:flex;align-items:flex-start;gap:10px;font-size:14px;color:var(--muted)}.included-list .icon{width:18px;height:18px;color:var(--green)}.account-layout{display:grid;grid-template-columns:1fr 1fr;gap:32px;font-size:14px;line-height:1.7}.account-layout p+p{margin-top:10px;color:var(--muted)}.account-links{display:grid;gap:12px}.account-links a{display:flex;align-items:center;justify-content:space-between;gap:8px}.account-links .icon{width:16px;height:16px}a{overflow-wrap:anywhere}.dashboard-footer{border-top:1px solid var(--line);padding:22px 48px;display:flex;align-items:center;gap:20px;justify-content:space-between;color:var(--muted);font-size:10px}.dashboard-footer>a{font-size:13px;font-weight:800;color:var(--ink);flex:none}.dashboard-footer>p{max-width:600px}.dashboard-footer>div{display:flex;gap:12px;flex:none}.loading,.error-panel{padding:60px 0}.error-panel p{margin:16px 0}.error-panel .btn{padding:12px 20px;background:var(--brand-soft);border:1px solid var(--line);border-radius:8px}#logout-error{padding:15px;background:var(--red-soft);color:var(--ink);border-radius:8px;margin-bottom:20px}.sidebar-backdrop{position:fixed;inset:0;z-index:35;border:0;background:color-mix(in srgb,var(--ink) 25%,transparent)}
body.sidebar-collapsed{--sidebar-width:88px}.sidebar-collapsed .sidebar{padding-inline:12px}.sidebar-collapsed .dashboard-logo{justify-content:center}.sidebar-collapsed .dashboard-logo>span,.sidebar-collapsed .primary-nav a>span,.sidebar-collapsed .sidebar-bottom a>span,.sidebar-collapsed .sidebar-signout>span,.sidebar-collapsed .copyright{display:none}.sidebar-collapsed .primary-nav a,.sidebar-collapsed .sidebar-bottom>a,.sidebar-collapsed .sidebar-signout{justify-content:center;padding-inline:10px}.sidebar-collapsed .sidebar-collapse .icon{transform:rotate(180deg)}
@media(min-width:1700px){:root{--sidebar-width:300px}.dashboard-topbar{height:84px;padding-inline:64px}main{padding:28px 64px 0}.welcome-row h1{font-size:54px}.welcome-subline>p{font-size:17px}.school-welcome{padding-bottom:18px;margin-bottom:24px}.feature-track{gap:28px}.feature-card{flex-basis:calc((100% - 56px)/3)}.feature-card h3{font-size:20px;min-height:48px}.feature-card p{font-size:16px;min-height:48px}.poster{padding:24px}.levels>span{font-size:36px}.levels small{font-size:15px}.phone-poster strong,.retrieval strong{font-size:32px}.school-section{padding-block:28px}.school-section h2{font-size:28px}.lesson-grid{gap:22px}.lesson-tile>.icon{width:74px;height:74px}.lesson-tile h3{font-size:20px}.guide-card{padding:25px}.guide-card h3{font-size:17px}.guide-card p{font-size:14px}.licence-pill h2,.licence-pill p{font-size:13px}.licence-pill{padding:10px 15px;font-size:13px}.dashboard-footer{padding-inline:64px}}
@media(max-width:1199px) and (min-width:701px){:root{--sidebar-width:88px}.sidebar{padding-inline:12px}.dashboard-logo{justify-content:center}.dashboard-logo>span,.primary-nav a>span,.sidebar-bottom a>span,.sidebar-signout>span,.copyright{display:none}.primary-nav a,.sidebar-bottom>a,.sidebar-signout{justify-content:center;padding-inline:10px}.sidebar-collapse{display:none}main{padding:30px 32px 0}.dashboard-topbar{padding-inline:32px}.welcome-row h1{font-size:38px}.lesson-grid,.recent-list{grid-template-columns:repeat(3,minmax(0,1fr))}.lesson-tile{aspect-ratio:1.2}.guide-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-footer{padding-inline:32px}}
@media(max-width:700px){:root{--sidebar-width:0px}.sidebar{width:272px;transform:translateX(-100%);transition:transform .2s;padding:30px 20px 20px;overflow-y:auto}.sidebar-collapse{display:none}.sidebar-open .sidebar{transform:translateX(0)}.dashboard-logo{margin-bottom:24px}.primary-nav{gap:6px}.sidebar-bottom{padding-top:28px}.dashboard-topbar{height:82px;padding:0 20px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px}.mobile-menu{display:inline-flex;width:28px;height:44px}.mobile-brand{display:block;font-size:14px;color:var(--ink);font-weight:800;min-width:0}.top-actions{gap:10px}.round-action{min-width:34px}.round-action>span{width:34px;height:34px}.round-action .icon{width:19px;height:19px}.round-action small{font-size:9px}main{padding:28px 22px 0}.welcome-row{gap:14px}.welcome-row h1{font-size:34px}.welcome-subline>p{font-size:13px}.school-welcome{margin-bottom:26px;padding-bottom:22px}.licence-pill{font-size:10px}.licence-pill h2,.licence-pill p{font-size:10px}.feature-card{flex-basis:100%}.feature-track{gap:16px}.feature-card h3{font-size:18px;min-height:0}.feature-card p{font-size:13px;min-height:0;margin-bottom:14px}.feature-card img,.poster{aspect-ratio:2.1}.levels>span{font-size:28px}.carousel-arrow{right:-14px;top:calc(50% + 24px);width:38px;height:38px}.carousel-footer{margin-top:16px}.lesson-section{margin-top:24px}.school-section{padding:28px 0}.school-section h2{font-size:22px}.section-heading{align-items:start}.section-heading>span{display:none}.lesson-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.lesson-tile{aspect-ratio:1/1.05;padding:17px 10px 15px}.lesson-tile h3{font-size:16px;min-height:27px}.lesson-tile>.icon{width:55px;height:55px}.recent-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.recent-list a{font-size:11px;aspect-ratio:1/1.3;border-radius:12px;padding:10px 6px}.recent-list .icon{width:28px;height:28px}.guide-grid{grid-template-columns:1fr}.guide-card{display:grid;grid-template-columns:30px minmax(0,1fr);gap:0 15px;padding:19px}.guide-card>.icon{grid-row:1/3;margin:0}.guide-card h3{font-size:15px}.guide-card p{font-size:13px;grid-column:2}.lower-columns,.account-layout{grid-template-columns:1fr;gap:0}.lower-columns h2{font-size:22px}.account-links{margin-top:22px}.dashboard-footer{padding:24px 22px;display:grid;gap:12px;font-size:10px}.dashboard-footer>div{gap:20px}.sidebar-collapsed .sidebar{padding:30px 20px 20px}.sidebar-collapsed .dashboard-logo>span,.sidebar-collapsed .primary-nav a>span,.sidebar-collapsed .sidebar-bottom a>span,.sidebar-collapsed .sidebar-signout>span,.sidebar-collapsed .copyright{display:revert}.sidebar-collapsed .dashboard-logo,.sidebar-collapsed .primary-nav a,.sidebar-collapsed .sidebar-bottom>a,.sidebar-collapsed .sidebar-signout{justify-content:flex-start}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

.recent-list .tile-yellow{background:var(--tile-yellow)}.recent-list .tile-green{background:var(--tile-green)}.recent-list .tile-coral{background:var(--tile-coral)}.recent-list .tile-sky{background:var(--tile-sky)}.recent-list .tile-lilac{background:var(--tile-lilac)}.recent-list .tile-teal{background:var(--tile-teal)}

/* Keep lesson shortcuts prominent and account controls in the shared brand. */
.sidebar{overflow-y:auto;overflow-x:clip}.sidebar-collapse{position:fixed;left:calc(var(--sidebar-width) - 15px);right:auto}.sidebar-collapsed .sidebar-collapse{left:73px}
.feature-card img,.poster{aspect-ratio:2.1}.poster{min-height:0}.feature-track{align-items:stretch}.feature-card h3{margin-bottom:0}.welcome-subline{margin-top:8px}.school-welcome{margin-bottom:20px}.lesson-section{margin-top:16px}.lesson-section h2{font-size:28px}.guide-card p{font-size:14px}.dashboard-notices:empty{display:none}.dashboard-notices{display:grid;gap:10px;margin-bottom:20px}.account-notice{display:flex;align-items:center;gap:16px;padding:12px 16px;background:var(--brand-soft);border-left:3px solid var(--teal);border-radius:8px;font-size:15px}.account-notice p{flex:1;min-width:0}.notice-dismiss{width:36px;height:36px;flex:none;font-size:26px}.account-settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;font-size:15px}.account-settings-grid>div{min-width:0}.account-settings-grid h3{font-size:19px;margin-bottom:10px}.school-login dl{margin:0 0 12px}.school-login dt{font-size:13px;color:var(--muted)}.school-login dd{margin:3px 0 0;font-weight:800;font-size:18px;overflow-wrap:anywhere}.school-login p{color:var(--muted);overflow-wrap:anywhere}.billing-settings{margin-top:26px}.account-command{background:var(--ink);color:var(--chalk);padding:11px 16px;min-height:44px;font-weight:700;border-radius:8px!important;text-align:center;max-width:100%;white-space:normal}.account-command:hover{background:var(--slate-2)}.account-command:disabled{cursor:not-allowed}.account-settings-grid label:not(.password-visibility){display:block;font-weight:700;margin:12px 0 5px}.account-settings-grid input:not([type=checkbox]){font:inherit;width:100%;min-width:0;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink)}.field-hint{font-size:13px;color:var(--muted);margin-top:5px}.password-visibility{display:flex;align-items:center;gap:8px;margin:14px 0;font-size:14px}.password-visibility input{width:18px;height:18px;accent-color:var(--brand)}.password-status{padding:12px;margin-top:12px;background:var(--red-soft);border-radius:8px;overflow-wrap:anywhere}.password-status.success{background:color-mix(in srgb,var(--teal) 12%,var(--paper))}.account-support{border-top:1px solid var(--line);padding-top:22px;margin-top:26px;color:var(--muted)}
@media(min-width:1700px){.school-welcome{margin-bottom:24px}.feature-card img,.poster{aspect-ratio:2.3}.guide-card p{font-size:15px}.lesson-section h2{font-size:30px}}
@media(max-width:700px){.feature-card h3{min-height:0}.feature-card p{min-height:0;margin-bottom:8px}.feature-card img,.poster{aspect-ratio:2.1}.school-welcome{padding-bottom:16px;margin-bottom:18px}.lesson-section{margin-top:16px}.lesson-section h2{font-size:25px}.account-settings-grid{grid-template-columns:1fr;gap:26px}.account-support{gap:0}.account-notice{font-size:14px;padding:12px}.sidebar-collapse{display:none}.poster{padding:16px}.levels{gap:4px}.levels small{margin-top:4px}.phone-poster{gap:6px}.phone-poster .icon{width:34px;height:34px}.retrieval .icon{width:38px;height:48px}}
