@font-face{font-family:system;src:local("Segoe UI")}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#16314f;background:#f4f7fb;font:15px/1.6 system,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #e79b2d;outline-offset:3px}h1,h2,h3,p{margin-top:0}h1{font-size:30px;line-height:1.25;letter-spacing:-.8px;margin-bottom:10px}h2{font-size:19px;line-height:1.4}h3{font-size:16px}small{display:block}input:not([type=radio]):not([type=hidden]),select{width:100%;border:1px solid #d7e1ed;border-radius:9px;background:white;color:#16314f;padding:11px 13px}label{display:block;font-size:13px;font-weight:650;margin:0 0 7px}input{margin-bottom:18px}.muted{color:#61748a}.eyebrow{font-size:11px;font-weight:750;letter-spacing:1.6px;color:#567797;margin-bottom:12px}.brand{display:flex;gap:11px;align-items:center;font-size:23px;font-weight:750;letter-spacing:-.6px}.brand small{font-size:8px;letter-spacing:1.7px;font-weight:650;color:#718297}.brand-mark{display:grid;place-items:center;background:#103c70;color:#ffc264;font-size:31px;width:44px;height:48px;border-radius:13px;font-family:Georgia,serif}.primary,.secondary,.hero-button{display:inline-flex;align-items:center;justify-content:center;gap:18px;border-radius:9px;padding:11px 17px;font-weight:650;font-size:13px;border:1px solid transparent}.primary{background:#164f8e;color:white}.primary:hover{background:#0b3868}.secondary{background:white;color:#174f83;border-color:#d5e0ec}.full{width:100%;margin-top:9px}.notice{padding:15px 20px;border-radius:10px;background:#e5f4f0;border:1px solid #c3e5da;color:#236554;margin-bottom:24px}.notice.error{background:#fff0ed;color:#982f2b;border-color:#f2cbc4}.help-text{font-size:12px;color:#718095;line-height:1.8;margin:22px 0 0}.login-page{min-height:100vh;display:grid;place-items:center;background:#eaf0f7;padding:36px}.login-wrap{width:min(1090px,100%);min-height:650px;display:grid;grid-template-columns:1.1fr 1fr;background:white;border-radius:24px;overflow:hidden;box-shadow:0 18px 70px #1d3c6812}.login-story{background:radial-gradient(ellipse at 90% 55%,#215e8f,transparent 70%),#0d315c;padding:44px;display:flex;flex-direction:column;justify-content:space-between;color:white;position:relative}.brand-light small{color:#b1cce3}.brand-light .brand-mark{background:#ffffff14;border:1px solid #ffffff25}.login-story h1{font-family:Georgia,serif;font-size:43px;font-weight:400;line-height:1.25;letter-spacing:-1px}.login-story .eyebrow{color:#ffcd80}.story-text{font-size:15px;color:#c4d6e7;max-width:380px}.branch-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}.branch-pills span{font-size:10px;border:1px solid #ffffff30;padding:5px 10px;border-radius:20px;color:#deebf7}.story-footer{font-size:12px;color:#a9c1d9;margin:0}.login-form{padding:64px 48px}.login-form h2{font-size:27px;letter-spacing:-.7px}.role-picker{display:flex;gap:12px;border:0;padding:0;margin:30px 0 23px}.role-picker legend{font-size:12px;font-weight:650;margin-bottom:10px}.role-picker label{flex:1;border:1px solid #dbe4ed;border-radius:9px;padding:10px;margin:0}.role-picker input{accent-color:#174f83;margin:0 6px 0 0}.shell{display:flex;min-height:100vh}.sidebar{width:242px;flex-shrink:0;background:white;border-right:1px solid #e3eaf2;padding:30px 20px;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;z-index:20}.sidebar .brand{margin-bottom:42px}.nav-caption{font-size:9px;font-weight:700;letter-spacing:1.4px;color:#8190a1;margin:24px 11px 10px}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 13px;border-radius:9px;font-size:12px;margin-bottom:5px}.nav-item span{font-size:20px;line-height:1}.nav-item.selected{background:#eaf2fb;color:#155294;font-weight:700}.nav-item.disabled{color:#8995a4}.sidebar-bottom{margin-top:auto;padding-top:30px}.sidebar-bottom p{font-family:Georgia,serif;font-style:italic;color:#8b98a9;font-size:14px;margin-left:10px}.logout{border:0;background:transparent;color:#576d86;font-size:12px;padding:10px}.main-area{margin-left:242px;flex:1;min-width:0}.topbar{display:flex;justify-content:space-between;align-items:center;background:#ffffffd9;border-bottom:1px solid #e3eaf2;padding:17px 40px;gap:20px}.top-left{display:flex;gap:14px;align-items:center}.top-left .muted{font-size:10px;display:block}.top-left strong{font-size:13px}.user-info{display:flex;align-items:center;gap:10px}.user-info strong{font-size:12px}.user-info small{font-size:10px;color:#72859a}.avatar{background:#eaf1f9;color:#215486;border:1px solid #dce6f0;border-radius:50%;width:38px;height:38px;display:grid;place-items:center;font-weight:700}.content{max-width:1300px;margin:auto;padding:36px 40px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.page-heading p:last-child{margin:0;font-size:13px}.branch-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.branch-form label{margin:0}.branch-form select{width:auto;padding:8px;font-size:12px}.branch-form button{padding:8px 12px}.branch-label{background:#fff0d6;color:#976012;padding:8px 16px;border-radius:24px;font-size:13px;font-weight:700}.hero{background:linear-gradient(110deg,#10365f,#145987);border-radius:17px;padding:30px 34px;display:flex;justify-content:space-between;overflow:hidden;position:relative;color:white;min-height:240px}.hero-kicker{font-size:10px;letter-spacing:1.8px;color:#d2e6f6}.hero h2{font-family:Georgia,serif;font-size:32px;font-weight:400;line-height:1.18;margin:15px 0}.hero p{font-size:12px;color:#c4dcee;max-width:430px}.hero-button{background:#ffcc7a;color:#463a27;padding:9px 16px;font-size:12px}.math-art{width:210px;flex-shrink:0;align-self:center;position:relative;margin-right:15px}.formula{font-family:Georgia,serif;font-style:italic;color:#a4c9e4;font-size:28px;display:block;text-align:right}.formula.lower{font-size:22px;letter-spacing:12px;color:#f7c373;text-align:left;margin-top:5px}.plot{height:90px;border-bottom:1px solid #77a7c8;border-left:1px solid #77a7c8;margin:0 30px;transform:skew(-10deg);position:relative}.plot span{display:block;width:130px;height:85px;border-bottom:3px solid #f7c373;border-radius:0 0 70% 70%;transform:rotate(-20deg);position:absolute;top:-22px;left:-8px}.student-hero{background:linear-gradient(105deg,#0a3563,#2279a5)}.subscription{font-size:11px;background:#ffffff14;border:1px solid #ffffff20;padding:8px 12px;display:inline-block;border-radius:7px;color:#e6f7f6}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:27px 0 15px}.section-heading h2{margin:0}.section-heading>.muted{font-size:11px}.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.resource-card{display:block;background:#fff;border:1px solid #e1e8f1;border-radius:13px;padding:20px 22px;transition:border-color .2s}.active-card:hover{border-color:#74a0c7}.resource-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:11px;font-size:25px;margin-bottom:13px}.blue{background:#e8f2ff;color:#1b78c9}.orange{background:#fff0d8;color:#d98b23}.teal{background:#e1f5ef;color:#149681}.purple{background:#edeafd;color:#7160b9}.resource-card h3{margin:0 0 6px;font-size:14px}.resource-card p{font-size:11px;color:#78879b;margin-bottom:12px}.resource-card b{color:#3d566f}.coming{font-size:9px;padding:3px 7px;border-radius:5px;background:#f4f6f9;color:#8b97a5}.card-link{font-size:11px;font-weight:650;color:#176799}.lower-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:24px}.panel{background:white;border:1px solid #e1e8f1;border-radius:14px;padding:24px;min-width:0}.panel .section-heading{margin-top:0}.panel p.muted{font-size:13px}.tiny-tag{font-size:10px;background:#eaf1f8;padding:3px 9px;border-radius:20px}.empty{text-align:center;padding:18px 10px;color:#8797a9}.empty>span{font-size:31px;color:#a9bad0}.empty h3{font-size:13px;color:#5d7288;margin:7px 0}.empty p{font-size:12px;margin-bottom:0}.text-link{font-size:12px;color:#1e68a1;font-weight:650}.lesson-list{padding-left:22px;font-size:13px;color:#5b7187}.lesson-list li{padding:8px}.result-list{list-style:none;padding:0;font-size:12px}.result-list li{display:flex;gap:15px;justify-content:space-between;padding:12px 0;border-bottom:1px solid #e9eef5}.result-list small{font-size:10px;color:#8191a2}.footer{padding:5px 40px 25px;display:flex;justify-content:space-between;gap:20px;color:#8897a8;font-size:10px}.student-form{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px}.student-form select{margin-bottom:18px}.form-end{grid-column:1/-1;display:flex;justify-content:space-between;gap:22px;align-items:center}.form-end p{font-size:12px;margin:0;max-width:430px}.roster{margin-top:24px}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px;white-space:nowrap}th{font-size:10px;letter-spacing:.7px;color:#6e8299;background:#f6f8fb;font-weight:650}td,th{padding:13px;border-bottom:1px solid #edf1f6}td small{font-size:10px;color:#8191a3}.status{padding:4px 9px;font-size:10px;border-radius:15px}.on{background:#e2f5eb;color:#298259}.off{background:#f4ebea;color:#a3645d}.menu-toggle{display:none;border:1px solid #dde6ee;background:#fff;border-radius:7px;font-size:21px;padding:0 9px;color:#21466c}@media(min-width:1550px){.resource-grid{grid-template-columns:repeat(3,1fr)}.hero{min-height:270px}.hero h2{font-size:38px}}@media(max-width:1100px){.sidebar{width:210px;padding:24px 15px}.main-area{margin-left:210px}.content{padding:28px 25px}.topbar{padding:17px 25px}.hero{padding:28px}.math-art{width:150px;margin-right:0}.resource-card{padding:18px}.page-heading{align-items:flex-start}.branch-form{max-width:165px}.branch-form label{display:none}.login-form{padding:48px 32px}.login-story{padding:35px}}@media(max-width:850px){.sidebar{transform:translateX(-100%);transition:transform .2s;width:230px;box-shadow:15px 0 50px #17324d18}.sidebar.open{transform:translateX(0)}.main-area{margin-left:0}.menu-toggle{display:block}.content{padding:25px}.login-wrap{grid-template-columns:1fr 1fr}.login-story h1{font-size:33px}.login-form{padding:35px 24px}.login-form h2{font-size:24px}.login-story{padding:30px}.login-page{padding:22px}}@media(max-width:600px){.login-page{padding:0;display:block;background:white}.login-wrap{display:block;border-radius:0;min-height:100vh}.login-story{padding:26px;gap:24px}.login-story h1{font-size:29px}.login-story .eyebrow{margin-bottom:8px}.login-story .brand{font-size:21px}.story-text,.story-footer,.branch-pills{display:none}.login-story h1{margin:0}.login-form{padding:30px 26px}.login-form h2{font-size:24px}.role-picker{margin-top:22px}.topbar{padding:14px 18px}.user-info>div{display:none}.content{padding:25px 18px}.page-heading{display:block;margin-bottom:20px}h1{font-size:25px}.page-heading .eyebrow{font-size:9px}.branch-form{max-width:none;margin-top:17px}.branch-label{display:inline-block;margin-top:15px;font-size:11px}.hero{padding:25px 23px;min-height:215px}.hero h2{font-size:28px}.hero p{font-size:11px;max-width:280px}.math-art{display:none}.hero-kicker{font-size:9px}.subscription{font-size:10px;line-height:1.8}.resource-grid{grid-template-columns:1fr 1fr;gap:11px}.resource-card{padding:16px 14px}.resource-card h3{font-size:12px}.resource-card p{font-size:10px}.resource-icon{width:35px;height:35px;font-size:23px}.section-heading h2,.panel h2{font-size:17px}.lower-grid{grid-template-columns:1fr;gap:15px}.panel{padding:20px}.footer{padding:8px 18px 22px;font-size:9px}.footer span{display:none}.student-form{grid-template-columns:1fr;gap:0}.form-end{display:block}.form-end button{width:100%;margin-top:15px}.roster .section-heading{display:block}.user-info{flex-shrink:0}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.menu-close{display:none}@media(max-width:850px){.sidebar{visibility:hidden;overflow-y:auto}.sidebar.open{visibility:visible}.menu-close{display:block;align-self:flex-end;border:0;background:transparent;color:#365a7d;font-size:28px;line-height:1;padding:0 5px;margin-bottom:12px}.sidebar .brand{margin-bottom:20px}}

