:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#25334b;background:#f5f7fb;--blue:#246bc2;--lavender:#8564b1;--coral:#b4513e;--line:#dce3ee}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}h1,h2,h3,p{margin:0}p{line-height:1.65}h1{font-size:42px;letter-spacing:-1.4px;line-height:1.14}h2{font-size:26px;letter-spacing:-.6px}h3{font-size:19px}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #a288c4;outline-offset:4px}[hidden]{display:none!important}header{height:88px;padding:0 5%;display:flex;align-items:center;gap:35px;background:#fff;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;font-size:28px;font-weight:750;letter-spacing:-1px;white-space:nowrap;gap:6px}.brand img{width:42px;height:42px;margin-right:8px}.brand span{font-weight:400;color:#68768b}.brand b{color:var(--coral);margin-left:-6px}nav{display:flex;gap:26px;margin-left:auto;font-size:15px}nav a{padding:14px 0}nav a.active{color:var(--blue);border-bottom:2px solid var(--coral)}#identity{font-size:13px;color:#68768b;display:flex;gap:17px;align-items:center}.development{padding:10px 5%;background:#ece8f5;color:#6c5b86;font-size:13px;display:flex;gap:17px;align-items:center}.development span{font-size:11px;font-weight:750;letter-spacing:1px}main{max-width:1390px;margin:auto;padding:35px 5% 45px;min-height:calc(100vh - 235px);outline:none}.eyebrow{font-size:12px;letter-spacing:1.5px;font-weight:650;color:#677b98;margin-bottom:12px}.lead{font-size:17px;color:#64758e;margin-top:13px;max-width:760px}.heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;gap:20px}.button,button.primary{display:inline-flex;align-items:center;justify-content:center;gap:18px;border:1px solid transparent;background:var(--blue);color:white;font-size:15px;font-weight:600;padding:13px 21px;min-height:46px;border-radius:6px}.button:hover,button.primary:hover{background:#205b9e}.button.secondary{background:white;border-color:#cbd7e8;color:#315f98}.quiet{background:none;border:0;color:#526b8c;padding:7px 0;font-size:14px;text-decoration:underline;text-underline-offset:4px}.tag{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.8px;color:#785a9b;background:#f0eaf7;padding:7px 10px;border-radius:4px}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.card{background:#fff;border:1px solid var(--line);border-radius:11px;overflow:hidden}.card-body{padding:25px 27px}.card h2{margin:13px 0}.card p{font-size:15px;color:#66768c}.card .actions{margin-top:22px}.art{height:140px;background:#eaf2ff;padding:12px 30px;display:flex;align-items:center;justify-content:space-between;color:#2a62ac}.art.quiz{background:#f0eaf7;color:#8564b1}.art svg{height:120px;max-width:240px}.art .math{font:italic 46px Georgia,serif}.meta{font-size:13px;color:#7b899e;display:flex;gap:15px;margin:19px 0}.actions{display:flex;gap:13px;align-items:center;flex-wrap:wrap}.subtle{font-size:14px;color:#728199}.section-note{border-left:3px solid #c7b8dd;padding:12px 20px;margin-top:25px;font-size:14px;color:#6a768a}.back{display:inline-block;font-size:14px;color:#64768e;margin-bottom:22px}.panel{background:#fff;border:1px solid var(--line);border-radius:10px;padding:28px}.form-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:55px;align-items:start}.form-layout h1{font-size:38px}.field{margin:18px 0}.field label{font-size:14px;font-weight:600;display:block;margin-bottom:8px}input,select,textarea{width:100%;border:1px solid #c8d4e5;border-radius:5px;padding:12px;color:#2b3e5c;background:#fff}textarea{resize:vertical;line-height:1.6;min-height:125px}input[type=checkbox],input[type=radio]{width:auto}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.hint{font-size:13px;color:#728199;margin-top:7px}.row-card{display:flex;align-items:center;justify-content:space-between;gap:25px;background:#fff;border:1px solid var(--line);border-radius:9px;padding:25px 27px;margin-bottom:16px}.row-card h2{font-size:23px;margin:7px 0}.row-card p{font-size:14px;color:#697b95}.row-card .actions{flex-shrink:0}.empty{background:#fff;border:1px dashed #bdcce1;border-radius:10px;padding:42px;color:#64768e;text-align:center}.empty h2{color:#3e5879;margin-bottom:9px}.empty .button{margin-top:20px}.badge{font-size:12px;padding:6px 9px;background:#edf2fa;color:#466b9b;border-radius:4px;display:inline-block}.badge.submitted{background:#eee8f6;color:#765a99}.list-head{display:flex;gap:20px;align-items:center;justify-content:space-between;margin-bottom:20px}table{width:100%;border-collapse:collapse;background:#fff}th,td{text-align:left;padding:15px;border-bottom:1px solid var(--line);font-size:14px}th{font-size:11px;letter-spacing:1px;color:#728199;background:#f1f4f9}td .quiet{font-size:14px}.table-wrap{border:1px solid var(--line);border-radius:9px;overflow:hidden}.login{max-width:900px;margin:25px auto;display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.login h1{font-size:45px}.login .panel{padding:28px}.login .button{display:flex;width:100%;margin-top:15px}.login h2{font-size:23px;margin:15px 0}.lesson-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.lesson-head h1{font-size:34px}.quiz-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:26px}.question{margin-bottom:20px;padding:27px;background:#fff;border:1px solid var(--line);border-radius:9px}.question h2{font-size:20px;line-height:1.5;margin:10px 0 19px}.question-number{font-size:12px;font-weight:600;color:#8a729e;letter-spacing:1px}.option{display:flex;gap:12px;padding:13px 14px;border:1px solid #d9e2ee;border-radius:6px;margin-top:10px;font-size:16px;line-height:1.5;cursor:pointer}.option:has(input:checked){border-color:#6f99cf;background:#eef4fd}.option input{accent-color:var(--blue)}.quiz-side{position:sticky;top:24px;height:fit-content}.quiz-side p{font-size:14px;color:#697b95;margin:12px 0}.quiz-side .button{width:100%;margin-top:16px}.save-indicator{font-size:13px;line-height:1.5;padding:12px;border-radius:5px;background:#eef3fc;color:#376699}.warning{background:#fdf0e8;padding:14px;border-radius:5px;font-size:14px;color:#9b573d;margin:17px 0}.review-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:25px}.review-side{height:fit-content;position:sticky;top:20px}.answer{white-space:pre-wrap;overflow-wrap:anywhere;font-size:16px;line-height:1.65;color:#344b6c;border-left:3px solid #afc6e7;padding:12px 17px;background:#f5f8fc}.question small{display:block;color:#8b789b;margin-top:12px}.evidence{margin-top:20px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:15px;background:#f8f9fc;border-radius:7px;padding:15px}.evidence svg{width:100%;max-height:180px}.evidence .formula{font-size:18px;color:#4a668c}.review-side h2{font-size:23px}.review-side .button{width:100%}.review-side details{border-top:1px solid var(--line);margin-top:20px;padding-top:16px;font-size:14px}.review-side summary{cursor:pointer;color:#5c7595}.feedback{background:#f1ecf8;border:1px solid #dfd3ec;border-radius:8px;padding:22px;margin:22px 0}.feedback h2{font-size:22px;margin-bottom:8px}.feedback p{white-space:pre-wrap;overflow-wrap:anywhere}.score{font-size:28px;font-weight:650;color:#795b9d;margin:12px 0}.checkbox{display:flex;gap:10px;align-items:center;font-size:14px;margin:20px 0}.status{max-width:1180px;margin:0 auto 15px;font-size:14px;color:#576f90;min-height:23px;padding:0 22px}.status.error{color:#a54432}footer{display:flex;justify-content:space-between;gap:20px;padding:20px 5%;border-top:1px solid var(--line);font-size:12px;color:#77869b}.skip{position:fixed;transform:translateY(-200%);background:#fff;padding:10px;z-index:20}.skip:focus{transform:none}.small-screen{display:none}.math-tex{display:inline-block;line-height:0;white-space:nowrap}.math-tex svg{display:inline-block}button:disabled,input:disabled,textarea:disabled{cursor:default}#confirm-delivery{padding-top:17px;border-top:1px solid var(--line);margin-top:16px}#confirm-delivery .button{margin-top:10px}.count{font:italic 22px Georgia,serif;color:#8d76aa}.history{margin-top:14px;font-size:13px}.history a{display:inline-block;margin-right:14px;color:var(--blue);text-decoration:underline}@media(max-width:1150px){header{gap:20px}.brand{font-size:25px}nav{gap:16px}.review-layout{grid-template-columns:minmax(0,1fr) 310px}.review-side{padding:22px}.form-layout{gap:30px}.development{font-size:12px}}@media(max-width:999px){#desktop{display:none}.small-screen{display:grid;place-content:center;text-align:center;min-height:100vh;padding:30px;gap:20px}.small-screen h1{font-size:32px}.small-screen p{max-width:450px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.print-only{display:none}.review-side textarea{min-height:180px}
@media print{@page{size:A4;margin:16mm}body{background:#fff;color:#17253b}#desktop{display:block!important}.small-screen,.development,header nav,#identity,.skip,.back,.review-side,footer,#status,.review-layout details{display:none!important}header{height:auto;padding:0 0 12px;border-bottom:1px solid #ccc}.brand{font-size:22px}main{padding:18px 0;min-height:0;max-width:none}.heading h1{font-size:25px}.heading{margin-bottom:15px}.lead{font-size:13px}.review-layout{display:block}.question{padding:15px 0;border:0;border-bottom:1px solid #ddd;border-radius:0;break-inside:avoid}.question h2{font-size:15px}.answer{font-size:13px}.print-only{display:block}.feedback{break-inside:avoid}.feedback p{font-size:13px}.feedback h2{font-size:18px}.warning{background:none;padding:0}.evidence{break-inside:avoid}.review-layout details{display:block!important}.review-layout details summary{display:none!important}.review-layout details>*{display:block}.review-layout details .evidence{display:grid}.math-tex svg{max-width:100%}}

/* Access illustration retained from the approved first phase. */
.access-orbit{width:300px;height:220px;margin:0 0 9px 24px;overflow:visible}
.access-orbit:before,.access-orbit:after{content:none}
.math-atom{width:300px;height:200px;overflow:visible}
.atom-symbol text{font-family:Georgia,"Times New Roman",serif;font-style:italic;paint-order:stroke;stroke:#f5f6fa;stroke-width:5px;stroke-linejoin:round}
.atom-pi{fill:#597eb5;font-size:32px}.atom-fx{fill:#b86e5a;font-size:23px}.atom-infinity{fill:#8c74b1;font-size:29px}
.orbit-motion{position:absolute;right:2px;bottom:0;display:inline-flex;align-items:center;gap:5px;background:transparent;border:1px solid transparent;padding:4px 8px;border-radius:5px;color:#62738e;font-size:12px;min-height:28px}
.access-orbit .orbit-motion span{position:static;font:inherit;color:inherit;line-height:1}
.orbit-motion:hover{background:#e9edf6;border-color:#d5deed}.orbit-motion:disabled{opacity:1;color:#718097;cursor:default}
@media(max-height:800px) and (min-width:1000px){.access-orbit{height:205px;margin-top:-8px}.math-atom{height:190px}}

.login .access-orbit{position:relative;margin-top:18px}.login .atom-symbol text{stroke:#f5f7fb}.login .section-note{margin-top:12px}

/* Account and classroom management: quieter type, legible controls, clear status. */
@media screen{.heading h1{font-size:36px;font-weight:700;letter-spacing:-1px}.card h2{font-size:24px}.card p{font-size:16px}}
header{padding-inline:3.5%;gap:24px}nav{gap:20px}#identity{gap:14px}.account-link{max-width:115px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-decoration:underline;text-underline-offset:4px}
.login{max-width:990px;grid-template-columns:1fr 1.05fr;gap:65px;margin-top:15px}.access-panel .field{margin:14px 0}.access-panel .field label{font-size:14px}.access-panel .subtle{line-height:1.6}.access-panel .hint{line-height:1.5}.access-help{margin:22px 0 6px}.access-panel h2{font-size:25px}.access-panel .button[aria-disabled=true]{opacity:.5;cursor:default}
.password-input{display:flex;border:1px solid #c8d4e5;border-radius:5px;background:#fff;overflow:visible}.password-input input{border:0;min-width:0;flex:1;background:transparent}.password-toggle{border:0;background:transparent;color:#315f98;padding:10px;font-size:12px;min-width:64px}.password-toggle:hover{background:#edf3fc}.form-error{background:#fdf1ee;border-left:3px solid #b4513e;color:#933e2e;font-size:14px;padding:12px;margin:14px 0;line-height:1.6}
.account-layout{display:grid;grid-template-columns:330px minmax(0,520px);gap:28px;align-items:start}.account-layout .button{margin-top:12px}.avatar{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#e9f1fc;color:#246bc2;font-size:25px;font-weight:650;margin-bottom:18px}.account-user{margin:20px 0;font-size:15px}.account-summary h2{font-size:24px}.recovery-code{padding:18px 10px;margin:20px 0;background:#f0f4fa;border:1px dashed #9bb3d4;border-radius:7px;text-align:center;font-size:16px;overflow-wrap:anywhere;user-select:all}
.roster-layout{display:grid;grid-template-columns:255px minmax(0,1fr);gap:25px;align-items:start}.groups-panel{padding:22px}.groups-panel h2{font-size:21px}.group-list{display:grid;gap:8px;margin:20px 0 27px}.group-item{background:#fff;border:1px solid #e0e5ef;border-radius:7px;padding:13px;text-align:left;color:#3b506f;display:grid;gap:6px;line-height:1.4}.group-item span{font-weight:600;font-size:15px}.group-item small{font-size:12px;color:#6e7e95}.group-item:hover{border-color:#96b3dc}.group-item.selected{border-color:#729bd0;background:#edf4fe;box-shadow:inset 3px 0 #246bc2}.groups-panel .button{width:100%;font-size:14px}.groups-panel .field input{font-size:14px}.roster-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:23px;min-height:70px}.roster-toolbar h2{font-size:25px;letter-spacing:-.5px}.roster-toolbar .eyebrow{margin-bottom:6px}.roster-toolbar .button{white-space:nowrap;font-size:14px}.roster-table td{padding:17px 16px}.roster-table td:first-child{width:40%}.roster-table strong{font-weight:600;font-size:15px}.roster-table .access-toggle{margin-left:18px;color:#8a5e50}.badge.ready{background:#eaf4ef;color:#347357}.roster-main .section-note{font-size:13px;line-height:1.6}
dialog{padding:32px;border:1px solid #dce3ee;border-radius:13px;color:#25334b;background:white;width:min(640px,90vw);max-height:88vh;box-shadow:0 18px 80px #23375733}dialog::backdrop{background:#172c4c66;backdrop-filter:blur(3px)}dialog h2{font-size:26px;margin:14px 0 16px}dialog p{line-height:1.6}dialog .subtle{margin:10px 0 20px}.dialog-close{position:absolute;right:18px;top:12px;font-size:27px;color:#61748f;border:0;background:none;padding:4px 9px}.form-tabs{display:flex;gap:4px;padding:4px;background:#f1f4fa;border-radius:7px;margin:20px 0}.form-tabs button{flex:1;border:0;background:transparent;border-radius:5px;font-size:14px;padding:10px;color:#637693}.form-tabs .active{background:white;color:#246bc2;box-shadow:0 1px 4px #172c4c15}.batch-list{min-height:140px}.batch-preview{max-height:190px;overflow:auto;background:#f4f7fb;border-radius:6px;margin:12px 0;padding:10px 16px}.batch-preview p{font-size:14px;display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #e0e7f1;padding:7px 0}.batch-preview span{color:#667c98}.credentials{max-height:310px;overflow:auto;margin:20px 0}.credentials td{padding:14px 8px}.credentials code{font-size:13px;background:#f2f5fa;padding:6px;border-radius:4px;user-select:all}.credentials p{font-size:13px;color:#657b98}dialog .actions{margin-top:24px}
@media(min-width:1000px) and (max-width:1190px){header{gap:14px;padding-inline:3%}.brand{font-size:22px}.brand img{width:34px;height:34px;margin-right:2px}nav{font-size:14px;gap:14px}#identity{gap:10px;font-size:12px}#identity .quiet{font-size:12px}.account-link{max-width:80px}.roster-layout{grid-template-columns:220px 1fr;gap:18px}.roster-table td{padding:15px 10px}.roster-table .access-toggle{margin-left:10px}.roster-table .quiet{font-size:13px}.roster-toolbar{gap:12px}.roster-toolbar h2{font-size:23px}.roster-toolbar .button{padding:12px}.login{gap:40px}}

/* Administration uses the same classroom hierarchy and remains desktop focused. */
.admin-overview{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:30px 0 36px}.admin-overview .panel{padding:25px 28px}.admin-overview h2{font-size:23px;margin:16px 0 10px}.admin-overview p{font-size:15px;color:#63758e;max-width:490px}.admin-overview .quiet{display:inline-block;margin-top:12px}.admin-overview .hint{font-size:13px;margin-top:18px}.admin-list-head h2{font-size:24px}.teacher-table td{padding:21px 18px}.teacher-table strong{font-size:15px;font-weight:600}.teacher-table .access-toggle{margin-left:20px;color:#8a5e50}.teacher-table td:last-child{white-space:nowrap}.group-responsible{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 20px;margin-bottom:22px;border:1px solid var(--line);border-radius:8px;background:#fff}.group-responsible .eyebrow{font-size:10px;letter-spacing:1px}.group-responsible p{font-size:15px;margin-top:5px;color:#516987}.group-responsible button{flex-shrink:0}.groups-panel select{font-size:13px;padding:11px 8px}.library-notice{margin:0 0 24px}.heading>.button{flex-shrink:0}.group-item small{overflow-wrap:anywhere}
@media(min-width:1000px) and (max-width:1190px){header{gap:12px}.brand{font-size:21px}nav{gap:12px;font-size:13px}.account-link{max-width:65px}.admin-overview{gap:18px}.admin-overview .panel{padding:23px}.heading>.button{font-size:14px;padding-inline:15px}.teacher-table td{padding:17px 12px}.teacher-table .access-toggle{margin-left:12px}}

/* Orbitamat: one wordmark, with the original orbital symbol and coral accent. */
.brand{gap:13px;letter-spacing:-.9px}.brand img{margin-right:0;flex-shrink:0}.brand .brand-wordmark{font:inherit;color:inherit}.brand .brand-wordmark b{margin-left:0}
