body.admin-mode{display:block;background:#f7efea}.admin-sidebar{position:fixed;inset:0 auto 0 0;width:235px;background:var(--ink);color:#f7efea;padding:32px 20px;display:flex;flex-direction:column}.admin-brand{font-size:17px;font-weight:600;text-decoration:none}.admin-brand small{display:block;font-size:9px;letter-spacing:1.8px;color:#abc9bf;margin-top:7px}#admin-nav{display:grid;gap:5px;overflow:auto;margin-top:30px;scrollbar-width:thin}#admin-nav button{border:0;background:none;color:#d6e6db;display:flex;align-items:center;gap:13px;min-height:45px;border-radius:9px;padding:10px 12px;text-align:left;font-size:11px}#admin-nav button>span{display:grid;place-items:center;width:24px;font-size:23px;font-family:Georgia,serif}#admin-nav svg{width:23px;height:23px}#admin-nav button[aria-current]{background:#f7efea;color:var(--ink)}#admin-nav button:hover{background:#ffffff15}.admin-user{margin-top:auto;padding-top:20px;font-size:11px;color:#abc9bf}.admin-workspace{margin-left:235px}.admin-topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;background:white;border-bottom:1px solid #d6e6db;padding:15px 35px;min-height:72px}.admin-topbar strong{font-size:13px;font-weight:500}.admin-topbar>div{display:flex;gap:14px;align-items:center}.admin-topbar button{border:0;background:none;color:var(--blue);font-size:11px;min-height:44px}.admin-topbar button:first-child{font-size:24px}#admin-main{display:block;justify-items:stretch;align-items:stretch;max-width:1300px;padding:35px;margin:auto}.admin-heading{margin-bottom:28px}.admin-heading h1{font:400 35px/1.2 Georgia,serif;margin:0 0 12px}.admin-heading p{font-size:12px;color:var(--blue);margin:0}#admin-content{width:100%;min-width:0}.admin-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:24px}.admin-summary article,.admin-card{background:white;border:1px solid #d6e6db;border-radius:14px;padding:23px}.admin-summary span{font-size:11px;color:var(--blue)}.admin-summary strong{display:block;font-size:32px;font-weight:500;color:var(--blue);margin-top:10px}.admin-card{margin-bottom:22px}.admin-card h2{font-size:18px;font-weight:500;margin:0 0 22px}.admin-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0;border-bottom:1px solid #f7efea}.admin-row:last-child{border:0}.admin-row h2,.admin-row h3{font-size:14px;font-weight:500;margin:0 0 7px}.admin-row p{font-size:11px;color:var(--blue);margin:0;overflow-wrap:anywhere}.admin-row strong{font-size:13px;white-space:nowrap}.admin-quick,.admin-row-actions{display:flex;gap:10px;flex-wrap:wrap}.admin-form label,.admin-card>label{display:block;font-size:11px;font-weight:500;margin:16px 0 7px}.admin-form input,.admin-form select,.admin-form textarea,.admin-card>select{display:block;width:100%;background:#f7efea;border:1px solid #d6e6db;color:var(--ink);border-radius:8px;min-height:44px;padding:11px 12px;font-size:13px}.admin-form textarea{resize:vertical}.admin-form input[type=file]{background:white;font-size:12px}.admin-form>button{margin-top:22px}.admin-card>select{margin-bottom:18px}.admin-hint,.admin-empty{font-size:12px;line-height:1.8;color:var(--blue)}.admin-empty{padding:18px 0}.admin-score-row{display:flex!important;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #f7efea;padding:10px 0}.admin-score-row>input,.admin-score-row>select{max-width:155px}.admin-review-row{display:grid;grid-template-columns:1.2fr 1fr 1.3fr auto;align-items:center;gap:14px;border-bottom:1px solid #f7efea;padding:18px 0}.admin-review-row:last-child{border:0}.admin-review-row h3{font-size:14px;font-weight:500;margin:0 0 7px}.admin-review-row p{font-size:11px;color:var(--blue);margin:0}.admin-review-row label{font-size:10px;font-weight:400}.admin-review-row select,.admin-review-row input{width:100%;border:1px solid #d6e6db;border-radius:7px;min-height:44px;padding:10px;font-size:12px;margin-top:7px}.admin-student{padding:16px 0;border-bottom:1px solid #f7efea}.admin-student summary{cursor:pointer;font-size:13px;min-height:44px}.admin-student summary small{display:block;font-size:10px;color:var(--blue);margin:7px 0 0 16px}.admin-student form{max-width:600px;margin-bottom:10px}#admin-notice{background:#f7efea;color:var(--blue);border-radius:8px;padding:13px 16px;font-size:12px;margin-bottom:20px}#admin-notice.error{background:#fff4f2;color:#a23d3d}#admin-files{max-width:900px;max-height:90svh;overflow:auto;width:calc(100% - 28px);padding:24px}#admin-files header{display:flex;align-items:center;justify-content:space-between}#admin-files h2{font-size:24px}#admin-files-close{border:0;background:none;font-size:26px;min-width:44px;min-height:44px;color:var(--blue)}#admin-files-body img{display:block;max-width:100%;height:auto;margin:20px auto}#admin-files-body a{display:block;padding:20px;color:var(--blue)}#admin-files::backdrop{background:#194f5080}
@media(max-width:1100px){.admin-review-row{grid-template-columns:1fr 1fr}.admin-review-row button{justify-self:start}.admin-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.admin-sidebar{position:static;width:100%;padding:22px 20px}.admin-brand{font-size:17px}.admin-user{display:none}#admin-nav{display:flex;overflow-x:auto;gap:7px;margin-top:20px;padding-bottom:5px}#admin-nav button{flex-shrink:0;border:1px solid #ffffff20;padding:9px 12px}#admin-nav button>span{font-size:21px}.admin-workspace{margin-left:0}.admin-topbar{padding:10px 20px;min-height:60px}#admin-main{padding:26px 20px}.admin-heading h1{font-size:30px}.admin-heading p{font-size:11px}.admin-card{padding:20px}.admin-summary{gap:10px}.admin-summary article{padding:18px}.admin-summary strong{font-size:28px}.admin-review-row{grid-template-columns:1fr}.admin-review-row button{width:100%}.admin-form input,.admin-form select,.admin-form textarea{font-size:16px}.admin-row{flex-wrap:wrap}.admin-row-actions{width:100%}.admin-row-actions button{flex:1}.admin-score-row>input,.admin-score-row>select{max-width:135px}.admin-quick button{flex:1 1 45%;font-size:11px;padding-inline:12px}.admin-form label{margin-top:18px}#admin-files{padding:18px}}
.admin-brand{color:#f7efea}#admin-nav button[aria-current]:hover{background:#f7efea;color:var(--ink)}#admin-nav button:focus-visible{outline:3px solid #abc9bf;outline-offset:2px}
.homework-student{padding:22px 0;border-bottom:1px solid #d6e6db}.homework-student .admin-review-row{grid-template-columns:1fr 2fr auto}.answer-key-row{display:grid;grid-template-columns:1fr 2fr 1fr;gap:12px;border-bottom:1px solid #d6e6db;padding:14px 0}.answer-key-row label:last-child{grid-column:1/-1;display:flex;align-items:center;gap:8px}.answer-key-row input[type=checkbox]{width:20px;min-height:20px}.question-stat{padding:14px 0;border-bottom:1px solid #d6e6db;font-size:12px}.question-stat summary{cursor:pointer}.question-stat p{overflow-wrap:anywhere}#homework-marking{width:calc(100% - 24px);max-width:1000px;height:94svh;max-height:94svh;padding:20px;overflow:auto;border:1px solid #d6e6db;border-radius:16px}#homework-marking::backdrop{background:#194f5080}#homework-marking>header{display:flex;justify-content:space-between;align-items:center}#homework-marking h2{font-size:20px}#homework-marking button{min-height:44px;border:1px solid #d6e6db;background:white;border-radius:8px;padding:9px 13px;color:var(--ink)}#homework-marking .student-button{background:var(--blue);color:white}.mark-toolbar{position:sticky;top:-20px;z-index:3;display:flex;gap:8px;flex-wrap:wrap;background:white;padding:12px 0}.mark-toolbar label{display:flex;align-items:center;gap:6px;font-size:11px}.mark-toolbar [aria-pressed=true]{background:#f7efea!important}.mark-toolbar input[type=range]{width:70px}.mark-pages{display:flex;justify-content:center;align-items:center;gap:18px;margin-bottom:14px;font-size:12px}.mark-paper{position:relative;background:#f7efea;width:100%;min-height:80px}.mark-paper [data-base]{display:block;width:100%;height:auto}.mark-paper [data-ink]{position:absolute;inset:0;width:100%;height:100%}.mark-scores{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:760px){.answer-key-row{grid-template-columns:1fr}.answer-key-row label:last-child{grid-column:auto}.homework-student .admin-review-row{grid-template-columns:1fr}#homework-marking{padding:12px}.mark-toolbar{top:-12px}.mark-toolbar button{font-size:11px}}

.ai-settings .ai-toggle{display:flex;align-items:center;gap:12px;min-height:44px;cursor:pointer}.ai-settings .ai-toggle input[type=checkbox]{width:22px;height:22px;min-height:22px;margin:0;flex:0 0 22px;accent-color:var(--ink)}
/* Monthly reporting and classroom workflows */
.draft-resume{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border-left:4px solid var(--accent,#194f50)}.draft-resume>div{flex:1;min-width:180px}.draft-resume p{margin:5px 0}.exam-boundaries{padding:16px;border:1px solid #ddd9d0;border-radius:16px}.exam-boundaries summary{cursor:pointer;font-weight:650;margin-bottom:14px}.grade-boundary-row{display:grid;grid-template-columns:1fr 1fr 40px;gap:10px;align-items:end;margin:10px 0}.grade-boundary-row button{border:0;border-radius:10px;min-height:44px;background:#f6ded8;font-size:24px}.grade-boundary-row label{margin:0}.report-period{display:grid;grid-template-columns:1fr 1fr;gap:14px}.report-sections{display:flex;flex-wrap:wrap;gap:16px;border:1px solid #ddd9d0;border-radius:14px;padding:16px}.report-sections label{display:flex!important;align-items:center;gap:8px;margin:0!important}.report-sections input{width:18px!important;min-height:18px!important}.report-controls{display:grid;gap:16px;max-width:860px}.report-actions,#report-contacts{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.exam-return-row{padding:20px 0;border-top:1px solid #ddd9d0}.exam-return-row h3{margin-bottom:4px}.record-editor{width:min(520px,calc(100% - 28px));border:1px solid #ddd9d0;border-radius:24px;padding:26px;color:var(--ink,#263e3e);background:#fffdf9}.record-editor::backdrop{background:#173b3b80}.record-editor h2{margin-top:0}.login-message-recipient{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0}.login-message-recipient small{flex-basis:100%;color:#66756e}.report-table-wrap{overflow:auto}.report-table-wrap table{min-width:420px}.student-list-row:has([data-exam-paper]){flex-wrap:wrap}
@media(max-width:600px){.report-period{grid-template-columns:1fr}.report-actions>*{flex:1 1 140px}.grade-boundary-row{grid-template-columns:1fr 1fr 36px;gap:6px}.record-editor{padding:20px}.report-controls{padding:18px}.draft-resume .student-button{flex:1}.admin-roster input{min-height:44px}}
#admin-app .report-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}#admin-app .report-controls>h2,#admin-app .report-controls>[data-student-report-fields],#admin-app .report-controls>.report-period,#admin-app .report-controls>fieldset,#admin-app .report-controls>.admin-hint{grid-column:1/-1}#admin-app .report-controls h2{margin:0}#admin-app .report-controls label{margin:0;display:grid;gap:8px}#admin-app .report-controls [data-student-report-fields]{display:grid;grid-template-columns:1fr 1fr;gap:18px}#admin-app .report-controls [hidden]{display:none!important}#admin-app .report-controls input:not([type=checkbox]){box-sizing:border-box;width:100%;min-width:0;min-height:48px;border:1px solid #ddd9d0;border-radius:12px;padding:10px 12px;background:#fff;color:inherit;font:inherit}#admin-app .report-controls .report-period{gap:18px}#admin-app .report-controls .admin-hint{margin:0;font-size:12px}#admin-app .report-controls>button{justify-self:start}#admin-app .report-sections label{display:flex;gap:8px}#admin-app .report-sections input{accent-color:#194f50}#admin-app .report-sections legend{font-size:13px;padding:0 6px}@media(max-width:600px){#admin-app .report-controls,#admin-app .report-controls [data-student-report-fields]{grid-template-columns:1fr}#admin-app .report-controls .report-period{grid-template-columns:1fr 1fr;gap:10px}#admin-app .report-controls label{font-size:13px}#admin-app .report-controls input:not([type=checkbox]){font-size:14px;padding:9px}}
#admin-app .grade-boundary-row{grid-template-columns:1fr 2fr}#admin-app .grade-boundary-row input[readonly]{font-size:20px;font-weight:700;background:var(--mint,#cee6d9);cursor:default}.login-message-preview pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.7;background:#fbf2eb;border-radius:14px;padding:18px}.login-message-preview{max-height:85vh;overflow:auto}
/* Classroom navigation is immediate; homepage scroll reveals keep their own animation. */
#admin-app .scroll-reveal,#student-app .scroll-reveal{opacity:1;translate:none;transition:none}