.phone-help{margin:-10px 0 20px}.phone-edit{margin-top:12px;white-space:normal;min-width:195px}.phone-edit input{margin-bottom:8px!important}

textarea{width:100%;font:inherit;color:#16314f;border:1px solid #d7e1ed;border-radius:9px;padding:12px;resize:vertical;margin-bottom:18px}.library-filter{margin-bottom:24px}.lesson-block{margin-top:20px}.lesson-description{font-size:14px;color:#61748a}.support-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.support-tile{border:1px solid #e0e9f1;border-radius:11px;padding:17px;display:flex;align-items:center;gap:14px}.support-tile:hover{border-color:#3987ba;background:#f7fbff}.support-tile .resource-icon{flex-shrink:0;margin:0}.support-tile h3{margin:3px 0 5px}.support-tile .eyebrow{font-size:9px}.support-tile small{color:#7b8da1;font-size:11px}.support-tile>span:last-child{margin-left:auto}.programme-grid{display:grid;grid-template-columns:230px 1fr;gap:22px;align-items:start}.lesson-menu .primary{margin:0 0 15px}.lesson-menu-link{display:block;border-radius:8px;padding:12px;font-size:13px;overflow-wrap:anywhere}.lesson-menu-link.current{background:#eaf3fb;color:#185482}.lesson-menu-link small{font-size:10px;color:#798a9e}.branch-checkboxes{border:1px solid #e2e9f0;border-radius:9px;display:flex;gap:18px;margin:0 0 18px;padding:12px}.branch-checkboxes legend{font-size:12px;color:#667d94}.branch-checkboxes input,.check-row input{margin:0!important;width:auto!important}.check-row{display:flex;gap:10px;align-items:center;margin:20px 0}.check-row input,.branch-checkboxes input{accent-color:#1b679d}.programme-grid .help-text{margin:0 0 20px}.programme-grid select{margin-bottom:20px}.programme-grid .primary{margin-top:12px}.programme-grid .upload-help{margin-top:-5px}.page-order{margin:10px 0}.page-order>div{display:flex;align-items:center;gap:18px;justify-content:space-between;border-bottom:1px solid #eaf0f6;padding:8px 0}.page-order label{overflow-wrap:anywhere;min-width:0}.page-order input{width:75px!important;flex-shrink:0;margin:0!important}.reading-zone{position:relative;max-width:1000px;margin:auto}.course-page{margin:0 0 25px;border:1px solid #dce5ef;background:white;border-radius:10px;overflow:hidden}.course-page img{display:block;width:100%;height:auto}.course-page figcaption{padding:10px 16px;font-size:12px;color:#697d94;background:#f7faff}.reading-mask{display:none}.reading-zone.masked .course-page{visibility:hidden}.reading-zone.masked .reading-mask{display:grid;position:fixed;inset:0;place-items:center;background:#10263f;color:white;padding:24px;z-index:100}.reading-zone[data-protected=true]{user-select:none}.programme-grid .panel h2{margin-bottom:20px}@media(max-width:1100px){.programme-grid{grid-template-columns:190px 1fr}.support-grid{grid-template-columns:1fr}}@media(max-width:650px){.programme-grid{grid-template-columns:1fr}.lesson-menu nav{max-height:200px;overflow-y:auto}.support-tile{padding:14px}.branch-checkboxes{gap:15px}.course-page{border-radius:5px}.programme-grid .panel{padding:18px}}@media print{.reading-zone[data-protected=true]{display:none}}
.support-tile>div{min-width:0}.support-tile h3,.page-heading h1{overflow-wrap:anywhere}.programme-grid>div{min-width:0}

.exercise-choice,.series-row{display:flex;align-items:center;gap:16px;padding:12px 0;border-bottom:1px solid #e5edf5}.exercise-choice>.check-row{flex:1;margin:0}.exercise-choice>div{width:85px;flex-shrink:0}.exercise-choice input[type=number]{margin:0}.series-row>div{flex:1;min-width:0;overflow-wrap:anywhere}.series-row small{font-size:11px;color:#73869b}.exercise-details summary{cursor:pointer;font-weight:650;overflow-wrap:anywhere}.exercise-details[open] summary{margin-bottom:20px}.exercise-choice .check-row{align-items:flex-start;overflow-wrap:anywhere}
.page-order.image-replacements>div{display:grid;grid-template-columns:minmax(0,1fr) 90px;gap:10px 18px}.page-order.image-replacements input[type=file]{grid-column:1/-1;width:100%!important;min-width:0}.page-order.image-replacements label[for^="replace-"]{grid-column:1/-1;margin-bottom:0}
.account-options{border-top:1px solid #e0e9f1;margin-top:24px;padding-top:18px}.account-options .secondary{display:block;text-align:center}.student-edit{min-width:220px;max-width:360px;margin-top:14px}.student-edit summary{cursor:pointer;color:#185482;font-weight:600}.student-edit form{margin-top:14px}.student-edit input,.student-edit select{width:100%}.login-form select{margin-bottom:18px}
.student-edit{white-space:normal}.student-edit .help-text{margin:8px 0 14px}
.lesson-editor>summary{cursor:pointer;list-style:none;width:fit-content}.lesson-editor>summary::-webkit-details-marker{display:none}.lesson-editor>summary::after{content:"+";font-size:18px;line-height:1}.lesson-editor[open]>summary::after{content:"−"}.lesson-editor[open]>summary{margin-bottom:24px}
.viewer-help{margin:0 0 18px}[data-page-viewer] .course-page img{cursor:zoom-in}[data-page-viewer] .course-page img:focus-visible{outline:3px solid #e79b2d;outline-offset:-3px}body.viewer-open{overflow:hidden}.page-viewer{position:fixed;inset:0;width:100vw;height:100vh;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:#0b1423;color:#fff;overflow:hidden}.page-viewer[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto}.page-viewer::backdrop{background:#0b1423}.viewer-toolbar,.viewer-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px max(16px,env(safe-area-inset-right)) 12px max(16px,env(safe-area-inset-left));background:#111f33}.viewer-toolbar{padding-top:max(12px,env(safe-area-inset-top))}.viewer-controls{padding-bottom:max(12px,env(safe-area-inset-bottom))}.page-viewer button{background:#213b59;color:white;border:1px solid #6c829a;border-radius:8px;padding:10px 16px;min-height:44px}.page-viewer button:disabled{opacity:.35;cursor:default}.viewer-stage{min-height:0;min-width:0;display:flex;align-items:center;justify-content:center;overflow:hidden;touch-action:pan-y pinch-zoom}.viewer-image{display:block;width:100%;height:100%;object-fit:contain;user-select:none;-webkit-user-drag:none}.viewer-image[hidden]{display:none}.viewer-error{padding:24px;text-align:center}.viewer-masked .viewer-stage{visibility:hidden}@media print{.page-viewer{display:none!important}}
.pdf-reader{background:#152236;border-radius:12px;overflow:hidden;color:#fff}.pdf-toolbar{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;padding:12px}.pdf-toolbar button{min-width:44px;min-height:44px}.pdf-toolbar button:disabled{opacity:.45;cursor:default}.pdf-stage{height:70vh;height:70dvh;overflow:auto;padding:16px;overscroll-behavior:contain;touch-action:pan-y pinch-zoom}.pdf-stage canvas{display:block;margin:auto;background:white;max-width:none;user-select:none}.pdf-audio{padding:12px 16px;background:#eaf0f7;color:#16314f}.pdf-audio audio{display:block;width:min(100%,650px)}.pdf-audio .help-text{margin:6px 0 0}.pdf-fullscreen{position:fixed;inset:0;z-index:1000;width:100%;height:100vh;height:100dvh;display:flex;flex-direction:column;border-radius:0;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.pdf-fullscreen .pdf-stage{flex:1;min-height:0;height:auto}.pdf-fullscreen .pdf-toolbar,.pdf-fullscreen .pdf-audio{flex-shrink:0}.pdf-fullscreen-open{overflow:hidden}.pdf-masked canvas{visibility:hidden}@media print{.pdf-reader{display:none!important}}
.pdf-stage.pdf-zoomed{touch-action:pan-x pan-y pinch-zoom}
.recharge-copy-row{cursor:pointer}.recharge-copy-row:hover,.recharge-copy-row:focus-within{background:#eef5fc}.recharge-copy-button{border:0;background:transparent;color:#185482;font:inherit;font-weight:650;padding:8px;cursor:pointer}.clipboard-copy-helper{position:fixed;left:-9999px;top:0}
