.verification-code{cursor:text;isolation:isolate;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;width:min(100%,380px);margin-top:8px;position:relative;display:grid!important}.login-form .verification-code{flex-basis:100%;max-width:380px}.login-page .authenticator-setup{background:0 0;border:0;justify-items:stretch;gap:0;padding:0}.verification-code input.verification-code-native{opacity:0;z-index:1;caret-color:#0000;font-size:16px;border:0!important;width:100%!important;height:100%!important;padding:0!important;position:absolute!important;inset:0!important}.verification-code .verification-digit{box-sizing:border-box;color:#302239;background:#f7f5f9;border:1px solid #d4ccd9;border-radius:9px;justify-content:center;align-items:center;min-width:0;height:58px;font:500 27px/1 Inter,sans-serif;transition:border-color .16s,background-color .16s,box-shadow .16s;display:flex}.verification-code .verification-digit[data-active]{background:#fff;border-color:#75408f;box-shadow:0 0 0 3px #75408f20}.verification-code .verification-digit[data-filled]{animation:.14s ease-out verification-digit-in}.verification-digit-placeholder{background:0 0;width:1px;height:16px}.verification-digit[data-active] .verification-digit-placeholder{background:#75408f;animation:1s step-end infinite verification-caret}.verification-code[data-invalid] .verification-digit{border-color:#bc4242}.verification-code[data-disabled]{opacity:.65;cursor:default}[data-theme=dark] .verification-code .verification-digit,[data-portal-theme=dark] .verification-code .verification-digit{color:#f6eefb;background:#21172c;border-color:#594760}[data-theme=dark] .verification-code .verification-digit[data-active],[data-portal-theme=dark] .verification-code .verification-digit[data-active]{background:#2d1d39;border-color:#c397df;box-shadow:0 0 0 3px #c397df20}[data-theme=dark] .verification-digit[data-active] .verification-digit-placeholder,[data-portal-theme=dark] .verification-digit[data-active] .verification-digit-placeholder{background:#d0a5ec}[data-theme=dark] .verification-code[data-invalid] .verification-digit,[data-portal-theme=dark] .verification-code[data-invalid] .verification-digit{border-color:#ed939f}.authenticator-setup-card{text-align:center;flex-direction:column;align-items:center;width:100%;min-width:0;padding:20px 0 8px;display:flex}.authenticator-setup-card h3{margin:0 0 8px;font-size:1.1rem}.authenticator-setup-card>p{opacity:.8;max-width:340px;margin:0 auto 18px;font-size:.9rem;line-height:1.5}.authenticator-setup-card>.authenticator-qr-frame{box-sizing:border-box;aspect-ratio:1;background:#fff;border:1px solid #e7e1eb;border-radius:10px;flex:none;place-items:center;width:min(242px,100%);max-width:100%;margin-inline:auto;padding:10px;display:grid}.authenticator-setup-card>.authenticator-qr-frame img{aspect-ratio:1;object-fit:contain;width:100%;max-width:100%;height:100%;display:block}.authenticator-key-divider{opacity:.75;align-items:center;gap:12px;width:100%;margin:20px 0 14px;font-size:.8rem;display:flex}.authenticator-key-divider:before,.authenticator-key-divider:after{content:"";opacity:.25;background:currentColor;flex:1;height:1px}.authenticator-key-row{box-sizing:border-box;border:1px solid #d4ccd9;border-radius:9px;align-items:center;gap:12px;width:100%;min-width:0;margin-bottom:10px;padding:12px;display:flex}.authenticator-key-row code{overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;flex:1;min-width:0;font-size:.9rem;line-height:1.7}.authenticator-key-row .text-button{flex:none}.authenticator-setup-card>small{opacity:.75;font-size:.78rem}.authenticator-copy-status{min-height:20px;margin-top:6px;font-size:.78rem;display:block}.login-forgot-link{align-self:flex-start;margin:-5px 0 0;font-size:.88rem}.password-reset-feedback{border-left:3px solid #b99430;padding:14px 16px;line-height:1.55}@keyframes verification-digit-in{0%{opacity:.5;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}@keyframes verification-caret{50%{opacity:0}}@media (width<=420px){.verification-code{gap:6px}.verification-code .verification-digit{height:50px;font-size:24px}}@media (prefers-reduced-motion:reduce){.verification-code .verification-digit{transition:none;animation:none}.verification-digit-placeholder{animation:none!important}}html[data-portal-theme=dark],.portal-layout[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#141018;--surface:#211b29;--ink:#f0eaf6;--muted:#b9adc8;--brand:#d0a4ef;--brand-dark:#e0c0f7;--brand-soft:#34253f;--gold:#e4bb57;--gold-light:#3c311c;--line:#47394f;--green:#99d7b2;--green-soft:#1d362b;--red:#f1a6af;--red-soft:#3d222b;--shadow:0 16px 40px #00000038;color:var(--ink);background:var(--paper)}html[data-portal-theme=dark] .topbar{background:#211b29f0}html[data-portal-theme=dark] :is(.account-menu-popover,.modal,.notification-popover,.section-checkbox-list,.import-preview-table,.search-field){border-color:var(--line)}html[data-portal-theme=dark] :is(.account-menu-popover,.management-form label.section-checkbox){background:var(--surface)}html[data-portal-theme=dark] :is(.account-menu-person,.notification-item,.activity-item,.section-metrics,.section-metrics>div+div,.modal-actions,.import-preview-table td,.start-session-form .panel-heading,th,td){border-color:var(--line)}html[data-portal-theme=dark] .account-menu-popover button:not([role=menuitemradio]):hover{background:var(--brand-soft)}html[data-portal-theme=dark] :is(input:not([type=checkbox]):not([type=radio]),select,textarea){color:var(--ink);border-color:var(--line);background:#19131f}html[data-portal-theme=dark] .search-field{background:#19131f}html[data-portal-theme=dark] .search-field input:not([type=checkbox]):not([type=radio]){background:0 0;border:0;border-radius:0}html[data-portal-theme=dark] .search-field:focus-within{border-color:var(--gold)}html[data-portal-theme=dark] input::placeholder,html[data-portal-theme=dark] textarea::placeholder{color:var(--muted)}html[data-portal-theme=dark] :is(.management-form label,.start-session-form label,.section-checkbox-fieldset legend){color:var(--ink)}html[data-portal-theme=dark] :is(.secondary-button,.section-selector,.section-management-actions button){border-color:var(--line);background:#2a2033}html[data-portal-theme=dark] :is(.secondary-button,.section-management-actions button):hover:not(:disabled){background:var(--brand-soft)}html[data-portal-theme=dark] :is(th,.chapter-progress-row,.teacher-class-row,.session-details dl>div,.section-checkbox-list,.import-summary>div,.session-preview,.notification-footer){background:#2a2233}html[data-portal-theme=dark] tbody tr:hover{background:#30263b}html[data-portal-theme=dark] :is(th,.activity-item span:not(.avatar),.activity-item small,.admin-access td small){color:var(--muted)}html[data-portal-theme=dark] :is(.status-inactive,.control-disabled,.progress-track){background:#39313f}html[data-portal-theme=dark] .status-inactive{color:var(--muted)}html[data-portal-theme=dark] .status-request-pending{color:#ffc078;background:#462b17}html[data-portal-theme=dark] .status-request-rejected{color:#ffb0a8;background:#462421}html[data-portal-theme=dark] .danger-button.session-close-button{color:var(--gold);background:var(--gold-light)}html[data-portal-theme=dark] .danger-button.session-close-button:hover:not(:disabled){background:#504020}html[data-portal-theme=dark] :is(.section-emblem,.status-progress,.control-note,.session-rule){color:var(--gold)}html[data-portal-theme=dark] :is(.control-note,.session-rule){background:var(--gold-light)}html[data-portal-theme=dark] :is(.control-row,.upload-drop){border-color:var(--line);background:#2a2233}html[data-portal-theme=dark] .modal-heading>button{background:var(--brand-soft)}html[data-portal-theme=dark] :is(.import-error,.import-summary .invalid,.import-row-invalid td){color:var(--red);background:var(--red-soft);border-color:#73424f}html[data-portal-theme=dark] .import-summary .invalid strong{color:var(--red)}html[data-portal-theme=dark] :is(.import-summary .valid,.import-result-summary,.active-session-banner){background:var(--green-soft);border-color:#3f6c53}html[data-portal-theme=dark] :is(.import-result-summary h3,.import-result-summary p,.progress-cell strong){color:var(--green)}html[data-portal-theme=dark] :is(.mini-code,.active-session-banner button){background:#172c22;border-color:#629879}html[data-portal-theme=dark] .import-preview-table th{color:#fff;background:#573070}html[data-portal-theme=dark] .notification-popover:before{border-color:var(--line)}html[data-portal-theme=dark] .notification-header{background:linear-gradient(135deg, var(--surface), #2a2233)}html[data-portal-theme=dark] .notification-item.is-unread{background:#30223b}html[data-portal-theme=dark] .notification-count{background:#8745b0}html[data-portal-theme=dark] .toast{background:#2c6949}html[data-portal-theme=dark] :is(.notification-item-icon.inactive,.notification-item-icon.student-assignment,.notification-item-icon.section-assignment){color:var(--gold);background:var(--gold-light)}html[data-portal-theme=dark] .switch input:checked+span{background:#9255b9}.admin-access .management-form textarea{width:100%;min-height:90px;color:var(--ink);font:inherit;resize:vertical;background:#fffefe;border:1px solid #d9cee0;border-radius:11px;padding:12px 14px}.admin-access .management-form textarea:focus{border-color:var(--gold);outline:none;box-shadow:0 0 0 3px #c9933124}.admin-access .table-toolbar{margin-bottom:18px}.admin-access td strong,.admin-access td small{display:block}.admin-access td small{color:#716576;margin-top:4px}.status-request-pending{color:#995012;background:#fff0df}.status-request-rejected{color:#a32c2c;background:#fde8e8}.admin-access .table-toolbar select{min-height:40px;color:var(--ink);font:inherit;background:#fffefe;border:1px solid #d9cee0;border-radius:10px;padding:9px 12px}.admin-access .panel+.panel,.admin-access .control-note+.panel,.admin-access .import-error+.panel{margin-top:20px}@media (width<=640px){.admin-access .table-toolbar select{width:100%}}.admin-access .superadmin-toolbar{flex-flow:wrap;justify-content:flex-start;align-items:center;gap:12px}.admin-access .superadmin-toolbar .search-field{flex:0 340px;min-width:0}.admin-access .superadmin-toolbar .refresh-icon-button{flex:0 0 42px;width:42px;min-width:42px;height:42px;margin-left:auto;padding:0}.admin-access .refresh-icon-button svg{display:block}.admin-access .refresh-icon-button:focus-visible{outline:2px solid var(--brand);outline-offset:3px}.admin-access .refresh-icon-button[aria-busy=true] svg{animation:1s linear infinite superadmin-refresh-spin}@keyframes superadmin-refresh-spin{to{transform:rotate(360deg)}}@media (width<=720px){.admin-access .superadmin-toolbar .search-field{flex:1 0 100%;width:100%}.admin-access .superadmin-toolbar select{flex:0 220px;width:auto;min-width:0;max-width:calc(100% - 54px)}}@media (prefers-reduced-motion:reduce){.admin-access .refresh-icon-button[aria-busy=true] svg{animation:none}}.superadmin-summary-note{color:var(--muted);margin:10px 0 0;font-size:12px;line-height:1.6}.superadmin-dashboard-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start;gap:18px;margin-top:18px;display:grid}.superadmin-dashboard-grid>.panel{min-width:0}.superadmin-dashboard-grid .panel-heading{flex-wrap:wrap;gap:14px}.superadmin-dashboard-grid table{min-width:480px}.superadmin-dashboard-grid td{vertical-align:middle}.superadmin-dashboard-grid td small{color:var(--muted);margin-top:4px;display:block}.superadmin-protected-summary{border:1px dashed var(--line);background:var(--paper);border-radius:6px;flex-direction:column;align-items:flex-start;gap:12px;margin:0 20px 20px;padding:24px;display:flex}.superadmin-lock-symbol{color:var(--brand)}.superadmin-protected-summary h3{margin:0;font-size:17px}.superadmin-protected-summary p,.superadmin-directory-note{color:var(--muted);font-size:13px;line-height:1.7}.superadmin-protected-summary p{margin:0}.superadmin-directory-note{margin:16px 20px 20px}@media (width<=1100px){.superadmin-dashboard-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=480px){.superadmin-protected-summary{margin:0 14px 14px;padding:18px}.superadmin-protected-summary .primary-button{width:100%}}.account-menu{position:relative}.account-menu-trigger{color:var(--brand);cursor:pointer;background:0 0;border:0;border-radius:28px;align-items:center;gap:7px;padding:3px;display:inline-flex}.account-menu-trigger:focus-visible,.account-menu-popover button:focus-visible{outline:2px solid var(--brand);outline-offset:3px}.account-menu-popover{z-index:30;background:#fffefe;border:1px solid #ddd1e5;border-radius:14px;width:240px;max-width:calc(100vw - 36px);padding:8px;position:absolute;top:calc(100% + 12px);right:0;box-shadow:0 12px 35px #34194429}.account-menu-person{border-bottom:1px solid #eee5f3;margin-bottom:6px;padding:10px 12px 12px}.account-menu-person strong{color:var(--ink);overflow-wrap:anywhere;font-size:13px;display:block}.account-menu-person small{color:var(--muted);margin-top:4px;font-size:11px;display:block}.account-menu-popover button{text-align:left;width:100%;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:11px 12px;font-size:12px;display:flex}.account-menu-popover button:hover{background:#f4ecf9}.account-menu-popover svg{width:19px;height:19px;color:var(--brand);flex:0 0 19px}.account-menu-appearance{border-bottom:1px solid var(--line);margin-bottom:6px;padding:8px 8px 12px}.account-menu-appearance>p{color:var(--muted);margin:0 0 9px;font-size:11px}.account-theme-options{border:1px solid var(--line);background:var(--paper);isolation:isolate;border-radius:999px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:4px;display:grid;position:relative}.account-theme-options:before{content:"";box-sizing:border-box;border:1px solid var(--line);background:var(--surface);pointer-events:none;border-radius:999px;width:calc(50% - 4px);transition:transform .22s,background .22s;position:absolute;top:4px;bottom:4px;left:4px;box-shadow:0 2px 6px #3419441a}.account-theme-options[data-theme=dark]:before{background:var(--brand-soft);transform:translate(100%)}.account-theme-options button{min-height:36px;color:var(--muted);background:0 0;border-radius:999px;justify-content:center;gap:7px;padding:7px 6px;transition:color .22s;position:relative}.account-theme-options button:hover,.account-theme-options button[aria-checked=true]{color:var(--brand);background:0 0}.account-theme-options svg{color:currentColor;flex-basis:17px;width:17px;height:17px}@media (prefers-reduced-motion:reduce){.account-theme-options:before,.account-theme-options button{transition:none}}.modal-backdrop.account-password-backdrop{z-index:100}.modal.account-password-dialog{border-radius:12px;width:min(100%,460px);padding:30px}.account-password-dialog .modal-heading{align-items:center;gap:12px;margin-bottom:12px}.account-password-dialog .modal-heading h2{font-family:var(--font-body);letter-spacing:-.6px;font-size:clamp(20px,5.2vw,26px);font-weight:600}.account-password-dialog>p{color:var(--muted);margin:0;font-size:12px;line-height:1.6}.account-password-form{margin-top:24px}.account-login-notice{color:var(--ink);background:#f5eef9;border:1px solid #d9c8e4;border-radius:10px;margin:0 0 16px;padding:11px 13px;font-size:12px;line-height:1.6}@media (width<=420px){.modal.account-password-dialog{padding:24px 22px}}.school-year-toolbar{flex-wrap:wrap;align-items:end;gap:16px;margin-bottom:20px;padding:20px;display:flex}.school-year-toolbar>label{gap:8px;min-width:220px;font-weight:600;display:grid}.school-year-toolbar select{border:1px solid var(--line,#ddd5e4);background:var(--surface,#fff);width:100%;color:inherit;font:inherit;border-radius:9px;padding:11px 36px 11px 12px}.school-year-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-left:auto;display:flex}.school-year-refresh{flex:0 0 42px;width:42px;min-width:42px;height:42px;padding:0}.school-year-refresh[aria-busy=true] svg{animation:.9s linear infinite school-year-refresh-spin}.school-year-note{opacity:.8;flex-basis:100%;margin:0;font-size:.88rem}.school-year-list{margin-top:20px;display:grid}.school-year-list>div{border-top:1px solid var(--line,#ddd5e4);justify-content:space-between;align-items:center;gap:16px;padding:14px 0;display:flex}.school-year-list small{opacity:.75;margin-top:4px;display:block}.school-year-add-form{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.school-year-add-form label{flex:1}.school-year-history>.table-scroll{margin-top:18px}.school-year-correction-entry{border-top:1px solid var(--line,#ddd5e4);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:22px;padding-top:18px;display:flex}.school-year-correction-entry p{color:var(--muted);margin:0;font-size:13px}.school-year-correction-intro{margin:0 0 20px;line-height:1.6}.school-year-correction .admin-account-gate-inline .admin-lock-overlay{padding:0;display:block}.school-year-correction .admin-account-gate-inline .admin-lock-card.panel{max-width:none;box-shadow:none;background:0 0;border:0;padding:0}.school-year-correction .admin-account-gate-inline .admin-lock-card h2{font-size:20px}.school-year-correction-form select{border:1px solid var(--line);width:100%;min-height:48px;color:var(--ink);background:var(--surface);font:inherit;border-radius:10px;padding:10px 14px}.school-year-correction-form .school-year-confirm{color:var(--ink);align-items:flex-start;gap:10px;line-height:1.6;display:flex}.school-year-correction-form .school-year-confirm input{accent-color:#75408f;flex:0 0 17px;width:17px;height:17px;min-height:0;margin-top:3px;padding:0}.school-year-correction-form .school-year-note{line-height:1.6}.school-year-correction-cancel{margin-top:18px}[data-portal-theme=dark] .school-year-toolbar select{color:#f4eef9;background:#21172c;border-color:#4a3c57}@media (width<=620px){.school-year-toolbar>label{width:100%}.school-year-actions{margin-left:0}.school-year-list>div{align-items:start}}@keyframes school-year-refresh-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.school-year-refresh[aria-busy=true] svg{animation:none}}
