:root{--brand-blue: #1b55a6;--brand-sky: #2398dd;--brand-gold: #f6bc12;--iqss-blue: #15137b;--iqss-yellow: #f3ef22;--brand-navy: #151d3f;--brand-ink: #1f2d3d;--muted: #677789;--surface: #ffffff;--app-bg: #f6f8fb;--panel-bg: #ffffff;--line: #dfe7f0;--soft-blue: #eaf5ff;--soft-gold: #fff8d6;--soft-aqua: #edf9fc;--soft-violet: #f4f2ff;--soft-green: #edf8f2;--soft-grey: #eef3f8;--success: #08795f;--danger: #b43a32;--warning: #9a6200;color:var(--brand-ink);background:var(--app-bg);font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;font-synthesis:none;line-height:1.5;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;color:var(--brand-ink);background:var(--app-bg)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.68}.login-page{min-height:100vh;display:grid;place-items:center;padding:32px 20px;background:linear-gradient(90deg,rgba(27,85,166,.08) 0,rgba(27,85,166,.08) 34%,transparent 34%),linear-gradient(180deg,#fff 0,#f6f8fb)}.login-panel{width:min(440px,100%);border:1px solid var(--line);border-radius:8px;border-top:4px solid var(--brand-gold);background:var(--surface);padding:30px;box-shadow:0 20px 48px #151d3f21}.metric-icon{width:44px;height:44px;display:inline-grid;place-items:center;border-radius:8px;color:var(--brand-blue);background:linear-gradient(135deg,var(--soft-blue),#fffbe4)}.login-brand{display:flex;align-items:center;gap:14px;margin-bottom:18px}.login-brand img{width:70px;height:70px;flex:0 0 auto;border-radius:8px;object-fit:contain;background:#fff}.login-brand p{margin:3px 0 0}.login-intro{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:22px}.login-intro span{min-height:34px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:8px;color:var(--brand-blue);background:#f8fbff;font-size:.78rem;font-weight:560;text-align:center}.workspace-selection-page{min-height:100vh;display:grid;place-items:center;background:linear-gradient(180deg,#f7faff,#fff 58%,#fffdf3)}.workspace-selection-brand{display:flex;align-items:center;gap:10px;color:var(--brand-ink);font-size:1rem;font-weight:700}.workspace-selection-brand img{width:42px;height:42px;object-fit:contain}.workspace-selection-content{display:grid;gap:18px}.workspace-selection-content>p{margin:0;color:var(--muted)}.workspace-selection-options{display:grid;gap:10px}.workspace-selection-actions{margin-top:2px}.monthly-roll-call-launcher{display:grid;grid-template-columns:auto minmax(240px,1fr) minmax(220px,300px) auto;align-items:center;gap:18px;min-height:118px;padding:22px;background:#f8fbff}.monthly-roll-call-launcher-icon{display:grid;width:54px;height:54px;place-items:center;border:1px solid #cfe0f2;border-radius:8px;color:#1457a6;background:#eaf4ff}.monthly-roll-call-launcher-copy h3,.monthly-roll-call-launcher-copy p{margin:0}.monthly-roll-call-launcher-copy p{margin-top:5px;color:#62748a}.modal-panel.report:has(.monthly-roll-call-modal){width:min(97vw,1560px);height:min(94vh,960px)}.monthly-roll-call-modal{position:relative;display:flex;min-height:0;height:100%;flex-direction:column;gap:14px}.monthly-roll-call-loader{border-radius:8px}.monthly-register-toolbar,.monthly-register-summary,.monthly-register-footer,.monthly-register-class-control,.monthly-register-legend{display:flex;align-items:center}.monthly-register-toolbar{justify-content:space-between;gap:16px}.monthly-register-class-control{min-width:0;gap:16px}.monthly-register-class-control .field{min-width:min(360px,40vw)}.monthly-register-class-control .monthly-register-month-field{min-width:min(240px,30vw)}.monthly-register-month{display:grid;grid-template-columns:auto auto;gap:1px 8px;color:#47617d}.monthly-register-month svg{grid-row:1 / 3;align-self:center;color:#1d63b5}.monthly-register-month span{font-size:.76rem}.monthly-register-month strong{color:#14283f;font-size:.96rem}.monthly-register-summary{display:grid;grid-template-columns:repeat(4,minmax(112px,150px)) minmax(230px,1fr);gap:10px}.monthly-register-summary>div{display:flex;min-height:54px;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;border:1px solid #d9e4ef;border-radius:7px;color:#5b6f85;background:#f8fafc}.monthly-register-summary>div strong{color:#14283f;font-size:1.15rem}.monthly-register-summary>.present{background:#f0faf5;border-color:#cdebdc}.monthly-register-summary>.absent{background:#fff4f3;border-color:#f3d0cc}.monthly-register-summary>.changed{background:#fff9e9;border-color:#efdfac}.monthly-register-search{min-width:0}.monthly-register-legend{flex-wrap:wrap;gap:14px;color:#4f647b;font-size:.82rem}.monthly-register-legend>span{display:inline-flex;align-items:center;gap:6px}.roll-call-symbol{display:inline-grid;width:22px;height:22px;place-items:center;border-radius:6px;font-style:normal}.roll-call-symbol.present{color:#087a53;background:#dcf5e9}.roll-call-symbol.absent{color:#b43b35;background:#fde7e5}.roll-call-symbol.late{color:#8a5a00;background:#fff2c9}.roll-call-symbol.leave{color:#315a9b;background:#e7eefb;font-weight:800}.monthly-register-scroll{min-height:320px;flex:1;overflow:auto;border:1px solid #d6e1ec;border-radius:7px;background:#fff}.monthly-register-table{min-width:max-content;width:100%;border-collapse:separate;border-spacing:0;font-size:.8rem}.monthly-register-table th,.monthly-register-table td{width:44px;min-width:44px;height:46px;padding:5px;border-right:1px solid #e0e8f0;border-bottom:1px solid #e5ebf1;text-align:center;background:#fff}.monthly-register-table thead th{position:sticky;z-index:4;top:0;color:#536a81;background:#f4f7fa}.monthly-register-table thead th span,.monthly-register-table thead th strong{display:block}.monthly-register-table thead th span{font-size:.68rem;text-transform:uppercase}.monthly-register-table thead th strong{margin-top:1px;color:#20364d;font-size:.88rem}.monthly-register-table .monthly-student-heading,.monthly-register-table .monthly-student-cell{position:sticky;z-index:3;left:0;width:250px;min-width:250px;text-align:left;box-shadow:1px 0 #d6e1ec}.monthly-register-table .monthly-student-heading{z-index:6;padding-left:14px}.monthly-student-cell{display:flex;align-items:center;gap:9px}.monthly-student-cell>div:last-child{min-width:0}.monthly-student-cell strong,.monthly-student-cell span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monthly-student-cell strong{max-width:176px;color:#13283f}.monthly-student-cell span{margin-top:2px;color:#718196;font-size:.72rem}.monthly-register-table th.today,.monthly-register-table td.today{background:#eef6ff}.monthly-register-table th.today{box-shadow:inset 0 3px #2467b7}.monthly-register-table th.closed,.monthly-register-table td.closed{color:#9aa8b5;background:#f2f4f6}.roll-call-day-button{position:relative;display:inline-grid;width:31px;height:31px;place-items:center;border:1px solid transparent;border-radius:7px;cursor:pointer}.roll-call-day-button.present{color:#087a53;border-color:#b8e2ce;background:#e7f7ef}.roll-call-day-button.absent{color:#b33c36;border-color:#efc7c3;background:#fff0ef}.roll-call-day-button.late{color:#8a5a00;border-color:#ead18b;background:#fff7dc}.roll-call-day-button.leave{color:#315a9b;border-color:#c9d8ef;background:#eef3fc}.roll-call-day-button.changed{outline:2px solid #e9b51a;outline-offset:1px}.roll-call-day-button:disabled{cursor:default;opacity:.88}.roll-call-day-button:not(:disabled):hover{border-color:currentColor}.roll-call-device-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#1d63b5}.roll-call-day-button .roll-call-device-dot{position:absolute;right:2px;bottom:2px;width:5px;height:5px}.roll-call-closed-mark{color:#abb5bf}.monthly-register-skeleton{min-height:360px}.monthly-register-footer{justify-content:space-between;gap:16px;padding-top:12px;border-top:1px solid #dce5ee}.monthly-register-save-fields{display:grid;min-width:0;flex:1;grid-template-columns:minmax(220px,.7fr) minmax(280px,1.3fr);gap:12px}@media(max-width:980px){.monthly-roll-call-launcher{grid-template-columns:auto 1fr}.monthly-roll-call-launcher .attendance-class-filter,.monthly-roll-call-launcher .primary-action{grid-column:2}.monthly-register-summary{grid-template-columns:repeat(2,minmax(110px,1fr))}.monthly-register-search{grid-column:1 / -1}.monthly-register-footer{align-items:stretch;flex-direction:column}.monthly-register-save-fields{grid-template-columns:1fr}}@media(max-width:620px){.monthly-register-toolbar,.monthly-register-class-control{align-items:stretch;flex-direction:column}.monthly-register-class-control .field{min-width:0}.monthly-register-toolbar>button{align-self:flex-start}.monthly-register-table .monthly-student-heading,.monthly-register-table .monthly-student-cell{width:205px;min-width:205px}}.messaging-page{min-width:0}.communications-hub-heading{margin-bottom:12px}.communications-hub-heading p,.communication-page .page-heading p{margin:4px 0 0;color:#64748b;font-size:.88rem}.communications-hub-tabs{display:flex;gap:8px;margin-bottom:16px;padding:5px;border:1px solid #d8e3ee;border-radius:8px;background:#f7fafc}.communications-hub-tabs>button{display:flex;min-width:230px;align-items:center;gap:10px;padding:10px 13px;border:1px solid transparent;border-radius:6px;background:transparent;color:#52677e;text-align:left}.communications-hub-tabs>button:hover{background:#fff;color:#174f91}.communications-hub-tabs>button.active{border-color:#bcd2e8;background:#fff;color:#1557a6;box-shadow:0 3px 10px #16457512}.communications-hub-tabs span{display:grid;gap:2px}.communications-hub-tabs strong{font-size:.84rem}.communications-hub-tabs small{color:#718096;font-size:.69rem;font-weight:500}.communications-hub-workspace,.messaging-page.embedded,.communication-page.embedded,.notices-page.embedded{min-width:0}.messaging-page.embedded>.page-heading,.communication-page.embedded>.page-heading,.notices-page.embedded>.page-heading{margin-bottom:12px;padding:0 2px}.messaging-page.embedded>.page-heading h2,.communication-page.embedded>.page-heading h2,.notices-page.embedded>.page-heading h2{margin:0;color:#1b2d43;font-size:1.05rem;letter-spacing:0}.messaging-heading p{margin:4px 0 0;color:#64748b;font-size:.9rem}.messaging-summary{display:grid;grid-template-columns:repeat(3,minmax(0,190px));gap:12px;margin-bottom:14px}.messaging-summary>div{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:8px;min-height:58px;padding:10px 14px;border:1px solid #d9e3ef;border-radius:7px;background:#fff;color:#1557a6}.messaging-summary span{color:#64748b;font-size:.82rem}.messaging-summary strong{color:#14263d;font-size:1.15rem}.messaging-shell{display:grid;grid-template-columns:minmax(310px,34%) minmax(0,1fr);height:min(690px,calc(100vh - 300px));min-height:520px;overflow:hidden;border:1px solid #d7e1ed;border-radius:8px;background:#fff;box-shadow:0 12px 32px #19304e12}.messaging-sidebar{display:flex;min-width:0;min-height:0;height:100%;flex-direction:column;overflow:hidden;border-right:1px solid #dce5ef;background:#f9fbfd}.messaging-tabs{display:flex;gap:5px;padding:13px 14px 8px}.messaging-tabs button{display:inline-flex;align-items:center;gap:6px;padding:8px 10px;border:0;border-radius:6px;background:transparent;color:#52677e;font-weight:700}.messaging-tabs button.active{background:#e7f1fd;color:#1557a6}.messaging-search{display:flex;align-items:center;gap:8px;margin:2px 14px 12px;padding:8px 10px;border:1px solid #d5e0ec;border-radius:6px;background:#fff;color:#718096}.messaging-search input{width:100%;border:0;outline:0;background:transparent;font:inherit}.conversation-list{min-height:0;flex:1 1 auto;overflow-x:hidden;overflow-y:scroll;overscroll-behavior:contain;scrollbar-color:#9bb5d1 #edf3f8;scrollbar-gutter:stable;scrollbar-width:thin}.conversation-list::-webkit-scrollbar{width:9px}.conversation-list::-webkit-scrollbar-track{background:#edf3f8}.conversation-list::-webkit-scrollbar-thumb{border:2px solid #edf3f8;border-radius:8px;background:#9bb5d1}.conversation-list::-webkit-scrollbar-thumb:hover{background:#6f94ba}.conversation-card{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr);gap:10px;width:100%;padding:13px 14px;border:0;border-top:1px solid #e4ebf3;background:transparent;color:#26384d;text-align:left}.conversation-card:hover,.conversation-card.selected{background:#edf5fd}.conversation-card.selected{box-shadow:inset 3px 0 #1f63b7}.conversation-card.unread{background:#f2f8ff}.message-avatar{width:42px;height:42px;flex:0 0 42px;border-radius:50%;object-fit:cover;border:1px solid #d7e2ef}.message-avatar.fallback{display:inline-flex;align-items:center;justify-content:center;background:#e4effc;color:#1557a6;font-size:.75rem;font-weight:800}.conversation-copy{min-width:0}.conversation-copy>span{display:block}.conversation-meta{display:flex!important;align-items:center;gap:8px;justify-content:space-between}.conversation-meta strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem}.conversation-meta time{color:#7b8ca0;font-size:.7rem}.conversation-people{margin-top:2px;overflow:hidden;color:#44617d;font-size:.75rem;text-overflow:ellipsis;white-space:nowrap}.conversation-preview{margin-top:4px;overflow:hidden;color:#728399;font-size:.75rem;text-overflow:ellipsis;white-space:nowrap}.message-unread-badge{position:absolute;right:13px;bottom:11px;min-width:20px;padding:2px 6px;border-radius:10px;background:#1763b6;color:#fff;font-size:.68rem;text-align:center}.messaging-empty,.thread-empty{display:flex;min-height:220px;align-items:center;justify-content:center;flex-direction:column;gap:7px;color:#73859a;text-align:center}.messaging-empty strong,.thread-empty h2{margin:0;color:#2c4056}.messaging-empty span,.thread-empty p{margin:0;font-size:.82rem}.message-thread-panel{display:flex;min-width:0;min-height:0;flex-direction:column;background:#fff}.thread-empty{flex:1}.thread-header{display:flex;min-height:72px;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;border-bottom:1px solid #dce5ef}.thread-header>div{display:flex;align-items:center;gap:10px;min-width:0}.thread-header h2{margin:0;font-size:1rem}.thread-header p{margin:3px 0 0;overflow:hidden;color:#718096;font-size:.74rem;text-overflow:ellipsis;white-space:nowrap}.priority-dot{width:9px;height:9px;flex:0 0 9px;border-radius:50%;background:#3a9a68}.priority-dot.important{background:#e6a719}.priority-dot.urgent{background:#d64545}.message-stream{flex:1;min-height:0;overflow-y:auto;padding:22px;background:#f7f9fc}.message-bubble-row{display:flex;gap:9px;margin-bottom:15px}.message-bubble-row.mine{justify-content:flex-end}.message-bubble{max-width:min(72%,650px);padding:10px 13px;border:1px solid #dbe4ee;border-radius:7px;background:#fff;box-shadow:0 3px 10px #1e36520a}.message-bubble-row.mine .message-bubble{border-color:#1c64b7;background:#1c64b7;color:#fff}.message-bubble>div{display:flex;align-items:center;justify-content:space-between;gap:18px}.message-bubble strong{font-size:.75rem}.message-bubble time{color:#8190a1;font-size:.65rem}.message-bubble-row.mine time{color:#dcecff}.message-bubble p{margin:7px 0 0;white-space:pre-wrap;font-size:.88rem;line-height:1.5}.message-delivered{display:flex;align-items:center;justify-content:flex-end;gap:3px;margin-top:5px;color:#dcecff;font-size:.65rem}.message-composer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:13px 16px;border-top:1px solid #dce5ef;background:#fff}.message-composer-copy{display:grid;gap:7px;min-width:0}.message-composer textarea{width:100%;min-height:46px;max-height:120px;resize:vertical;padding:10px 12px;border:1px solid #cedbe8;border-radius:6px;font:inherit}.message-broadcast-footer{display:flex;align-items:center;gap:11px;padding:14px 16px;border-top:1px solid #dce5ef;color:#315a7e;background:#f1f7fc}.message-broadcast-footer>svg{flex:0 0 auto;color:var(--school-primary, var(--brand-blue))}.message-broadcast-footer div{display:grid;gap:2px}.message-broadcast-footer strong{color:var(--brand-ink);font-size:.84rem}.message-broadcast-footer span{color:var(--muted);font-size:.76rem;font-weight:600}.guardian-unified-messages{display:grid;gap:14px}.guardian-legacy-alerts{border:1px solid #d9e5ef;border-radius:8px;background:#fff;overflow:hidden}.guardian-legacy-alerts>summary{cursor:pointer;padding:12px 15px;color:var(--brand-ink);background:#f5f9fc;font-size:.82rem;font-weight:700}.guardian-legacy-alerts[open]>summary{border-bottom:1px solid #d9e5ef}.message-attachment-picker{grid-column:1 / -1;display:grid;gap:7px;padding:11px 12px;border:1px dashed #b9ccdf;border-radius:7px;background:#f8fbfe}.message-attachment-picker.compact{padding:0;border:0;background:transparent}.message-attachment-picker>small{color:#6f8195;font-size:.72rem}.message-attach-button{display:inline-flex;width:fit-content;align-items:center;gap:6px;color:#1b5da9;font-size:.78rem;font-weight:750;cursor:pointer}.message-attach-button input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0}.selected-message-files{display:flex;min-width:0;flex-wrap:wrap;gap:6px}.selected-message-files>span{display:inline-flex;max-width:260px;align-items:center;gap:5px;padding:5px 7px;border:1px solid #d3e0ed;border-radius:5px;background:#fff;color:#3c526b;font-size:.72rem}.selected-message-files>span button{display:inline-grid;width:18px;height:18px;place-items:center;padding:0;border:0;border-radius:50%;background:#edf2f7;color:#5f7185;font-weight:800}.message-attachment-list{display:grid!important;gap:6px!important;margin-top:9px}.message-attachment{display:grid!important;grid-template-columns:30px minmax(0,1fr) auto;align-items:center!important;gap:8px!important;min-width:min(390px,50vw);padding:7px 8px;border:1px solid rgba(161,187,214,.7);border-radius:6px;background:#fffffff0;color:#263b53}.message-bubble-row.mine .message-attachment{border-color:#ffffff59;background:#ffffff1f;color:#fff}.message-attachment-icon{display:inline-grid;width:29px;height:29px;place-items:center;border-radius:5px;background:#eaf3fc;color:#1c64b7}.message-attachment>span:nth-child(2){min-width:0}.message-attachment strong,.message-attachment small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-attachment strong{font-size:.72rem}.message-attachment small{margin-top:1px;color:#728399;font-size:.64rem}.message-bubble-row.mine .message-attachment small{color:#dcecff}.message-attachment>div{display:flex;gap:4px}.message-attachment button{display:inline-grid;width:29px;height:29px;place-items:center;padding:0;border:1px solid #d5e1ed;border-radius:5px;background:#fff;color:#1b5da9}.messaging-file-preview{display:grid;gap:12px}.messaging-file-preview>div{display:flex;align-items:center;justify-content:space-between;gap:14px}.messaging-file-preview>div strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.messaging-file-preview img,.messaging-file-preview iframe{width:100%;height:min(72vh,760px);border:1px solid #d8e3ee;border-radius:6px;background:#f5f7fa;object-fit:contain}.compose-message-form{display:grid;gap:14px}.messaging-compose-mode{display:inline-flex;width:fit-content;gap:4px;padding:4px;border:1px solid #d5e1ed;border-radius:7px;background:#f4f7fa}.messaging-compose-mode button{display:inline-flex;align-items:center;gap:6px;padding:8px 11px;border:0;border-radius:5px;background:transparent;color:#5d7187;font-size:.8rem;font-weight:750}.messaging-compose-mode button.active{background:#fff;color:#1557a6;box-shadow:0 2px 7px #1f466e1f}.compose-message-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(180px,1fr);gap:12px}.recipient-search-box{display:flex;align-items:center;gap:8px;padding:0 11px;border:1px solid #cbd8e6;border-radius:6px}.recipient-search-box input{width:100%;padding:11px 0;border:0;outline:0}.recipient-search-status{display:flex;min-height:48px;align-items:center;justify-content:center;gap:7px;padding:10px;border:1px solid #d8e4ef;border-radius:7px;background:#f8fbfe;color:#526c86;font-size:.8rem}.recipient-search-status:not(.empty) svg{animation:spin 1s linear infinite}.recipient-search-status.empty{color:#708197}.recipient-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:235px;overflow-y:auto;border:1px solid #dae4ee;border-radius:7px}.recipient-results label{display:grid;grid-template-columns:auto 38px minmax(0,1fr);align-items:center;gap:9px;padding:9px 11px;border-bottom:1px solid #e5ebf2;cursor:pointer}.recipient-results label:hover{background:#f3f8fd}.recipient-results .message-avatar{width:36px;height:36px;flex-basis:36px}.recipient-results span{min-width:0}.recipient-results strong,.recipient-results small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recipient-results strong{font-size:.82rem}.recipient-results small{margin-top:2px;color:#6f8195;font-size:.7rem}.selected-recipient-row{display:flex;flex-wrap:wrap;gap:6px}.selected-recipient-row button{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border:1px solid #bcd2e8;border-radius:14px;background:#eaf3fc;color:#1557a6;font-size:.74rem}.messaging-audience-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:300px;overflow-y:auto;gap:8px;padding:2px}.messaging-audience-list label{display:grid;grid-template-columns:auto 38px minmax(0,1fr) auto;align-items:center;gap:9px;min-width:0;padding:10px 11px;border:1px solid #d9e4ee;border-radius:7px;background:#fff;cursor:pointer}.messaging-audience-list label:hover{border-color:#a9c7e5;background:#f7fbff}.messaging-audience-list label.selected{border-color:#1b64b6;background:#edf6ff;box-shadow:inset 3px 0 #1b64b6}.messaging-audience-list label>span:nth-of-type(2){min-width:0}.messaging-audience-list strong,.messaging-audience-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.messaging-audience-list strong{color:#21364e;font-size:.8rem}.messaging-audience-list small{margin-top:2px;color:#708197;font-size:.68rem}.messaging-audience-list label>b{min-width:30px;padding:3px 7px;border-radius:12px;background:#e5f1fc;color:#1557a6;font-size:.72rem;text-align:center}.messaging-audience-selection-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;border:1px solid #cfe0f0;border-radius:7px;background:#f4f9fe;color:#24415f;font-size:.78rem}.messaging-audience-selection-summary button{border:0;background:transparent;color:#1557a6;font:inherit;font-weight:650}.messaging-audience-icon{display:inline-grid;width:36px;height:36px;place-items:center;border-radius:6px;background:linear-gradient(135deg,#eaf4ff,#fff8d8);color:#1557a6}.messaging-privacy-note{padding:9px 11px;border-left:3px solid #2691cf;border-radius:4px;background:#eef8fc;color:#4e687f;font-size:.75rem}.incoming-message-card{position:fixed;z-index:1400;right:24px;bottom:24px;display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;width:min(470px,calc(100vw - 32px));padding:15px 16px;border:1px solid #bcd5ee;border-left:4px solid #1c64b7;border-radius:8px;background:#fff;box-shadow:0 20px 55px #16305038}.incoming-icon{display:flex;width:42px;height:42px;align-items:center;justify-content:center;border-radius:50%;background:#e8f3ff;color:#1557a6}.incoming-message-card span,.incoming-message-card strong{display:block}.incoming-message-card span{color:#1c64b7;font-size:.68rem;font-weight:800;text-transform:uppercase}.incoming-message-card strong{margin-top:2px;color:#162a42;font-size:.9rem}.incoming-message-card p{margin:4px 0 0;overflow:hidden;color:#687b91;font-size:.75rem;text-overflow:ellipsis;white-space:nowrap}.incoming-close{position:absolute;top:5px;right:5px;padding:4px;border:0;background:transparent;color:#708197}@media(max-width:900px){.messaging-summary{grid-template-columns:repeat(3,1fr)}.messaging-shell{grid-template-columns:1fr;height:auto;min-height:0}.messaging-sidebar{max-height:420px;border-right:0;border-bottom:1px solid #dce5ef}.message-thread-panel{min-height:540px}.recipient-results,.messaging-audience-list{grid-template-columns:1fr}}@media(max-width:600px){.messaging-summary,.compose-message-grid,.message-composer{grid-template-columns:1fr}.message-bubble{max-width:86%}.incoming-message-card{right:16px;bottom:16px;grid-template-columns:40px minmax(0,1fr)}.incoming-message-card .primary-action{grid-column:1 / -1}}.login-role-options{display:grid;gap:10px;margin-top:18px;padding:14px;border:1px solid #d9e5f2;border-radius:8px;background:linear-gradient(135deg,#f8fbff,#fffdf0)}.login-role-options>div{display:grid;gap:2px}.login-role-options span:first-child{color:var(--brand-blue);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.login-role-options h2{margin:0;color:var(--brand-ink);font-size:1rem;font-weight:650}.login-role-option{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;border:1px solid #cfdae8;border-radius:8px;color:var(--brand-ink);background:#fff;padding:12px;text-align:left;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.login-role-option:hover{border-color:var(--brand-sky);box-shadow:0 10px 24px #151d3f1a;transform:translateY(-1px)}.login-role-option strong,.login-role-option small{display:block}.login-role-copy{min-width:0}.daily-attendance-toolbar{justify-content:flex-start;gap:16px;margin-bottom:14px}.daily-attendance-toolbar .field{width:min(240px,100%);margin:0}.daily-attendance-caption{color:#62758a;font-size:.84rem}.daily-attendance-caption strong{color:#233b55}.login-role-school{display:flex;align-items:center;gap:6px;margin-top:5px;color:var(--brand-blue);font-size:.84rem;font-weight:650}.login-role-school svg{flex:0 0 auto}.login-role-option strong{color:var(--brand-ink);font-size:.92rem;font-weight:650}.login-role-option small{margin-top:2px;color:var(--muted);font-size:.78rem}.login-role-icon{width:36px;height:36px;display:inline-grid;place-items:center;border-radius:8px;color:var(--brand-blue);background:var(--soft-blue)}.login-role-icon.guardian{color:#08795f;background:var(--soft-green)}.login-role-icon.student{color:#9a6200;background:var(--soft-gold)}.login-role-icon.has-school-logo{overflow:hidden;border:1px solid #d7e2ee;background:#fff}.login-role-icon.has-school-logo img{width:100%;height:100%;padding:3px;object-fit:contain}.login-reset-action{justify-self:start;min-height:36px;padding-inline:12px}.powered-by{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line);color:var(--muted);font-size:.78rem;font-weight:500;text-decoration:none}.powered-by img{width:58px;height:auto;max-height:30px;object-fit:contain;object-position:right center}.powered-by:hover span,.sidebar-footer:hover span{color:var(--brand-blue)}.powered-by:focus-visible,.sidebar-footer:focus-visible{outline:3px solid rgba(246,188,18,.45);outline-offset:3px}.login-panel h1,.page-heading h1,.topbar h2,.section-heading h3,.panel h3,.empty-state h3{margin:0;color:var(--brand-ink);letter-spacing:0;font-weight:600}.login-panel p{margin:4px 0 24px;color:var(--muted)}.login-form{display:grid;gap:16px}.login-form label,.school-picker,.date-control{display:grid;gap:6px;color:var(--muted);font-size:.86rem;font-weight:600}.login-form input,.school-picker select,.date-control input{width:100%;min-height:42px;border:1px solid #cfd9e6;border-radius:8px;color:var(--brand-ink);background:var(--surface);padding:0 12px;outline:none}.login-form input:focus,.school-picker select:focus,.date-control input:focus,.people-search input:focus{border-color:var(--brand-sky);box-shadow:0 0 0 3px #2196dc2e}.password-input{position:relative;display:block;width:100%}.password-input input{padding-right:44px}.password-toggle-button{position:absolute;top:50%;right:6px;transform:translateY(-50%);display:grid;width:32px;height:32px;place-items:center;padding:0;border:0;border-radius:8px;color:var(--muted);background:transparent;cursor:pointer}.password-toggle-button:hover{color:var(--brand-blue);background:#1b55a614}.password-toggle-button:focus-visible{outline:2px solid rgba(33,150,220,.55);outline-offset:2px}.password-with-action{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}.compact-action{min-height:42px;white-space:nowrap}.form-error{margin:0;padding:10px 12px;border:1px solid #f0b8b2;border-left:4px solid var(--danger);border-radius:8px;color:var(--danger);background:#fff4f2;font-size:.9rem;font-weight:700;line-height:1.45}.form-success{margin:0;color:#08795f;font-weight:600}.login-reset-copy{margin:0;color:var(--muted);font-size:.88rem;line-height:1.55}.login-form-footer{display:flex;justify-content:flex-end}.text-button{border:0;color:var(--brand-blue);background:transparent;padding:0;font:inherit;font-weight:650;cursor:pointer}.text-button:hover{color:var(--brand-sky);text-decoration:underline;text-underline-offset:3px}.text-button:focus-visible{outline:2px solid rgba(33,150,220,.55);outline-offset:3px;border-radius:6px}.login-secondary-button{width:100%}.primary-button,.primary-action,.secondary-action,.ghost-button,.icon-text-button,.small-button,.nav-item{border:0;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 14px;font-weight:600;white-space:nowrap}.primary-button{width:100%;color:#fff;background:linear-gradient(135deg,var(--brand-blue),var(--brand-sky))}.primary-action{color:#fff;background:var(--brand-blue)}.secondary-action{color:var(--brand-ink);background:var(--soft-grey)}.ghost-button{border:1px solid var(--border);color:var(--brand-ink);background:#fff;cursor:pointer}.primary-button:hover,.primary-action:hover,.secondary-action:hover,.ghost-button:hover,.icon-text-button:hover,.small-button:hover{filter:brightness(.96)}.app-shell{min-height:100vh;display:grid;grid-template-columns:276px minmax(0,1fr);background:var(--app-bg)}.sidebar{position:sticky;top:0;height:100vh;display:grid;grid-template-rows:auto auto 1fr auto;gap:18px;background:linear-gradient(180deg,rgba(35,152,221,.12),transparent 38%),linear-gradient(135deg,var(--brand-navy),var(--iqss-blue) 68%,#111749);color:#edf5ff;padding:22px 16px;overflow-y:auto}.sidebar-brand{display:flex;align-items:center;gap:8px;min-height:32px;opacity:.86}.sidebar-brand strong,.sidebar-brand span{display:block}.sidebar-brand img{width:30px;height:30px;flex:0 0 auto;border-radius:6px;object-fit:contain;background:#fff}.sidebar-brand strong{color:#fff;font-size:.82rem;font-weight:620;line-height:1.15}.sidebar-brand span{color:#b8c8da;font-size:.68rem;font-weight:500;line-height:1.1}.school-context-card{display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;align-items:center;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:#ffffff14;padding:13px;box-shadow:inset 3px 0 0 var(--school-accent, var(--brand-gold))}.school-context-card img{width:48px;height:48px;border-radius:8px;object-fit:contain;background:#fff}.school-context-card span,.nav-group-label,.sidebar-footer span{color:#b8c8da;font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.school-context-card strong{display:block;color:#fff;font-size:.96rem;font-weight:650;line-height:1.25;overflow-wrap:anywhere}.nav-list{display:grid;gap:8px;align-content:start}.nav-group-label{margin:6px 8px 2px}.nav-item{width:100%;justify-content:flex-start;color:#dce8f5;background:transparent;font-weight:560}.nav-item:hover{color:#fff;background:#ffffff14}.nav-item.active{color:#fff;background:linear-gradient(135deg,var(--school-primary, var(--brand-blue)),var(--brand-sky));font-weight:650;box-shadow:inset 4px 0 0 var(--school-accent, var(--brand-gold))}.sidebar-footer{display:grid;gap:8px;border-top:1px solid rgba(255,255,255,.12);padding-top:16px;color:inherit;text-decoration:none}.sidebar-footer img{width:76px;max-width:100%;height:auto;max-height:40px;object-fit:contain;object-position:left center;border-radius:4px;background:#fff}.main-column{min-width:0;display:grid;grid-template-rows:auto 1fr}.topbar{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 28px;border-bottom:1px solid var(--line);background:#fffffff0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.topbar-title{min-width:0;display:flex;align-items:center;gap:12px}.topbar-school-logo{width:40px;height:40px;flex:0 0 auto;border:1px solid var(--line);border-radius:8px;object-fit:contain;background:#fff}.topbar-actions,.heading-actions{display:flex;align-items:end;flex-wrap:wrap;gap:12px}.topbar-actions{flex:1 1 540px;justify-content:flex-end}.user-menu{position:relative;flex:0 0 auto}.user-menu-trigger{min-height:44px;display:inline-flex;align-items:center;gap:10px;border:1px solid #d8e3ef;border-radius:8px;color:var(--brand-ink);background:#fff;padding:5px 8px 5px 6px;box-shadow:0 8px 20px #151d3f0f}.user-menu-trigger:hover,.user-menu-trigger.active{border-color:var(--brand-sky);box-shadow:0 10px 24px #151d3f1a}.user-menu-trigger-text{display:grid;gap:1px;min-width:0;text-align:left}.user-menu-trigger-text strong,.user-menu-trigger-text small{max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-trigger-text strong{color:var(--brand-ink);font-size:.84rem;font-weight:650}.user-menu-trigger-text small{color:var(--muted);font-size:.72rem;font-weight:600}.signed-user-avatar,.signed-user-avatar img,.signed-user-avatar>span{display:inline-grid;place-items:center;border-radius:999px}.signed-user-avatar{flex:0 0 auto;color:#fff;background:linear-gradient(135deg,var(--brand-blue),var(--brand-sky));box-shadow:inset 0 0 0 2px #ffffff6b;overflow:hidden}.signed-user-avatar.small,.signed-user-avatar.small img,.signed-user-avatar.small>span{width:34px;height:34px;font-size:.74rem}.signed-user-avatar.medium,.signed-user-avatar.medium img,.signed-user-avatar.medium>span{width:46px;height:46px;font-size:.92rem}.signed-user-avatar.large,.signed-user-avatar.large img,.signed-user-avatar.large>span{width:82px;height:82px;font-size:1.4rem}.signed-user-avatar img{width:100%;height:100%;object-fit:cover}.signed-user-avatar>span{font-weight:760;letter-spacing:.02em}.user-menu-panel{position:absolute;top:calc(100% + 10px);right:0;z-index:30;width:min(320px,calc(100vw - 32px));display:grid;gap:8px;border:1px solid #d8e3ef;border-radius:8px;background:#fff;padding:12px;box-shadow:0 24px 52px #151d3f2e}.user-menu-header{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center;padding-bottom:10px;border-bottom:1px solid var(--line)}.user-menu-header div{min-width:0;display:grid;gap:2px}.user-menu-header strong,.user-menu-header span,.user-menu-header small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-header strong{color:var(--brand-ink);font-size:.95rem;font-weight:700}.user-menu-header span,.user-menu-header small{color:var(--muted);font-size:.78rem}.user-menu-meta{display:flex;flex-wrap:wrap;gap:6px}.user-menu-meta span{min-height:24px;display:inline-flex;align-items:center;border:1px solid #d8e3ef;border-radius:999px;color:var(--brand-blue);background:var(--soft-blue);padding:0 8px;font-size:.72rem;font-weight:700}.user-menu-item{width:100%;min-height:40px;display:flex;align-items:center;gap:10px;border:0;border-radius:8px;color:var(--brand-ink);background:transparent;padding:0 10px;text-align:left;font-size:.88rem;font-weight:650}.user-menu-item:hover,.user-menu-item:focus-visible{background:#f4f8fc;outline:none}.user-menu-item.danger{color:var(--danger)}.eyebrow{display:block;margin-bottom:3px;color:var(--school-primary, var(--brand-blue));font-size:.78rem;font-weight:650;text-transform:uppercase}.school-picker{min-width:230px}.profile-page{display:grid;gap:18px;align-content:start}.profile-hero{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;border:1px solid #d8e3ef;border-radius:8px;border-top:4px solid var(--school-accent, var(--brand-gold));background:linear-gradient(135deg,#fff,#f8fbff);padding:22px;box-shadow:0 14px 32px #151d3f0f}.profile-hero h1{margin:0;color:var(--brand-ink);font-size:1.7rem;font-weight:680}.profile-hero p{margin:4px 0 0;color:var(--muted)}.profile-status-group{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.profile-card{border:1px solid #d8e3ef;border-radius:8px;background:#fff;padding:18px;box-shadow:0 12px 28px #151d3f0d}.profile-value-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.profile-value{display:grid;gap:3px;border:1px solid #e3ebf4;border-radius:8px;background:#f9fbfd;padding:11px 12px}.profile-value span{color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.profile-value strong{color:var(--brand-ink);font-size:.9rem;font-weight:650}.profile-security-strip{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:16px;border:1px solid #dce8f2;border-radius:8px;background:linear-gradient(135deg,#f8fbff,#fffdf5);padding:14px}.profile-security-strip div{display:grid;gap:3px;min-width:0}.profile-security-strip span{color:var(--brand-blue);font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.profile-security-strip strong{color:var(--brand-ink);font-size:.98rem}.profile-security-strip small{color:var(--muted);line-height:1.45}.account-password-section{display:grid;gap:12px}.account-password-security-strip{margin-top:0}.account-password-security-strip .secondary-action{flex:0 0 auto}.profile-password-form{gap:14px}.profile-password-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.password-confirmation-note{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:start;border:1px solid #cfe0f3;border-left:4px solid var(--brand-blue);border-radius:8px;background:#f4f9ff;padding:13px}.password-confirmation-note svg{color:var(--brand-blue);margin-top:2px}.password-confirmation-note div{display:grid;gap:3px}.password-confirmation-note strong,.password-confirmation-state h3{color:var(--brand-ink)}.password-confirmation-note span,.password-confirmation-state p,.password-confirmation-state small{color:var(--muted)}.password-confirmation-state{display:grid;gap:16px;place-items:center;text-align:center;padding:18px 8px 6px}.password-confirmation-icon{display:grid;width:62px;height:62px;place-items:center;border-radius:999px;color:#fff;background:var(--success);box-shadow:0 14px 28px #08795f2e}.profile-school-strip{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center;margin-top:14px;border:1px solid #e3ebf4;border-radius:8px;background:#fff;padding:12px}.profile-school-strip img{width:42px;height:42px;border:1px solid var(--line);border-radius:8px;object-fit:contain;background:#fff}.profile-school-strip div{min-width:0;display:grid;gap:2px}.profile-school-strip strong,.profile-school-strip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-school-strip strong{color:var(--brand-ink);font-weight:700}.profile-school-strip span,.profile-note{color:var(--muted)}.profile-access-card{display:grid;gap:12px}.profile-access-list{display:grid;gap:9px}.profile-access-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid #e3ebf4;border-radius:8px;background:#f9fbfd;padding:12px}.profile-access-row div{min-width:0;display:grid;gap:2px}.profile-access-row strong,.profile-access-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-access-row strong{color:var(--brand-ink);font-weight:700}.profile-access-row span,.profile-access-row small{color:var(--muted);font-size:.78rem}.profile-session-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}.profile-session-list{display:grid;gap:9px}.profile-session-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;border:1px solid #dce7f2;border-radius:8px;background:#f9fbfd;padding:12px}.profile-session-row.revoked{opacity:.68;background:#f5f7f9}.profile-session-icon{display:grid;width:38px;height:38px;place-items:center;border-radius:8px;color:var(--brand-blue);background:#eaf4ff}.profile-session-copy{min-width:0;display:grid;gap:2px}.profile-session-copy strong{color:var(--brand-ink);font-weight:700}.profile-session-copy span,.profile-session-copy small,.profile-session-empty{color:var(--muted);font-size:.78rem}.profile-session-empty{display:flex;align-items:center;gap:9px;min-height:54px}@media(max-width:720px){.profile-password-grid{grid-template-columns:1fr}.account-password-security-strip{align-items:stretch;flex-direction:column}.account-password-security-strip .secondary-action{justify-content:center;width:100%}.profile-session-heading{align-items:stretch;flex-direction:column}.profile-session-row{grid-template-columns:auto minmax(0,1fr)}.profile-session-row>button,.profile-session-row>.status-pill{grid-column:2;justify-self:start}}.academic-context-picker{display:flex;align-items:end;flex-wrap:wrap;gap:8px}.academic-context-picker label{display:grid;gap:4px;color:var(--muted);font-size:.74rem;font-weight:650}.academic-context-picker select{min-width:150px;min-height:40px;border:1px solid #cfd9e6;border-radius:8px;color:var(--brand-ink);background:#fff;padding:0 10px;outline:none}.academic-context-picker.compact select{min-width:136px}.academic-context-picker select:focus{border-color:var(--brand-sky);box-shadow:0 0 0 3px #2196dc29}.academic-context-notice{margin:10px 0 16px;border:1px solid #d9e6f5;border-left:4px solid var(--school-primary, var(--brand-blue));border-radius:8px;background:#f8fbff;padding:12px 14px;color:var(--muted)}.academic-context-notice strong{display:block;color:var(--brand-ink);font-size:.95rem}.academic-context-notice span{display:block;margin-top:2px;font-size:.84rem}.icon-text-button,.small-button{color:var(--brand-ink);background:var(--soft-grey)}.mobile-menu-button{width:40px;height:40px;border:0;border-radius:8px;display:none;align-items:center;justify-content:center;color:var(--school-primary, var(--brand-blue));background:var(--soft-blue)}.content{min-width:0;padding:28px}.page-heading{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:22px}.date-control{grid-template-columns:auto minmax(150px,1fr);align-items:center;min-height:42px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.date-control input{border:0;min-height:38px;padding:0}.metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}.metric-card{min-height:118px;display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;align-items:start;border:1px solid var(--line);border-radius:8px;background:linear-gradient(135deg,#fff,#f8fbff);padding:18px;box-shadow:0 12px 26px #151d3f0a}.metric-card:nth-child(2),.people-metric:nth-child(2){background:linear-gradient(135deg,#ffffff,var(--soft-green))}.metric-card:nth-child(3),.people-metric:nth-child(3){background:linear-gradient(135deg,#ffffff,var(--soft-aqua))}.metric-card:nth-child(4),.people-metric:nth-child(4){background:linear-gradient(135deg,#ffffff,var(--soft-gold))}.metric-card span,.metric-card small,.compact-stats dt,.table-wrap td span,.table-empty,.muted{color:var(--muted)}.metric-card strong{display:block;color:var(--brand-ink);font-size:clamp(1.35rem,1rem + 1vw,2rem);font-weight:650;letter-spacing:0;line-height:1.1;margin:4px 0;overflow-wrap:anywhere}.metric-card.warning .metric-icon{color:var(--warning);background:var(--soft-gold)}.metric-card.success .metric-icon{color:#0f8a5f;background:#e7f7ef}.metric-card.danger .metric-icon{color:var(--danger);background:#fbe3df}.platform-page{display:grid;gap:18px}.platform-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid #dbe8f3;border-radius:8px;background:linear-gradient(120deg,#f8fcff,#eef7ff 56%,#fff8e8);box-shadow:0 12px 28px #0f172a12;padding:24px}.platform-kicker{display:block;margin-bottom:6px;color:var(--brand-blue);font-size:.75rem;font-weight:720;letter-spacing:0;text-transform:uppercase}.platform-hero h1{margin:0;color:var(--brand-ink);font-size:clamp(1.55rem,1.2rem + 1vw,1.9rem);font-weight:680}.platform-hero p{max-width:760px;margin:8px 0 0;color:var(--muted)}.platform-active{display:inline-flex;align-items:center;min-height:38px;border:1px solid #bbf7d0;border-radius:999px;background:#ecfdf5;color:#047857;padding:0 14px;font-weight:650;white-space:nowrap}.platform-create-shell,.platform-table-shell{border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 10px 24px #0f172a0f}.platform-create-shell{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px}.platform-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.platform-section-heading h2,.platform-table-header h2{margin:0;color:var(--brand-ink);font-size:1.05rem;font-weight:680}.platform-section-heading p,.platform-table-header p{margin:5px 0 0;color:var(--muted)}.platform-create-launch{min-width:150px}.platform-create-form{position:relative;display:grid;gap:18px}.platform-create-form fieldset{min-width:0;display:grid;gap:18px;margin:0;padding:0;border:0}.platform-create-form.is-busy fieldset{opacity:.45}.platform-form-section{display:grid;gap:14px;border:1px solid #e4edf6;border-radius:8px;background:#fbfdff;padding:16px}.platform-form-section-title{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:2px}.platform-form-section-title strong{color:var(--brand-ink);font-size:.98rem;font-weight:650}.platform-form-section-title span{color:var(--muted);font-size:.82rem;font-weight:500;text-align:right}.platform-password-field{grid-column:1 / -1}.inline-control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.platform-loading-overlay{position:absolute;inset:-2px;z-index:2;display:grid;place-items:center;align-content:center;gap:8px;border-radius:8px;background:#ffffffd1;color:var(--brand-ink);text-align:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.platform-loading-overlay strong{font-size:1rem;font-weight:650}.platform-loading-overlay span:last-child{max-width:360px;color:var(--muted);font-size:.86rem;font-weight:500}.loader-ring{width:34px;height:34px;border:3px solid #dbeafe;border-top-color:var(--brand-blue);border-radius:999px;animation:spin .7s linear infinite}.page-loader{color:var(--brand-ink);text-align:center}.page-loader-fixed,.page-loader-overlay{display:grid;place-items:center;background:linear-gradient(135deg,#ffffffe6,#e8f4ffe0),radial-gradient(circle at 18% 18%,rgba(246,188,18,.18),transparent 34%),radial-gradient(circle at 82% 20%,rgba(33,162,232,.18),transparent 32%);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.page-loader-fixed{position:fixed;inset:0;z-index:200}.page-loader-overlay{position:absolute;inset:0;z-index:12;border-radius:inherit}.page-loader-section,.page-loader-inline{display:grid;place-items:center;min-height:220px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(135deg,#fff,#f8fbff)}.page-loader-inline{min-height:128px;border-style:dashed}.page-loader-card{width:min(360px,calc(100% - 32px));display:grid;justify-items:center;gap:12px;border:1px solid rgba(27,85,166,.14);border-radius:14px;background:#ffffffeb;box-shadow:0 24px 54px #10203329;padding:24px 22px}.page-loader-section .page-loader-card,.page-loader-inline .page-loader-card{box-shadow:none;background:transparent;border:0}.page-loader-mark{position:relative;width:72px;height:72px;display:grid;place-items:center}.page-loader-mark img{width:48px;height:48px;border:1px solid #d9e5ef;border-radius:12px;background:#fff;object-fit:contain;padding:5px;box-shadow:0 10px 24px #1020331a}.page-loader-ring{position:absolute;inset:0;border-radius:999px;background:conic-gradient(from 90deg,var(--brand-blue),#21a2e8,var(--brand-gold),#6fbf4a,var(--brand-blue));animation:spin .9s linear infinite;mask:radial-gradient(circle,transparent 53%,#000 55%);-webkit-mask:radial-gradient(circle,transparent 53%,#000 55%)}.page-loader-copy{display:grid;gap:5px}.page-loader-copy strong{color:var(--brand-ink);font-size:1rem;font-weight:700}.page-loader-copy span{max-width:300px;color:var(--muted);font-size:.88rem;font-weight:500;line-height:1.45}.page-loader-progress{display:inline-flex;gap:6px;align-items:center}.page-loader-progress span{width:8px;height:8px;border-radius:999px;background:var(--brand-blue);animation:loaderDot .9s ease-in-out infinite}.page-loader-progress span:nth-child(2){background:#21a2e8;animation-delay:.12s}.page-loader-progress span:nth-child(3){background:var(--brand-gold);animation-delay:.24s}.platform-table-shell{overflow:hidden}.platform-table-header{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #e4edf6;padding:18px 22px}.platform-table-wrap{border:0;border-radius:0;box-shadow:none}.platform-table-wrap thead th{background:#f8fbff;color:#5b6f82;font-size:.76rem;font-weight:700;text-transform:uppercase}.platform-school-name{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;min-width:220px}.platform-school-name img{width:42px;height:42px;border:1px solid var(--line);border-radius:8px;background:#fff;object-fit:contain;padding:4px}.platform-school-name strong,.platform-school-name span span{display:block}.platform-school-name span span,.platform-location{color:var(--muted);font-size:.86rem}.platform-location{display:inline-flex;align-items:center;gap:6px;min-width:150px}.platform-count{display:inline-flex;justify-content:center;min-width:42px;border-radius:999px;padding:6px 10px;font-weight:700}.platform-count.students{background:#e0f2fe;color:#075985}.platform-count.parents{background:#ede9fe;color:#5b21b6}.platform-count.staff{background:#dcfce7;color:#166534}.platform-open-button{justify-content:center}.sync-credential-modal{display:grid;gap:16px}.sync-credential-school{display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:12px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#f8fbff}.sync-credential-school img{width:48px;height:48px;border:1px solid var(--line);border-radius:8px;background:#fff;object-fit:contain;padding:4px}.sync-credential-school strong,.sync-credential-school span,.sync-credential-table td span{display:block}.sync-credential-school span,.sync-credential-table td span{color:var(--muted);font-size:.84rem}.sync-secret-panel{display:grid;gap:12px;padding:16px;border:1px solid #b7d4ff;border-radius:8px;background:#eef6ff}.sync-secret-panel pre{overflow-x:auto;margin:0;padding:12px;border:1px solid #cfe0f8;border-radius:8px;background:#fff;color:var(--ink);font:.86rem/1.45 Consolas,Courier New,monospace;white-space:pre-wrap}.sync-credential-form{grid-template-columns:1.2fr 1.2fr .6fr;align-items:end}.sync-credential-form .field,.sync-credential-form .toggle-field{min-width:0}.sync-credential-table code{display:inline-block;max-width:220px;overflow-wrap:anywhere;color:#174ea6;font-size:.82rem}.local-api-credential-panel .section-heading{align-items:flex-start}.unit-credential-modal{display:grid;gap:14px}.unit-credential-device-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border:1px solid #d8e5f2;border-radius:8px;background:linear-gradient(135deg,#f8fbff,#fffdf2)}.unit-credential-device-card strong,.unit-credential-device-card small{display:block}.unit-credential-device-card strong{color:var(--brand-ink);font-size:1rem;font-weight:650}.unit-credential-device-card small{margin-top:2px;color:var(--muted);font-size:.82rem}.unit-credential-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid #dce8f4;border-radius:8px;overflow:hidden;background:#fff}.unit-credential-summary>div{min-width:0;padding:12px;border-right:1px solid #edf2f7;border-bottom:1px solid #edf2f7}.unit-credential-summary>div:nth-child(2n){border-right:0}.unit-credential-summary>div:nth-last-child(-n+2){border-bottom:0}.unit-credential-summary span,.unit-credential-summary strong,.unit-credential-summary code{display:block}.unit-credential-summary span{color:#2f6639;font-size:.72rem;font-weight:750;letter-spacing:.04em;text-transform:uppercase}.unit-credential-summary strong,.unit-credential-summary code{margin-top:4px;color:var(--brand-ink);font-size:.9rem;overflow-wrap:anywhere}.confirmation-copy{display:grid;gap:8px;margin-bottom:14px;color:var(--muted);font-size:.92rem}.confirmation-copy p{margin:0}.confirmation-copy strong{color:var(--brand-ink)}.split-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px}.panel,.table-section,.empty-state{border:1px solid var(--line);border-radius:8px;background:var(--panel-bg);box-shadow:0 12px 26px #151d3f09}.panel,.empty-state{padding:18px}.panel h3,.section-heading h3{font-size:1rem}.compact-stats{display:grid;gap:12px;margin:16px 0 0}.compact-stats div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #edf2f7;padding-bottom:10px}.compact-stats div:last-child{border-bottom:0;padding-bottom:0}.compact-stats dd{margin:0;color:var(--brand-ink);font-weight:650}.notice{border-radius:8px;padding:12px 14px;margin-bottom:14px;font-weight:600}.notice.success{color:var(--success);background:#e4f6f1;border:1px solid #bfe2d8}.notice.danger{color:var(--danger);background:#fbe3df;border:1px solid #efc0b8}.notice.success:not(.device-secret-panel),.notice.danger,.notice.error,.form-error,.form-success,.inline-error,.inline-success,.portal-error{display:none!important}.feedback-toast-stack{position:fixed;top:50%;left:50%;z-index:1400;display:grid;gap:10px;width:min(460px,calc(100vw - 28px));transform:translate(-50%,-50%);pointer-events:none}.feedback-toast{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:start;border:1px solid #d9e6f4;border-left-width:5px;border-radius:10px;background:#fffffffa;box-shadow:0 18px 42px #0d1d362e;padding:13px 13px 13px 12px;pointer-events:auto;animation:feedback-toast-in .18s ease-out}.feedback-toast.success{border-left-color:var(--success)}.feedback-toast.error{border-left-color:var(--danger)}.feedback-toast.warning{border-left-color:#f6b81a}.feedback-toast.info{border-left-color:var(--brand-blue)}.feedback-toast-icon{display:grid;width:36px;height:36px;place-items:center;border-radius:999px;color:var(--brand-blue);background:#eef6ff}.feedback-toast.success .feedback-toast-icon{color:var(--success);background:#e7f7f1}.feedback-toast.error .feedback-toast-icon{color:var(--danger);background:#fdece9}.feedback-toast.warning .feedback-toast-icon{color:#8a5a00;background:#fff5d9}.feedback-toast strong{display:block;color:var(--brand-ink);font-size:.92rem;font-weight:750}.feedback-toast p{margin:3px 0 0;color:#475569;font-size:.86rem;line-height:1.45}.feedback-toast-countdown{display:block;width:100%;height:4px;margin-top:10px;overflow:hidden;border-radius:999px;background:#e6eef7}.feedback-toast-countdown span{display:block;width:100%;height:100%;border-radius:inherit;background:currentColor;animation:feedback-toast-countdown var(--feedback-duration, 3s) linear forwards}.feedback-toast.success .feedback-toast-countdown span{color:var(--success)}.feedback-toast.error .feedback-toast-countdown span{color:var(--danger)}.feedback-toast.warning .feedback-toast-countdown span{color:#f6b81a}.feedback-toast.info .feedback-toast-countdown span{color:var(--brand-blue)}.feedback-toast button{display:grid;width:28px;height:28px;place-items:center;border:0;border-radius:999px;color:#64748b;background:transparent;cursor:pointer}.feedback-toast button:hover{color:var(--brand-ink);background:#f1f5f9}.confirmation-backdrop{position:fixed;inset:0;z-index:1500;display:grid;place-items:center;padding:22px;background:#0f172a75;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.confirmation-dialog{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;width:min(520px,100%);border:1px solid #dbe6f2;border-top:5px solid var(--brand-blue);border-radius:12px;background:#fff;box-shadow:0 28px 70px #0d1d3647;padding:20px;animation:feedback-toast-in .18s ease-out}.confirmation-dialog.danger{border-top-color:var(--danger)}.confirmation-dialog.warning{border-top-color:#f6b81a}.confirmation-icon{display:grid;width:48px;height:48px;place-items:center;border-radius:999px;color:var(--brand-blue);background:#eef6ff}.confirmation-dialog.danger .confirmation-icon{color:var(--danger);background:#fdece9}.confirmation-dialog.warning .confirmation-icon{color:#8a5a00;background:#fff5d9}.confirmation-copy h2{margin:0;color:var(--brand-ink);font-size:1.08rem;font-weight:760}.confirmation-copy p{margin:7px 0 0;color:#475569;line-height:1.55}.confirmation-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:10px;border-top:1px solid #e4ecf4;padding-top:16px}.danger-action{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border:1px solid var(--danger);border-radius:8px;color:#fff;background:var(--danger);padding:10px 16px;font:inherit;font-weight:760;cursor:pointer}.danger-action:hover{filter:brightness(.95)}@keyframes feedback-toast-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes feedback-toast-countdown{0%{width:100%}to{width:0%}}.device-secret-panel{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,2fr) auto;align-items:center;gap:12px}.device-secret-panel div{display:grid;gap:3px}.device-secret-panel span{color:var(--muted);font-size:.82rem;font-weight:500}.device-secret-panel code{min-width:0;overflow-wrap:anywhere;color:var(--brand-ink);font-size:.85rem}.table-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px}@media(max-width:720px){.device-secret-panel{grid-template-columns:1fr}.device-secret-panel .small-button{justify-self:start}}.foundation-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px;padding:4px;border:1px solid var(--line);border-radius:8px;background:#fff}.foundation-subtabs{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.foundation-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:end;border-bottom:1px solid #edf2f7;background:#fbfdff;padding:14px 18px}.foundation-toolbar .field{min-width:min(280px,100%);max-width:360px}.people-search{display:flex;align-items:end;justify-content:flex-end;flex-wrap:wrap;gap:10px}.people-search label{display:grid;gap:6px;color:var(--muted);font-size:.86rem;font-weight:600;min-width:min(260px,100%)}.people-search input{width:100%;min-height:42px;border:1px solid #cfd9e6;border-radius:8px;color:var(--brand-ink);background:var(--surface);padding:0 12px;outline:none}.notice-status-filter{display:inline-flex;width:fit-content;max-width:100%;gap:4px;margin:12px 18px 0;padding:4px;border:1px solid #d8e4f0;border-radius:8px;background:#f7fafc}.notice-status-filter button{min-height:34px;border:0;border-radius:6px;padding:7px 13px;color:#52657a;background:transparent;font:inherit;font-size:.8rem;font-weight:650;cursor:pointer}.notice-status-filter button.active{color:#fff;background:var(--brand-blue);box-shadow:0 2px 7px #18549b33}.list-pagination{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;border-top:1px solid #edf2f7;background:#fbfdff;padding:12px 16px}.list-pagination-summary,.list-pagination-controls{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.86rem}.list-pagination-summary strong,.list-pagination-controls span{color:var(--brand-ink);font-weight:700}.list-pagination label{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:.84rem;font-weight:700}.list-pagination select{min-height:36px;border:1px solid #cfd9e6;border-radius:8px;background:var(--surface);color:var(--brand-ink);padding:0 30px 0 10px;outline:none}.people-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:14px}.people-metric{min-height:104px;display:grid;align-content:start;gap:3px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(135deg,#fff,#f8fbff);padding:16px;box-shadow:0 12px 26px #151d3f0a}.people-metric span{color:var(--muted);font-size:.78rem;font-weight:650;letter-spacing:.04em;text-transform:uppercase}.people-metric strong{color:var(--brand-ink);font-size:1.5rem;font-weight:650;line-height:1.1}.people-metric small{color:var(--muted);font-weight:500}.tab-button{min-height:40px;border:1px solid var(--line);border-radius:8px;display:inline-flex;align-items:center;gap:8px;padding:0 14px;color:#42515b;background:transparent;font-weight:600}.tab-button.active,.tab-button:hover{color:#fff;border-color:var(--brand-blue);background:var(--brand-blue);font-weight:650}.setup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.setup-grid.single-column{grid-template-columns:minmax(0,1fr)}.setup-grid.three-column{grid-template-columns:repeat(3,minmax(0,1fr))}.setup-panel{border:1px solid var(--line);border-radius:8px;background:linear-gradient(180deg,#fff8d666,#fff0 120px),var(--panel-bg);overflow:hidden;box-shadow:0 12px 26px #151d3f09}.setup-panel .section-heading h3{display:inline-flex;align-items:center;gap:8px}.setup-panel+.setup-panel{margin-top:16px}.hr-attendance-workspace{display:grid;gap:14px}.hr-attendance-subtabs{width:fit-content;max-width:100%;padding:4px;border:1px solid var(--line);border-radius:8px;background:#f7fafc}.hr-attendance-subtabs .tab-button{min-height:38px}.attendance-toolbar{display:flex;justify-content:flex-end;padding:18px 18px 0}.attendance-toolbar .field{min-width:220px}.attendance-summary-grid{padding:14px 18px 18px}@media(max-width:620px){.hr-attendance-subtabs{width:100%}.hr-attendance-subtabs .tab-button{flex:1 1 100%;justify-content:center}}.foundation-table table{min-width:560px}.foundation-table td{font-size:.92rem}.academic-filter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:0 18px 18px}.timetable-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:0 18px 18px}.assessment-filter-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.result-filter-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.timetable-inline-notice{margin:0 18px 18px}.time-input-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.timetable-break-guidance{display:grid;gap:4px;padding:10px 12px;border:1px solid #f0d88c;border-radius:7px;background:#fffbea;color:#67521a;font-size:.78rem}.timetable-break-guidance strong{color:#3d3216;font-size:.82rem}.timetable-day-pill{display:inline-flex;align-items:center;min-height:26px;border-radius:999px;padding:0 10px;background:#eaf3ff;color:var(--brand-blue);font-size:.78rem;font-weight:650}.segmented-control{display:inline-flex;border:1px solid var(--line);border-radius:8px;background:#fff;padding:3px}.segmented-control button{min-height:30px;border:0;border-radius:6px;display:inline-flex;align-items:center;gap:6px;padding:0 10px;color:#52616c;background:transparent;font-size:.82rem;font-weight:650}.segmented-control button.active{color:#fff;background:var(--brand-blue)}.print-header{display:none}.timetable-grid-wrap{margin:0 18px 18px;border:1px solid #e4edf6;border-radius:8px;background:#fff}.timetable-grid-table{min-width:940px;table-layout:fixed}.timetable-grid-table th:first-child,.timetable-grid-table td:first-child{width:108px}.timetable-grid-table tbody th{background:#fbfdff;color:var(--brand-ink);font-size:.86rem;letter-spacing:0;text-transform:none}.timetable-grid-table tbody th span{display:block}.timetable-grid-entry{position:relative;display:grid;gap:3px;min-height:92px;border:1px solid #cfe2f6;border-radius:8px;background:linear-gradient(135deg,#ffffff,var(--soft-blue));padding:10px 38px 10px 10px;box-shadow:inset 3px 0 0 var(--brand-blue)}.timetable-grid-edit{position:absolute;top:7px;right:7px;display:inline-grid;width:27px;height:27px;place-items:center;border:1px solid #c6d9ec;border-radius:6px;color:#1f5da8;background:#ffffffeb;cursor:pointer}.timetable-grid-edit:hover,.timetable-grid-edit:focus-visible{border-color:#72a5d8;background:#eaf4ff;outline:none}.timetable-grid-entry+.timetable-grid-entry{margin-top:8px}.timetable-grid-entry.inactive{opacity:.62;background:#f8fafc;box-shadow:inset 3px 0 #94a3b8}.timetable-grid-entry.is-highlighted,.selected-row{outline:2px solid rgba(246,188,18,.9);outline-offset:-2px}.timetable-grid-entry strong{color:var(--brand-blue);font-size:.88rem;font-weight:720}.timetable-grid-entry span{color:var(--brand-ink);font-weight:650}.timetable-grid-entry small,.timetable-grid-entry em,.timetable-grid-empty{color:var(--muted);font-size:.78rem;font-style:normal;font-weight:560}.timetable-grid-empty{display:block;min-height:92px;border:1px dashed #dbe6f2;border-radius:8px;padding:10px;background:#fbfdff}.assessment-score-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 18px 14px;border:1px solid #ddeaf5;border-radius:8px;background:linear-gradient(135deg,#fbfdff,#fffaf0);padding:12px 14px;color:var(--brand-ink)}.assessment-score-summary div{display:grid;gap:3px}.assessment-score-summary strong{font-weight:720}.assessment-score-summary span{color:var(--muted);font-size:.86rem;font-weight:600}.result-preview-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 18px 14px;border:1px solid #dce8f2;border-radius:8px;background:linear-gradient(135deg,#f8fbfff5,#fffaefbd),#fff;padding:12px}.result-preview-tools-heading{display:grid;gap:4px;min-width:min(260px,100%)}.result-preview-tools-heading div{display:grid;gap:2px}.result-preview-tools-heading span,.result-tool-card span{color:var(--brand-blue);font-size:.72rem;font-weight:760;letter-spacing:.06em;text-transform:uppercase}.result-preview-tools-heading strong{color:var(--brand-ink);font-size:.98rem;font-weight:740}.result-preview-tools-heading small{color:var(--muted);font-size:.78rem;font-weight:620}.result-tool-card-grid{display:grid;flex:1;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.result-tool-card{display:grid;gap:5px;min-height:90px;border:1px solid #dce8f2;border-radius:8px;background:#ffffffdb;color:var(--brand-ink);cursor:pointer;padding:11px;text-align:left;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.result-tool-card:hover{border-color:#1b55a661;box-shadow:0 12px 28px #1531571a;transform:translateY(-1px)}.result-tool-card span{display:inline-flex;align-items:center;gap:6px}.result-tool-card strong{color:var(--brand-ink);font-size:1.08rem;font-weight:780;letter-spacing:0}.result-tool-card small{color:var(--muted);font-size:.77rem;font-weight:620;line-height:1.35}.cumulative-result-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;margin:0 18px 14px;border:1px solid #dbe8f4;border-radius:8px;background:linear-gradient(135deg,#fffffff5,#f8fcffeb),#fff;padding:14px}.cumulative-action-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 18px 14px;border:1px solid #dbe8f4;border-radius:8px;background:linear-gradient(135deg,#f8fbfff5,#fffaefb3),#fff;padding:12px 14px}.cumulative-action-strip>div:first-child{display:grid;gap:3px}.cumulative-action-strip strong{color:var(--brand-ink);font-size:.98rem;font-weight:740}.cumulative-action-strip span{color:var(--muted);font-size:.78rem;font-weight:610}.cumulative-action-strip>div:last-child{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.portal-transcript-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;border:1px solid #dbe8f4;border-radius:8px;background:linear-gradient(135deg,#f8fbfff5,#fffaefad),#fff;padding:12px 14px}.portal-transcript-strip>div:first-child{display:grid;gap:3px}.portal-transcript-strip strong{color:var(--brand-ink);font-size:.96rem;font-weight:740}.portal-transcript-strip span{color:var(--muted);font-size:.78rem;font-weight:610}.portal-transcript-strip>div:last-child{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.cumulative-result-header img{width:54px;height:54px;border:1px solid #dbe8f4;border-radius:8px;background:#fff;object-fit:contain;padding:5px}.cumulative-result-header div{display:grid;gap:3px;min-width:0}.cumulative-result-header div:last-child{text-align:right}.cumulative-result-header span{color:var(--brand-blue);font-size:.72rem;font-weight:760;letter-spacing:.06em;text-transform:uppercase}.cumulative-result-header strong{color:var(--brand-ink);font-size:1.06rem;font-weight:760}.cumulative-result-header small{color:var(--muted);font-size:.78rem;font-weight:610}.cumulative-summary-grid{margin:0 18px 14px;grid-template-columns:repeat(5,minmax(0,1fr))}.cumulative-result-wrap{margin-top:0}.cumulative-result-table{min-width:980px}.cumulative-result-table th small{display:block;margin-top:2px;color:#668098;font-size:.66rem;font-weight:700;text-transform:none}.cumulative-term-score{display:grid;gap:2px}.cumulative-term-score strong{color:var(--brand-ink)}.cumulative-term-score small{color:var(--muted);font-size:.72rem;font-weight:650}.cumulative-transcript-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-bottom:12px}.cumulative-transcript{display:grid;gap:14px;color:var(--brand-ink)}.cumulative-transcript-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;border:1px solid #dbe8f4;border-radius:8px;background:linear-gradient(135deg,#fffffff5,#f7fbfff0),#fff;padding:14px}.cumulative-transcript-header img{width:64px;height:64px;border:1px solid #dbe8f4;border-radius:8px;background:#fff;object-fit:contain;padding:5px}.cumulative-transcript-header div{display:grid;gap:3px}.cumulative-transcript-header div:last-child{text-align:right}.cumulative-transcript-header span,.cumulative-transcript-profile span{color:var(--brand-blue);font-size:.72rem;font-weight:760;letter-spacing:.06em;text-transform:uppercase}.cumulative-transcript-header h3{margin:0;font-size:1.28rem;font-weight:780}.cumulative-transcript-header p{margin:0;color:var(--muted);font-size:.84rem;font-weight:610}.cumulative-transcript-profile{display:grid;grid-template-columns:minmax(220px,2fr) repeat(4,minmax(0,1fr));gap:10px}.cumulative-transcript-profile>div{display:grid;align-content:center;gap:4px;min-height:74px;border:1px solid #dbe8f4;border-radius:8px;background:#fbfdff;padding:11px}.cumulative-transcript-profile>.result-student-identity{display:flex}.cumulative-transcript-profile strong{font-size:1rem;font-weight:760}.cumulative-transcript-wrap{margin:0}.cumulative-transcript-table{min-width:820px}@media(max-width:920px){.cumulative-result-header{grid-template-columns:auto minmax(0,1fr)}.cumulative-action-strip,.portal-transcript-strip{align-items:flex-start;flex-direction:column}.cumulative-action-strip>div:last-child,.portal-transcript-strip>div:last-child{justify-content:flex-start}.cumulative-result-header div:last-child{grid-column:1 / -1;text-align:left}.cumulative-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cumulative-transcript-header,.cumulative-transcript-profile{grid-template-columns:1fr}.cumulative-transcript-header div:last-child{text-align:left}}.result-tool-modal{display:grid;gap:12px}.result-tool-modal .result-analytics-panel,.result-tool-modal .report-finalization-panel,.result-tool-modal .report-workflow-panel{margin:0}.result-analytics-panel{display:grid;gap:14px;margin:0 18px 14px;border:1px solid #dce8f2;border-radius:8px;background:linear-gradient(135deg,#fffffff5,#f4faffe6),#fff;padding:14px}.result-analytics-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.result-analytics-metric{display:grid;gap:4px;min-height:96px;border:1px solid #dce8f2;border-radius:8px;background:#fff;padding:12px}.result-analytics-metric span,.analytics-card-heading span{color:var(--brand-blue);font-size:.72rem;font-weight:760;letter-spacing:.06em;text-transform:uppercase}.result-analytics-metric strong{color:var(--brand-ink);font-size:1.45rem;font-weight:780;letter-spacing:0;line-height:1}.result-analytics-metric small{color:var(--muted);font-size:.78rem;font-weight:620;line-height:1.35}.result-analytics-metric.blue{background:linear-gradient(135deg,#f8fbff,#eef6ff)}.result-analytics-metric.green{background:linear-gradient(135deg,#f8fffb,#edf8f1)}.result-analytics-metric.amber{background:linear-gradient(135deg,#fffdf5,#fff7de)}.result-analytics-metric.red{background:linear-gradient(135deg,snow,#fff1f1)}.result-analytics-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.85fr);gap:12px}.result-analytics-card{display:grid;align-content:start;gap:12px;border:1px solid #dce8f2;border-radius:8px;background:#ffffffdb;padding:12px}.subject-performance-card{grid-row:span 2}.analytics-card-heading{display:grid;gap:3px}.analytics-card-heading strong{color:var(--brand-ink);font-size:.96rem;font-weight:730}.subject-performance-list,.grade-distribution-list,.result-student-watch-list{display:grid;gap:9px}.subject-performance-row{display:grid;grid-template-columns:minmax(140px,.8fr) minmax(140px,1fr);gap:7px 10px;align-items:center;border-bottom:1px solid #edf3f8;padding-bottom:8px}.subject-performance-row:last-child,.result-student-watch-row:last-child{border-bottom:0;padding-bottom:0}.subject-performance-row>div:first-child,.result-student-watch-row>div:first-child{display:grid;gap:2px}.subject-performance-row strong,.result-student-watch-row strong{color:var(--brand-ink);font-size:.9rem;font-weight:740}.subject-performance-row span,.result-student-watch-row span,.subject-performance-row small,.result-student-watch-row small{color:var(--muted);font-size:.76rem;font-weight:620;line-height:1.35}.subject-performance-row small{grid-column:1 / -1}.analytics-bar-track{position:relative;overflow:hidden;height:9px;border-radius:999px;background:#eaf2f8}.analytics-bar-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand-blue),#2aa4df)}.grade-distribution-row{display:grid;grid-template-columns:auto minmax(80px,1fr) auto auto;gap:8px;align-items:center}.grade-distribution-row strong{color:var(--brand-ink);font-size:.86rem;font-weight:740}.grade-distribution-row small{color:var(--muted);font-size:.74rem;font-weight:650}.result-student-watch-row{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #edf3f8;padding-bottom:8px}.result-student-watch-row>div:last-child{display:flex;align-items:center;gap:8px;white-space:nowrap}@media(max-width:980px){.result-preview-tools{align-items:stretch;flex-direction:column}.result-analytics-metrics,.result-analytics-grid,.result-tool-card-grid{grid-template-columns:1fr 1fr}.subject-performance-card{grid-column:1 / -1;grid-row:auto}}@media(max-width:680px){.result-analytics-metrics,.result-analytics-grid,.result-tool-card-grid,.subject-performance-row{grid-template-columns:1fr}.grade-distribution-row{grid-template-columns:auto 1fr auto}.grade-distribution-row small{grid-column:2 / -1}.result-student-watch-row{align-items:flex-start;flex-direction:column}}.assessment-score-wrap{margin:0 18px 18px}.assessment-score-table{min-width:980px}.assessment-score-table th{white-space:nowrap}.assessment-score-table th:first-child,.assessment-score-table td:first-child{min-width:220px}.student-score-cell{display:grid;gap:3px}.student-score-cell strong{color:var(--brand-ink);font-weight:720}.student-score-cell span{color:var(--muted);font-size:.78rem;font-weight:600}.component-code-stack{display:inline-grid;gap:2px;justify-items:start}.component-code-stack strong{color:var(--brand-blue);font-size:.78rem;font-weight:760}.component-code-stack small{color:var(--muted);font-size:.72rem;font-weight:600}.score-input{width:86px;min-height:34px;border:1px solid #d4e2ee;border-radius:8px;background:#fff;color:var(--brand-ink);font:inherit;font-weight:650;padding:6px 8px}.score-input:focus{border-color:var(--brand-blue);box-shadow:0 0 0 3px #1b55a61f;outline:none}.score-input:disabled{color:#64748b;background:#f8fafc}.assessment-total-cell{color:var(--brand-blue);font-weight:760}.grade-pill{display:inline-flex;align-items:center;justify-content:center;min-width:38px;min-height:28px;border-radius:999px;border:1px solid rgba(246,188,18,.55);background:#fff8df;color:#875800;font-size:.78rem;font-weight:760;padding:0 10px}.result-sheet-wrap,.report-card-table-wrap{margin:0 18px 18px}.result-sheet-table{min-width:1080px}.result-publication-panel{display:flex;align-items:stretch;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:0 18px 14px;border:1px solid #dce8f2;border-radius:8px;background:linear-gradient(135deg,#f4f8fcf0,#fffaf0c7),#fff;padding:14px}.result-publication-panel p{margin:4px 0 0;color:var(--muted);font-size:.86rem;font-weight:600}.publication-title-row{display:flex;align-items:center;gap:10px;margin-top:3px}.publication-title-row strong{color:var(--brand-ink);font-size:1rem;font-weight:720}.publication-summary{min-width:min(360px,100%)}.result-entry-workflow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0 12px}.result-entry-step{display:flex;align-items:flex-start;gap:10px;min-height:76px;padding:13px;border:1px solid #d9e3ef;background:#f8fafc;color:#607086}.result-entry-step>span{display:grid;flex:0 0 28px;width:28px;height:28px;place-items:center;border-radius:50%;background:#e7edf5;font-weight:700}.result-entry-step div,.result-template-setup-card>div,.narrative-entry-row>div{display:grid;gap:4px;min-width:0}.result-entry-step small,.result-template-setup-card small,.narrative-entry-row small{color:#6a7a90}.result-entry-step.active{border-color:#b8d0ea;background:#f1f7fd;color:#173a63}.result-entry-step.active>span{background:#1f5faf;color:#fff}.result-template-setup-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,380px);align-items:center;gap:18px;padding:16px;margin-bottom:16px;border:1px solid #cbdced;background:#fbfdff}.result-template-setup-card select{width:100%}.result-template-filters{margin-bottom:18px}.result-template-empty-state{display:grid;justify-items:center;gap:7px;padding:38px 20px;border:1px dashed #bfcfe0;background:#f8fafc;color:#607086;text-align:center}.result-template-empty-state svg{color:#1f5faf}.result-template-empty-state strong{color:var(--brand-ink)}.result-template-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin:4px 0 15px}.result-template-heading h3,.result-template-option h3{margin:4px 0 0;color:var(--brand-ink)}.result-template-heading p,.result-template-option p{margin:5px 0 0;color:#607086}.result-template-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.result-template-option{display:grid;grid-template-rows:auto auto 1fr auto;gap:15px;min-height:290px;padding:17px;border:1px solid #d5e0eb;border-radius:6px;background:#fff;box-shadow:0 8px 22px #1a37590f}.result-template-option.selected{border-color:#2b6cb7;box-shadow:inset 0 3px #f4b400,0 10px 24px #1f5faf1c}.result-template-option-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.result-template-icon{display:grid;width:38px;height:38px;place-items:center;border-radius:6px;background:#edf6fd;color:#1769aa}.result-template-requirements{display:grid;align-content:start;gap:8px}.result-template-requirements span,.result-template-selected{display:flex;align-items:center;gap:7px;color:#40536a;font-size:.86rem}.result-template-requirements svg,.result-template-selected svg{flex:0 0 auto;color:#13805d}.result-template-selected{min-height:42px;padding:10px 12px;border:1px solid #bfe4d5;border-radius:6px;background:#effaf6;color:#087252;font-weight:700}.narrative-entry-roster{display:grid;gap:0;margin-top:18px;border:1px solid #d9e3ef}.narrative-entry-roster .section-heading-row,.narrative-entry-row{display:grid;grid-template-columns:minmax(220px,1fr) minmax(180px,auto) auto;align-items:center;gap:16px;padding:13px 16px}.narrative-entry-roster .section-heading-row{grid-template-columns:1fr auto;background:#f2f6fa;border-bottom:1px solid #d9e3ef}.narrative-entry-row+.narrative-entry-row{border-top:1px solid #e6edf4}.narrative-entry-progress{display:flex!important;grid-auto-flow:column;gap:8px!important;color:#52657d;font-size:.85rem}.result-ratings-editor{margin-top:16px}.result-homework-rating-field{display:grid;grid-template-columns:minmax(240px,420px) auto;align-items:end;gap:12px;margin:14px 0 18px}.result-skill-rating-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}@media(max-width:900px){.result-entry-workflow,.result-template-setup-card,.narrative-entry-roster .section-heading-row,.narrative-entry-row,.result-homework-rating-field,.result-skill-rating-grid,.result-template-gallery{grid-template-columns:1fr}.result-template-heading{align-items:stretch;flex-direction:column}}@media(min-width:901px)and (max-width:1200px){.result-template-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}.publication-audit-strip{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.publication-audit-strip span{border:1px solid #dce8f2;border-radius:999px;background:#ffffffd6;color:#506176;font-size:.74rem;font-weight:680;line-height:1.25;padding:5px 9px}.report-template-selector{display:grid;gap:6px;min-width:min(320px,100%)}.report-template-selector label{color:var(--brand-blue);font-size:.7rem;font-weight:760;letter-spacing:.07em;text-transform:uppercase}.report-template-selector select{min-height:42px;border:1px solid #cfe0ef;border-radius:8px;background:#fff;color:var(--brand-ink);padding:0 12px;font:inherit;font-size:.92rem;font-weight:620}.report-template-selector strong{color:var(--brand-ink);font-size:.94rem;font-weight:680}.report-template-selector small{color:var(--muted);font-size:.76rem;font-weight:600;line-height:1.35}.publication-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px}.publication-readiness{max-width:340px;border:1px solid #dce8f2;border-radius:8px;padding:10px 12px;color:var(--text-soft);background:#fff;font-size:.82rem;font-weight:650;line-height:1.45}.publication-readiness.ready{border-color:#228b5342;color:#166534;background:#f1fbf5}.publication-readiness.warning{border-color:#b453093d;color:#7c4a03;background:#fff8e8}.publication-signature-panel{display:grid;gap:8px;min-width:min(280px,100%);border:1px solid #dce8f2;border-radius:8px;background:#fff;padding:10px 12px}.publication-signature-heading{display:grid;gap:2px}.publication-signature-heading span{color:var(--brand-blue);font-size:.7rem;font-weight:760;letter-spacing:.07em;text-transform:uppercase}.publication-signature-heading strong{color:var(--brand-ink);font-size:.9rem;font-weight:700}.publication-signature-status,.publication-signature-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.publication-signature-status span{border:1px solid #dce8f2;border-radius:999px;padding:5px 9px;font-size:.75rem;font-weight:720}.publication-signature-status .ready{border-color:#228b533d;color:#166534;background:#f1fbf5}.publication-signature-status .warning{border-color:#b453093d;color:#7c4a03;background:#fff8e8}.report-finalization-panel{display:grid;gap:12px;margin:0 18px 14px;border:1px solid #dce8f2;border-radius:8px;padding:14px;background:#fff}.report-finalization-panel.ready{border-color:#228b533d}.report-finalization-panel.warning{border-color:#b4530933}.report-finalization-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--brand-ink)}.report-finalization-heading span{display:block;color:var(--brand-blue);font-size:.7rem;font-weight:760;letter-spacing:.07em;text-transform:uppercase}.report-finalization-heading strong{display:block;margin-top:2px;font-size:1rem}.report-finalization-heading small{display:block;margin-top:4px;color:var(--muted);font-size:.78rem;font-weight:620;line-height:1.35}.report-finalization-panel.ready .report-finalization-heading svg{color:#16a34a}.report-finalization-panel.warning .report-finalization-heading svg{color:#b45309}.report-finalization-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.report-finalization-card{min-height:96px;border:1px solid #dce8f2;border-radius:8px;padding:12px;display:grid;align-content:start;gap:5px;background:#f8fbff}.report-finalization-card.ready{border-color:#228b5338;background:#f4fbf7}.report-finalization-card.warning{border-color:#b4530938;background:#fff8e8}.report-finalization-card span{color:var(--muted);font-size:.7rem;font-weight:760;letter-spacing:.05em;text-transform:uppercase}.report-finalization-card strong{color:var(--brand-ink);font-size:.94rem}.report-finalization-card small{color:var(--text-soft);font-size:.76rem;line-height:1.45}.result-sheet-summary-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.65rem;justify-content:flex-end}.report-workflow-panel{background:linear-gradient(135deg,#fffffff5,#f5f9fff0);border:1px solid #dbe7f5;border-radius:12px;box-shadow:0 14px 36px #1f5aa614;margin:1rem 0;padding:1rem}.report-workflow-grid{display:grid;gap:.8rem;grid-template-columns:repeat(3,minmax(0,1fr))}.report-workflow-card{background:#fff;border:1px solid #dbe7f5;border-radius:10px;padding:.9rem}.report-workflow-card>div:first-child{align-items:flex-start;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:.7rem}.report-workflow-card span{color:var(--muted);display:block;font-size:.7rem;font-weight:760;letter-spacing:.05em;text-transform:uppercase}.report-workflow-card strong{color:var(--brand-ink);font-size:.94rem}.workflow-student-list{display:grid;gap:.55rem}.workflow-student-item{align-items:center;background:#f8fbff;border:1px solid #e3edf8;border-radius:8px;display:flex;gap:.75rem;justify-content:space-between;padding:.65rem}.workflow-student-item strong{display:block;font-size:.86rem}.workflow-student-item span{font-size:.72rem;letter-spacing:0;margin-top:.15rem;text-transform:none}.workflow-empty{color:var(--muted);font-size:.82rem;margin:0}.workflow-task-list{color:var(--text);display:grid;font-size:.82rem;gap:.42rem;margin:0;padding-left:1.1rem}.report-batch-modal{display:grid;gap:1rem}.report-batch-status{background:#f8fbff;border:1px solid #dbe7f5;border-radius:10px;padding:.9rem}.report-batch-status.completed,.report-batch-status.completedwitherrors{background:#f0fdf7;border-color:#bcebd3}.report-batch-status.failed{background:#fff5f5;border-color:#fecaca}.report-batch-status>div:first-child{align-items:center;display:flex;justify-content:space-between}.report-batch-status span,.report-batch-stats span{color:var(--muted);display:block;font-size:.72rem;font-weight:760;letter-spacing:.04em;text-transform:uppercase}.report-batch-status strong{color:var(--brand-ink);font-size:1.35rem}.report-batch-progress{background:#e8eef6;border-radius:999px;height:.55rem;margin-top:.75rem;overflow:hidden}.report-batch-progress span{background:linear-gradient(90deg,var(--brand-blue),var(--brand-sky),var(--brand-gold));display:block;height:100%;transition:width .3s ease}.report-batch-stats{display:grid;gap:.7rem;grid-template-columns:repeat(4,minmax(0,1fr))}.report-batch-stats div{background:#fff;border:1px solid #dbe7f5;border-radius:10px;padding:.75rem}.report-batch-stats strong{color:var(--brand-ink);display:block;font-size:1.15rem;margin-top:.2rem}.report-batch-failures{display:grid;gap:.55rem}.report-batch-failures>strong{color:var(--brand-ink);font-size:.9rem}.official-report-modal-shell{min-height:min(78vh,820px)}.official-pdf-preview-panel{background:#f8fbff;border:1px solid #dbe7f5;border-radius:12px;display:grid;gap:.75rem;padding:.85rem}.official-pdf-frame{background:#fff;border:1px solid #c9d8eb;border-radius:10px;height:min(70vh,780px);min-height:560px;width:100%}.official-pdf-placeholder{align-items:center;background:#fff;border:1px dashed #b9cbe2;border-radius:10px;color:#486078;display:flex;font-weight:720;justify-content:center;min-height:420px;padding:2rem;text-align:center}.official-pdf-placeholder.error{background:#fff5f5;border-color:#f2b8b5;color:#b42318}.student-finalization-badges{min-width:190px;display:flex;flex-wrap:wrap;gap:5px}.student-finalization-badges span{border-radius:999px;padding:4px 8px;color:#53627a;background:#f3f6fa;font-size:.7rem;font-weight:720;white-space:nowrap}.student-finalization-badges span.ready{color:#166534;background:#e8f8ef}.student-finalization-badges span.warning{color:#8a4b05;background:#fff2d6}.result-sheet-table th:first-child,.result-sheet-table td:first-child{width:72px}.position-cell{color:var(--brand-blue);font-weight:760}.result-student-identity{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;min-width:210px}.result-student-identity img,.result-student-identity>span{width:38px;height:38px;border-radius:999px}.result-student-identity img{object-fit:cover;border:1px solid #d9e6f2;background:#fff}.result-student-identity>span{display:inline-grid;place-items:center;color:var(--brand-blue);background:#eaf5ff;font-size:.78rem;font-weight:760}.result-student-identity small{display:block;color:var(--muted);font-size:.78rem;font-weight:600}.result-score-chip{display:inline-flex;align-items:center;min-height:28px;border-radius:999px;background:#f4f8fc;color:var(--brand-ink);font-size:.78rem;font-weight:700;padding:0 10px;white-space:nowrap}.report-card-preview{display:grid;gap:14px;--report-primary: var(--brand-blue);--report-accent: var(--brand-gold);color:var(--brand-ink)}.report-card-preview.report-card-landscape{min-width:min(980px,100%)}.report-card-brand-band{display:grid;grid-template-columns:78px minmax(0,1fr) auto;align-items:center;gap:18px;border:1px solid #dce8f2;border-top:4px solid var(--report-accent);border-radius:8px;background:linear-gradient(135deg,#fafdfff0,#fffbecd1),#fff;padding:16px}.report-school-mark{display:grid;place-items:center;width:74px;height:74px;flex:0 0 auto;border:1px solid #d7e5f1;border-radius:8px;background:#fff}.report-school-mark img{width:58px;height:58px;object-fit:contain}.report-card-brand-band span,.report-student-main span{color:var(--report-primary);font-size:.78rem;font-weight:760;letter-spacing:.08em;text-transform:uppercase}.report-card-brand-band h2{margin:4px 0;color:var(--brand-ink);font-size:1.4rem}.report-card-brand-band p,.report-student-main p{margin:0;color:var(--muted);font-size:.9rem;font-weight:600}.report-card-status{display:grid;justify-items:end;gap:7px;text-align:right}.report-card-status small{color:var(--muted);font-size:.82rem;font-weight:700}.report-student-card{display:grid;grid-template-columns:74px minmax(0,1fr) auto;align-items:start;gap:14px;border:1px solid #dce8f2;border-radius:8px;background:#fbfdff;padding:14px 16px}.report-student-photo,.report-student-photo img,.report-student-photo span{width:64px;height:64px;border-radius:999px}.report-student-photo{display:grid;place-items:center;background:#eaf5ff;overflow:hidden}.report-student-photo img{object-fit:cover}.report-student-photo span{display:inline-grid;place-items:center;color:var(--report-primary);font-size:1rem;font-weight:800}.report-student-main h3{margin:3px 0;color:var(--brand-ink);font-size:1.18rem}.report-student-profile{display:grid;gap:10px}.report-student-details{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.report-info-item{min-width:0;border:1px solid #e3edf6;border-radius:8px;background:#fff;padding:8px 10px}.report-info-item span{display:block;color:var(--muted);font-size:.68rem;font-weight:760;letter-spacing:.07em;text-transform:uppercase}.report-info-item strong{display:block;margin-top:2px;color:var(--brand-ink);font-size:.9rem;overflow-wrap:anywhere}.result-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.result-summary-tile{display:grid;gap:4px;border:1px solid #dbe7f3;border-radius:8px;background:#fbfdff;padding:12px}.result-summary-tile span{color:var(--muted);font-size:.76rem;font-weight:700}.result-summary-tile strong{color:var(--brand-ink);font-size:1rem}.report-card-support-grid{display:grid;grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr);gap:12px}.report-card-attendance,.report-card-remarks{border:1px solid #dce8f2;border-radius:8px;background:#fff;padding:12px}.report-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.report-section-heading span,.attendance-stat span,.report-remark span{display:block;color:var(--report-primary);font-size:.7rem;font-weight:760;letter-spacing:.07em;text-transform:uppercase}.report-section-heading strong{display:block;margin-top:2px;color:var(--brand-ink);font-size:.94rem}.attendance-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.attendance-stat{border:1px solid #e3edf6;border-radius:8px;background:#fbfdff;padding:9px 10px}.attendance-stat strong{display:block;margin-top:5px;color:var(--brand-ink);font-size:1rem}.remark-display-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.report-remark{min-height:82px;border:1px solid #e3edf6;border-radius:8px;background:#fbfdff;padding:10px 12px}.report-remark strong{display:block;margin-top:7px;color:var(--brand-ink);font-size:.92rem;line-height:1.5;white-space:pre-wrap}.report-card-data-shell{display:grid;gap:16px}.nav-item>span{flex:1;text-align:left}.nav-unread-badge{min-width:22px;height:22px;padding:0 6px;border-radius:999px;display:inline-grid;place-items:center;background:var(--school-accent, var(--brand-gold));color:#102033;font-size:.72rem;font-weight:750;line-height:1}.report-data-summary{background:#f7fbff;border:1px solid #cfdeee;border-left:4px solid var(--brand-blue);border-radius:8px;display:grid;gap:14px;padding:16px}.report-data-student{align-items:center;display:flex;gap:13px;min-width:0}.report-data-avatar{align-items:center;background:#eaf3fc;border:1px solid #c9dced;border-radius:8px;color:var(--brand-blue);display:flex;flex:0 0 58px;font-size:.92rem;font-weight:800;height:58px;justify-content:center;overflow:hidden}.report-data-avatar img{height:100%;object-fit:cover;width:100%}.report-data-student>div:last-child{display:grid;gap:3px;min-width:0}.report-data-student strong{color:var(--brand-ink);font-size:1.06rem}.report-data-student small{color:#607086;overflow-wrap:anywhere}.report-attendance-summary{display:grid;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr))}.report-attendance-summary>div{background:#fff;border:1px solid #d8e5f1;border-radius:8px;padding:10px 12px}.report-attendance-summary>div.present{background:#f1faf6;border-color:#c9e7d7}.report-attendance-summary>div.absent{background:#fff8f6;border-color:#efd8d2}.report-attendance-summary span{color:#66768a;display:block;font-size:.7rem;font-weight:720;text-transform:uppercase}.report-attendance-summary strong{color:var(--brand-ink);display:block;font-size:1.05rem;margin-top:4px}.report-attendance-note{color:#5c6f84;font-size:.78rem;line-height:1.5;margin:0}.report-data-content{display:grid;gap:14px}.report-data-section,.report-data-content>.subject-comment-editor{border-radius:8px}.report-data-section{background:#fff;border:1px solid #d7e4f0;padding:14px}.remark-responsibility-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.remark-responsibility-field small{color:#6a7a90;font-size:.76rem;font-weight:500;line-height:1.4}.remark-responsibility-field textarea{min-height:112px;resize:vertical}.report-data-content>.subject-comment-editor>.report-section-heading{padding:14px 14px 2px}.result-entry-permission-note{align-items:flex-start;background:#f7f9fc;border:1px solid #d5e0ec;border-left:4px solid #6c7fa0;border-radius:8px;color:#506278;display:flex;gap:10px;margin-top:16px;padding:13px 14px}.result-entry-permission-note svg{color:#345f91;flex:0 0 auto}.result-entry-permission-note div{display:grid;gap:4px}.result-entry-permission-note strong{color:var(--brand-ink);font-size:.88rem}.result-entry-permission-note span{font-size:.8rem;line-height:1.45}.remark-editor{display:grid;gap:12px}.remark-editor .modal-actions{padding-top:0}.file-button{cursor:pointer}.file-button input{display:none}.bulk-upload-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:0 18px 18px}.bulk-upload-instructions{display:grid;gap:10px;margin:0 18px 16px;padding:12px 14px;border:1px solid rgba(207,217,230,.95);border-radius:8px;background:linear-gradient(135deg,#fbfdff,#fffdf4)}.bulk-upload-instructions-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.bulk-upload-instructions-head>div{display:grid;gap:2px}.bulk-upload-instructions strong{color:var(--brand-ink)}.bulk-upload-instructions span,.bulk-upload-instructions li{color:var(--muted);font-size:.84rem;line-height:1.45}.bulk-upload-instructions ol{display:grid;gap:5px;margin:0;padding-left:18px}.bulk-upload-actions .file-button{max-width:min(100%,360px);overflow:hidden;text-overflow:ellipsis}.bulk-upload-actions .primary-action,.bulk-upload-actions .secondary-action,.bulk-upload-actions .file-button{min-height:44px}.bulk-upload-safety{align-items:flex-start;margin-bottom:14px;background:linear-gradient(135deg,#f5f9ffeb,#fffcebb8)}.bulk-upload-safety span{display:grid;gap:3px}.bulk-upload-safety small{color:var(--muted);font-weight:500;line-height:1.45}.bulk-result-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.subject-comment-editor{display:grid;gap:12px;border:1px solid #d7e4f0;border-radius:8px;background:#fff;overflow:hidden}.subject-comment-list{display:grid;gap:0}.subject-comment-row{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(0,1.6fr) auto;align-items:center;gap:10px;border-top:1px solid #e4edf5;padding:10px}.subject-comment-row>div{display:grid;gap:3px;min-width:0}.subject-comment-row strong{color:var(--brand-ink);font-size:.9rem;font-weight:680}.subject-comment-row span{color:var(--muted);font-size:.76rem;font-weight:650}.subject-comment-row textarea{width:100%;min-width:0;min-height:58px;resize:vertical}.subject-comment-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.subject-comment-fields label{display:grid;gap:5px}.subject-comment-fields span{color:var(--muted);font-size:.72rem;font-weight:720;text-transform:uppercase}.report-card-table{min-width:880px}.report-card-table th,.report-card-table td{vertical-align:middle}.report-card-table td:first-child{display:grid;gap:3px}.report-card-table td:first-child span{color:var(--muted);font-size:.78rem;font-weight:600}.report-card-footer{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(220px,.8fr);gap:12px}.report-card-footer>div{min-height:58px;border:1px solid #dce8f2;border-radius:8px;background:#fff;padding:12px}.report-card-footer span{display:block;color:var(--report-primary);font-size:.72rem;font-weight:760;letter-spacing:.07em;text-transform:uppercase}.report-card-footer strong{display:block;margin-top:10px;min-height:18px;color:var(--brand-ink);font-size:.92rem}.standard-report-modal-shell,.guardian-report-card-shell{display:grid;gap:14px}.report-card-tools-panel{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #d7e4f0;border-radius:8px;background:#fff;padding:12px 14px}.report-card-tools-panel>div:first-child{display:grid;gap:3px}.report-card-tools-panel span{color:var(--brand-blue);font-size:.68rem;font-weight:760;letter-spacing:.08em;text-transform:uppercase}.report-card-tools-panel strong{color:var(--brand-ink);font-size:.95rem}.report-card-tools-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.standard-report-card{--report-primary: var(--brand-blue);--report-accent: var(--brand-gold);width:min(100%,980px);margin:0 auto;border:1px solid #cfddeb;border-top:5px solid var(--report-accent);border-radius:8px;background:#fff;color:#132235;padding:18px;box-shadow:0 16px 36px #151d3f14}.standard-report-landscape{width:min(100%,1120px)}.standard-report-header{display:grid;grid-template-columns:76px minmax(0,1fr) minmax(160px,auto);align-items:center;gap:16px;border-bottom:2px solid var(--report-primary);padding-bottom:12px}.standard-report-logo{display:grid;place-items:center;width:72px;height:72px;border:1px solid #d7e4f0;border-radius:8px;background:#fff}.standard-report-logo img{width:60px;height:60px;object-fit:contain}.standard-report-school span,.standard-section-title span,.standard-field span,.standard-summary span,.standard-mini-table span,.standard-remarks-grid span,.standard-signature-grid span{color:var(--report-primary);font-size:.68rem;font-weight:760;letter-spacing:.08em;text-transform:uppercase}.standard-report-school h2{margin:3px 0;color:#102033;font-size:1.55rem;line-height:1.1}.standard-report-school p{margin:0;color:#4f6277;font-size:.9rem;font-weight:600}.standard-report-meta{display:grid;justify-items:end;gap:5px;text-align:right}.standard-report-meta strong{color:#102033;font-size:.94rem}.standard-report-meta small{color:#5f7186;font-size:.78rem;font-weight:700}.standard-report-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px}.standard-report-student{display:grid;grid-template-columns:86px minmax(0,1fr);gap:12px;margin-top:14px}.standard-report-photo,.standard-report-photo img,.standard-report-photo span{width:78px;height:78px;border-radius:8px}.standard-report-photo{display:grid;place-items:center;border:1px solid #d7e4f0;background:#f6f9fc;overflow:hidden}.standard-report-photo img{object-fit:cover}.standard-report-photo span{display:inline-grid;place-items:center;color:var(--report-primary);font-size:1.1rem;font-weight:800}.standard-student-grid{display:grid;grid-template-columns:1.3fr repeat(3,minmax(0,1fr));border:1px solid #d7e4f0;border-radius:8px;overflow:hidden}.standard-field,.standard-summary,.standard-mini-table div,.standard-grade-key div{min-width:0;border-right:1px solid #e4edf5;border-bottom:1px solid #e4edf5;background:#fff;padding:8px 10px}.standard-field:nth-child(4n),.standard-summary:nth-child(6n),.standard-mini-table div:last-child,.standard-grade-key div:last-child{border-right:0}.standard-field:nth-last-child(-n+4),.standard-summary:nth-last-child(-n+6){border-bottom:0}.standard-field.wide{grid-column:span 1}.standard-field strong,.standard-summary strong,.standard-mini-table strong{display:block;margin-top:3px;color:#102033;font-size:.9rem;font-weight:720;overflow-wrap:anywhere}.standard-summary-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;margin-top:12px;border:1px solid #d7e4f0;border-radius:8px;overflow:hidden}.standard-summary{border-bottom:0}.standard-summary.important{background:#f7fbff}.standard-summary.important strong{color:var(--report-primary);font-size:1rem}.standard-section{margin-top:12px;border:1px solid #d7e4f0;border-radius:8px;background:#fff;overflow:hidden}.standard-section.compact{margin-top:0}.standard-section-title{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #d7e4f0;background:#f6f9fc;padding:8px 10px}.standard-section-title strong{color:#102033;font-size:.82rem}.standard-table-wrap{overflow-x:auto}.standard-result-table{width:100%;min-width:900px;border-collapse:collapse;font-size:.78rem}.standard-result-table th,.standard-result-table td{border-bottom:1px solid #e2ebf3;border-right:1px solid #e2ebf3;padding:7px 8px;text-align:center;vertical-align:middle}.standard-result-table th{color:#102033;background:#eef5fb;font-size:.66rem;font-weight:760;text-transform:uppercase}.standard-result-table th small,.standard-result-table td small{display:block;color:#65778b;font-size:.62rem;font-weight:650;text-transform:none}.standard-result-table th:first-child,.standard-result-table td:first-child{width:220px;text-align:left}.standard-result-table tr:last-child td{border-bottom:0}.standard-result-table td:last-child,.standard-result-table th:last-child{border-right:0}.standard-result-table td:last-child{min-width:150px;text-align:left;color:#334155}.standard-lower-grid{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);gap:12px;margin-top:12px}.standard-mini-table,.standard-grade-key{display:grid}.standard-mini-table div{display:flex;justify-content:space-between;gap:12px;border-right:0}.standard-mini-table div:last-child{border-bottom:0}.standard-grade-key{grid-template-columns:repeat(auto-fit,minmax(96px,1fr))}.standard-grade-key div{display:grid;gap:3px}.standard-grade-key strong{color:var(--report-primary);font-size:.86rem}.standard-grade-key span{color:#4f6277;font-size:.72rem;font-weight:650}.standard-remarks-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}.standard-remarks-grid>div{min-height:90px;border:1px solid #d7e4f0;border-radius:8px;background:#fff;padding:10px 12px}.standard-remarks-grid strong{display:block;margin-top:8px;color:#102033;font-size:.9rem;font-weight:620;line-height:1.5;white-space:pre-wrap}.standard-signature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px}.standard-signature-grid>div{border-top:1px solid #102033;padding-top:7px}.standard-signature-grid strong{display:block;min-height:20px}.standard-signature-grid img{display:block;width:auto;max-width:180px;height:42px;object-fit:contain;margin-top:6px}.standard-signature-grid small{display:block;margin-top:4px;color:#4f6277;font-size:.72rem;font-weight:650}.landscape-report-booklet{--report-primary: #0b57a3;--report-accent: #f6ea8a;width:min(100%,1180px);margin:0 auto;color:#000;font-family:Arial,Helvetica,sans-serif}.landscape-report-sheet{position:relative;display:grid;align-content:start;gap:18px;width:min(100%,1120px);margin:0 auto 22px;border:1px solid #cfcfcf;background:#fff;padding:54px 58px;box-shadow:0 14px 34px #1422361a}.landscape-report-header{display:grid;grid-template-columns:92px minmax(0,1fr) 86px;align-items:center;gap:20px}.landscape-report-logo,.landscape-report-logo img{width:78px;height:78px}.landscape-report-logo img{object-fit:contain}.landscape-report-school{text-align:center}.landscape-report-school h2{margin:0;color:#f20505;font-size:1rem;font-weight:800;line-height:1.15}.landscape-report-school p{margin:4px 0 0;color:#000;font-size:.67rem;font-weight:700;line-height:1.35}.landscape-student-photo,.landscape-student-photo img,.landscape-student-photo span{width:78px;height:96px}.landscape-student-photo{display:grid;place-items:center;border:1px solid #9a9a9a;background:#fff;overflow:hidden}.landscape-student-photo img{object-fit:cover}.landscape-student-photo span{display:grid;place-items:center;color:var(--report-primary);font-size:.95rem;font-weight:800}.landscape-student-line{display:grid;grid-template-columns:1.05fr .78fr .9fr;align-items:end;gap:18px;color:#000;font-size:.72rem;font-weight:700;line-height:1.35;text-transform:uppercase}.landscape-student-line>div:nth-child(2){text-align:center}.landscape-top-grid{display:grid;grid-template-columns:1.05fr 1.1fr .8fr;align-items:stretch;gap:8px}.landscape-box-table,.landscape-homework-box{border:1px solid #222222}.landscape-box-table>strong,.landscape-homework-box>strong{display:block;border-bottom:1px solid #222222;background:#b7b7b7;color:#000;font-size:.72rem;font-weight:800;line-height:1;padding:7px 8px;text-align:center;text-transform:uppercase}.landscape-box-table table,.landscape-score-table,.skill-rating-table{width:100%;border-collapse:collapse}.landscape-box-table td{border-right:1px solid #222222;border-bottom:1px solid #222222;color:#000;font-size:.7rem;font-weight:700;padding:7px 8px;vertical-align:middle}.landscape-box-table td:last-child{border-right:0;text-align:center}.landscape-box-table tr:last-child td{border-bottom:0}.landscape-homework-box{display:grid;grid-template-rows:auto 1fr auto}.landscape-homework-tick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));min-height:44px;color:#000;font-size:1.6rem;font-weight:900}.landscape-homework-tick span{display:grid;place-items:center}.landscape-homework-labels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #222222}.landscape-homework-labels span{display:grid;place-items:center;min-height:38px;border-right:1px solid #222222;color:#093e7a;font-size:.58rem;font-weight:800;line-height:1.15;text-align:center}.landscape-homework-labels span:last-child{border-right:0}.landscape-homework-labels span.is-selected{background:#fff7cf;color:#10233f}.landscape-score-table{border:1px solid #222222;font-size:.68rem}.landscape-score-table th,.landscape-score-table td,.skill-rating-table th,.skill-rating-table td{border:1px solid #222222;color:#000;padding:6px 7px;text-align:center;vertical-align:middle}.landscape-score-table th,.skill-rating-table th{background:#d0d0d0;font-size:.62rem;font-weight:800;line-height:1.1}.landscape-score-table th:first-child,.landscape-score-table td:first-child{min-width:190px;text-align:left}.landscape-score-table td:last-child{min-width:240px;text-align:left}.landscape-score-table tbody td{font-weight:700}.landscape-total-summary{display:grid;grid-template-columns:1.2fr .8fr 1.1fr;border:1px solid #222222;background:var(--report-accent)}.landscape-total-summary span{border-right:1px solid #222222;color:#000;font-size:.7rem;font-weight:800;padding:10px 12px}.landscape-total-summary span:last-child{border-right:0}.landscape-grading-box{display:grid;gap:5px;border:1px solid #a2a2a2;color:#000;font-size:.68rem;font-weight:700;padding:6px 10px;text-align:center}.landscape-domain-grid{display:grid;grid-template-columns:minmax(240px,.95fr) minmax(300px,1.18fr) 120px;gap:70px;align-items:start;margin-top:34px}.landscape-domain-table h3{margin:0 0 7px;color:#000;font-size:.82rem;font-weight:800}.skill-rating-table{font-size:.67rem}.skill-rating-table th:first-child,.skill-rating-table td:first-child{width:62%;text-align:center}.skill-rating-table td.selected{color:#000;font-size:1.1rem;font-weight:900;line-height:1}.landscape-domain-scale{display:grid;align-content:start;color:#000;font-size:.72rem;font-weight:800;line-height:1.22;text-transform:uppercase}.landscape-domain-scale span{text-transform:none}.landscape-comment-line{border-bottom:1px solid #222222;color:#000;font-size:.72rem;font-weight:700;line-height:1.55;padding:10px 0;white-space:pre-wrap}.landscape-signature-row{display:grid;grid-template-columns:repeat(2,210px);gap:48px;margin-top:36px}.landscape-signature-box{display:grid;gap:4px;color:#000;font-size:.68rem;font-weight:700}.landscape-signature-box img,.landscape-signature-box span{width:190px;height:46px;border:1px solid #222222}.landscape-signature-box img{object-fit:contain}.landscape-signature-box small{color:#333;font-size:.62rem;font-weight:650}.landscape-page-status{margin-top:24px}.teacher-insights{margin:0 18px 18px;border:1px solid #e4edf6;border-radius:8px;background:#fff;overflow:hidden}.attendance-layout{align-items:start}.attendance-action-bar{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:12px;margin:-8px 0 12px}.attendance-tabs{margin-top:14px}.attendance-tab-list{display:flex;flex-wrap:wrap;gap:8px;padding:14px 18px 0;border-bottom:1px solid #edf2f7;background:#f8fbffbd}.attendance-tab-list .tab-button{margin-bottom:-1px}.attendance-tab-panel{padding:18px}.attendance-tab-panel>.section-heading{padding:0 0 14px;margin-bottom:14px;border-bottom:1px solid #edf2f7;background:transparent}.attendance-tab-panel .attendance-history-grid{padding:0}.muted-row-text{display:block;margin-top:3px;color:var(--muted);font-size:.78rem;font-weight:560}.attendance-rate-pill,.attendance-pill{display:inline-flex;align-items:center;justify-content:center;min-height:26px;border-radius:999px;padding:0 10px;font-size:.76rem;font-weight:700;white-space:nowrap}.attendance-rate-pill{color:var(--brand-blue);background:#eaf3ff}.attendance-pill.present{color:#0f7a55;background:#e7f7ef}.attendance-pill.absent{color:#9f1239;background:#ffe4e6}.attendance-pill.pending{color:#7c5800;background:#fff3c4}.attendance-pill.checked-out{color:#075985;background:#e0f2fe}.recent-attendance-activity-table table{min-width:820px}.recent-attendance-activity-table th:first-child,.recent-attendance-activity-table td:first-child{width:31%}.recent-attendance-activity-table th:not(:first-child),.recent-attendance-activity-table td:not(:first-child){width:23%;white-space:nowrap}.attendance-activity-cell{display:inline-flex;max-width:100%;align-items:center;gap:8px;white-space:nowrap}.attendance-activity-cell .muted-row-text{max-width:170px;margin-top:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attendance-activity-empty{color:#8a99a9;font-size:.8rem;white-space:nowrap}.attendance-history-section{margin-top:14px}.attendance-history-heading,.attendance-history-tools{align-items:center}.attendance-history-tools{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.attendance-class-filter{display:grid;gap:4px;min-width:210px;color:var(--muted);font-size:.76rem;font-weight:700}.attendance-class-filter select{min-height:40px;border:1px solid #cfd9e6;border-radius:8px;color:var(--brand-ink);background:#fff;padding:0 10px;outline:none}.attendance-class-filter select:focus{border-color:var(--brand-sky);box-shadow:0 0 0 3px #2196dc2e}.login-mode-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 18px}.login-mode-switch .tab-button{width:100%}.guardian-page{min-height:100vh;background:linear-gradient(90deg,rgba(27,85,166,.06),transparent 42%),linear-gradient(180deg,#fff 0,#f6f8fb);padding:24px clamp(18px,4vw,42px) 42px}.guardian-topbar,.guardian-hero,.guardian-panel,.guardian-child-strip{width:min(1180px,100%);margin-inline:auto}.guardian-topbar{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--line);border-radius:8px;background:#ffffffeb;padding:14px 16px;box-shadow:0 14px 32px #151d3f14}.guardian-brand,.guardian-account{display:flex;align-items:center;gap:12px}.guardian-brand img{width:48px;height:48px;border-radius:8px;background:#fff;object-fit:contain}.guardian-brand span,.guardian-account span,.guardian-section-heading span{display:block;color:var(--brand-blue);font-size:.74rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.guardian-brand strong,.guardian-account strong{display:block;color:var(--brand-ink);font-weight:650}.guardian-account{flex-wrap:wrap;justify-content:flex-end}.guardian-account>div{text-align:right}.guardian-hero{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-top:22px;margin-bottom:16px}.guardian-hero h1{margin:0;color:var(--brand-ink);font-size:clamp(1.45rem,1.1rem + .85vw,2.05rem);font-weight:650;letter-spacing:0}.guardian-hero p,.guardian-section-heading p{margin:4px 0 0;color:var(--muted);font-weight:500}.guardian-metrics{width:min(1180px,100%);margin:0 auto 16px}.guardian-metrics.metric-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.guardian-metrics .metric-card{min-height:104px;grid-template-columns:40px minmax(0,1fr);gap:12px;padding:14px 16px}.guardian-metrics .metric-icon{width:40px;height:40px}.guardian-metrics .metric-card span{font-size:.9rem}.guardian-metrics .metric-card strong{font-size:clamp(1.25rem,1rem + .55vw,1.65rem);line-height:1.08;overflow-wrap:normal;word-break:normal}.guardian-metrics .metric-card.currency-metric strong{font-size:clamp(.9rem,.82rem + .2vw,1.06rem);line-height:1.16;font-weight:600;white-space:nowrap}.guardian-metrics .metric-card small{font-size:.82rem;line-height:1.55}.guardian-child-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px;margin-bottom:16px}.guardian-child-card{display:grid;grid-template-columns:50px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:84px;border:1px solid var(--line);border-radius:8px;color:var(--brand-ink);background:#fff;padding:12px;text-align:left;box-shadow:0 12px 26px #151d3f0a}.guardian-child-card.active{border-color:var(--brand-blue);box-shadow:inset 4px 0 0 var(--brand-gold),0 14px 30px #1b55a61f}.guardian-child-card strong,.guardian-child-card small{display:block}.guardian-child-card strong{color:var(--brand-ink);font-size:.98rem;font-weight:650}.guardian-child-card small{color:var(--muted);font-size:.78rem;font-weight:600}.guardian-avatar{position:relative;width:50px;height:50px;display:inline-grid;place-items:center;border-radius:999px;color:var(--brand-blue);background:var(--soft-blue);overflow:hidden}.guardian-avatar img{width:100%;height:100%;object-fit:cover}.guardian-avatar small{position:absolute;inset:auto 0 4px;color:var(--brand-blue);font-size:.62rem;font-weight:800;text-align:center}.guardian-workspace{width:min(1180px,100%);margin:0 auto;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 16px 36px #151d3f12;overflow:hidden}.guardian-tab-list{display:flex;flex-wrap:wrap;gap:8px;padding:14px 16px;border-bottom:1px solid #edf2f7;background:#f8fbff}.guardian-panel{padding:18px}.guardian-section-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:14px}.guardian-section-heading h2{margin:0;color:var(--brand-ink);font-size:1.25rem;font-weight:650}.attendance-period-controls{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px}.attendance-period-controls .segmented-control{flex:0 0 auto}.attendance-period-controls .date-control{min-width:170px}.guardian-panel>.list-pagination{margin:14px -18px -18px}@media(max-width:720px){.guardian-section-heading{align-items:stretch;flex-direction:column}.attendance-period-controls{align-items:stretch;justify-content:flex-start}.attendance-period-controls .segmented-control,.attendance-period-controls .date-control{width:100%}}.guardian-attendance-summary,.guardian-report-preview .result-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:14px}.guardian-tiny-stat{min-height:74px;display:grid;align-content:center;gap:4px;border:1px solid #dbe7f3;border-radius:8px;background:#fbfdff;padding:12px}.guardian-tiny-stat span{color:var(--muted);font-size:.74rem;font-weight:700}.guardian-tiny-stat strong{color:var(--brand-ink);font-size:1.05rem;font-weight:650}.guardian-result-layout{display:grid;grid-template-columns:minmax(220px,.35fr) minmax(0,1fr);gap:16px;align-items:start}.portal-report-library{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(250px,310px);gap:10px;margin-bottom:16px;padding:2px 2px 8px;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin}.portal-report-option{position:relative;min-height:104px;display:grid;grid-template-columns:40px minmax(0,1fr);align-items:start;gap:11px;border:1px solid #d7e3ef;border-radius:8px;color:var(--brand-ink);background:#fff;padding:13px 12px;text-align:left;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.portal-report-option:hover{border-color:#9dbbda;background:#fbfdff;box-shadow:0 8px 20px #151d3f12}.portal-report-option.active{border-color:var(--brand-blue);background:linear-gradient(135deg,#f2f8ff,#fffdf4);box-shadow:inset 4px 0 0 var(--brand-gold),0 10px 24px #1b55a61c}.portal-report-option-icon,.portal-report-document-icon,.portal-report-loading-mark{width:40px;height:40px;display:inline-grid;place-items:center;border-radius:8px;color:var(--brand-blue);background:#eaf4ff}.portal-report-option strong,.portal-report-option small{display:block}.portal-report-option strong{padding-right:64px;font-size:.93rem;font-weight:680}.portal-report-option small{margin-top:4px;color:var(--muted);font-size:.76rem;font-weight:550;line-height:1.35}.portal-report-option-status{position:absolute;top:12px;right:10px;border-radius:999px;color:#08765a;background:#e5f7f0;padding:4px 7px;font-size:.66rem;font-weight:750}.portal-report-selected{min-width:0}.portal-report-document{min-width:0;overflow:hidden;border:1px solid #d6e2ee;border-radius:8px;background:#eef3f8;box-shadow:0 14px 34px #151d3f14}.portal-report-document-header{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #d6e2ee;background:#fff;padding:13px 14px}.portal-report-document-title{min-width:0;display:flex;align-items:center;gap:11px}.portal-report-document-title>div{min-width:0}.portal-report-document-title span:not(.portal-report-document-icon){display:block;color:var(--brand-blue);font-size:.68rem;font-weight:750;text-transform:uppercase}.portal-report-document-title h3{margin:1px 0 0;color:var(--brand-ink);font-size:1rem;font-weight:680}.portal-report-document-title p{margin:2px 0 0;color:var(--muted);font-size:.78rem;font-weight:550}.portal-report-document-controls{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:7px}.portal-report-view-switch{display:flex;align-items:center;gap:3px;border:1px solid #d7e3ef;border-radius:8px;background:#f4f7fa;padding:3px}.portal-report-view-switch button{min-height:34px;display:inline-flex;align-items:center;gap:6px;border:0;border-radius:6px;color:#52657a;background:transparent;padding:0 10px;font-size:.78rem;font-weight:650}.portal-report-view-switch button.active{color:var(--brand-blue);background:#fff;box-shadow:0 2px 7px #151d3f1a}.portal-report-pdf-stage{min-height:clamp(680px,76vh,1040px);padding:14px}.portal-report-pdf-frame{width:100%;height:clamp(680px,76vh,1040px);display:block;border:1px solid #c9d5e1;border-radius:6px;background:#fff}.portal-report-loading{min-height:clamp(680px,76vh,1040px);display:grid;place-content:center;justify-items:center;gap:8px;color:var(--brand-ink);text-align:center}.portal-report-loading strong{font-size:1rem;font-weight:680}.portal-report-loading small{max-width:440px;color:var(--muted);font-size:.82rem}.portal-report-loading.error-state .portal-report-loading-mark{color:#a94545;background:#fff0f0}.portal-report-loading .secondary-action{margin-top:8px}.portal-report-html-preview{min-width:0;padding:16px;overflow-x:auto;background:#edf2f7}.portal-report-html-preview .no-print{display:none!important}.responsive-report-summary{width:min(100%,1280px);display:grid;gap:14px;margin:0 auto;border:1px solid #cedbe8;border-top:4px solid var(--report-accent);border-radius:8px;color:#162538;background:#fff;padding:18px;box-shadow:0 14px 32px #151d3f14}.responsive-report-summary.portrait{width:min(100%,920px)}@media(min-width:1000px){.responsive-report-summary.landscape{grid-template-columns:minmax(0,2.25fr) minmax(290px,.75fr);align-content:start;aspect-ratio:1.414 / 1}.responsive-report-summary.landscape>.responsive-report-summary-header,.responsive-report-summary.landscape>.responsive-report-student,.responsive-report-summary.landscape>.responsive-report-metrics{grid-column:1 / -1}.responsive-report-summary.landscape>.responsive-report-section{grid-column:1}.responsive-report-summary.landscape>.responsive-report-lower-grid{grid-column:2;grid-row:4;grid-template-columns:minmax(0,1fr);align-content:start}}.responsive-report-summary-header{display:grid;grid-template-columns:66px minmax(0,1fr) auto;align-items:center;gap:14px;border-bottom:2px solid var(--report-primary);padding-bottom:13px}.responsive-report-summary-header>img{width:62px;height:62px;border:1px solid #d8e4ef;border-radius:8px;object-fit:contain;padding:4px}.responsive-report-summary-header span,.responsive-report-student>div:nth-child(2)>span,.responsive-report-section-heading span,.responsive-report-metric span,.responsive-report-remarks span{display:block;color:var(--report-primary);font-size:.68rem;font-weight:750;text-transform:uppercase}.responsive-report-summary-header h2{margin:2px 0;color:#122338;font-size:1.35rem;font-weight:700}.responsive-report-summary-header p,.responsive-report-student p{margin:0;color:#627286;font-size:.8rem;font-weight:550}.responsive-report-term{display:grid;justify-items:end;gap:3px;text-align:right}.responsive-report-term strong{color:#122338;font-size:.9rem}.responsive-report-term small{color:#627286;font-size:.76rem;font-weight:650}.responsive-report-student{display:grid;grid-template-columns:72px minmax(170px,.7fr) minmax(320px,1.3fr);align-items:center;gap:14px;border:1px solid #d8e4ef;border-radius:8px;background:#fbfdff;padding:12px}.responsive-report-photo,.responsive-report-photo img,.responsive-report-photo span{width:66px;height:66px;border-radius:8px}.responsive-report-photo{display:grid;place-items:center;overflow:hidden;color:var(--report-primary);background:#eaf4ff;font-weight:800}.responsive-report-photo img{object-fit:cover}.responsive-report-student h3{margin:2px 0;color:#122338;font-size:1rem;font-weight:700}.responsive-report-student-details,.responsive-report-attendance{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0}.responsive-report-student-details>div,.responsive-report-attendance>div{min-width:0;border-left:2px solid #d9e7f3;padding-left:9px}.responsive-report-student-details dt,.responsive-report-attendance dt{color:#708095;font-size:.64rem;font-weight:700;text-transform:uppercase}.responsive-report-student-details dd,.responsive-report-attendance dd{margin:3px 0 0;color:#15263a;font-size:.82rem;font-weight:680;overflow-wrap:anywhere}.responsive-report-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}.responsive-report-metric{min-height:76px;display:grid;align-content:center;gap:4px;border:1px solid #d8e4ef;border-radius:8px;background:#fff;padding:11px 12px}.responsive-report-metric.emphasized{border-color:#aad0ee;background:#eef8ff}.responsive-report-metric strong{color:#122338;font-size:1rem;font-weight:720}.responsive-report-section{min-width:0;overflow:hidden;border:1px solid #d8e4ef;border-radius:8px;background:#fff}.responsive-report-section.compact{overflow:visible}.responsive-report-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #d8e4ef;background:#f6f9fc;padding:9px 11px}.responsive-report-section-heading h3{margin:1px 0 0;color:#122338;font-size:.9rem;font-weight:680}.responsive-report-section-heading>small{color:#627286;font-size:.72rem;font-weight:650}.responsive-report-table-wrap{width:100%;overflow-x:auto}.responsive-report-table{width:100%;min-width:820px;border-collapse:collapse;font-size:.76rem}.responsive-report-table th,.responsive-report-table td{border-right:1px solid #e1eaf2;border-bottom:1px solid #e1eaf2;padding:8px 9px;text-align:center;vertical-align:middle}.responsive-report-table th{color:#40546a;background:#f1f6fa;font-size:.65rem;font-weight:750;text-transform:uppercase}.responsive-report-table th:first-child,.responsive-report-table td:first-child,.responsive-report-table th:last-child,.responsive-report-table td:last-child{text-align:left}.responsive-report-table th:first-child,.responsive-report-table td:first-child{min-width:190px}.responsive-report-table th:last-child,.responsive-report-table td:last-child{min-width:220px;border-right:0}.responsive-report-table tr:last-child td{border-bottom:0}.responsive-report-table td strong,.responsive-report-table td small{display:block}.responsive-report-narrative-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:11px}.responsive-report-narrative-card{min-width:0;overflow:hidden;border:1px solid #d9e4ed;border-radius:7px;background:#fff}.responsive-report-narrative-title{border-bottom:1px solid #dfe8f0;background:#f4f8fb;padding:9px 11px}.responsive-report-narrative-title span,.responsive-report-narrative-card>div:not(.responsive-report-narrative-title)>span{display:block;color:var(--report-primary);font-size:.65rem;font-weight:750;text-transform:uppercase}.responsive-report-narrative-title h4,.responsive-report-skill-grid h4{margin:2px 0 0;color:#172a40;font-size:.86rem;font-weight:700}.responsive-report-narrative-card>div:not(.responsive-report-narrative-title){padding:10px 11px}.responsive-report-narrative-card>div.target{border-top:1px solid #e3ebf2;background:#fffdf5}.responsive-report-narrative-card p,.responsive-report-homework p{margin:5px 0 0;color:#354a60;font-size:.78rem;line-height:1.5;white-space:pre-wrap}.responsive-report-empty{grid-column:1 / -1;margin:0;color:#66778b;padding:12px;text-align:center}.responsive-report-skill-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:11px}.responsive-report-skill-grid>div{min-width:0;border:1px solid #d9e4ed;border-radius:7px;padding:10px}.responsive-report-skill-grid h4{margin:0 0 7px}.responsive-report-skill-grid dl{margin:0}.responsive-report-skill-grid dl>div{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border-top:1px solid #e6edf3;padding:7px 0}.responsive-report-skill-grid dt,.responsive-report-skill-grid dd{margin:0;color:#344a60;font-size:.76rem}.responsive-report-skill-grid dd{color:#17324d;font-weight:750;text-align:right}.responsive-report-skill-grid dd small{display:block;margin-top:2px;color:#6b7d90;font-weight:550}.responsive-report-homework{padding:14px 12px}.responsive-report-homework strong{color:#17324d;font-size:.92rem}.responsive-report-table td small{margin-top:2px;color:#718095;font-size:.66rem}.responsive-report-grade{min-width:28px;display:inline-grid;place-items:center;border-radius:999px;color:#086f58;background:#e6f7f1;padding:4px 7px;font-weight:750}.responsive-report-lower-grid{display:grid;grid-template-columns:minmax(280px,.7fr) minmax(0,1.3fr);gap:12px}.responsive-report-attendance{grid-template-columns:1fr;gap:0;padding:5px 11px 10px}.responsive-report-attendance>div{display:flex;align-items:center;justify-content:space-between;gap:10px;border-left:0;border-bottom:1px solid #e6edf4;padding:8px 0}.responsive-report-attendance>div:last-child{border-bottom:0}.responsive-report-remarks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.responsive-report-remarks>div{min-height:112px;border-right:1px solid #e1eaf2;padding:11px 12px}.responsive-report-remarks>div:last-child{border-right:0}.responsive-report-remarks p{margin:7px 0 0;color:#2d4055;font-size:.8rem;line-height:1.55;white-space:pre-wrap}@media(max-width:900px){.portal-report-document-header{align-items:flex-start;flex-direction:column}.portal-report-document-controls{width:100%;justify-content:flex-start}.responsive-report-student{grid-template-columns:72px minmax(0,1fr)}.responsive-report-student-details{grid-column:1 / -1}.responsive-report-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:640px){.portal-report-library{grid-auto-columns:minmax(230px,86vw)}.portal-report-document-header,.portal-report-pdf-stage,.portal-report-html-preview{padding:10px}.portal-report-view-switch{width:100%}.portal-report-view-switch button{flex:1 1 0;justify-content:center}.portal-report-document-controls .secondary-action,.portal-report-document-controls .primary-action{flex:1 1 120px;justify-content:center}.portal-report-pdf-stage,.portal-report-pdf-frame,.portal-report-loading{min-height:620px;height:620px}.responsive-report-summary{padding:11px}.responsive-report-summary-header{grid-template-columns:54px minmax(0,1fr)}.responsive-report-summary-header>img{width:50px;height:50px}.responsive-report-summary-header h2{font-size:1.05rem}.responsive-report-term{grid-column:1 / -1;justify-items:start;text-align:left}.responsive-report-student-details,.responsive-report-metrics,.responsive-report-lower-grid,.responsive-report-remarks,.responsive-report-narrative-grid,.responsive-report-skill-grid{grid-template-columns:1fr}.responsive-report-student-details{gap:10px}.responsive-report-remarks>div{border-right:0;border-bottom:1px solid #e1eaf2}.responsive-report-remarks>div:last-child{border-bottom:0}}.guardian-online-exams-panel{display:grid;gap:16px}.guardian-exam-layout{display:grid;grid-template-columns:minmax(230px,.36fr) minmax(0,1fr);gap:14px;align-items:start}.guardian-exam-list{display:grid;gap:10px;align-content:start}.guardian-exam-card{min-height:132px;display:grid;gap:7px;justify-items:start;border:1px solid #dce8f2;border-radius:8px;padding:13px;color:var(--brand-ink);background:#fff;text-align:left}.guardian-exam-card.active{border-color:#1e5aa88c;box-shadow:inset 3px 0 0 var(--brand-blue),0 12px 24px #151d3f14}.guardian-exam-card strong{font-size:.96rem;line-height:1.35}.guardian-exam-card small,.guardian-exam-card span:last-child,.guardian-exam-actions small{color:var(--muted);font-size:.78rem;line-height:1.45}.guardian-exam-detail{border:1px solid #dce8f2;border-radius:8px;background:#fff;padding:16px}.guardian-exam-meta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin:14px 0}.guardian-exam-instructions{margin:0 0 14px;border-left:3px solid var(--brand-gold);padding:10px 12px;color:var(--brand-ink);background:#fffaf0;line-height:1.55}.guardian-exam-actions,.guardian-exam-attempts,.guardian-exam-attempt-row,.guardian-exam-attempt-row>span:first-child{display:grid;gap:8px}.guardian-exam-actions{grid-template-columns:auto minmax(0,1fr);align-items:center}.guardian-exam-attempts{margin-top:16px}.guardian-exam-attempt-row{grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;border:1px solid #e3edf6;border-radius:8px;padding:10px 12px;background:#fbfdff}.field-support-text{color:#53708d;font-size:.76rem;font-weight:520;line-height:1.45}.field-support-text.warning{color:#946200}.guardian-exam-attempt-row small{color:var(--muted);font-size:.72rem}.guardian-cbt-paper{margin-top:0}.guardian-pickup-grid{display:grid;grid-template-columns:minmax(260px,.38fr) minmax(0,.62fr);gap:14px;margin-bottom:14px}.guardian-pickup-card{border:1px solid #dce8f2;border-radius:8px;background:#fff;padding:14px}.guardian-mini-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.guardian-mini-heading span{color:var(--brand-blue);font-size:.7rem;font-weight:760;letter-spacing:.07em;text-transform:uppercase}.guardian-mini-heading strong{color:var(--brand-ink);font-size:.96rem}.guardian-contact-list{display:grid;gap:10px}.guardian-contact-card{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid #e3edf6;border-radius:8px;background:#fbfdff;padding:10px}.guardian-contact-card.approved{box-shadow:inset 3px 0 0 var(--brand-gold)}.guardian-contact-card strong,.guardian-contact-card span,.guardian-contact-card small{display:block}.guardian-contact-card strong{color:var(--brand-ink);font-size:.92rem}.guardian-contact-card span,.guardian-contact-card small{color:var(--muted);font-size:.76rem;font-weight:600}.guardian-record-table table{min-width:760px}.guardian-fees-panel{display:grid;gap:14px}.guardian-fees-summary{margin-bottom:0}.guardian-fees-layout{display:grid;grid-template-columns:minmax(250px,.34fr) minmax(0,1fr);gap:14px;align-items:start}.guardian-invoice-list{display:grid;gap:10px}.guardian-invoice-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-height:82px;border:1px solid #dce8f2;border-radius:8px;color:var(--brand-ink);background:#fff;padding:12px;text-align:left}.guardian-invoice-item.active{border-color:var(--brand-blue);box-shadow:inset 4px 0 0 var(--brand-gold),0 12px 26px #1b55a61a}.guardian-invoice-item>svg{color:var(--brand-blue)}.guardian-invoice-item strong,.guardian-invoice-item small{display:block}.guardian-invoice-item strong{font-size:.92rem;font-weight:650}.guardian-invoice-item small{color:var(--muted);font-size:.75rem;font-weight:600}.guardian-invoice-detail,.guardian-payment-history{display:grid;gap:14px;border:1px solid #dce8f2;border-radius:8px;background:#fff;padding:14px}.guardian-invoice-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;border:1px solid #edf2f7;border-radius:8px;background:#fbfdff;padding:14px}.guardian-invoice-header span,.guardian-payment-reference span{color:var(--muted);font-size:.72rem;font-weight:700;text-transform:uppercase}.guardian-invoice-header h3,.guardian-invoice-header p{margin:0}.guardian-invoice-header h3{color:var(--brand-ink);font-size:1rem;font-weight:650}.guardian-invoice-header p{color:var(--muted);font-weight:600}.guardian-invoice-header strong{display:block;color:var(--brand-ink);font-size:1.35rem;font-weight:650;text-align:right}.guardian-fee-lines,.guardian-online-payment{border:1px solid #edf2f7;border-radius:8px;padding:12px}.guardian-online-payment{display:grid;gap:12px;background:linear-gradient(180deg,#f8fbff,#fff)}.guardian-payment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.guardian-payment-grid label{display:grid;gap:6px;color:var(--muted);font-size:.78rem;font-weight:700}.guardian-payment-actions{display:flex;flex-wrap:wrap;gap:8px}.guardian-payment-reference{display:grid;gap:3px;border:1px solid #dce8f2;border-radius:8px;background:#fff;padding:10px 12px}.guardian-payment-reference strong,.guardian-payment-reference small{overflow-wrap:anywhere}.guardian-payment-reference strong{color:var(--brand-ink);font-weight:650}.guardian-payment-reference small,.guardian-muted{color:var(--muted);font-weight:600}.guardian-muted{margin:0}.guardian-notice-list{display:grid;gap:12px}.guardian-notice-card{display:grid;grid-template-columns:46px minmax(0,1fr);gap:12px;border:1px solid #dce8f2;border-radius:8px;background:#fff;padding:14px}.guardian-notice-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:8px;color:var(--brand-blue);background:var(--soft-blue)}.guardian-notice-heading{display:flex;align-items:start;justify-content:space-between;gap:12px}.guardian-notice-heading h3{margin:0;color:var(--brand-ink);font-size:1rem;font-weight:650}.guardian-notice-card p{margin:8px 0;color:#42515b;white-space:pre-wrap}.guardian-notice-card small{color:var(--muted);font-weight:600}.notices-table td:first-child{max-width:520px}.notices-table td:first-child span{margin-top:4px;white-space:pre-wrap}.inline-record-image{width:min(180px,100%);max-height:120px;object-fit:cover;border:1px solid #dce8f2;border-radius:8px;display:block;margin:8px 0;background:#fff}.assignments-table td:first-child{max-width:520px}.assignments-table td:first-child span{margin-top:4px;white-space:pre-wrap}.assignment-filter{min-width:min(260px,100%);display:grid;gap:6px;color:var(--muted);font-size:.82rem;font-weight:650}.assignment-filter select{min-height:40px;border:1px solid #cfd9e6;border-radius:8px;color:var(--brand-ink);background:#fff;padding:0 12px}.assignment-subject-note{margin:0;border:1px solid #dce8f2;border-radius:8px;color:#42515b;background:#f7fbff;padding:10px 12px;font-weight:600}.assignment-modal-form{gap:0;padding-bottom:0}.assignment-form-section{display:grid;gap:14px;padding:18px 2px;border-bottom:1px solid #e2eaf2}.assignment-form-section:first-child{padding-top:2px}.assignment-form-section-heading{display:grid;grid-template-columns:38px minmax(0,1fr);gap:11px;align-items:center}.assignment-form-section-heading>span{width:38px;height:38px;display:grid;place-items:center;border-radius:7px;color:#175ba5;background:#eaf3fd}.assignment-form-section:nth-of-type(2) .assignment-form-section-heading>span{color:#08755a;background:#e8f7f1}.assignment-form-section:nth-of-type(3) .assignment-form-section-heading>span{color:#946100;background:#fff4d8}.assignment-form-section-heading h3,.assignment-form-section-heading p{margin:0}.assignment-form-section-heading h3{color:var(--brand-ink);font-size:.96rem}.assignment-form-section-heading p{margin-top:3px;color:var(--muted);font-size:.8rem;line-height:1.45}.assignment-context-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.assignment-title-field{grid-column:1 / -1}.assignment-teacher-strip{display:flex;align-items:center;gap:9px;min-height:42px;padding:9px 12px;border-left:3px solid #2a70b8;color:#38536e;background:#f4f8fc;font-size:.82rem;font-weight:650}.assignment-schedule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) minmax(190px,.8fr);gap:13px;align-items:stretch}.assignment-draft-status{display:grid;align-content:center;gap:3px;min-width:0;padding:10px 13px;border:1px solid #d7e3ee;border-radius:7px;background:#f8fafc}.assignment-draft-status>span{color:#6b7d90;font-size:.72rem;font-weight:700;text-transform:uppercase}.assignment-draft-status>strong{color:#8a5b00}.assignment-draft-status>small{color:#6b7d90;line-height:1.35}.assignment-instructions-field textarea{min-height:132px}.assignment-attachment-section{border-bottom:0}.assignment-modal-actions{position:sticky;bottom:-1px;z-index:2;margin:0 -2px;padding:14px 2px 16px;border-top:1px solid #dce5ee;background:#fffffffa}.assignment-question-editor{display:grid;gap:14px;margin-top:18px;border:1px solid #d7e3ee;border-radius:8px;background:#f8fbff;padding:16px}.assignment-legacy-question-heading{display:grid;gap:3px;padding-top:12px;border-top:1px solid #dce6ef}.assignment-legacy-question-heading span{color:var(--muted);font-size:.78rem}.assignment-question-empty-state{display:flex;align-items:center;justify-content:center;gap:12px;min-height:92px;padding:18px;color:#64788c;border:1px dashed #bdcedd;border-radius:7px;background:#fff}.assignment-question-empty-state>div{display:grid;gap:3px}.assignment-question-empty-state strong{color:#273f57}.assignment-question-empty-state span{font-size:.8rem}.assignment-question-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.assignment-question-heading h3,.assignment-question-heading p{margin:3px 0 0}.assignment-question-heading p,.assignment-question-empty{color:var(--muted);font-size:.84rem}.assignment-question-list{display:grid;gap:10px}.assignment-question-row{display:grid;grid-template-columns:34px minmax(0,1fr) 40px;align-items:start;gap:10px}.assignment-question-number{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--brand-blue);font-weight:750}.assignment-question-row textarea{width:100%;min-height:76px;resize:vertical;border:1px solid #cfd9e6;border-radius:8px;padding:10px 12px}.assignment-written-questions{border:1px solid #dce8f2;border-radius:8px;background:#fff;padding:12px 14px;margin:10px 0}.assignment-written-questions>span{color:var(--brand-blue);font-size:.76rem;font-weight:750;text-transform:uppercase}.assignment-written-questions ol{display:grid;gap:8px;margin:10px 0 0;padding-left:24px}.assignment-written-questions li{color:var(--brand-ink);line-height:1.45;white-space:pre-wrap}.assignment-closed-message{margin-top:12px;border-left:4px solid #c47a12;border-radius:6px;color:#734b12;background:#fff8e7;padding:10px 12px;font-size:.84rem;font-weight:650}@media(max-width:720px){.assignment-question-heading{display:grid}.assignment-question-row{grid-template-columns:30px minmax(0,1fr) 38px}.assignment-context-grid,.assignment-schedule-grid{grid-template-columns:1fr}.assignment-title-field{grid-column:auto}}.guardian-notice-card.unread{border-left:4px solid var(--brand-blue);background:#f8fbff}.unread-notice-row td:first-child{box-shadow:inset 4px 0 0 var(--brand-blue)}.unread-notice-row td{background:#f8fbff}.assignment-attachment-card{display:grid;grid-template-columns:96px minmax(0,1fr);gap:12px;align-items:center;border:1px solid #dce8f2;border-radius:8px;background:#f8fbff;padding:10px;margin:10px 0}.assignment-attachment-card.compact{grid-template-columns:58px minmax(0,1fr);padding:8px;margin:8px 0}.assignment-attachment-image,.assignment-attachment-file{width:96px;height:74px;border-radius:8px;border:1px solid #dce8f2;background:#fff}.assignment-attachment-card.compact .assignment-attachment-image,.assignment-attachment-card.compact .assignment-attachment-file{width:58px;height:48px}.assignment-attachment-image{object-fit:cover}.assignment-attachment-file{display:grid;place-items:center;color:var(--brand-blue)}.assignment-attachment-copy{min-width:0}.assignment-attachment-copy strong,.assignment-attachment-copy span{display:block}.assignment-attachment-copy strong{color:var(--brand-ink);font-size:.9rem}.assignment-attachment-copy span,.assignment-attachment-empty{color:var(--muted);font-size:.78rem;font-weight:600;overflow-wrap:anywhere}.assignment-attachment-empty{margin:8px 0}.assignment-attachment-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.assignment-attachment-actions a,.assignment-attachment-actions button{display:inline-flex;align-items:center;gap:5px;border:1px solid #cfd9e6;border-radius:7px;background:#fff;color:var(--brand-blue);padding:5px 9px;font-size:.76rem;font-weight:700;text-decoration:none;cursor:pointer;font-family:inherit}.file-preview-modal{display:grid;gap:12px;min-height:min(72vh,760px)}.file-preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid #dce8f2;border-radius:8px;background:#f8fbff;padding:10px 12px}.file-preview-toolbar>div{min-width:0}.file-preview-toolbar strong,.file-preview-toolbar span{display:block;overflow-wrap:anywhere}.file-preview-toolbar strong{color:var(--brand-ink);font-size:.9rem}.file-preview-toolbar span{color:var(--muted);font-size:.76rem;font-weight:600}.file-preview-stage{display:grid;place-items:center;min-height:min(65vh,690px);overflow:hidden;border:1px solid #cfd9e6;border-radius:8px;background:#eef3f8}.file-preview-stage.image{overflow:auto;padding:20px}.file-preview-image{display:block;max-width:100%;max-height:min(62vh,660px);object-fit:contain;border-radius:6px;background:#fff;box-shadow:0 8px 24px #0f26411f}.file-preview-frame{width:100%;height:min(65vh,690px);border:0;background:#fff}@media(max-width:720px){.file-preview-modal{min-height:68vh}.file-preview-toolbar{align-items:stretch;flex-direction:column}.file-preview-toolbar .secondary-action{justify-content:center}.file-preview-stage,.file-preview-frame{min-height:58vh;height:58vh}}.assignment-attachment-upload-field{grid-column:span 2}.assignment-attachment-upload-row{display:grid;grid-template-columns:112px minmax(0,1fr);gap:12px;align-items:center;border:1px dashed #c9d7e6;border-radius:8px;background:#f8fbff;padding:12px}.assignment-attachment-upload-row img,.assignment-attachment-upload-file{width:112px;height:82px;border-radius:8px;border:1px solid #dce8f2;background:#fff}.assignment-attachment-upload-row img{object-fit:cover}.assignment-attachment-upload-file{display:grid;place-items:center;color:var(--muted);font-size:.76rem;font-weight:700;text-align:center}.assignment-attachment-upload-row input{width:100%;min-width:0}.assignment-submission-modal{display:grid;gap:14px}.assignment-submission-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}.assignment-submission-summary article{border:1px solid #dce8f2;border-radius:8px;background:#f8fbff;padding:12px}.assignment-submission-summary span,.assignment-submission-table td span{display:block;color:var(--muted);font-size:.78rem;font-weight:600}.assignment-submission-summary strong{display:block;color:var(--brand-ink);font-size:1.35rem;font-weight:650}.assignment-submission-table table{min-width:820px}.assignment-submission-table td:nth-child(4){max-width:300px;white-space:normal}.assignment-review-form{display:grid;gap:12px;border:1px solid #dce8f2;border-radius:8px;background:#fff;padding:14px}.assignment-review-form h3{margin:2px 0 0;color:var(--brand-ink);font-size:1rem}.assignment-review-form p{margin:4px 0 0;color:var(--muted);font-weight:600}.assignment-review-work{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;border:1px solid #dce8f2;border-radius:8px;background:#f8fbff;padding:12px}.assignment-review-work>div,.assignment-review-work>.assignment-attachment-card{margin:0}.assignment-review-work span,.guardian-assignment-instructions span{display:block;color:var(--brand-blue);font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.assignment-review-work strong{display:block;color:var(--brand-ink);margin-top:4px}.guardian-assignment-list{display:grid;gap:12px}.guardian-assignment-card{display:grid;grid-template-columns:46px minmax(0,1fr);gap:12px;border:1px solid #dce8f2;border-radius:8px;background:#fff;padding:14px}.guardian-notice-icon.assignment{color:#835500;background:#fff4d8}.guardian-assignment-card p{margin:8px 0;color:#42515b;white-space:pre-wrap}.guardian-assignment-instructions{border:1px solid #dce8f2;border-radius:8px;background:#f8fbff;padding:10px 12px;margin:10px 0}.guardian-assignment-instructions p{margin:5px 0 0}.guardian-assignment-card small{color:var(--muted);font-weight:600}.guardian-inline-image{width:min(420px,100%);max-height:260px;object-fit:cover;border:1px solid #dce8f2;border-radius:8px;display:block;margin:10px 0;background:#fff}.guardian-inline-image.submission{max-height:220px}.guardian-assignment-meta,.guardian-assignment-notes{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.guardian-assignment-meta span,.guardian-assignment-notes span{border-radius:999px;background:#f2f6fa;color:#42515b;padding:5px 9px;font-size:.76rem;font-weight:650}.guardian-assignment-notes span{border-radius:8px;background:#f8fbff;white-space:pre-wrap}.guardian-assignment-actions{margin-top:12px}.guardian-assignment-actions form{display:grid;gap:10px}.guardian-assignment-actions textarea{width:100%;min-height:78px;border:1px solid #cfd9e6;border-radius:8px;color:var(--brand-ink);background:#fff;padding:10px 12px;resize:vertical}.guardian-submission-image-field{display:grid;gap:6px;color:var(--muted);font-size:.82rem;font-weight:650}.guardian-submission-image-field input{width:100%;border:1px solid #cfd9e6;border-radius:8px;color:var(--brand-ink);background:#fff;padding:8px}.guardian-submission-image-field small{color:var(--muted);font-weight:600}.guardian-assignment-actions form span{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.guardian-result-list{display:grid;gap:8px}.guardian-result-item{display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px;align-items:start;border:1px solid #dce8f2;border-radius:8px;color:var(--brand-ink);background:#fff;padding:12px;text-align:left}.guardian-result-item.active{border-color:var(--brand-blue);background:#f7fbff;box-shadow:inset 3px 0 0 var(--brand-gold)}.guardian-result-item strong,.guardian-result-item small{display:block}.guardian-result-item strong{font-weight:650}.guardian-result-item small{color:var(--muted);font-size:.78rem;font-weight:600}.guardian-report-preview{min-width:0}.guardian-empty{width:min(1180px,100%);margin-inline:auto}.compact-search{min-width:240px}.user-management-page{display:grid;gap:16px}.user-management-table{overflow:hidden}.user-management-toolbar{display:flex;align-items:end;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid #edf2f7;background:#f8fbffbd}.user-management-toolbar .compact-search{flex:1 1 340px}.compact-filter{display:grid;gap:6px;min-width:170px;color:#5b6f82;font-size:.78rem;font-weight:650}.compact-filter select{min-height:40px;border-radius:8px}.user-role-cell{color:var(--brand-ink);font-weight:650}.account-type-pill{display:inline-flex;align-items:center;min-height:26px;border-radius:999px;padding:0 10px;color:#26413b;background:#eef4fb;font-size:.76rem;font-weight:700;white-space:nowrap}.account-type-pill.portaluser{color:var(--brand-blue);background:var(--soft-blue)}.account-type-pill.registrationoperator{color:#835500;background:#fff0d5}.account-type-pill.guardian{color:var(--success);background:#e4f6f1}.account-type-pill.student{color:#4d5570;background:#e8ebf5}.table-action-row{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.modal-context{display:grid;gap:4px;margin:0 0 14px;color:var(--brand-ink);font-weight:650}.modal-context span{color:var(--muted);font-size:.88rem;font-weight:500}.promotions-page{display:grid;gap:16px}.promotion-workspace{overflow:hidden}.promotion-submission-lock{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 18px;border-bottom:1px solid #d9e5f0;color:#1559a8;background:#f1f7ff}.promotion-submission-lock>div{display:grid;gap:2px}.promotion-submission-lock strong{color:#20344d;font-size:.87rem}.promotion-submission-lock span:not(.status-pill){color:var(--muted);font-size:.78rem}.promotion-readiness-strip{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:12px;margin:0 18px 18px;padding:12px 14px;border:1px solid #f0c8c4;border-left:4px solid #b42318;border-radius:6px;color:#8f211c;background:#fff8f7}.promotion-readiness-strip.ready{border-color:#b9dfcc;border-left-color:#198754;color:#12633f;background:#f4fbf7}.promotion-readiness-strip>div{display:grid;gap:2px}.promotion-readiness-strip strong,.promotion-readiness-strip span{display:block}.promotion-readiness-strip strong{color:#20344d;font-size:.88rem}.promotion-readiness-strip span{color:var(--muted);font-size:.79rem}.promotion-preflight-modal{display:grid;gap:16px}.promotion-preflight-modal .promotion-preflight{margin:0}.promotion-preflight{margin:0 18px 18px;border:1px solid #d9e5f0;border-left:4px solid #b42318;border-radius:6px;background:#fff;overflow:hidden}.promotion-preflight.ready{border-left-color:#198754}.promotion-preflight-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:16px 18px;border-bottom:1px solid #e5edf5;background:#f7fafc}.promotion-preflight-heading h3,.promotion-preflight-heading p{margin:0}.promotion-preflight-heading h3{margin-top:3px;font-size:1rem}.promotion-preflight-heading p{margin-top:4px;color:var(--muted);font-size:.87rem}.promotion-preflight-summary{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.promotion-preflight-summary span,.promotion-preflight-status{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:5px;font-size:.78rem;font-weight:700}.promotion-preflight-summary .passed,.promotion-preflight-row.passed .promotion-preflight-status{color:#12633f;background:#e7f6ee}.promotion-preflight-summary .warning,.promotion-preflight-row.warning .promotion-preflight-status{color:#795500;background:#fff5d6}.promotion-preflight-summary .blocked,.promotion-preflight-row.blocked .promotion-preflight-status{color:#9f241f;background:#fdecea}.promotion-preflight-list{display:grid}.promotion-preflight-row{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:start;gap:10px;padding:12px 18px;border-bottom:1px solid #edf2f7}.promotion-preflight-row:last-child{border-bottom:0}.promotion-preflight-row.passed>svg{color:#198754}.promotion-preflight-row.warning>svg{color:#b47b00}.promotion-preflight-row.blocked>svg{color:#b42318}.promotion-preflight-row strong,.promotion-preflight-row span{display:block}.promotion-preflight-row strong{font-size:.88rem}.promotion-preflight-row div>span{margin-top:2px;color:var(--muted);font-size:.82rem;line-height:1.45}.promotion-preflight-exceptions,.promotion-rehearsal-issues,.promotion-rehearsal-plan{overflow:hidden;border:1px solid #d9e5f0;border-radius:6px;background:#fff}.promotion-preflight-exceptions-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border-bottom:1px solid #e6edf4;background:#f8fafc}.promotion-preflight-exceptions-heading h3{margin:3px 0 0;color:var(--brand-ink);font-size:.94rem}.modal-panel.wide:has(.promotion-rehearsal-modal){width:min(1480px,calc(100vw - 36px));max-width:min(1480px,calc(100vw - 36px));max-height:92vh}.promotion-rehearsal-modal{display:grid;gap:14px}.promotion-rehearsal-banner{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 16px;border:1px solid #efc3bf;border-left:4px solid #b42318;border-radius:6px;color:#9f241f;background:#fff8f7}.promotion-rehearsal-banner.ready{border-color:#b9dfcc;border-left-color:#198754;color:#12633f;background:#f4fbf7}.promotion-rehearsal-banner>div{display:grid;gap:2px}.promotion-rehearsal-banner strong{color:var(--brand-ink);font-size:.93rem}.promotion-rehearsal-banner span:not(.status-pill){color:var(--muted);font-size:.8rem}.promotion-outcome-grid{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:8px}.promotion-outcome-card{display:grid;gap:5px;min-height:72px;padding:12px 13px;border:1px solid #dce7f0;border-radius:6px;background:#f8fbfd}.promotion-outcome-card:nth-child(2),.promotion-outcome-card:nth-child(5){background:#fffaf0}.promotion-outcome-card:nth-child(3),.promotion-outcome-card:nth-child(4){background:#f3faf6}.promotion-outcome-card span{color:var(--muted);font-size:.76rem;font-weight:650}.promotion-outcome-card strong{color:var(--brand-ink);font-size:1.22rem}.promotion-rehearsal-plan table{min-width:940px}.promotion-snapshot-hash{color:#52677d;font-family:Consolas,monospace;font-size:.75rem}.promotion-run-actions{display:grid;gap:7px;min-width:250px}.promotion-rehearsal-state{margin-top:4px;font-weight:700}.promotion-rehearsal-state.passed{color:#137149}.promotion-rehearsal-state.blocked{color:#a12b25}.promotion-plan-controls{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(170px,.7fr) minmax(220px,.9fr) minmax(260px,1.2fr);gap:14px;align-items:end;padding:18px;border-bottom:1px solid #edf2f7;background:linear-gradient(135deg,#f4f9ffe6,#fffcefb8)}.promotion-controls{display:grid;grid-template-columns:minmax(220px,1.2fr) 42px minmax(220px,1.2fr) minmax(180px,.8fr) minmax(170px,.75fr);gap:14px;align-items:end;padding:18px;border-bottom:1px solid #edf2f7;background:linear-gradient(135deg,#f4f9ffe6,#fffcefb8)}.promotion-detail-controls{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(260px,1.3fr);gap:14px;padding:0 18px 18px;border-bottom:1px solid #edf2f7;background:linear-gradient(135deg,#f4f9ffe6,#fffcefb8)}.promotion-arrow{display:inline-flex;align-items:center;justify-content:center;width:42px;height:40px;margin-bottom:1px;border:1px solid #d9e5f0;border-radius:999px;background:#fff;color:var(--brand-blue)}.promotion-date-control{min-height:42px}.promotion-student-toolbar{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px;padding:16px 18px;border-bottom:1px solid #edf2f7}.promotion-student-toolbar .compact-search{flex:1 1 340px}.promotion-student-table table{min-width:760px}.promotion-target-select{display:grid;grid-template-columns:26px minmax(260px,1fr);align-items:center;gap:8px;color:var(--brand-blue)}.promotion-target-select select{width:100%;min-height:40px;border-radius:8px}.promotion-history-section{overflow:hidden}.modal-panel.wide:has(.promotion-history-modal){width:min(1500px,calc(100vw - 36px));max-width:min(1500px,calc(100vw - 36px));max-height:92vh}.promotion-history-modal{display:grid;gap:16px}.promotion-history-modal .promotion-history-section{margin:0;border:1px solid #dbe6f0;border-radius:6px;background:#fff}.promotion-history-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px;border-bottom:1px solid #edf2f7}.promotion-history-header h2{margin:0;color:var(--brand-ink);font-size:1.02rem}.promotion-history-header p{margin:4px 0 0;color:var(--muted);font-size:.84rem}.promotion-history-grid{display:grid;grid-template-columns:minmax(440px,.9fr) minmax(520px,1.1fr);gap:0}.promotion-batch-table,.promotion-history-table{border-radius:0;border:0}.promotion-history-table{border-left:1px solid #edf2f7}.promotion-batch-table table,.promotion-history-table table{min-width:640px}.link-button{border:0;padding:0;background:transparent;color:var(--brand-blue);cursor:pointer;font:inherit;font-weight:750}.link-button:hover{text-decoration:underline}.table-title-link{display:inline-block;text-align:left}.student-lookup-summary{margin-bottom:14px;color:var(--muted);font-size:.92rem;font-weight:650}.setup-wizard-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px}.setup-wizard-step{display:flex;align-items:center;gap:10px;border:1px solid #d6e3ee;border-radius:8px;background:#f8fbff;padding:10px 12px;color:var(--muted);font-size:.88rem;font-weight:750}.setup-wizard-step span{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:999px;background:#eaf3fb;color:var(--brand-blue);font-size:.78rem}.setup-wizard-step.active{border-color:#0b54a059;background:#eef7ff;color:var(--brand-ink)}.setup-wizard-note{margin:12px 0 0;color:var(--muted);font-size:.88rem;font-weight:600}.wizard-term-grid{display:grid;gap:14px}.wizard-term-card{border:1px solid #dbe7f2;border-radius:8px;background:#fff;padding:14px}.generator-action{border-color:#9ac6b2;background:#f1fbf6;color:#176846}.timetable-generator-step{display:grid;gap:18px}.timetable-generator-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;border-bottom:1px solid #dce7ef;padding:2px 2px 16px}.timetable-generator-intro>div{min-width:0}.timetable-generator-intro span{color:#1760a8;font-size:.73rem;font-weight:800}.timetable-generator-intro h3{margin:4px 0 5px;color:var(--brand-ink);font-size:1.18rem}.timetable-generator-intro p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.55}.timetable-generator-intro>svg{flex:0 0 auto;color:#1760a8}.timetable-scope-options,.timetable-mode-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.timetable-scope-card,.timetable-mode-options button{position:relative;display:grid;gap:5px;min-height:116px;border:1px solid #d6e2eb;border-radius:8px;background:#fff;padding:18px;color:var(--brand-ink);cursor:pointer;text-align:left}.timetable-scope-card:hover,.timetable-mode-options button:hover{border-color:#8db6d9;background:#f8fbfe}.timetable-scope-card.selected,.timetable-mode-options button.selected{border-color:#2c72b8;box-shadow:inset 3px 0 #2c72b8;background:#f1f7fd}.timetable-scope-card strong,.timetable-mode-options strong{font-size:.98rem}.timetable-scope-card small,.timetable-mode-options span{color:var(--muted);font-size:.84rem;line-height:1.45}.timetable-scope-card b{margin-top:5px;color:#1760a8;font-size:.78rem}.scope-radio{position:absolute;top:15px;right:15px;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border:1px solid #b9cbd9;border-radius:50%;color:#1760a8;font-size:.7rem}.timetable-generator-readiness,.timetable-preview-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.timetable-generator-readiness>div,.timetable-preview-metrics>div{display:grid;gap:3px;border:1px solid #dce7ef;border-radius:8px;background:#f8fafc;padding:13px 15px}.timetable-generator-readiness strong,.timetable-preview-metrics strong{color:var(--brand-ink);font-size:1rem}.timetable-generator-readiness span,.timetable-preview-metrics span{color:var(--muted);font-size:.76rem;font-weight:700}.timetable-preview-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.timetable-preview-metrics strong{font-size:1.35rem}.timetable-preview-metrics .success{border-color:#bce4cf;background:#f1faf5}.timetable-preview-metrics .warning{border-color:#efd39c;background:#fff9ec}.timetable-generator-section{display:grid;gap:10px}.generator-field-label{color:var(--brand-ink);font-size:.84rem;font-weight:750}.generator-field-label b,.timetable-generator-form-grid .field>span b{color:#b83a3a}.timetable-day-selector{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.timetable-day-selector button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:42px;border:1px solid #d5e1ea;border-radius:8px;background:#fff;color:#66788a;cursor:pointer;font-weight:700}.timetable-day-selector button svg{opacity:.3}.timetable-day-selector button.selected{border-color:#2c72b8;background:#edf6ff;color:#155b9d}.timetable-day-selector button.selected svg{opacity:1}.timetable-generator-form-grid{display:grid;grid-template-columns:minmax(180px,.35fr) minmax(260px,.65fr);gap:14px}.generator-number-input{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;border:1px solid #cad9e5;border-radius:8px;background:#fff}.generator-number-input input{border:0!important;box-shadow:none!important}.generator-number-input small{padding-right:13px;color:var(--muted);font-weight:700}.timetable-mode-options button.danger.selected{border-color:#d69a9a;box-shadow:inset 3px 0 #bd5353;background:#fff7f7}.timetable-settings-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid #dce7ef;border-radius:8px;background:#dce7ef}.timetable-settings-summary div{display:grid;gap:4px;background:#f8fafc;padding:12px 14px}.timetable-settings-summary svg{color:#1760a8}.timetable-settings-summary span{color:var(--muted);font-size:.74rem;font-weight:700}.timetable-settings-summary strong{color:var(--brand-ink);font-size:.86rem}.generator-ready-icon{color:#168457!important}.generator-warning-icon{color:#c17b00!important}.timetable-generation-warnings{display:grid;gap:7px;border:1px solid #efd39c;border-radius:8px;background:#fff9ec;padding:13px 15px}.timetable-generation-warnings header{display:flex;align-items:center;gap:8px;color:#8c5900}.timetable-generation-warnings p{margin:0;color:#725529;font-size:.84rem}.generator-section-heading{display:flex;justify-content:space-between}.generator-section-heading div{display:grid;gap:2px}.generator-section-heading span{color:var(--muted);font-size:.78rem}.timetable-generation-table{max-height:330px;overflow:auto}.timetable-generation-table table{min-width:650px}.timetable-generation-table td small{display:block;margin-top:2px;color:var(--muted)}.timetable-generated-details{border:1px solid #dce7ef;border-radius:8px;background:#fff}.timetable-generated-details summary{padding:13px 15px;color:#1760a8;cursor:pointer;font-size:.86rem;font-weight:750}.timetable-generated-details[open] summary{border-bottom:1px solid #dce7ef}.timetable-wizard-actions{position:sticky;bottom:-1px;z-index:2;margin-top:2px;border-top:1px solid #e1e9ef;background:#fff;padding-top:14px}@media(max-width:760px){.timetable-scope-options,.timetable-mode-options,.timetable-generator-form-grid,.timetable-settings-summary,.timetable-generator-readiness,.timetable-preview-metrics{grid-template-columns:1fr}.timetable-day-selector{grid-template-columns:repeat(4,minmax(0,1fr))}}.danger-action{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 14px;border:1px solid #f1c9c9;border-radius:8px;background:#fff5f5;color:#a33a3a;cursor:pointer;font-weight:750}.danger-action:hover{background:#ffecec}.danger-action:disabled{cursor:not-allowed;opacity:.62}.attendance-history-grid{display:grid;grid-template-columns:minmax(220px,.32fr) minmax(0,.68fr);gap:14px;padding:0 18px 18px}.attendance-student-list{display:grid;align-content:start;gap:12px;max-height:560px;overflow:auto;padding-right:4px}.attendance-student-group{display:grid;gap:8px}.attendance-student-group-heading{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #dbe7f3;border-radius:8px;background:#f8fbff;padding:8px 10px}.attendance-student-group-heading strong{display:block;color:var(--brand-ink);font-size:.84rem;font-weight:700}.attendance-student-group-heading span,.attendance-student-group-heading small{color:var(--muted);font-size:.74rem;font-weight:700}.attendance-student-group-heading small{min-width:70px;min-height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;color:var(--brand-blue);background:#eaf3ff}.attendance-student{display:grid;grid-template-columns:36px minmax(0,1fr);gap:4px 10px;align-items:center;width:100%;border:1px solid #dbe7f3;border-radius:8px;background:#fff;color:var(--brand-ink);padding:10px;text-align:left}.attendance-student:hover,.attendance-student.active{border-color:var(--brand-blue);background:#f4f9ff}.attendance-student span,.attendance-avatar span{display:inline-grid;place-items:center;border-radius:999px;color:var(--brand-blue);background:#eaf3ff;font-weight:760}.attendance-student span{grid-row:1 / span 2;width:36px;height:36px}.attendance-student strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attendance-student small{color:var(--muted);font-weight:600}.attendance-history-card{display:grid;gap:14px;min-width:0}.attendance-history-profile{display:flex;align-items:center;gap:12px;border:1px solid #e3edf6;border-radius:8px;background:#fbfdff;padding:12px}.attendance-avatar,.attendance-avatar img,.attendance-avatar span{width:52px;height:52px;border-radius:999px}.attendance-avatar{display:grid;place-items:center;overflow:hidden;background:#eaf3ff}.attendance-avatar img{object-fit:cover}.attendance-history-profile span,.attendance-history-metrics span{color:var(--muted);font-size:.76rem;font-weight:700}.attendance-history-profile h4{margin:3px 0;color:var(--brand-ink);font-size:1rem}.attendance-history-profile p{margin:0;color:var(--muted);font-weight:600}.attendance-history-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px}.attendance-history-metrics>div{border:1px solid #e3edf6;border-radius:8px;background:#fff;padding:10px}.attendance-history-metrics strong{display:block;margin-top:4px;color:var(--brand-ink);font-size:1rem}.attendance-adjustment-toolbar{display:flex;justify-content:flex-end}.attendance-adjustment-note{display:grid;gap:3px;min-width:150px;text-align:left}.attendance-adjustment-note strong{color:var(--brand-ink);font-size:.82rem;font-weight:700}.attendance-adjustment-note span{color:var(--muted);font-size:.76rem;font-weight:600}.attendance-history-table table{min-width:920px}.roll-call-panel{display:grid;gap:14px}.roll-call-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}.roll-call-summary-grid>div{border:1px solid #e3edf6;border-radius:8px;background:#fbfdff;padding:10px}.roll-call-toolbar{display:grid;grid-template-columns:minmax(220px,.35fr) minmax(0,.65fr);gap:14px;align-items:end;border:1px solid #e3edf6;border-radius:8px;background:#fff;padding:12px}.roll-call-bulk-actions,.roll-call-save-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:end}.roll-call-save-controls{justify-content:flex-end}.roll-call-save-controls .field{min-width:min(220px,100%);margin:0}.roll-call-save-button,.roll-call-student-cell{display:inline-flex;align-items:center;gap:8px}.roll-call-student-cell{min-width:240px;text-align:left}.compact-avatar,.compact-avatar img,.compact-avatar span{width:40px;height:40px}.roll-call-table table{min-width:1020px}.roll-call-status-select{min-width:150px;min-height:38px;border:1px solid #cfd9e6;border-radius:8px;background:#fff;color:var(--brand-ink);padding:0 10px;outline:none}.roll-call-status-select:focus{border-color:var(--brand-sky);box-shadow:0 0 0 3px #2196dc2e}.roll-call-change-pill{display:inline-flex;align-items:center;min-height:26px;border-radius:999px;background:#fff3c4;color:#7c5800;padding:0 10px;font-size:.76rem;font-weight:760}.pickup-desk-heading{align-items:flex-start}.pickup-desk-actions{flex:1;align-items:end}.pickup-outcome-filter{min-width:180px}.pickup-tab-list{padding-top:0}.pickup-record-table table{min-width:980px}.pickup-record-table td:nth-child(4){max-width:300px}.pickup-desk-skeleton{min-height:360px}.attendance-wide-skeleton{margin-top:14px;min-height:340px}.attendance-history-skeleton{min-height:380px}.timetable-summary-grid{padding:18px;margin-bottom:0}.people-metric.success{background:linear-gradient(135deg,#fff,#edf8f2)}.people-metric.warning{background:linear-gradient(135deg,#fff,#fff8d6)}.people-metric.danger{background:linear-gradient(135deg,#fff,#fbe3df)}.teacher-insight-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:14px;padding:0 18px 18px}.teacher-insight-panel{min-width:0;border:1px solid #edf2f7;border-radius:8px;background:#fbfdff;overflow:hidden}.teacher-insight-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border-bottom:1px solid #edf2f7;padding:14px 16px;background:#fff}.teacher-insight-heading strong{color:var(--brand-ink);font-weight:650}.teacher-insight-heading span{color:var(--muted);font-size:.82rem;font-weight:560;text-align:right}.insight-empty{min-height:190px;display:grid;place-items:center;align-content:center;gap:6px;padding:22px;color:var(--success);text-align:center}.insight-empty span{max-width:360px;color:var(--muted);font-weight:500}.conflict-list,.unassigned-panel{display:grid;gap:10px;padding:14px}.conflict-card{display:grid;gap:8px;border:1px solid #efc0b8;border-radius:8px;background:#fff7f5;padding:12px}.conflict-card strong{display:inline-flex;align-items:center;gap:6px;color:var(--danger)}.conflict-card span,.conflict-period-row span,.unassigned-panel span{color:var(--muted);font-size:.84rem;font-weight:560}.conflict-period-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.conflict-period-actions{display:inline-flex;justify-content:flex-end;flex-wrap:wrap;gap:6px}.conflict-period-row .small-button{min-height:30px;padding-inline:9px}.suggestion-confirmation{display:grid;gap:16px}.suggestion-summary{display:grid;gap:4px}.suggestion-summary h3,.suggestion-summary p,.suggestion-time-grid p{margin:0}.suggestion-summary h3{color:var(--brand-ink);font-size:1.05rem}.suggestion-summary p,.suggestion-reason{color:var(--muted);font-weight:560}.suggestion-time-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.suggestion-time-grid div{display:grid;gap:4px;border:1px solid #e4edf6;border-radius:8px;background:#fbfdff;padding:14px}.suggestion-time-grid div:last-child{border-color:#bfe2d8;background:#f3fbf7}.suggestion-time-grid span{color:var(--muted);font-size:.76rem;font-weight:700;text-transform:uppercase}.suggestion-time-grid strong{color:var(--brand-ink)}.suggestion-reason{border-left:3px solid var(--brand-gold);padding-left:12px}.unassigned-panel{border-top:1px solid #edf2f7;background:#fffdf4}.unassigned-panel strong{color:#835500;font-weight:650}.inline-icon-text{display:inline-flex;align-items:center;gap:6px;color:#475569}.embedded-section{margin:0 18px 18px;border:1px solid #edf2f7;border-radius:8px;overflow:hidden}.school-identity-cell{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center}.school-identity-cell img{width:38px;height:38px;border:1px solid var(--line);border-radius:8px;object-fit:contain;background:#fff}.brand-preview,.color-field{display:inline-flex;align-items:center;gap:8px}.brand-preview span,.color-field span{width:20px;height:20px;flex:0 0 auto;border:1px solid #cfd9e6;border-radius:999px}.brand-preview small{color:var(--muted);font-weight:500}.color-field{width:100%}.color-field input{min-width:0}.logo-upload-field{display:grid;gap:8px}.logo-upload-preview{width:72px;height:72px;display:grid;place-items:center;border:1px solid #d6e3ee;border-radius:8px;background:#fff;color:var(--brand-blue);overflow:hidden}.logo-upload-preview img{width:100%;height:100%;object-fit:contain;padding:6px}.logo-upload-field small{color:var(--muted);font-size:.78rem;font-weight:500}.checkbox-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px;border:1px solid #d6e3ee;border-radius:8px;background:#fff;padding:8px}.checkbox-list-item{display:flex;align-items:center;justify-content:flex-start;gap:8px;min-height:40px;border:1px solid #e1ebf5;border-radius:8px;background:#f8fbff;padding:8px 10px;color:var(--brand-ink);font-size:.9rem;font-weight:560}.checkbox-list-item input[type=checkbox]{flex:0 0 16px;width:16px!important;min-width:16px;height:16px!important;min-height:16px;margin:0;padding:0!important;border-radius:4px;accent-color:var(--brand-blue)}.checkbox-list-item span{min-width:0;line-height:1.25;overflow-wrap:anywhere}.fees-summary-grid,.fees-selector-panel{margin-bottom:16px}.fees-selector-panel .form-grid{padding:16px 18px}.fees-reports-stack{display:grid;gap:16px}.fees-report-toolbar{display:grid;grid-template-columns:repeat(2,minmax(180px,240px));gap:12px}.fees-invoice-toolbar{display:grid;grid-template-columns:minmax(160px,220px) minmax(240px,1fr);gap:12px;padding:16px 18px}.search-input-wrap{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;border:1px solid #cfd9e6;border-radius:8px;background:var(--surface);padding:0 11px}.search-input-wrap input{border:0;padding:0;min-height:40px}.fees-invoice-modal{display:grid;gap:16px}.fees-modal-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px}.fees-modal-actions .small-button,.fees-detail-grid .small-button{display:inline-flex;align-items:center;gap:6px}.fees-invoice-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:16px 18px;border:1px solid var(--line);border-radius:8px;background:#fbfdff}.fees-invoice-header h3,.fees-invoice-header p,.fees-detail-grid h4{margin:0}.fees-invoice-header p{color:var(--muted);font-weight:600}.fees-balance-box{min-width:180px;display:grid;gap:6px;justify-items:end;text-align:right}.fees-balance-box span{color:var(--muted);font-weight:600}.fees-balance-box strong{color:var(--brand-ink);font-size:1.45rem;font-weight:650}.fees-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.75fr);gap:14px}.fees-detail-grid>div{border:1px solid var(--line);border-radius:8px;background:#fff;overflow:hidden}.fees-detail-grid h4{padding:14px 16px;border-bottom:1px solid #edf2f7;color:var(--brand-ink);font-size:.95rem}.fees-section-heading{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.fees-section-heading h4{margin:0;color:var(--brand-ink);font-size:.95rem}.fees-gateway-panel{display:grid;gap:14px;border:1px solid #d9e5f2;border-radius:8px;padding:16px;background:linear-gradient(180deg,#f8fbff,#fff)}.fees-adjustment-panel{display:grid;gap:14px;border:1px solid #dce8f6;border-radius:8px;padding:16px;background:#fbfdff}.fees-adjustment-form{display:grid;gap:12px}.fees-adjustment-line{background:#fbfdff}.fees-negative-amount{color:#9a3412;font-weight:700}.line-kind-charge{background:#eef6ff;color:var(--brand-blue)}.line-kind-discount,.line-kind-scholarship,.line-kind-adjustment{background:#fff6df;color:#8a5a00}.gateway-option-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}.gateway-option{display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 9px;align-items:center;min-height:58px;padding:10px 12px;border:1px solid #d7e4f1;border-radius:8px;color:var(--brand-ink);background:#fff;text-align:left}.gateway-option svg{grid-row:span 2;color:var(--brand-blue)}.gateway-option strong,.gateway-option span{overflow-wrap:anywhere}.gateway-option strong{font-weight:650}.gateway-option span{color:var(--muted);font-size:.78rem;font-weight:600}.gateway-option.active{border-color:var(--brand-blue);box-shadow:0 0 0 3px #1a56a61f}.fees-gateway-form{display:grid;gap:12px;border:0;padding:0}.gateway-actions{justify-content:flex-start;padding-top:0}.link-action{text-decoration:none}.gateway-muted{margin:0;color:var(--muted);font-weight:600}.gateway-result{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:12px;border:1px solid #edf2f7;border-radius:8px;background:#fff}.gateway-result div{display:grid;gap:3px}.gateway-result span{color:var(--muted);font-size:.72rem;font-weight:700;text-transform:uppercase}.gateway-result strong{color:var(--brand-ink);font-size:.88rem;overflow-wrap:anywhere}.fees-payment-form{display:grid;gap:12px;border:1px solid var(--line);border-radius:8px;padding:16px}.fees-print-document{display:none}.fees-document-header,.fees-document-meta,.fees-document-totals,.fees-document-footer{break-inside:avoid}.fees-document-header{display:grid;grid-template-columns:72px minmax(0,1fr) minmax(170px,auto);gap:16px;align-items:center;padding-bottom:14px;border-bottom:3px solid var(--school-primary, var(--brand-blue))}.fees-document-header img,.fees-document-logo-placeholder{width:64px;height:64px;border:1px solid #d8e2ee;border-radius:8px;object-fit:contain;background:#fff}.fees-document-logo-placeholder{display:grid;place-items:center;color:var(--brand-blue);font-weight:800}.fees-document-header h2,.fees-document-header p{margin:0}.fees-document-header h2{color:#0f2437;font-size:1.35rem}.fees-document-header p{color:#526272;font-size:.86rem;margin-top:4px}.fees-document-title{display:grid;gap:4px;justify-items:end;text-align:right}.fees-document-title span{color:var(--school-primary, var(--brand-blue));font-size:.72rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.fees-document-title strong{color:#0f2437;font-size:1rem}.fees-document-title small{color:#667789;font-size:.74rem}.fees-document-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0}.fees-document-meta div,.fees-document-totals div{border:1px solid #dce6f0;border-radius:8px;padding:10px 12px;background:#f8fbfe}.fees-document-meta span,.fees-document-totals span{display:block;color:#607286;font-size:.72rem;font-weight:700;text-transform:uppercase}.fees-document-meta strong,.fees-document-totals strong{display:block;color:#12263a;margin-top:4px;font-size:.96rem}.fees-document-meta small{display:block;color:#607286;margin-top:3px;font-size:.78rem}.fees-document-table{width:100%;border-collapse:collapse;margin-top:8px;font-size:.86rem}.fees-document-table th,.fees-document-table td{border:1px solid #dce6f0;padding:9px 10px;text-align:left;vertical-align:top}.fees-document-table th{color:#0f2437;background:#eef5fb;font-size:.75rem;text-transform:uppercase}.fees-document-table td:last-child,.fees-document-table th:last-child{text-align:right}.fees-document-table.receipt-table{max-width:420px;margin-left:auto}.fees-document-table.receipt-table th{width:52%}.fees-document-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:520px;margin:16px 0 0 auto}.fees-document-totals div:last-child{background:var(--school-primary, var(--brand-blue));border-color:var(--school-primary, var(--brand-blue))}.fees-document-totals div:last-child span,.fees-document-totals div:last-child strong{color:#fff}.fees-document-note{margin:16px 0 0;border-left:3px solid var(--school-accent, var(--brand-gold));padding:9px 12px;color:#34475a;background:#fffaf0;font-size:.86rem}.fees-document-footer{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:24px;margin-top:34px;color:#526272;font-size:.78rem}.fees-document-footer span:last-child{border-top:1px solid #95a4b3;padding-top:7px;text-align:center}.selected-row{background:#f4f9ff}.row-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}.form-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.person-cell{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:start;min-width:240px}.person-cell>div{display:grid;gap:2px;min-width:0}.person-cell strong{display:block;min-width:0;overflow-wrap:anywhere}.person-cell img,.person-avatar{width:40px;height:40px;flex:0 0 auto;border-radius:8px}.person-cell img{border:1px solid var(--line);object-fit:cover;background:#fff}.person-avatar{display:inline-grid;place-items:center;color:var(--brand-blue);background:var(--soft-blue);font-size:.78rem;font-weight:700}.person-cell span{display:block;max-width:360px;color:var(--muted);overflow-wrap:anywhere}.photo-upload-field,.image-upload-field{grid-column:span 2}.image-upload-row{display:grid;grid-template-columns:112px minmax(0,1fr);gap:12px;align-items:center;border:1px dashed #c9d7e6;border-radius:8px;background:#f8fbff;padding:12px}.image-upload-row img,.image-upload-row span{width:112px;height:82px;border-radius:8px;border:1px solid #dce8f2;object-fit:cover;display:grid;place-items:center;color:var(--muted);background:#fff;font-size:.76rem;font-weight:650;text-align:center}.image-upload-row input{width:100%;min-width:0}.photo-upload-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;border:1px solid #cfd9e6;border-radius:8px;background:#fff;padding:10px}.photo-upload-row img{width:48px;height:48px;border:1px solid var(--line);border-radius:8px;object-fit:cover}.photo-upload-row input{padding:8px 0;border:0;min-height:auto}.photo-upload-row input::file-selector-button{min-height:34px;border:1px solid #d5e0ec;border-radius:8px;margin-right:10px;padding:0 12px;color:var(--brand-ink);background:#f7fafc;font:inherit;font-weight:600}.photo-upload-row small{display:block;margin-top:4px;color:var(--muted);font-weight:500}.data-form{display:grid;gap:14px;padding:16px 18px 18px;border-top:1px solid #edf2f7}.modal-form{padding:0;border-top:0}.loader-host{position:relative}.loader-host>fieldset{min-width:0;display:grid;gap:inherit;margin:0;padding:0;border:0}.loader-host>fieldset:disabled{opacity:.48}.data-form h4{margin:0;color:var(--brand-ink);font-size:.95rem}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-grid.compact{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.form-grid.single{grid-template-columns:1fr}.field,.toggle-field{display:grid;gap:6px;color:var(--muted);font-size:.84rem;font-weight:600}.login-form label>span:first-child,.field>span:first-child,.form-field>span:first-child,label:has(:is(input,select,textarea)[required])>span:first-child{display:inline-flex;align-items:center;gap:4px}.login-form label:has(:is(input,select,textarea)[required])>span:first-child:after,.field:has(:is(input,select,textarea)[required])>span:first-child:after,.form-field:has(:is(input,select,textarea)[required])>span:first-child:after,label:has(:is(input,select,textarea)[required])>span:first-child:after{content:"*";color:var(--danger);font-size:.95em;font-weight:800;line-height:1}.required-field-marker{color:var(--danger);font-weight:800}.field input,.field select,.field textarea{width:100%;min-height:40px;border:1px solid #cfd9e6;border-radius:8px;color:var(--brand-ink);background:var(--surface);padding:0 11px;outline:none}.field input[type=color]{min-height:42px;padding:4px}.field textarea{min-height:82px;padding:9px 11px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--brand-sky);box-shadow:0 0 0 3px #2196dc2e}.toggle-field{align-content:end;align-self:end;grid-template-columns:auto 1fr;align-items:center;min-height:40px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:#f8fbff}.toggle-field input{width:16px;height:16px;accent-color:var(--brand-blue)}.table-section{margin-top:14px;overflow:hidden}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid #edf2f7;background:#f8fbffbd}.section-heading span{color:var(--muted);font-weight:600}.section-actions{display:inline-flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px}.panel-action-button{min-height:34px;border:1px solid rgba(27,85,166,.16);border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 11px;color:var(--brand-blue);background:#fff;font-size:.84rem;font-weight:600;box-shadow:0 8px 18px #151d3f0a}.panel-action-button:hover{border-color:#1b55a647;background:var(--soft-blue)}.table-wrap{overflow-x:auto}.report-center{display:grid;gap:14px}.report-toolbar{display:grid;grid-template-columns:minmax(220px,1.1fr) minmax(320px,1.7fr) minmax(240px,auto);gap:14px;align-items:end;border:1px solid var(--line);border-radius:8px;background:var(--panel-bg);padding:16px 18px;box-shadow:0 12px 26px #151d3f09}.report-toolbar label,.report-date-grid label,.report-period-control{display:grid;gap:7px;color:var(--muted);font-size:.84rem;font-weight:650}.report-toolbar select,.report-toolbar input{min-height:42px;border:1px solid var(--line);border-radius:8px;padding:0 12px;color:var(--brand-ink);background:#fff;font:inherit}.report-period-control{min-width:0}.report-period-control .segmented-control{overflow-x:auto;width:100%}.report-date-grid{display:grid;grid-template-columns:repeat(2,minmax(120px,1fr));gap:10px}.report-toolbar-actions{display:inline-flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.report-metrics .metric-card{min-height:104px}.report-print-heading{align-items:start}.report-context-row{display:inline-flex;justify-content:flex-end;flex-wrap:wrap;gap:8px}.report-context-row span{border:1px solid var(--line);border-radius:999px;background:#fff;padding:6px 10px;color:var(--brand-ink);font-size:.82rem}.report-table th,.report-table td{white-space:nowrap}.report-table td:first-child,.report-table td:nth-child(2){white-space:normal}.report-table .report-class-summary-row td{border-top:2px solid #9fc7b2;border-bottom-color:#d6e9df;background:#f0f8f4;color:#1d4c35;font-weight:650}.report-table .report-class-summary-row:hover td{background:#edf6f1}.report-table .report-class-summary-row td:first-child{box-shadow:inset 3px 0 #4f9470}.report-table .report-class-summary-row span{margin-top:3px;color:#587467;font-weight:500}table{width:100%;min-width:860px;border-collapse:separate;border-spacing:0}th,td{padding:14px 18px;text-align:left;border-bottom:1px solid #edf2f7;vertical-align:top}th{color:#52616c;background:#f8fbff;font-size:.78rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase}tbody tr{background:#ffffffd1;transition:background .14s ease}tbody tr:hover{background:#fbfdff}th:last-child,td:last-child{text-align:right}td strong,td span{display:block}td strong{font-weight:600}.message-cell{max-width:280px;overflow-wrap:anywhere}.small-button{min-height:34px;padding:0 10px;font-size:.86rem;color:#314559;background:#f7fafc;border:1px solid #dfe7f0}.status-pill{display:inline-flex;align-items:center;min-height:26px;border-radius:999px;padding:0 10px;color:#26413b;background:var(--soft-grey);font-size:.78rem;font-weight:650}.status-pill.active,.status-pill.current,.status-pill.processed,.status-pill.published,.status-pill.approved,.status-pill.paid,.status-pill.scanned{color:var(--success);background:#e4f6f1}.status-pill.inactive,.status-pill.disabled,.status-pill.failed,.status-pill.restricted,.status-pill.returned,.status-pill.withdrawn,.status-pill.unpaid{color:var(--danger);background:#fbe3df}.status-pill.pending,.status-pill.submitted,.status-pill.rejected,.status-pill.part-paid,.status-pill.draft{color:#835500;background:#fff0d5}.status-pill.overpaid{color:var(--brand-blue);background:var(--soft-blue)}.status-pill.duplicate,.status-pill.reviewed,.status-pill.graduated,.status-pill.transferred,.status-pill.archived{color:#4d5570;background:#e8ebf5}.status-pill.allowed{color:var(--success);background:#e4f6f1}.status-pill.blocked{color:var(--danger);background:#fbe3df}.status-pill.check-in{color:var(--success);background:#e4f6f1}.status-pill.check-out{color:var(--brand-blue);background:var(--soft-blue)}.transport-record-table table{min-width:1040px}.transport-location-cell strong{margin-bottom:4px}.transport-coordinate-link{display:inline-flex;align-items:center;gap:4px;color:var(--brand-blue);font-size:.78rem;font-weight:600;text-decoration:none}.transport-coordinate-link:hover{text-decoration:underline}.transport-skeleton{min-height:260px}.table-empty{margin:0;padding:20px 18px}.empty-state{display:grid;place-items:center;text-align:center;min-height:240px;color:var(--brand-blue)}.empty-state p{max-width:460px;margin:4px auto 0;color:var(--muted)}.modal-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:28px;background:#0f172a6b;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.modal-panel{width:min(680px,100%);max-height:min(760px,calc(100vh - 56px));display:grid;grid-template-rows:auto minmax(0,1fr);border:1px solid rgba(223,231,240,.82);border-radius:8px;background:linear-gradient(180deg,#fff,#fbfdff),var(--surface);box-shadow:0 24px 70px #0f172a47;overflow:hidden}.modal-panel.wide{width:min(860px,100%)}.modal-panel.report{width:min(1280px,calc(100vw - 32px));max-height:min(920px,calc(100vh - 32px))}.modal-panel.report .modal-heading{padding:16px 18px}.modal-panel.report .modal-body{padding:16px}.modal-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 22px;border-bottom:1px solid var(--line);background:linear-gradient(90deg,#eaf5ffdb,#fff8d66b),#fff}.modal-heading span{display:block;margin-bottom:3px;color:var(--brand-blue);font-size:.76rem;font-weight:650;letter-spacing:.04em;text-transform:uppercase}.modal-heading h2{margin:0;color:var(--brand-ink);font-size:1.16rem;font-weight:650}.modal-close-button{width:38px;height:38px;border:1px solid rgba(207,217,230,.9);border-radius:8px;display:inline-grid;place-items:center;color:var(--brand-ink);background:#fff}.modal-close-button:hover{background:var(--soft-grey)}.modal-body{min-height:0;padding:22px;overflow:auto}.modal-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;padding-top:4px}.question-bank-seed-dialog{display:grid;gap:18px;width:100%}.question-bank-seed-intro{display:flex;align-items:center;gap:14px;padding-bottom:16px;border-bottom:1px solid var(--line)}.question-bank-seed-intro>span{flex:0 0 44px;width:44px;height:44px;display:inline-grid;place-items:center;border-radius:8px;color:var(--brand-blue);background:#eaf4ff}.question-bank-seed-intro strong,.question-bank-seed-details strong{display:block;color:var(--brand-ink);font-weight:650}.question-bank-seed-intro p{margin:4px 0 0;color:var(--muted);line-height:1.5}.question-bank-seed-details{display:grid;gap:12px}.question-bank-seed-details>div{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px;align-items:start}.question-bank-seed-details svg{margin-top:2px;color:#16805c}.question-bank-seed-details small{display:block;margin-top:2px;color:var(--muted);font-size:.86rem;line-height:1.45}.question-bank-seed-note{margin:0;padding:11px 13px;border-left:3px solid #f2b705;color:#526277;background:#fffaf0;line-height:1.5}.question-bank-seed-actions{padding-top:2px}@media(max-width:560px){.question-bank-seed-actions>button{flex:1 1 100%}}.skeleton{min-height:118px;background:linear-gradient(90deg,#fff,#edf4fb,#fff);background-size:220% 100%;animation:pulse 1.3s ease-in-out infinite}@keyframes pulse{0%{background-position:0% 0}to{background-position:-220% 0}}@keyframes spin{to{transform:rotate(360deg)}}.guardian-pin-form{width:min(620px,100%)}.guardian-pin-owner{padding:16px;border:1px solid var(--border-color);background:var(--surface-soft);border-radius:6px}.collector-pin-owner{display:flex;align-items:center;gap:12px}.collector-pin-owner>div{display:grid;gap:3px;min-width:0}.collector-pin-owner span{color:var(--text-muted)}.collector-pin-avatar{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;border-radius:6px;color:var(--brand-blue);background:#eaf3ff;font-weight:800}.guardian-pin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.guardian-pin-note,.guardian-pin-loading{margin:0;padding:12px 14px;color:var(--text-muted);background:#f5f9ff;border:1px solid #d8e5f5;border-radius:6px}@media(max-width:640px){.guardian-pin-grid{grid-template-columns:1fr}}@keyframes loaderDot{0%,to{transform:translateY(0);opacity:.55}45%{transform:translateY(-5px);opacity:1}}@media(prefers-reduced-motion:reduce){.page-loader-ring,.page-loader-progress span,.loader-ring,.skeleton{animation-duration:1ms;animation-iteration-count:1}}@media(max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;inset:0 auto 0 0;z-index:10;width:min(286px,86vw);height:100vh;transform:translate(-100%);transition:transform .18s ease}.app-shell.navigation-open>.sidebar{transform:translate(0)!important;box-shadow:18px 0 42px #1225413d}.app-shell.navigation-open:before{content:"";position:fixed;inset:0;z-index:9;background:#12254161}.mobile-menu-button{display:inline-flex}.topbar,.page-heading,.promotion-history-header,.promotion-history-grid,.split-grid,.attendance-history-grid,.attendance-history-metrics,.roll-call-toolbar,.platform-create-shell,.setup-grid,.setup-grid.single-column,.setup-grid.three-column,.promotion-plan-controls,.promotion-controls,.promotion-detail-controls,.report-toolbar,.subject-comment-row{display:grid;grid-template-columns:1fr}.promotion-outcome-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.promotion-rehearsal-banner,.promotion-preflight-exceptions-heading{align-items:start}.subject-comment-row .small-button{justify-self:start}.topbar{align-items:start;padding:16px}.guardian-topbar,.guardian-hero,.guardian-section-heading{align-items:stretch;flex-direction:column}.guardian-account{justify-content:flex-start}.guardian-account>div{text-align:left}.guardian-result-layout,.guardian-exam-layout,.guardian-fees-layout,.guardian-payment-grid{grid-template-columns:1fr}.guardian-invoice-header{display:grid}.guardian-invoice-header strong{text-align:left}.guardian-pickup-grid{grid-template-columns:1fr}.topbar-title{width:100%;align-items:flex-start}.content{padding:18px 16px}.topbar-actions,.attendance-action-bar,.heading-actions,.section-actions,.attendance-history-tools,.publication-actions,.people-search{width:100%;align-items:stretch}.user-menu{width:100%}.user-menu-trigger{width:100%;justify-content:flex-start}.user-menu-panel{left:0;right:auto;width:100%}.user-menu-trigger-text strong,.user-menu-trigger-text small{max-width:none}.profile-hero,.profile-grid,.profile-value-grid,.profile-access-row{grid-template-columns:1fr}.profile-hero{align-items:start}.profile-status-group{justify-content:flex-start}.attendance-history-tools,.attendance-action-bar,.promotion-student-toolbar,.compact-search{justify-content:stretch;min-width:0}.promotion-arrow{margin:-2px 0;transform:rotate(90deg)}.promotion-history-table{border-left:0;border-top:1px solid #edf2f7}.attendance-class-filter{width:100%;min-width:0}.roll-call-bulk-actions,.roll-call-save-controls,.roll-call-save-controls .field,.roll-call-save-button{width:100%}.roll-call-save-button{justify-content:center}.attendance-student-list{max-height:320px}.result-publication-panel,.report-card-brand-band{align-items:stretch}.report-card-brand-band{grid-template-columns:1fr}.report-card-status{justify-items:start;text-align:left}.report-student-card{grid-template-columns:64px minmax(0,1fr)}.report-student-details{grid-template-columns:repeat(2,minmax(0,1fr))}.report-card-footer,.report-card-support-grid,.remark-display-grid,.standard-report-header,.standard-report-student,.landscape-report-header,.landscape-student-line,.landscape-top-grid,.landscape-domain-grid,.landscape-signature-row,.standard-lower-grid,.standard-remarks-grid,.standard-signature-grid{grid-template-columns:1fr}.standard-report-card{padding:14px}.standard-report-meta{justify-items:start;text-align:left}.standard-student-grid,.standard-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.standard-summary:nth-child(2n),.standard-field:nth-child(2n){border-right:0}.standard-summary:nth-last-child(-n+2),.standard-field:nth-last-child(-n+2){border-bottom:0}.attendance-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.report-student-card .secondary-action{grid-column:1 / -1}.result-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-heading{align-items:stretch;display:grid;grid-template-columns:1fr}.platform-form-section-title{display:grid}.platform-form-section-title span{text-align:left}.school-picker,.date-control,.people-search label{width:100%}.academic-filter-grid,.timetable-filter-grid,.teacher-insight-grid,.gateway-result{grid-template-columns:1fr}.teacher-insight-heading{display:grid}.teacher-insight-heading span{text-align:left}.modal-backdrop{padding:14px}.attendance-tab-list{padding:12px 12px 0}.attendance-tab-panel{padding:14px}}@media(max-width:560px){.promotion-outcome-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.promotion-rehearsal-banner{grid-template-columns:24px minmax(0,1fr)}.promotion-rehearsal-banner>.status-pill{grid-column:2;justify-self:start}.promotion-preflight-exceptions-heading{flex-direction:column}.login-panel{padding:24px 20px}.login-brand{align-items:flex-start}.login-brand img{width:58px;height:58px}.login-intro{grid-template-columns:repeat(2,minmax(0,1fr))}.login-mode-switch{grid-template-columns:1fr}.guardian-page{padding:16px 12px 28px}.guardian-child-strip{grid-template-columns:1fr}.guardian-child-card{grid-template-columns:42px minmax(0,1fr)}.guardian-child-card>svg{display:none}.guardian-avatar{width:42px;height:42px}.form-grid,.time-input-grid,.inline-control{grid-template-columns:1fr}.platform-form-section{padding:14px}.metric-card,.result-summary-grid{grid-template-columns:1fr}.primary-button,.primary-action,.secondary-action,.icon-text-button,.small-button,.tab-button{width:100%}.foundation-tabs,.attendance-tab-list{display:grid}.report-date-grid,.report-toolbar-actions{display:grid;grid-template-columns:1fr}.photo-upload-field{grid-column:auto}}@media print{@page{size:A4;margin:10mm}@page standard-report-landscape{size:A4 landscape;margin:8mm}@page detailed-landscape-report{size:A4 landscape;margin:8mm}*{print-color-adjust:exact;-webkit-print-color-adjust:exact}body{background:#fff}.sidebar,.topbar,.guardian-topbar,.guardian-hero,.guardian-metrics,.guardian-child-strip,.guardian-tab-list,.guardian-result-list,.guardian-report-preview .result-summary-grid,.page-heading,.notice,.no-print,.teacher-insights{display:none!important}.app-shell,.main-column{display:block}.content{padding:0}body.modal-open .content>:not(.modal-backdrop){display:none!important}.setup-grid,.setup-grid.single-column{display:block}.setup-panel{border:0;box-shadow:none;background:#fff}.modal-backdrop{position:static;display:block;padding:0;background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none}.modal-panel,.modal-panel.wide,.modal-panel.report{width:100%;display:block;max-height:none;border:0;box-shadow:none;background:#fff;overflow:visible}.report-center{display:block}.report-print-surface{border:0;border-radius:0;box-shadow:none}.report-print-heading{padding:0 0 10px;background:#fff;border-bottom:2px solid #1d5b36}.report-context-row span{border-color:#d9e5ef}.report-table th,.report-table td{padding:8px 10px;font-size:.78rem}.modal-heading{display:none}.modal-body{padding:0;overflow:visible}.fees-invoice-modal{display:block}.fees-invoice-header,.fees-detail-grid,.fees-payment-form,.fees-modal-actions{display:none!important}.fees-print-document,.fees-print-document.active-print-document{width:100%;max-width:190mm;margin:0 auto;color:#12263a}.fees-print-document{display:none!important}.fees-print-document.active-print-document{display:block!important}.fees-document-header{grid-template-columns:56px minmax(0,1fr) minmax(140px,auto);gap:10px;padding-bottom:10px}.fees-document-header img,.fees-document-logo-placeholder{width:50px;height:50px}.fees-document-header h2{font-size:1.08rem}.fees-document-header p,.fees-document-title small,.fees-document-meta small,.fees-document-footer{font-size:.68rem}.fees-document-title strong{font-size:.84rem}.fees-document-meta{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:12px 0}.fees-document-meta div,.fees-document-totals div{padding:7px 8px}.fees-document-meta span,.fees-document-totals span,.fees-document-table th{font-size:.62rem}.fees-document-meta strong,.fees-document-totals strong{font-size:.78rem}.fees-document-table{font-size:.74rem}.fees-document-table th,.fees-document-table td{padding:6px 7px}.fees-document-totals{gap:6px;max-width:430px;margin-top:12px}.fees-document-note{margin-top:12px;padding:7px 9px;font-size:.72rem}.fees-document-footer{margin-top:26px}.report-card-brand-band,.report-student-card,.result-summary-tile,.report-card-attendance,.report-card-remarks,.report-card-footer>div{break-inside:avoid}.report-card-preview{display:grid;gap:8px;width:100%;max-width:190mm;margin:0 auto}.report-card-brand-band{grid-template-columns:54px minmax(0,1fr) auto;gap:10px;border-top-width:3px;padding:9px 10px}.report-school-mark{width:46px;height:46px}.report-school-mark img{width:38px;height:38px}.report-card-brand-band h2{margin:2px 0;font-size:1.05rem}.report-card-brand-band p,.report-student-main p{font-size:.72rem}.report-card-brand-band span,.report-student-main span{font-size:.62rem}.report-card-status{gap:4px}.report-card-status small{font-size:.68rem}.report-student-card{grid-template-columns:50px minmax(0,1fr);gap:10px;padding:9px 10px}.report-student-photo,.report-student-photo img,.report-student-photo span{width:44px;height:44px}.report-student-main h3{margin:1px 0;font-size:.95rem}.report-student-details{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.report-info-item{border-radius:5px;padding:5px 7px}.report-info-item span{font-size:.56rem}.report-info-item strong{font-size:.72rem;overflow-wrap:normal}.result-summary-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.result-summary-tile{border-radius:5px;padding:6px 7px}.result-summary-tile span{font-size:.56rem}.result-summary-tile strong{font-size:.78rem}.report-card-support-grid{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:6px}.report-card-attendance,.report-card-remarks{border-radius:5px;padding:7px 8px}.report-section-heading{gap:8px;margin-bottom:6px}.report-section-heading span,.attendance-stat span,.report-remark span{font-size:.54rem}.report-section-heading strong{font-size:.72rem}.attendance-stat-grid{gap:5px}.attendance-stat{border-radius:5px;padding:5px 6px}.attendance-stat strong{margin-top:3px;font-size:.72rem}.remark-display-grid{gap:6px}.report-remark{min-height:46px;border-radius:5px;padding:6px 7px}.report-remark strong{margin-top:4px;font-size:.68rem;line-height:1.35}.report-card-table-wrap{margin:0}.report-card-table{min-width:0;width:100%;border-collapse:collapse;font-size:.64rem}.report-card-table th,.report-card-table td{border:1px solid #d9e3ef;padding:5px 6px}.report-card-table th{color:#26384a;background:#f3f7fb;font-size:.56rem}.report-card-table td:first-child span{font-size:.58rem}.grade-pill,.result-score-chip,.status-pill{min-height:20px;padding:0 7px;font-size:.62rem}.report-card-footer{grid-template-columns:1.4fr .8fr;gap:8px}.report-card-footer>div{min-height:38px;border-radius:5px;padding:7px 8px}.report-card-footer span{font-size:.56rem}.report-card-footer strong{margin-top:6px;font-size:.72rem}.standard-report-card{width:100%;max-width:190mm;margin:0 auto;border:1px solid #cfddeb;border-top:5px solid var(--report-accent);border-radius:8px;box-shadow:none;padding:18px;page-break-inside:auto;break-inside:auto}.standard-report-landscape{max-width:277mm;page:standard-report-landscape}.landscape-report-booklet{width:100%;max-width:277mm;margin:0 auto;page:detailed-landscape-report}.landscape-report-sheet{width:277mm;margin:0;border:0;box-shadow:none;padding:10mm 12mm 9mm;page:detailed-landscape-report}.landscape-report-header{grid-template-columns:68px minmax(0,1fr) 66px;gap:10px}.landscape-report-logo,.landscape-report-logo img{width:56px;height:56px}.landscape-report-school h2{font-size:.86rem}.landscape-report-school p{font-size:.52rem}.landscape-student-photo,.landscape-student-photo img,.landscape-student-photo span{width:58px;height:72px}.landscape-report-sheet{gap:8px}.landscape-student-line,.landscape-box-table td,.landscape-score-table th,.landscape-score-table td,.skill-rating-table th,.skill-rating-table{font-size:.52rem}.landscape-score-table th,.skill-rating-table th{font-size:.48rem}.landscape-score-table th:first-child,.landscape-score-table td:first-child{min-width:38mm}.landscape-score-table td:last-child{min-width:44mm}.landscape-domain-grid{gap:22mm;margin-top:18mm}.landscape-comment-line{font-size:.56rem}.standard-report-header{grid-template-columns:76px minmax(0,1fr) minmax(160px,auto);gap:16px;padding-bottom:12px}.standard-report-logo{width:72px;height:72px}.standard-report-logo img{width:60px;height:60px}.standard-report-school h2{font-size:1.55rem}.standard-report-school p{font-size:.9rem}.standard-report-school span,.standard-section-title span,.standard-field span,.standard-summary span,.standard-mini-table span,.standard-remarks-grid span,.standard-signature-grid span{font-size:.68rem}.standard-report-meta strong{font-size:.94rem}.standard-report-meta small{font-size:.78rem}.standard-report-student{grid-template-columns:86px minmax(0,1fr);gap:12px;margin-top:14px}.standard-report-photo,.standard-report-photo img,.standard-report-photo span{width:78px;height:78px}.standard-field,.standard-summary,.standard-mini-table div,.standard-grade-key div{padding:8px 10px}.standard-field strong,.standard-summary strong,.standard-mini-table strong{font-size:.9rem}.standard-summary.important strong{font-size:1rem}.standard-summary-grid,.standard-section,.standard-lower-grid,.standard-remarks-grid{margin-top:12px}.standard-section-title{padding:8px 10px}.standard-section-title strong{font-size:.82rem}.standard-table-wrap{overflow:visible}.standard-result-table{min-width:0;font-size:.78rem}.standard-result-table th,.standard-result-table td{padding:7px 8px}.standard-result-table th,.standard-result-table th small,.standard-result-table td small{font-size:.66rem}.standard-lower-grid{gap:12px}.standard-grade-key{grid-template-columns:repeat(auto-fit,minmax(78px,1fr))}.standard-grade-key strong{font-size:.78rem}.standard-grade-key span{font-size:.68rem}.standard-remarks-grid{gap:12px}.standard-remarks-grid>div{min-height:78px;border-radius:8px;padding:10px 12px}.standard-remarks-grid strong{margin-top:6px;font-size:.82rem;line-height:1.4}.standard-signature-grid{gap:12px;margin-top:18px}.timetable-filter-grid{display:none}.print-header{display:block;margin-bottom:16px;padding:0}.print-header span{color:#334155;font-size:.82rem;font-weight:700;text-transform:uppercase}.print-header h2{margin:2px 0;color:#0f172a;font-size:1.5rem}.print-header p{margin:0;color:#475569}.timetable-print-area{padding:20px}.timetable-grid-wrap,.table-wrap{margin:0;border:0;overflow:visible}table,.timetable-grid-table,.foundation-table table{min-width:0;font-size:.72rem}th,td{padding:8px}.timetable-grid-entry,.timetable-grid-empty{min-height:58px;box-shadow:none}}.communication-tabs{padding:14px 16px 0;display:flex;flex-wrap:wrap;gap:8px}.communication-workspace>.table-empty,.communication-workspace>.skeleton,.communication-workspace>.table-wrap,.communication-workspace>.communication-inbox-list,.communication-workspace>.communication-filter-heading{margin:16px}.communication-table td strong{display:block;color:var(--ink);font-size:.92rem}.communication-table td span{display:block;color:var(--muted);font-size:.78rem;line-height:1.45;margin-top:3px}.communication-filter-heading,.communication-token-help{border:1px solid var(--line);border-radius:8px;padding:12px 14px;background:#f8fbff}.communication-token-help>span{display:block;margin-bottom:8px;color:var(--muted);font-size:.78rem;font-weight:700}.communication-token-list{display:flex;flex-wrap:wrap;gap:8px}.communication-token-list code{border:1px solid rgba(30,90,168,.2);border-radius:999px;padding:5px 9px;background:#fff;color:var(--brand-blue);font-family:inherit;font-size:.78rem;font-weight:700}.communication-page>.metric-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.communication-governance-panel{display:grid;gap:22px;padding:18px}.communication-panel-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.communication-panel-toolbar h3{margin:3px 0 0;color:var(--ink);font-size:1rem}.communication-date-filter{display:flex;align-items:flex-end;gap:9px}.compact-field{min-width:150px}.communication-analytics-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.communication-analytics-metric{display:grid;grid-template-columns:36px minmax(0,1fr);align-items:start;gap:10px;min-width:0;padding:13px;border:1px solid #d6e1eb;border-radius:7px;background:#f9fbfd}.communication-analytics-metric>span{display:grid;width:36px;height:36px;place-items:center;border-radius:6px;background:#eaf3fc;color:#1557a6}.communication-analytics-metric.success{border-color:#c8e5d8;background:#f3faf7}.communication-analytics-metric.success>span{background:#dff4e9;color:#187454}.communication-analytics-metric.danger{border-color:#eccfd1;background:#fff7f7}.communication-analytics-metric.danger>span{background:#fbe5e7;color:#a8323b}.communication-analytics-metric.accent{border-color:#eedda8;background:#fffaf0}.communication-analytics-metric.accent>span{background:#fff0bd;color:#8e650f}.communication-analytics-metric small{display:block;color:#65798d;font-size:.72rem;font-weight:700}.communication-analytics-metric strong{display:block;margin-top:4px;color:var(--ink);font-size:1.12rem;overflow-wrap:anywhere}.communication-analytics-metric p{margin:4px 0 0;color:#708295;font-size:.7rem;line-height:1.35}.communication-analytics-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.communication-analytics-table{min-width:0;border-top:2px solid #dbe6ef;padding-top:14px}.communication-analytics-table .section-heading{margin-bottom:10px}.communication-analytics-table td>span{display:block;margin-top:3px;color:var(--muted);font-size:.72rem}.communication-settings-layout>form+form{border-top:2px solid #dbe6ef;padding-top:20px}.communication-policy-form,.communication-preferences-form{display:grid;gap:16px}.communication-policy-channels{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.communication-policy-channel{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;padding:12px;border:1px solid #d6e1eb;border-radius:7px;background:#f9fbfd}.communication-policy-channel strong,.communication-preference-row strong{display:block;color:var(--ink);font-size:.84rem}.communication-policy-channel small,.communication-preference-row small{display:block;margin-top:3px;color:#6d8093;font-size:.7rem;line-height:1.35}.communication-policy-channel input,.communication-switch input,.communication-consent-policy input{width:17px;height:17px;accent-color:var(--brand-blue)}.communication-channel-icon{display:grid;width:38px;height:38px;place-items:center;border-radius:6px;background:#eaf3fc;color:#1557a6}.communication-channel-icon.whatsapp{background:#e5f6ed;color:#167354}.communication-channel-icon.email{background:#fff3d3;color:#916815}.communication-channel-icon.push{background:#f4ebfb;color:#7542a6}.communication-settings-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.communication-consent-policy{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 14px;border:1px solid #c8dced;border-left:4px solid #2b72bd;background:#f5f9fd}.communication-consent-policy strong{display:block;color:var(--ink)}.communication-consent-policy small{display:block;margin-top:3px;color:#63778b}.communication-policy-note{margin:-4px 0 0;color:#64778a;font-size:.82rem}.communication-preference-list{display:grid;gap:8px}.communication-preference-row{display:grid;grid-template-columns:38px minmax(180px,1fr) minmax(120px,auto) minmax(170px,auto);align-items:center;gap:12px;padding:10px 12px;border-bottom:1px solid #e1e8ef}.communication-switch{display:inline-flex;align-items:center;gap:7px;color:#52677b;font-size:.8rem;font-weight:700}.recipient-communication-preferences{display:grid;gap:14px}.recipient-communication-preferences>p{margin:-4px 0 0;color:#64778a;font-size:.82rem}.recipient-preference-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.recipient-preference-item{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;padding:12px;border:1px solid #d7e2ec;border-radius:7px;background:#f9fbfd}.recipient-preference-item strong{display:block;color:var(--ink);font-size:.84rem}.recipient-preference-item small{display:block;margin-top:3px;color:#6c7f92;font-size:.7rem;line-height:1.35}.recipient-consent-field{grid-column:2 / -1;width:min(230px,100%)}@media(max-width:1180px){.communication-page>.metric-grid,.communication-analytics-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.communication-policy-channels{grid-template-columns:repeat(2,minmax(0,1fr))}.communication-analytics-columns{grid-template-columns:1fr}}@media(max-width:760px){.communications-hub-tabs{overflow-x:auto}.communications-hub-tabs>button{min-width:205px}.communication-panel-toolbar,.communication-date-filter{align-items:stretch;flex-direction:column}.communication-page>.metric-grid,.communication-analytics-metrics,.communication-policy-channels,.communication-settings-fields{grid-template-columns:1fr}.communication-preference-row{grid-template-columns:38px minmax(0,1fr)}.communication-preference-row>.communication-switch,.communication-preference-row>.field,.communication-preference-row>.status-pill{grid-column:2;justify-self:start}.recipient-preference-grid{grid-template-columns:1fr}}.communication-channel-grid>span{display:block;margin-bottom:8px;color:var(--muted);font-size:.8rem;font-weight:650}.communication-channel-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.checkbox-card{min-height:44px;border:1px solid var(--line);border-radius:8px;padding:10px 12px;display:flex;align-items:center;gap:9px;background:#fff;color:var(--ink);font-weight:650}.checkbox-card input,.checkbox-field input{width:16px;height:16px;accent-color:var(--brand-blue)}.checkbox-field{min-height:42px;border:1px solid var(--line);border-radius:8px;padding:10px 12px;display:flex;align-items:center;gap:9px;color:var(--ink);background:#fff}.full-span{grid-column:1 / -1}.communication-inbox-list{display:grid;gap:10px}.communication-inbox-card{border:1px solid var(--line);border-radius:8px;padding:14px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;background:#fff}.communication-inbox-card.unread{border-color:#1e5aa873;background:#f7fbff}.communication-inbox-card span{color:var(--muted);font-size:.76rem;font-weight:650}.communication-inbox-card h3{margin:4px 0 6px;font-size:.98rem}.communication-inbox-card p{margin:0;color:var(--text-soft);line-height:1.55}.notification-popup{position:fixed;right:22px;bottom:22px;z-index:80;width:min(390px,calc(100vw - 32px));border:1px solid rgba(30,90,168,.28);border-radius:12px;background:#fffffffa;box-shadow:0 18px 46px #09182d2e;padding:14px;display:grid;grid-template-columns:auto 1fr;gap:12px}.notification-popup-icon{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;color:var(--brand-blue);background:#eef6ff}.notification-popup span{color:var(--brand-blue);font-size:.72rem;font-weight:750;text-transform:uppercase;letter-spacing:.04em}.notification-popup h3{margin:3px 0 5px;font-size:.98rem}.notification-popup p{margin:0;max-height:92px;overflow:hidden;color:var(--text-soft);font-size:.86rem;line-height:1.5}.notification-popup-actions{margin-top:12px;display:flex;justify-content:flex-end;gap:8px}.primary-action.compact{min-height:34px;padding:0 12px;font-size:.82rem}@media(max-width:720px){.communication-inbox-card{display:grid}.notification-popup{right:16px;bottom:16px}}.guardian-shell{min-height:100vh;display:grid;grid-template-columns:278px minmax(0,1fr);background:linear-gradient(90deg,rgba(27,85,166,.05),transparent 40%),linear-gradient(180deg,#fff 0,#f6f8fb)}.guardian-sidebar{position:sticky;top:0;height:100vh;padding:18px 16px;display:flex;flex-direction:column;gap:16px;background:#16235f;color:#fff;box-shadow:8px 0 24px #0f1f4a21;overflow-y:auto}.guardian-sidebar-brand{display:flex;align-items:center;gap:10px;padding-bottom:8px}.guardian-sidebar-brand img{width:42px;height:42px;border-radius:8px;background:#fff;object-fit:contain}.guardian-sidebar-brand span,.guardian-sidebar-account span,.guardian-sidebar-children>span{display:block;color:#b9c7ff;font-size:.7rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.guardian-sidebar-brand strong,.guardian-sidebar-account strong{display:block;color:#fff;font-size:.96rem}.guardian-sidebar-account,.guardian-sidebar-children{border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:12px;background:#ffffff0f}.guardian-sidebar-account small{display:block;margin-top:4px;color:#dce5ff;line-height:1.45}.guardian-menu-list{display:grid;gap:6px}.guardian-menu-item,.guardian-menu-child,.guardian-sidebar-logout{width:100%;border:0;border-radius:8px;display:flex;align-items:center;gap:10px;text-align:left;cursor:pointer}.guardian-menu-item{min-height:42px;padding:0 10px;background:transparent;color:#e8eeff;font-weight:650}.guardian-menu-item:hover,.guardian-menu-item.active{color:#fff;background:linear-gradient(90deg,#84cc166b,#2599de85)}.guardian-menu-item span{flex:1}.guardian-menu-item strong{min-width:22px;height:22px;border-radius:999px;display:inline-grid;place-items:center;background:#f6bc12;color:#102033;font-size:.74rem}.guardian-sidebar-children{display:grid;gap:8px}.guardian-sidebar-children p{margin:0;color:#dce5ff;font-size:.86rem}.guardian-menu-child{min-height:58px;padding:8px;background:#ffffff0f;color:#fff}.guardian-menu-child.active,.guardian-menu-child:hover{outline:1px solid rgba(246,188,18,.6);background:#ffffff1f}.guardian-menu-child .guardian-avatar{width:38px;height:38px}.guardian-menu-child span{min-width:0}.guardian-menu-child strong,.guardian-menu-child small{display:block}.guardian-menu-child strong{color:#fff;font-size:.86rem}.guardian-menu-child small{margin-top:2px;color:#dce5ff;font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.guardian-sidebar-logout{min-height:42px;margin-top:auto;padding:0 10px;justify-content:center;background:#ffffff1a;color:#fff;font-weight:700}.guardian-main{min-width:0;padding:22px 16px 42px}.guardian-shell .guardian-topbar,.guardian-shell .guardian-hero,.guardian-shell .guardian-panel,.guardian-shell .guardian-child-strip{width:100%;max-width:none}.guardian-shell .guardian-topbar{margin-inline:0;background:#ffffffeb}.guardian-topbar-title{display:flex;align-items:center;gap:12px;min-width:0}.guardian-topbar-title img{width:44px;height:44px;border:1px solid var(--line);border-radius:8px;object-fit:cover;background:#fff}.guardian-topbar-title h2{margin:0;color:var(--brand-ink);font-size:1.22rem;font-weight:650}.guardian-topbar-actions{display:flex;align-items:center;gap:10px}.guardian-shell .guardian-hero{margin-top:18px}.guardian-shell .guardian-workspace{width:100%;max-width:none;margin-top:14px}.guardian-workspace>.messaging-page.compact{padding:18px}.guardian-workspace-heading{border-bottom:1px solid #edf2f7;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:14px;background:#f8fbff}.guardian-workspace-heading span:first-child{display:block;color:var(--brand-blue);font-size:.74rem;font-weight:750;letter-spacing:.05em;text-transform:uppercase}.guardian-workspace-heading h2{margin:2px 0 0;color:var(--brand-ink);font-size:1.15rem;font-weight:650}.guardian-workspace-heading p{margin:3px 0 0;color:var(--muted);font-size:.86rem}.guardian-profile-content{display:grid;gap:18px;padding:18px}.guardian-profile-summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;border:1px solid #d9e5f0;border-left:4px solid var(--school-accent, var(--brand-gold));border-radius:8px;background:#f8fbff;padding:18px}.guardian-profile-summary .guardian-avatar{width:68px;height:68px}.guardian-profile-summary span,.guardian-profile-section-heading span{color:var(--brand-blue);font-size:.72rem;font-weight:750;letter-spacing:.05em;text-transform:uppercase}.guardian-profile-summary h3{margin:3px 0;color:var(--brand-ink);font-size:1.25rem;font-weight:680}.guardian-profile-summary p{margin:0;color:var(--muted)}.guardian-profile-summary>svg{color:var(--brand-green)}.guardian-profile-section{display:grid;gap:14px;border-top:1px solid #e2eaf2;padding-top:18px}.guardian-profile-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.guardian-profile-section-heading strong{display:block;margin-top:3px;color:var(--brand-ink);font-size:1rem}.guardian-profile-values .profile-value.wide{grid-column:1 / -1}.guardian-profile-children{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.guardian-profile-child{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;border:1px solid #dfe8f2;border-radius:8px;background:#fff;padding:13px}.guardian-profile-child>div{display:grid;gap:2px;min-width:0}.guardian-profile-child strong{overflow-wrap:anywhere;color:var(--brand-ink);font-size:.92rem}.guardian-profile-child span,.guardian-profile-child small,.guardian-profile-empty{color:var(--muted);font-size:.8rem}@media(max-width:980px){.guardian-shell{grid-template-columns:1fr}.guardian-sidebar{position:fixed;inset:0 auto 0 0;z-index:90;width:min(300px,calc(100vw - 48px));transform:translate(-105%);transition:transform .18s ease}.guardian-navigation-open .guardian-sidebar{transform:translate(0)}.guardian-navigation-open:after{content:"";position:fixed;inset:0;z-index:70;background:#0712266b}.guardian-main{padding:16px 14px 30px}.guardian-workspace>.messaging-page.compact{padding:14px}}@media(min-width:981px){.guardian-shell .mobile-menu-button{display:none}}@media(max-width:720px){.guardian-topbar-actions .secondary-action{width:auto}.guardian-workspace-heading{align-items:flex-start;flex-direction:column}.guardian-profile-children,.guardian-profile-values{grid-template-columns:1fr}.guardian-profile-child{grid-template-columns:auto minmax(0,1fr)}.guardian-profile-child>.status-pill{grid-column:2;justify-self:start}}@media print{.guardian-sidebar,.guardian-workspace-heading{display:none!important}.guardian-shell{display:block!important;background:#fff!important}.guardian-main{padding:0!important}.guardian-shell .guardian-workspace{border:0!important;box-shadow:none!important;margin:0!important}}.guardian-dashboard-screen{display:grid;gap:16px}.student-dashboard-metric-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.guardian-metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.student-dashboard-metric{position:relative;min-width:0;min-height:116px;border:1px solid var(--line);border-radius:8px;padding:14px;display:grid;grid-template-columns:38px minmax(0,1fr);align-items:start;gap:11px;color:var(--brand-ink);background:#fff;text-align:left;box-shadow:0 10px 24px #151d3f0d;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}button.student-dashboard-metric{cursor:pointer}button.student-dashboard-metric:hover,button.student-dashboard-metric:focus-visible{border-color:color-mix(in srgb,var(--metric-tone) 42%,var(--line));box-shadow:0 14px 30px #151d3f17;transform:translateY(-1px)}.student-dashboard-metric-icon{width:38px;height:38px;border-radius:8px;display:grid;place-items:center;color:var(--metric-tone);background:var(--metric-soft)}.student-dashboard-metric>div{min-width:0;display:grid;gap:3px}.student-dashboard-metric span:not(.student-dashboard-metric-icon){color:var(--muted);font-size:.76rem;font-weight:650}.student-dashboard-metric strong{color:var(--brand-ink);font-size:1.42rem;line-height:1.05}.student-dashboard-metric small{min-height:32px;color:var(--muted);font-size:.72rem;line-height:1.4}.student-dashboard-metric-arrow{position:absolute;right:11px;bottom:10px;color:var(--metric-tone);opacity:.72}.student-dashboard-metric.tone-blue,.student-dashboard-action-card.tone-blue{--metric-tone: #1f63b5;--metric-soft: #edf5ff}.student-dashboard-metric.tone-green,.student-dashboard-action-card.tone-green{--metric-tone: #16835f;--metric-soft: #eaf8f2}.student-dashboard-metric.tone-gold,.student-dashboard-action-card.tone-gold{--metric-tone: #a66a00;--metric-soft: #fff6df}.student-dashboard-metric.tone-cyan{--metric-tone: #087e91;--metric-soft: #e9f8fb}.student-dashboard-metric.tone-rose{--metric-tone: #b53a67;--metric-soft: #fff0f5}.student-dashboard-section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;padding-top:4px}.student-dashboard-section-heading span{color:var(--brand-blue);font-size:.72rem;font-weight:750;text-transform:uppercase}.student-dashboard-section-heading h3{margin:3px 0 0;color:var(--brand-ink);font-size:1rem}.student-dashboard-section-heading p{margin:0;color:var(--muted);font-size:.8rem}.student-dashboard-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.student-dashboard-action-card{position:relative;min-width:0;min-height:190px;border:1px solid var(--line);border-top:3px solid var(--metric-tone);border-radius:8px;padding:17px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;grid-template-rows:auto 1fr auto;align-items:start;gap:14px 12px;color:var(--brand-ink);background:#fff;text-align:left;cursor:pointer;box-shadow:0 12px 28px #151d3f0f;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.student-dashboard-action-card:hover,.student-dashboard-action-card:focus-visible{box-shadow:0 17px 34px #151d3f1a;transform:translateY(-2px)}.student-dashboard-action-icon{width:42px;height:42px;border-radius:8px;display:grid;place-items:center;color:var(--metric-tone);background:var(--metric-soft)}.student-dashboard-action-count{min-width:34px;color:var(--metric-tone);font-size:1.5rem;font-weight:750;line-height:42px;text-align:right}.student-dashboard-action-copy{grid-column:1 / -1;display:grid;align-content:start;gap:6px}.student-dashboard-action-copy strong{font-size:1rem}.student-dashboard-action-copy small{color:var(--muted);font-size:.8rem;line-height:1.5}.student-dashboard-action-link{grid-column:1 / -1;align-self:end;display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:11px;border-top:1px solid var(--line);color:var(--metric-tone);font-size:.8rem;font-weight:700}@media(max-width:1180px){.student-dashboard-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:820px){.student-dashboard-action-grid{grid-template-columns:1fr}.student-dashboard-action-card{min-height:170px}}@media(max-width:620px){.student-dashboard-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.student-dashboard-section-heading{align-items:flex-start;flex-direction:column;gap:5px}}@media(max-width:390px){.student-dashboard-metric-grid{grid-template-columns:1fr}}.guardian-dashboard-heading{border:1px solid var(--line);border-radius:8px;padding:16px 18px;background:#fff;box-shadow:0 12px 28px #151d3f0f}.guardian-dashboard-heading span{display:block;color:var(--brand-blue);font-size:.74rem;font-weight:750;letter-spacing:.05em;text-transform:uppercase}.guardian-dashboard-heading h2{margin:3px 0 0;color:var(--brand-ink);font-size:1.22rem;font-weight:650}.guardian-dashboard-heading p{margin:4px 0 0;color:var(--muted)}.guardian-dashboard-screen .guardian-metrics{width:100%;margin:0}.guardian-quick-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.guardian-quick-action{min-height:118px;border:1px solid var(--line);border-radius:8px;padding:16px;display:grid;justify-items:start;align-content:start;gap:8px;background:#fff;color:var(--brand-ink);text-align:left;cursor:pointer;box-shadow:0 12px 28px #151d3f0f}.guardian-quick-action:hover{border-color:#1e5aa859;transform:translateY(-1px)}.guardian-quick-action>span{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;color:var(--brand-blue);background:#eef6ff}.guardian-quick-action strong{font-size:.98rem}.guardian-quick-action small{color:var(--muted);line-height:1.45}.teacher-dashboard{display:grid;gap:16px}.teacher-dashboard-heading{align-items:flex-start;border:1px solid rgba(209,221,235,.92);border-radius:8px;padding:18px;background:linear-gradient(120deg,#fff,#f8fbff 55%,#fffaf0)}.teacher-dashboard-heading h1{margin:4px 0 0;font-size:1.55rem;font-weight:650}.teacher-dashboard-heading p{margin:5px 0 0;color:var(--muted);font-size:.91rem}.teacher-dashboard-tools{display:flex;align-items:flex-end;justify-content:flex-end;gap:10px;flex-wrap:wrap}.teacher-dashboard-tools label{display:grid;gap:6px;color:var(--muted);font-size:.75rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.teacher-dashboard-tools input{min-width:150px;border:1px solid var(--line);border-radius:8px;padding:10px 12px;color:var(--brand-ink);background:#fff;font:inherit}.teacher-dashboard-metrics{margin:0}.teacher-metric-card{min-height:112px;background:#fff}.teacher-metric-card:nth-child(1){background:linear-gradient(135deg,#fff,#f4fbf6)}.teacher-metric-card:nth-child(2){background:linear-gradient(135deg,#fff,#f5fbff)}.teacher-metric-card:nth-child(3){background:linear-gradient(135deg,#fff,#fffaf0)}.teacher-metric-card:nth-child(4){background:linear-gradient(135deg,#fff,#f8f7ff)}.teacher-metric-card strong{font-size:1.45rem;font-weight:650}.teacher-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:14px;align-items:stretch}.teacher-dashboard-panel{border:1px solid var(--line);border-radius:8px;padding:16px;background:#fff;box-shadow:0 12px 28px #151d3f0d}.teacher-class-panel,.teacher-actions-panel{min-height:260px}.teacher-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.teacher-panel-heading span{display:block;color:var(--school-primary, var(--brand-blue));font-size:.73rem;font-weight:750;letter-spacing:.05em;text-transform:uppercase}.teacher-panel-heading strong{display:block;margin-top:3px;color:var(--brand-ink);font-size:1rem;font-weight:650}.teacher-panel-heading select{max-width:220px;border:1px solid var(--line);border-radius:8px;padding:9px 10px;color:var(--brand-ink);background:#fff;font:inherit}.teacher-class-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.teacher-mini-stat{border:1px solid #e6eef7;border-radius:8px;padding:12px;background:#f9fbfd}.teacher-mini-stat span{display:block;color:var(--muted);font-size:.76rem;font-weight:650}.teacher-mini-stat strong{display:block;margin-top:5px;color:var(--brand-ink);font-size:1.08rem;font-weight:650}.teacher-student-preview{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;max-height:360px;overflow-y:auto;align-content:start;padding-right:4px;scrollbar-gutter:stable}.teacher-student-preview p,.teacher-empty-text{margin:0;color:var(--muted);font-size:.9rem}.teacher-student-chip{display:flex;align-items:center;gap:10px;border:1px solid #e6eef7;border-radius:8px;padding:10px;background:#fff}.teacher-student-chip img,.teacher-student-chip>span{width:38px;height:38px;flex:0 0 38px;border-radius:8px;object-fit:cover}.teacher-student-chip>span{display:grid;place-items:center;color:var(--school-primary, var(--brand-blue));background:#eef6ff;font-size:.78rem;font-weight:750}.teacher-student-chip strong{display:block;color:var(--brand-ink);font-size:.91rem;font-weight:650}.teacher-student-chip small{display:block;margin-top:2px;color:var(--muted);font-size:.78rem}.teacher-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.teacher-action-card{min-height:112px;border:1px solid #dbe8f5;border-radius:8px;padding:13px;display:grid;justify-items:start;align-content:start;gap:7px;background:#fff;color:var(--brand-ink);text-align:left;cursor:pointer;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}.teacher-action-card:hover,.teacher-action-card:focus-visible{border-color:#1b55a661;box-shadow:0 10px 20px #151d3f14;transform:translateY(-1px)}.teacher-action-card>span{width:34px;height:34px;border-radius:8px;display:grid;place-items:center;color:var(--school-primary, var(--brand-blue));background:#eef6ff}.teacher-action-card strong{font-size:.92rem;font-weight:650}.teacher-action-card small{color:var(--muted);font-size:.78rem;line-height:1.45}.teacher-list-stack{display:grid;gap:10px}.teacher-list-item{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #e6eef7;border-radius:8px;padding:11px 12px;background:#fbfdff}.teacher-list-item strong{display:block;color:var(--brand-ink);font-size:.92rem;font-weight:650}.teacher-list-item small{display:block;margin-top:2px;color:var(--muted);font-size:.78rem}.teacher-list-item>span{color:var(--school-primary, var(--brand-blue));font-size:.8rem;font-weight:700;white-space:nowrap}.teacher-result-progress{display:grid;gap:12px}.teacher-result-progress span{display:block;color:var(--school-primary, var(--brand-blue));font-size:1.7rem;font-weight:650}.teacher-result-progress strong{display:block;color:var(--brand-ink);font-size:.98rem;font-weight:650}.teacher-result-progress small{display:block;margin-top:3px;color:var(--muted)}.teacher-progress-bar{height:9px;overflow:hidden;border-radius:999px;background:#edf3f9}.teacher-progress-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--school-primary, var(--brand-blue)),var(--brand-gold))}@media(max-width:1160px){.teacher-dashboard-grid{grid-template-columns:1fr}}@media(max-width:720px){.teacher-dashboard-heading,.teacher-panel-heading,.teacher-list-item{align-items:stretch;flex-direction:column}.teacher-dashboard-tools{justify-content:flex-start;width:100%}.teacher-dashboard-tools label,.teacher-dashboard-tools input,.teacher-panel-heading select{width:100%;max-width:none}.teacher-class-summary,.teacher-action-grid{grid-template-columns:1fr 1fr}}@media(max-width:480px){.teacher-class-summary,.teacher-action-grid,.teacher-student-preview{grid-template-columns:1fr}}.student-profile-modal{display:grid;gap:16px}.inline-error,.inline-success{border-radius:8px;padding:10px 12px;font-size:.86rem;font-weight:600}.inline-error{border:1px solid rgba(220,38,38,.22);color:#991b1b;background:#fff1f2}.inline-success{border:1px solid rgba(22,163,74,.22);color:#166534;background:#f0fdf4}.student-profile-summary,.student-profile-section{border:1px solid rgba(207,217,230,.9);border-radius:8px;background:#fff}.student-profile-summary{display:grid;grid-template-columns:minmax(280px,1.2fr) repeat(4,minmax(130px,.35fr));gap:12px;padding:14px;align-items:stretch}.role-checkbox-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:8px}.role-checkbox-grid .checkbox-field{align-items:flex-start}.role-checkbox-grid .checkbox-field span{display:grid;gap:3px}.role-checkbox-grid .checkbox-field small{color:var(--muted);font-weight:400;line-height:1.35}@media(max-width:720px){.role-checkbox-grid{grid-template-columns:1fr}}.student-profile-identity{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:start;min-width:0}.student-profile-identity img,.student-profile-identity .person-avatar{width:40px;height:40px;border-radius:8px}.student-profile-identity img{border:1px solid var(--line);object-fit:cover}.student-profile-identity>div{min-width:0}.student-profile-identity strong{display:block;color:var(--brand-ink);font-size:.94rem;font-weight:800;line-height:1.35;overflow-wrap:anywhere}.student-profile-identity dl{display:flex;flex-wrap:wrap;gap:6px 10px;margin:6px 0 0;min-width:0}.student-profile-identity dl div{display:inline-flex;align-items:baseline;gap:4px;min-width:0;max-width:100%}.student-profile-identity dt,.student-profile-identity dd{margin:0;min-width:0}.student-profile-identity dt{color:var(--brand-blue);font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.student-profile-identity dd{color:var(--muted);font-size:.82rem;line-height:1.35;overflow-wrap:anywhere}.student-profile-summary-metrics{display:grid;gap:6px;align-content:center;padding:12px;border-radius:8px;background:#f8fafc;border:1px solid rgba(226,232,240,.9)}.student-profile-summary-metrics span{display:inline-flex;gap:7px;align-items:center;color:var(--muted);font-size:.78rem;font-weight:650}.student-profile-summary-metrics strong{color:var(--brand-ink);font-size:1rem}.student-profile-section{display:grid;gap:14px;padding:16px}.student-profile-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:12px}.student-profile-section-heading span{display:block;margin-bottom:3px;color:var(--brand-blue);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.student-profile-section-heading h3{margin:0;color:var(--brand-ink);font-size:1rem;font-weight:650}.student-profile-upload,.student-profile-discipline-form{display:grid;gap:12px}.student-profile-upload{grid-template-columns:repeat(4,minmax(0,1fr)) auto;align-items:end}.student-document-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.student-document-card{display:grid;grid-template-columns:54px minmax(0,1fr);gap:12px;padding:12px;border:1px solid rgba(207,217,230,.92);border-radius:8px;background:#fbfdff}.student-document-card.inactive{opacity:.68;background:#f8fafc}.student-document-card .row-actions{grid-column:1 / -1;justify-content:flex-start}.student-document-card span{display:block;color:var(--brand-blue);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.student-document-card strong{display:block;margin-top:2px;color:var(--brand-ink)}.student-document-card small,.student-document-card p{display:block;margin-top:4px;color:var(--muted);font-size:.78rem}.student-document-thumb,.student-document-thumb img{width:54px;height:54px;border-radius:8px}.student-document-thumb{display:grid;place-items:center;color:var(--brand-blue);background:#eef6ff;border:1px solid rgba(191,219,254,.9);overflow:hidden}.student-document-thumb img{object-fit:cover}.student-profile-guardian-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px}.student-profile-guardian-card{border:1px solid rgba(207,217,230,.92);border-radius:8px;padding:12px;display:grid;gap:12px;background:#fbfdff}.student-profile-guardian-card .person-cell{align-items:flex-start}.student-profile-guardian-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.student-profile-guardian-details .student-profile-value{min-height:72px}.student-profile-guardian-details .student-profile-value.wide{grid-column:1 / -1}.student-profile-guardian-badges{display:flex;align-items:center;gap:8px;flex-wrap:wrap}@media(max-width:980px){.student-profile-summary,.student-profile-upload,.student-profile-guardian-details{grid-template-columns:1fr}}.student-edit-form{display:grid;gap:16px}.student-edit-section{display:grid;gap:14px;padding:16px;border:1px solid rgba(207,217,230,.88);border-radius:8px;background:#fff}.student-edit-section-heading{display:grid;gap:3px;padding-bottom:10px;border-bottom:1px solid var(--line)}.student-edit-section-heading span{color:var(--brand-blue);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.student-edit-section-heading h3{margin:0;color:var(--brand-ink);font-size:.98rem;font-weight:650}.student-register-controls{display:grid;gap:12px;margin-bottom:14px;padding:12px;border:1px solid rgba(226,232,240,.95);border-radius:8px;background:#fbfdff}.student-list-switch{display:inline-grid;grid-template-columns:repeat(2,minmax(0,1fr));width:min(100%,460px);padding:4px;border:1px solid rgba(207,217,230,.95);border-radius:8px;background:#fff}.student-list-switch button{border:0;border-radius:6px;min-height:38px;padding:8px 12px;background:transparent;color:var(--muted);font-size:.84rem;font-weight:700;cursor:pointer}.student-list-switch button.active{background:var(--school-primary, var(--brand-blue));color:#fff;box-shadow:0 10px 18px #1e5aa829}.staff-type-switch{grid-template-columns:repeat(3,minmax(0,1fr));width:min(100%,680px)}.staff-role-selector{display:grid;gap:6px;margin-top:16px;padding-top:16px;border-top:1px solid #e2e8f0}.staff-role-selector>small{color:var(--muted);font-size:.8rem;font-weight:400}.student-register-filter-grid{display:grid;grid-template-columns:minmax(160px,230px) minmax(200px,300px) minmax(160px,230px) auto;align-items:end;gap:10px}.student-guardian-link-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.student-guardian-link-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid rgba(226,232,240,.95);border-radius:8px;background:linear-gradient(135deg,#f8fbff,#fffdf4)}.student-guardian-link-toolbar p{margin:0;color:var(--muted);font-size:.84rem;line-height:1.45}.student-guardian-link-toolbar>div{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.student-guardian-link-empty{padding:14px;border:1px dashed rgba(148,163,184,.72);border-radius:8px;color:var(--muted);background:#fbfdff;font-size:.88rem}.student-guardian-link-list{display:grid;gap:12px}.student-guardian-link-card{display:grid;gap:12px;padding:14px;border:1px solid rgba(207,217,230,.95);border-radius:8px;background:#fff;box-shadow:0 12px 24px #0f172a0a}.student-guardian-link-card-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:10px;border-bottom:1px solid rgba(226,232,240,.95)}.student-guardian-link-card-heading strong{color:var(--brand-ink);font-size:.92rem;font-weight:700}.student-existing-guardian-selector{display:grid;gap:12px;padding:14px;border:1px solid rgba(37,99,235,.28);border-radius:8px;background:#f8fbff}.student-existing-guardian-selector-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.student-existing-guardian-selector-heading>div{display:grid;gap:2px}.student-existing-guardian-selector-heading span{color:var(--brand-primary);font-size:.72rem;font-weight:750;text-transform:uppercase}.student-existing-guardian-selector-heading strong{color:var(--brand-ink);font-size:.92rem}.student-existing-guardian-search{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}.student-existing-guardian-search .compact-action{min-height:40px;white-space:nowrap}.student-existing-guardian-results{display:grid;max-height:280px;overflow-y:auto;border:1px solid rgba(207,217,230,.95);border-radius:8px;background:#fff}.student-existing-guardian-result{display:grid;grid-template-columns:auto 36px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:58px;padding:9px 12px;border-bottom:1px solid rgba(226,232,240,.92);cursor:pointer}.student-existing-guardian-result:last-child{border-bottom:0}.student-existing-guardian-result:hover{background:#f8fbff}.student-existing-guardian-result.selected{background:#eff7ff;box-shadow:inset 3px 0 0 var(--brand-primary)}.student-existing-guardian-result input{width:18px;height:18px;margin:0;accent-color:var(--brand-primary)}.student-existing-guardian-result .person-avatar{width:36px;height:36px;font-size:.72rem}.student-existing-guardian-result-details{display:grid;min-width:0;gap:2px}.student-existing-guardian-result-details strong{color:var(--brand-ink);font-size:.86rem;overflow-wrap:anywhere}.student-existing-guardian-result-details small,.student-existing-guardian-result-hint{color:var(--muted);font-size:.78rem;overflow-wrap:anywhere}.student-existing-guardian-result-status{color:var(--brand-primary);font-size:.75rem;font-weight:700}.student-existing-guardian-result-hint{margin:0;padding:12px;border:1px dashed rgba(148,163,184,.72);border-radius:8px;background:#fff}.student-existing-guardian-result-count{color:var(--muted);font-size:.78rem}.student-selected-existing-guardian{grid-column:1 / -1;display:flex;align-items:center;gap:10px;min-width:0;padding:10px 12px;border:1px solid rgba(207,217,230,.95);border-radius:8px;background:#f8fbff}.student-selected-existing-guardian>span:not(.person-avatar){display:grid;min-width:0;gap:2px;color:var(--muted);font-size:.8rem;overflow-wrap:anywhere}.student-selected-existing-guardian small{color:var(--brand-primary);font-size:.68rem;font-weight:750;text-transform:uppercase}.student-selected-existing-guardian strong{color:var(--brand-ink);font-size:.9rem}.guardian-link-workspace{display:grid;gap:14px;padding:14px;border:1px solid rgba(226,232,240,.95);border-radius:8px;background:linear-gradient(135deg,#fbfdff,#fffdf4)}.guardian-link-mode-switch{width:min(100%,560px)}.guardian-link-builder-grid{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(320px,1.25fr);gap:12px}.guardian-link-panel,.guardian-link-selected-card{border:1px solid rgba(207,217,230,.95);border-radius:8px;background:#fff}.guardian-link-panel{display:grid;align-content:start;gap:12px;padding:14px}.guardian-link-panel-heading{display:grid;gap:3px}.guardian-link-panel-heading span{color:var(--brand-blue);font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.guardian-link-panel-heading strong{color:var(--brand-ink);font-size:.95rem}.guardian-link-selected-card{padding:12px}.bulk-link-toolbar{display:grid;grid-template-columns:minmax(180px,1fr) auto;align-items:end;gap:10px}.bulk-link-toolbar label{display:grid;gap:6px;color:var(--muted);font-size:.78rem;font-weight:700}.bulk-link-toolbar>div{display:flex;align-items:center;justify-content:flex-end;gap:8px}.bulk-link-toolbar>div>span{color:var(--muted);font-size:.78rem;font-weight:700;white-space:nowrap}.bulk-link-option-list{display:grid;gap:8px;max-height:360px;overflow:auto;padding-right:3px}.bulk-link-option{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-height:54px;padding:10px 12px;border:1px solid rgba(226,232,240,.95);border-radius:8px;background:#fbfdff;cursor:pointer}.bulk-link-option:hover{border-color:#1e5aa857}.bulk-link-option.disabled{color:var(--muted);background:#f8fafc;cursor:not-allowed}.bulk-link-option span{display:grid;gap:2px}.bulk-link-option strong{color:var(--brand-ink);font-size:.88rem}.bulk-link-option small,.bulk-link-option em{color:var(--muted);font-size:.76rem}.bulk-link-option em{padding:4px 8px;border-radius:999px;background:#10b9811a;color:#047857;font-style:normal;font-weight:800}.guardian-link-settings{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:12px;border:1px solid rgba(226,232,240,.95);border-radius:8px;background:#fff}.guardian-link-settings p{margin:0;color:#b45309;font-size:.82rem;font-weight:700}.guardian-link-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.student-link-overview{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(420px,1.15fr);gap:14px;align-items:start}.student-link-directory,.student-link-detail{min-height:520px;border:1px solid rgba(207,217,230,.95);border-radius:8px;background:#fff}.student-link-directory{display:grid;align-content:start;gap:12px;padding:14px}.student-link-detail{padding:14px}.student-link-search input{width:100%}.student-link-list{display:grid;gap:8px;max-height:620px;overflow:auto;padding-right:3px}.student-link-row{display:block;width:100%;min-height:88px;padding:12px;border:1px solid rgba(226,232,240,.95);border-radius:8px;background:#fbfdff;text-align:left;cursor:pointer}.student-link-row .person-cell,.student-link-profile-card .person-cell,.guardian-link-selected-card .person-cell{min-width:0;width:100%;align-items:start}.student-link-row .person-cell>div,.student-link-profile-card .person-cell>div,.guardian-link-selected-card .person-cell>div{gap:4px;overflow:visible}.student-link-row .person-cell span,.student-link-profile-card .person-cell span,.guardian-link-selected-card .person-cell span{max-width:none;line-height:1.35;white-space:normal}.student-link-row:hover,.student-link-row:focus-visible{border-color:#1e5aa857;box-shadow:0 10px 22px #151d3f0f}.student-link-row.active{border-color:#1e5aa88c;background:linear-gradient(135deg,#fff,#f2f8ff);box-shadow:inset 4px 0 0 var(--school-primary, var(--brand-blue))}.student-link-profile-card{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px;padding:12px;border:1px solid rgba(226,232,240,.95);border-radius:8px;background:linear-gradient(135deg,#fbfdff,#fffdf4)}.student-guardian-link-option{min-height:86px;border:1px solid rgba(207,217,230,.95);border-radius:8px;padding:12px;display:grid;gap:5px;align-content:start;background:#fbfdff;color:var(--brand-ink);text-align:left;cursor:pointer}.student-guardian-link-option:hover,.student-guardian-link-option:focus-visible{border-color:#1e5aa85c;box-shadow:0 10px 22px #151d3f12}.student-guardian-link-option.active{border-color:#1e5aa88c;background:linear-gradient(135deg,#fff,#f2f8ff);box-shadow:inset 4px 0 0 var(--school-primary, var(--brand-blue))}.student-guardian-link-option strong{font-size:.91rem;font-weight:650}.student-guardian-link-option span{color:var(--muted);font-size:.8rem;line-height:1.45}.student-guardian-link-form{border:1px solid rgba(226,232,240,.95);border-radius:8px;padding:14px;background:#f8fbff}.student-guardian-link-flags{min-height:100%;display:grid;align-content:center;gap:10px}.student-profile-value-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}.student-profile-value{display:grid;gap:5px;min-height:70px;padding:12px;border:1px solid rgba(226,232,240,.95);border-radius:8px;background:#fbfdff}.student-profile-value.wide{grid-column:span 2}.student-profile-value span{color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.student-profile-value strong{color:var(--brand-ink);font-size:.9rem;font-weight:650;line-height:1.45;white-space:pre-wrap;min-width:0;overflow-wrap:anywhere}@media(max-width:720px){.student-existing-guardian-search{grid-template-columns:1fr}.student-existing-guardian-result{grid-template-columns:auto 36px minmax(0,1fr)}.student-existing-guardian-result-status{display:none}.student-existing-guardian-search .compact-action{width:100%;justify-content:center}.student-register-filter-grid,.guardian-link-builder-grid,.guardian-link-preview-grid,.student-link-overview,.bulk-link-toolbar{grid-template-columns:1fr}.bulk-link-toolbar>div{align-items:stretch;flex-direction:column}.student-guardian-link-toolbar{align-items:stretch;flex-direction:column}.student-guardian-link-toolbar>div{justify-content:stretch}.student-guardian-link-toolbar>div>button{flex:1}.student-guardian-link-options{grid-template-columns:1fr}.student-profile-value.wide{grid-column:span 1}}.guardian-collectors-panel{display:grid;gap:16px}.guardian-collector-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px}.guardian-collector-card{border:1px solid var(--line);border-radius:8px;padding:14px;display:grid;gap:12px;background:#fff;box-shadow:0 12px 28px #151d3f0d}.guardian-collector-card.active{border-color:#22c55e47;background:linear-gradient(135deg,#fff,#f6fdf8)}.guardian-collector-card.clickable,.collector-clickable-row{cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease,transform .16s ease}.guardian-collector-card.clickable:hover{border-color:#1f64ad61;box-shadow:0 14px 30px #1532571a;transform:translateY(-1px)}.guardian-collector-card.clickable:focus-visible,.collector-clickable-row:focus-visible{outline:3px solid rgba(31,100,173,.24);outline-offset:2px}.collector-clickable-row:hover>td{background:#f7fbff}.guardian-collector-main{display:flex;align-items:center;gap:12px;min-width:0}.guardian-collector-main strong,.guardian-collector-main span,.guardian-collector-main small{display:block}.guardian-collector-main strong{color:var(--brand-ink);font-size:.96rem;font-weight:650}.guardian-collector-main span{margin-top:2px;color:var(--school-primary, var(--brand-blue));font-size:.82rem;font-weight:650}.guardian-collector-main small,.guardian-collector-card p{color:var(--muted);font-size:.8rem;line-height:1.45}.guardian-collector-card p{margin:0}.guardian-collector-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.small-button.danger{color:#991b1b;border-color:#dc262638;background:#fff7f7}.guardian-collector-form{display:grid;gap:14px}.guardian-collector-toggle-box{min-height:100%;display:grid;align-content:center}.collector-profile-view{display:grid;gap:20px}.collector-profile-identity{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px;border:1px solid #d8e3ef;border-radius:8px;background:#f7faff}.collector-profile-avatar{position:relative;width:72px;height:72px;display:grid;place-items:center;flex:0 0 auto;overflow:hidden;border:1px solid #cbd9e8;border-radius:8px;background:#eaf3fc;color:#1f64ad}.collector-profile-avatar.compact{width:44px;height:44px;border-radius:7px}.collector-profile-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.collector-profile-avatar small{color:#1f64ad;font-size:1rem;font-weight:800}.collector-profile-avatar.compact small{font-size:.76rem}.collector-profile-name{min-width:0}.collector-profile-name>span,.collector-profile-section-heading span,.collector-profile-notes>span{display:block;color:#1f5da5;font-size:.72rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.collector-profile-name h3{margin:4px 0 2px;color:#172b43;font-size:1.24rem;line-height:1.25}.collector-profile-name p{margin:0;color:#64748b;font-size:.9rem}.collector-profile-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 18px;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0}.collector-profile-fact{min-width:0;display:flex;align-items:center;gap:11px;padding:14px 2px;border-bottom:1px solid #edf1f5}.collector-profile-fact-icon{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border-radius:7px;background:#edf5fc;color:#1f64ad}.collector-profile-fact>span:last-child{min-width:0;display:grid;gap:3px}.collector-profile-fact small,.collector-ward-class small{color:#728197;font-size:.7rem;font-weight:700;text-transform:uppercase}.collector-profile-fact strong{overflow-wrap:anywhere;color:#21344c;font-size:.86rem;font-weight:650}.collector-profile-wards{display:grid;gap:12px}.collector-profile-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.collector-profile-section-heading h3{margin:4px 0 0;color:#172b43;font-size:1rem}.collector-profile-section-heading>strong{min-width:38px;height:30px;display:grid;place-items:center;border-radius:999px;background:#e7f5ee;color:#087b58;font-size:.82rem}.collector-ward-list{border:1px solid #dbe4ee;border-radius:8px;overflow:hidden}.collector-ward-row{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(190px,.8fr);align-items:center;gap:12px;padding:12px 14px;background:#fff}.collector-ward-row+.collector-ward-row{border-top:1px solid #e5ebf2}.collector-ward-row:nth-child(2n){background:#fafcff}.collector-ward-name,.collector-ward-class>span{min-width:0;display:grid;gap:3px}.collector-ward-name strong,.collector-ward-class strong{color:#1d3048;font-size:.88rem}.collector-ward-name span,.collector-ward-class em{color:#6c7c91;font-size:.76rem;font-style:normal}.collector-ward-class{min-width:0;display:flex;align-items:center;gap:9px;color:#1f64ad}.collector-profile-empty{min-height:86px;display:flex;align-items:center;justify-content:center;gap:12px;padding:18px;border:1px dashed #cbd9e8;border-radius:8px;background:#fafcff;color:#6b7c91}.collector-profile-empty div{display:grid;gap:3px}.collector-profile-empty strong{color:#2a3d54}.collector-profile-empty span{font-size:.82rem}.collector-profile-notes{padding:14px 16px;border-left:3px solid #f4b51f;background:#fffaf0}.collector-profile-notes p{margin:6px 0 0;color:#475569;font-size:.86rem;line-height:1.55}.collector-profile-actions{margin-top:0;padding-top:14px;border-top:1px solid #e2e8f0}.collector-profile-actions .primary-button{width:auto}.mini-summary{display:flex;flex-direction:column;justify-content:center;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft)}.mini-summary strong{color:var(--ink);font-size:.96rem}.mini-summary span{color:var(--muted);font-size:.78rem}.small-select{min-width:116px;min-height:34px;padding:6px 8px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--ink);font-size:.82rem}.compact-table{margin-top:14px}.signature-upload-field .photo-upload-row img,.signature-upload-field .photo-upload-row .person-avatar{width:160px;height:72px;object-fit:contain;background:#fbfdff}.staff-portal{display:grid;gap:18px}.staff-profile-strip{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(220px,auto);align-items:center;gap:16px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(135deg,#fff,#f8fbff 62%,#fffaf0);box-shadow:0 12px 26px #151d3f0d;padding:16px}.staff-avatar{width:58px;height:58px;display:grid;place-items:center;border:1px solid #dbe8f3;border-radius:8px;color:var(--school-primary, var(--brand-blue));background:#fff;overflow:hidden}.staff-avatar img{width:100%;height:100%;object-fit:cover}.staff-profile-strip span,.staff-contract-summary span,.staff-profile-strip small,.staff-contract-summary small{color:var(--muted);font-size:.82rem;font-weight:620}.staff-profile-strip strong,.staff-contract-summary strong{display:block;color:var(--brand-ink);font-weight:720}.staff-profile-strip>div:nth-child(2) strong{font-size:1.15rem}.staff-contract-summary{min-width:220px;border-left:1px solid #dce8f2;padding-left:16px}.staff-profile-media-button{width:fit-content;margin-top:8px}.staff-profile-media-form{gap:14px}.staff-profile-media-intro{margin:0;color:var(--muted);line-height:1.55}.staff-asset-upload{display:grid;grid-template-columns:112px minmax(0,1fr);align-items:center;gap:14px;border:1px solid #d5e2ee;border-radius:8px;padding:12px;background:#f8fbff}.staff-asset-preview{display:grid;place-items:center;width:112px;height:86px;overflow:hidden;border:1px solid #dce7f1;border-radius:8px;color:var(--brand-blue);background:#fff}.staff-asset-preview img{width:100%;height:100%;object-fit:contain}.staff-asset-copy{display:grid;min-width:0;gap:5px}.staff-asset-copy strong{color:var(--brand-ink)}.staff-asset-copy small{color:var(--muted)}.staff-asset-copy input{width:100%;min-width:0;padding:8px;border:1px solid #d5e0ec;border-radius:8px;background:#fff}.staff-metrics .metric-card strong{font-size:1.35rem}.staff-tab-shell{overflow:hidden}.staff-tab-content{display:grid;gap:14px}.staff-attendance-tab{padding-bottom:18px}.staff-attendance-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:16px 18px 0}.staff-attendance-toolbar>div:first-child{display:grid;gap:3px}.staff-attendance-toolbar>div:first-child strong{color:var(--brand-ink);font-size:1rem}.staff-attendance-toolbar>div:first-child span,.staff-month-field>span{color:var(--muted);font-size:.8rem;font-weight:620}.staff-attendance-actions{display:flex;align-items:flex-end;flex-wrap:wrap;justify-content:flex-end;gap:8px}.staff-month-field{display:grid;gap:5px}.staff-month-field input{min-height:42px;border:1px solid #cfd9e6;border-radius:8px;color:var(--brand-ink);background:#fff;padding:0 10px}.staff-attendance-loading{min-height:220px;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--muted);font-weight:650}.staff-attendance-loading svg{animation:spin .8s linear infinite}.staff-attendance-card{margin:0 18px;border:1px solid #cfdeec;border-top:5px solid var(--school-accent, var(--brand-gold));border-radius:8px;background:#fff;box-shadow:0 10px 24px #151d3f0d;overflow:hidden}.staff-attendance-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;border-bottom:2px solid var(--school-primary, var(--brand-blue));padding:16px 18px}.staff-attendance-card>header span,.staff-attendance-identity small{color:var(--muted);font-size:.78rem;font-weight:650}.staff-attendance-card>header>div:first-child>span{color:var(--school-primary, var(--brand-blue));font-size:.7rem;font-weight:760;text-transform:uppercase}.staff-attendance-card h2{margin:4px 0;color:var(--brand-ink);font-size:1.25rem}.staff-attendance-card p{margin:0;color:var(--muted);font-weight:620}.staff-attendance-identity{display:grid;justify-items:end;gap:3px;text-align:right}.staff-attendance-identity strong{color:var(--brand-ink);font-size:1rem}.staff-attendance-score-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1px;background:#dce7f1}.staff-attendance-score{min-width:0;display:grid;gap:5px;background:#f8fbfe;padding:13px 14px}.staff-attendance-score span,.staff-attendance-card footer span{color:var(--muted);font-size:.7rem;font-weight:720;text-transform:uppercase}.staff-attendance-score strong{color:var(--brand-ink);font-size:1.25rem}.staff-attendance-score.tone-positive strong{color:#08785b}.staff-attendance-score.tone-warning strong{color:#9a6200}.staff-attendance-score.tone-danger strong{color:#b52b3a}.staff-attendance-score.tone-accent{background:#eef7ff}.staff-attendance-score.tone-accent strong{color:var(--school-primary, var(--brand-blue))}.staff-attendance-card footer{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#dce7f1;border-top:1px solid #dce7f1}.staff-attendance-card footer div{display:grid;gap:4px;background:#fff;padding:11px 14px}.staff-attendance-card footer strong{color:var(--brand-ink);font-size:.84rem}.staff-section-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px 0}.staff-section-actions strong{display:block;color:var(--brand-ink);font-weight:720}.staff-section-actions span{color:var(--muted);font-size:.84rem;font-weight:600}.staff-table-wrap{margin:0 18px 18px}.staff-modal-form{display:grid;gap:16px}.field-grid{display:grid;gap:14px}.field-grid.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-modal-form .form-field{display:grid;min-width:0;gap:6px;color:var(--muted);font-size:.84rem;font-weight:600}.staff-modal-form .form-field input,.staff-modal-form .form-field select,.staff-modal-form .form-field textarea{width:100%;min-height:42px;border:1px solid #cfd9e6;border-radius:8px;color:var(--brand-ink);background:var(--surface);padding:0 11px;outline:none}.staff-modal-form .form-field textarea{min-height:120px;padding:10px 11px;resize:vertical}.staff-modal-form .form-field input:focus,.staff-modal-form .form-field select:focus,.staff-modal-form .form-field textarea:focus{border-color:var(--brand-sky);box-shadow:0 0 0 3px #2196dc2e}@media(max-width:680px){.field-grid.two-columns{grid-template-columns:1fr}}.staff-response-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.staff-response-summary div,.staff-response-box div{border:1px solid #dce8f2;border-radius:8px;background:#fbfdff;padding:12px}.staff-response-summary span,.staff-response-box span{display:block;color:var(--brand-blue);font-size:.72rem;font-weight:760;letter-spacing:.04em;text-transform:uppercase}.staff-response-summary strong{display:block;margin-top:4px;color:var(--brand-ink);font-size:1rem}.staff-response-box{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.staff-response-box p{margin:6px 0 0;color:var(--text-soft);font-weight:600;line-height:1.45}.checkbox-row{min-height:46px;display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:8px;padding:0 12px;color:var(--brand-ink);font-weight:650}.checkbox-row input{width:18px;height:18px}@media(max-width:760px){.staff-asset-upload{grid-template-columns:1fr}.staff-asset-preview{width:100%}.staff-profile-strip{grid-template-columns:auto minmax(0,1fr)}.staff-contract-summary{grid-column:1 / -1;border-left:0;border-top:1px solid #dce8f2;padding:12px 0 0}.staff-section-actions{align-items:stretch;flex-direction:column}.staff-attendance-toolbar,.staff-attendance-card>header{align-items:stretch;flex-direction:column}.staff-attendance-actions{justify-content:flex-start}.staff-attendance-identity{justify-items:start;text-align:left}.staff-attendance-score-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-attendance-card footer{grid-template-columns:1fr}}.teacher-dashboard-v2 .teacher-command-panel{display:grid;grid-template-columns:minmax(260px,.34fr) minmax(0,.66fr);gap:14px;align-items:stretch;border:1px solid var(--line);border-radius:8px;padding:12px;background:#fff}.teacher-class-selector{display:grid;gap:6px;border:1px solid #e3edf7;border-radius:8px;padding:12px;background:#f8fbff}.teacher-class-selector span{color:var(--school-primary, var(--brand-blue));font-size:.72rem;font-weight:760;letter-spacing:.06em;text-transform:uppercase}.teacher-class-selector strong{color:var(--brand-ink);font-size:1rem;font-weight:680}.teacher-class-selector select,.teacher-rollcall-meta input{min-height:38px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--brand-ink);padding:0 10px;font:inherit}.teacher-tab-strip{display:flex;align-items:center;gap:8px;flex-wrap:wrap;align-content:center}.teacher-tab-strip button{min-height:38px;border:1px solid #dce8f2;border-radius:8px;background:#fff;color:var(--text-soft);display:inline-flex;align-items:center;gap:7px;padding:0 12px;font-size:.86rem;font-weight:650}.teacher-tab-strip button.active{border-color:var(--school-primary, var(--brand-blue));color:#fff;background:var(--school-primary, var(--brand-blue))}.teacher-tab-strip button span{min-width:21px;min-height:21px;border-radius:999px;display:inline-grid;place-items:center;padding:0 6px;color:var(--brand-blue);background:#eef6ff;font-size:.74rem}.teacher-panel-actions,.teacher-rollcall-meta{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px}.teacher-rollcall-meta{justify-content:flex-start;margin-bottom:14px}.teacher-rollcall-meta label{display:grid;gap:5px;min-width:min(260px,100%);color:var(--muted);font-size:.76rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.teacher-rollcall-list,.teacher-assignment-board,.teacher-student-directory{display:grid;gap:10px}.teacher-rollcall-row{display:grid;grid-template-columns:minmax(240px,.42fr) minmax(0,.58fr);gap:12px;align-items:center;border:1px solid #e3edf7;border-radius:8px;padding:12px;background:#fff}.teacher-rollcall-row.dirty{border-color:#f6bc12a3;background:#fffdf5}.teacher-rollcall-student,.teacher-student-card{display:flex;align-items:center;gap:10px}.teacher-rollcall-student img,.teacher-rollcall-student>span,.teacher-student-card img,.teacher-student-card>.teacher-student-avatar{width:42px;height:42px;flex:0 0 42px;border-radius:8px;object-fit:cover}.teacher-rollcall-student>span,.teacher-student-card>.teacher-student-avatar{display:grid;place-items:center;color:var(--school-primary, var(--brand-blue));background:#eef6ff;font-size:.8rem;font-weight:760}.teacher-rollcall-student strong,.teacher-student-card strong{display:block;color:var(--brand-ink);font-size:.94rem;font-weight:680}.teacher-rollcall-student small,.teacher-student-card small{display:block;margin-top:2px;color:var(--muted);font-size:.77rem}.teacher-rollcall-status-group{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.teacher-rollcall-status-group button{min-height:36px;border:1px solid #dce8f2;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:6px;color:var(--text-soft);background:#f8fbff;font-size:.8rem;font-weight:650}.teacher-rollcall-status-group button.active{border-color:#1b55a652;color:var(--school-primary, var(--brand-blue));background:#eef6ff}.teacher-assignment-board{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.teacher-assignment-card{display:grid;gap:12px;border:1px solid #e3edf7;border-radius:8px;padding:14px;background:#fbfdff}.teacher-assignment-card h3{margin:10px 0 6px;color:var(--brand-ink);font-size:1rem;font-weight:700}.teacher-assignment-card p{margin:0;color:var(--muted);font-size:.85rem;line-height:1.45}.teacher-assignment-card dl,.teacher-result-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}.teacher-assignment-card dt{color:var(--muted);font-size:.7rem;font-weight:760;letter-spacing:.04em;text-transform:uppercase}.teacher-assignment-card dd{margin:4px 0 0;color:var(--brand-ink);font-size:.84rem;font-weight:650}.teacher-card-actions{display:flex;justify-content:flex-end;gap:8px}.teacher-assignment-review-panel{display:grid;gap:14px;margin-top:14px;border:1px solid #dbe8f5;border-radius:8px;padding:14px;background:linear-gradient(180deg,#fbfdff,#fff)}.teacher-submission-summary{margin:0}.teacher-submission-filter-strip{display:flex;flex-wrap:wrap;gap:8px}.teacher-submission-filter-strip button{min-height:34px;border:1px solid #dce8f2;border-radius:8px;padding:0 12px;color:var(--text-soft);background:#fff;font-size:.82rem;font-weight:680}.teacher-submission-filter-strip button.active{border-color:#1b55a657;color:var(--school-primary, var(--brand-blue));background:#eef6ff}.teacher-submission-review-grid{display:grid;grid-template-columns:minmax(0,.58fr) minmax(320px,.42fr);gap:14px;align-items:start}.teacher-submission-list{display:grid;gap:10px;max-height:620px;overflow:auto;padding-right:4px}.teacher-submission-card{display:grid;grid-template-columns:minmax(240px,1fr) auto;gap:10px;align-items:start;border:1px solid #e3edf7;border-radius:8px;padding:12px;background:#fff}.teacher-submission-card>p,.teacher-submission-card>.assignment-attachment-card,.teacher-submission-card>button{grid-column:1 / -1}.teacher-submission-card>p{margin:0;color:var(--muted);font-size:.84rem;line-height:1.45}.teacher-submission-student{display:flex;align-items:center;gap:10px;min-width:0}.teacher-submission-student img,.teacher-submission-student>span{width:42px;height:42px;flex:0 0 42px;border-radius:8px;object-fit:cover}.teacher-submission-student>span{display:grid;place-items:center;color:var(--school-primary, var(--brand-blue));background:#eef6ff;font-size:.8rem;font-weight:760}.teacher-submission-student strong,.teacher-submission-student small{display:block}.teacher-submission-student strong{color:var(--brand-ink);font-size:.94rem;font-weight:700}.teacher-submission-student small{margin-top:2px;color:var(--muted);font-size:.76rem}.teacher-submission-review-form-panel{position:sticky;top:12px}.teacher-submission-review-form{display:grid;gap:12px}.teacher-submission-review-form>p{margin:0;color:var(--muted);font-weight:650}.teacher-results-layout{display:grid;grid-template-columns:minmax(0,.67fr) minmax(300px,.33fr);gap:14px}.teacher-result-table-wrap{margin-top:14px;overflow-x:auto}.teacher-result-table{min-width:720px}.teacher-result-table td:last-child,.teacher-result-table th:last-child{text-align:right}.teacher-remark-form{display:grid;gap:12px}.teacher-remark-form p{margin:0;color:var(--muted);font-weight:650}.teacher-remark-form textarea{min-height:180px;border:1px solid var(--line);border-radius:8px;padding:12px;color:var(--brand-ink);background:#fff;font:inherit;resize:vertical}.teacher-student-directory{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.teacher-student-card{justify-content:space-between;border:1px solid #e3edf7;border-radius:8px;padding:12px;background:#fff}.teacher-student-card>div{flex:1;min-width:0}.teacher-loading-strip{position:fixed;right:18px;bottom:18px;z-index:20;border:1px solid #dce8f2;border-radius:8px;padding:10px 12px;color:var(--brand-blue);background:#fff;box-shadow:0 16px 32px #151d3f29;font-size:.85rem;font-weight:700}.status-pill.present{color:var(--success);background:#e4f6f1}.status-pill.absent{color:var(--danger);background:#fbe3df}@media(max-width:1120px){.teacher-dashboard-v2 .teacher-command-panel,.teacher-submission-review-grid,.teacher-results-layout,.teacher-rollcall-row{grid-template-columns:1fr}.teacher-submission-review-form-panel{position:static}.teacher-panel-actions{justify-content:flex-start}}@media(max-width:720px){.teacher-rollcall-status-group,.teacher-assignment-card dl,.teacher-result-summary-grid{grid-template-columns:1fr 1fr}}@media(max-width:520px){.teacher-rollcall-status-group,.teacher-assignment-card dl,.teacher-result-summary-grid{grid-template-columns:1fr}}.online-exam-workspace{overflow:hidden}.online-exam-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:16px 18px 0;border-bottom:1px solid var(--line)}.online-exam-filters{display:flex;gap:12px;flex-wrap:wrap;align-items:end;padding-bottom:12px}.online-exam-filters .compact-field{min-width:190px}.online-exam-table table{min-width:1080px}.online-exam-table td:first-child{max-width:360px}.online-exam-table td span,.online-attempt-list td span{display:block;margin-top:4px;color:var(--muted);font-size:.82rem}.online-question-panel,.online-cbt-room,.online-grading-grid{padding:18px}.online-question-panel>.section-heading{display:none}.online-linked-exam-panel,.online-linked-exam-banner{display:grid;grid-template-columns:minmax(220px,320px) minmax(0,1fr) auto;gap:14px;align-items:center;margin-bottom:16px;padding:14px;border:1px solid #dbe6f2;border-radius:8px;background:#f8fbff}.online-linked-exam-banner{grid-template-columns:minmax(0,1fr) auto;margin-bottom:14px}.online-linked-exam-banner>div,.online-linked-exam-meta{display:grid;gap:4px}.online-linked-exam-banner strong,.online-linked-exam-meta strong{color:var(--brand-ink);font-size:1rem}.online-linked-exam-banner small,.online-linked-exam-meta small,.online-question-type-field small,.field-help{color:var(--muted);font-size:.82rem;line-height:1.45}.online-linked-exam-meta>div{display:flex;flex-wrap:wrap;gap:8px;align-items:center;color:var(--muted);font-size:.84rem}.online-question-list{display:grid;gap:12px}.online-question-card,.online-cbt-question,.online-grade-answer,.online-cbt-launch,.online-cbt-paper{border:1px solid var(--line);border-radius:8px;background:#fff}.online-question-card{display:flex;justify-content:space-between;gap:16px;padding:16px}.online-question-card h3,.online-cbt-question h3,.online-grade-answer h4{margin:6px 0 10px;color:var(--brand-ink);font-size:1rem;line-height:1.45}.online-question-card ul{display:grid;gap:6px;margin:10px 0 0;padding-left:18px}.online-question-card li.correct{color:var(--success);font-weight:700}.online-question-options{display:grid;gap:8px;margin:10px 0 0;padding:0;list-style:none}.online-question-options li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid #dbe6f2;border-radius:8px;background:#fbfdff;padding:9px 11px;color:var(--brand-ink);font-weight:600}.online-question-options li.correct{border-color:#08795f59;background:#ecf8f4;color:var(--brand-ink)}.online-question-options li.correct .online-choice-letter{border-color:var(--success);color:#fff;background:var(--success)}.online-question-options small{color:var(--success);font-weight:800}.online-question-import-list{display:grid;gap:10px;max-height:min(52vh,520px);overflow:auto;padding-right:4px}.online-question-import-row{display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:12px;align-items:center;border:1px solid #dbe6f2;border-radius:8px;background:#fff;padding:12px;cursor:pointer;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.online-question-import-row:hover,.online-question-import-row.selected{border-color:#2196dcb3;background:#f4f9ff;box-shadow:0 8px 18px #1558a814}.online-question-import-row>span:last-child{display:grid;gap:4px;min-width:0}.online-question-import-row strong{color:var(--brand-ink);line-height:1.4}.online-question-import-row small{color:var(--muted);font-weight:650}.online-question-import-row>span:last-child>span{color:var(--brand-ink);line-height:1.45}.online-question-import-row.already-linked{border-color:#c8d5e3;background:#f3f6f9;cursor:default;opacity:.78}.online-bank-picker{gap:14px}.online-bank-picker-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.online-bank-picker-search-row .row-actions{flex-wrap:nowrap}.online-bank-picker-filters{display:grid;grid-template-columns:repeat(4,minmax(145px,1fr));gap:10px;padding:12px;border:1px solid #dbe6f2;border-radius:7px;background:#f7f9fc}.online-bank-picker-filter{display:grid;gap:5px;min-width:0}.online-bank-picker-filter>span{color:#63758a;font-size:.72rem;font-weight:800}.online-bank-picker-filter select{width:100%;min-height:40px;padding:0 10px;color:#253449;border:1px solid #cad7e6;border-radius:5px;background:#fff}.online-bank-picker-result-summary{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;min-height:24px;color:#63758a;font-size:.8rem}.online-bank-picker-result-summary strong{color:#19324d}.online-bank-picker-result-summary span:last-child{color:#1766ad;font-weight:750}.assignment-bank-selection-count{padding:7px 11px;border-radius:999px;color:#126846;background:#e5f6ed;font-size:.8rem;font-weight:800}@media(max-width:980px){.online-bank-picker-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.online-bank-picker-search-row{grid-template-columns:1fr}.online-bank-picker-search-row .row-actions{justify-content:stretch}.online-bank-picker-search-row .row-actions>button{flex:1}.online-bank-picker-filters{grid-template-columns:1fr}}.online-cbt-launch{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,320px) auto;gap:16px;align-items:end;padding:16px}.online-cbt-paper{margin-top:16px;overflow:hidden}.online-cbt-paper-header{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:16px;background:#f7fbff;border-bottom:1px solid var(--line)}.online-cbt-question{margin:16px;padding:16px}.online-answer-options,.online-cbt-options{display:grid;gap:10px}.online-answer-options label,.online-option-row,.toggle-field{display:flex;align-items:center;gap:10px}.online-answer-options label,.online-option-row{min-height:42px;padding:9px 11px;border:1px solid #dbe6f2;border-radius:8px;background:#fbfdff}.online-answer-options label,.online-cbt-choice{min-height:54px;width:100%;padding:12px 14px;border:1px solid #dbe6f2;border-radius:8px;color:var(--brand-ink);background:#fff;cursor:pointer;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease}.online-cbt-choice{display:flex;align-items:center;gap:12px;text-align:left;font:inherit}.online-answer-options label{position:relative}.online-answer-options label input{position:absolute;opacity:0;pointer-events:none}.online-choice-letter{display:inline-grid;flex:0 0 34px;width:34px;height:34px;place-items:center;border:1px solid #cfe0f3;border-radius:999px;color:var(--brand-blue);background:#f4f9ff;font-weight:800}.online-answer-options label:hover,.online-cbt-choice:hover,.online-answer-options label:focus-within,.online-cbt-choice:focus-visible{border-color:#2196dcb3;box-shadow:0 0 0 3px #2196dc1f}.online-answer-options label.selected,.online-cbt-choice.selected{border-color:var(--brand-blue);background:#eef6ff;box-shadow:0 8px 18px #1558a81f}.online-answer-options label.selected .online-choice-letter,.online-cbt-choice.selected .online-choice-letter{border-color:var(--brand-blue);color:#fff;background:var(--brand-blue)}.online-cbt-choice:disabled{cursor:not-allowed;opacity:.7}.student-exam-review{display:grid;gap:16px}.student-exam-review-summary{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:16px;border:1px solid #dbe6f2;border-radius:8px;background:#f8fbff}.student-exam-review-summary h3,.student-exam-review-question h4{margin:4px 0;color:var(--brand-ink)}.student-exam-review-summary p{margin:0;color:var(--muted)}.student-exam-review-summary>div:last-child{display:grid;justify-items:end;gap:2px}.student-exam-review-summary strong{color:var(--brand-ink);font-size:1.15rem}.student-exam-review-summary span:not(.eyebrow){color:var(--brand-blue);font-weight:800}.student-exam-review-list{display:grid;gap:12px}.student-exam-review-question{display:grid;gap:12px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fff}.student-exam-review-question-header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.student-exam-review-options{display:grid;gap:8px}.student-exam-review-option{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:10px;align-items:center;min-height:50px;padding:10px 12px;border:1px solid #dbe6f2;border-radius:8px;background:#fbfdff;color:var(--brand-ink)}.student-exam-review-option small{color:var(--muted);font-weight:700}.student-exam-review-option.correct{border-color:#0079535c;background:#eaf8f2}.student-exam-review-option.correct .online-choice-letter{color:#fff;border-color:var(--success);background:var(--success)}.student-exam-review-option.wrong{border-color:#be123c52;background:#fff1f4}.student-exam-review-option.wrong .online-choice-letter{color:#fff;border-color:var(--danger);background:var(--danger)}.student-exam-review-option.selected:not(.wrong):not(.correct){border-color:#2196dc80;background:#eef6ff}.student-exam-review-written{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.student-exam-review-written>div{display:grid;gap:5px;padding:12px;border:1px solid #dbe6f2;border-radius:8px;background:#fbfdff}.student-exam-review-written span,.student-exam-correct-answer,.student-exam-teacher-comment,.student-exam-question-score{margin:0;color:var(--muted);font-size:.86rem}.student-exam-review-written strong,.student-exam-question-score{color:var(--brand-ink)}.student-exam-correct-answer,.student-exam-teacher-comment,.student-exam-question-score{padding-top:4px}.online-cbt-question textarea,.online-cbt-question .online-text-answer-input,.online-grade-form input,.online-grade-form select,.online-option-row input[type=text],.online-option-row input:not([type]){width:100%}.online-cbt-question .online-text-answer-input{min-height:46px;border:1px solid #cfd9e6;border-radius:8px;color:var(--brand-ink);background:#fff;padding:0 12px;outline:none}.online-cbt-question .online-text-answer-input:focus{border-color:var(--brand-sky);box-shadow:0 0 0 3px #2196dc2e}.teacher-student-card>.status-pill{width:auto;height:auto;flex:0 0 auto;white-space:nowrap}.teacher-student-card>.status-pill.neutral{color:#52677d;background:#edf3f8}.online-question-response-error{margin:0;padding:12px 14px;border:1px solid #f1c5c5;border-radius:8px;color:#9f2d2d;background:#fff5f5;font-weight:650}.online-grading-grid{display:grid;grid-template-columns:minmax(320px,.75fr) minmax(0,1.25fr);gap:16px}.online-attempt-list table{min-width:520px}.online-grading-detail{border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff}.online-grade-answer{margin:14px;padding:14px}.online-grade-answer p{color:var(--muted);margin:0 0 12px}.online-grade-form{display:grid;grid-template-columns:120px 150px minmax(180px,1fr) auto;gap:10px}.online-grade-summary{color:var(--brand-ink)!important;font-weight:700}.online-option-editor{display:grid;gap:10px;margin:12px 0}.online-option-row input:first-child{flex:0 0 auto}.online-exam-check-grid{display:flex;gap:14px;flex-wrap:wrap;margin-top:12px}.online-resume-strip{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-top:14px;padding:12px 14px;border:1px solid #d9e6f4;border-radius:8px;background:#f8fbff}.online-resume-strip>div:first-child{display:grid;gap:3px}.online-resume-strip span,.online-cbt-status-panel small{color:var(--muted);font-size:.82rem}.online-resume-strip>div:last-child,.online-cbt-actions,.online-cbt-question-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.online-cbt-status-panel{display:grid;justify-items:center;gap:4px;min-width:118px;padding:10px 12px;border:1px solid #dbe6f2;border-radius:8px;background:#fff}.online-cbt-timer{color:var(--brand-ink);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1.3rem;font-weight:800;letter-spacing:0}.online-cbt-timer.urgent{color:var(--danger)}.online-cbt-workspace{display:grid;grid-template-columns:160px minmax(0,1fr);gap:16px;padding:16px}.online-question-navigator{display:grid;align-content:start;gap:12px;padding:14px;border:1px solid #dbe6f2;border-radius:8px;background:#fbfdff}.online-question-navigator>div{display:grid;grid-template-columns:repeat(auto-fill,minmax(36px,1fr));gap:8px}.online-question-navigator button{min-height:36px;border:1px solid #dbe6f2;border-radius:8px;color:var(--brand-ink);background:#fff;font-weight:700}.online-question-navigator button.active{color:#fff;border-color:var(--brand-blue);background:var(--brand-blue)}.online-question-navigator button.answered{color:var(--success);border-color:#00795338;background:#eaf8f2}.online-question-navigator button.answered.active{color:#fff;border-color:#007953;background:#007953;box-shadow:0 0 0 3px #00795324}.online-question-navigator button.skipped{color:#8a5a00;border-color:#c5800047;background:#fff7df}.online-question-navigator button.skipped.active{color:#fff;border-color:#a66a00;background:#a66a00;box-shadow:0 0 0 3px #a66a0024}.online-cbt-progress-summary{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.online-cbt-progress-summary span{display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;border:1px solid #dbe6f2;border-radius:999px;color:var(--muted);background:#fff;font-size:.78rem;font-weight:700}.online-cbt-progress-summary .answered-count{color:var(--success);border-color:#00795338;background:#eaf8f2}.online-cbt-progress-summary .skipped-count{color:#8a5a00;border-color:#c5800047;background:#fff7df}.online-cbt-question.active{margin:0;min-height:360px}.online-cbt-question-actions{justify-content:space-between;margin-top:16px}.online-cbt-forward-actions,.online-exam-summary-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.online-cbt-workspace.summary-mode{grid-template-columns:minmax(0,1fr)}.online-exam-paused-cover{grid-column:1 / -1;display:grid;place-items:center;align-content:center;gap:10px;min-height:390px;border:1px solid #cfe0f2;border-radius:8px;background:#f4f9ff;padding:42px 24px;text-align:center}.online-exam-paused-cover h3,.online-exam-paused-cover p{margin:0}.online-exam-paused-cover h3{color:var(--brand-ink)}.online-exam-paused-cover p{max-width:560px;color:var(--muted);line-height:1.55}.online-exam-paused-icon{display:inline-grid;place-items:center;width:58px;height:58px;border:1px solid #bdd5ed;border-radius:50%;color:var(--brand-blue);background:#fff}.status-pill.paused{color:#8a5a00;border-color:#efd49a;background:#fff7df}.online-exam-summary{display:grid;gap:18px;width:100%;padding:4px}.online-exam-summary-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:16px;border-bottom:1px solid #dbe6f2}.online-exam-summary-heading h3{margin:4px 0 6px;color:var(--brand-ink)}.online-exam-summary-heading p{margin:0;color:var(--muted)}.online-exam-summary-heading>svg{flex:0 0 auto;color:var(--brand-blue)}.online-exam-summary-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.online-exam-summary-stats>div{display:grid;gap:3px;min-height:74px;align-content:center;padding:12px 14px;border:1px solid #dbe6f2;border-radius:8px;background:#f8fbff}.online-exam-summary-stats strong{color:var(--brand-ink);font-size:1.35rem}.online-exam-summary-stats span{color:var(--muted);font-size:.78rem;font-weight:700}.online-exam-summary-stats .answered{border-color:#00795338;background:#eaf8f2}.online-exam-summary-stats .answered strong{color:var(--success)}.online-exam-summary-stats .skipped{border-color:#c5800047;background:#fff7df}.online-exam-summary-stats .skipped strong{color:#8a5a00}.online-exam-required-warning{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border:1px solid rgba(190,65,55,.24);border-radius:8px;color:#8b3029;background:#fff1ef;font-size:.86rem;font-weight:700}.online-exam-required-warning svg{flex:0 0 auto}.online-exam-summary-questions{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:9px}.online-exam-summary-questions button{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:58px;padding:9px 11px;border:1px solid #dbe6f2;border-radius:8px;color:var(--brand-ink);background:#fff;text-align:left}.online-exam-summary-questions button:hover,.online-exam-summary-questions button:focus-visible{border-color:var(--brand-blue);box-shadow:0 0 0 3px #1c5ead1a}.online-exam-summary-questions button.answered{border-color:#00795338;color:var(--success);background:#f3fbf7}.online-exam-summary-questions button.skipped{border-color:#c5800047;color:#8a5a00;background:#fffaf0}.online-exam-summary-number{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;color:currentColor;background:#dce7f373;font-weight:800}.online-exam-summary-question-copy{display:grid;gap:2px;min-width:0}.online-exam-summary-question-copy strong{color:var(--brand-ink);font-size:.83rem}.online-exam-summary-question-copy small{color:currentColor;font-weight:700}.online-exam-summary-actions{padding-top:14px;border-top:1px solid #dbe6f2}.status-pill.closed,.status-pill.archived,.status-pill.released,.status-pill.graded{color:var(--brand-blue);background:#eef6ff}.status-pill.in-progress{color:#835500;background:#fff8e4}@media(max-width:980px){.online-exam-toolbar,.online-linked-exam-panel,.online-cbt-paper-header,.online-question-card{align-items:stretch;flex-direction:column}.online-cbt-launch,.online-linked-exam-panel,.online-grading-grid,.online-grade-form{grid-template-columns:1fr}.online-exam-summary-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.online-cbt-question-actions{align-items:stretch;flex-direction:column}.online-cbt-forward-actions,.online-exam-summary-actions{justify-content:stretch}.online-cbt-forward-actions>button,.online-exam-summary-actions>button{flex:1 1 auto}.online-exam-summary-stats,.online-exam-summary-questions{grid-template-columns:1fr}}.teacher-row-actions,.teacher-side-stack,.teacher-cbt-attempt-list,.teacher-skill-rating-form,.teacher-subject-comment-form,.teacher-subject-comment-list,.teacher-message-form{display:grid;gap:12px}.teacher-row-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px}.teacher-score-table-wrap{overflow-x:auto;border:1px solid #e3edf7;border-radius:8px}.teacher-score-table{width:100%;min-width:860px;border-collapse:collapse;background:#fff}.teacher-score-table th,.teacher-score-table td{border-bottom:1px solid #e6eef7;padding:10px 12px;text-align:left;vertical-align:middle}.teacher-score-table th{color:var(--muted);background:#f6f9fd;font-size:.72rem;font-weight:760;letter-spacing:.04em;text-transform:uppercase}.teacher-score-table th span,.teacher-score-table td span{display:block;margin-top:2px;color:var(--muted);font-size:.72rem;font-weight:600}.teacher-score-table td strong{display:block;color:var(--brand-ink);font-size:.88rem;font-weight:680}.teacher-score-table input{width:84px;min-height:34px;border:1px solid var(--line);border-radius:8px;padding:0 9px;color:var(--brand-ink);background:#fff;font:inherit}.teacher-score-access-note{display:block;max-width:620px;margin-top:5px;color:var(--muted);font-size:.78rem;font-weight:600;line-height:1.45}.teacher-score-save-bar{position:sticky;bottom:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:12px;padding:12px 14px;border:1px solid #dbe8f4;border-radius:8px;background:#fffffff7;box-shadow:0 -8px 24px #14375a14}.teacher-score-save-bar div{display:grid;gap:2px}.teacher-score-save-bar strong{color:var(--brand-ink);font-size:.86rem}.teacher-score-save-bar span{color:var(--muted);font-size:.76rem}@media(max-width:720px){.teacher-score-save-bar{align-items:stretch;flex-direction:column}.teacher-score-save-bar .primary-action{justify-content:center;width:100%}}.teacher-subject-comment-form p,.teacher-skill-rating-form p,.teacher-message-form label,.teacher-subject-comment-form label,.teacher-answer-grade label{color:var(--muted);font-size:.78rem;font-weight:700}.teacher-skill-group{display:grid;gap:8px;border:1px solid #e3edf7;border-radius:8px;background:#fbfdff;padding:10px}.teacher-skill-group>span{color:var(--brand-blue);font-size:.7rem;font-weight:780;letter-spacing:.07em;text-transform:uppercase}.teacher-skill-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;border-top:1px solid #e7eef6;padding-top:8px}.teacher-skill-row strong{color:var(--brand-ink);font-size:.82rem;font-weight:680}.teacher-skill-rating-options{display:inline-grid;grid-template-columns:repeat(5,34px);gap:5px}.teacher-skill-rating-options button{min-height:32px;border:1px solid #d5e1ee;border-radius:8px;color:var(--brand-ink);background:#fff;font:inherit;font-size:.78rem;font-weight:760}.teacher-skill-rating-options button.active{border-color:var(--brand-blue);color:#fff;background:var(--brand-blue);box-shadow:0 8px 16px #1e5aa82e}.teacher-subject-comment-list label,.teacher-message-form label,.teacher-answer-grade label{display:grid;gap:6px}.teacher-subject-comment-form textarea,.teacher-message-form textarea,.teacher-message-form input,.teacher-answer-grade textarea,.teacher-answer-grade input,.teacher-answer-grade select,.teacher-panel-actions select{border:1px solid var(--line);border-radius:8px;color:var(--brand-ink);background:#fff;font:inherit}.teacher-subject-comment-form textarea,.teacher-message-form textarea,.teacher-answer-grade textarea{min-height:90px;padding:10px 12px;resize:vertical}.teacher-message-form input,.teacher-answer-grade input,.teacher-answer-grade select,.teacher-panel-actions select{min-height:38px;padding:0 10px}.teacher-cbt-attempt-card{display:grid;gap:12px;border:1px solid #e3edf7;border-radius:8px;padding:14px;background:#fbfdff}.teacher-cbt-attempt-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.teacher-cbt-attempt-heading strong{display:block;color:var(--brand-ink);font-size:.98rem;font-weight:700}.teacher-cbt-attempt-heading span,.teacher-answer-grade small{display:block;margin-top:3px;color:var(--muted);font-size:.78rem}.teacher-answer-grade{display:grid;grid-template-columns:minmax(260px,1fr) 110px 130px minmax(220px,.7fr) auto;gap:10px;align-items:end;border:1px solid #e6eef7;border-radius:8px;padding:12px;background:#fff}.teacher-answer-grade strong{color:var(--brand-ink);font-size:.9rem;font-weight:700}.teacher-answer-grade p{margin:6px 0 0;color:var(--text-soft);font-size:.86rem;line-height:1.45}.teacher-message-options{display:flex;flex-wrap:wrap;gap:12px}.teacher-message-options label{display:inline-flex;align-items:center;gap:8px;border:1px solid #e3edf7;border-radius:8px;padding:10px 12px;background:#f8fbff;color:var(--brand-ink);font-size:.86rem;font-weight:650}.teacher-message-options input{width:16px;height:16px}@media(max-width:1180px){.teacher-answer-grade{grid-template-columns:1fr 110px 130px}.teacher-answer-comment,.teacher-answer-grade .primary-action{grid-column:1 / -1}}@media(max-width:720px){.teacher-cbt-attempt-heading{flex-direction:column}.teacher-answer-grade{grid-template-columns:1fr}}.audit-page{gap:18px}.audit-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.audit-metric{display:flex;gap:13px;align-items:flex-start;padding:16px;border:1px solid var(--border);border-radius:8px;background:linear-gradient(135deg,#fff,#f7fbff);box-shadow:var(--shadow-soft)}.audit-metric>span{display:grid;place-items:center;width:38px;height:38px;border-radius:8px;color:var(--brand-blue);background:#eef6ff;flex:0 0 auto}.audit-metric.success>span{color:#087f5b;background:#e6fcf5}.audit-metric.danger>span{color:#b42318;background:#fff1f0}.audit-metric.info>span{color:#1b55a6;background:#eff6ff}.audit-metric p,.audit-metric small{margin:0;color:var(--muted)}.audit-metric strong{display:block;margin:3px 0;font-size:1.45rem;line-height:1.1;color:var(--text)}.audit-filter-panel,.audit-table-card{padding:18px}.audit-filter-grid{display:grid;grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(150px,1fr));gap:14px;align-items:end}.audit-filter-grid .field span{color:var(--muted)}.audit-filter-actions{display:flex;gap:10px;align-items:center}.audit-table-wrap{border:1px solid var(--border);border-radius:8px;overflow:auto}.audit-table td strong,.audit-table td small{display:block}.audit-table td small{margin-top:3px;color:var(--muted);font-size:.76rem}.audit-outcome{display:inline-flex;align-items:center;min-width:72px;justify-content:center;padding:5px 9px;border-radius:999px;font-size:.78rem;font-weight:700}.audit-outcome.success{color:#087f5b;background:#e6fcf5}.audit-outcome.failure{color:#b42318;background:#fff1f0}.audit-loading{padding:28px;text-align:center;color:var(--muted);border:1px dashed var(--border);border-radius:8px;background:#fbfdff}.audit-pagination{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:14px;color:var(--muted)}.audit-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.audit-detail-item{padding:13px;border:1px solid var(--border);border-radius:8px;background:#fbfdff;min-width:0}.audit-detail-item.wide{grid-column:1 / -1}.audit-detail-item span{display:block;margin-bottom:6px;font-size:.75rem;font-weight:800;color:var(--muted);text-transform:uppercase}.audit-detail-item strong{display:block;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text)}.empty-state.compact{min-height:150px;border:1px dashed var(--border);border-radius:8px}@media(max-width:1100px){.audit-metrics,.audit-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.audit-metrics,.audit-filter-grid,.audit-detail-grid{grid-template-columns:1fr}.audit-pagination{justify-content:space-between}}.role-permission-section{display:grid;gap:16px;padding:18px;overflow:hidden}.role-permission-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.role-permission-heading span:first-child{display:block;color:var(--brand-blue);font-size:.76rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.role-permission-heading h2{margin:4px 0 5px;color:var(--brand-ink);font-size:1.2rem}.role-permission-heading p{margin:0;color:var(--muted);font-size:.88rem;line-height:1.45}.role-permission-legend{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;min-width:300px}.role-permission-legend span{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid var(--border);border-radius:999px;background:#fff;color:var(--text-soft);font-size:.78rem;font-weight:700}.role-summary-grid{display:grid;grid-template-columns:repeat(8,minmax(110px,1fr));gap:10px}.role-summary-card{padding:12px;border:1px solid #dde8f3;border-radius:8px;background:linear-gradient(135deg,#fff,#f8fbff)}.role-summary-card span,.role-summary-card small{display:block;color:var(--muted);font-size:.76rem;line-height:1.35}.role-summary-card strong{display:block;margin:5px 0 2px;color:var(--brand-ink);font-size:1.25rem}.role-permission-table-wrap{border:1px solid var(--border);border-radius:8px;overflow:auto;background:#fff}.role-permission-table{width:100%;min-width:1120px;border-collapse:collapse}.role-permission-table th,.role-permission-table td{padding:12px;border-bottom:1px solid #edf2f7;text-align:center;vertical-align:top}.role-permission-table th:first-child,.role-permission-table td:first-child{width:300px;text-align:left;position:sticky;left:0;z-index:1;background:#fff;box-shadow:8px 0 12px -14px #0f172a59}.role-permission-table th{background:#f6f9fc;color:var(--text-soft);font-size:.75rem;font-weight:800;text-transform:uppercase}.role-permission-table th:first-child{z-index:2;background:#f6f9fc}.role-permission-table td:first-child strong,.role-permission-table td:first-child span{display:block}.role-permission-table td:first-child strong{color:var(--brand-ink);font-size:.88rem}.role-permission-table td:first-child span{margin-top:4px;color:var(--muted);font-size:.78rem;line-height:1.4}.permission-badge{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:86px;padding:6px 8px;border-radius:999px;font-size:.76rem;font-weight:750}.permission-badge.full{color:#087f5b;background:#e6fcf5}.permission-badge.scoped{color:#1b55a6;background:#eff6ff}.permission-badge.view{color:#7c5a00;background:#fff8db}.permission-badge.restricted{color:#7a8794;background:#f3f6f8}@media(max-width:1280px){.role-summary-grid{grid-template-columns:repeat(4,minmax(120px,1fr))}}@media(max-width:760px){.role-permission-heading{flex-direction:column}.role-permission-legend{justify-content:flex-start;min-width:0}.role-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.modal-body>.role-permission-section{border:0;box-shadow:none;padding:0;background:transparent}.school-settings-page{display:grid;gap:16px;width:100%}.clickable-table-row{cursor:pointer}.clickable-notice-card{cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease}.clickable-notice-card:hover{border-color:#2563eb6b;box-shadow:0 10px 24px #0f172a14}.clickable-table-row:hover td{background:#f8fbff}.notice-multi-select{display:grid;gap:7px}.wide-field{grid-column:1 / -1}.notice-checkbox-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:240px;overflow-y:auto;border:1px solid var(--border);border-radius:8px;background:#fff}.notice-checkbox-list label{display:flex;align-items:center;gap:9px;min-height:44px;padding:8px 11px;border-bottom:1px solid #edf2f7;color:var(--text);font-size:.83rem;cursor:pointer}.notice-checkbox-list label:hover{background:#f7fbff}.notice-checkbox-list input{width:17px;height:17px;flex:0 0 auto;accent-color:var(--brand-primary)}.notice-attachment-upload{display:grid;gap:9px;padding:14px;border:1px solid var(--border);border-radius:8px;background:#f8fbff}.notice-selected-files{display:flex;flex-wrap:wrap;gap:7px}.notice-selected-files span{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:6px 9px;border:1px solid #d8e5f2;border-radius:6px;background:#fff;color:var(--text-soft);font-size:.76rem;overflow-wrap:anywhere}.notice-viewer{display:grid;gap:18px}.notice-viewer-meta{display:flex;flex-wrap:wrap;gap:8px}.notice-viewer-meta span{padding:6px 9px;border:1px solid #dbe6f0;border-radius:999px;background:#f7fafc;color:var(--text-soft);font-size:.76rem;font-weight:650}.notice-viewer-body{margin:0;color:var(--text);font-size:.94rem;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere}.notice-viewer-image,.notice-viewer-attachments{margin:0;display:grid;gap:12px}.notice-viewer-image img,.notice-viewer-rendered-image{display:block;width:auto;max-width:100%;max-height:560px;margin-inline:auto;object-fit:contain;border:1px solid var(--border);border-radius:8px;background:#f8fafc}.notice-viewer-section-heading{display:flex;align-items:center;gap:8px;color:var(--brand-ink)}.notice-viewer-section-heading span{display:grid;place-items:center;min-width:24px;height:24px;border-radius:999px;background:#eaf3ff;color:var(--brand-primary);font-size:.72rem;font-weight:750}.notice-viewer-attachment{display:grid;gap:10px;padding:12px;border:1px solid var(--border);border-radius:8px;background:#fff}.notice-viewer-attachment header{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px}.notice-viewer-attachment header>span{display:grid;place-items:center;width:36px;height:36px;border-radius:7px;color:var(--brand-primary);background:#edf5ff}.notice-viewer-attachment header div{display:grid;min-width:0;gap:2px}.notice-viewer-attachment header strong{overflow-wrap:anywhere}.notice-viewer-attachment header small{color:var(--muted)}.notice-viewer-pdf{width:100%;min-height:620px;border:1px solid var(--border);border-radius:8px;background:#f8fafc}@media(max-width:720px){.notice-checkbox-list{grid-template-columns:1fr}.notice-viewer-attachment header{grid-template-columns:36px minmax(0,1fr)}.notice-viewer-attachment header .small-button{grid-column:1 / -1;justify-content:center}.notice-viewer-pdf{min-height:440px}}.school-settings-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:4px 0 14px;border-bottom:1px solid #dce5ef}.school-settings-header h1{margin:4px 0 3px;color:#10243d;font-size:1.55rem;font-weight:700}.school-settings-header p{margin:0;color:#65758a;font-size:.84rem}.school-settings-header-actions{display:flex;gap:9px;flex-wrap:wrap}.school-settings-form{display:grid;gap:14px}.school-settings-section{padding:0 18px 18px;border:1px solid #d9e4ef;border-radius:6px;background:#fff;box-shadow:0 7px 20px #1a36530a;overflow:hidden}.school-settings-section>header{display:flex;align-items:center;gap:10px;margin:0 -18px 18px;padding:13px 18px;border-bottom:1px solid #dde7f0;background:linear-gradient(90deg,#f4f9ff,#fbfcf7 70%,#fff9e8)}.school-settings-section>header>span{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:6px;color:#1559a8;background:#e8f2ff}.school-settings-section h2{margin:0;color:#182d46;font-size:.98rem;font-weight:700}.school-settings-grid{display:grid;gap:14px}.school-settings-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.school-settings-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.school-settings-field{display:grid;align-content:start;gap:7px;min-width:0;color:#53657a;font-size:.78rem;font-weight:650}.school-settings-field>span b{color:#d42d35;font-size:.92rem}.school-settings-field input,.school-settings-field textarea,.school-settings-number{width:100%;min-height:44px;border:1px solid #cddbea;border-radius:6px;color:#172a42;background:#fbfdff;font:inherit;font-size:.9rem;font-weight:500}.school-settings-field input,.school-settings-field textarea{padding:10px 12px}.school-settings-field input:focus,.school-settings-field textarea:focus,.school-settings-number:focus-within{outline:2px solid rgba(39,133,217,.18);border-color:#2785d9}.school-settings-field textarea{resize:vertical}.school-settings-number{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;overflow:hidden}.school-settings-number input{min-height:42px;border:0;background:transparent}.school-settings-number input:focus{outline:0}.school-settings-number small{padding:0 12px;color:#6d7e91;font-size:.73rem;font-weight:600}.school-settings-toggle{display:flex;align-items:center;gap:11px;min-height:68px;padding:10px 13px;border:1px solid #cddbea;border-radius:6px;background:#fbfdff;cursor:pointer}.school-settings-toggle input{width:18px;height:18px;accent-color:#1f62b4}.school-settings-toggle span{display:grid;gap:2px;min-width:0}.school-settings-toggle strong{color:#22364f;font-size:.82rem}.school-settings-toggle small{color:#718196;font-size:.7rem;line-height:1.35}.school-settings-breaks{display:grid;gap:12px}.school-settings-break-row{display:grid;grid-template-columns:minmax(160px,.7fr) repeat(2,minmax(180px,1fr));align-items:end;gap:14px;padding:13px;border-left:3px solid #f4b400;background:#fffdf6}.school-settings-break-row:nth-child(2){border-left-color:#23966f;background:#f7fcfa}.school-settings-break-row>div:first-child{display:grid;gap:3px;align-self:center}.school-settings-break-row strong{color:#20344d;font-size:.86rem}.school-settings-break-row>div:first-child span{color:#718196;font-size:.72rem}.promotion-settings-callout{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px;border:1px solid #d5e3ef;border-left:4px solid #1f62b4;border-radius:6px;background:#f8fbff}.promotion-settings-callout>div{display:grid;gap:3px}.promotion-settings-callout strong{color:#20344d;font-size:.9rem}.promotion-settings-callout span,.promotion-settings-callout p{margin:0;color:#66788d;font-size:.78rem}.promotion-settings-modal{display:grid;gap:16px}.promotion-settings-intro{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;border:1px solid #d5e3ef;border-radius:6px;background:#f7faff}.promotion-settings-intro>span:first-child{display:grid;place-items:center;width:40px;height:40px;border-radius:6px;color:#1559a8;background:#e5f1ff}.promotion-settings-intro>div{display:grid;gap:3px}.promotion-settings-intro strong{color:#20344d;font-size:.9rem}.promotion-settings-intro p{margin:0;color:#66788d;font-size:.8rem;line-height:1.45}.promotion-settings-toolbar{display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap}.promotion-settings-table{max-height:min(56vh,620px);overflow:auto}.promotion-settings-table td:first-child strong,.promotion-settings-table td:first-child span{display:block}@media(max-width:1100px){.school-settings-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.school-settings-header{align-items:stretch;flex-direction:column}.school-settings-header-actions>button{flex:1 1 auto}.school-settings-grid.four,.school-settings-grid.two,.school-settings-break-row{grid-template-columns:1fr}.school-settings-section{padding-inline:13px}.school-settings-section>header{margin-inline:-13px;padding-inline:13px}.promotion-settings-callout{align-items:stretch;flex-direction:column}.promotion-settings-intro{grid-template-columns:40px minmax(0,1fr)}.promotion-settings-intro>.status-pill{grid-column:1 / -1;justify-self:start}.promotion-readiness-strip{grid-template-columns:22px minmax(0,1fr)}.promotion-readiness-strip>button{grid-column:1 / -1;justify-content:center}}.collector-form{display:grid;gap:16px}.collector-source-section{display:grid;grid-template-columns:minmax(210px,.65fr) minmax(320px,1fr);align-items:end;gap:13px 18px;padding:14px;border:1px solid #cbd9e8;border-radius:7px;background:#f7faff}.collector-source-section>div:first-child{display:grid;align-self:center;gap:3px}.collector-source-section strong{color:#17304d;font-size:.92rem}.collector-source-section small{color:#64748b;font-size:.78rem;font-weight:450;line-height:1.4}.collector-source-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;border:1px solid #cbd8e7;border-radius:7px;background:#fff}.collector-source-switch button{min-height:38px;padding:7px 11px;border:0;border-radius:5px;color:#64748b;background:transparent;font:inherit;font-size:.82rem;font-weight:700;cursor:pointer}.collector-source-switch button.active{color:#fff;background:#1f5da8}.collector-source-switch button:disabled{cursor:not-allowed}.collector-staff-selector{grid-column:1 / -1;display:grid;gap:9px;color:#334155;font-size:.82rem;font-weight:700}.collector-staff-selector>label{display:grid;gap:6px}.collector-staff-search .people-search{width:100%;max-width:none;min-height:42px;border-color:#cbd8e7;background:#fff}.collector-staff-search .people-search input{min-width:0}.collector-staff-search-hint,.collector-staff-empty{margin:0;padding:11px 13px;border:1px dashed #c6d5e5;border-radius:6px;color:#64748b;background:#fff;font-size:.78rem;font-weight:500}.collector-staff-results{display:grid;max-height:290px;overflow-y:auto;border:1px solid #cbd8e7;border-radius:7px;background:#fff}.collector-staff-result{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;width:100%;padding:11px 13px;border:0;border-bottom:1px solid #e2e8f0;color:#243b55;background:#fff;text-align:left;cursor:pointer}.collector-staff-result:last-child{border-bottom:0}.collector-staff-result:hover:not(:disabled),.collector-staff-result:focus-visible:not(:disabled){background:#eef6ff;outline:none}.collector-staff-result:disabled{color:#8290a3;background:#f7f9fc;cursor:not-allowed}.collector-staff-result>span:nth-child(2),.collector-staff-selected>span:nth-child(2){display:grid;min-width:0;gap:2px}.collector-staff-result strong,.collector-staff-selected strong{overflow-wrap:anywhere}.collector-staff-result small,.collector-staff-selected small{color:#64748b;font-weight:500}.collector-staff-result>b{color:#1f5da8;font-size:.76rem}.collector-staff-result:disabled>b{color:#8a6470}.collector-staff-avatar{display:grid;width:38px;height:38px;place-items:center;border-radius:6px;color:#14549b;background:#e6f1fc;font-size:.75rem;font-weight:800}.collector-staff-selected{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 13px;border:1px solid #8eb9e8;border-left:4px solid #1f5da8;border-radius:7px;background:#eef6ff}.collector-staff-selected>button{min-height:34px;padding:6px 11px;border:1px solid #b7cbe0;border-radius:6px;color:#174f90;background:#fff;font:inherit;font-size:.78rem;cursor:pointer}.collector-staff-footnote{margin-top:1px}.collector-details-grid input[readonly]{color:#42566e;background:#f4f7fa;cursor:default}.people-modal-form{display:grid;gap:16px}.people-form-section{display:grid;gap:14px;padding:15px 16px;border:1px solid #cbd9e8;border-radius:7px;background:#fff}.people-form-section-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:11px;border-bottom:1px solid #e2e8f0}.people-form-section-heading>div:first-child{display:grid;gap:3px}.people-form-section-heading span{color:#1f5da8;font-size:.72rem;font-weight:750;text-transform:uppercase}.people-form-section-heading strong{color:#17304d;font-size:.96rem}.people-form-section-heading small{color:#6b7c91;font-size:.79rem;font-weight:450;line-height:1.45}.people-heading-toggles{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.people-heading-toggles .toggle-field,.people-account-toggle .toggle-field{display:inline-flex;align-items:center;min-height:42px;padding:8px 11px;border:1px solid #cfe2d9;border-radius:6px;background:#f3faf7;color:#176344;font-size:.8rem;font-weight:700}.people-heading-toggles .toggle-field input,.people-account-toggle .toggle-field input{margin:0}.people-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.people-form-grid .field{min-width:0}.people-form-grid .field input,.people-form-grid .field select{min-height:42px;padding:9px 11px;border-color:#cbd8e7;border-radius:6px;background:#fff}.people-form-grid .field textarea{min-height:76px;padding:10px 11px;border-color:#cbd8e7;border-radius:6px;resize:vertical}.people-form-span-2{grid-column:span 2}.people-form-span-all{grid-column:1 / -1}.people-account-section{background:#f7faff}.people-account-grid{display:grid;grid-template-columns:minmax(220px,.65fr) minmax(420px,1.35fr);align-items:end;gap:18px}.people-account-toggle{display:flex;min-width:0;align-items:flex-end}.people-account-toggle .toggle-field{width:100%}.people-password-field{min-width:0}.people-password-field .password-with-action{grid-template-columns:minmax(260px,1fr) minmax(104px,auto);gap:12px}.people-password-field .compact-action{min-width:104px}.people-modal-actions{position:sticky;bottom:-18px;z-index:2;margin:0 -2px -2px;padding:12px 2px 2px;border-top:1px solid #e2e8f0;background:#fff}.people-modal-form .student-edit-section{padding:15px 16px;border-color:#cbd9e8;border-radius:7px}.people-modal-form .student-edit-section>.form-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.people-modal-form .student-edit-section.people-account-section>.form-grid.compact{grid-template-columns:minmax(220px,.65fr) minmax(420px,1.35fr);align-items:end;gap:18px}.people-modal-form .student-edit-section-heading{padding-bottom:11px}.people-modal-form .student-edit-section-heading h3{color:#17304d;font-size:.96rem}.people-modal-form .student-edit-section-heading span{color:#1f5da8}.people-modal-form .photo-upload-field{min-width:0}@media(max-width:980px){.people-form-grid,.people-modal-form .student-edit-section>.form-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.people-account-grid,.people-modal-form .student-edit-section.people-account-section>.form-grid.compact{grid-template-columns:1fr}}@media(max-width:680px){.people-form-grid,.people-modal-form .student-edit-section>.form-grid.compact{grid-template-columns:1fr}.people-form-span-2,.people-form-span-all{grid-column:auto}.people-form-section-heading{align-items:flex-start;flex-direction:column}.people-heading-toggles{width:100%;justify-content:flex-start}.people-password-field .password-with-action{grid-template-columns:1fr}.people-password-field .compact-action{width:100%}}.collector-form>label,.collector-details-grid label{display:grid;gap:6px;color:#334155;font-size:.82rem;font-weight:700}.collector-form input,.collector-form textarea,.collector-form select{width:100%}.required-asterisk{color:#c62828;font-weight:800}.collector-details-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:10px;border-bottom:1px solid #e2e8f0}.collector-details-heading>div{display:grid;gap:2px}.collector-details-heading strong{color:#17304d;font-size:.95rem}.collector-details-heading small{color:#6b7c91;font-size:.78rem}.collector-active-toggle{display:inline-flex;align-items:center;gap:8px;padding:7px 11px;border:1px solid #cfe2d9;border-radius:6px;background:#f3faf7;color:#176344;font-size:.8rem;font-weight:700;cursor:pointer}.collector-active-toggle input{width:auto;margin:0}.collector-details-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px 14px}.collector-details-grid input,.collector-details-grid select{min-height:42px;padding:9px 11px;border-color:#cbd8e7;border-radius:6px;background:#fff;font-size:.9rem;font-weight:500}.collector-notes-field{display:grid;gap:6px;color:#334155;font-size:.82rem;font-weight:700}.collector-notes-field textarea{min-height:68px;padding:10px 11px;border-color:#cbd8e7;border-radius:6px;font-size:.9rem;font-weight:500;resize:vertical}.collector-student-assignment{display:grid;gap:11px;padding:14px;border:1px solid #cbd9e8;border-radius:7px;background:#f7faff}.collector-assignment-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.collector-assignment-heading>div{display:grid;gap:3px}.collector-assignment-heading strong{color:#172b43;font-size:.92rem}.collector-assignment-heading small{color:#64748b;font-weight:450;line-height:1.45}.collector-student-search{max-width:none;min-height:42px;border-color:#cbd8e7;background:#fff}.collector-assignment-actions{display:flex;align-items:center;gap:8px}.collector-selection-count{min-width:82px;padding:6px 9px;border-radius:999px;background:#edf2f7;color:#64748b;text-align:center;font-size:.76rem;font-weight:750}.collector-selection-count.populated{background:#e6f7ef;color:#087b58}.collector-assignment-actions button{border:0;background:transparent;color:#1e5da8;font-size:.76rem;font-weight:700;cursor:pointer}.collector-student-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;max-height:235px;overflow-y:auto;padding:2px 5px 2px 2px;scrollbar-color:#b7c8da transparent}.collector-student-option{display:flex;align-items:center;gap:9px;min-width:0;min-height:54px;padding:8px 10px;border:1px solid #d8e2ed;border-radius:6px;background:#fff;cursor:pointer}.collector-student-option.selected{border-color:#2f73bd;background:#edf6ff;box-shadow:inset 3px 0 #2f73bd}.collector-student-option input{width:auto;margin:0;accent-color:#1f64ad}.collector-student-option span{display:grid;min-width:0;gap:3px}.collector-student-option strong,.collector-student-option small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.collector-student-option small{color:#64748b;font-weight:450}.collector-empty-state{grid-column:1 / -1;margin:10px 0;color:#6b7c91;text-align:center;font-size:.84rem}.collector-modal-actions{position:sticky;bottom:-18px;z-index:2;margin:0 -2px -2px;padding:12px 2px 2px;border-top:1px solid #e2e8f0;background:#fff}.collector-row-actions{justify-content:flex-end;flex-wrap:nowrap}.collector-add-action{width:auto;min-width:0;min-height:36px;flex:0 0 auto;padding:0 12px;font-size:.84rem}.guardian-section-heading .collector-add-action{align-self:flex-end}.guardian-collectors-panel>.list-pagination{margin:0;border:1px solid #e2e8f0;border-radius:8px}.school-collectors-table td:last-child{width:210px}@media(max-width:760px){.collector-source-section{grid-template-columns:1fr}.collector-staff-selector{grid-column:auto}.collector-staff-result,.collector-staff-selected{grid-template-columns:38px minmax(0,1fr)}.collector-staff-result>b,.collector-staff-selected>button{grid-column:2;justify-self:start}.collector-details-grid,.collector-student-options{grid-template-columns:1fr}.collector-details-heading,.collector-assignment-heading{align-items:flex-start;flex-direction:column}.collector-row-actions{flex-wrap:wrap}.school-collectors-table td:last-child{width:auto}.guardian-section-heading .collector-add-action{align-self:flex-start}.collector-profile-identity{grid-template-columns:auto minmax(0,1fr)}.collector-profile-identity>.status-pill{grid-column:1 / -1;justify-self:start}.collector-profile-facts{grid-template-columns:1fr}.collector-ward-row{grid-template-columns:auto minmax(0,1fr)}.collector-ward-class{grid-column:2}.collector-profile-actions .primary-button{width:100%}}.notification-dashboard{display:grid;gap:16px}.notification-page-heading{margin-bottom:0}.notification-page-heading p{margin:5px 0 0;color:var(--muted)}.notification-metric-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.notification-metric{min-height:116px;display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid var(--border);border-radius:8px;background:#fff}.notification-metric-icon{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;border-radius:7px;color:#1757a6;background:#eaf3ff}.notification-metric.green .notification-metric-icon{color:#08775d;background:#e7f7f1}.notification-metric.amber .notification-metric-icon{color:#986600;background:#fff6d9}.notification-metric.red .notification-metric-icon{color:#b42b3b;background:#fff0f2}.notification-metric.cyan .notification-metric-icon{color:#08788a;background:#e8f8fa}.notification-metric>div{min-width:0;display:grid;gap:2px}.notification-metric span{color:var(--muted);font-size:.82rem}.notification-metric strong{color:var(--ink);font-size:1.55rem;line-height:1.2}.notification-metric small{margin-top:3px;color:var(--muted);font-size:.72rem;line-height:1.35}.notification-filter-panel{display:grid;grid-template-columns:minmax(260px,1.6fr) repeat(3,minmax(135px,.65fr)) repeat(2,minmax(145px,.7fr));gap:10px;align-items:end;padding:14px;border:1px solid var(--border);border-radius:8px;background:#f8fbff}.notification-search-field{height:42px;display:flex;align-items:center;gap:8px;padding:0 12px;border:1px solid var(--border);border-radius:7px;background:#fff;color:var(--muted)}.notification-search-field:focus-within{border-color:#4d92df;box-shadow:0 0 0 3px #2371c41a}.notification-search-field input{min-width:0;width:100%;padding:0;border:0;outline:0;background:transparent}.notification-filter-panel>select,.notification-date-field input{min-height:42px;width:100%;border:1px solid var(--border);border-radius:7px;background:#fff}.notification-date-field{display:grid;gap:4px}.notification-date-field span{color:var(--muted);font-size:.72rem;font-weight:700}.notification-filter-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:8px}.notification-list-panel{min-width:0;border:1px solid var(--border);border-radius:8px;overflow:hidden;background:#fff}.notification-list-heading{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;border-bottom:1px solid var(--border)}.notification-list-heading h2{margin:3px 0 0;font-size:1rem}.notification-list-heading>span{color:var(--muted);font-size:.8rem;font-weight:700}.notification-table{min-width:1040px}.notification-table td{vertical-align:top}.notification-table td strong,.notification-table td small{display:block}.notification-table td strong{font-size:.83rem;font-weight:700}.notification-table td small{max-width:260px;margin-top:4px;color:var(--muted);font-size:.72rem;line-height:1.35;overflow-wrap:anywhere}.notification-channel,.notification-status{display:inline-flex;align-items:center;min-height:25px;padding:3px 9px;border-radius:999px;font-size:.72rem;font-weight:800}.notification-channel{color:#25527c;background:#edf4fb}.notification-channel.whatsapp{color:#08775d;background:#e6f7ef}.notification-channel.push{color:#7250a4;background:#f1ecfb}.notification-status.pending{color:#8a6200;background:#fff4d6}.notification-status.sent{color:#08775d;background:#e3f6ee}.notification-status.failed{color:#a52233;background:#ffeaed}.notification-status.skipped{color:#5d6878;background:#eef1f5}.notification-row-actions{justify-content:flex-end;white-space:nowrap}.notification-empty{min-height:210px;display:grid;place-items:center;align-content:center;gap:7px;color:var(--muted);text-align:center}.notification-empty strong{color:var(--ink)}.notification-detail{display:grid;gap:16px}.notification-detail-banner{display:flex;gap:11px;align-items:flex-start;padding:14px;border:1px solid #f0d79a;border-radius:8px;color:#795700;background:#fff8e5}.notification-detail-banner.sent{color:#08775d;border-color:#bde5d7;background:#edf9f4}.notification-detail-banner.failed{color:#9f2434;border-color:#efbdc4;background:#fff2f3}.notification-detail-banner.skipped{color:#566171;border-color:#d8dde4;background:#f5f7f9}.notification-detail-banner>div{display:grid;gap:3px}.notification-detail-banner span{font-size:.8rem;line-height:1.45}.notification-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;border-top:1px solid var(--border);border-left:1px solid var(--border)}.notification-detail-grid>div{min-width:0;padding:11px 12px;border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.notification-detail-grid dt,.notification-token span{margin-bottom:4px;color:var(--muted);font-size:.68rem;font-weight:800;text-transform:uppercase}.notification-detail-grid dd{margin:0;color:var(--ink);font-size:.82rem;font-weight:650;overflow-wrap:anywhere}.notification-token{display:grid;padding:11px 12px;border:1px solid var(--border);border-radius:7px;background:#f8fafc}.notification-token code{font-size:.76rem;overflow-wrap:anywhere}@media(max-width:1280px){.notification-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.notification-filter-panel{grid-template-columns:minmax(260px,1.5fr) repeat(3,minmax(140px,1fr))}}@media(max-width:760px){.notification-metric-grid,.notification-filter-panel,.notification-detail-grid{grid-template-columns:1fr}.notification-filter-actions{grid-column:auto}.notification-page-heading,.notification-list-heading{align-items:flex-start}}.question-bank-workspace{padding:22px;background:#fff}.question-bank-heading,.question-bank-exam-strip,.question-bank-card-top,.question-bank-summary,.pagination-bar{display:flex;align-items:center;justify-content:space-between;gap:16px}.question-bank-heading h2{margin:3px 0 5px;font-size:1.35rem}.question-bank-heading p{margin:0;color:#64748b}.question-bank-feedback{position:fixed;z-index:1400;left:50%;top:80px;transform:translate(-50%);min-width:min(460px,calc(100vw - 32px));padding:14px 18px;border-radius:6px;box-shadow:0 16px 40px #0f172a2e;font-weight:700;text-align:center}.question-bank-feedback.success{color:#05603a;background:#ecfdf5;border:1px solid #86efac}.question-bank-feedback.danger{color:#991b1b;background:#fff1f2;border:1px solid #fda4af}.student-daily-attendance-table .status-badge{display:inline-flex;align-items:center;justify-content:center;min-width:88px;min-height:28px;border-radius:999px;padding:4px 10px;font-size:.78rem;font-weight:700}.student-daily-attendance-table .status-badge.success{color:#087f5b;background:#e6fcf5}.student-daily-attendance-table .status-badge.danger{color:#b42318;background:#fff0ee}.student-daily-attendance-table .status-badge.info{color:#175cd3;background:#eff8ff}.student-daily-attendance-table .status-badge.warning{color:#9a6700;background:#fff8c5}.question-bank-exam-strip{margin:18px 0 14px;padding:14px 16px;border:1px solid #b7d2f4;border-left:4px solid #2463ad;background:#f5f9ff;border-radius:6px}.question-bank-exam-strip>div,.question-bank-summary span{display:flex;align-items:center;gap:10px}.question-bank-exam-strip span{display:grid;gap:2px}.question-bank-exam-strip small{color:#64748b}.question-bank-filterbar{display:grid;grid-template-columns:minmax(280px,2fr) repeat(4,minmax(130px,1fr));gap:10px;padding:13px;background:#f7f9fc;border:1px solid #d9e2ee;border-radius:6px}.question-bank-filterbar select,.question-bank-search{min-height:42px;border:1px solid #cad7e6;border-radius:5px;background:#fff}.question-bank-filterbar select{padding:0 10px;color:#253449}.question-bank-search{display:flex;align-items:center;gap:8px;padding:0 12px}.question-bank-search input{width:100%;border:0;outline:0;background:transparent}.question-bank-summary{justify-content:flex-start;margin:14px 0;color:#52647a;font-size:.88rem}.question-bank-summary span{padding-right:18px;border-right:1px solid #d9e2ee}.question-bank-summary span:last-child{border:0}.question-bank-summary strong{color:#14263d;font-size:1rem}.question-bank-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.question-bank-card{display:grid;align-content:start;gap:12px;min-width:0;padding:16px;border:1px solid #d7e1ed;border-radius:6px;background:#fff;box-shadow:0 4px 14px #1f37520a}.question-bank-card.selected{border-color:#2463ad;box-shadow:inset 3px 0 #2463ad,0 5px 16px #2463ad17;background:#fbfdff}.question-bank-card-top{align-items:flex-start;justify-content:flex-start}.question-bank-card-top>div{min-width:0;flex:1}.question-bank-card-top h3{margin:2px 0 0;font-size:1rem;overflow-wrap:anywhere}.question-bank-number,.question-bank-check span{display:grid;place-items:center;width:34px;height:34px;border-radius:5px;background:#edf4fb;color:#18579f;font-weight:800}.question-bank-check{position:relative;cursor:pointer}.question-bank-check input{position:absolute;inset:0;opacity:0}.question-bank-check input:checked+span{color:#fff;background:#185fac}.question-bank-prompt{margin:0;color:#23344a;font-size:.96rem;line-height:1.55;white-space:pre-wrap}.question-bank-media,.online-question-media{display:block;width:100%;max-height:320px;object-fit:contain;border:1px solid #d9e2ee;border-radius:5px;background:#f8fafc}.question-bank-audio,.online-question-audio{width:100%}.question-bank-stimulus,.online-question-stimulus{padding:14px;border-left:3px solid #efb118;background:#fffbea;color:#374151;white-space:pre-wrap;line-height:1.55}.question-bank-option-preview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.question-bank-option-preview span{display:flex;align-items:center;gap:7px;padding:8px 9px;border:1px solid #e0e7ef;border-radius:4px;color:#53657a;font-size:.82rem}.question-bank-option-preview span.correct{color:#075e43;border-color:#a7e4cf;background:#effbf6}.question-bank-option-preview b{display:grid;place-items:center;width:22px;height:22px;background:#eef3f8;border-radius:3px}.question-bank-meta{display:flex;flex-wrap:wrap;gap:6px}.question-bank-meta span{padding:4px 8px;border-radius:4px;background:#f2f5f8;color:#5b6c80;font-size:.73rem;font-weight:700}.pagination-bar{margin-top:18px;padding-top:14px;border-top:1px solid #e2e8f0;color:#64748b}.pagination-bar>div{display:flex;gap:7px}.pagination-bar select{border:1px solid #ccd7e3;border-radius:4px;padding:0 8px;background:#fff}.question-bank-form{padding-bottom:4px}.question-bank-form .form-section{padding:16px;border:1px solid #d9e2ee;border-radius:6px;background:#fff}.question-bank-form .form-section+.form-section{margin-top:14px}.question-bank-format-section{background:#f8fbfe!important;border-color:#cbddeb!important}.question-format-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.question-format-option{display:grid;grid-template-columns:38px minmax(0,1fr);grid-template-rows:auto auto;gap:2px 10px;min-width:0;min-height:78px;padding:11px;text-align:left;color:#21364d;border:1px solid #d5e0ea;border-radius:6px;background:#fff;cursor:pointer}.question-format-option>span{grid-row:1 / 3;display:grid;place-items:center;width:38px;height:38px;color:#175fab;border-radius:5px;background:#eaf3fd}.question-format-option strong{align-self:end;font-size:.86rem}.question-format-option small{min-width:0;color:#6b7d90;font-size:.72rem;line-height:1.35}.question-format-option:nth-child(3n+2)>span{color:#087559;background:#e7f7f0}.question-format-option:nth-child(3n)>span{color:#9a6500;background:#fff4d7}.question-format-option:hover{border-color:#8eb6dc;background:#fbfdff}.question-format-option.selected{border-color:#1c64ad;box-shadow:inset 3px 0 #1c64ad,0 0 0 2px #1c64ad17;background:#f5f9fe}.question-format-empty{display:flex;align-items:center;justify-content:center;gap:10px;min-height:92px;margin-top:14px;color:#63768a;border:1px dashed #c9d7e4;border-radius:6px;background:#fafcfe}.question-response-picker{display:grid;gap:9px}.question-response-picker>span{color:#344b63;font-size:.78rem;font-weight:700}.question-response-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.question-response-options button{display:grid;gap:3px;min-height:65px;padding:10px 12px;text-align:left;color:#294057;border:1px solid #d5e0ea;border-radius:5px;background:#fff;cursor:pointer}.question-response-options button strong{font-size:.8rem}.question-response-options button small{color:#6d7e90;font-size:.7rem;line-height:1.35}.question-response-options button.selected{color:#114f92;border-color:#4f8ac5;box-shadow:inset 3px 0 #2167ae;background:#eef6ff}.question-response-summary{display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 10px;padding:11px 13px;border:1px solid #cfe0ed;border-left:4px solid #2470b8;border-radius:5px;background:#f5f9fd}.question-response-summary>span{grid-row:1 / 3;align-self:center;color:#63778b;font-size:.72rem;text-transform:uppercase;font-weight:700}.question-response-summary strong{color:#1d3955;font-size:.86rem}.question-response-summary small{color:#6c7e90;font-size:.72rem}.question-media-requirement{padding:12px;border:1px solid #d8e3ec;border-radius:6px;background:#f9fbfd}.question-media-requirement input[type=file]{padding:9px;border:1px dashed #b9cad9;border-radius:5px;background:#fff}.question-media-requirement small,.question-text-answer-key small{color:#65788c;font-size:.75rem}.question-text-answer-key{display:grid;gap:7px;margin-bottom:14px}.question-text-answer-key textarea{min-height:96px}.question-marking-settings{padding-top:14px;border-top:1px solid #e1e8ef}.form-section-heading{display:flex;align-items:center;gap:11px;margin-bottom:15px;padding-bottom:11px;border-bottom:1px solid #e3e9f0}.form-section-heading>span{display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:5px;color:#fff;background:#185fac;font-weight:800}.form-section-heading h3,.form-section-heading p{margin:0}.form-section-heading h3{font-size:.98rem}.form-section-heading p{margin-top:2px;color:#6b7b8f;font-size:.8rem}.question-bank-option-editor{display:grid;gap:9px;margin-bottom:14px}.question-bank-option-row{display:grid;grid-template-columns:38px minmax(0,1fr) 34px 34px;gap:8px;align-items:center}.question-bank-option-row>span{display:grid;place-items:center;height:40px;border-radius:4px;color:#15569e;background:#ebf3fd;font-weight:800}.question-bank-option-content{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:center;min-width:0}.question-bank-option-content>input{min-width:0;height:40px;padding:0 11px;border:1px solid #cad7e6;border-radius:4px}.question-bank-option-content>img{grid-row:2;max-width:160px;max-height:95px;object-fit:contain;border-radius:4px}.question-bank-option-content>label{grid-column:2;grid-row:1 / 3;cursor:pointer}.question-bank-option-row>input[type=checkbox],.question-bank-option-row>input[type=radio]{width:19px;height:19px;justify-self:center}.online-question-instruction{margin:7px 0;color:#52657b;font-weight:650}.online-option-media{display:block;max-width:180px;max-height:120px;object-fit:contain;margin:4px 0;border-radius:4px}.assignment-bank-selection{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0;padding:12px 14px;border:1px solid #b8d7c8;border-left:4px solid #19825b;border-radius:5px;color:#315a4b;background:#f2fbf7}.assignment-bank-selection span{color:#65786f;font-size:.8rem}.assignment-bank-picker{display:grid;gap:14px}.assignment-bank-filter-panel{display:grid;gap:12px;padding:15px;border:1px solid #d8e3ed;border-radius:7px;background:#f7fafc}.assignment-bank-filter-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}.assignment-bank-filter-heading>div{display:flex;align-items:center;gap:9px;color:#215c99}.assignment-bank-filter-heading>div>span{display:grid;gap:2px}.assignment-bank-filter-heading small{color:#687b8e;font-size:.75rem;font-weight:500}.assignment-bank-search{width:100%}.assignment-bank-filter-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.assignment-bank-result-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 13px;color:#53687e;border-left:3px solid #278167;background:#f3faf7;font-size:.8rem}.assignment-bank-result-bar strong{color:#1c4f40}.assignment-bank-picker-list{display:grid;gap:8px;max-height:48vh;overflow:auto;padding-right:4px}.assignment-bank-picker-row{display:grid;grid-template-columns:22px 34px minmax(0,1fr);gap:10px;align-items:start;padding:12px;border:1px solid #d8e1ec;border-radius:5px;cursor:pointer}.assignment-bank-picker-row.selected{border-color:#2b70bb;background:#f2f7fe}.assignment-bank-picker-row input{width:18px;height:18px;margin-top:7px}.assignment-bank-picker-row>span:last-child{display:grid;gap:3px;min-width:0}.assignment-bank-picker-row small{color:#52647a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.assignment-bank-picker-row em{color:#197057;font-size:.72rem;font-style:normal;font-weight:700}.assignment-bank-empty{display:grid;justify-items:center;gap:5px;min-height:150px;align-content:center;padding:20px;color:#6b7e91;border:1px dashed #c7d5e2;border-radius:7px;background:#fbfcfd;text-align:center}.assignment-bank-empty strong{color:#2d4359}.assignment-bank-empty span{font-size:.8rem}.assignment-bank-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#65788b;font-size:.8rem}.assignment-bank-pagination>div{display:flex;gap:8px}.assignment-bank-actions{margin-top:0;padding-top:13px;border-top:1px solid #dfe7ef}@media(max-width:1040px){.assignment-bank-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.assignment-bank-filter-heading,.assignment-bank-result-bar,.assignment-bank-pagination{align-items:stretch;flex-direction:column}.assignment-bank-filter-grid{grid-template-columns:1fr}}.assignment-rich-question-list{display:grid;gap:12px;margin-top:12px}.assignment-rich-question-list article{display:grid;gap:10px;padding:14px;border:1px solid #d8e2ed;border-radius:5px;background:#fff}.assignment-rich-question-list article>div:first-child{display:grid;grid-template-columns:34px minmax(0,1fr);gap:2px 9px;align-items:center}.assignment-rich-question-list article>div:first-child .online-choice-letter{grid-row:1 / 3}.assignment-rich-question-list article>div:first-child small{color:#68798e}.assignment-response-section{display:grid;gap:12px;margin:14px 0;padding:14px;border:1px solid #cddbea;border-radius:6px;background:#f7faff}.assignment-response-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.assignment-response-heading>span{font-weight:700;color:#173352}.assignment-response-heading>small{color:#68798e}.assignment-response-section .assignment-rich-question-list{margin-top:0}.assignment-manual-response-list{display:grid;gap:12px}.assignment-manual-response-list article{display:grid;gap:10px;padding:14px;border:1px solid #d8e2ed;border-radius:5px;background:#fff}.assignment-manual-response-list article>div{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:9px}.assignment-manual-response-list p{margin:0;color:#15283d;line-height:1.55}.assignment-answer-options{display:grid;gap:8px}.assignment-answer-option{display:grid;grid-template-columns:20px 30px minmax(0,1fr);align-items:center;gap:9px;min-height:46px;padding:9px 12px;border:1px solid #d6e0eb;border-radius:5px;background:#fff;cursor:pointer}.assignment-answer-option.selected{border-color:#2463b2;background:#edf5ff;box-shadow:inset 3px 0 #2463b2}.assignment-answer-option:has(input:disabled){cursor:default}.assignment-answer-option input{width:18px;height:18px;margin:0}.assignment-answer-option b{color:#1658a7}.assignment-text-answer{width:100%;min-height:46px;padding:11px 13px;border:1px solid #bfcfe0;border-radius:5px;background:#fff;color:#15283d;font:inherit}.assignment-text-answer-long{min-height:132px;resize:vertical}.assignment-text-answer:focus{border-color:#168fe0;outline:3px solid rgba(22,143,224,.14)}.assignment-text-answer:disabled{background:#f4f7fa;color:#344a61;opacity:1}@media(max-width:680px){.assignment-response-heading{align-items:flex-start;flex-direction:column;gap:3px}}.danger-action{display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:0 15px;border:1px solid #c82f3d;border-radius:5px;color:#fff;background:#b82432;font-weight:750}@media(max-width:1050px){.question-bank-filterbar{grid-template-columns:repeat(2,minmax(0,1fr))}.question-bank-search{grid-column:1 / -1}.question-format-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.question-bank-workspace{padding:14px}.question-bank-heading,.question-bank-exam-strip{align-items:stretch;flex-direction:column}.question-bank-filterbar,.question-bank-grid,.question-format-grid,.question-response-options{grid-template-columns:1fr}.question-bank-summary{align-items:flex-start;flex-direction:column}.question-bank-summary span{border:0}.question-bank-option-preview{grid-template-columns:1fr}.question-bank-option-row{grid-template-columns:34px minmax(0,1fr) 30px 30px}.question-bank-option-content{grid-template-columns:1fr}.question-bank-option-content>label{grid-column:1;grid-row:auto;justify-self:start}}@media(max-width:760px){.report-attendance-summary,.remark-responsibility-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-data-summary{padding:12px}.report-data-student{align-items:flex-start}}@media(max-width:480px){.report-attendance-summary{grid-template-columns:1fr}}.admissions-page{display:grid;gap:18px}.admissions-page .page-heading{align-items:flex-end}.admissions-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.admissions-metrics article{min-height:112px;padding:18px;border:1px solid #d9e4ee;border-radius:6px;background:#fff;display:grid;grid-template-columns:38px 1fr;grid-template-rows:auto 1fr;gap:3px 12px;box-shadow:0 8px 24px #203f5b0d}.admissions-metrics article:nth-child(1){background:#f5f9ff}.admissions-metrics article:nth-child(2){background:#f2fbf6}.admissions-metrics article:nth-child(3){background:#fff9e8}.admissions-metrics article:nth-child(4){background:#f6f5ff}.admissions-metrics svg{grid-row:1 / 3;align-self:center;width:34px;height:34px;padding:8px;border-radius:6px;color:#175ca8;background:#fffc}.admissions-metrics span{color:#66788b;font-size:.82rem}.admissions-metrics strong{color:#142a42;font-size:1.65rem;font-weight:700}.admissions-list-panel{border:1px solid #d9e4ee;background:#fff;border-radius:6px;padding:18px}.admissions-list-panel td:first-child{min-width:220px}.admissions-list-panel td small{display:block;margin-top:4px;color:#718197;font-size:.74rem}.admission-queue-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) minmax(180px,240px) auto;align-items:center;gap:12px;margin:14px 0}.admission-queue-toolbar .search-field{display:flex;align-items:center;gap:9px;min-width:0;height:42px;padding:0 12px;border:1px solid #ccd9e5;border-radius:6px;background:#fff;color:#64788e}.admission-queue-toolbar .search-field input{width:100%;min-width:0;border:0;outline:0;background:transparent}.admission-queue-toolbar select{height:42px;border:1px solid #ccd9e5;border-radius:6px;padding:0 11px;background:#fff}.admission-queue-toolbar>span{color:#64788e;font-size:.82rem;white-space:nowrap}.admission-queue-table th:first-child,.admission-queue-table td:first-child{width:42px;min-width:42px}.admission-review-modal{display:grid;gap:18px}.admission-review-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.admission-review-summary article{display:grid;gap:4px;padding:14px;border:1px solid #d8e4ee;border-radius:6px;background:#f8fbfd}.admission-review-summary span,.admission-review-summary small{color:#6b7d90;font-size:.76rem}.admission-review-summary strong{color:#142a42}.admission-review-summary .composite-score{background:#f2fbf6;border-color:#bfe1d0}.admission-review-summary .composite-score strong{color:#087553}.admission-review-payment{display:grid;gap:14px;padding:16px;border:1px solid #d7e3ed;border-radius:7px;background:#f8fbfd}.admission-review-payment.paid{border-color:#acd9c6;background:#f1faf6}.admission-review-payment-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.admission-review-payment-summary>div{display:grid;gap:3px;padding:10px 12px;border:1px solid #dce6ee;border-radius:6px;background:#fff}.admission-review-payment-summary span,.admission-payment-history small{color:#687b8e;font-size:.78rem}.admission-payment-history{display:grid;gap:8px}.admission-payment-history article{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:10px 12px;border-top:1px solid #dce6ee}.admission-payment-history article>div{display:grid;gap:2px}.admission-payment-history svg{color:#2362aa}.admission-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.admission-review-grid>section{min-width:0;padding:16px;border:1px solid #d8e4ee;border-radius:6px;background:#fff}.review-section-title{display:flex;align-items:flex-start;gap:10px;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid #e4ebf1;color:#1762ad}.review-section-title h3,.review-section-title p{margin:0}.review-section-title h3{color:#18304a;font-size:1rem}.review-section-title p{margin-top:3px;color:#6c7d8e;font-size:.78rem}.admission-checklist{display:grid;gap:8px;margin:14px 0}.admission-checklist>label{display:flex;align-items:center;gap:9px;min-height:42px;padding:9px 11px;border:1px solid #dde7ef;border-radius:6px;background:#f9fbfd}.admission-detail-list{display:grid;gap:8px;margin:0 0 16px}.admission-detail-list div{display:grid;grid-template-columns:120px 1fr;gap:10px;padding:8px 0;border-bottom:1px solid #e8eef3}.admission-detail-list dt{color:#6b7d90;font-size:.78rem}.admission-detail-list dd{margin:0;color:#20364d}.admission-contact-card{display:grid;gap:3px;margin-bottom:8px;padding:11px;border:1px solid #dce6ee;border-radius:6px;background:#f8fbfd}.admission-contact-card span,.admission-contact-card small{color:#677b90;font-size:.77rem}.admission-document-link{display:flex;align-items:center;gap:10px;margin-bottom:7px;padding:10px;border:1px solid #d7e3ed;border-radius:6px;color:#175ca8;text-decoration:none}.admission-document-link span{display:grid;flex:1}.admission-document-link small{color:#708195}.admission-timeline{display:grid;gap:10px;margin-top:14px;max-height:280px;overflow-y:auto}.admission-timeline article{padding:11px 12px;border-left:3px solid #2d78bc;background:#f7fafc}.admission-timeline time{display:block;margin-top:2px;color:#718297;font-size:.72rem}.admission-timeline p{margin:6px 0 0;color:#334a61;font-size:.84rem}.admission-status-9{background:#fff4d7;color:#8a5a00}.admission-status-11,.admission-status-7{background:#fde9e9;color:#a42d2d}.admission-status-4,.admission-status-5,.admission-status-6{background:#e5f6ed;color:#08774d}@media(max-width:820px){.admission-queue-toolbar,.admission-review-summary,.admission-review-grid{grid-template-columns:1fr}}.admissions-form{display:grid;gap:18px}.admissions-form-section{border-top:1px solid #dce6ef;padding-top:18px}.admissions-form-section>div:first-child h3{margin:0;color:#182c42}.admissions-form-section>div:first-child p{margin:4px 0 14px;color:#66788b;font-size:.85rem}.admissions-class-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.admissions-class-grid article{border:1px solid #d7e3ed;border-radius:6px;padding:12px;background:#fafcff}.admissions-class-grid article.selected{border-color:#70a5dc;background:#f1f7fd}.admissions-class-grid article>label{display:flex;gap:10px;align-items:center;color:#20344a}.admissions-age-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.admissions-age-grid label{display:grid;gap:5px;color:#617388;font-size:.73rem}.admissions-age-grid input{min-width:0;width:100%}.admissions-document-row{display:grid;grid-template-columns:1fr 1.4fr auto auto;gap:10px;align-items:center;margin-top:10px}.admissions-document-row>label{display:flex;align-items:center;gap:7px;white-space:nowrap}.status-badge.status-open{color:#08795d;background:#e4f6ef}.status-badge.status-draft{color:#956100;background:#fff4d1}.status-badge.status-closed,.status-badge.status-archived{color:#5c6876;background:#edf1f5}@media(max-width:900px){.admissions-metrics{grid-template-columns:repeat(2,1fr)}.admissions-class-grid,.admissions-document-row{grid-template-columns:1fr}}@media(max-width:560px){.admissions-metrics,.admissions-age-grid{grid-template-columns:1fr}}.admission-screening-panel .section-heading{align-items:center}.admission-screening-table td small{display:flex;align-items:center;gap:4px}.admission-screening-table td:nth-child(3){min-width:190px}.admission-screening-table td:nth-child(4){min-width:150px}.empty-state.compact{min-height:120px;padding:24px}.empty-state.compact>svg{color:#2364aa}.admission-assessments{padding:17px;border:1px solid #cfe0ed;border-radius:6px;background:#f8fbfd}.admission-assessment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.admission-assessment-grid>article{display:grid;gap:13px;padding:15px;border:1px solid #d7e3ed;border-radius:6px;background:#fff}.admission-assessment-grid header,.admission-assessment-grid footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.admission-assessment-grid header>div{display:grid;gap:3px}.admission-assessment-grid header span,.admission-assessment-grid footer small{color:#687b8e;font-size:.76rem}.assessment-result{padding:6px 9px;border-radius:5px;white-space:nowrap;font-weight:700}.assessment-result.pass{color:#087553;background:#e8f7f0}.assessment-result.below{color:#9c3b22;background:#fff0eb}.screening-plan-form .modal-intro{margin:0}.screening-question-picker{display:grid;gap:12px;padding:16px;border:1px solid #d5e2ed;border-radius:6px;background:#f8fbfd}.screening-question-picker .section-heading{align-items:center}.screening-question-picker h3{margin:0}.screening-question-picker p{margin:4px 0 0;color:#687b8e;font-size:.82rem}.selection-count{padding:6px 9px;color:#15589e;background:#e7f2fd;border-radius:5px;font-size:.78rem;font-weight:700}.screening-question-list{display:grid;gap:8px;max-height:360px;overflow:auto;padding-right:3px}.screening-question-list>article{display:grid;grid-template-columns:minmax(0,1fr) 110px;align-items:center;gap:12px;padding:11px;border:1px solid #d9e4ed;border-radius:6px;background:#fff}.screening-question-list>article.selected{border-color:#78aadb;background:#f0f7fe}.screening-question-list>article>label:first-child{display:flex;align-items:flex-start;gap:10px;min-width:0}.screening-question-list>article>label:first-child span{display:grid;gap:3px;min-width:0}.screening-question-list small{color:#6c7e90;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.question-points{display:grid;gap:4px;color:#607489;font-size:.72rem}.question-points input{min-width:0;width:100%}.compact-check{padding-top:0}@media(max-width:1040px){.admission-review-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.admission-assessment-grid{grid-template-columns:1fr}}@media(max-width:620px){.admission-review-summary{grid-template-columns:1fr}.screening-question-list>article{grid-template-columns:1fr}.admission-assessment-grid header,.admission-assessment-grid footer{align-items:flex-start;flex-direction:column}}.admission-offer-workflow{display:grid;gap:15px;padding:17px;border:1px solid #d7e3ed;border-radius:6px;background:#fffdf7}.offer-issue-grid{display:grid;grid-template-columns:240px minmax(0,1fr);gap:12px;align-items:end}.offer-terms{grid-row:auto}.offer-issue-action{grid-column:1/-1;display:flex;align-items:center;justify-content:flex-end;gap:18px;min-width:0;padding-top:12px;border-top:1px solid #e4e9e7}.offer-issue-action small{flex:1 1 auto;min-width:0;margin-right:auto;color:#6d7f91;line-height:1.45}.offer-issue-action .primary-button{width:auto;min-width:190px;max-width:100%;flex:0 0 auto;justify-content:center}.issued-offer-card{display:grid;gap:13px;padding:15px;border:1px solid #d8e4ee;border-left:4px solid #1f66b1;border-radius:6px;background:#fff}.issued-offer-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.issued-offer-heading>div{display:grid;gap:3px}.issued-offer-heading>div span{color:#687b8e;font-size:.76rem}.issued-offer-heading>div strong{font-size:1.05rem}.issued-offer-card dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:0}.issued-offer-card dl div{display:grid;gap:3px;padding:10px;background:#f7fafc;border:1px solid #e0e8ef;border-radius:5px}.issued-offer-card dt{color:#6b7c8f;font-size:.72rem;text-transform:uppercase}.issued-offer-card dd{margin:0;color:#172c42;font-weight:700}.issued-offer-card>p{margin:0;color:#53677b;line-height:1.55}.issued-offer-card>button{justify-self:start}.enrollment-conversion{display:grid;gap:13px;padding:15px;border:1px solid #bfe0d0;border-radius:6px;background:#f3fbf7}.enrollment-conversion h4,.enrollment-conversion p{margin:0}.enrollment-conversion p{margin-top:4px;color:#607487;font-size:.82rem}.enrollment-conversion>button{justify-self:end}.enrollment-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px;flex-wrap:wrap}.admission-number-reservation-status{display:flex;align-items:center;gap:11px;padding:12px 14px;border:1px solid #e3c775;border-radius:6px;background:#fffaf0;color:#5e4a13}.admission-number-reservation-status.ready{border-color:#9dd8bb;background:#f0faf5;color:#176747}.admission-number-reservation-status svg{flex:0 0 auto}.admission-number-reservation-status div{display:grid;gap:2px}.admission-number-reservation-status span{color:#66788b;font-size:.78rem}.admission-analytics-modal{display:grid;gap:18px}.admission-analytics-toolbar{display:flex;justify-content:space-between;align-items:end;gap:14px}.admission-analytics-toolbar .field{width:min(420px,100%)}.admission-analytics-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.admission-analytics-summary article{display:grid;gap:5px;min-height:82px;padding:14px;border:1px solid #dbe6ef;border-radius:6px;background:#f7fafc}.admission-analytics-summary article:nth-child(2),.admission-analytics-summary article:nth-child(5){background:#f2f8ff}.admission-analytics-summary article:nth-child(4){background:#f0faf5}.admission-analytics-summary span{color:#66788b;font-size:.78rem}.admission-analytics-summary strong{color:#142a42;font-size:1.45rem}.admission-analytics-section{display:grid;gap:13px;padding-top:4px}.admission-funnel{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.admission-funnel article{display:grid;gap:7px}.admission-funnel article>div:first-child{display:flex;justify-content:space-between;gap:8px;color:#24384e}.admission-funnel-track{height:8px;overflow:hidden;border-radius:4px;background:#e8eef4}.admission-funnel-track span{display:block;height:100%;border-radius:inherit;background:#2671bf}.admission-funnel small{color:#718196;font-size:.72rem}.analytics-warning{color:#a35d00;font-weight:700}.capacity-value{display:inline-flex;min-width:30px;justify-content:center;padding:4px 8px;border-radius:12px;background:#e5f6ed;color:#08724b;font-weight:700}.capacity-value.full{background:#fee9e8;color:#a52e29}@media(max-width:900px){.admission-analytics-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.admission-funnel{grid-template-columns:1fr}}@media(max-width:560px){.admission-analytics-toolbar{align-items:stretch;flex-direction:column}.admission-analytics-toolbar .field{width:100%}.admission-analytics-summary{grid-template-columns:1fr}.enrollment-actions{align-items:stretch;flex-direction:column}.enrollment-actions button{width:100%}}.enrollment-complete{display:flex;align-items:center;gap:12px;padding:14px;color:#087553;background:#ebf8f2;border:1px solid #bde1d0;border-radius:6px}.enrollment-complete>div{display:grid;gap:3px}.enrollment-complete span{color:#587468;font-size:.79rem}.enrollment-credentials{display:grid;gap:8px;padding:15px;border:1px solid #d8d3f1;border-radius:6px;background:#f8f7ff}.enrollment-credentials article{display:grid;grid-template-columns:1fr 1.1fr 1fr;gap:10px;align-items:center;padding:9px 11px;background:#fff;border:1px solid #e3e0f2;border-radius:5px}.enrollment-credentials span{color:#66788b;font-size:.78rem}.enrollment-credentials code{overflow-wrap:anywhere;color:#174f91;font-weight:700}.applicant-offer-card{width:min(760px,100%);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px auto 0;padding:18px;text-align:left;border:1px solid #c8dced;border-radius:7px;background:#f8fbfe}.applicant-offer-card>div:not(.offer-actions){display:grid;gap:4px}.applicant-offer-card span{color:#667a8f;font-size:.76rem;text-transform:uppercase}.applicant-offer-card>p,.applicant-offer-card .offer-actions{grid-column:1/-1}.applicant-offer-card>p{margin:0;color:#52677b;line-height:1.55}.offer-actions{display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap}.secondary-button.danger{color:#a52932;border-color:#e6bec2;background:#fff8f8}.accepted-offer-actions{display:grid;justify-items:center;gap:10px;margin-top:15px}.accepted-offer-actions p{margin:0;color:#617488}@media(max-width:760px){.offer-issue-grid{grid-template-columns:1fr}.offer-terms{grid-row:auto}.offer-issue-action{align-items:flex-start;flex-direction:column}.issued-offer-card dl{grid-template-columns:1fr}.enrollment-credentials article{grid-template-columns:1fr}.applicant-offer-card{grid-template-columns:1fr}.applicant-offer-card>p,.applicant-offer-card .offer-actions{grid-column:1}.offer-actions{justify-content:stretch}.offer-actions button{width:100%;justify-content:center}}.public-admissions{min-height:100vh;background:#f2f6fa;color:#13263b}.public-admission-header{min-height:108px;padding:20px clamp(22px,5vw,72px);display:flex;align-items:center;justify-content:space-between;gap:24px;background:#fff;border-bottom:1px solid #d9e4ee}.public-school-brand{display:flex;align-items:center;gap:14px}.public-school-brand img,.public-school-brand>span{width:62px;height:62px;object-fit:contain;border:1px solid #d6e2ec;border-radius:7px;padding:5px;background:#fff;display:grid;place-items:center;font-weight:800;color:var(--admission-brand)}.public-school-brand div,.public-admission-header>div:last-child{display:flex;flex-direction:column;gap:3px}.public-school-brand strong{font-size:20px}.public-school-brand small,.public-admission-header small{color:#66788b}.public-admission-header>div:last-child{text-align:right}.public-admission-header>div:last-child>span{font-size:11px;font-weight:800;color:var(--admission-brand)}.public-admission-shell{width:min(1180px,calc(100% - 32px));margin:32px auto 60px}.applicant-auth{display:grid;grid-template-columns:minmax(0,1fr) 440px;gap:64px;align-items:start;padding:42px;background:#fff;border:1px solid #d9e4ee;border-top:4px solid var(--admission-brand);border-radius:8px;box-shadow:0 14px 35px #223c5614}.applicant-auth h1,.application-submitted h1{font-size:34px;margin:8px 0 10px}.applicant-auth>div p{max-width:560px;color:#607286;line-height:1.7}.applicant-auth form{display:grid;gap:16px;padding:26px;background:#f8fafc;border:1px solid #dbe5ee;border-radius:7px}.password-input{display:grid;grid-template-columns:1fr 48px;border:1px solid #cbd9e6;border-radius:7px;background:#fff;overflow:hidden}.password-input input{border:0!important}.password-input button{border:0;background:transparent;color:#52677b;display:grid;place-items:center}.password-input svg{width:19px}.primary-button.full{width:100%;justify-content:center}.text-button{border:0;background:transparent;color:#1756a9;font-weight:700;cursor:pointer;padding:8px}.text-button.danger{color:#b4232d}.admission-workspace{display:grid;gap:20px}.admission-workspace-bar,.admission-form-card,.application-submitted{background:#fff;border:1px solid #d9e4ee;border-radius:8px}.admission-workspace-bar{padding:16px 20px;display:flex;justify-content:space-between;align-items:center}.admission-workspace-bar>div{display:grid;gap:2px}.admission-workspace-bar small{color:#687b8d}.application-progress{display:grid;grid-template-columns:repeat(3,1fr);background:#e7edf3;border-radius:7px;overflow:hidden}.application-progress span{padding:12px;text-align:center;font-weight:700;color:#6b7d8e;border-right:1px solid #fff}.application-progress span.active{background:#e4f1ff;color:#14569f}.admission-form-card{padding:26px}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid .wide{grid-column:span 2}.guardian-entry{margin-top:18px;padding:18px;border:1px solid #dbe5ee;border-radius:7px;background:#fafcfe}.guardian-entry-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.check-field{display:flex;align-items:center;gap:10px;padding-top:27px;font-weight:700}.admission-primary-action,.admission-submit-row{display:flex;justify-content:flex-end}.document-upload-list{display:grid;gap:10px;margin-top:18px}.document-upload-list>label{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;border:1px solid #d6e2ec;border-radius:7px;cursor:pointer}.document-upload-list>label.uploaded{border-color:#8fcbb5;background:#f0faf6}.document-upload-list>label>span{display:flex;align-items:center;gap:12px}.document-upload-list>label>span>span{display:grid}.document-upload-list small{color:#6a7d8f}.document-upload-list input{max-width:280px}.application-submitted{padding:54px;text-align:center;border-top:4px solid #16845b}.application-submitted>svg{width:56px;height:56px;color:#16845b}.application-submitted p{max-width:680px;margin:0 auto;line-height:1.7;color:#607286}.draft-number{padding:7px 10px;background:#fff4d6;color:#765800;border-radius:5px;font-weight:700}.public-admission-footer{padding:22px clamp(22px,5vw,72px);display:flex;justify-content:space-between;gap:20px;color:#627588;border-top:1px solid #d9e4ee;background:#fff}.admission-unavailable{width:min(600px,calc(100% - 32px));margin:120px auto;padding:40px;background:#fff;border:1px solid #d9e4ee;border-radius:8px;text-align:center}.admission-fee-rule{padding:12px 14px;border:1px solid #d7e3ed;border-radius:7px;background:#f8fbfd}.admission-fee-rule>span{display:grid;gap:3px}.admission-fee-rule small{color:#687b8e;font-weight:400}.admission-payment-card{display:grid;gap:18px;border-top:4px solid var(--admission-brand)}.admission-payment-card.paid{border-color:#92cdb4;background:#f5fcf8}.payment-complete-icon{width:34px;height:34px;color:#11845c}.admission-gateway-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.admission-gateway-options button{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid #d4e0ea;border-radius:7px;background:#fff;text-align:left;color:#17304a}.admission-gateway-options button.selected{border-color:var(--admission-brand);box-shadow:0 0 0 2px color-mix(in srgb,var(--admission-brand) 18%,transparent)}.admission-gateway-options button>span{display:grid;gap:2px}.admission-gateway-options small,.admission-payment-reference small{color:#687b8e}.admission-payment-reference{display:grid;gap:4px;padding:12px 14px;border:1px solid #dce6ee;border-radius:7px;background:#f8fafc}.admission-payment-reference span{font-size:.76rem;color:#687b8e;text-transform:uppercase;font-weight:700}.admission-payment-reference strong{overflow-wrap:anywhere}.public-admissions .field>span b,.public-admissions .document-upload-list b{color:var(--danger)}.public-admissions .field:has(:is(input,select,textarea)[required])>span b{display:none}.admission-existing-account{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;align-items:start;padding:14px;border:1px solid #8bcdb4;border-left:4px solid #16845b;border-radius:7px;background:#f0faf6;color:#1c513f}.admission-existing-account>svg{width:23px;height:23px;margin-top:1px;color:#16845b}.admission-existing-account>div{display:grid;gap:3px}.admission-existing-account strong{font-size:14px}.admission-existing-account span,.admission-existing-account small{line-height:1.45}.admission-existing-account span{color:#315f50}.admission-existing-account small{color:#55786d}@media(max-width:800px){.public-admission-header{align-items:flex-start;flex-direction:column}.public-admission-header>div:last-child{text-align:left}.applicant-auth{grid-template-columns:1fr;gap:24px;padding:24px}.form-grid.three{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.admission-form-card{padding:18px}.public-admission-footer{flex-direction:column}.document-upload-list>label{align-items:flex-start;flex-direction:column}.document-upload-list input{max-width:100%}}.fees-control-summary{margin-bottom:18px;grid-template-columns:repeat(2,minmax(0,1fr))}.payroll-control-card{display:grid;gap:16px;margin:14px 0 18px;padding:18px 0;border-top:1px solid #d8e4ee;border-bottom:1px solid #d8e4ee;background:linear-gradient(90deg,#f5f9fd,#fffdf5)}.payroll-control-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:0 18px}.payroll-control-heading>div:first-child,.payroll-control-state{display:grid;gap:4px}.payroll-control-heading strong{overflow-wrap:anywhere}.payroll-control-heading small,.payroll-control-state>span{color:var(--muted)}.payroll-control-state{justify-items:end}.payroll-control-state>span{display:inline-flex;align-items:center;gap:6px;font-size:.82rem}.payroll-control-timeline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #dce6ee;border-bottom:1px solid #dce6ee;background:#ffffffc7}.payroll-control-timeline>div{display:grid;grid-template-columns:22px minmax(0,1fr);gap:2px 8px;min-width:0;padding:13px 16px;border-right:1px solid #dce6ee}.payroll-control-timeline>div:last-child{border-right:0}.payroll-control-timeline>div>span{grid-row:1 / span 2;color:#7a8998}.payroll-control-timeline>div.complete>span{color:#14835c}.payroll-control-timeline small{color:var(--muted);white-space:normal}.payroll-milestone-dot{display:block;width:12px;height:12px;margin:2px;border:2px solid #a9b7c4;border-radius:50%}.payroll-workflow-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;padding:0 18px}.payroll-workflow-form{gap:18px}.payroll-workflow-context,.payroll-history-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px;border:1px solid #dbe6ef;border-radius:7px;background:#f7fafc}.payroll-workflow-context>div,.payroll-history-summary>div{display:grid;gap:4px;min-width:0}.payroll-workflow-context strong,.payroll-history-summary strong{overflow-wrap:anywhere}.payroll-workflow-context span:not(.status-pill),.payroll-history-summary span:not(.status-pill){color:var(--muted);font-size:.78rem;font-weight:650;text-transform:uppercase}.payroll-workflow-message{margin:0;color:#52677a;line-height:1.55}.payroll-history-summary{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:16px}@media(max-width:900px){.payroll-control-timeline,.payroll-history-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.payroll-control-timeline>div:nth-child(2){border-right:0}}@media(max-width:620px){.payroll-control-heading{align-items:stretch;flex-direction:column}.payroll-control-state{justify-items:start}.payroll-control-timeline,.payroll-workflow-context,.payroll-history-summary{grid-template-columns:1fr}.payroll-control-timeline>div{border-right:0}.payroll-workflow-actions>button{width:100%;justify-content:center}}.fees-control-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.fees-control-columns>div{min-width:0}.fees-control-columns h4{margin:0 0 10px;font-size:.95rem}@media(max-width:980px){.fees-control-columns,.fees-control-summary{grid-template-columns:1fr}}.assessment-readiness-panel{display:grid;gap:16px}.assessment-readiness-summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;padding:16px;border:1px solid #cfddea;border-radius:7px}.assessment-readiness-summary.ready{border-color:#b9dfcf;background:#f3fbf7;color:#176d51}.assessment-readiness-summary.blocked{border-color:#edc5c8;background:#fff7f7;color:#9f2d35}.assessment-readiness-summary-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:6px;background:#ffffffc7}.assessment-readiness-summary strong,.assessment-readiness-check strong{display:block;color:#172c43}.assessment-readiness-summary p,.assessment-readiness-check p{margin:4px 0 0;color:#5e7184;line-height:1.45}.assessment-lock-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border:1px solid currentColor;border-radius:999px;font-size:.76rem;font-weight:700}.assessment-readiness-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.assessment-readiness-metrics article{display:grid;gap:4px;min-width:0;padding:12px 14px;border:1px solid #d8e3ed;border-radius:6px;background:#f8fafc}.assessment-readiness-metrics article.passed{background:#f2faf6;border-color:#c9e6d8}.assessment-readiness-metrics article.warning{background:#fffaf0;border-color:#ecd9a8}.assessment-readiness-metrics article.blocked{background:#fff5f5;border-color:#edc8cb}.assessment-readiness-metrics span{color:#6b7e90;font-size:.76rem;font-weight:700;text-transform:uppercase}.assessment-readiness-metrics strong{color:#172c43;font-size:1.35rem}.assessment-readiness-list{display:grid;gap:8px}.assessment-readiness-check{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:12px;padding:13px 14px;border:1px solid #d8e3ed;border-left-width:4px;border-radius:6px;background:#fff}.assessment-readiness-check.passed{border-left-color:#32a47b}.assessment-readiness-check.warning{border-left-color:#d89f25}.assessment-readiness-check.blocked{border-left-color:#ca4b54}.assessment-readiness-check.passed .assessment-readiness-check-icon{color:#20815f}.assessment-readiness-check.warning .assessment-readiness-check-icon{color:#ad7614}.assessment-readiness-check.blocked .assessment-readiness-check-icon{color:#b23842}.assessment-readiness-status{color:#607386;font-size:.74rem;font-weight:750;text-transform:uppercase}.assessment-content-lock-note{max-width:360px;padding:10px 12px;border:1px solid #d8e3ed;border-radius:6px;background:#f7f9fb;color:#5b6f82;font-size:.82rem;line-height:1.45}@media(max-width:760px){.assessment-readiness-summary,.assessment-readiness-check{grid-template-columns:auto minmax(0,1fr)}.assessment-lock-badge,.assessment-readiness-status{grid-column:2;justify-self:start}.assessment-readiness-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}.library-workspace{display:grid;gap:10px;min-width:0}.library-shell-header{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 10px 28px #19304e0b}.library-commandbar{display:flex;min-height:76px;align-items:center;justify-content:space-between;gap:22px;padding:12px 15px}.library-title-lockup{display:flex;min-width:0;align-items:center;gap:12px}.library-title-icon{display:grid;flex:0 0 auto;width:42px;height:42px;place-items:center;border-radius:7px;background:#eaf4fd;color:#1760aa}.library-title-lockup>div{display:grid;min-width:0;gap:2px}.library-title-lockup h1{margin:0;color:var(--ink);font-size:1.16rem;line-height:1.2}.library-title-lockup p{margin:0;overflow:hidden;color:var(--muted);font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.library-header-actions{display:flex;flex:0 0 auto;align-items:center;gap:8px}.library-availability{display:inline-flex;min-height:36px;align-items:center;gap:6px;padding:0 10px;border:1px solid #cce7da;border-radius:6px;background:#f0faf5;color:#39705a;font-size:.75rem;white-space:nowrap}.library-availability strong{color:#147650}.library-tabs{display:flex;gap:3px;padding:5px 7px 7px;overflow-x:auto;border-top:1px solid #e4eaf0;background:#f8fafc}.library-tabs button{display:inline-flex;flex:1 0 auto;min-width:max-content;min-height:37px;align-items:center;justify-content:center;gap:6px;padding:0 10px;border:1px solid transparent;border-radius:5px;background:transparent;color:#5f7184;font:inherit;font-size:.76rem;font-weight:680;white-space:nowrap;cursor:pointer}.library-tabs button:hover{border-color:#d6e3ed;background:#fff;color:var(--ink)}.library-tabs button.active{border-color:var(--brand-blue);color:#fff;background:var(--brand-blue)}.library-tabs button em{display:inline-grid;min-width:20px;height:20px;place-items:center;padding:0 5px;border-radius:10px;background:#e8eef4;color:#52677b;font-size:.66rem;font-style:normal}.library-tabs button.active em{background:#fff3;color:#fff}.library-tab-content,.library-overview{display:grid;min-width:0;gap:12px}.library-overview-top{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(290px,.72fr);gap:12px}.library-overview-lead{display:grid;align-content:start;gap:12px;min-width:0}.library-overview-heading{display:flex;min-height:56px;align-items:center;justify-content:space-between;gap:18px;padding:0 2px}.library-overview-heading h2,.library-attention-panel h2{margin:2px 0 0;color:var(--ink);font-size:1rem}.library-overview-heading p{margin:3px 0 0;color:var(--muted);font-size:.76rem}.library-availability-meter{display:grid;flex:0 0 150px;gap:6px}.library-availability-meter>div{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:.7rem}.library-availability-meter strong{color:#157a53;font-size:.82rem}.library-meter-track{height:6px;overflow:hidden;border-radius:3px;background:#e4ebf0}.library-meter-track i{display:block;height:100%;border-radius:inherit;background:#25a26d}.library-primary-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.library-metric{display:grid;grid-template-columns:38px minmax(0,1fr) auto;min-height:82px;align-items:center;gap:11px;padding:12px 13px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--ink);text-align:left;cursor:pointer;box-shadow:0 7px 20px #19304e09}.library-metric:hover{border-color:#9fc4e3;box-shadow:0 9px 24px #194d7a14}.library-metric>svg{color:#8190a0}.library-metric-icon{display:grid;width:38px;height:38px;place-items:center;border-radius:6px;background:#edf5ff;color:#1760aa}.library-metric.green .library-metric-icon{background:#e8f8ef;color:#148354}.library-metric.gold .library-metric-icon{background:#fff5d9;color:#9d6a00}.library-metric.teal .library-metric-icon{background:#e8f7f8;color:#157e87}.library-metric-copy{display:grid;min-width:0;gap:2px}.library-metric-copy small{color:var(--muted);font-size:.72rem}.library-metric-copy strong{color:var(--ink);font-size:1.3rem;line-height:1}.library-metric-copy em{overflow:hidden;color:#728295;font-size:.68rem;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.library-attention-panel{min-width:0;overflow:hidden;border:1px solid #d9e3eb;border-radius:7px;background:#fff}.library-attention-panel>header{display:flex;min-height:58px;align-items:center;justify-content:space-between;gap:12px;padding:10px 13px;border-bottom:1px solid #e6ebef;background:#fffaf0;color:#9a6700}.library-attention-panel>div{display:grid}.library-attention-panel button{display:grid;grid-template-columns:32px minmax(0,1fr) auto 15px;min-height:58px;align-items:center;gap:9px;padding:9px 12px;border:0;border-top:1px solid #ebeff3;background:#fff;color:var(--ink);text-align:left;cursor:pointer}.library-attention-panel button:first-child{border-top:0}.library-attention-panel button:hover{background:#f8fbfd}.library-attention-panel button>span:nth-child(2){display:grid;min-width:0;gap:2px}.library-attention-panel button strong{font-size:.78rem}.library-attention-panel button small{overflow:hidden;color:var(--muted);font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}.library-attention-panel button b{color:var(--ink);font-size:.9rem}.library-attention-panel button>svg{color:#8998a7}.library-attention-icon{display:grid;width:30px;height:30px;place-items:center;border-radius:6px;background:#eef4f8;color:#42637f}.library-attention-icon.danger{background:#fff0f1;color:#b43a46}.library-attention-icon.violet{background:#f1efff;color:#6655b5}.library-attention-icon.gold{background:#fff5d9;color:#956300}.library-circulation-strip{display:flex;min-height:64px;align-items:center;justify-content:space-between;gap:18px;padding:10px 13px;border:1px solid #d5e2eb;border-left:4px solid var(--school-accent, var(--brand-gold));border-radius:7px;background:#f8fbfd}.library-circulation-title{display:flex;min-width:0;align-items:center;gap:10px}.library-circulation-title>span{display:grid;width:36px;height:36px;flex:0 0 auto;place-items:center;border-radius:6px;background:#eaf4fd;color:#1760aa}.library-circulation-title>div{display:grid;min-width:0;gap:2px}.library-circulation-title small{color:#667a8d;font-size:.67rem;font-weight:750}.library-circulation-title strong{color:var(--ink);font-size:.9rem}.library-overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.library-panel{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:#fff}.library-panel-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:54px;padding:9px 13px;border-bottom:1px solid var(--line);background:#fbfdff}.library-panel-heading h2{margin:0;font-size:1rem}.library-panel-link{display:inline-flex;align-items:center;gap:5px;padding:7px 3px;border:0;background:transparent;color:#1760aa;font:inherit;font-size:.72rem;font-weight:700;cursor:pointer}.library-panel .table-shell{overflow-x:auto}.library-panel table{width:100%;border-collapse:collapse}.library-panel th{padding:11px 14px;background:#f5f8fb;color:#52667d;font-size:.69rem;text-align:left;text-transform:uppercase}.library-panel td{padding:12px 14px;border-top:1px solid #e8eef4;color:var(--ink);vertical-align:middle}.library-panel td small{display:block;margin-top:3px;color:var(--muted);font-size:.75rem}.library-panel td.library-table-empty{height:108px;padding:20px;color:#6f8091;text-align:center}.library-table-empty strong,.library-table-empty span{display:block}.library-table-empty strong{margin-bottom:4px;color:#334b61;font-size:.8rem}.library-table-empty span{font-size:.72rem}.library-search-box,.library-scan-field{display:flex;align-items:center;gap:8px;min-width:min(340px,46vw);min-height:40px;padding:0 11px;border:1px solid #cad9e6;border-radius:6px;background:#fff;color:#65798e}.library-search-box input,.library-scan-field input{width:100%;min-width:0;padding:0;border:0;outline:0;background:transparent;font:inherit}.library-form{display:grid;gap:16px}.library-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.library-form .form-field{display:grid;gap:7px;min-width:0}.library-form .form-field>span{color:#566b82;font-size:.77rem;font-weight:700}.library-form input:not([type=checkbox]):not([type=radio]),.library-form select,.library-form textarea{width:100%;min-height:43px;padding:10px 12px;border:1px solid #c9d8e5;border-radius:6px;background:#fff;color:var(--ink);font:inherit}.library-form textarea{resize:vertical}.library-form small{color:var(--muted)}.library-check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:190px;padding:10px;overflow:auto;border:1px solid #d5e1eb;border-radius:6px}.library-check-grid label,.library-switch-row label,.library-active-check{display:flex;align-items:center;gap:9px;min-height:39px;padding:8px 10px;border:1px solid #e0e9f0;border-radius:6px;background:#f9fbfd}.library-switch-row{display:flex;flex-wrap:wrap;gap:10px}.library-scan-field{min-width:0;min-height:48px;border-color:#69a8df;box-shadow:0 0 0 3px #2381cb17}.library-borrower-results{display:grid;gap:7px;max-height:270px;overflow:auto}.library-borrower-results label{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 12px;border:1px solid #d8e3ec;border-radius:6px;cursor:pointer}.library-borrower-results label.selected{border-color:#2779be;background:#eff7ff}.library-borrower-results span{display:grid;gap:2px}.library-borrower-results small,.library-borrower-results em{color:var(--muted);font-size:.75rem;font-style:normal}.library-rule-summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px 13px;border:1px solid #bfe6d5;border-radius:6px;background:#f1fbf7;color:#17684c}.library-rule-summary.missing{border-color:#f0d79e;background:#fff9e9;color:#8a5a00}.library-rule-summary-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:6px;background:#ffffffbd}.library-rule-summary>div{display:grid;gap:2px;min-width:0}.library-rule-summary strong{color:var(--ink);font-size:.88rem}.library-rule-summary small{color:var(--muted);font-size:.76rem}.library-rule-summary .secondary-action{white-space:nowrap}.library-context-card{display:grid;gap:3px;padding:14px;border-left:3px solid var(--brand-blue);background:#f3f8fd}.library-setup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.library-setup-panel{overflow:hidden;border:1px solid var(--line);border-radius:7px;background:#fff}.library-setup-panel>header{display:flex;min-height:54px;justify-content:space-between;align-items:center;padding:9px 13px;border-bottom:1px solid var(--line);background:#f8fbfd}.library-setup-panel>header>div{display:grid;gap:2px}.library-setup-panel h2{margin:0;font-size:.94rem}.library-setup-panel>header span{color:var(--muted);font-size:.68rem}.library-setup-row{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:12px 15px;border:0;border-top:1px solid #edf1f5;background:#fff;text-align:left;cursor:pointer}.library-setup-row:hover{background:#f7fbff}.library-setup-row span{display:grid;gap:2px}.library-setup-row small{color:var(--muted)}.library-setup-row em{color:#7b8794;font-size:.72rem;font-style:normal}.library-setup-row em.active{color:#0c8457}.library-setup-empty{min-height:92px;display:grid;place-items:center;padding:18px;color:var(--muted);font-size:.76rem;text-align:center}.library-stocktake-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.library-stocktake-summary>*{padding:13px;border:1px solid #d9e3ec;border-radius:6px;background:#f8fbfd;text-align:center}.library-stocktake-scan{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;margin:15px 0;padding:12px;border:1px solid #bcd6ea;border-radius:7px;background:#f1f8fe}.library-stocktake-scan input{min-height:42px;padding:8px 10px;border:1px solid #aac9e2;border-radius:6px}.library-reading-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px}.library-reading-card{display:grid;gap:13px;padding:16px;border:1px solid #dbe5ee;border-top:3px solid var(--school-primary, var(--brand-blue));border-radius:7px;background:#fff}.library-reading-card h3{margin:3px 0;font-size:1rem}.library-reading-card p{margin:0;color:var(--muted)}.library-reading-card ul{display:grid;gap:5px;margin:0;padding:0;list-style:none}.library-reading-card li{display:flex;justify-content:space-between;gap:8px;padding:7px 0;border-top:1px solid #edf1f4;font-size:.8rem}.library-reading-card li span{color:var(--muted)}.library-empty-state{display:flex;min-height:180px;align-items:center;justify-content:center;gap:12px;padding:28px;color:#6f8193}.library-empty-state>div{display:grid;gap:3px}.library-empty-state strong{color:#2c4359}.library-empty-state span{font-size:.76rem}.library-book-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:330px;padding:10px;overflow:auto;border:1px solid #d4e0ea;border-radius:6px}.library-book-picker label{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;padding:10px;border:1px solid #e1e9ef;border-radius:6px}.library-book-picker span{display:grid;gap:3px}.library-book-picker small{color:var(--muted)}.danger-text{color:#ae3542!important}@media(max-width:1120px){.library-overview-top{grid-template-columns:1fr}.library-attention-panel>div{grid-template-columns:repeat(2,minmax(0,1fr))}.library-attention-panel button:nth-child(2){border-top:0}.library-attention-panel button:nth-child(2n){border-left:1px solid #ebeff3}.library-reading-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.library-rule-summary{grid-template-columns:auto minmax(0,1fr)}.library-rule-summary .secondary-action{grid-column:1 / -1;width:100%}.library-commandbar,.library-circulation-strip,.library-panel-heading{align-items:stretch;flex-direction:column}.library-commandbar{gap:11px}.library-title-lockup p{white-space:normal}.library-header-actions{flex-wrap:wrap}.library-header-actions .primary-action{flex:1 1 auto}.library-refresh-action{width:42px;justify-content:center}.library-refresh-action:not(:hover){font-size:0;gap:0}.library-tabs button{flex:0 0 auto}.library-primary-metrics,.library-overview-grid,.library-setup-grid,.library-reading-grid,.library-form-grid,.library-book-picker,.library-attention-panel>div{grid-template-columns:1fr}.library-attention-panel button:nth-child(2){border-top:1px solid #ebeff3}.library-attention-panel button:nth-child(2n){border-left:0}.library-overview-heading{align-items:stretch;flex-direction:column}.library-availability-meter{width:100%;flex-basis:auto}.library-circulation-strip .toolbar-actions{width:100%}.library-circulation-strip .toolbar-actions button{flex:1 1 auto}.library-search-box{min-width:100%}.library-check-grid{grid-template-columns:1fr 1fr}}.library-patron-view{display:grid;gap:14px;min-width:0}.library-patron-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.library-patron-metric{display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:11px;min-height:96px;padding:15px;border:1px solid #d8e4ee;border-radius:7px;background:#fff;box-shadow:0 8px 24px #1b34520b}.library-patron-metric-icon{display:grid;width:40px;height:40px;place-items:center;border-radius:7px;background:#edf5ff;color:#1760aa}.library-patron-metric.green .library-patron-metric-icon{background:#e9f8f0;color:#187d56}.library-patron-metric.amber .library-patron-metric-icon{background:#fff5db;color:#9c6b09}.library-patron-metric.cyan .library-patron-metric-icon{background:#e8f7f8;color:#157e87}.library-patron-metric.rose .library-patron-metric-icon{background:#fff0f2;color:#b53c4d}.library-patron-metric>div{display:grid;gap:3px;min-width:0}.library-patron-metric p,.library-patron-metric small{margin:0;color:#64788c}.library-patron-metric p{font-size:.78rem}.library-patron-metric strong{color:#142c45;font-size:1.45rem;line-height:1.05;overflow-wrap:anywhere}.library-patron-metric strong.compact{font-size:1.12rem}.library-patron-metric small{font-size:.72rem}.library-patron-section{min-width:0;overflow:hidden;border:1px solid #d8e3ec;border-radius:7px;background:#fff}.library-patron-heading{display:flex;min-height:60px;align-items:center;justify-content:space-between;gap:16px;padding:11px 16px;border-bottom:1px solid #e3eaf0;background:#f8fbfd}.library-patron-heading>div{display:grid;gap:2px}.library-patron-heading span{color:#1760aa;font-size:.68rem;font-weight:750;text-transform:uppercase}.library-patron-heading h3{margin:0;color:#172d45;font-size:.98rem}.library-patron-heading small{color:#64788c}.library-catalogue-heading{align-items:center}.library-patron-search{display:flex;width:min(430px,52%);min-height:39px;align-items:center;gap:8px;padding:0 11px;border:1px solid #cedbe6;border-radius:6px;background:#fff;color:#718397}.library-patron-search:focus-within{border-color:#2789d6;box-shadow:0 0 0 3px #2789d61c}.library-patron-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#20364b;font:inherit;font-size:.78rem}.library-patron-catalogue{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:13px}.library-patron-book{display:grid;grid-template-columns:48px minmax(0,1fr) auto;min-width:0;align-items:center;gap:11px;padding:11px;border:1px solid #dce6ee;border-radius:7px;background:#fff}.library-patron-book-cover{display:grid;width:46px;height:54px;place-items:center;overflow:hidden;border-radius:5px;background:#eaf4fd;color:#1760aa}.library-patron-book-cover img{width:100%;height:100%;object-fit:cover}.library-patron-book-copy{display:grid;min-width:0;gap:3px}.library-patron-book-copy strong,.library-patron-book-copy span,.library-patron-book-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.library-patron-book-copy strong{color:#193149;font-size:.81rem}.library-patron-book-copy span{color:#5e7184;font-size:.72rem}.library-patron-book-copy small{color:#748598;font-size:.68rem}.library-reservation-help{margin:0;padding:11px 12px;border-left:3px solid #2589d7;background:#f1f7fc;color:#526a80;font-size:.76rem;line-height:1.5}.library-reservation-actions{align-items:end;justify-items:end}.library-text-action{padding:2px 0;border:0;background:transparent;color:#b13e4a;font:inherit;font-size:.69rem;font-weight:700;cursor:pointer}.library-text-action:hover{color:#8f2632;text-decoration:underline}.library-patron-status.pending{background:#fff4d8;color:#936400}.library-patron-loans{display:grid}.library-loan-row{display:grid;grid-template-columns:38px minmax(180px,1fr) minmax(95px,auto) minmax(95px,auto) auto;align-items:center;gap:13px;padding:13px 16px;border-top:1px solid #ebf0f4}.library-loan-row:first-child{border-top:0}.library-loan-row.overdue{background:#fffaf1}.library-loan-icon{display:grid;width:36px;height:36px;place-items:center;border-radius:6px;background:#eaf4fd;color:#1b65a8}.library-loan-row.overdue .library-loan-icon{background:#ffefd1;color:#a76c00}.library-loan-book,.library-loan-row>div:not(.library-loan-book){display:grid;gap:3px;min-width:0}.library-loan-book strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.library-loan-book span,.library-loan-row>div:not(.library-loan-book) span{color:#6b7d8f;font-size:.72rem}.library-loan-row>div:not(.library-loan-book) strong{color:#263b50;font-size:.8rem}.library-patron-status{display:inline-flex;width:fit-content;align-items:center;min-height:25px;padding:4px 8px;border-radius:999px;background:#eef3f7;color:#52687c;font-size:.68rem;font-weight:750;white-space:nowrap}.library-patron-status.current,.library-patron-status.returned{background:#e7f7ef;color:#147650}.library-patron-status.overdue{background:#fff0d5;color:#976000}.library-patron-status.ready{background:#e6f5ff;color:#116a9e}.library-patron-status.waiting{background:#f1efff;color:#5e4ea4}.library-reading-list-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px}.library-reading-list{display:grid;align-content:start;gap:12px;padding:14px;border:1px solid #dbe5ed;border-left:3px solid var(--school-accent, #f4b400);border-radius:6px;background:#fff}.library-reading-list-title{display:flex;align-items:center;gap:10px}.library-reading-list-title>span{display:grid;width:36px;height:36px;place-items:center;border-radius:6px;background:#edf5ff;color:#1760aa}.library-reading-list-title h4{margin:0 0 3px;color:#183047;font-size:.9rem}.library-reading-list-title p,.library-reading-list-description{margin:0;color:#64788c;font-size:.75rem;line-height:1.45}.library-reading-list-books{display:grid}.library-reading-list-books>div{display:grid;grid-template-columns:auto minmax(0,1fr);gap:3px 9px;padding:9px 0;border-top:1px solid #edf1f4}.library-reading-list-books span{grid-row:1 / span 2;align-self:start;min-width:72px;color:#1760aa;font-size:.65rem;font-weight:750;text-transform:uppercase}.library-reading-list-books strong{color:#21384e;font-size:.8rem}.library-reading-list-books small{color:#6b7d8f;font-size:.7rem}.library-patron-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.library-patron-compact-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 15px;border-top:1px solid #ebf0f4}.library-patron-compact-row:first-of-type{border-top:0}.library-patron-compact-row>div{display:grid;gap:3px;min-width:0}.library-patron-compact-row strong{color:#1c334a;font-size:.8rem}.library-patron-compact-row span{color:#6a7c8e;font-size:.72rem}.library-fine-amount{text-align:right}.library-fine-amount small{color:#6a7c8e;font-size:.67rem}.library-patron-history{overflow-x:auto}.library-patron-history table{width:100%;border-collapse:collapse}.library-patron-history th{padding:10px 14px;background:#f5f8fb;color:#5a6e82;font-size:.67rem;text-align:left;text-transform:uppercase}.library-patron-history td{padding:11px 14px;border-top:1px solid #e9eef3;color:#243b50;font-size:.78rem;vertical-align:middle}.library-patron-history td small{display:block;margin-top:3px;color:#708295}.library-inline-empty,.library-patron-empty{display:grid;place-items:center;color:#718397;text-align:center}.library-inline-empty{grid-template-columns:auto 1fr;justify-content:start;gap:9px;min-height:78px;padding:16px;text-align:left}.library-patron-empty{min-height:280px;padding:32px;border:1px dashed #cbd9e5;border-radius:7px;background:#f9fbfd}.library-patron-empty h3{margin:12px 0 4px;color:#21384e;font-size:1rem}.library-patron-empty p{margin:0;max-width:440px}@media(max-width:1050px){.library-patron-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.library-patron-catalogue{grid-template-columns:1fr}.library-loan-row{grid-template-columns:38px minmax(0,1fr) auto}.library-loan-row>div:not(.library-loan-book){display:none}}@media(max-width:700px){.library-patron-metrics,.library-reading-list-grid,.library-patron-columns{grid-template-columns:1fr}.library-catalogue-heading{align-items:stretch;flex-direction:column}.library-patron-search{width:100%}.library-patron-book{grid-template-columns:44px minmax(0,1fr)}.library-patron-book>button,.library-patron-book>.library-patron-status{grid-column:2}.library-loan-row{grid-template-columns:36px minmax(0,1fr)}.library-loan-row>.library-patron-status{grid-column:2}}.graduation-page{display:grid;gap:10px;min-width:0}.graduation-shell-header{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 8px 24px #1c334e0b}.graduation-commandbar{display:flex;min-height:76px;align-items:center;justify-content:space-between;gap:22px;padding:12px 15px}.graduation-title-lockup{display:flex;min-width:0;align-items:center;gap:12px}.graduation-title-icon{display:grid;flex:0 0 auto;width:42px;height:42px;place-items:center;border-radius:7px;background:#eaf4fd;color:#1760aa}.graduation-title-lockup>div{display:grid;min-width:0;gap:2px}.graduation-title-lockup h1{margin:0;color:var(--ink);font-size:1.16rem;line-height:1.2}.graduation-title-lockup p{margin:0;overflow:hidden;color:var(--muted);font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.graduation-header-actions{display:flex;flex:0 0 auto;align-items:center;gap:8px}.graduation-session-badge{display:inline-flex;min-height:36px;align-items:center;gap:7px;padding:0 10px;border:1px solid #d6e4ef;border-radius:6px;background:#f7fafc;color:#5b7185;font-size:.73rem;white-space:nowrap}.graduation-session-badge strong{color:#29435c}.graduation-tab-content{display:grid;min-width:0;gap:12px}.graduation-page-header{align-items:center;margin:0}.graduation-page-header h1{margin:3px 0 2px;font-size:1.55rem;line-height:1.2}.graduation-page-header p,.section-heading-row p,.graduation-list-toolbar p{margin:0;color:#64748b;font-size:.86rem}.graduation-tabs{display:flex;gap:3px;padding:5px 7px 7px;overflow-x:auto;border-top:1px solid #e4eaf0;background:#f8fafc}.graduation-tabs button{display:inline-flex;flex:1 0 auto;align-items:center;justify-content:center;gap:6px;min-width:max-content;min-height:37px;padding:0 10px;border:1px solid transparent;border-radius:5px;color:#5f7184;background:transparent;font:inherit;font-size:.76rem;font-weight:680;white-space:nowrap;cursor:pointer}.graduation-tabs button:hover{border-color:#d6e3ed;background:#fff;color:var(--ink)}.graduation-tabs button.active{color:#fff;border-color:var(--brand-blue);background:var(--brand-blue)}.graduation-tabs button em{display:inline-grid;min-width:20px;height:20px;place-items:center;padding:0 5px;border-radius:10px;background:#e8eef4;color:#52677b;font-size:.66rem;font-style:normal}.graduation-tabs button.active em{background:#fff3;color:#fff}.graduation-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.graduation-metric{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:11px;align-items:center;min-height:82px;padding:12px 13px;text-align:left;border:1px solid #dbe5ef;border-radius:7px;background:#fff;color:#15243a;font:inherit;cursor:pointer;box-shadow:0 7px 20px #19304e09;transition:border-color .16s ease,box-shadow .16s ease}.graduation-metric:hover{border-color:#9fc4e3;box-shadow:0 9px 24px #194d7a14}.graduation-metric-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:7px;color:#1958a6;background:#eaf3fc}.graduation-metric.green .graduation-metric-icon{color:#087c5b;background:#e5f7ef}.graduation-metric.amber .graduation-metric-icon{color:#9b6500;background:#fff5d6}.graduation-metric.red .graduation-metric-icon{color:#b42335;background:#fdecef}.graduation-metric.cyan .graduation-metric-icon{color:#08748b;background:#e5f7fa}.graduation-metric.gold .graduation-metric-icon{color:#9d6a00;background:#fff5d9}.graduation-metric>svg{color:#8190a0}.graduation-metric>span:nth-child(2){display:grid;min-width:0;gap:2px}.graduation-metric small{color:#52647a;font-size:.79rem;font-weight:650}.graduation-metric strong{margin-top:2px;font-size:1.3rem;line-height:1}.graduation-metric em{margin-top:5px;overflow:hidden;color:#75859a;font-size:.68rem;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.graduation-overview{display:grid;min-width:0;gap:12px}.graduation-overview-top{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(290px,.72fr);gap:12px}.graduation-overview-lead{display:grid;align-content:start;min-width:0;gap:12px}.graduation-overview-heading{display:flex;min-height:56px;align-items:center;justify-content:space-between;gap:18px;padding:0 2px}.graduation-overview-heading h2,.graduation-attention-panel h2{margin:2px 0 0;color:var(--ink);font-size:1rem}.graduation-overview-heading p{margin:3px 0 0;color:var(--muted);font-size:.76rem}.graduation-panel-link{display:inline-flex;flex:0 0 auto;align-items:center;gap:5px;padding:7px 3px;border:0;background:transparent;color:#1760aa;font:inherit;font-size:.72rem;font-weight:700;cursor:pointer}.graduation-panel-link:hover{color:#0f4f8b}.graduation-primary-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.graduation-attention-panel{min-width:0;overflow:hidden;border:1px solid #d9e3eb;border-radius:7px;background:#fff}.graduation-attention-panel>header{display:flex;min-height:58px;align-items:center;justify-content:space-between;gap:12px;padding:10px 13px;border-bottom:1px solid #e6ebef;background:#fffaf0;color:#9a6700}.graduation-attention-panel>div{display:grid}.graduation-attention-panel button{display:grid;grid-template-columns:32px minmax(0,1fr) auto 15px;min-height:58px;align-items:center;gap:9px;padding:9px 12px;border:0;border-top:1px solid #ebeff3;background:#fff;color:var(--ink);text-align:left;cursor:pointer}.graduation-attention-panel button:first-child{border-top:0}.graduation-attention-panel button:hover{background:#f8fbfd}.graduation-attention-panel button>span:nth-child(2){display:grid;min-width:0;gap:2px}.graduation-attention-panel button strong{font-size:.78rem}.graduation-attention-panel button small{overflow:hidden;color:var(--muted);font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}.graduation-attention-panel button b{color:var(--ink);font-size:.9rem}.graduation-attention-panel button>svg{color:#8998a7}.graduation-attention-icon{display:grid;width:30px;height:30px;place-items:center;border-radius:6px;background:#eef4f8;color:#42637f}.graduation-attention-icon.amber{background:#fff5d9;color:#956300}.graduation-attention-icon.red{background:#fff0f1;color:#b43a46}.graduation-attention-icon.blue{background:#eaf4fd;color:#1760aa}.graduation-cycle-strip{display:flex;min-height:64px;align-items:center;justify-content:space-between;gap:18px;padding:10px 13px;border:1px solid #d5e2eb;border-left:4px solid var(--school-accent, var(--brand-gold));border-radius:7px;background:#f8fbfd}.graduation-cycle-title{display:flex;min-width:0;align-items:center;gap:10px}.graduation-cycle-title>span{display:grid;width:36px;height:36px;flex:0 0 auto;place-items:center;border-radius:6px;background:#eaf4fd;color:#1760aa}.graduation-cycle-title>div{display:grid;min-width:0;gap:2px}.graduation-cycle-title small{color:#667a8d;font-size:.67rem;font-weight:750}.graduation-cycle-title strong{color:var(--ink);font-size:.9rem}.graduation-cycle-facts{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px 18px;color:#65798d;font-size:.72rem}.graduation-cycle-facts span{white-space:nowrap}.graduation-cycle-facts strong{color:#243b50}.graduation-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.graduation-panel{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:#fff}.graduation-panel-heading{display:flex;min-height:54px;align-items:center;justify-content:space-between;gap:16px;padding:9px 13px;border-bottom:1px solid var(--line);background:#fbfdff}.graduation-panel-heading h2{margin:2px 0 0;font-size:.94rem}.graduation-overview-list{display:grid}.graduation-overview-list>button{display:grid;grid-template-columns:34px minmax(0,1fr) auto 15px;min-height:58px;align-items:center;gap:10px;padding:9px 12px;border:0;border-top:1px solid #ebeff3;background:#fff;color:#243b50;text-align:left;cursor:pointer}.graduation-overview-list>button:first-child{border-top:0}.graduation-overview-list>button:hover{background:#f8fbfd}.graduation-overview-list>button>span:nth-child(2){display:grid;min-width:0;gap:2px}.graduation-overview-list>button strong{overflow:hidden;font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.graduation-overview-list>button small{overflow:hidden;color:var(--muted);font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}.graduation-overview-list>button>svg{color:#8998a7}.graduation-overview-avatar{display:grid;width:34px;height:34px;place-items:center;overflow:hidden;border-radius:6px;background:#eaf4fd;color:#1760aa;font-size:.65rem;font-weight:750}.graduation-overview-avatar img{width:100%;height:100%;object-fit:cover}.graduation-inline-empty{display:flex;min-height:116px;align-items:center;justify-content:center;gap:9px;padding:18px;color:#718397;font-size:.76rem}.graduation-candidate-section,.graduation-policy-section,.graduation-requirement-section{margin:0;padding:0;overflow:hidden}.graduation-list-toolbar,.section-heading-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 16px;border-bottom:1px solid #e2e8f0}.graduation-list-toolbar h2,.section-heading-row h2{margin:0 0 2px;font-size:1rem}.graduation-filters{display:grid;grid-template-columns:minmax(250px,1.35fr) minmax(170px,.8fr) minmax(150px,.7fr);gap:8px;width:min(760px,68%)}.graduation-filters select,.graduation-search{min-height:40px}.graduation-search{display:flex;align-items:center;gap:8px;padding:0 11px;border:1px solid #cfdbe8;border-radius:7px;background:#fff;color:#708196}.graduation-search:focus-within{border-color:#2589d7;box-shadow:0 0 0 3px #2589d71f}.graduation-search input{width:100%;min-width:0;padding:0;border:0;outline:0;background:transparent;font:inherit;font-size:.83rem}.graduation-table{width:100%;border-collapse:collapse;font-size:.79rem}.graduation-table th{padding:10px 12px;text-align:left;color:#52647a;background:#f4f7fa;border-bottom:1px solid #dbe5ef;font-size:.68rem;font-weight:750;text-transform:uppercase}.graduation-table td{padding:11px 12px;vertical-align:middle;color:#223147;border-bottom:1px solid #e7edf3}.graduation-table tbody tr:hover{background:#fbfdff}.graduation-table td>strong{display:block;font-size:.79rem}.graduation-table td>small{display:block;margin-top:3px;color:#718096;font-size:.7rem}.graduation-student-cell{display:grid;grid-template-columns:36px minmax(145px,1fr);align-items:center;gap:9px}.graduation-student-cell>img,.graduation-student-cell>span{width:36px;height:36px;border-radius:7px}.graduation-student-cell>img{object-fit:cover}.graduation-student-cell>span{display:grid;place-items:center;color:#1958a6;background:#eaf3fc;font-size:.7rem;font-weight:750}.graduation-student-cell strong,.graduation-student-cell small{display:block}.graduation-student-cell strong{overflow-wrap:anywhere}.graduation-student-cell small{margin-top:2px;color:#718096;font-size:.68rem}.graduation-check{display:inline-flex;align-items:center;gap:5px;font-size:.72rem;font-weight:650;white-space:nowrap}.graduation-check.good,.graduation-value.good{color:#087c5b}.graduation-check.bad,.graduation-value.warning{color:#a46300}.graduation-value.muted{color:#64748b}.graduation-value{font-weight:650;white-space:nowrap}.graduation-readiness-pill,.graduation-policy-pill{display:inline-flex;align-items:center;min-height:24px;padding:3px 8px;border-radius:999px;font-size:.68rem;font-weight:750;white-space:nowrap}.graduation-readiness-pill.eligible{color:#087c5b;background:#e3f6ed}.graduation-readiness-pill.warning{color:#895900;background:#fff3cf}.graduation-readiness-pill.blocked,.graduation-policy-pill.blocker{color:#ab2638;background:#fde9ed}.graduation-policy-pill.warning{color:#895900;background:#fff3cf}.graduation-policy-pill.ignore{color:#52647a;background:#edf2f7}.graduation-pagination{display:flex;align-items:center;justify-content:flex-end;gap:9px;padding:12px 16px;border-top:1px solid #e2e8f0;color:#64748b;font-size:.76rem}.graduation-pagination label{display:flex;align-items:center;gap:6px;margin-right:auto}.graduation-pagination select{min-height:34px;padding:5px 28px 5px 8px}.graduation-empty{display:grid;justify-items:center;gap:5px;min-height:170px;padding:30px 18px;text-align:center;color:#64748b}.graduation-empty svg{color:#2c77bd}.graduation-empty strong{color:#223147;font-size:.95rem}.graduation-empty span{max-width:520px;font-size:.79rem;line-height:1.5}.graduation-setup{display:grid;grid-template-columns:minmax(330px,.8fr) minmax(0,1.35fr);align-items:start;gap:14px}.graduation-policy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:15px 16px 9px}.graduation-policy{display:grid;grid-template-columns:34px 1fr;align-items:center;gap:9px;padding:11px;border:1px solid #dbe5ef;border-radius:7px;background:#fbfdff}.graduation-policy>span:first-child{display:grid;place-items:center;width:34px;height:34px;border-radius:6px;color:#1958a6;background:#eaf3fc}.graduation-policy small{display:block;margin-bottom:5px;color:#64748b;font-size:.7rem;font-weight:650}.graduation-fixed-policy{align-items:start;min-height:78px}.graduation-fixed-policy p{margin:7px 0 0;color:#64748b;font-size:.7rem;font-weight:500;line-height:1.45}.graduation-number-preview{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:5px 16px 15px;padding:11px 13px;border-left:3px solid #f7ba16;background:#fffbeb;color:#6b520b;font-size:.76rem}.graduation-number-preview strong{color:#27364b;letter-spacing:0}.graduation-review-header{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-bottom:14px;border-bottom:1px solid #e2e8f0}.graduation-review-header strong,.graduation-review-header span{display:block}.graduation-review-header span{margin-top:3px;color:#64748b;font-size:.76rem}.graduation-review-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:14px 0}.graduation-review-item{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:9px;padding:11px;border:1px solid #dbe5ef;border-radius:7px;color:#087c5b;background:#f8fcfa}.graduation-review-item.warning{color:#9a6200;background:#fffdf6}.graduation-review-item small,.graduation-review-item strong{display:block}.graduation-review-item small{color:#64748b;font-size:.67rem}.graduation-review-item strong{margin-top:3px;color:#223147;font-size:.8rem;overflow-wrap:anywhere}.graduation-issues h3,.graduation-settings-form section h3{margin:0 0 9px;color:#223147;font-size:.88rem}.graduation-issue{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px 11px;border-top:1px solid #e5eaf0}.graduation-issue>svg{color:#9a6200}.graduation-issue.blocker>svg{color:#b42335}.graduation-issue strong,.graduation-issue span{display:block}.graduation-issue strong{color:#27364b;font-size:.75rem}.graduation-issue span{margin-top:2px;color:#64748b;font-size:.72rem}.graduation-clear-state{display:flex;align-items:center;gap:8px;padding:14px;border:1px solid #cde9dd;border-radius:7px;color:#087c5b;background:#f2fbf7;font-size:.78rem;font-weight:650}.graduation-settings-form{display:grid;gap:18px}.graduation-settings-form section{padding-bottom:16px;border-bottom:1px solid #e5eaf0}.graduation-settings-form label{display:grid;gap:6px;color:#52647a;font-size:.76rem;font-weight:650}.graduation-settings-form input,.graduation-settings-form select,.graduation-settings-form textarea{width:100%;min-height:42px;font:inherit;color:#223147}.graduation-settings-form textarea{min-height:96px;resize:vertical}.graduation-toggle{display:flex!important;align-items:center;gap:9px!important;min-height:42px;padding:9px 11px;border:1px solid #d3deea;border-radius:7px;background:#fbfdff}.graduation-toggle input{width:18px;height:18px;min-height:0;accent-color:#1958a6}.graduation-record-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.graduation-record-metrics .graduation-metric{cursor:default}.graduation-record-metrics .graduation-metric:hover{transform:none}.graduation-record-search{width:min(460px,100%)}.graduation-review-pill,.graduation-clearance-pill,.graduation-document-pill{display:inline-flex;align-items:center;min-height:25px;padding:3px 9px;border-radius:999px;font-size:.68rem;font-weight:750;white-space:nowrap}.graduation-review-pill.approved,.graduation-clearance-pill.cleared,.graduation-document-pill.issued{color:#087c5b;background:#e3f6ed}.graduation-review-pill.pending,.graduation-clearance-pill.pending,.graduation-document-pill.draft{color:#895900;background:#fff3cf}.graduation-review-pill.held,.graduation-clearance-pill.blocked,.graduation-document-pill.revoked{color:#ab2638;background:#fde9ed}.graduation-clearance-pill.waived{color:#1958a6;background:#eaf3fc}.graduation-clearance-workflow,.graduation-final-review,.graduation-document-history,.graduation-document-preview{margin-top:16px;padding:15px;border:1px solid #dbe5ef;border-radius:8px;background:#fff}.graduation-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:12px;border-bottom:1px solid #e4ebf2}.graduation-section-heading h3,.graduation-document-create h3,.graduation-document-preview h3{margin:0;color:#223147;font-size:.9rem}.graduation-section-heading p,.graduation-document-create p{margin:3px 0 0;color:#64748b;font-size:.73rem;line-height:1.45}.graduation-section-heading>span{color:#52647a;font-size:.72rem;font-weight:700;white-space:nowrap}.graduation-clearance-list{display:grid}.graduation-clearance-row{display:grid;grid-template-columns:minmax(210px,1.2fr) minmax(125px,.55fr) minmax(240px,1fr) auto;align-items:end;gap:10px;padding:13px 0;border-bottom:1px solid #e7edf3}.graduation-clearance-row:last-child{border-bottom:0}.graduation-clearance-copy>span,.graduation-clearance-copy>strong,.graduation-clearance-copy>small{display:block}.graduation-clearance-copy>span{color:#1958a6;font-size:.65rem;font-weight:750;text-transform:uppercase}.graduation-clearance-copy>strong{margin-top:3px;color:#223147;font-size:.8rem}.graduation-clearance-copy>small{margin-top:3px;color:#718096;font-size:.69rem;line-height:1.4}.graduation-clearance-row label,.graduation-final-review-form label,.graduation-revocation-reason{display:grid;gap:5px;color:#52647a;font-size:.7rem;font-weight:700}.graduation-clearance-row select,.graduation-clearance-row input,.graduation-final-review-form select,.graduation-final-review-form textarea,.graduation-revocation-reason input{width:100%;min-height:40px;color:#223147;font:inherit}.graduation-clearance-action{display:flex;align-items:center;justify-content:flex-end;gap:7px;min-width:128px}.graduation-final-review{background:#fbfdff}.graduation-final-review-form{display:grid;grid-template-columns:minmax(160px,.45fr) minmax(260px,1fr);gap:12px;padding-top:14px}.graduation-final-review-form textarea{resize:vertical}.graduation-testimonial-field{grid-column:1 / -1}.graduation-review-save{display:flex;justify-content:flex-end;grid-column:1 / -1}.graduation-review-readonly{padding-top:13px;color:#52647a;font-size:.78rem}.graduation-review-readonly p{margin:0}.graduation-review-readonly blockquote{margin:10px 0 0;padding:10px 12px;border-left:3px solid #2589d7;background:#f0f7fd}.graduation-record-profile{display:grid;grid-template-columns:minmax(260px,1.35fr) repeat(3,minmax(145px,.7fr)) auto;align-items:center;gap:12px;padding:13px;border:1px solid #dbe5ef;border-radius:8px;background:#f8fbfe}.graduation-record-profile>div>small,.graduation-record-profile>div>strong{display:block}.graduation-record-profile>div>small{color:#718096;font-size:.67rem}.graduation-record-profile>div>strong{margin-top:4px;color:#223147;font-size:.78rem;overflow-wrap:anywhere}.graduation-document-create{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:14px;padding:13px 15px;border:1px solid #d4e4f3;border-left:3px solid #2589d7;background:#f6fbff}.graduation-document-create>div:last-child{display:flex;flex-wrap:wrap;gap:7px}.graduation-document-list{display:grid}.graduation-document-row{display:grid;grid-template-columns:36px minmax(220px,1fr) auto auto;align-items:center;gap:11px;padding:12px 0;border-bottom:1px solid #e7edf3}.graduation-document-row:last-child{border-bottom:0}.graduation-document-row.current{background:linear-gradient(90deg,rgba(234,243,252,.55),transparent 70%)}.graduation-document-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:7px;color:#1958a6;background:#eaf3fc}.graduation-document-copy strong,.graduation-document-copy span,.graduation-document-copy em{display:block}.graduation-document-copy strong{color:#223147;font-size:.8rem}.graduation-document-copy strong small{color:#718096;font-weight:650}.graduation-document-copy span{margin-top:3px;color:#718096;font-size:.68rem}.graduation-document-copy em{margin-top:4px;color:#ab2638;font-size:.68rem;font-style:normal}.graduation-document-badges,.graduation-document-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px}.graduation-document-actions .icon-button{display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid #d4dfeb;border-radius:7px;color:#34506d;background:#fff;cursor:pointer}.graduation-document-actions .icon-button:hover{color:#1958a6;border-color:#8bb4dc;background:#f4f9fe}.graduation-document-actions .danger-action.compact{min-height:36px;padding:0 11px}.graduation-revocation-reason{margin-top:12px}.graduation-document-preview>div{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.graduation-document-preview>div .icon-button{min-height:34px;padding:0 11px;border:1px solid #d4dfeb;border-radius:7px;background:#fff;color:#34506d;cursor:pointer}.graduation-document-preview iframe{display:block;width:100%;height:min(680px,65vh);border:1px solid #ccd8e5;background:#eef3f8}@media(max-width:1280px){.graduation-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.graduation-overview-top{grid-template-columns:1fr}.graduation-attention-panel>div{grid-template-columns:repeat(3,minmax(0,1fr))}.graduation-attention-panel button+button{border-top:0;border-left:1px solid #ebeff3}.graduation-filters{width:100%;grid-template-columns:minmax(220px,1fr) minmax(150px,.7fr) minmax(145px,.6fr)}.graduation-list-toolbar{align-items:flex-start;flex-direction:column}.graduation-review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.graduation-clearance-row{grid-template-columns:minmax(190px,1fr) minmax(125px,.55fr) minmax(210px,1fr)}.graduation-clearance-action{grid-column:3}.graduation-record-profile{grid-template-columns:minmax(260px,1fr) repeat(2,minmax(145px,.6fr))}.graduation-record-profile>:nth-child(4),.graduation-record-profile>:nth-child(5){grid-row:2}}@media(max-width:1080px){.graduation-setup{grid-template-columns:1fr}.graduation-policy-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:820px){.graduation-page-header,.graduation-commandbar,.graduation-cycle-strip,.section-heading-row{align-items:flex-start;flex-direction:column}.graduation-commandbar{gap:11px}.graduation-title-lockup p{white-space:normal}.graduation-header-actions{width:100%;flex-wrap:wrap}.graduation-session-badge{flex:1 1 auto}.graduation-tabs button{flex:0 0 auto}.graduation-overview-grid{grid-template-columns:1fr}.graduation-attention-panel>div{grid-template-columns:1fr}.graduation-attention-panel button+button{border-top:1px solid #ebeff3;border-left:0}.graduation-cycle-facts{width:100%;justify-content:flex-start}.graduation-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.graduation-filters{grid-template-columns:1fr}.graduation-policy-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.graduation-pagination{flex-wrap:wrap;justify-content:flex-start}.graduation-pagination label{width:100%}.graduation-record-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.graduation-clearance-row,.graduation-final-review-form,.graduation-record-profile,.graduation-document-row{grid-template-columns:1fr}.graduation-clearance-action{grid-column:1;justify-content:flex-start}.graduation-testimonial-field,.graduation-review-save{grid-column:1}.graduation-document-create{align-items:flex-start;flex-direction:column}.graduation-document-badges,.graduation-document-actions{justify-content:flex-start;flex-wrap:wrap}}@media(max-width:520px){.graduation-metrics,.graduation-primary-metrics,.graduation-policy-grid,.graduation-review-grid{grid-template-columns:1fr}.graduation-metric{min-height:82px}.graduation-overview-heading{align-items:flex-start;flex-direction:column;gap:7px}.graduation-issue{grid-template-columns:22px minmax(0,1fr)}.graduation-issue .graduation-policy-pill{grid-column:2;justify-self:start}.graduation-record-metrics{grid-template-columns:1fr}.graduation-section-heading{align-items:flex-start;flex-direction:column}}.alumni-directory-workspace{display:grid;gap:14px}.alumni-directory-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.alumni-directory-section{min-height:390px}.alumni-directory-filters{grid-template-columns:minmax(240px,1.4fr) repeat(3,minmax(145px,.65fr))}.alumni-directory-table td:nth-child(2) small,.alumni-directory-table td:nth-child(3) small{display:block;margin-top:3px;color:#718096;font-size:.7rem}.alumni-directory-table td:last-child{white-space:nowrap}.alumni-directory-table td:last-child .icon-button{margin-left:5px}.alumni-access-pill{display:inline-flex;align-items:center;min-height:25px;padding:4px 9px;border-radius:999px;font-size:.68rem;font-weight:750;white-space:nowrap}.alumni-access-pill.active{color:#087c5b;background:#e3f6ed}.alumni-access-pill.notconfigured{color:#895900;background:#fff3cf}.alumni-access-pill.disabled,.alumni-access-pill.reversed{color:#a83243;background:#fde9ed}.alumni-profile-hero{display:grid;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:13px;padding:14px;border:1px solid #d9e4ef;border-left:4px solid #268bd2;border-radius:8px;background:#f8fbfe}.alumni-profile-hero>img,.alumni-profile-hero>span:first-child{display:grid;place-items:center;width:64px;height:64px;border-radius:8px;object-fit:cover;color:#1958a6;background:#e8f2fb;font-weight:800}.alumni-profile-hero strong{display:block;color:#172942;font-size:1rem}.alumni-profile-hero p{margin:4px 0 0;color:#53677f;font-size:.76rem}.alumni-profile-hero small{display:block;margin-top:5px;color:#718096;font-size:.68rem}.alumni-profile-form{display:grid;gap:14px;margin-top:15px}.alumni-profile-form>label,.alumni-access-panel>label{display:grid;gap:6px;color:#53677f;font-size:.72rem;font-weight:700}.alumni-profile-form input,.alumni-profile-form select,.alumni-profile-form textarea,.alumni-access-panel input{width:100%;min-height:42px;border:1px solid #cdd9e6;border-radius:7px;background:#fff}.alumni-profile-form textarea{padding:10px 12px;resize:vertical}.alumni-privacy-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.alumni-privacy-options label{display:flex;align-items:center;gap:9px;min-height:50px;padding:10px 12px;border:1px solid #d9e4ef;border-radius:7px;color:#354a63;background:#f9fbfd;font-size:.74rem;font-weight:650}.alumni-privacy-options input{width:17px;min-height:17px;margin:0}.alumni-profile-details{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}.alumni-profile-fact{display:flex;gap:10px;min-width:0;padding:12px;border:1px solid #e0e8f0;border-radius:7px;background:#fff}.alumni-profile-fact>span{display:grid;place-items:center;width:34px;height:34px;flex:0 0 auto;border-radius:7px;color:#157b84;background:#e8f7f7}.alumni-profile-fact small,.alumni-profile-fact strong{display:block}.alumni-profile-fact small{color:#718096;font-size:.65rem}.alumni-profile-fact strong{margin-top:4px;color:#26384e;font-size:.75rem;overflow-wrap:anywhere}.alumni-biography{margin:12px 0 0;padding:12px 14px;border-left:3px solid #e5ad14;color:#40556d;background:#fffbed;font-size:.77rem;line-height:1.6}.alumni-contact-strip{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:12px;padding:10px 12px;color:#53677f;background:#f3f6f9;font-size:.7rem}.alumni-access-panel{display:grid;grid-template-columns:minmax(230px,1fr) minmax(220px,.75fr) auto;align-items:end;gap:12px;margin-top:14px;padding:14px;border:1px solid #dce5ed;border-radius:8px;background:#fbfcfd}.alumni-access-panel h3{margin:0;color:#24364d;font-size:.85rem}.alumni-access-panel p{margin:5px 0 0;color:#64748b;font-size:.71rem;line-height:1.45}.alumni-access-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px}.alumni-portal-page{display:grid;gap:14px}.alumni-portal-header{align-items:flex-end}.alumni-home-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.alumni-home-summary article{display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:11px;min-height:104px;padding:14px;border:1px solid #dbe5ef;border-radius:8px;background:#fff}.alumni-home-summary article:nth-child(1){border-top:3px solid #2589d7;background:#f8fcff}.alumni-home-summary article:nth-child(2){border-top:3px solid #169c78;background:#f7fcfa}.alumni-home-summary article:nth-child(3){border-top:3px solid #e0ac1c;background:#fffdf7}.alumni-home-summary article>span{display:grid;place-items:center;width:40px;height:40px;border-radius:8px;color:#1958a6;background:#eaf3fc}.alumni-home-summary small,.alumni-home-summary strong,.alumni-home-summary em{display:block}.alumni-home-summary small{color:#718096;font-size:.67rem}.alumni-home-summary strong{margin-top:3px;color:#1f324a;font-size:.9rem;overflow-wrap:anywhere}.alumni-home-summary em{margin-top:4px;color:#64748b;font-size:.67rem;font-style:normal}.alumni-home-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr);gap:14px}.alumni-own-profile,.alumni-documents-panel{padding:16px;border:1px solid #dbe5ef;border-radius:8px;background:#fff}.alumni-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:11px;border-bottom:1px solid #e6edf4}.alumni-section-heading h2{margin:3px 0 0;color:#1e3048;font-size:1rem}.alumni-own-profile-body{display:grid;grid-template-columns:92px minmax(0,1fr);gap:16px;margin-top:14px}.alumni-own-profile-body>img,.alumni-avatar-fallback{display:grid;place-items:center;width:92px;height:104px;border-radius:8px;object-fit:cover;color:#1958a6;background:#eaf3fc;font-size:1.2rem;font-weight:800}.alumni-own-profile dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;margin:0}.alumni-own-profile dl div{min-width:0;padding-bottom:8px;border-bottom:1px solid #edf1f5}.alumni-own-profile dt{color:#718096;font-size:.66rem;font-weight:700;text-transform:uppercase}.alumni-own-profile dd{margin:4px 0 0;color:#293c53;font-size:.76rem;font-weight:650;overflow-wrap:anywhere}.alumni-own-biography{margin:13px 0 0;color:#52647a;font-size:.76rem;line-height:1.6}.alumni-issued-document{display:grid;grid-template-columns:36px minmax(0,1fr) 34px 34px;align-items:center;gap:8px;padding:11px 0;border-bottom:1px solid #e8eef4}.alumni-issued-document:last-child{border-bottom:0}.alumni-issued-document>span{display:grid;place-items:center;width:36px;height:36px;border-radius:7px;color:#087c5b;background:#e3f6ed}.alumni-issued-document strong,.alumni-issued-document small{display:block}.alumni-issued-document strong{color:#26384e;font-size:.77rem}.alumni-issued-document small{margin-top:3px;color:#718096;font-size:.65rem}.alumni-documents-empty{display:grid;place-items:center;gap:7px;min-height:170px;color:#718096;text-align:center}.alumni-documents-empty p{max-width:300px;margin:0;font-size:.74rem;line-height:1.5}.alumni-directory-intro{display:flex;align-items:center;gap:11px;padding:13px 15px;border-left:4px solid #169c78;background:#f5fbf9}.alumni-directory-intro>span{color:#087c5b}.alumni-directory-intro h2{margin:0;color:#26384e;font-size:.88rem}.alumni-directory-intro p{margin:4px 0 0;color:#64748b;font-size:.71rem}.alumni-document-preview iframe{display:block;width:100%;height:min(760px,72vh);border:1px solid #cbd8e5;background:#eef3f8}@media(max-width:1180px){.alumni-directory-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.alumni-directory-filters{grid-template-columns:repeat(2,minmax(180px,1fr))}.alumni-directory-filters .graduation-search{grid-column:1 / -1}.alumni-profile-details{grid-template-columns:repeat(2,minmax(0,1fr))}.alumni-access-panel{grid-template-columns:1fr 1fr}.alumni-access-actions{grid-column:1 / -1;justify-content:flex-start}}@media(max-width:820px){.alumni-portal-header{align-items:flex-start}.alumni-home-summary,.alumni-home-grid{grid-template-columns:1fr}.alumni-profile-hero{grid-template-columns:58px minmax(0,1fr)}.alumni-profile-hero>img,.alumni-profile-hero>span:first-child{width:58px;height:58px}.alumni-profile-hero>.alumni-access-pill{grid-column:2;justify-self:start}.alumni-privacy-options,.alumni-access-panel{grid-template-columns:1fr}.alumni-access-actions{grid-column:1}}@media(max-width:560px){.alumni-directory-metrics,.alumni-directory-filters,.alumni-profile-details,.alumni-own-profile dl{grid-template-columns:1fr}.alumni-directory-filters .graduation-search{grid-column:1}.alumni-own-profile-body{grid-template-columns:1fr}.alumni-own-profile-body>img,.alumni-avatar-fallback{width:76px;height:82px}.alumni-issued-document{grid-template-columns:36px minmax(0,1fr) 34px}.alumni-issued-document>button:last-child{grid-column:3}}.alumni-engagement{display:grid;gap:16px;min-width:0}.alumni-engagement.embedded{gap:12px}.alumni-engagement.embedded .alumni-engagement-header{justify-content:flex-end;padding:0;border-bottom:0}.alumni-portal-page .alumni-engagement{margin-top:22px}.alumni-engagement-header,.alumni-list-toolbar,.alumni-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.alumni-engagement-header{border-bottom:1px solid #dbe5f0;padding:4px 0 15px}.alumni-engagement-header h2,.alumni-list-toolbar h3,.alumni-section-heading h3,.alumni-preferences h3{margin:3px 0 0;color:#12243c;font-size:1.2rem;line-height:1.25}.alumni-engagement-header p{margin:5px 0 0;color:#65758b}.alumni-engagement-actions,.search-inline,.alumni-detail-meta,.alumni-event-card-actions{display:flex;align-items:center;gap:8px}.alumni-engagement-tabs{display:flex;align-items:center;gap:6px;overflow-x:auto;border-bottom:1px solid #d9e4ef;padding:0 0 8px}.alumni-engagement-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;flex:0 0 auto;border:1px solid transparent;border-radius:6px;background:transparent;color:#53657b;padding:8px 12px;font-weight:650}.alumni-engagement-tabs button:hover{background:#f2f7fc;color:#1555a2}.alumni-engagement-tabs button.active{border-color:#b9d3ee;background:#eaf4ff;color:#1556a5}.alumni-engagement-tabs button b{display:inline-grid;min-width:20px;min-height:20px;place-items:center;border-radius:10px;background:#d6e9fb;color:#124c92;padding:1px 6px;font-size:.72rem}.alumni-engagement-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.alumni-engagement-metrics article{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:start;gap:10px;min-height:112px;border:1px solid #d8e4ef;border-radius:6px;background:#fff;padding:15px}.alumni-engagement-metrics article>span{display:grid;width:38px;height:38px;place-items:center;border-radius:6px;background:#edf5fd;color:#1760ad}.alumni-engagement-metrics article.green>span{background:#e8f7ef;color:#13835a}.alumni-engagement-metrics article.cyan>span{background:#e8f8fa;color:#147d8c}.alumni-engagement-metrics article.gold>span{background:#fff7df;color:#a87100}.alumni-engagement-metrics article.rose>span{background:#fff0f4;color:#b74768}.alumni-engagement-metrics small,.alumni-engagement-metrics strong,.alumni-engagement-metrics em{display:block}.alumni-engagement-metrics small{color:#65758b;font-size:.78rem}.alumni-engagement-metrics strong{margin-top:6px;color:#10243c;font-size:1.4rem;line-height:1}.alumni-engagement-metrics em{margin-top:8px;color:#748398;font-size:.73rem;font-style:normal}.alumni-overview,.alumni-overview-grid{display:grid;gap:14px}.alumni-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.alumni-overview-grid .table-section,.alumni-engagement-list{border:1px solid #d9e4ef;border-radius:6px;background:#fff;padding:16px;box-shadow:none}.alumni-overview-row{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;border:0;border-top:1px solid #edf1f5;background:transparent;color:#20334b;padding:12px 2px;text-align:left}.alumni-overview-row:hover{color:#1556a5}.alumni-overview-row span:first-child{min-width:0}.alumni-overview-row strong,.alumni-overview-row small{display:block}.alumni-overview-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.alumni-overview-row small{margin-top:3px;color:#718096;font-size:.75rem}.alumni-list-toolbar{margin-bottom:14px}.search-inline input{width:min(280px,42vw)}.alumni-engagement-list table td strong,.alumni-engagement-list table td small,.alumni-registration-list table td strong,.alumni-registration-list table td small{display:block}.alumni-engagement-list table td small,.alumni-registration-list table td small{margin-top:3px;color:#728197;font-size:.73rem}.alumni-engagement-list td:last-child{white-space:nowrap}.alumni-event-grid,.alumni-announcement-feed{display:grid;gap:12px}.alumni-event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.alumni-event-card{display:grid;grid-template-columns:50px minmax(0,1fr) auto;gap:13px;border:1px solid #d9e4ef;border-radius:6px;background:#fff;padding:14px}.alumni-event-date{display:grid;height:58px;place-content:center;border-radius:6px;background:#eaf4ff;color:#1759a3;text-align:center}.alumni-event-date strong{font-size:1.15rem;line-height:1}.alumni-event-date small{margin-top:4px;font-size:.72rem;text-transform:uppercase}.alumni-event-card-copy{min-width:0}.alumni-event-card-copy>div:first-child{display:flex;gap:6px}.alumni-event-card h4{margin:8px 0 5px;color:#132941;font-size:1rem}.alumni-event-card p{margin:0 0 9px;color:#66778e;font-size:.82rem;line-height:1.45}.alumni-event-card-copy>span{display:flex;align-items:center;gap:5px;margin-top:5px;color:#52667f;font-size:.76rem}.alumni-event-card footer{display:flex;justify-content:space-between;gap:8px;margin-top:12px;border-top:1px solid #edf1f5;padding-top:9px;color:#617289;font-size:.73rem}.alumni-event-card footer b{color:#16805a}.alumni-event-card-actions{align-self:start}.alumni-announcement-card{display:grid;grid-template-columns:44px minmax(0,1fr);gap:13px;border:1px solid #dbe5ef;border-radius:6px;background:#fff;padding:15px;text-align:left}.alumni-announcement-card:hover{border-color:#9fc2e5}.alumni-announcement-card.unread{border-left:4px solid #1c66b4;background:#f8fbff}.alumni-announcement-icon{display:grid;width:44px;height:44px;place-items:center;border-radius:6px;background:#eaf4ff;color:#155ba6}.alumni-announcement-icon.event{background:#fff6db;color:#9a6a00}.alumni-announcement-icon.career{background:#e9f7ef;color:#147d58}.alumni-announcement-icon.fundraising{background:#fff0f4;color:#ac4262}.alumni-announcement-copy{min-width:0}.alumni-announcement-copy>span:first-child{display:flex;justify-content:space-between;align-items:center;gap:8px}.alumni-announcement-copy small{color:#1760ad;font-size:.7rem;font-weight:750;text-transform:uppercase}.alumni-announcement-copy b{border-radius:10px;background:#1760ad;color:#fff;padding:2px 7px;font-size:.66rem}.alumni-announcement-copy strong,.alumni-announcement-copy em,.alumni-announcement-copy time{display:block}.alumni-announcement-copy strong{margin-top:4px;color:#142a43;font-size:.98rem}.alumni-announcement-copy em{margin-top:5px;color:#64758c;font-size:.82rem;font-style:normal;line-height:1.45}.alumni-announcement-copy time{margin-top:8px;color:#8794a5;font-size:.7rem}.alumni-engagement-form{display:grid;gap:16px}.alumni-engagement-form>label,.alumni-event-response>label{display:grid;gap:7px;color:#52647a;font-weight:650}.alumni-channel-picker,.alumni-cohort-picker{margin:0;border:1px solid #d7e3ee;border-radius:6px;padding:14px}.alumni-channel-picker legend,.alumni-cohort-picker legend{padding:0 6px;color:#38516d;font-weight:700}.alumni-channel-picker{display:flex;flex-wrap:wrap;gap:10px}.alumni-channel-picker label{display:flex;align-items:center;gap:8px;min-width:130px;border-radius:5px;background:#f5f8fb;padding:10px 12px}.alumni-all-cohorts,.alumni-cohort-options label{display:flex;align-items:center;gap:10px;border:1px solid #dfe7ef;border-radius:5px;padding:10px}.alumni-all-cohorts{margin-bottom:10px;background:#edf6ff}.alumni-cohort-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:230px;overflow-y:auto}.alumni-all-cohorts span,.alumni-cohort-options span,.alumni-preference-row span,.alumni-master-preference span{min-width:0}.alumni-all-cohorts strong,.alumni-all-cohorts small,.alumni-cohort-options strong,.alumni-cohort-options small,.alumni-preference-row strong,.alumni-preference-row small,.alumni-master-preference strong,.alumni-master-preference small{display:block}.alumni-all-cohorts small,.alumni-cohort-options small,.alumni-preference-row small,.alumni-master-preference small{margin-top:2px;color:#728197;font-size:.72rem}.alumni-announcement-detail,.alumni-event-detail,.alumni-event-response,.alumni-registration-list{display:grid;gap:16px}.alumni-detail-meta{flex-wrap:wrap;color:#64758c;font-size:.8rem}.alumni-detail-meta>span:not(.status-pill){display:inline-flex;align-items:center;gap:5px}.alumni-announcement-body{border:1px solid #dce6ef;border-radius:6px;background:#fbfcfe;padding:18px;color:#263b53;line-height:1.6}.alumni-announcement-body p{margin:0 0 9px}.alumni-announcement-body p:last-child{margin-bottom:0}.alumni-delivery-strip,.alumni-event-facts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid #dbe5ef;border-radius:6px;overflow:hidden}.alumni-event-facts{grid-template-columns:repeat(4,minmax(0,1fr))}.alumni-delivery-strip div,.alumni-event-facts div{border-right:1px solid #e3eaf1;padding:11px 13px}.alumni-delivery-strip div:last-child,.alumni-event-facts div:last-child{border-right:0}.alumni-delivery-strip small,.alumni-delivery-strip strong,.alumni-event-facts small,.alumni-event-facts strong{display:block}.alumni-delivery-strip small,.alumni-event-facts small{color:#718096;font-size:.7rem;text-transform:uppercase}.alumni-delivery-strip strong,.alumni-event-facts strong{margin-top:4px;color:#18314d}.alumni-event-summary{margin:0;color:#173d66;font-weight:650}.alumni-preferences{max-width:820px;border:1px solid #d9e4ef;border-radius:6px;background:#fff;padding:18px}.alumni-preferences>header{display:flex;align-items:center;gap:11px;border-bottom:1px solid #e1e8ef;padding-bottom:14px}.alumni-preferences>header>span{display:grid;width:40px;height:40px;place-items:center;border-radius:6px;background:#eaf4ff;color:#175aa5}.alumni-master-preference,.alumni-preference-row{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #edf1f5;padding:14px 2px}.alumni-master-preference{color:#153657}.alumni-preference-disabled{opacity:.52}.alumni-preferences input[type=checkbox]{width:19px;height:19px;flex:0 0 auto}.alumni-engagement-empty{display:grid;min-height:180px;place-content:center;justify-items:center;gap:9px;color:#718197}.alumni-engagement .status-pill.scheduled{background:#fff3d2;color:#896000}.alumni-engagement .status-pill.published,.alumni-engagement .status-pill.going,.alumni-engagement .status-pill.attended{background:#e5f6ee;color:#0d7650}.alumni-engagement .status-pill.cancelled,.alumni-engagement .status-pill.no-show{background:#fdebed;color:#a93f4c}.alumni-engagement .status-pill.waitlisted{background:#e9f2ff;color:#235f9c}.alumni-engagement .status-pill.completed,.alumni-engagement .status-pill.archived{background:#edf0f4;color:#59687b}.alumni-engagement .status-pill.declined{background:#fff0e5;color:#9b5524}@media(max-width:1200px){.alumni-engagement-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.alumni-cohort-options{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:820px){.alumni-engagement-header,.alumni-list-toolbar{align-items:stretch;flex-direction:column}.alumni-engagement-actions{flex-wrap:wrap}.alumni-engagement-actions .primary-action,.alumni-engagement-actions .secondary-action{flex:1 1 auto}.alumni-engagement-metrics,.alumni-overview-grid,.alumni-event-grid{grid-template-columns:1fr}.alumni-engagement-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.search-inline input,.search-inline{width:100%}.alumni-cohort-options{grid-template-columns:1fr}.alumni-delivery-strip,.alumni-event-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.alumni-delivery-strip div,.alumni-event-facts div{border-bottom:1px solid #e3eaf1}}@media(max-width:520px){.alumni-engagement-metrics{grid-template-columns:1fr}.alumni-event-card{grid-template-columns:46px minmax(0,1fr)}.alumni-event-card-actions{grid-column:2;justify-content:flex-end}.alumni-engagement-tabs button{padding-inline:9px}}.public-admissions .primary-button,.public-admissions .secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:auto;min-height:42px;padding:0 14px;border-radius:7px;font-weight:700;white-space:nowrap;cursor:pointer}.public-admissions .primary-button.full{width:100%}.public-admissions .secondary-button{border:1px solid #c9d7e4;color:#24415e;background:#f7fafc}.public-admissions .secondary-button:hover{border-color:#9db6cc;background:#eef4f8}.public-admissions :is(.primary-button,.secondary-button):disabled{cursor:not-allowed;opacity:.58}.admission-auth-first{grid-template-columns:minmax(0,1fr) minmax(360px,430px);gap:clamp(32px,5vw,68px);align-items:center}.admission-auth-intro{display:grid;gap:14px;min-width:0}.admission-auth-intro h1,.admission-dashboard-heading h1,.admission-application-heading h1{margin:0;color:#13263b;font-size:clamp(1.65rem,2.5vw,2.2rem);line-height:1.16}.admission-auth-intro>p,.admission-dashboard-heading p,.admission-application-heading p{margin:0;color:#607286;line-height:1.65}.admission-auth-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:8px}.admission-auth-benefits>span{display:grid;grid-template-columns:34px minmax(0,1fr);align-content:start;column-gap:9px;row-gap:3px;min-width:0;padding:14px;border:1px solid #dbe5ee;border-radius:7px;background:#f8fafc}.admission-auth-benefits svg{grid-row:1 / span 2;width:34px;height:34px;padding:8px;border-radius:7px;color:var(--admission-brand);background:color-mix(in srgb,var(--admission-brand) 10%,white)}.admission-auth-benefits strong{align-self:end;font-size:.88rem}.admission-auth-benefits small{color:#687b8e;line-height:1.4}.admission-window-note{width:fit-content;padding:8px 11px;border-left:3px solid var(--admission-accent);border-radius:0 5px 5px 0;color:#52677b;background:#fff9e9}.admission-auth-panel{display:grid;gap:14px;min-width:0}.admission-auth-panel form{padding:24px}.admission-auth-heading{display:grid;gap:5px;padding-bottom:4px}.admission-auth-heading h2{margin:0;font-size:1.45rem}.admission-auth-heading p{margin:0;color:#687b8e;line-height:1.5}.admission-auth-switch{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px;border:1px solid #dbe5ee;border-radius:7px;background:#fff}.admission-auth-switch>div{display:grid;gap:3px}.admission-auth-switch span{color:#687b8e;font-size:.82rem;line-height:1.4}.admission-auth-switch .secondary-button{flex:0 0 auto}.admission-workspace-actions,.admission-step-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}.admission-parent-dashboard{display:grid;gap:20px;padding:26px;border:1px solid #d9e4ee;border-radius:8px;background:#fff}.admission-dashboard-heading,.admission-application-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;min-width:0}.admission-dashboard-heading>div,.admission-application-heading>div:first-child{display:grid;gap:5px;min-width:0}.admission-dashboard-heading .primary-button{flex:0 0 auto}.admission-dashboard-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.admission-dashboard-summary>div{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;min-width:0;padding:15px;border:1px solid #dce6ee;border-radius:7px;background:#f8fafc}.admission-dashboard-summary svg{width:42px;height:42px;padding:10px;border-radius:7px;color:var(--admission-brand);background:#eaf3fd}.admission-dashboard-summary span{display:grid;gap:2px}.admission-dashboard-summary strong{font-size:1.35rem}.admission-dashboard-summary small{color:#687b8e}.admission-dashboard-empty{display:grid;min-height:290px;place-content:center;justify-items:center;gap:9px;padding:32px;border:1px dashed #bfcfdd;border-radius:7px;text-align:center;background:#fbfcfe}.admission-dashboard-empty>svg{width:50px;height:50px;padding:11px;border-radius:7px;color:var(--admission-brand);background:#eaf3fd}.admission-dashboard-empty h2,.admission-dashboard-empty p{margin:0}.admission-dashboard-empty p{max-width:520px;color:#687b8e}.admission-application-list{display:grid;gap:10px}.admission-application-row{display:grid;grid-template-columns:48px minmax(220px,1fr) minmax(150px,auto) auto;align-items:center;gap:14px;min-width:0;padding:15px;border:1px solid #dce6ee;border-radius:7px;background:#fff}.admission-application-row:hover{border-color:color-mix(in srgb,var(--admission-brand) 45%,#dce6ee);background:#fbfdff}.admission-child-avatar{display:grid;width:48px;height:48px;place-items:center;border-radius:7px;color:var(--admission-brand);background:color-mix(in srgb,var(--admission-brand) 10%,white);font-weight:800}.admission-application-identity,.admission-application-status{display:grid;gap:3px;min-width:0}.admission-application-identity>span{color:#6b7d8e;font-size:.7rem;font-weight:800}.admission-application-identity h2,.admission-application-identity p{margin:0}.admission-application-identity h2{overflow-wrap:anywhere;font-size:1rem}.admission-application-identity p,.admission-application-status small{color:#687b8e;font-size:.8rem}.admission-application-status{justify-items:start}.admission-application-heading{padding:22px 26px;border:1px solid #d9e4ee;border-radius:8px;background:#fff}.admission-application-heading>div:last-child{display:grid;min-width:92px;gap:2px;padding:10px 12px;border-left:3px solid var(--admission-brand);color:#687b8e;background:#f5f8fb}.admission-application-heading>div:last-child strong{color:#17304a}.application-progress.admission-stepper{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border:1px solid #d6e1eb;background:#fff;overflow:visible}.application-progress.admission-stepper>div{display:flex;align-items:center;justify-content:center;gap:9px;min-width:0;min-height:52px;padding:10px 12px;border-right:1px solid #dce6ee;color:#6b7d8e;background:#f8fafc}.application-progress.admission-stepper>div:last-child{border-right:0}.application-progress.admission-stepper>div.active{color:#164f91;background:#eaf3fd;box-shadow:inset 0 -3px 0 var(--admission-brand)}.application-progress.admission-stepper>div.complete{color:#0d7650;background:#f1faf6}.application-progress.admission-stepper>div>span{display:grid;width:25px;height:25px;flex:0 0 25px;place-items:center;padding:0;border:1px solid currentColor;border-radius:50%;color:inherit;font-size:.76rem}.application-progress.admission-stepper>div>strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.84rem}.admission-step-panel,.admission-review-step,.admission-documents-step{display:grid;gap:22px}.admission-step-stack,.guardian-workflow-list,.admission-submitted-stack{display:grid;gap:16px}.guardian-entry{margin-top:0;padding:20px}.guardian-entry-head>div{display:grid;gap:3px}.guardian-entry-head>div>span{color:#687b8e;font-size:.72rem;font-weight:800}.guardian-primary-choice{align-self:end;min-height:48px;padding:11px 13px;border:1px solid #d6e2ec;border-radius:7px;background:#fff}.admission-documents-step .section-heading>svg{flex:0 0 auto;color:var(--admission-brand)}.admission-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid #dce6ee;border-radius:7px;overflow:hidden}.admission-review-grid>div{display:grid;align-content:start;gap:6px;min-width:0;padding:17px;border-right:1px solid #dce6ee}.admission-review-grid>div:last-child{border-right:0}.admission-review-grid small{color:#687b8e;overflow-wrap:anywhere}.admission-review-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.admission-review-heading span{color:#687b8e;font-size:.7rem;font-weight:800}.admission-review-heading button{border:0;color:var(--admission-brand);background:transparent;font-weight:700;cursor:pointer}.admission-readiness{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;padding:8px 11px;border-radius:6px;font-size:.8rem;font-weight:800}.admission-readiness.ready{color:#0d7650;background:#e5f6ee}.admission-readiness.attention{color:#896000;background:#fff3d2}.admission-submit-checklist{display:grid;gap:8px;padding:16px;border:1px solid #dce6ee;border-radius:7px;background:#f8fafc}.admission-submit-checklist>div{display:flex;align-items:flex-start;gap:10px;color:#0d7650}.admission-submit-checklist>div.pending{color:#896000}.admission-submit-checklist svg{width:19px;flex:0 0 19px}.admission-submit-checklist span{display:grid;gap:2px}.admission-submit-checklist small{color:#687b8e}.admission-another-child{margin-top:14px}@media(max-width:980px){.admission-auth-first{grid-template-columns:1fr;align-items:start}.admission-auth-benefits{grid-template-columns:repeat(3,minmax(0,1fr))}.admission-application-row{grid-template-columns:48px minmax(0,1fr) auto}.admission-application-status{grid-column:2}.admission-application-row>button{grid-column:3;grid-row:1 / span 2}}@media(max-width:720px){.public-admission-shell{width:min(100% - 20px,1180px);margin-top:18px}.admission-auth-first,.admission-parent-dashboard,.admission-application-heading{padding:19px}.admission-auth-benefits,.admission-dashboard-summary,.admission-review-grid{grid-template-columns:1fr}.admission-auth-benefits{gap:8px}.admission-auth-switch,.admission-dashboard-heading,.admission-application-heading,.admission-workspace-bar,.admission-step-actions{align-items:stretch;flex-direction:column}.admission-auth-switch .secondary-button,.admission-dashboard-heading .primary-button,.admission-workspace-actions .secondary-button,.admission-step-actions>button{justify-content:center;width:100%}.admission-workspace-actions{display:grid;width:100%}.application-progress.admission-stepper{grid-template-columns:repeat(4,minmax(44px,1fr))}.application-progress.admission-stepper>div{min-height:46px;padding:8px 5px}.application-progress.admission-stepper>div>strong{display:none}.admission-review-grid>div{border-right:0;border-bottom:1px solid #dce6ee}.admission-review-grid>div:last-child{border-bottom:0}.admission-step-actions{display:flex}}@media(max-width:520px){.admission-auth-panel form,.admission-form-card{padding:17px}.admission-auth-switch{align-items:stretch;flex-direction:column}.admission-application-row{grid-template-columns:42px minmax(0,1fr);align-items:start}.admission-child-avatar{width:42px;height:42px}.admission-application-status,.admission-application-row>button{grid-column:2;grid-row:auto}.admission-application-row>button{justify-content:center;width:100%}.document-upload-list>label input{width:100%}}.admission-cycle-tabs{display:inline-flex;align-items:center;gap:4px;border:1px solid #d6e2ec;border-radius:7px;padding:4px;background:#f6f9fc}.admission-cycle-tabs button{display:inline-flex;align-items:center;gap:7px;min-height:34px;border:0;border-radius:5px;padding:0 11px;color:#52677b;background:transparent;font-weight:700;cursor:pointer}.admission-cycle-tabs button span{display:grid;min-width:22px;height:22px;place-items:center;border-radius:50%;background:#e5ebf1;font-size:.72rem}.admission-cycle-tabs button.active{color:#1559a4;background:#fff;box-shadow:0 1px 4px #1f3e5b1f}.admission-cycle-tabs button.active span{color:#fff;background:#1d63af}.status-badge.status-ended{color:#805900;background:#fff3d1}.admission-invitations{display:grid;gap:12px}.admission-invitations>.section-heading{align-items:flex-end}.admission-invitation-list{display:grid;gap:10px}.admission-invitation-list>article{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;border:1px solid #d8e4ee;border-radius:7px;padding:14px;background:#fbfdff}.admission-invitation-fields{display:grid;grid-template-columns:1fr 1.15fr .8fr;gap:11px}.admission-invitation-actions{display:flex;align-items:center;gap:8px;padding-bottom:2px}.admission-invitation-actions .compact-check{min-height:44px;border:1px solid #d8e4ee;border-radius:6px;padding:0 10px;background:#fff;white-space:nowrap}.admission-invitation-empty{display:flex;align-items:center;gap:10px;border:1px dashed #c3d2df;border-radius:7px;padding:16px;color:#65788c;background:#f8fafc}.admission-forgot-link{justify-self:start;padding-inline:0}.applicant-assessment-panel{display:grid;gap:16px}.applicant-assessment-list{display:grid;gap:10px}.applicant-assessment-list>article{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;border:1px solid #d9e4ed;border-left:4px solid var(--admission-brand);border-radius:7px;padding:16px;background:#fbfdff}.applicant-assessment-list article>div{display:grid;gap:4px;min-width:0}.applicant-assessment-list article>div>span{width:fit-content;border-radius:5px;padding:4px 7px;color:#36536f;background:#eaf1f7;font-size:.7rem;font-weight:800;text-transform:uppercase}.applicant-assessment-list h3,.applicant-assessment-list p{margin:0}.applicant-assessment-list p,.applicant-assessment-list small{color:#687b8e}.assessment-score{min-width:80px;border-radius:6px;padding:10px 12px;text-align:center;font-size:1rem}.assessment-score.pass{color:#087757;background:#e5f6ef}.assessment-score.below{color:#a24249;background:#fdebed}.admission-assessment-room{display:grid;gap:18px}.admission-assessment-room>header{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid #d9e4ed;border-radius:7px;padding:14px 16px;background:#f5f9fc}.admission-assessment-room>header>div{display:grid;gap:3px}.admission-assessment-room>header span,.admission-assessment-room>header time{color:#61758a;font-size:.8rem}.assessment-instructions{margin:0;border-left:3px solid var(--admission-accent);padding:10px 13px;color:#465e75;background:#fff9e8}.admission-assessment-questions{display:grid;gap:14px}.admission-assessment-questions>article{display:grid;gap:13px;border:1px solid #d9e4ed;border-radius:7px;padding:18px;background:#fff}.admission-assessment-questions>article>header{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#52677b;font-size:.78rem}.admission-assessment-questions h3,.admission-assessment-questions p,.admission-assessment-questions blockquote{margin:0}.admission-assessment-questions blockquote{border-left:3px solid #86aaca;padding:10px 13px;color:#425a72;background:#f5f9fc}.admission-answer-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.admission-answer-options>label{display:grid;grid-template-columns:auto 30px minmax(0,1fr);align-items:center;gap:9px;min-width:0;border:1px solid #d6e2ec;border-radius:7px;padding:11px;cursor:pointer;background:#fbfdff}.admission-answer-options>label.selected{border-color:#2a73bb;color:#174f88;background:#edf6ff;box-shadow:inset 3px 0 #2a73bb}.admission-answer-options b{display:grid;width:30px;height:30px;place-items:center;border-radius:50%;color:#285a87;background:#e8f0f7}.admission-answer-options img,.admission-assessment-media{grid-column:2 / -1;width:min(100%,560px);max-height:360px;border:1px solid #d7e2ec;border-radius:7px;object-fit:contain;background:#f7fafc}@media(max-width:980px){.admission-invitation-list>article,.admission-invitation-fields{grid-template-columns:1fr}.admission-invitation-actions{justify-content:space-between}}@media(max-width:720px){.admission-cycle-tabs,.admission-cycle-tabs button{width:100%}.admission-cycle-tabs button{justify-content:center}.applicant-assessment-list>article,.admission-answer-options{grid-template-columns:1fr}.applicant-assessment-list>article>button,.assessment-score{width:100%}.admission-assessment-room>header{align-items:flex-start;flex-direction:column}}
