.connection-banner[data-v-1184eb73]{position:fixed;top:16px;left:50%;transform:translate(-50%);z-index:1200;width:min(calc(100vw - 24px),760px);display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:14px;border:1px solid transparent;box-shadow:0 14px 36px #0f172a2e;backdrop-filter:blur(10px)}.connection-banner--with-shell[data-v-1184eb73]{top:76px}.connection-banner--offline[data-v-1184eb73]{background:#f59e0b29;border-color:#f59e0b66;color:#9a6700}.connection-banner--server_unavailable[data-v-1184eb73]{background:#ef444424;border-color:#ef444457;color:#b42318}.connection-banner--restored[data-v-1184eb73]{background:#22c55e26;border-color:#22c55e4d;color:#166534}.connection-banner__icon[data-v-1184eb73]{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.connection-banner__text[data-v-1184eb73]{font-size:14px;font-weight:600;line-height:1.45}.conn-banner-enter-active[data-v-1184eb73],.conn-banner-leave-active[data-v-1184eb73]{transition:opacity .18s ease,transform .18s ease}.conn-banner-enter-from[data-v-1184eb73],.conn-banner-leave-to[data-v-1184eb73]{opacity:0;transform:translate(-50%,-8px)}@media (max-width: 640px){.connection-banner[data-v-1184eb73]{width:min(calc(100vw - 20px),100%);top:10px;padding:11px 13px;border-radius:12px;gap:8px}.connection-banner--with-shell[data-v-1184eb73]{top:68px}.connection-banner__text[data-v-1184eb73]{font-size:13px}}html.dark{background:#f59e0b2e;border-color:#f59e0b61;color:#fbbf24}html.dark{background:#ef44442b;border-color:#f8717157;color:#fca5a5}html.dark{background:#22c55e29;border-color:#4ade804d;color:#86efac}*,*:before,*:after{box-sizing:border-box}:root{--app-bg: #f0f4f8;--app-bg-muted: #f8fafc;--app-surface: #ffffff;--app-surface-soft: #f1f5f9;--app-surface-2: #f8fafc;--app-surface-3: #eef2f7;--app-border: #e2e8f0;--app-border-soft: #f3f4f6;--app-border-strong: #cbd5e1;--app-text: #111827;--app-text-strong: #0f172a;--app-text-muted: #64748b;--app-text-faint: #94a3b8;--app-primary: #2563eb;--app-primary-strong: #1d4ed8;--app-primary-soft: #eff6ff;--app-success: #16a34a;--app-success-soft: #ecfdf5;--app-warning: #d97706;--app-warning-soft: #fffbeb;--app-danger-soft: #fef2f2;--app-danger: #ef4444;--app-input-bg: #ffffff;--app-input-bg-soft: #f8fafc;--app-input-border: #dbe3ee;--app-shadow: 0 1px 3px rgba(0,0,0,.05)}html.dark{--app-bg: #0f172a;--app-bg-muted: #0d1117;--app-surface: #161b22;--app-surface-soft: #21262d;--app-surface-2: #161b22;--app-surface-3: #21262d;--app-border: #30363d;--app-border-soft: #21262d;--app-border-strong: #3d444d;--app-text: #e6edf3;--app-text-strong: #e6edf3;--app-text-muted: #8b949e;--app-text-faint: #6e7681;--app-primary: #388bfd;--app-primary-strong: #58a6ff;--app-primary-soft: #1f3a5f;--app-success: #3fb950;--app-success-soft: rgba(63, 185, 80, .14);--app-warning: #d29922;--app-warning-soft: rgba(210, 153, 34, .14);--app-danger-soft: rgba(248,81,73,.12);--app-danger: #f85149;--app-input-bg: #0d1117;--app-input-border: #30363d;--app-shadow: 0 1px 3px rgba(0,0,0,.4)}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--app-bg);color:var(--app-text);font-size:14px;line-height:1.5;overflow-x:hidden;transition:background-color .18s ease,color .18s ease}a{text-decoration:none}input,select,textarea,button{font-family:inherit;font-size:14px}@media (max-width: 768px){input,select,textarea,button{font-size:16px}body.mobile-nav-open{overflow:hidden}}.app-wrapper[data-v-768f4673]{min-height:100vh;display:flex;flex-direction:column}.topnav[data-v-768f4673]{display:flex;align-items:center;padding:0 20px;height:60px;background:var(--app-surface);border-bottom:1px solid var(--app-border);box-shadow:var(--app-shadow);position:sticky;top:0;z-index:100;transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease}.brand[data-v-768f4673]{display:flex;align-items:center;gap:9px;flex-shrink:0;text-decoration:none}.brand-mark[data-v-768f4673]{width:28px;height:28px;background:linear-gradient(135deg,#2563eb,#1f6feb);border-radius:7px;color:#fff;font-size:13px;font-weight:800;display:flex;align-items:center;justify-content:center;letter-spacing:-.5px;box-shadow:0 2px 6px #1f6feb4d;flex-shrink:0}.brand-name[data-v-768f4673]{font-size:15px;font-weight:700;color:var(--app-text-strong);letter-spacing:-.3px;white-space:nowrap}.nav-sep[data-v-768f4673]{width:1px;height:20px;background:var(--app-border);flex-shrink:0;margin:0 14px}.nav-links[data-v-768f4673]{display:flex;align-items:stretch;height:60px;flex:1;overflow-x:auto;scrollbar-width:none}.nav-links[data-v-768f4673]::-webkit-scrollbar{display:none}.nav-links a[data-v-768f4673]{display:inline-flex;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:500;color:var(--app-text-muted);white-space:nowrap;border-bottom:2px solid transparent;border-top:2px solid transparent;transition:color .15s,background-color .15s}.nav-links a[data-v-768f4673]:hover{color:var(--app-text-strong)}.nav-links a.router-link-active[data-v-768f4673]{color:var(--app-primary-strong);font-weight:600;border-bottom-color:var(--app-primary)}.nav-badge[data-v-768f4673]{display:inline-flex;align-items:center;justify-content:center;min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:#ef4444;color:#fff;font-size:10px;font-weight:700;line-height:1}.nav-badge--amber[data-v-768f4673]{background:#f59e0b}.nav-right[data-v-768f4673]{display:flex;align-items:center;flex-shrink:0}.btn-theme[data-v-768f4673]{width:34px;height:34px;border:1.5px solid var(--app-border);background:var(--app-bg-muted);border-radius:8px;color:var(--app-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;flex-shrink:0}.btn-theme[data-v-768f4673]:hover{background:var(--app-surface-soft);border-color:var(--app-border);color:var(--app-text)}.user-chip[data-v-768f4673]{display:flex;align-items:center;gap:9px}.user-avatar[data-v-768f4673]{width:32px;height:32px;border-radius:50%;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;text-transform:uppercase;box-shadow:0 0 0 2px #e2e8f0}.user-info[data-v-768f4673]{display:flex;flex-direction:column;line-height:1.3}.user-name[data-v-768f4673]{font-size:13px;font-weight:600;color:var(--app-text-strong)}.user-role[data-v-768f4673]{font-size:11px;color:var(--app-text-faint);font-weight:500}.btn-logout[data-v-768f4673]{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;background:transparent;border:none;border-radius:7px;font-size:13px;font-weight:500;color:var(--app-text-faint);cursor:pointer;transition:all .15s;white-space:nowrap}.btn-logout[data-v-768f4673]:hover{color:var(--app-danger);background:var(--app-danger-soft)}.page-content[data-v-768f4673]{flex:1;padding:28px 0 40px;min-width:0}.page-content--auth[data-v-768f4673]{padding:0}.btn-hamburger[data-v-768f4673]{display:none;width:34px;height:34px;border:1.5px solid var(--app-border);background:var(--app-bg-muted);border-radius:8px;color:var(--app-text-muted);cursor:pointer;align-items:center;justify-content:center;transition:all .15s;flex-shrink:0;margin-right:8px}.btn-hamburger[data-v-768f4673]:hover{background:var(--app-surface-soft);border-color:var(--app-border);color:var(--app-text)}.mobile-backdrop[data-v-768f4673]{display:none}@media (max-width: 1500px){.user-info[data-v-768f4673]{display:none}}@media (max-width: 1200px){.btn-hamburger[data-v-768f4673]{display:flex}.nav-links[data-v-768f4673]{display:none;height:auto}.nav-links.nav-links--open[data-v-768f4673]{display:flex;flex-direction:column;position:fixed;top:60px;left:0;right:0;background:var(--app-surface);border-bottom:1px solid var(--app-border);box-shadow:0 6px 20px #0000001f;z-index:99;max-height:calc(100vh - 60px);overflow-y:auto;padding:6px 0 10px}.nav-links.nav-links--open a[data-v-768f4673]{height:auto;padding:13px 22px;border-bottom:none;border-top:none;border-left:3px solid transparent;border-radius:0;font-size:14px}.nav-links.nav-links--open a[data-v-768f4673]:hover{background:var(--app-bg-muted)}.nav-links.nav-links--open a.router-link-active[data-v-768f4673]{border-bottom-color:transparent;border-left-color:var(--app-primary);background:var(--app-primary-soft)}.mobile-backdrop[data-v-768f4673]{display:block;position:fixed;inset:60px 0 0;background:#00000040;z-index:98}}@media (max-width: 768px){.topnav[data-v-768f4673]{height:64px;padding:0 12px;gap:10px}.brand-name[data-v-768f4673],.user-chip[data-v-768f4673],.nav-sep[data-v-768f4673]{display:none}.brand-mark[data-v-768f4673]{width:32px;height:32px;border-radius:9px}.nav-right[data-v-768f4673]{margin-left:auto;gap:8px}.btn-hamburger[data-v-768f4673],.btn-theme[data-v-768f4673]{width:40px;height:40px;border-radius:10px;margin-right:0}.btn-logout[data-v-768f4673]{min-height:40px;padding:8px 10px;border:1.5px solid var(--app-border);background:var(--app-surface);color:var(--app-text-muted);border-radius:10px}.btn-logout[data-v-768f4673]:hover{border-color:var(--app-danger)}.nav-links.nav-links--open[data-v-768f4673]{top:64px;bottom:0;right:auto;width:min(340px,88vw);max-height:none;border-bottom:none;border-right:1px solid var(--app-border);border-radius:0 18px 18px 0;padding:10px 0 16px}.nav-links.nav-links--open a[data-v-768f4673]{padding:14px 18px;min-height:48px;align-items:center;white-space:normal}.mobile-backdrop[data-v-768f4673]{inset:64px 0 0;backdrop-filter:blur(1px)}.page-content[data-v-768f4673]{padding:16px 0 28px}.page-content--auth[data-v-768f4673]{padding:0}}@media (max-width: 480px){.topnav[data-v-768f4673]{padding:0 10px}.btn-logout[data-v-768f4673]{padding:8px;font-size:0;width:40px;justify-content:center}.btn-logout svg[data-v-768f4673]{width:16px;height:16px}.nav-links.nav-links--open[data-v-768f4673]{width:min(320px,92vw)}.page-content[data-v-768f4673]{padding:12px 0 24px}.page-content--auth[data-v-768f4673]{padding:0}}.login-page[data-v-19c150d5]{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--app-bg)}.login-card[data-v-19c150d5]{width:100%;max-width:400px;background:var(--app-surface);border:1px solid var(--app-border);border-radius:16px;box-shadow:0 4px 24px #00000014;padding:40px 36px}.login-header[data-v-19c150d5]{text-align:center;margin-bottom:32px}.login-logo[data-v-19c150d5]{width:52px;height:52px;border-radius:14px;background:#1f6feb;color:#fff;font-size:22px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;margin-bottom:14px}.login-title[data-v-19c150d5]{font-size:20px;font-weight:700;color:var(--app-text-strong);margin:0 0 6px}.login-subtitle[data-v-19c150d5]{font-size:14px;color:var(--app-text-muted);margin:0}.login-form[data-v-19c150d5]{display:flex;flex-direction:column;gap:18px}label[data-v-19c150d5]{display:flex;flex-direction:column;gap:6px}.lbl[data-v-19c150d5]{font-size:13px;font-weight:500;color:var(--app-text)}input[type=email][data-v-19c150d5],input[type=password][data-v-19c150d5],input[type=text][data-v-19c150d5]{padding:10px 14px;border:1.5px solid var(--app-input-border);border-radius:8px;font-size:14px;color:var(--app-text-strong);background:var(--app-input-bg);transition:border-color .12s,box-shadow .12s;width:100%}input[data-v-19c150d5]:focus{outline:none;border-color:#1f6feb;box-shadow:0 0 0 3px #1f6feb1a}input[data-v-19c150d5]::placeholder{color:var(--app-text-faint)}.pw-wrap[data-v-19c150d5]{position:relative;display:flex;align-items:center}.pw-wrap input[data-v-19c150d5]{padding-right:42px}.pw-toggle[data-v-19c150d5]{position:absolute;right:10px;background:none;border:none;cursor:pointer;color:var(--app-text-faint);display:flex;align-items:center;padding:2px;transition:color .12s}.pw-toggle[data-v-19c150d5]:hover{color:var(--app-text)}.remember-box[data-v-19c150d5]{gap:8px;padding:12px 14px;border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface-2)}.remember-row[data-v-19c150d5]{display:flex;align-items:center;gap:10px}.remember-row input[data-v-19c150d5]{width:16px;height:16px;margin:0;accent-color:#1f6feb;flex-shrink:0}.remember-label[data-v-19c150d5]{font-size:13px;font-weight:600;color:var(--app-text)}.remember-help[data-v-19c150d5]{font-size:12px;line-height:1.55;color:var(--app-text-muted)}.alert-error[data-v-19c150d5]{background:#fee2e2;color:#dc2626;padding:10px 14px;border-radius:8px;font-size:13px;border:1px solid #fca5a5}.btn-submit[data-v-19c150d5]{padding:11px;background:#1f6feb;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .12s;margin-top:4px}.btn-submit[data-v-19c150d5]:hover{background:#1558b0}.help-toggle[data-v-19c150d5]{align-self:center;margin-top:-4px;border:none;background:transparent;color:var(--app-text-muted);font-size:13px;font-weight:600;cursor:pointer;padding:0;text-decoration:underline;text-underline-offset:3px}.help-toggle[data-v-19c150d5]:hover{color:#1f6feb}.help-card[data-v-19c150d5]{border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface-2);padding:12px 14px}.help-text[data-v-19c150d5]{margin:0;font-size:13px;line-height:1.6;color:var(--app-text-muted)}.help-link[data-v-19c150d5]{color:#1f6feb;font-weight:700;text-decoration:none;word-break:break-word}.help-link[data-v-19c150d5]:hover{text-decoration:underline}@media (max-width: 768px){.login-page[data-v-19c150d5]{padding:20px 12px}.login-card[data-v-19c150d5]{padding:26px 20px;border-radius:18px}input[type=email][data-v-19c150d5],input[type=password][data-v-19c150d5],input[type=text][data-v-19c150d5],.btn-submit[data-v-19c150d5]{min-height:44px;font-size:16px}.help-card[data-v-19c150d5],.remember-box[data-v-19c150d5]{padding:12px}}@media (max-width: 480px){.login-page[data-v-19c150d5]{padding:14px 8px}.login-card[data-v-19c150d5]{padding:22px 16px;border-radius:16px}.login-logo[data-v-19c150d5]{width:46px;height:46px;border-radius:12px;font-size:20px}}html.dark body{background:#0f172a!important;color:#e6edf3!important}html.dark{color-scheme:dark}html.dark .topnav{background:#161b22!important;border-bottom-color:#30363d!important;box-shadow:0 1px 3px #0006!important}html.dark .brand-mark{box-shadow:0 2px 6px #1f6feb73!important}html.dark .brand-name{color:#e6edf3!important}html.dark .nav-sep{background:#30363d!important}html.dark .nav-links a{color:#8b949e!important}html.dark .nav-links a:hover{color:#e6edf3!important;background:transparent!important}html.dark .nav-links a.router-link-active{color:#58a6ff!important;border-bottom-color:#388bfd!important;background:transparent!important}html.dark .nav-badge{background:#da3633!important}html.dark .nav-badge--amber{background:#9e6a03!important}html.dark .btn-theme{background:#21262d!important;border-color:#30363d!important;color:#8b949e!important}html.dark .btn-theme:hover{background:#30363d!important;color:#e6edf3!important}html.dark .user-avatar{box-shadow:0 0 0 2px #30363d!important}html.dark .user-name{color:#e6edf3!important}html.dark .user-role,html.dark .btn-logout{color:#6e7681!important}html.dark .btn-logout:hover{color:#f85149!important;background:#f851491a!important}html.dark .page-content,html.dark .app-wrapper{background:#0f172a!important}html.dark .page-title{color:#e6edf3!important}html.dark .page-subtitle,html.dark .section-label{color:#8b949e!important}html.dark .card,html.dark .selectors-card,html.dark .grid-card,html.dark .selector-card,html.dark .teacher-bar{background:#161b22!important;border-color:#30363d!important;box-shadow:0 1px 3px #0000004d!important}html.dark .info-box{background:#1c2128!important;border-color:#30363d!important}html.dark .info-box-lbl{color:#6e7681!important}html.dark .info-box-val{color:#e6edf3!important}html.dark .empty-prompt{background:#161b22!important;border-color:#30363d!important}html.dark .empty-prompt-text{color:#8b949e!important}html.dark .empty-icon-wrap{opacity:.4!important}html.dark .lbl{color:#c9d1d9!important}html.dark .el-lbl,html.dark .rs-lbl{color:#8b949e!important}html.dark .assign-lbl{color:#6e7681!important}html.dark .slots-label{color:#c9d1d9!important}html.dark input:not([type]),html.dark input[type=text],html.dark input[type=email],html.dark input[type=password],html.dark input[type=date],html.dark input[type=time],html.dark input[type=search],html.dark input[type=tel],html.dark input[type=number],html.dark input[type=url],html.dark select,html.dark textarea{background:#0d1117!important;border-color:#30363d!important;color:#e6edf3!important}html.dark input::placeholder,html.dark textarea::placeholder{color:#6e7681!important}html.dark input:focus,html.dark select:focus,html.dark textarea:focus{border-color:#58a6ff!important;box-shadow:0 0 0 3px #58a6ff26!important}html.dark input:disabled,html.dark select:disabled{opacity:.4!important}html.dark option{background:#161b22!important;color:#e6edf3!important}html.dark input[type=date]::-webkit-calendar-picker-indicator,html.dark input[type=time]::-webkit-calendar-picker-indicator{filter:invert(.9) brightness(1.1);opacity:.88}html.dark .s-input{color:#e6edf3!important}html.dark .el-input,html.dark .el-select,html.dark .rs-input,html.dark .al-search,html.dark .al-select,html.dark .date-input,html.dark .filter-select{background:#0d1117!important;border-color:#30363d!important;color:#e6edf3!important}html.dark .search-wrap{background:#0d1117!important;border-color:#30363d!important}html.dark .search-wrap:focus-within,html.dark .search-wrap--open{border-color:#58a6ff!important;box-shadow:0 0 0 3px #58a6ff26!important}html.dark .s-dropdown{background:#161b22!important;border-color:#30363d!important;box-shadow:0 8px 24px #0006!important}html.dark .s-option:hover{background:#21262d!important}html.dark .s-option--selected{background:#1f3a5f!important}html.dark .s-opt-name{color:#e6edf3!important}html.dark .s-opt-meta,html.dark .s-empty{color:#6e7681!important}html.dark .btn-primary{background:#1f6feb!important;color:#fff!important}html.dark .btn-primary:hover:not(:disabled){background:#388bfd!important}html.dark .btn-cancel,html.dark .btn-back{background:#21262d!important;border-color:#30363d!important;color:#c9d1d9!important}html.dark .btn-cancel:hover,html.dark .btn-back:hover{background:#30363d!important}html.dark .btn-clear{background:#161b22!important;border-color:#da3633!important;color:#f85149!important}html.dark .btn-clear:hover{background:#3b1820!important}html.dark .btn-danger{background:#da3633!important;color:#fff!important}html.dark .btn-danger:hover{background:#b91c1c!important}html.dark .btn-extra-lesson{background:#1f6feb!important;color:#fff!important}html.dark .btn-extra-lesson:hover{background:#388bfd!important}html.dark .slot-btn{background:#161b22!important;border-color:#30363d!important;color:#c9d1d9!important}html.dark .slot-btn:hover:not(:disabled){border-color:#58a6ff!important;color:#58a6ff!important;background:#1f3a5f!important}html.dark .slot-btn--selected{border-color:#1f6feb!important;background:#1f6feb!important;color:#fff!important}html.dark .week-btn,html.dark .nav-btn,html.dark .today-btn{background:#21262d!important;border-color:#30363d!important;color:#c9d1d9!important}html.dark .action-btn--edit,html.dark .action-btn--delete{background:#21262d!important;color:#c9d1d9!important;border-color:#30363d!important}html.dark .action-btn--complete{background:#1a3624!important;color:#3fb950!important;border-color:#238636!important}html.dark .action-btn--missed{background:#3b1820!important;color:#f85149!important;border-color:#da3633!important}html.dark .attach-dl-btn{color:#58a6ff!important}html.dark .attach-dl-btn:hover{color:#388bfd!important}html.dark .attach-remove{color:#6e7681!important}html.dark .attach-remove:hover{color:#f85149!important}html.dark .attach-upload-btn{background:#21262d!important;border-color:#30363d!important;color:#c9d1d9!important}html.dark .modal-x,html.dark .el-close{background:#21262d!important;color:#8b949e!important}html.dark .modal-x:hover,html.dark .el-close:hover{background:#30363d!important;color:#e6edf3!important}html.dark .btn-reschedule{background:#2d1e0f!important;border-color:#7c4100!important;color:#e3a400!important}html.dark .btn-rs-confirm{background:#9a3412!important;color:#fff!important}html.dark .btn-rs-cancel,html.dark .bulk-btn{background:#21262d!important;border-color:#30363d!important;color:#c9d1d9!important}html.dark .bulk-btn--active{border-color:#58a6ff!important;color:#58a6ff!important;background:#1f3a5f!important}html.dark .modal-backdrop,html.dark .el-backdrop{background:#010409b3!important}html.dark .modal,html.dark .assign-modal,html.dark .el-modal{background:#161b22!important;box-shadow:0 20px 60px #0009!important}html.dark .modal-hdr,html.dark .el-header{background:#161b22!important;border-bottom-color:#21262d!important}html.dark .modal-title,html.dark .el-title{color:#e6edf3!important}html.dark .modal-subtitle{color:#8b949e!important}html.dark .modal-body,html.dark .el-body{background:#161b22!important}html.dark .modal-ftr,html.dark .el-footer{background:#161b22!important;border-top-color:#21262d!important}html.dark .info-row{border-bottom-color:#21262d!important}html.dark .info-lbl{color:#6e7681!important}html.dark .info-val{color:#e6edf3!important}html.dark .status-sel{background:#0d1117!important;border-color:#30363d!important;color:#e6edf3!important}html.dark .status-ro{color:#c9d1d9!important}html.dark .status-ro--scheduled{background:#1f3a5f!important;color:#58a6ff!important}html.dark .status-ro--completed{background:#1a3624!important;color:#3fb950!important}html.dark .status-ro--missed{background:#3b1820!important;color:#f85149!important}html.dark .status-ro--rescheduled{background:#2d1e0f!important;color:#e3a400!important}html.dark .notes-input{background:#0d1117!important;border-color:#30363d!important;color:#e6edf3!important}html.dark .notes-counter{color:#6e7681!important}html.dark .notes-text{color:#c9d1d9!important}html.dark .attach-item{background:#1c2128!important;border-color:#30363d!important}html.dark .attach-name{color:#e6edf3!important}html.dark .attach-size,html.dark .attach-hint,html.dark .attach-none{color:#6e7681!important}html.dark .grade-badge{background:#1f3a5f!important;color:#58a6ff!important}html.dark .student-link{color:#58a6ff!important}html.dark .rs-section{background:#1f1609!important;border-color:#7c4100!important}html.dark .rs-section-title{color:#e3a400!important}html.dark .rs-preview{background:#1c2128!important;border-color:#30363d!important}html.dark .rs-preview-old{color:#6e7681!important}html.dark .rs-preview-new{color:#e3a400!important}html.dark .rs-ctx{background:#2d1e0f!important;color:#e3a400!important;border-color:#7c4100!important}html.dark .rs-reason{color:#c9d1d9!important}html.dark .rs-conflict{background:#3b1820!important;color:#f85149!important;border-color:#da3633!important}html.dark .cal-wrap{background:#161b22!important;border-color:#30363d!important}html.dark .cal-header{background:#161b22!important;border-bottom-color:#30363d!important}html.dark .cal-title{color:#e6edf3!important}html.dark .legend-item{color:#8b949e!important}html.dark .cal-scroll{background:#0f172a!important}html.dark .cal-grid{border-color:#30363d!important}html.dark .cal-dh{background:#1c2128!important;color:#8b949e!important;border-color:#30363d!important}html.dark .cal-cell{background:#161b22!important;border-color:#21262d!important}html.dark .cal-cell--out{background:#0d1117!important}html.dark .cal-cell--today{border-color:#388bfd!important;background:#1a2640!important}html.dark .cal-cell--weekend{background:#131a24!important}html.dark .cal-date{color:#8b949e!important}html.dark .cal-date--today{background:#388bfd!important;color:#fff!important}html.dark .cal-assign-btn{background:#21262d!important;color:#8b949e!important;border-color:#30363d!important}html.dark .cal-assign-btn:hover{background:#1f3a5f!important;color:#58a6ff!important;border-color:#1f6feb!important}html.dark .cal-event--scheduled{background:#1f3a5f!important;color:#58a6ff!important}html.dark .cal-event--completed{background:#1a3624!important;color:#3fb950!important}html.dark .cal-event--missed{background:#3b1820!important;color:#f85149!important}html.dark .cal-event--rescheduled{background:#7c3a0e!important;color:#ffa726!important}html.dark .evt-note-dot--unread{color:#e3a400!important}html.dark .evt-note-dot--read{color:#6e7681!important}html.dark .stat-chip{background:#1c2128!important;border-color:#30363d!important}html.dark .stat-chip--blue{background:#1f3a5f!important;border-color:#1f6feb!important}html.dark .stat-chip--green{background:#1a3624!important;border-color:#238636!important}html.dark .stat-chip--red{background:#3b1820!important;border-color:#da3633!important}html.dark .stat-chip--orange{background:#2d1e0f!important;border-color:#7c4100!important}html.dark .stat-num{color:#e6edf3!important}html.dark .stat-chip--blue .stat-num{color:#58a6ff!important}html.dark .stat-chip--green .stat-num{color:#3fb950!important}html.dark .stat-chip--red .stat-num{color:#f85149!important}html.dark .stat-chip--orange .stat-num{color:#e3a400!important}html.dark .stat-lbl{color:#6e7681!important}html.dark .alert-error{background:#3b1820!important;color:#f85149!important;border-color:#da3633!important}html.dark .alert-success{background:#1a3624!important;color:#3fb950!important;border-color:#238636!important}html.dark .el-error{background:#3b1820!important;border-color:#da3633!important;color:#f85149!important}html.dark .el-hint{color:#6e7681!important}html.dark .el-hint--warn{color:#e3a400!important}html.dark .recurring-section{background:#1c2128!important;border-color:#30363d!important}html.dark .toggle-switch{background:#30363d!important}html.dark .toggle-switch--on{background:#1f6feb!important}html.dark .toggle-text{color:#e6edf3!important}html.dark .toggle-hint{color:#6e7681!important}html.dark .recur-preview{color:#8b949e!important}html.dark .recur-dates-list{color:#c9d1d9!important}html.dark .no-slots{color:#6e7681!important}html.dark .assign-hint{background:#1f1609!important;border-color:#7c4100!important;color:#e3a400!important}html.dark .al-title{color:#e6edf3!important}html.dark .al-count{color:#8b949e!important}html.dark .al-empty{color:#6e7681!important}html.dark .export-group{border-color:#30363d!important}html.dark .btn-export{background:#161b22!important;border-color:transparent!important;color:#c9d1d9!important}html.dark .btn-export:hover:not(:disabled){background:#21262d!important;color:#e6edf3!important}html.dark .btn-export+.btn-export{border-left-color:#30363d!important}html.dark .btn-export--xlsx{color:#3fb950!important}html.dark .btn-export--xlsx:hover:not(:disabled){background:#1a3624!important;color:#3fb950!important}html.dark .export-status--ok{background:#1a3624!important;border-color:#238636!important;color:#3fb950!important}html.dark .export-status--err{background:#3b1820!important;border-color:#da3633!important;color:#f85149!important}html.dark .al-table-wrap{background:#161b22!important;border-color:#30363d!important}html.dark .al-table thead{background:#1c2128!important;border-bottom-color:#30363d!important}html.dark .al-table th{color:#8b949e!important}html.dark .al-table td{border-bottom-color:#21262d!important;color:#c9d1d9!important}html.dark .al-table tbody tr:hover{background:#1c2128!important}html.dark .ts-cell{color:#8b949e!important}html.dark .details-cell{color:#c9d1d9!important}html.dark .clear-confirm{background:#2d1e0f!important;border-color:#7c4100!important;color:#e3a400!important}html.dark .tag{background:#21262d!important;color:#8b949e!important}html.dark .tag--auth{background:#2d2254!important;color:#a78bfa!important}html.dark .tag--lesson{background:#1a3624!important;color:#3fb950!important}html.dark .tag--msg{background:#1f3a5f!important;color:#58a6ff!important}html.dark .tag--user{background:#2b2005!important;color:#e3b341!important}html.dark .tag--avail{background:#1a2640!important;color:#79c0ff!important}html.dark .tabs{background:#161b22!important;border-color:#30363d!important}html.dark .tab{color:#8b949e!important}html.dark .tab:hover{background:#21262d!important;color:#e6edf3!important}html.dark .tab.active{background:#1f3a5f!important;color:#58a6ff!important;border-color:#1f6feb!important}html.dark .tab-badge,html.dark .tab-badge--red{background:#da3633!important}html.dark .week-label{color:#8b949e!important}html.dark .day-header{background:#1c2128!important;border-left-color:#30363d!important;color:#8b949e!important}html.dark .day-header--today{background:#1f3a5f!important;border-left-color:#1f6feb!important;color:#58a6ff!important}html.dark .day-header--past{background:#161b22!important}html.dark .day-name{color:inherit!important}html.dark .day-count{color:#6e7681!important}html.dark .today-badge{background:#1f6feb!important;color:#fff!important}html.dark .lesson-row{background:#161b22!important;border-color:#21262d!important}html.dark .lesson-row:hover{background:#1c2128!important}html.dark .lesson-row--past{opacity:.65!important}html.dark .lesson-hours{color:#8b949e!important}html.dark .arrow{color:#6e7681!important}html.dark .chip--teacher{background:#1a3624!important;color:#3fb950!important}html.dark .chip--student{background:#1f3a5f!important;color:#58a6ff!important}html.dark .content-badge--note{background:#2b2005!important;border-color:#7c5c00!important;color:#e3b341!important}html.dark .content-badge--file{background:#2d2254!important;border-color:#6e4fc0!important;color:#a78bfa!important}html.dark .status-badge{background:#21262d!important;color:#8b949e!important}html.dark .status-badge.status-scheduled{background:#1f3a5f!important;color:#58a6ff!important}html.dark .status-badge.status-completed{background:#1a3624!important;color:#3fb950!important}html.dark .status-badge.status-missed{background:#3b1820!important;color:#f85149!important}html.dark .status-badge.status-rescheduled{background:#2d1e0f!important;color:#e3a400!important}html.dark .teacher-group{border-color:#30363d!important}html.dark .teacher-group-header{background:#1c2128!important;border-bottom-color:#30363d!important;color:#e6edf3!important}html.dark .teacher-group-header:hover{background:#21262d!important}html.dark .teacher-group-name{color:#e6edf3!important}html.dark .load-bar-labels{color:#6e7681!important}html.dark .load-numbers{color:#c9d1d9!important}html.dark .load-bar-track{background:#21262d!important}html.dark .group-total{color:#6e7681!important}html.dark .expand-icon{color:#484f58!important}html.dark .teacher-meta{color:#8b949e!important}html.dark .meta-chip{background:#21262d!important;color:#8b949e!important}html.dark .t-stats{color:#6e7681!important}html.dark .overdue-header{color:#f85149!important}html.dark .problem-row{background:#161b22!important;border-color:#21262d!important}html.dark .edit-modal{background:#161b22!important}html.dark .delete-confirm{background:#3b1820!important;border-color:#da3633!important;color:#f85149!important}html.dark .grid{border-color:#30363d!important}html.dark .g-corner{background:#1c2128!important;border-color:#30363d!important}html.dark .g-day-header,html.dark .g-time{background:#1c2128!important;color:#8b949e!important;border-color:#30363d!important}html.dark .g-cell{background:#161b22!important;border-color:#21262d!important}html.dark .g-cell:hover:not(.g-cell--on){background:#1c2128!important}html.dark .g-cell--on{background:#1a3624!important;box-shadow:inset 0 0 0 1px #238636!important}html.dark .g-cell--on:hover{background:#1e4a2e!important}html.dark .g-cell-check{color:#3fb950!important}html.dark .g-cell--weekend:not(.g-cell--on){background:#131a24!important}html.dark .g-cell--free{background:#1a3624!important;box-shadow:inset 0 0 0 1px #238636!important}html.dark .g-cell--taken{background:#3b1820!important;box-shadow:inset 0 0 0 1px #da3633!important}html.dark .grid-hint,html.dark .legend-item{color:#8b949e!important}html.dark .legend-swatch--on{background:#1a3624!important;border-color:#238636!important}html.dark .legend-swatch--off{background:#1c2128!important;border-color:#30363d!important}html.dark .legend-swatch--free{background:#1a3624!important;border-color:#238636!important}html.dark .legend-swatch--taken{background:#3b1820!important;border-color:#da3633!important}html.dark .free-table-wrap{background:#161b22!important;border-color:#30363d!important}html.dark .free-table th{background:#1c2128!important;color:#8b949e!important;border-color:#30363d!important}html.dark .free-table td{border-color:#21262d!important;color:#c9d1d9!important}html.dark .free-table tbody tr:hover{background:#1c2128!important}html.dark .ft-day{color:#8b949e!important}html.dark .ft-time{color:#58a6ff!important}html.dark .ft-badge--recurring{background:#1f3a5f!important;color:#58a6ff!important}html.dark .copy-btn,html.dark .download-btn{background:#21262d!important;border-color:#30363d!important;color:#c9d1d9!important}html.dark .copy-btn:hover,html.dark .download-btn:hover{background:#30363d!important}html.dark .copy-btn--done{background:#1a3624!important;border-color:#238636!important;color:#3fb950!important}html.dark .count-row{color:#8b949e!important}html.dark .count-chip{background:#1f3a5f!important;color:#58a6ff!important}html.dark .count-chip--rec{background:#2d2254!important;color:#a78bfa!important}html.dark .messages-layout{background:#0f172a!important}html.dark .sidebar{background:#161b22!important;border-color:#30363d!important}html.dark .sidebar-header{border-bottom-color:#30363d!important}html.dark .sidebar-title{color:#e6edf3!important}html.dark .thread-item{border-bottom-color:#21262d!important}html.dark .thread-item:hover{background:#1c2128!important}html.dark .thread-item--active{background:#1f3a5f!important;border-left-color:#58a6ff!important}html.dark .thread-preview{color:#8b949e!important}html.dark .thread-time{color:#6e7681!important}html.dark .unread-dot,html.dark .unread-badge{background:#58a6ff!important}html.dark .message-area{background:#161b22!important}html.dark .msg-header{border-bottom-color:#30363d!important;background:#161b22!important}html.dark .msg-subject{color:#e6edf3!important}html.dark .msg-bubble{background:#1c2128!important;border-color:#30363d!important}html.dark .msg-bubble--sent{background:#1f3a5f!important;border-color:#1f6feb!important}html.dark .msg-bubble--recv{background:#1c2128!important}html.dark .bubble-meta{color:#6e7681!important}html.dark .bubble-text{color:#c9d1d9!important}html.dark .compose{background:#161b22!important;border-color:#30363d!important}html.dark .compose-header{border-bottom-color:#30363d!important;color:#e6edf3!important}html.dark .field{border-color:#30363d!important}html.dark .field-label{color:#8b949e!important}html.dark .recipients-box{background:#0d1117!important;border-color:#30363d!important}html.dark .recipient-tag--teacher{background:#1a3624!important;color:#3fb950!important}html.dark .recipient-tag--student{background:#1f3a5f!important;color:#58a6ff!important}html.dark .recipient-tag--admin{background:#2b2005!important;color:#e3b341!important}html.dark .tag-remove{color:inherit!important;opacity:.7!important}html.dark .recipients-add .recipient-select{background:transparent!important;color:#8b949e!important;border:none!important}html.dark .bulk-row{background:#0d1117!important;border-top-color:#30363d!important;border-bottom-color:#30363d!important}html.dark .bulk-label{color:#8b949e!important}html.dark .msg-attach-item{background:#1c2128!important;border-color:#30363d!important;color:#c9d1d9!important}html.dark .compose-footer{border-top-color:#30363d!important;background:#161b22!important}html.dark .empty-state{color:#6e7681!important}html.dark .empty-icon{opacity:.4!important}html.dark .empty-text{color:#6e7681!important}html.dark .profile-card{background:#161b22!important;border-color:#30363d!important}html.dark .profile-row{border-bottom-color:#21262d!important}html.dark .profile-label{color:#6e7681!important}html.dark .profile-value{color:#e6edf3!important}html.dark .section-title{color:#8b949e!important}html.dark .form-card{background:#161b22!important;border-color:#30363d!important}html.dark .form-label{color:#c9d1d9!important}html.dark .form-input,html.dark .form-select,html.dark .form-textarea{background:#0d1117!important;border-color:#30363d!important;color:#e6edf3!important}html.dark .input-error{color:#f85149!important}html.dark .form-hint{color:#6e7681!important}html.dark .checkbox-label{color:#c9d1d9!important}html.dark .subject-chip{background:#21262d!important;border-color:#30363d!important;color:#c9d1d9!important}html.dark .subject-chip--active{background:#1f3a5f!important;border-color:#1f6feb!important;color:#58a6ff!important}html.dark .login-page{background:#0f172a!important}html.dark .login-card{background:#161b22!important;border-color:#30363d!important;box-shadow:0 8px 24px #0006!important}html.dark .login-title{color:#e6edf3!important}html.dark .login-subtitle{color:#8b949e!important}html.dark .pw-toggle{color:#6e7681!important}html.dark .pw-toggle:hover{color:#c9d1d9!important}html.dark .btn-submit{background:#1f6feb!important;color:#fff!important}html.dark .btn-submit:hover{background:#388bfd!important}html.dark .item-name{color:#e6edf3!important}html.dark .item-meta{color:#8b949e!important}html.dark .item-secondary{color:#6e7681!important}html.dark .meta-sep{color:#484f58!important}html.dark .ls-badge{color:#6e7681!important}html.dark .ls-badge--week{color:#58a6ff!important}html.dark .ls-badge--zero,html.dark .ls-sep{color:#484f58!important}html.dark .count-badge{background:#1f3a5f!important;color:#79c0ff!important}html.dark .search-input:focus{border-color:#58a6ff!important}html.dark .reset-btn{background:transparent!important;border-color:#30363d!important;color:#6e7681!important}html.dark .reset-btn:hover{border-color:#58a6ff!important;color:#58a6ff!important}html.dark .btn-secondary:hover{background:#30363d!important}html.dark .avatar-teacher{background:#1a3624!important;color:#3fb950!important}html.dark .avatar-student{background:#1f3a5f!important;color:#58a6ff!important}html.dark .avatar-admin{background:#2b2005!important;color:#e3b341!important}html.dark .status-active{background:#1a3624!important;color:#3fb950!important}html.dark .status-inactive{background:#3b1820!important;color:#f85149!important}html.dark .directory-hero,html.dark .directory-filters,html.dark .directory-loading,html.dark .directory-empty,html.dark .loading-card{background:#161b22!important;border-color:#30363d!important;box-shadow:0 12px 28px #0000004d!important}html.dark .directory-title,html.dark .directory-loading-title,html.dark .directory-empty-title,html.dark .loading-title{color:#e6edf3!important}html.dark .directory-subtitle,html.dark .directory-loading-text,html.dark .directory-empty-text,html.dark .loading-text{color:#8b949e!important}html.dark .directory-count,html.dark .directory-filter-toggle,html.dark .directory-reset{background:#21262d!important;border-color:#30363d!important;color:#c9d1d9!important}html.dark .directory-filter-toggle:hover,html.dark .directory-reset:hover{background:#30363d!important;border-color:#484f58!important}html.dark .directory-error{background:#3b1820!important;border-color:#da3633!important;color:#f85149!important}html.dark .form-section{border-bottom-color:#21262d!important}html.dark .required-star,html.dark .field-error{color:#f85149!important}html.dark .no-changes-hint,html.dark .section-hint{color:#6e7681!important}html.dark .form-actions{border-top-color:#21262d!important}html.dark .back-link{color:#58a6ff!important}html.dark .back-link:hover{color:#79c0ff!important}html.dark .crumb-link{color:#58a6ff!important}html.dark .crumb-sep,html.dark .crumb-current{color:#6e7681!important}html.dark .hero-title,html.dark .page-title,html.dark .field-label,html.dark .section-title,html.dark .toggle-text,html.dark .switch-label,html.dark .date-lbl,html.dark .slots-label,html.dark .lbl{color:#e6edf3!important}html.dark .hero-subtitle,html.dark .page-subtitle,html.dark .section-head p,html.dark .field-hint,html.dark .toggle-hint,html.dark .optional-lbl{color:#8b949e!important}html.dark .chip-option{background:#1c2128!important;border-color:#30363d!important;color:#c9d1d9!important}html.dark .chip-option:hover{background:#21262d!important;border-color:#58a6ff!important}html.dark .chip-option input,html.dark .switch-input{accent-color:#58a6ff!important}html.dark .switch-track{background:#30363d!important}html.dark .switch-input:checked+.switch-track,html.dark .toggle-switch--on{background:#1f6feb!important}html.dark .password-toggle{color:#8b949e!important}html.dark .password-toggle:hover{color:#e6edf3!important}html.dark .alert,html.dark .alert-success{background:#1a3624!important;border-color:#238636!important;color:#3fb950!important}html.dark .alert--error,html.dark .alert-error{background:#3b1820!important;border-color:#da3633!important;color:#f85149!important}html.dark .subject-option,html.dark .grade-option{background:#1c2128!important;border-color:#30363d!important;color:#c9d1d9!important}html.dark .subject-option:hover,html.dark .grade-option:hover{background:#21262d!important;border-color:#58a6ff!important}html.dark .subject-option input,html.dark .grade-option input{accent-color:#58a6ff!important}html.dark .lesson-mgmt-card{background:#1c2128!important;border-color:#30363d!important}html.dark .mgmt-desc{color:#8b949e!important}html.dark .mgmt-row{border-top-color:#21262d!important}html.dark .mgmt-label{color:#c9d1d9!important}html.dark .breadcrumb-link{color:#58a6ff!important}html.dark .breadcrumb-sep{color:#484f58!important}html.dark .breadcrumb-cur{color:#8b949e!important}html.dark .hero-card{background:#161b22!important;border-color:#30363d!important}html.dark .hero-avatar{background:#1f3a5f!important;color:#58a6ff!important}html.dark .hero-name{color:#e6edf3!important}html.dark .subject-badge{background:#21262d!important;border-color:#30363d!important;color:#c9d1d9!important}html.dark .stat-pill{background:#1c2128!important;border-color:#30363d!important}html.dark .stat-pill--green{background:#1a3624!important;border-color:#238636!important}html.dark .stat-pill--red{background:#3b1820!important;border-color:#da3633!important}html.dark .stat-pill .stat-num{color:#e6edf3!important}html.dark .stat-pill--green .stat-num{color:#3fb950!important}html.dark .stat-pill--red .stat-num{color:#f85149!important}html.dark .info-card{background:#161b22!important;border-color:#30363d!important}html.dark .info-card-title{color:#8b949e!important}html.dark .lessons-card{background:#161b22!important;border-color:#30363d!important}html.dark .lessons-title{color:#8b949e!important}html.dark .lesson-date{color:#e6edf3!important}html.dark .lesson-time{color:#6e7681!important}html.dark .status--scheduled{background:#1f3a5f!important;color:#58a6ff!important}html.dark .status--completed{background:#1a3624!important;color:#3fb950!important}html.dark .status--missed{background:#3b1820!important;color:#f85149!important}html.dark .no-lessons{color:#6e7681!important}html.dark .header-count{background:#161b22!important;border-color:#30363d!important}html.dark .count-num{color:#58a6ff!important}html.dark .count-lbl{color:#79c0ff!important}html.dark .student-card{background:#161b22!important;border-color:#30363d!important}html.dark .student-card:hover{background:#1c2128!important;box-shadow:0 3px 10px #0000004d!important}html.dark .student-avatar{background:#1f3a5f!important;color:#58a6ff!important}html.dark .student-name{color:#e6edf3!important}html.dark .student-meta{color:#8b949e!important}html.dark .grade-chip{background:#21262d!important;border-color:#30363d!important;color:#c9d1d9!important}html.dark .subjects-text{color:#6e7681!important}html.dark .lesson-count-num{color:#e6edf3!important}html.dark .lesson-count-lbl{color:#6e7681!important}html.dark .chevron{color:#484f58!important}html.dark .teacher-card{background:#161b22!important;border-color:#30363d!important}html.dark .teacher-name{color:#e6edf3!important}html.dark .teacher-subjects{color:#8b949e!important}html.dark .contact-icon{color:#6e7681!important}html.dark .contact-link{color:#58a6ff!important}html.dark .contact-link:hover{color:#79c0ff!important}html.dark .lesson-summary{background:#1c2128!important;border-color:#30363d!important}html.dark .summary-chip--blue{background:#1f3a5f!important;border-color:#1f6feb!important}html.dark .summary-chip--green{background:#1a3624!important;border-color:#238636!important}html.dark .summary-chip--blue .chip-num{color:#58a6ff!important}html.dark .summary-chip--green .chip-num{color:#3fb950!important}html.dark .chip-lbl{color:#6e7681!important}html.dark .full-name{color:#e6edf3!important}html.dark .profile-role{color:#8b949e!important}html.dark .divider{border-top-color:#21262d!important}html.dark h1,html.dark h2{color:#e6edf3!important}html.dark .avatar{background:#21262d!important;color:#8b949e!important}html.dark .avatar--admin{background:#2b2005!important;color:#e3b341!important}html.dark .avatar--teacher{background:#1a3624!important;color:#3fb950!important}html.dark .avatar--student{background:#1f3a5f!important;color:#58a6ff!important}html.dark .mail-client{background:#161b22!important;border-color:#30363d!important;box-shadow:0 2px 8px #0006!important}html.dark .btn-compose{background:#1f6feb!important;color:#fff!important}html.dark .btn-compose--active{background:#388bfd!important;box-shadow:0 0 0 3px #58a6ff40!important}html.dark .nav-item{background:transparent!important;color:#8b949e!important}html.dark .nav-item.active{background:#1f3a5f!important;color:#58a6ff!important}html.dark .nav-icon{opacity:.7!important}html.dark .nav-item.active .nav-icon{opacity:1!important}html.dark .message-list{border-right-color:#30363d!important}html.dark .list-header{background:#161b22!important;border-bottom-color:#30363d!important}html.dark .list-header h2{color:#e6edf3!important}html.dark .msg-row{border-bottom-color:#21262d!important}html.dark .msg-row:hover{background:#1c2128!important}html.dark .msg-row--unread{background:#1a2640!important}html.dark .msg-row--unread:hover{background:#1f3050!important}html.dark .msg-name{color:#c9d1d9!important}html.dark .msg-row--unread .msg-name{color:#e6edf3!important;font-weight:700!important}html.dark .msg-count{background:#21262d!important;color:#8b949e!important}html.dark .msg-row--unread .msg-count{background:#1f3a5f!important;color:#58a6ff!important}html.dark .msg-time{color:#6e7681!important}html.dark .msg-subject{color:#c9d1d9!important}html.dark .msg-row--unread .msg-subject{color:#e6edf3!important}html.dark .msg-preview{color:#6e7681!important}html.dark .unread-count{color:#58a6ff!important}html.dark .thread-view{background:#161b22!important}html.dark .toolbar{background:#161b22!important;border-bottom-color:#30363d!important}html.dark .btn-back,html.dark .btn-unread{background:#21262d!important;border-color:#30363d!important;color:#c9d1d9!important}html.dark .btn-back:hover,html.dark .btn-unread:hover{background:#30363d!important}html.dark .btn-reply{background:#21262d!important;border-color:#1f6feb!important;color:#58a6ff!important}html.dark .btn-delete{background:#21262d!important;border-color:#30363d!important;color:#8b949e!important}html.dark .thread-subject-bar{background:#161b22!important;border-bottom-color:#30363d!important}html.dark .thread-subject{color:#e6edf3!important}html.dark .thread-msg-count{color:#6e7681!important}html.dark .thread-messages{background:#0f172a!important}html.dark .conv-from{color:#c9d1d9!important}html.dark .conv-to-label{color:#6e7681!important}html.dark .conv-to{color:#8b949e!important}html.dark .conv-time{color:#6e7681!important}html.dark .bubble-attach--theirs{background:#21262d!important;border-color:#30363d!important}html.dark .bubble-attach--mine{background:#ffffff1f!important;border-color:#ffffff40!important}html.dark .bubble-attach-name{color:#c9d1d9!important}html.dark .bubble-attach-size{color:#6e7681!important}html.dark .bubble--theirs .bubble-attach-dl{color:#58a6ff!important;border-color:#58a6ff!important}html.dark .quick-reply-bar{border-top-color:#30363d!important}html.dark .btn-reply-bottom{background:#21262d!important;border-color:#30363d!important;color:#8b949e!important}html.dark .btn-reply-bottom:hover{background:#1f3a5f!important;border-color:#1f6feb!important;color:#58a6ff!important}html.dark .modal-header{background:#161b22!important;border-bottom-color:#30363d!important}html.dark .modal-header h2{color:#e6edf3!important}html.dark .btn-close{color:#8b949e!important}html.dark .btn-close:hover{color:#e6edf3!important}html.dark .modal-body{background:#161b22!important}html.dark .modal .info{color:#8b949e!important}html.dark .field-input{color:#e6edf3!important;background:transparent!important}html.dark .field-input::placeholder{color:#6e7681!important}html.dark .field-subject-readonly{color:#8b949e!important}html.dark .field-textarea{color:#c9d1d9!important;background:transparent!important}html.dark .field-textarea::placeholder{color:#6e7681!important}html.dark .bulk-btn--admin:hover,html.dark .bulk-btn--admin.bulk-btn--active{background:#2b2005!important;border-color:#d97706!important;color:#e3b341!important}html.dark .bulk-btn--teacher:hover,html.dark .bulk-btn--teacher.bulk-btn--active{background:#1a3624!important;border-color:#238636!important;color:#3fb950!important}html.dark .bulk-btn--student:hover,html.dark .bulk-btn--student.bulk-btn--active{background:#1f3a5f!important;border-color:#1f6feb!important;color:#58a6ff!important}html.dark .attach-chip-icon{color:#8b949e!important}html.dark .attach-chip-name{color:#c9d1d9!important}html.dark .attach-chip-size,html.dark .attach-chip-remove{color:#6e7681!important}html.dark .attach-chip-remove:hover{background:#3b1820!important;color:#f85149!important}html.dark .attach-count{color:#8b949e!important}html.dark .attach-btn{background:#161b22!important;border-color:#30363d!important;color:#8b949e!important}html.dark .attach-upload-label:hover .attach-btn{border-color:#58a6ff!important;color:#58a6ff!important;background:#1f3a5f!important}html.dark .attach-error{background:#3b1820!important;border-color:#da3633!important;color:#f85149!important}html.dark .no-recipients{background:#2d1e0f!important;border-top-color:#7c4100!important;color:#e3a400!important}html.dark .reply-history-toggle{color:#8b949e!important}html.dark .reply-history-toggle:hover{color:#c9d1d9!important}html.dark .history-count{color:#6e7681!important}html.dark .history-messages{background:#0d1117!important;border-color:#30363d!important}html.dark .history-arrow{color:#6e7681!important}html.dark .history-to{color:#8b949e!important}html.dark .history-time{color:#6e7681!important}html.dark .history-content{color:#8b949e!important}html.dark .btn-cancel{background:#21262d!important;border-color:#30363d!important;color:#c9d1d9!important}html.dark .btn-cancel:hover{background:#30363d!important}html.dark .conversation-list{border-right-color:#30363d!important}html.dark .conv-item{border-bottom-color:#21262d!important}html.dark .conv-item:hover{background:#1c2128!important}html.dark .conv-item.active{background:#1f3a5f!important}html.dark .conv-avatar{background:#1f3a5f!important;color:#58a6ff!important}html.dark .conv-name{color:#c9d1d9!important}html.dark .conv-time,html.dark .conv-preview{color:#6e7681!important}html.dark .conv-badge{background:#1f6feb!important;color:#fff!important}html.dark .lesson-row--overdue{background:#1e0a0a!important;border-color:#da3633!important}html.dark .lesson-row--overdue:hover{background:#271010!important}html.dark .lesson-date-sm{color:#6e7681!important}html.dark .overdue-date{color:#f85149!important}html.dark .teacher-group-body{background:#161b22!important}html.dark .group-empty{color:#6e7681!important}html.dark .week-nav{background:#1c2128!important;border-color:#30363d!important}html.dark .problems-banner{background:#2d1e0f!important;border-color:#7c4100!important}html.dark .problems-banner strong{color:#e3a400!important}html.dark .problems-banner p{color:#c9a227!important}html.dark .empty-state--ok{background:#1a3624!important;border-color:#238636!important}html.dark .modal-confirm{background:#161b22!important;box-shadow:0 20px 60px #0009!important}html.dark .mc-header{border-bottom-color:#21262d!important}html.dark .mc-title{color:#e6edf3!important}html.dark .mc-desc{color:#c9d1d9!important}html.dark .mc-lesson-card{background:#1c2128!important;border-color:#30363d!important}html.dark .mc-warn{background:#2d1e0f!important;border-color:#7c4100!important;color:#e3a400!important}html.dark .mc-footer{border-top-color:#21262d!important}html.dark .mc-btn--cancel{background:#21262d!important;border-color:#30363d!important;color:#c9d1d9!important}html.dark .mc-btn--cancel:hover{background:#30363d!important}html.dark .modal-edit{background:#161b22!important;box-shadow:0 20px 60px #0009!important}html.dark .me-header{border-bottom-color:#21262d!important}html.dark .me-title{color:#e6edf3!important}html.dark .me-subtitle{color:#8b949e!important}html.dark .me-close{background:#21262d!important;color:#8b949e!important}html.dark .me-close:hover{background:#30363d!important;color:#e6edf3!important}html.dark .me-lbl{color:#6e7681!important}html.dark .me-textarea{background:#0d1117!important;border-color:#30363d!important;color:#e6edf3!important}html.dark .me-counter{color:#6e7681!important}html.dark .me-counter--warn{color:#e3a400!important}html.dark .me-attach{background:#1c2128!important;border-color:#30363d!important}html.dark .me-attach-name{color:#c9d1d9!important}html.dark .me-attach-size{color:#6e7681!important}html.dark .me-attach-dl{background:#161b22!important;border-color:#1f6feb!important;color:#58a6ff!important}html.dark .me-attach-dl:hover{background:#1f3a5f!important}html.dark .me-attach-del{background:#161b22!important;border-color:#da3633!important;color:#f85149!important}html.dark .me-attach-del:hover{background:#3b1820!important}html.dark .me-no-attach{color:#6e7681!important}html.dark .me-footer{border-top-color:#21262d!important}html.dark .me-btn--cancel{background:#21262d!important;border-color:#30363d!important;color:#c9d1d9!important}html.dark .me-btn--cancel:hover{background:#30363d!important}html.dark .client-header{border-bottom-color:#30363d!important}html.dark .client-teacher{color:#e6edf3!important}html.dark .client-note{background:#0d1117!important;border-bottom-color:#30363d!important;color:#8b949e!important}html.dark .btn-copy,html.dark .btn-download{background:#21262d!important;border-color:#30363d!important;color:#c9d1d9!important}html.dark .btn-copy:hover,html.dark .btn-download:hover:not(:disabled){background:#1f3a5f!important;border-color:#1f6feb!important;color:#58a6ff!important}html.dark .btn-copy--done,html.dark .btn-download--done{background:#1a3624!important;border-color:#238636!important;color:#3fb950!important}html.dark .g-cell--ro.g-cell--col-hov,html.dark .g-cell--ro.g-cell--row-hov{filter:brightness(1.25)!important}html.dark .g-cell--ro.g-cell--exact-hov{filter:brightness(1.45)!important;box-shadow:inset 0 0 0 2px #58a6ff!important}html.dark .g-cell:not(.g-cell--ro).g-cell--col-hov,html.dark .g-cell:not(.g-cell--ro).g-cell--row-hov{filter:brightness(1.3)!important}html.dark .g-cell:not(.g-cell--ro).g-cell--exact-hov{filter:brightness(1.5)!important;box-shadow:inset 0 0 0 2px #58a6ff!important}html.dark .g-day-header--hov{background:#2e3d60!important}html.dark .g-day-header--hov .g-day-abbr{color:#93c5fd!important}html.dark .g-day-header--hov .g-day-full{color:#79c0ff!important}html.dark .g-time--hov{background:#2e3d60!important;color:#93c5fd!important}html.dark ::-webkit-scrollbar{width:8px;height:8px}html.dark ::-webkit-scrollbar-track{background:#0d1117}html.dark ::-webkit-scrollbar-thumb{background:#30363d;border-radius:4px}html.dark ::-webkit-scrollbar-thumb:hover{background:#484f58}html.dark .btn-hamburger{background:#21262d!important;border-color:#30363d!important;color:#8b949e!important}html.dark .btn-hamburger:hover{background:#30363d!important;color:#e6edf3!important}html.dark .nav-links.nav-links--open{background:#161b22!important;border-bottom-color:#30363d!important;box-shadow:0 6px 20px #00000080!important}html.dark .nav-links.nav-links--open a:hover{background:#21262d!important}html.dark .nav-links.nav-links--open a.router-link-active{background:#1f3a5f!important;border-left-color:#388bfd!important;border-bottom-color:transparent!important}html.dark .mobile-backdrop{background:#01040980!important}html.dark .readonly-field{background:#1c2128!important;border-color:#30363d!important}html.dark .readonly-value{color:#c9d1d9!important}html.dark .readonly-hint,html.dark .field-hint{color:#6e7681!important}html.dark .role-badge{background:#2b2005!important;color:#e3b341!important}html.dark .inactive-note{color:#484f58!important}html.dark .iban-ok{background:#1a3624!important;color:#3fb950!important}html.dark .iban-missing{background:#21262d!important;color:#484f58!important}html.dark .user-row{background:#161b22!important;border-color:#30363d!important;box-shadow:0 1px 3px #0000004d!important}html.dark .user-row:hover{box-shadow:0 4px 14px #00000059!important;border-color:#484f58!important}html.dark .count-pill{background:#1c2128!important;border-color:#30363d!important;color:#8b949e!important}html.dark .filter-bar{background:#161b22!important;border-color:#30363d!important;box-shadow:none!important}html.dark .search-input{background:#0d1117!important;border-color:#30363d!important;color:#e6edf3!important}html.dark .search-input::placeholder{color:#6e7681!important}html.dark .clear-btn{color:#6e7681!important}html.dark .clear-btn:hover{color:#c9d1d9!important}html.dark .filter-selects .filter-select{background:#0d1117!important;border-color:#30363d!important;color:#e6edf3!important}html.dark .btn-reset{border-color:#30363d!important;color:#6e7681!important}html.dark .btn-reset:hover{border-color:#58a6ff!important;color:#58a6ff!important}html.dark .row-name{color:#e6edf3!important}html.dark .row-contact{color:#8b949e!important}html.dark .row-guardian{color:#6e7681!important}html.dark .row-ico{color:#484f58!important}html.dark .row-dot{color:#30363d!important}html.dark .pill--blue{background:#1f3a5f!important;color:#79c0ff!important;border-color:#1f6feb!important}html.dark .pill--gray{background:#21262d!important;color:#c9d1d9!important;border-color:#30363d!important}html.dark .pill--green{background:#1a3624!important;color:#3fb950!important;border-color:#238636!important}html.dark .pill--admin{background:#2b2005!important;color:#e3b341!important;border-color:#7c5c00!important}html.dark .pill--iban-ok{background:#1a3624!important;color:#3fb950!important;border-color:#238636!important}html.dark .pill--iban-miss{background:#21262d!important;color:#484f58!important;border-color:#30363d!important}html.dark .stat-txt{color:#6e7681!important}html.dark .stat-txt--hi{color:#3fb950!important}html.dark .stat-txt--lo{color:#484f58!important}html.dark .stat-sep{color:#30363d!important}html.dark .status-dot--on{background:#1a3624!important;color:#3fb950!important}html.dark .status-dot--on .dot-bead{background:#3fb950!important}html.dark .status-dot--off{background:#3b1820!important;color:#f85149!important}html.dark .status-dot--off .dot-bead{background:#f85149!important}html.dark .btn-edit{background:#21262d!important;border-color:#30363d!important;color:#c9d1d9!important}html.dark .btn-edit:hover{background:#1f3a5f!important;border-color:#1f6feb!important;color:#58a6ff!important}html.dark .btn-del{background:#21262d!important;border-color:#30363d!important;color:#6e7681!important}html.dark .btn-del:hover{background:#3b1820!important;border-color:#da3633!important;color:#f85149!important}html.dark .empty-box{background:#161b22!important;border-color:#30363d!important}html.dark .empty-title{color:#8b949e!important}html.dark .empty-sub{color:#484f58!important}html.dark .empty-graphic{opacity:.4!important}html.dark .iban-value{color:#c9d1d9!important}html.dark .iban-none{color:#30363d!important}html.dark .row-iban--set .row-ico{color:#3fb950!important}html.dark .page-hdr{background:#161b22!important;border-color:#30363d!important;box-shadow:0 1px 3px #0000004d!important}html.dark .hdr-title{color:#e6edf3!important}html.dark .hdr-sub{color:#6e7681!important}html.dark .hdr-avatar--blue{background:#1f3a5f!important;color:#58a6ff!important}html.dark .hdr-avatar--green{background:#1a3624!important;color:#3fb950!important}html.dark .hdr-avatar--amber{background:#2b2005!important;color:#e3b341!important}html.dark .badge--on{background:#1a3624!important;color:#3fb950!important}html.dark .badge--off{background:#3b1820!important;color:#f85149!important}html.dark .sec-ico--blue{background:#1f3a5f!important;color:#58a6ff!important}html.dark .sec-ico--purple{background:#2d2254!important;color:#a78bfa!important}html.dark .sec-ico--green{background:#1a3624!important;color:#3fb950!important}html.dark .sec-ico--amber{background:#2b2005!important;color:#e3b341!important}html.dark .sec-ico--slate{background:#21262d!important;color:#8b949e!important}html.dark .sec-ico--red{background:#3b1820!important;color:#f85149!important}html.dark .sec-label{color:#c9d1d9!important}html.dark .bc-link{color:#58a6ff!important}html.dark .bc-sep{color:#484f58!important}html.dark .bc-cur{color:#6e7681!important}html.dark .toggle-track{background:#374151!important}html.dark .toggle-label{color:#c9d1d9!important}html.dark .chip-opt{background:#1c2128!important;border-color:#30363d!important;color:#c9d1d9!important}html.dark .chip-opt:hover{background:#21262d!important;border-color:#58a6ff!important;color:#79c0ff!important}html.dark .chip-opt:has(input:checked){background:#1f3a5f!important;border-color:#1f6feb!important;color:#58a6ff!important}html.dark .form-footer{background:#1c2128!important;border-top-color:#21262d!important}html.dark .alert--ok{background:#1a3624!important;color:#3fb950!important;border-color:#238636!important}html.dark .alert--err{background:#3b1820!important;color:#f85149!important;border-color:#da3633!important}html.dark .mgmt-count{color:#8b949e!important}html.dark .cnt--warn strong{color:#f85149!important}html.dark .cnt--ok strong{color:#3fb950!important}html.dark .loading-state{color:#6e7681!important}html.dark .recur-indefinite{background:#1f3a5f!important;border-color:#1f6feb!important;color:#79c0ff!important}html.dark .optional-lbl{color:#6e7681!important}html.dark .recur-rule-row{background:#1c2128!important;border-color:#30363d!important}html.dark .recur-rule-teacher{color:#e6edf3!important}html.dark .recur-rule-sep{color:#484f58!important}html.dark .recur-rule-time{color:#8b949e!important}html.dark .recur-rule-badge{background:#1f3a5f!important;border-color:#1f6feb!important;color:#79c0ff!important}html.dark .recur-stop-btn{background:transparent!important;border-color:#30363d!important;color:#8b949e!important}html.dark .recur-stop-btn:hover{border-color:#6e7681!important;color:#c9d1d9!important}html.dark .recur-stop-date{background:#0d1117!important;border-color:#30363d!important;color:#e6edf3!important}html.dark .recur-stop-confirm{background:#21262d!important;color:#e6edf3!important}html.dark .recur-stop-confirm:hover:not(:disabled){background:#30363d!important}html.dark .recur-stop-cancel{background:#161b22!important;border-color:#30363d!important;color:#8b949e!important}html.dark .recur-stop-cancel:hover{background:#21262d!important}html.dark .recur-stop-error{color:#f85149!important}html.dark .modal-recur-badge{background:#1f3a5f!important;border-color:#1f6feb!important;color:#79c0ff!important}html.dark .btn-stop-recur{background:#161b22!important;border-color:#30363d!important;color:#8b949e!important}html.dark .btn-stop-recur:hover{background:#21262d!important;border-color:#6e7681!important}html.dark .stop-recur-section{background:#1c2128!important;border-color:#30363d!important}html.dark .stop-recur-title{color:#e6edf3!important}html.dark .stop-recur-desc{color:#8b949e!important}html.dark .btn-stop-recur-confirm{background:#21262d!important;color:#e6edf3!important}html.dark .btn-stop-recur-confirm:hover:not(:disabled){background:#30363d!important}html.dark .mail-client{background:#0d1117!important;border-color:#30363d!important;box-shadow:0 4px 24px #0006!important}html.dark .sidebar{background:#161b22!important;border-right-color:#21262d!important}html.dark .sidebar-brand{border-bottom-color:#21262d!important}html.dark .brand-title{color:#e6edf3!important}html.dark .brand-icon{color:#58a6ff!important}html.dark .sidebar-sep{background:#21262d!important}html.dark .btn-compose{background:#1f6feb!important}html.dark .btn-compose:hover{background:#388bfd!important}html.dark .btn-compose--active{background:#1f6feb!important;box-shadow:0 0 0 3px #388bfd40!important}html.dark .nav-item{color:#8b949e!important}html.dark .nav-item:hover{background:#21262d!important;color:#e6edf3!important}html.dark .nav-item--active{background:#1f3a5f!important;color:#58a6ff!important}html.dark .nav-item--active .nav-icon{opacity:1!important}html.dark .nav-badge{background:#1f6feb!important}html.dark .nav-item--active .nav-badge{background:#388bfd!important}html.dark .brand-unread{background:#da3633!important}html.dark .message-list{background:#0d1117!important}html.dark .list-header{border-bottom-color:#21262d!important}html.dark .list-title{color:#e6edf3!important}html.dark .list-count{background:#21262d!important;color:#8b949e!important}html.dark .filter-btn{background:#161b22!important;border-color:#30363d!important;color:#8b949e!important}html.dark .filter-btn svg{color:#484f58!important}html.dark .filter-btn:hover{border-color:#58a6ff!important;color:#58a6ff!important}html.dark .filter-btn:hover svg{color:#58a6ff!important}html.dark .filter-btn--active{background:#1f3a5f!important;border-color:#388bfd!important;color:#79c0ff!important}html.dark .filter-btn--active svg{color:#79c0ff!important}html.dark .search-bar .search-input{background:#161b22!important;border-color:#30363d!important;color:#e6edf3!important}html.dark .search-bar .search-input:focus{border-color:#388bfd!important;box-shadow:0 0 0 3px #388bfd26!important}html.dark .search-bar .search-icon,html.dark .search-clear{color:#484f58!important}html.dark .search-clear:hover{color:#c9d1d9!important;background:#21262d!important}html.dark .empty-icon-wrap{color:#30363d!important}html.dark .empty-title{color:#484f58!important}html.dark .empty-hint{color:#30363d!important}html.dark .msg-row{border-bottom-color:#161b22!important}html.dark .msg-row:hover{background:#161b22!important}html.dark .msg-row--unread{background:#111827!important}html.dark .msg-row--unread:hover{background:#1a2236!important}html.dark .msg-row:focus-visible{background:#1f3a5f!important;outline-color:#388bfd!important}html.dark .unread-bar--on{background:#58a6ff!important}html.dark .msg-name{color:#8b949e!important}html.dark .msg-row--unread .msg-name{color:#e6edf3!important}html.dark .msg-subject{color:#6e7681!important}html.dark .msg-row--unread .msg-subject{color:#c9d1d9!important}html.dark .msg-preview{color:#484f58!important}html.dark .msg-row--unread .msg-preview{color:#6e7681!important}html.dark .msg-time{color:#484f58!important}html.dark .msg-row--unread .msg-time{color:#6e7681!important}html.dark .msg-count{background:#21262d!important;color:#6e7681!important}html.dark .msg-row--unread .msg-count{background:#1f3a5f!important;color:#79c0ff!important}html.dark .unread-dot{background:#58a6ff!important}html.dark .thread-view{background:#0d1117!important}html.dark .thread-header{border-bottom-color:#21262d!important}html.dark .btn-back{background:#161b22!important;border-color:#30363d!important;color:#8b949e!important}html.dark .btn-back:hover{background:#21262d!important;border-color:#484f58!important;color:#c9d1d9!important}html.dark .header-subject{color:#e6edf3!important}html.dark .header-msg-count{background:#21262d!important;color:#6e7681!important}html.dark .btn-icon{background:#161b22!important;border-color:#30363d!important;color:#6e7681!important}html.dark .btn-icon:hover{background:#21262d!important;border-color:#484f58!important;color:#c9d1d9!important}html.dark .btn-reply{background:#161b22!important;border-color:#388bfd!important;color:#58a6ff!important}html.dark .btn-reply:hover{background:#1f3a5f!important}html.dark .btn-delete{background:#161b22!important;border-color:#30363d!important;color:#484f58!important}html.dark .btn-delete:hover{background:#3b1820!important;border-color:#da3633!important;color:#f85149!important}html.dark .header-sep{background:#21262d!important}html.dark .bubble--theirs{background:#1c2128!important;color:#c9d1d9!important}html.dark .bubble--mine{background:#1f6feb!important;color:#fff!important}html.dark .attach-row--theirs{background:#ffffff0a!important;color:#8b949e!important}html.dark .attach-row--theirs .attach-dl{color:#58a6ff!important}html.dark .meta-name{color:#8b949e!important}html.dark .meta-sep{color:#30363d!important}html.dark .meta-time{color:#484f58!important}html.dark .reply-bar{background:#161b22!important;border-color:#30363d!important}html.dark .reply-bar:hover,html.dark .reply-bar:focus-visible{background:#1f3a5f!important;border-color:#388bfd!important}html.dark .reply-bar-text{color:#484f58!important}html.dark .reply-bar:hover .reply-bar-text{color:#8b949e!important}html.dark .reply-bar-prompt svg{color:#30363d!important}html.dark .compose{background:#0d1117!important}html.dark .compose-header{border-bottom-color:#21262d!important}html.dark .compose-title{color:#e6edf3!important}html.dark .field{border-bottom-color:#21262d!important}html.dark .field-label{color:#6e7681!important}html.dark .field-input{color:#e6edf3!important}html.dark .field-textarea{color:#c9d1d9!important}html.dark .field-subject-readonly{color:#6e7681!important}html.dark .form-divider{background:#21262d!important}html.dark .rtag--admin{background:#3a2a10!important;color:#e6a817!important}html.dark .rtag--teacher{background:#0d2b1e!important;color:#3fb950!important}html.dark .rtag--student{background:#1f3a5f!important;color:#79c0ff!important}html.dark .recipient-search{color:#e6edf3!important}html.dark .recipient-drop{background:#1c2128!important;border-color:#30363d!important;box-shadow:0 8px 24px #0006!important}html.dark .drop-group+.drop-group{border-top-color:#21262d!important}html.dark .drop-group-label{color:#484f58!important}html.dark .drop-item{color:#c9d1d9!important}html.dark .drop-item:hover{background:#21262d!important}html.dark .drop-name{color:#e6edf3!important}html.dark .drop-empty{color:#484f58!important}html.dark .drop-avatar--admin{background:#3a2a10!important;color:#e6a817!important}html.dark .drop-avatar--teacher{background:#0d2b1e!important;color:#3fb950!important}html.dark .drop-avatar--student{background:#1f3a5f!important;color:#79c0ff!important}html.dark .drop-role-badge--admin{background:#3a2a10!important;color:#e6a817!important}html.dark .drop-role-badge--teacher{background:#0d2b1e!important;color:#3fb950!important}html.dark .drop-role-badge--student{background:#1f3a5f!important;color:#79c0ff!important}html.dark .bulk-row{background:#161b22!important;border-bottom-color:#21262d!important}html.dark .bulk-label{color:#484f58!important}html.dark .bulk-btn{background:#1c2128!important;border-color:#30363d!important;color:#8b949e!important}html.dark .bulk-btn--admin.bulk-btn--active{background:#3a2a10!important;border-color:#e6a817!important;color:#e6a817!important}html.dark .bulk-btn--teacher.bulk-btn--active{background:#0d2b1e!important;border-color:#3fb950!important;color:#3fb950!important}html.dark .bulk-btn--student.bulk-btn--active{background:#1f3a5f!important;border-color:#58a6ff!important;color:#79c0ff!important}html.dark .attach-chip{background:#1c2128!important;border-color:#30363d!important}html.dark .chip-name{color:#c9d1d9!important}html.dark .chip-size,html.dark .chip-icon,html.dark .chip-remove{color:#484f58!important}html.dark .chip-remove:hover{background:#3b1820!important;color:#f85149!important}html.dark .attach-btn{background:#161b22!important;border-color:#30363d!important;color:#6e7681!important}html.dark .attach-label:hover .attach-btn{border-color:#388bfd!important;color:#58a6ff!important;background:#1f3a5f!important}html.dark .attach-counter{color:#484f58!important}html.dark .attach-formats{color:#30363d!important}html.dark .compose-actions{border-top-color:#21262d!important}html.dark .send-error{background:#2d1b1b!important;border-color:#6b2727!important;color:#f87171!important}html.dark .send-hint{color:#6e7681!important}html.dark .btn-cancel{background:#161b22!important;border-color:#30363d!important;color:#8b949e!important}html.dark .btn-cancel:hover{background:#21262d!important;border-color:#484f58!important}html.dark .reply-history{border-top-color:#21262d!important}html.dark .history-toggle{color:#6e7681!important}html.dark .history-toggle:hover{color:#c9d1d9!important}html.dark .history-count{color:#484f58!important}html.dark .history-msgs{background:#161b22!important;border-color:#21262d!important}html.dark .history-msg{border-bottom-color:#21262d!important}html.dark .history-from{color:#c9d1d9!important}html.dark .history-arrow{color:#30363d!important}html.dark .history-to{color:#6e7681!important}html.dark .history-time{color:#484f58!important}html.dark .history-body{color:#8b949e!important}html.dark .subtitle-warn{color:#f85149!important}html.dark .tab-badge--gray{background:#484f58!important}html.dark .lesson-row--selected{background:#1f3a5f!important;border-color:#1f6feb!important}html.dark .lesson-row--orphan{background:#1e1500!important;border-color:#7c5c00!important}html.dark .lesson-row--conflict{background:#1e0d2e!important;border-color:#5b21b6!important}html.dark .chip--missing{background:#3b1820!important;color:#f85149!important}html.dark .content-badge--recurring{background:#1f3a5f!important;border-color:#1f6feb!important;color:#58a6ff!important}html.dark .action-btn--complete{background:#1a3624!important;border-color:#238636!important;color:#3fb950!important}html.dark .action-btn--complete:hover{background:#238636!important;color:#fff!important}html.dark .action-btn--missed{background:#3b1820!important;border-color:#da3633!important;color:#f85149!important}html.dark .action-btn--missed:hover{background:#da3633!important;color:#fff!important}html.dark .action-btn--edit{background:#1f3a5f!important;border-color:#1f6feb!important;color:#58a6ff!important}html.dark .action-btn--edit:hover{background:#1f6feb!important;color:#fff!important}html.dark .action-btn--delete{color:#6e7681!important}html.dark .action-btn--delete:hover{color:#f85149!important}html.dark .filter-panel{background:#1c2128!important;border-color:#30363d!important}html.dark .filter-lbl{color:#6e7681!important}html.dark .filter-select,html.dark .filter-input{background:#0d1117!important;border-color:#30363d!important;color:#e6edf3!important}html.dark .filter-select:focus,html.dark .filter-input:focus{border-color:#1f6feb!important;box-shadow:0 0 0 3px #1f6feb33!important}html.dark .btn-clear{background:#161b22!important;border-color:#30363d!important;color:#8b949e!important}html.dark .btn-clear:hover{border-color:#6e7681!important;color:#c9d1d9!important}html.dark .list-count{color:#6e7681!important}html.dark .bulk-count{color:#58a6ff!important}html.dark .btn-secondary{background:#21262d!important;border-color:#30363d!important;color:#c9d1d9!important}html.dark .btn-secondary:hover{background:#30363d!important;border-color:#484f58!important}html.dark .btn-secondary--cancel{color:#6e7681!important}html.dark .btn-secondary--cancel:hover{color:#f85149!important;border-color:#da3633!important}html.dark .btn-export{background:#1f3a5f!important;border-color:#1f6feb!important;color:#58a6ff!important}html.dark .btn-export:hover:not(:disabled){background:#1f6feb!important;color:#fff!important}html.dark .btn-export--xlsx{background:#1a3624!important;border-color:#238636!important;color:#3fb950!important}html.dark .btn-export--xlsx:hover:not(:disabled){background:#238636!important;color:#fff!important}html.dark .list-export-msg--ok{background:#1a3624!important;border-color:#238636!important;color:#3fb950!important}html.dark .list-export-msg--error{background:#3b1820!important;border-color:#da3633!important;color:#f85149!important}html.dark .problem-banner{background:#1c2128!important;border-color:#30363d!important}html.dark .problem-banner--overdue{background:#2d1e0f!important;border-color:#7c4100!important}html.dark .problem-banner--overdue strong{color:#e3a400!important}html.dark .problem-banner--overdue p{color:#c9a227!important}html.dark .problem-banner--orphan{background:#1e1500!important;border-color:#7c5c00!important}html.dark .problem-banner--orphan strong{color:#d4a017!important}html.dark .problem-banner--orphan p{color:#a8871c!important}html.dark .problem-banner--conflict{background:#1e0d2e!important;border-color:#5b21b6!important}html.dark .problem-banner--conflict strong{color:#a78bfa!important}html.dark .problem-banner--conflict p{color:#8b6fd8!important}html.dark .modal-detail{background:#161b22!important;box-shadow:0 20px 60px #0009!important}html.dark .md-header{border-bottom-color:#21262d!important}html.dark .md-title{color:#e6edf3!important}html.dark .md-subtitle{color:#8b949e!important}html.dark .md-body{background:#161b22!important}html.dark .md-info-grid{background:#1c2128!important;border-color:#30363d!important}html.dark .md-info-lbl{color:#6e7681!important}html.dark .md-info-val{color:#c9d1d9!important}html.dark .md-section-lbl{color:#6e7681!important}html.dark .md-footer{border-top-color:#21262d!important}html.dark .md-btn-delete{background:#161b22!important;border-color:#da3633!important;color:#f85149!important}html.dark .md-btn-delete:hover{background:#3b1820!important}html.dark .empty-state{background:#161b22!important;border-color:#21262d!important}html.dark .alert-error{background:#3b1820!important;border-color:#da3633!important;color:#f85149!important}html.dark .modal-persons{color:#8b949e!important}html.dark .modal-info-card{background:#1c2128!important;border-color:#30363d!important}html.dark .modal-info-item{border-bottom-color:#30363d!important}html.dark .modal-info-item:last-child{border-bottom-color:transparent!important}html.dark .mic-lbl{color:#6e7681!important}html.dark .mic-val{color:#c9d1d9!important}html.dark .modal-section-lbl{color:#6e7681!important;border-bottom-color:#30363d!important}html.dark .hero-card,html.dark .form-shell,html.dark .info-card,html.dark .toolbar-card,html.dark .selector-card,html.dark .grid-card,html.dark .availability-card,html.dark .availability-loading,html.dark .empty-card,html.dark .loading-card,html.dark .directory-hero,html.dark .directory-filters,html.dark .directory-loading,html.dark .directory-empty,html.dark .audit-hero,html.dark .audit-stats,html.dark .audit-filters,html.dark .audit-loading,html.dark .audit-empty,html.dark .audit-group,html.dark .summary-card,html.dark .analytics-card,html.dark .teacher-card,html.dark .problem-card,html.dark .day-card,html.dark .filter-shell,html.dark .detail-modal,html.dark .confirm-modal,html.dark .mail-shell,html.dark .mail-content,html.dark .thread-view,html.dark .compose,html.dark .group,html.dark .reminder-card,html.dark .student-card,html.dark .timeline-card,html.dark .card,html.dark .client-card{background:var(--app-surface)!important;border-color:var(--app-border)!important;box-shadow:var(--app-shadow)!important}html.dark .hero-card,html.dark .audit-hero,html.dark .list-header,html.dark .compose-header,html.dark .compose-meta,html.dark .thread-header,html.dark .mail-content,html.dark .summary-card,html.dark .day-card__head,html.dark .cal-header{background:linear-gradient(180deg,var(--app-surface) 0%,var(--app-surface-2) 100%)!important}html.dark .stats-grid .mini-stat,html.dark .today-list__item,html.dark .entity-list__item,html.dark .teacher-lesson-row,html.dark .attachment-row,html.dark .teacher-load-card,html.dark .detail-chip,html.dark .detail-section,html.dark .rule-row,html.dark .rule-inline-editor,html.dark .inline-empty,html.dark .search-input,html.dark .field-input,html.dark .field-subject-readonly,html.dark .recipients-box,html.dark .recipient-drop,html.dark .field-textarea,html.dark .history-msg,html.dark .attach-chip,html.dark .thread-card,html.dark .message-bubble--theirs,html.dark .attachment-card,html.dark .reply-cta,html.dark .reminder-card,html.dark .meta-chip--gray,html.dark .tag--grade,html.dark .stat-box,html.dark .legend-chip,html.dark .availability-grid-wrap,html.dark .grid,html.dark .remove-summary,html.dark .audit-entry,html.dark .audit-technical-list,html.dark .info-row,html.dark .modal,html.dark .modal-hdr,html.dark .modal-ftr,html.dark .modal-info-card,html.dark .attach-item,html.dark .notes-text,html.dark .stop-recur-section{background:var(--app-surface-soft)!important;border-color:var(--app-border)!important}html.dark .search-input,html.dark .field-input,html.dark .field-subject-readonly,html.dark .recipient-search,html.dark .field-textarea,html.dark .status-sel,html.dark .notes-input,html.dark .rs-input,html.dark .search-field input,html.dark .filter-field input,html.dark .filter-field select,html.dark .audit-search-input,html.dark .audit-select,html.dark .audit-date-input,html.dark input:not([type=checkbox]),html.dark select,html.dark textarea{background:var(--app-input-bg)!important;border-color:var(--app-input-border)!important;color:var(--app-text-strong)!important}html.dark .page-title,html.dark .hero-title,html.dark .card-title,html.dark .directory-title,html.dark .audit-title,html.dark .audit-group-title,html.dark .audit-entry-actor,html.dark .thread-subject,html.dark .compose-title,html.dark .thread-name,html.dark .group-title,html.dark .student-name,html.dark .teacher-name,html.dark .client-teacher,html.dark .availability-title,html.dark .modal-title,html.dark .modal-lesson-subject,html.dark .empty-title,html.dark .loading-title{color:var(--app-text-strong)!important}html.dark .page-subtitle,html.dark .hero-subtitle,html.dark .card-kicker,html.dark .directory-subtitle,html.dark .audit-subtitle,html.dark .audit-stat-note,html.dark .audit-entry-summary,html.dark .audit-entry-time,html.dark .audit-entry-category,html.dark .audit-entry-role,html.dark .thread-preview,html.dark .list-subtitle,html.dark .compose-subtitle,html.dark .loading-text,html.dark .empty-text,html.dark .helper-copy,html.dark .availability-subtitle,html.dark .availability-card__copy,html.dark .availability-footnote,html.dark .info-label,html.dark .info-value--muted,html.dark .lesson-row p,html.dark .card-summary,html.dark .modal-persons,html.dark .modal-subtitle,html.dark .notes-counter,html.dark .attach-size,html.dark .attach-none,html.dark .hint,html.dark .field-hint,html.dark .toggle-hint{color:var(--app-text-muted)!important}html.dark .header-btn,html.dark .tab-chip,html.dark .toolbar-btn,html.dark .filters-toggle,html.dark .filters-clear,html.dark .mini-btn,html.dark .severity-filter,html.dark .text-action,html.dark .icon-btn,html.dark .directory-filter-toggle,html.dark .directory-reset,html.dark .audit-refresh,html.dark .audit-export-btn,html.dark .audit-reset,html.dark .audit-copy,html.dark .audit-filter-toggle,html.dark .ghost-btn,html.dark .filter-btn,html.dark .action-btn,html.dark .delete-btn,html.dark .btn-back,html.dark .btn-ghost,html.dark .btn-cancel,html.dark .btn-secondary,html.dark .btn-light,html.dark .btn-stop-recur,html.dark .attach-upload-btn,html.dark .attach-dl-btn,html.dark .attach-btn,html.dark .btn-copy,html.dark .btn-download{background:var(--app-surface)!important;border-color:var(--app-border)!important;color:var(--app-text)!important}html.dark .alert-warning,html.dark .warning-inline,html.dark .inline-alert--warning,html.dark .client-empty{background:color-mix(in srgb,var(--app-warning) 18%,var(--app-surface))!important;border-color:color-mix(in srgb,var(--app-warning) 28%,var(--app-border))!important;color:#ffd58a!important}html.dark .teacher-card__hint,html.dark .hero-count-label,html.dark .stat-pill-label,html.dark .student-metric,html.dark .teacher-metric,html.dark .sidebar-note__text,html.dark .sidebar-note__title,html.dark .brand-eyebrow,html.dark .nav-item,html.dark .empty-prompt-text,html.dark .client-note,html.dark .section-label,html.dark .g-day-full,html.dark .g-time,html.dark .search-icon,html.dark .no-changes-hint,html.dark .readonly-hint,html.dark .field-hint{color:var(--app-text-muted)!important}html.dark .inline-empty,html.dark .remove-summary,html.dark .rule-row,html.dark .rule-date-hint,html.dark .availability-footnote{color:var(--app-text)!important}html.dark .sidebar-note,html.dark .nav-item--active,html.dark .nav-item:hover{background:var(--app-surface)!important}html.dark .lesson-card--attention,html.dark .lesson-card--problem,html.dark .lesson-card--selected,html.dark .day-card--today .day-card__head{background:var(--app-surface-2)!important}html.dark .lesson-card--attention{box-shadow:inset 3px 0 color-mix(in srgb,var(--app-warning) 75%,transparent)}html.dark .lesson-card--problem{box-shadow:inset 3px 0 color-mix(in srgb,var(--app-danger) 72%,transparent)}html.dark .lesson-card--selected,html.dark .day-card--today .day-card__head{box-shadow:inset 3px 0 color-mix(in srgb,var(--app-primary) 72%,transparent)}html.dark .mini-btn--complete,html.dark .status-pill--completed,html.dark .inline-badge--success{background:color-mix(in srgb,var(--app-success) 16%,var(--app-surface))!important;border-color:color-mix(in srgb,var(--app-success) 28%,var(--app-border))!important;color:#9ef0b8!important}html.dark .mini-btn--missed,html.dark .status-pill--rescheduled,html.dark .inline-badge--warning,html.dark .severity-badge--important{background:color-mix(in srgb,var(--app-warning) 16%,var(--app-surface))!important;border-color:color-mix(in srgb,var(--app-warning) 28%,var(--app-border))!important;color:#ffd58a!important}html.dark .mini-btn--danger,html.dark .text-action--danger,html.dark .status-pill--missed,html.dark .severity-badge--critical,html.dark .inline-badge--none{background:color-mix(in srgb,var(--app-danger) 16%,var(--app-surface))!important;border-color:color-mix(in srgb,var(--app-danger) 28%,var(--app-border))!important;color:#ffb3ba!important}html.dark .status-pill--scheduled,html.dark .severity-badge--info,html.dark .inline-badge--neutral,html.dark .inline-badge--partial,html.dark .inline-badge--full,html.dark .hero-count,html.dark .meta-chip,html.dark .tag--subject{background:color-mix(in srgb,var(--app-primary) 16%,var(--app-surface))!important;border-color:color-mix(in srgb,var(--app-primary) 28%,var(--app-border))!important;color:#a9c9ff!important}html.dark .tag--grade,html.dark .tag--range,html.dark .meta-chip--gray,html.dark .stat-box,html.dark .stat-pill,html.dark .readonly-field,html.dark .subject-option,html.dark .grade-option,html.dark .search-input,html.dark .sidebar{background:var(--app-surface-2)!important;border-color:var(--app-border)!important}html.dark .student-card:hover,html.dark .nav-item:hover,html.dark .nav-item--active,html.dark .search-input:focus{border-color:color-mix(in srgb,var(--app-primary) 30%,var(--app-border))!important}html.dark .g-corner,html.dark .g-day-header,html.dark .g-time,html.dark .grid-corner,html.dark .grid-day,html.dark .grid-time{background:#0f172a!important;border-color:#ffffff14!important}html.dark .g-cell,html.dark .grid-cell{border-color:var(--app-border)!important}html.dark .g-cell:not(.g-cell--on):not(.g-cell--free):not(.g-cell--taken),html.dark .grid-cell:not(.grid-cell--on):not(.grid-cell--busy){background:#131a23!important}html.dark .g-cell--weekend:not(.g-cell--on):not(.g-cell--free):not(.g-cell--taken),html.dark .grid-cell--weekend:not(.grid-cell--on):not(.grid-cell--busy){background:#18202b!important}html.dark .g-cell:hover:not(.g-cell--on):not(.g-cell--free):not(.g-cell--taken),html.dark .grid-cell:hover:not(.grid-cell--on):not(.grid-cell--busy){background:#1d2632!important}html.dark .g-cell--free{background:color-mix(in srgb,var(--app-success) 62%,#132018)!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--app-success) 42%,transparent)!important}html.dark .g-cell--free .g-cell-check{color:#e6ffee!important}html.dark .g-cell--taken{background:color-mix(in srgb,var(--app-warning) 40%,#21190d)!important}html.dark .g-cell-x{color:#ffe29a!important}
