:root{--bg:#f6f8fc;--card:#fff;--card-soft:#f9fafb;--border:#e6eaf0;--border-dark:#d9dee7;--text:#111827;--text-soft:#374151;--text-muted:#6b7280;--text-light:#9ca3af;--accent:#3b82f6;--accent-hover:#2563eb;--accent-soft:#eff6ff;--accent-border:#bfdbfe;--success:#10b981;--success-soft:#ecfdf5;--success-border:#d1fae5;--success-text:#047857;--warning:#f59e0b;--warning-soft:#fffbeb;--warning-border:#fde68a;--warning-text:#92400e;--danger:#ef4444;--danger-soft:#fef2f2;--danger-border:#fecaca;--danger-text:#b91c1c;--purple:#7c3aed;--purple-soft:#f5f3ff;--pending-bg:#dbeafe;--pending-text:#1d4ed8;--awaiting-bg:#fef3c7;--awaiting-text:#92400e;--surface-muted:#f1f5f9;--surface-hover:#fafcff;--track:#eef1f5;--radius-sm:8px;--radius-md:10px;--radius:14px;--radius-lg:18px;--shadow:0 1px 2px #11182708, 0 8px 30px #1118270d;--shadow-hover:0 8px 30px #11182714;--shadow-modal:0 20px 60px #1118272e;--sidebar-width:250px;--font-display:"Manrope", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--font-body:"Inter", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--transition-fast:.15s ease;--transition-normal:.2s ease}*,:before,:after{box-sizing:border-box}html,body,#root{width:100%;min-height:100%}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;overflow-x:hidden}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit}img,svg{max-width:100%}::selection{background:#3b82f62e}.page{background:var(--bg);width:100%;min-height:100vh}.main-content{min-height:100vh;width:calc(100% - var(--sidebar-width));max-width:calc(100% - var(--sidebar-width));margin-left:var(--sidebar-width);padding:0;overflow-x:hidden}.sidebar{width:var(--sidebar-width);background:var(--card);border-right:1px solid var(--border);z-index:300;scrollbar-width:thin;scrollbar-color:var(--border-dark) transparent;flex-direction:column;padding:22px 16px 18px;display:flex;position:fixed;top:0;bottom:0;left:0;overflow:hidden auto}.sidebar::-webkit-scrollbar{width:5px}.sidebar::-webkit-scrollbar-track{background:0 0}.sidebar::-webkit-scrollbar-thumb{background:var(--border-dark);border-radius:999px}.sidebar-header{justify-content:space-between;align-items:center;margin-bottom:30px;padding:0 6px;display:flex}.brand{align-items:center;gap:11px;min-width:0;display:flex}.brand-mark{background:var(--accent);color:#fff;width:38px;height:38px;font-family:var(--font-display);border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;font-weight:800;display:flex;box-shadow:0 4px 12px #3b82f638}.brand-name{font-family:var(--font-display);letter-spacing:-.025em;font-size:16px;font-weight:800;line-height:1.1}.brand-subtitle{color:var(--text-muted);letter-spacing:.03em;margin-top:3px;font-size:10px;font-weight:600}.sidebar-label{color:var(--text-light);letter-spacing:.1em;margin-bottom:9px;padding:0 10px;font-size:10px;font-weight:800}.sidebar-nav{flex-direction:column;gap:4px;display:flex}.sidebar-link{width:100%;color:var(--text-muted);transition:color var(--transition-fast), background var(--transition-fast), transform var(--transition-fast);border-radius:10px;align-items:center;gap:11px;padding:11px 12px;font-size:13px;font-weight:600;text-decoration:none;display:flex}.sidebar-link svg{flex-shrink:0}.sidebar-link:hover{color:var(--text);background:var(--bg)}.sidebar-link:active{transform:scale(.99)}.sidebar-link-active,.sidebar-link-active:hover{color:var(--accent);background:var(--accent-soft)}.sidebar-spacer{flex:1;min-height:30px}.sidebar-system{background:var(--success-soft);border:1px solid var(--success-border);border-radius:11px;align-items:flex-start;gap:10px;margin-bottom:12px;padding:12px;display:flex}.sidebar-system>div:last-child{flex-direction:column;gap:3px;min-width:0;display:flex}.sidebar-system strong{color:var(--success-text);font-size:11px;font-weight:700;line-height:1.35}.sidebar-system span:last-child{color:var(--text-muted);font-size:10px;line-height:1.4}.system-indicator{background:var(--success);border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:4px;box-shadow:0 0 0 4px #10b9811a}.logout-button{border:1px solid var(--border);background:var(--card);width:100%;color:var(--text-muted);transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:10px 12px;font-size:12px;font-weight:650;display:flex}.logout-button:hover{color:var(--danger);background:var(--danger-soft);border-color:var(--danger-border)}.sidebar-admin-label{margin-top:26px}.sidebar-admin{border:1px solid var(--border);background:var(--card-soft);border-radius:11px;align-items:center;gap:10px;margin-bottom:10px;padding:10px 8px;display:flex}.sidebar-admin-avatar{background:var(--accent-soft);width:34px;height:34px;color:var(--accent);font-family:var(--font-display);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:800;display:flex}.sidebar-admin-info{flex-direction:column;gap:2px;min-width:0;display:flex}.sidebar-admin-info strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:700;overflow:hidden}.sidebar-admin-info span{color:var(--text-muted);font-size:9px;font-weight:600}.content{width:100%;max-width:1240px;margin:0 auto;padding:34px 28px 70px}.content-wide{max-width:1400px}.muted{color:var(--text-muted);font-size:14px}.error-text{color:var(--danger);margin:8px 0 16px;font-size:14px}.page-title{font-family:var(--font-display);letter-spacing:-.035em;margin:0;font-size:30px;font-weight:800;line-height:1.15}.page-subtitle{color:var(--text-muted);margin:7px 0 28px;font-size:13px;line-height:1.6}.page-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:26px;display:flex}.dashboard{width:100%;max-width:1240px;margin:0 auto;padding:34px 28px 70px}.dashboard-header{justify-content:space-between;align-items:flex-start;gap:30px;margin-bottom:28px;display:flex}.dashboard-eyebrow{color:var(--text-muted);letter-spacing:.1em;align-items:center;gap:7px;margin-bottom:8px;font-size:10px;font-weight:750;display:flex}.live-dot{background:var(--success);border-radius:50%;flex-shrink:0;width:7px;height:7px;animation:2s infinite pulse-live;box-shadow:0 0 0 4px #10b9811a}.dashboard-title{font-family:var(--font-display);letter-spacing:-.035em;margin:0;font-size:30px;font-weight:800;line-height:1.15}.dashboard-subtitle{color:var(--text-muted);margin:7px 0 0;font-size:13px;line-height:1.6}.dashboard-header-actions{flex-shrink:0;justify-content:flex-end;align-items:center;gap:10px;display:flex}.dashboard-updated{color:var(--text-muted);white-space:nowrap;font-size:11px}.dashboard-refresh,.dashboard-invite-button{align-items:center;gap:7px;display:inline-flex}.btn{transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), transform .1s ease, box-shadow var(--transition-fast);border:0;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:10px 16px;font-size:13px;font-weight:650;display:inline-flex}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.6}.btn:focus-visible,.logout-button:focus-visible,.sidebar-link:focus-visible,.mobile-menu-button:focus-visible,.mobile-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn-primary{background:var(--accent);color:#fff;box-shadow:0 3px 8px #3b82f62e}.btn-primary:hover:not(:disabled){background:var(--accent-hover);box-shadow:0 5px 14px #3b82f638}.btn-ghost{background:var(--card);color:var(--text);border:1px solid var(--border)}.btn-ghost:hover:not(:disabled){background:var(--bg);border-color:var(--border-dark)}.btn-danger{background:var(--danger-soft);color:var(--danger)}.btn-danger:hover:not(:disabled){background:var(--danger-soft);border-color:var(--danger-border)}.btn-sm{border-radius:8px;padding:7px 10px;font-size:11px}.btn-icon{flex-shrink:0;width:38px;height:38px;padding:0}.dashboard-error{color:var(--danger-text);background:var(--danger-soft);border:1px solid var(--danger-border);border-radius:10px;align-items:center;gap:9px;margin-bottom:18px;padding:12px 14px;font-size:12px;display:flex}.dashboard-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.dashboard-stat-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);width:100%;min-width:0;box-shadow:var(--shadow);text-align:left;cursor:pointer;transition:transform var(--transition-normal), box-shadow var(--transition-normal), border-color var(--transition-normal);padding:18px}.dashboard-stat-card:hover{border-color:var(--accent-border);box-shadow:var(--shadow-hover);transform:translateY(-2px)}.dashboard-stat-card-active{border-color:var(--accent);box-shadow:0 0 0 2px #3b82f614, var(--shadow)}.dashboard-stat-icon{border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;margin-bottom:16px;display:flex;position:relative}.dashboard-icon-blue{color:var(--accent);background:var(--accent-soft)}.dashboard-icon-green{color:#059669;background:var(--success-soft)}.dashboard-icon-purple{color:var(--purple);background:var(--purple-soft)}.dashboard-icon-orange{color:#d97706;background:var(--warning-soft)}.dashboard-stat-icon .dashboard-live-badge{position:absolute;top:-7px;left:30px}.dashboard-stat-value{font-family:var(--font-display);letter-spacing:-.04em;margin-bottom:12px;font-size:28px;font-weight:800;line-height:1}.dashboard-stat-bottom{justify-content:space-between;align-items:flex-end;gap:10px;display:flex}.dashboard-stat-bottom>div{flex-direction:column;gap:3px;min-width:0;display:flex}.dashboard-stat-bottom strong{font-size:12px;font-weight:700}.dashboard-stat-bottom span{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.dashboard-stat-arrow{color:var(--text-light);flex-shrink:0}.dashboard-live-badge{background:var(--success-soft);color:var(--success-text);letter-spacing:.05em;border-radius:999px;align-items:center;gap:5px;padding:4px 7px;font-size:9px;font-weight:800;display:inline-flex}.dashboard-live-badge>span{background:var(--success);border-radius:50%;width:5px;height:5px}.dashboard-main-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:18px;margin-bottom:18px;display:grid}.dashboard-secondary-grid{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:18px;margin-bottom:28px;display:grid}.dashboard-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);min-width:0;box-shadow:var(--shadow);padding:20px}.dashboard-card-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.dashboard-card-header h2{font-family:var(--font-display);letter-spacing:-.015em;margin:0;font-size:15px;font-weight:750}.dashboard-card-header p{color:var(--text-muted);margin:4px 0 0;font-size:11px;line-height:1.5}.dashboard-card-title-row{align-items:center;gap:9px;display:flex}.dashboard-header-icon{color:var(--text-muted)}.dashboard-health-icon{color:var(--success)}.dashboard-traffic-icon{background:var(--accent-soft);width:36px;height:36px;color:var(--accent);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.dashboard-activity-overview{padding-top:4px}.activity-big-number{font-family:var(--font-display);letter-spacing:-.045em;font-size:36px;font-weight:800;line-height:1}.activity-big-label{color:var(--text-muted);margin-top:7px;font-size:11px}.activity-progress{background:var(--track);border-radius:999px;height:8px;margin:24px 0 13px;overflow:hidden}.activity-progress-bar{border-radius:inherit;background:var(--accent);height:100%;transition:width .4s}.activity-progress-meta{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:7px 0;font-size:11px;display:flex}.activity-progress-meta:last-child{border-bottom:none}.activity-progress-meta>span{color:var(--text-muted);align-items:center;gap:7px;display:inline-flex}.dashboard-dot{border-radius:50%;width:7px;height:7px}.dashboard-dot-blue{background:var(--accent)}.dashboard-dot-muted{background:#cbd5e1}.activity-progress-meta strong{font-size:11px}.dashboard-info-banner{background:var(--accent-soft);border:1px solid var(--accent-border);color:var(--accent);border-radius:10px;align-items:flex-start;gap:10px;margin-top:20px;padding:12px;display:flex}.dashboard-info-banner>div{flex-direction:column;gap:3px;display:flex}.dashboard-info-banner strong{color:var(--text);font-size:11px;font-weight:700}.dashboard-info-banner span{color:var(--text-muted);font-size:10px;line-height:1.5}.dashboard-total-circle{background:var(--accent-soft);min-width:42px;height:42px;color:var(--accent);font-family:var(--font-display);border-radius:50%;justify-content:center;align-items:center;font-size:15px;font-weight:800;display:flex}.dashboard-status-summary{justify-content:center;padding:6px 0 22px;display:flex}.dashboard-approval{justify-content:center;align-items:center;display:flex}.dashboard-approval-ring{--approval:0deg;background:conic-gradient(var(--accent) var(--approval), var(--border) var(--approval));border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:110px;height:110px;display:flex;position:relative}.dashboard-approval-ring:before{content:"";background:var(--card);border-radius:50%;width:82px;height:82px;position:absolute}.dashboard-approval-ring span{z-index:1;font-family:var(--font-display);color:var(--text);font-size:22px;font-weight:800;position:relative}.dashboard-status-bars{flex-direction:column;gap:13px;display:flex}.dashboard-status-row{grid-template-columns:120px minmax(0,1fr) 28px;align-items:center;gap:10px;font-size:11px;display:grid}.dashboard-status-label{color:var(--text-muted)}.dashboard-status-value{text-align:right;font-weight:700}.dashboard-status-track{background:var(--track);border-radius:999px;height:7px;overflow:hidden}.dashboard-status-fill{border-radius:inherit;min-width:0;height:100%;transition:width .35s}.dashboard-status-fill.approved{background:var(--success)}.dashboard-status-fill.review{background:var(--accent)}.dashboard-status-fill.awaiting{background:var(--warning)}.dashboard-status-fill.rejected{background:var(--danger)}.dashboard-signups{flex-direction:column;display:flex}.dashboard-signup-row{border-bottom:1px solid var(--border);align-items:center;gap:11px;padding:12px 0;display:flex}.dashboard-signup-row:first-child{padding-top:0}.dashboard-signup-row:last-child{border-bottom:none;padding-bottom:0}.dashboard-avatar{background:var(--accent-soft);width:34px;height:34px;color:var(--accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:750;display:flex}.dashboard-signup-info{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.dashboard-signup-info strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.dashboard-signup-info span{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.dashboard-signup-meta{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:3px;display:flex}.dashboard-signup-meta span{color:var(--text-soft);font-size:10px;font-weight:650}.dashboard-signup-meta small{color:var(--text-light);font-size:9px}.dashboard-health-list{flex-direction:column;display:flex}.dashboard-health-row{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:13px 0;display:flex}.dashboard-health-row:first-child{padding-top:0}.dashboard-health-row:last-child{border-bottom:none;padding-bottom:0}.dashboard-health-icon-wrap{border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.dashboard-health-positive{color:var(--success);background:var(--success-soft)}.dashboard-health-warning{color:var(--warning);background:var(--warning-soft)}.dashboard-health-info{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.dashboard-health-info strong{font-size:11px;font-weight:650}.dashboard-health-info span{color:var(--text-muted);font-size:10px}.dashboard-health-value{font-size:12px}.dashboard-schools-section{margin-top:4px}.dashboard-section-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:14px;display:flex}.dashboard-section-heading h2{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:17px;font-weight:800}.dashboard-section-heading p{color:var(--text-muted);margin:4px 0 0;font-size:11px}.dashboard-school-list{flex-direction:column;gap:8px;display:flex}.dashboard-school-row{text-align:left;background:var(--card);border:1px solid var(--border);width:100%;box-shadow:var(--shadow);transition:border-color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast), background var(--transition-fast);border-radius:12px;align-items:center;gap:12px;padding:14px 16px;display:flex}.dashboard-school-row:hover{border-color:var(--accent-border);background:var(--surface-hover);box-shadow:var(--shadow-hover);transform:translateY(-1px)}.dashboard-school-icon{background:var(--accent-soft);width:36px;height:36px;color:var(--accent);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.dashboard-school-main{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.dashboard-school-main strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.dashboard-school-main span{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.dashboard-school-status{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:5px;margin-left:20px;display:flex}.dashboard-school-status small{color:var(--text-muted);opacity:.7}.dashboard-school-arrow{color:var(--text-light);flex-shrink:0}.school-row-main{text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;min-width:0;padding:0;display:flex}.school-row-main:hover .dashboard-school-main strong{text-decoration:underline}.dashboard-status,.status-badge{white-space:nowrap;border-radius:999px;align-items:center;padding:5px 9px;font-size:9px;font-weight:750;display:inline-flex}.dashboard-status-awaiting,.status-pending_docs{background:var(--awaiting-bg);color:var(--awaiting-text)}.dashboard-status-review,.status-pending_review{background:var(--pending-bg);color:var(--pending-text)}.dashboard-status-approved,.status-approved{background:var(--success-soft);color:var(--success-text)}.dashboard-status-rejected,.status-rejected{background:var(--danger-soft);color:var(--danger-text)}.dashboard-empty-panel{min-height:180px;color:var(--text-muted);justify-content:center;align-items:center;font-size:12px;display:flex}.dashboard-empty-schools{text-align:center;min-height:260px;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;display:flex}.dashboard-empty-schools>svg{color:var(--accent);margin-bottom:12px}.dashboard-empty-schools h3{color:var(--text);font-family:var(--font-display);margin:0;font-size:15px;font-weight:750}.dashboard-empty-schools p{max-width:360px;margin:7px 0 18px;font-size:11px;line-height:1.6}.empty-state{text-align:center;min-height:220px;color:var(--text-muted);justify-content:center;align-items:center;padding:30px;font-size:13px;display:flex}.schools-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:260px;padding:30px;display:flex}.schools-empty-icon{background:var(--accent-soft);width:48px;height:48px;color:var(--accent);border-radius:13px;justify-content:center;align-items:center;margin-bottom:14px;display:flex}.schools-empty h3{font-family:var(--font-display);margin:0;font-size:16px;font-weight:800}.schools-empty p{max-width:380px;color:var(--text-muted);margin:7px 0 0;font-size:12px;line-height:1.6}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.table-card{width:100%;overflow-x:auto}.detail-card{margin-bottom:16px;padding:20px}.section-title{font-family:var(--font-display);letter-spacing:-.015em;margin:0 0 14px;font-size:15px;font-weight:800}.table{border-collapse:collapse;width:100%;font-size:12px}.table th{background:var(--surface-muted);border-bottom:1px solid var(--border);color:var(--text-muted);text-align:left;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;padding:13px 16px;font-size:10px;font-weight:800}.table td{border-bottom:1px solid var(--border);color:var(--text);vertical-align:middle;padding:15px 16px}.table tbody tr:last-child td{border-bottom:none}.table tbody tr{transition:background var(--transition-fast)}.table tbody tr:hover{background:var(--surface-hover)}.table-name{color:var(--text);font-size:12px;font-weight:700}.table-sub{color:var(--text-muted);font-size:10px;line-height:1.5}.table-actions{white-space:nowrap;justify-content:flex-end;align-items:center;gap:7px;display:flex}.filter-row{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);align-items:center;gap:10px;margin-bottom:18px;padding:14px;display:flex}.filter-row input{flex:1;min-width:200px}.filter-row select{width:150px}.search-field{flex:1;align-items:center;gap:10px;min-width:220px;display:flex}.search-field svg{color:var(--text-muted);opacity:.55;flex-shrink:0}.search-field input{width:100%;box-shadow:none;background:0 0;border:0;outline:0}.search-field input:focus{box-shadow:none;background:0 0;border:0}.field-label{color:var(--text-soft);margin:14px 0 6px;font-size:11px;font-weight:650;display:block}input,select,textarea{border:1px solid var(--border);background:var(--card-soft);width:100%;color:var(--text);transition:border-color var(--transition-fast), box-shadow var(--transition-fast), background var(--transition-fast), color var(--transition-fast);border-radius:10px;outline:none;padding:10px 12px;font-size:13px}input::placeholder,textarea::placeholder{color:var(--text-light)}input:focus,select:focus,textarea:focus{border-color:var(--accent);background:var(--card);box-shadow:0 0 0 3px #3b82f61a}textarea{resize:vertical;min-height:100px}.detail-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;display:flex}.detail-row{border-bottom:1px solid var(--border);grid-template-columns:190px minmax(0,1fr);gap:20px;padding:13px 0;font-size:12px;display:grid}.detail-row:first-child{padding-top:0}.detail-row:last-child{border-bottom:none;padding-bottom:0}.detail-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:700}.dept-list{flex-direction:column;gap:0;margin:0;padding:0;list-style:none;display:flex}.dept-list li{border-bottom:1px solid var(--border);color:var(--text-soft);padding:12px 0;font-size:12px}.dept-list li:last-child{border-bottom:none;padding-bottom:0}.dept-faculty{color:var(--text);font-weight:700}.action-bar{justify-content:flex-end;gap:9px;margin-top:20px;display:flex}.schools-summary-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:18px;display:grid}.schools-summary-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--card);min-width:0;box-shadow:var(--shadow);text-align:left;color:var(--text-muted);transition:border-color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast), background var(--transition-fast);flex-direction:column;align-items:flex-start;padding:15px;font-size:10px;font-weight:650;display:flex}.schools-summary-card:hover{border-color:var(--accent-border);box-shadow:var(--shadow-hover);transform:translateY(-1px)}.schools-summary-card-active{background:var(--accent-soft);border-color:#93c5fd;box-shadow:0 0 0 1px #3b82f614}.schools-summary-card strong{color:var(--text);font-family:var(--font-display);margin-top:7px;font-size:25px;font-weight:800}.schools-list-card{padding:20px}.schools-toolbar{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:18px;display:flex}.schools-toolbar h2{font-family:var(--font-display);margin:0;font-size:15px;font-weight:800}.schools-toolbar p{color:var(--text-muted);margin:4px 0 0;font-size:10px}.schools-toolbar-controls{align-items:center;gap:8px;display:flex}.schools-toolbar-controls select{width:160px}.schools-search{width:230px;position:relative}.schools-search svg{color:var(--text-light);pointer-events:none;position:absolute;top:50%;left:11px;transform:translateY(-50%)}.schools-search input{padding-left:34px}.schools-table{width:100%}.schools-table-header,.schools-table-row{grid-template-columns:minmax(230px,1.5fr) minmax(180px,1fr) 150px 30px;align-items:center;gap:18px;display:grid}.schools-table-header{color:var(--text-light);letter-spacing:.08em;text-transform:uppercase;padding:10px 14px;font-size:9px;font-weight:800}.schools-table-row{border:1px solid var(--border);background:var(--card);text-align:left;width:100%;transition:border-color var(--transition-fast), background var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast);border-radius:11px;padding:13px 14px}.schools-table-row+.schools-table-row{margin-top:7px}.schools-table-row:hover{border-color:var(--accent-border);background:var(--surface-hover);box-shadow:var(--shadow-hover);transform:translateY(-1px)}.schools-name-cell{align-items:center;gap:11px;min-width:0;display:flex}.schools-name-cell>div:last-child{flex-direction:column;gap:3px;min-width:0;display:flex}.schools-name-cell strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.schools-name-cell span{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.schools-contact-cell{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.schools-row-arrow{color:var(--text-light)}.school-detail-back{margin-bottom:18px}.school-detail-title-row{align-items:center;gap:16px;display:flex}.school-detail-icon{background:var(--surface-muted);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;display:flex}.school-detail-status{margin-top:8px}.school-detail-grid{align-items:stretch}.school-detail-info{flex-direction:column;display:flex}.school-detail-info-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:24px;padding:15px 0;display:flex}.school-detail-info-row:last-child{border-bottom:0}.school-detail-info-row>span{color:var(--text-muted);font-size:13px}.school-detail-info-row>strong,.school-detail-info-row>a{text-align:right;overflow-wrap:anywhere;max-width:65%}.school-detail-info-row a{color:inherit}.school-detail-stat-value{overflow-wrap:anywhere;margin:16px 0 18px;font-size:18px;font-weight:700}.school-detail-onboarding-status{align-items:center;gap:12px;margin-bottom:18px;display:flex}.school-detail-onboarding-status>div:last-child{flex-direction:column;gap:3px;display:flex}.school-detail-onboarding-status span{color:var(--text-muted);font-size:13px}.school-detail-link-box{word-break:break-all}.school-detail-departments{margin-top:24px}.school-detail-department-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.school-detail-department{border:1px solid var(--border);background:var(--card);transition:border-color var(--transition-fast), background var(--transition-fast);border-radius:12px;align-items:center;gap:12px;padding:15px;display:flex}.school-detail-department:hover{border-color:var(--accent-border);background:var(--surface-hover)}.school-detail-department-icon{background:var(--surface-muted);border-radius:9px;flex:0 0 34px;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.school-detail-department div:last-child{flex-direction:column;gap:3px;min-width:0;display:flex}.school-detail-department span{color:var(--text-muted);font-size:13px}.school-review-card{align-items:center;gap:16px;margin-top:24px;display:flex}.school-review-icon{background:var(--surface-muted);border-radius:12px;flex:0 0 44px;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.school-review-content{flex:1}.school-review-content h2{margin:0 0 5px}.school-review-content p{color:var(--text-muted);margin:0}.school-review-actions{gap:10px;display:flex}.detail-loading{min-height:260px;color:var(--text-muted);justify-content:center;align-items:center;gap:10px;display:flex}.auth-screen{background:radial-gradient(circle at top, var(--accent-soft) 0, var(--bg) 45%);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.auth-card,.onboard-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:420px;padding:32px 28px;box-shadow:0 20px 60px #11182714}.onboard-card{max-width:480px;position:relative}.onboard-brand{align-items:center;gap:10px;margin-bottom:25px;display:flex}.onboard-brand-mark{background:var(--accent);color:#fff;width:38px;height:38px;font-family:var(--font-display);border-radius:11px;justify-content:center;align-items:center;font-weight:800;display:flex}.onboard-brand-name{font-family:var(--font-display);font-size:16px;font-weight:800}.onboard-header{margin-bottom:22px}.onboard-header h1{font-family:var(--font-display);letter-spacing:-.03em;margin:0;font-size:24px;font-weight:800}.onboard-header p{color:var(--text-muted);margin:7px 0 0;font-size:12px;line-height:1.6}.dept-input-row{grid-template-columns:1fr 1fr 38px;gap:8px;margin-bottom:8px;display:grid}.onboard-submit{width:100%;margin-top:20px}.modal-overlay{z-index:500;-webkit-backdrop-filter:blur(4px);background:#11182773;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:440px;box-shadow:var(--shadow-modal);padding:24px}.dashboard-invite-modal{background:var(--card);width:100%;max-width:470px;box-shadow:var(--shadow-modal);padding:24px}.dashboard-modal-header{justify-content:space-between;gap:20px;margin-bottom:20px;display:flex}.dashboard-modal-header>div:first-child{min-width:0}.dashboard-modal-icon{background:var(--accent-soft);width:38px;height:38px;color:var(--accent);border-radius:10px;justify-content:center;align-items:center;margin-bottom:12px;display:flex}.dashboard-modal-header h2{font-family:var(--font-display);margin:0;font-size:18px;font-weight:800}.dashboard-modal-header p{color:var(--text-muted);margin:6px 0 0;font-size:11px;line-height:1.55}.dashboard-modal-close{background:var(--bg);width:32px;height:32px;color:var(--text-muted);transition:background var(--transition-fast), color var(--transition-fast);border:0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:20px;display:flex}.dashboard-modal-close:hover{background:var(--surface-muted);color:var(--text)}.modal-actions{justify-content:flex-end;gap:9px;margin-top:22px;display:flex}.link-box{background:var(--bg);border:1px solid var(--border);color:var(--text-soft);word-break:break-all;border-radius:10px;margin:12px 0 16px;padding:11px 12px;font-size:11px;line-height:1.5}.dashboard-invite-success{text-align:center}.dashboard-success-icon{background:var(--success-soft);width:54px;height:54px;color:var(--success);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 12px;display:flex}.dashboard-invite-success h3{font-family:var(--font-display);margin:0;font-size:17px;font-weight:800}.dashboard-invite-success p{color:var(--text-muted);margin:6px 0 0;font-size:11px;line-height:1.5}.mobile-menu-button,.mobile-close,.mobile-overlay{display:none}.dashboard-skeleton{width:100%}.dashboard-skeleton-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.dashboard-skeleton-main{grid-template-columns:minmax(0,1.5fr) minmax(340px,1fr);gap:18px;margin-bottom:18px;display:grid}.skeleton-block{border-radius:var(--radius);background:linear-gradient(90deg, var(--surface-muted) 25%, var(--border) 37%, var(--surface-muted) 63%);background-size:400% 100%;height:220px;animation:1.4s infinite skeleton-loading}.online-dot{background:var(--success);border-radius:50%;width:8px;height:8px;margin-left:7px;display:inline-block;box-shadow:0 0 0 3px #10b9811a}.dashboard-spin,.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes skeleton-loading{0%{background-position:100% 0}to{background-position:-100% 0}}@keyframes pulse-live{0%{box-shadow:0 0 #10b98147}70%{box-shadow:0 0 0 5px #10b98100}to{box-shadow:0 0 #10b98100}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=1050px){:root{--sidebar-width:220px}.main-content{width:calc(100% - var(--sidebar-width));max-width:calc(100% - var(--sidebar-width));margin-left:var(--sidebar-width)}.content,.dashboard{padding:28px 20px 60px}.dashboard-main-grid,.dashboard-secondary-grid{grid-template-columns:1fr}.dashboard-status-row{grid-template-columns:120px minmax(0,1fr) 28px}.schools-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.schools-table-header,.schools-table-row{grid-template-columns:minmax(200px,1.5fr) minmax(150px,1fr) 135px 25px}}@media (width<=760px){:root{--sidebar-width:0px}.main-content{width:100%;min-width:0;max-width:100%;margin-left:0;overflow-x:hidden}.sidebar{z-index:300;width:270px;max-width:86vw;transition:transform .25s;position:fixed;top:0;bottom:0;left:0;overflow:hidden auto;transform:translate(-105%);box-shadow:12px 0 35px #1118271f}.sidebar.sidebar-open{transform:translate(0)}.mobile-menu-button{z-index:250;border:1px solid var(--border);background:var(--card);width:40px;height:40px;color:var(--text);box-shadow:var(--shadow);transition:background var(--transition-fast), border-color var(--transition-fast), transform .1s ease;border-radius:10px;justify-content:center;align-items:center;padding:0;display:flex;position:fixed;top:14px;left:14px}.mobile-menu-button:hover{background:var(--bg);border-color:var(--border-dark)}.mobile-menu-button:active{transform:scale(.96)}.mobile-overlay{z-index:280;cursor:pointer;background:#11182761;border:0;padding:0;display:block;position:fixed;inset:0}.mobile-close{background:var(--bg);width:32px;height:32px;color:var(--text-muted);transition:background var(--transition-fast), color var(--transition-fast);border:0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.mobile-close:hover{background:var(--surface-muted);color:var(--text)}.content,.dashboard{width:100%;min-width:0;max-width:100%;margin:0;padding:76px 16px 50px}.page-title,.dashboard-title{font-size:25px}.page-header,.dashboard-header{flex-direction:column;align-items:stretch;gap:16px;margin-bottom:22px}.dashboard-subtitle{max-width:600px}.dashboard-header-actions{flex-wrap:wrap;justify-content:flex-start;gap:8px;width:100%}.dashboard-updated{width:100%}.dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dashboard-stat-card{padding:15px}.dashboard-stat-value{font-size:23px}.dashboard-main-grid,.dashboard-secondary-grid{grid-template-columns:1fr;width:100%;min-width:0}.dashboard-section-heading{flex-direction:column;align-items:flex-start;gap:8px}.dashboard-school-row{flex-wrap:wrap;align-items:flex-start;gap:14px}.school-row-main{width:100%}.dashboard-school-status{align-items:flex-start;margin-left:0}.dashboard-school-row .table-actions{width:100%}.filter-row{flex-direction:column;align-items:stretch}.filter-row input,.filter-row select{width:100%;min-width:0}.detail-header{flex-direction:column;align-items:flex-start}.detail-row{grid-template-columns:1fr;gap:5px}.schools-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.schools-toolbar{flex-direction:column;align-items:stretch}.schools-toolbar-controls{flex-direction:column;align-items:stretch;width:100%}.schools-search,.schools-toolbar-controls select{width:100%}.schools-table{scrollbar-width:thin;width:100%;overflow:auto hidden}.schools-table-header,.schools-table-row{min-width:680px}.table-card{scrollbar-width:thin;width:100%;overflow:auto hidden}.table{min-width:760px}.action-bar{flex-direction:column-reverse}.action-bar .btn{width:100%}.dept-input-row{grid-template-columns:1fr}.dept-input-row .btn-icon{width:100%;height:38px}.dashboard-invite-modal,.modal{padding:20px 18px}.modal-actions{flex-direction:column-reverse}.modal-actions .btn{width:100%}.school-detail-title-row{align-items:flex-start}.school-detail-grid,.school-detail-department-list{grid-template-columns:1fr}.school-review-card{flex-wrap:wrap;align-items:flex-start}.school-review-content{min-width:calc(100% - 60px)}.school-review-actions{width:100%}}@media (width<=480px){.content,.dashboard{padding:70px 14px 40px}.dashboard-stats{grid-template-columns:1fr}.dashboard-header-actions{flex-direction:column;align-items:stretch}.dashboard-updated{text-align:center}.dashboard-refresh,.dashboard-invite-button{width:100%}.dashboard-card{border-radius:12px;padding:16px}.dashboard-status-row{grid-template-columns:105px minmax(0,1fr) 25px;gap:7px}.dashboard-signup-row{align-items:flex-start}.dashboard-signup-meta{display:none}.dashboard-school-row{flex-wrap:wrap}.dashboard-school-main{min-width:calc(100% - 60px)}.dashboard-school-status{margin-left:48px}.dashboard-school-arrow{margin-left:auto}.schools-summary-grid{grid-template-columns:1fr 1fr}.schools-summary-card{padding:13px}.schools-list-card{padding:15px}.detail-card{padding:16px}.modal{padding:20px 18px}.school-detail-title-row{gap:10px}.school-detail-icon{width:44px;height:44px}.school-detail-info-row{flex-direction:column;gap:6px}.school-detail-info-row>strong,.school-detail-info-row>a{text-align:left;max-width:100%}.school-review-actions{flex-direction:column}.school-review-actions .btn{width:100%}}html.dark{--bg:#0b1120;--card:#111827;--card-soft:#172033;--border:#263244;--border-dark:#334155;--text:#f8fafc;--text-soft:#cbd5e1;--text-muted:#94a3b8;--text-light:#64748b;--accent:#60a5fa;--accent-hover:#3b82f6;--accent-soft:#172554;--accent-border:#1d4ed8;--success:#34d399;--success-soft:#052e25;--success-border:#064e3b;--success-text:#6ee7b7;--warning:#fbbf24;--warning-soft:#3a2a05;--warning-border:#78350f;--warning-text:#fcd34d;--danger:#f87171;--danger-soft:#3b1212;--danger-border:#7f1d1d;--danger-text:#fca5a5;--purple:#a78bfa;--purple-soft:#2e1065;--pending-bg:#172554;--pending-text:#93c5fd;--awaiting-bg:#422006;--awaiting-text:#fcd34d;--surface-muted:#172033;--surface-hover:#151f31;--track:#1e293b;--shadow:0 1px 2px #0003, 0 8px 30px #0003;--shadow-hover:0 8px 30px #0000004d;--shadow-modal:0 20px 60px #00000073}html.dark .table th{background:var(--surface-muted)}html.dark .dashboard-dot-muted{background:#475569}html.dark .mobile-overlay{background:#0000008c}html.dark .modal-overlay{background:#0000009e}html.dark .auth-screen{background:radial-gradient(circle at top, #172554 0, var(--bg) 48%)}html.dark .dashboard-stat-card-active{box-shadow:0 0 0 2px #60a5fa1f, var(--shadow)}@media print{.sidebar,.mobile-menu-button,.mobile-overlay,.mobile-close,.dashboard-header-actions,.action-bar{display:none!important}.main-content{width:100%;max-width:100%;margin-left:0}.content,.dashboard{max-width:100%;padding:0}.card,.dashboard-card,.dashboard-stat-card,.schools-table-row{box-shadow:none}body{background:#fff}}.theme-toggle{border:1px solid var(--border);background:var(--bg);width:42px;height:24px;color:var(--text-muted);border-radius:999px;padding:0;transition:background .2s,border-color .2s,box-shadow .2s;position:relative}.theme-toggle:hover{border-color:var(--border-dark)}.theme-toggle-track{align-items:center;padding:2px;display:flex;position:absolute;inset:0}.theme-toggle-thumb{background:var(--card);width:18px;height:18px;color:var(--text);border-radius:50%;justify-content:center;align-items:center;font-size:10px;line-height:1;transition:transform .2s,background .2s,color .2s;display:flex;transform:translate(0);box-shadow:0 1px 3px #1118272e}html.dark .theme-toggle{background:var(--accent-soft);border-color:var(--border-dark)}html.dark .theme-toggle-thumb{background:var(--accent);color:#fff;transform:translate(18px)}.sidebar-header-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.administrators-page{box-sizing:border-box;width:100%;max-width:1400px;margin:0 auto;padding:32px}.administrators-header{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px;display:flex}.administrators-header-content{min-width:0}.administrators-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:#64748b;margin:0 0 8px;font-size:12px;font-weight:700}.administrators-header h1{color:#0f172a;margin:0;font-size:30px;font-weight:700;line-height:1.2}.administrators-header p{color:#64748b;margin:8px 0 0;font-size:14px;line-height:1.6}.primary-button,.secondary-button,.danger-button{cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 15px;font-size:14px;font-weight:600;transition:background .15s,border-color .15s,opacity .15s,transform .15s;display:inline-flex}.primary-button{color:#fff;background:#2563eb}.primary-button:hover{background:#1d4ed8}.secondary-button{color:#334155;background:#fff;border:1px solid #dbe2ea}.secondary-button:hover{background:#f8fafc}.danger-button{color:#fff;background:#dc2626}.danger-button:hover{background:#b91c1c}.primary-button:disabled,.secondary-button:disabled,.danger-button:disabled{opacity:.55;cursor:not-allowed}.admin-alert{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;padding:12px 14px;font-size:14px;display:flex}.admin-alert button{width:30px;height:30px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;padding:0;display:inline-flex}.admin-alert button:hover{background:#991b1b14}.admin-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:24px;display:grid}.admin-summary-card{box-sizing:border-box;background:#fff;border:1px solid #e5e7eb;border-radius:12px;align-items:center;gap:14px;min-height:100px;padding:20px;display:flex}.summary-icon{color:#2563eb;background:#eff6ff;border-radius:10px;flex:0 0 42px;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.admin-summary-card span{color:#64748b;margin-bottom:5px;font-size:13px;display:block}.admin-summary-card strong{color:#0f172a;font-size:24px;line-height:1;display:block}.admin-table-card{box-sizing:border-box;background:#fff;border:1px solid #e5e7eb;border-radius:12px;width:100%;overflow:visible}.table-header{border-bottom:1px solid #eef2f7;justify-content:space-between;align-items:center;padding:20px 22px;display:flex}.table-header h2{color:#0f172a;margin:0;font-size:16px;font-weight:700}.table-header p{color:#64748b;margin:5px 0 0;font-size:13px}.admin-table-wrapper{width:100%;overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;min-width:850px}.admin-table th{color:#64748b;text-align:left;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;background:#f8fafc;height:44px;padding:0 20px;font-size:11px;font-weight:700}.admin-table td{color:#334155;vertical-align:middle;border-top:1px solid #eef2f7;padding:16px 20px;font-size:14px}.admin-table tbody tr{transition:background .12s}.admin-table tbody tr:hover{background:#fafcff}.admin-person{align-items:center;gap:12px;min-width:220px;display:flex}.admin-avatar{color:#2563eb;background:#eff6ff;border-radius:50%;flex:0 0 40px;justify-content:center;align-items:center;width:40px;height:40px;font-size:13px;font-weight:700;display:flex}.admin-person>div:last-child{min-width:0}.admin-person strong{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;display:block;overflow:hidden}.admin-person span{color:#64748b;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:12px;display:block;overflow:hidden}.role-badge,.status-badge{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;font-size:12px;font-weight:600;display:inline-flex}.role-badge{padding:5px 9px}.role-super{color:#6d28d9;background:#f3e8ff}.role-admin{color:#1d4ed8;background:#dbeafe}.status-badge{padding:5px 9px}.status-active{color:#166534;background:#dcfce7}.status-disabled{color:#991b1b;background:#fee2e2}.status-dot{background:currentColor;border-radius:50%;width:6px;height:6px}.date-text{color:#64748b;white-space:nowrap;font-size:13px}.actions-cell{text-align:right;width:60px;position:relative}.current-admin-label{color:#64748b;background:#f1f5f9;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:600;display:inline-flex}.action-menu{display:inline-flex;position:relative}.icon-button{color:#64748b;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;width:34px;height:34px;padding:0;display:inline-flex}.icon-button:hover{color:#0f172a;background:#f1f5f9}.action-dropdown{z-index:50;background:#fff;border:1px solid #e2e8f0;border-radius:9px;width:180px;padding:5px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 30px #0f172a1f,0 2px 6px #0f172a0d}.action-dropdown button{color:#334155;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:9px;width:100%;padding:9px 10px;font-size:13px;font-weight:500;display:flex}.action-dropdown button:hover{color:#0f172a;background:#f8fafc}.admin-loading{color:#64748b;justify-content:center;align-items:center;gap:10px;min-height:260px;font-size:14px;display:flex}.loading-spinner{border:2px solid #dbeafe;border-top-color:#2563eb;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite admin-spin}@keyframes admin-spin{to{transform:rotate(360deg)}}.admin-empty{text-align:center;color:#94a3b8;flex-direction:column;justify-content:center;align-items:center;min-height:300px;padding:40px;display:flex}.admin-empty h3{color:#0f172a;margin:15px 0 5px;font-size:16px}.admin-empty p{color:#64748b;margin:0 0 20px;font-size:13px}.modal-overlay{z-index:1000;box-sizing:border-box;background:#0f172a7a;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.admin-modal{background:#fff;border-radius:14px;width:100%;max-width:500px;max-height:calc(100vh - 40px);animation:.16s ease-out modal-in;overflow-y:auto;box-shadow:0 24px 60px #0f172a38}.small-modal{max-width:430px}@keyframes modal-in{0%{opacity:0;transform:translateY(8px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-header{border-bottom:1px solid #eef2f7;justify-content:space-between;align-items:flex-start;gap:16px;padding:22px;display:flex}.modal-header h2{color:#0f172a;margin:0;font-size:18px;font-weight:700}.modal-header p{color:#64748b;margin:5px 0 0;font-size:13px}.modal-close{color:#64748b;cursor:pointer;background:0 0;border:0;border-radius:7px;flex:0 0 32px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:inline-flex}.modal-close:hover{color:#0f172a;background:#f1f5f9}.modal-danger-icon,.modal-success-icon,.modal-key-icon{border-radius:10px;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.modal-danger-icon{color:#dc2626;background:#fee2e2}.modal-success-icon{color:#16a34a;background:#dcfce7}.modal-key-icon{color:#2563eb;background:#dbeafe}.modal-body{padding:22px}.modal-body label{color:#334155;margin-bottom:17px;font-size:13px;font-weight:600;display:block}.modal-body label:last-of-type{margin-bottom:0}.modal-body input{box-sizing:border-box;color:#0f172a;background:#fff;border:1px solid #dbe2ea;border-radius:8px;outline:none;width:100%;height:42px;margin-top:7px;padding:0 12px;font-family:inherit;font-size:14px;transition:border-color .15s,box-shadow .15s;display:block}.modal-body input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.modal-body input::placeholder{color:#94a3b8}.modal-body h2{color:#0f172a;margin:0 0 8px;font-size:18px}.modal-body>p{color:#64748b;margin:0;font-size:14px;line-height:1.6}.modal-info{color:#64748b;background:#f8fafc;border-radius:8px;align-items:flex-start;gap:9px;margin-top:18px;padding:12px;font-size:12px;line-height:1.5;display:flex}.modal-info svg{color:#2563eb;flex:none;margin-top:1px}.modal-warning{color:#9a3412;background:#fff7ed;border-radius:8px;margin-top:18px;padding:12px;font-size:12px;line-height:1.5}.modal-footer{border-top:1px solid #eef2f7;justify-content:flex-end;align-items:center;gap:10px;padding:16px 22px;display:flex}.reset-success{align-items:flex-start;gap:12px;margin-bottom:20px;display:flex}.reset-success>svg{color:#16a34a;flex:none;margin-top:2px}.reset-success h2{margin:0 0 4px}.reset-success p{margin:0}.temporary-password-box{background:#eff6ff;border:1px solid #dbeafe;border-radius:10px;padding:15px}.temporary-password-box span{color:#64748b;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;font-size:11px;font-weight:700;display:block}.temporary-password-box strong{color:#0f172a;word-break:break-all;background:#fff;border:1px dashed #93c5fd;border-radius:7px;margin-bottom:12px;padding:10px;font-family:monospace;font-size:16px;display:block}.temporary-password-box button{color:#1d4ed8;cursor:pointer;background:#fff;border:1px solid #bfdbfe;border-radius:7px;align-items:center;gap:7px;padding:7px 10px;font-size:12px;font-weight:600;display:inline-flex}.temporary-password-box button:hover{background:#f8fafc}.dark .administrators-header h1,.dark .admin-summary-card strong,.dark .table-header h2,.dark .admin-person strong,.dark .modal-header h2,.dark .modal-body h2,.dark .temporary-password-box strong{color:#f8fafc}.dark .administrators-header p,.dark .admin-summary-card span,.dark .table-header p,.dark .date-text,.dark .admin-person span{color:#94a3b8}.dark .admin-summary-card,.dark .admin-table-card,.dark .admin-modal{background:#111827;border-color:#1f2937}.dark .admin-table th{color:#94a3b8;background:#0f172a}.dark .admin-table td{border-color:#1f2937}.dark .admin-table tbody tr:hover{background:#172033}.dark .modal-header,.dark .modal-footer,.dark .table-header{border-color:#1f2937}.dark .modal-body input{color:#f8fafc;background:#0f172a;border-color:#334155}.dark .modal-info{background:#0f172a}.dark .action-dropdown{background:#111827;border-color:#334155}.dark .action-dropdown button{color:#cbd5e1}.dark .action-dropdown button:hover{background:#1f2937}.dark .secondary-button{color:#cbd5e1;background:#111827;border-color:#334155}.dark .secondary-button:hover,.dark .modal-close:hover,.dark .icon-button:hover{background:#1f2937}.dark .temporary-password-box{background:#172033;border-color:#1e40af}.dark .temporary-password-box strong{background:#0f172a;border-color:#334155}@media (width<=900px){.administrators-page{padding:24px}.administrators-header{flex-direction:column;align-items:flex-start}.admin-summary{grid-template-columns:1fr}}@media (width<=640px){.administrators-page{padding:18px 14px}.administrators-header h1{font-size:25px}.administrators-header{margin-bottom:20px}.administrators-header .primary-button{width:100%}.admin-summary-card{min-height:86px;padding:16px}.table-header{padding:16px}.admin-table td,.admin-table th{padding-left:14px;padding-right:14px}.modal-overlay{align-items:flex-end;padding:10px}.admin-modal{border-radius:14px;max-height:calc(100vh - 20px)}.modal-body,.modal-header{padding:18px}.modal-footer{padding:14px 18px}}.settings-page,.security-page{width:100%;max-width:1400px;margin:0 auto;padding-bottom:48px}.settings-page .page-header,.security-page .page-header{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:26px;display:flex}.settings-page .page-header h1,.security-page .page-header h1{font-family:var(--font-display);letter-spacing:-.03em;color:var(--text);margin:4px 0 7px;font-size:28px;font-weight:800;line-height:1.15}.settings-page .page-header p,.security-page .page-header p{max-width:620px;color:var(--text-muted);margin:0;font-size:12px;line-height:1.55}.settings-page .page-eyebrow,.security-page .page-eyebrow{color:var(--text-light);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:10px;font-weight:700;line-height:1}.settings-alert{border:1px solid var(--border);background:var(--surface-muted);width:100%;color:var(--text-soft);border-radius:10px;align-items:center;gap:10px;margin-bottom:18px;padding:11px 13px;font-size:12px;line-height:1.4;display:flex}.settings-alert span{flex:1}.settings-alert button{width:26px;height:26px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;padding:0;display:inline-flex}.settings-alert button:hover{background:var(--surface-hover)}.settings-alert-error{color:var(--danger-text);background:var(--danger-soft);border-color:var(--danger-border)}.settings-alert-success{color:var(--success-text);background:var(--success-soft);border-color:var(--success-border)}.settings-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:18px;display:grid}.settings-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);min-width:0;box-shadow:var(--shadow);overflow:hidden}.settings-card-header{border-bottom:1px solid var(--border);align-items:flex-start;gap:12px;padding:20px 20px 17px;display:flex}.settings-card-header>div:last-child{min-width:0}.settings-card-header h2{color:var(--text);font-family:var(--font-display);letter-spacing:-.015em;margin:0 0 4px;font-size:15px;font-weight:750;line-height:1.3}.settings-card-header p{color:var(--text-muted);margin:0;font-size:11px;line-height:1.5}.settings-card-icon{width:36px;height:36px;color:var(--accent);background:var(--accent-soft);border-radius:9px;flex:none;justify-content:center;align-items:center;display:flex}.settings-icon-security{color:var(--purple);background:var(--purple-soft)}.settings-profile{align-items:center;gap:12px;padding:18px 20px;display:flex}.settings-avatar{background:var(--surface-muted);width:46px;height:46px;color:var(--text-soft);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.settings-profile strong{color:var(--text);margin-bottom:3px;font-size:13px;font-weight:650;line-height:1.3;display:block}.settings-profile span{color:var(--text-muted);font-size:11px;display:block}.settings-fields,.settings-password-form{padding:0 20px 20px}.settings-field{margin-bottom:15px;display:block}.settings-field>span{color:var(--text-soft);margin-bottom:6px;font-size:11px;font-weight:650;line-height:1.3;display:block}.settings-field input{box-sizing:border-box;border:1px solid var(--border);background:var(--bg);width:100%;min-width:0;height:40px;color:var(--text);transition:border-color var(--transition-fast), box-shadow var(--transition-fast), background var(--transition-fast);border-radius:8px;outline:none;padding:0 11px;font-family:inherit;font-size:12px;display:block}.settings-field input::placeholder{color:var(--text-light)}.settings-field input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #60a5fa1a}.settings-field input:disabled{background:var(--surface-muted);color:var(--text-muted);cursor:not-allowed}.settings-field small{color:var(--text-light);margin-top:5px;font-size:10px;line-height:1.45;display:block}.settings-input-wrap{position:relative}.settings-input-wrap svg{color:var(--text-light);pointer-events:none;position:absolute;top:50%;left:11px;transform:translateY(-50%)}.settings-input-wrap input{padding-left:36px}.settings-account-status{border:1px solid var(--success-border);background:var(--success-soft);border-radius:9px;align-items:flex-start;gap:10px;margin:0 20px 20px;padding:12px;display:flex}.settings-status-icon{width:29px;height:29px;color:var(--success);background:#34d3991a;border-radius:8px;flex:none;justify-content:center;align-items:center;display:flex}.settings-account-status strong{color:var(--success-text);margin-bottom:3px;font-size:11px;display:block}.settings-account-status span{color:var(--text-muted);font-size:10.5px;line-height:1.5;display:block}.password-requirements{flex-wrap:wrap;gap:9px 13px;margin:-1px 0 18px;display:flex}.password-requirements div{color:var(--text-light);align-items:center;gap:5px;font-size:10.5px;display:flex}.password-requirements svg{color:var(--border-dark)}.password-requirements svg.requirement-met{color:var(--success)}.settings-form-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding-top:15px;display:flex}.settings-security-note{max-width:250px;color:var(--text-light);align-items:flex-start;gap:6px;font-size:10px;line-height:1.45;display:flex}.settings-security-note svg{flex:none;margin-top:1px}.settings-details-card{grid-column:1/-1}.settings-detail-list{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.settings-detail-list>div{border-right:1px solid var(--border);border-bottom:1px solid var(--border);padding:16px 20px}.settings-detail-list>div:nth-child(3n){border-right:0}.settings-detail-list>div:nth-last-child(-n+3){border-bottom:0}.settings-detail-list span{color:var(--text-light);margin-bottom:5px;font-size:10px;display:block}.settings-detail-list strong{color:var(--text-soft);font-size:11.5px;font-weight:600;display:block}.security-hero{border:1px solid var(--success-border);border-radius:var(--radius);background:linear-gradient(135deg, var(--success-soft), var(--card));align-items:center;gap:14px;min-width:0;margin-bottom:18px;padding:18px 20px;display:flex}.security-hero-icon{width:48px;height:48px;color:var(--success);background:#34d3991a;border-radius:12px;flex:none;justify-content:center;align-items:center;display:flex}.security-hero-content{flex:1;min-width:0}.security-hero-status{color:var(--success-text);letter-spacing:.07em;text-transform:uppercase;align-items:center;gap:6px;margin-bottom:4px;font-size:9px;font-weight:700;display:flex}.security-status-dot{background:var(--success);border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #34d39914}.security-hero h2{color:var(--text);font-family:var(--font-display);letter-spacing:-.015em;margin:0 0 4px;font-size:16px;font-weight:750;line-height:1.3}.security-hero p{color:var(--text-muted);margin:0;font-size:11px;line-height:1.5}.security-hero-role{border-left:1px solid var(--border);flex:none;min-width:110px;padding-left:18px}.security-hero-role span{color:var(--text-light);margin-bottom:4px;font-size:9px;display:block}.security-hero-role strong{color:var(--text-soft);font-size:12px;display:block}.security-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.security-status-card{border:1px solid var(--border);background:var(--card);min-width:0;box-shadow:var(--shadow);border-radius:12px;padding:16px}.security-status-card-top{justify-content:space-between;align-items:center;gap:8px;margin-bottom:15px;display:flex}.security-card-icon{width:33px;height:33px;color:var(--accent);background:var(--accent-soft);border-radius:8px;justify-content:center;align-items:center;display:flex}.security-status-card h3{color:var(--text-soft);margin:0 0 5px;font-size:12px;font-weight:700}.security-status-card p{color:var(--text-muted);margin:0;font-size:10.5px;line-height:1.5}.security-positive-badge,.security-warning-badge{white-space:nowrap;border-radius:999px;align-items:center;gap:5px;max-width:100%;padding:4px 7px;font-size:8.5px;font-weight:700;display:inline-flex}.security-positive-badge{color:var(--success-text);background:var(--success-soft)}.security-warning-badge{color:var(--warning-text);background:var(--warning-soft)}.security-positive-badge span,.security-warning-badge span{background:currentColor;border-radius:50%;width:5px;height:5px}.security-main-grid{grid-template-columns:minmax(0,1.4fr) minmax(300px,.8fr);gap:18px;margin-bottom:18px;display:grid}.security-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--card);min-width:0;box-shadow:var(--shadow);overflow:hidden}.security-card-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:18px;padding:18px 20px;display:flex}.security-card-header h2{color:var(--text);font-family:var(--font-display);margin:0 0 4px;font-size:14px;font-weight:750;line-height:1.35}.security-card-header p{color:var(--text-muted);margin:0;font-size:10.5px;line-height:1.5}.security-header-icon{color:var(--text-light);flex:none}.security-check-list{padding:3px 20px}.security-check-row{border-bottom:1px solid var(--border);align-items:center;gap:10px;min-width:0;padding:13px 0;display:flex}.security-check-row:last-child{border-bottom:0}.security-check-icon{border-radius:8px;flex:none;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.security-check-positive{color:var(--success);background:var(--success-soft)}.security-check-warning{color:var(--warning);background:var(--warning-soft)}.security-check-info{flex:1;min-width:0}.security-check-info strong{color:var(--text-soft);margin-bottom:2px;font-size:11px;display:block}.security-check-info span{color:var(--text-muted);font-size:10px;line-height:1.45;display:block}.security-check-status{color:var(--success-text);flex:none;font-size:9px;font-weight:700}.security-check-status-warning{color:var(--warning-text)}.security-account{align-items:center;gap:11px;padding:18px 20px;display:flex}.security-account-avatar{background:var(--surface-muted);width:43px;height:43px;color:var(--text-soft);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.security-account strong,.security-account span,.security-account small{display:block}.security-account strong{color:var(--text-soft);margin-bottom:3px;font-size:12px}.security-account span{color:var(--text-muted);margin-bottom:3px;font-size:10px}.security-account small{color:var(--accent);font-size:9px;font-weight:600}.security-account-details{border-top:1px solid var(--border)}.security-account-details>div{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:14px;padding:12px 20px;display:flex}.security-account-details span{color:var(--text-light);font-size:10px}.security-account-details strong{color:var(--text-soft);text-align:right;font-size:10px;font-weight:600}.security-section-heading{margin:28px 0 13px}.security-section-heading h2{color:var(--text);font-family:var(--font-display);letter-spacing:-.02em;margin:4px 0;font-size:18px;font-weight:750}.security-section-heading p{color:var(--text-muted);margin:0;font-size:10.5px}.security-admin-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.security-summary-card{border:1px solid var(--border);background:var(--card);border-radius:11px;align-items:center;gap:10px;min-width:0;padding:14px;display:flex}.security-summary-icon{width:32px;height:32px;color:var(--accent);background:var(--accent-soft);border-radius:8px;flex:none;justify-content:center;align-items:center;display:flex}.security-summary-warning{color:var(--warning);background:var(--warning-soft)}.security-summary-card span,.security-summary-card strong{display:block}.security-summary-card span{color:var(--text-muted);margin-bottom:2px;font-size:9px}.security-summary-card strong{color:var(--text);font-size:16px}.security-admin-list{padding:3px 20px}.security-admin-row{border-bottom:1px solid var(--border);align-items:center;gap:10px;min-width:0;padding:12px 0;display:flex}.security-admin-row:last-child{border-bottom:0}.security-admin-avatar{background:var(--surface-muted);width:34px;height:34px;color:var(--text-soft);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:9px;font-weight:700;display:flex}.security-admin-info{flex:1;min-width:180px}.security-admin-info strong,.security-admin-info span{display:block}.security-admin-info strong{color:var(--text-soft);margin-bottom:2px;font-size:10.5px}.security-admin-info span{color:var(--text-muted);font-size:9.5px}.security-audit-list{padding:3px 20px}.security-audit-row{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:12px 0;display:flex}.security-audit-row:last-child{border-bottom:0}.security-audit-icon{width:30px;height:30px;color:var(--accent);background:var(--accent-soft);border-radius:8px;flex:none;justify-content:center;align-items:center;display:flex}.security-audit-info{flex:1;min-width:0}.security-audit-info strong,.security-audit-info span{text-overflow:ellipsis;display:block;overflow:hidden}.security-audit-info strong{color:var(--text-soft);margin-bottom:2px;font-size:10.5px}.security-audit-info span{color:var(--text-muted);white-space:nowrap;font-size:9.5px}.security-audit-row time{color:var(--text-light);flex:none;font-size:9px}.security-empty{min-height:140px;color:var(--text-light);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:24px;display:flex}.security-empty svg{color:var(--text-light);margin-bottom:4px}.security-empty strong{color:var(--text-soft);font-size:11px}.security-empty span{color:var(--text-muted);font-size:10px}.security-notice{border:1px solid var(--warning-border);background:var(--warning-soft);border-radius:10px;align-items:flex-start;gap:10px;margin-top:18px;padding:12px 14px;display:flex}.security-notice-icon{width:30px;height:30px;color:var(--warning);background:#fbbf2414;border-radius:8px;flex:none;justify-content:center;align-items:center;display:flex}.security-notice strong{color:var(--warning-text);margin-bottom:3px;font-size:10.5px;display:block}.security-notice p{color:var(--text-muted);margin:0;font-size:9.5px;line-height:1.5}@media (width<=1100px){.security-grid,.security-admin-summary,.settings-detail-list{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-detail-list>div:nth-child(3n){border-right:1px solid var(--border)}.settings-detail-list>div:nth-child(2n){border-right:0}.settings-detail-list>div:nth-last-child(-n+3){border-bottom:1px solid var(--border)}.settings-detail-list>div:nth-last-child(-n+2){border-bottom:0}}@media (width<=850px){.settings-grid,.security-main-grid{grid-template-columns:1fr}.settings-details-card{grid-column:auto}.security-hero{flex-wrap:wrap;align-items:flex-start}.security-hero-role{border-left:0;border-top:1px solid var(--border);width:100%;padding:11px 0 0}}@media (width<=650px){.settings-page,.security-page{padding-bottom:30px}.settings-page .page-header,.security-page .page-header{flex-direction:column;align-items:flex-start;gap:13px;margin-bottom:20px}.settings-page .page-header h1,.security-page .page-header h1{font-size:24px}.security-grid{grid-template-columns:1fr}.security-admin-summary{grid-template-columns:1fr 1fr}.settings-detail-list{grid-template-columns:1fr}.settings-detail-list>div,.settings-detail-list>div:nth-child(2n),.settings-detail-list>div:nth-child(3n){border-right:0;border-bottom:1px solid var(--border)}.settings-detail-list>div:last-child{border-bottom:0}.settings-form-footer{flex-direction:column;align-items:stretch}.settings-form-footer .primary-button{justify-content:center;width:100%}.security-admin-row{flex-wrap:wrap;align-items:flex-start}.security-admin-info{min-width:calc(100% - 55px)}.security-admin-row .role-badge,.security-admin-row .status-badge{margin-left:44px}.security-admin-row .date-text{margin-left:auto}.security-audit-row{align-items:flex-start}.security-audit-row time{display:none}}@media (width<=420px){.security-admin-summary{grid-template-columns:1fr}.settings-card-header,.security-card-header{padding:16px}.settings-fields,.settings-password-form,.settings-profile{padding-left:16px;padding-right:16px}.settings-account-status{margin-left:16px;margin-right:16px}.security-check-list,.security-admin-list,.security-audit-list,.security-account,.security-account-details>div{padding-left:16px;padding-right:16px}}
