:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:all .2s ease;transform:scale(1)}button:hover{border-color:#646cff;background-color:#2a2a2a}button:active{transform:scale(.95);background-color:#0a0a0a}button:focus,button:focus-visible{border-color:#646cff;background-color:#2a2a2a}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.search-container{position:relative;min-width:260px;flex:0 0 260px;max-width:400px;width:100%}.search-container.with-margin{margin-left:30px}.search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);width:18px;height:18px;opacity:.7;pointer-events:none}.search-input{padding:8px 12px 8px 36px;border-radius:6px;border:1px solid #e3e8f0;width:100%;color:#2a3a5c;font-weight:400;font-size:13px;outline:none;background:#fff;box-sizing:border-box;transition:border-color .2s}.search-input:focus{border-color:#4c6494}.search-input::placeholder{color:#4c6494;opacity:1}.search-input-simple{padding:10px 15px;border:1px solid #ddd;border-radius:6px;font-size:14px;outline:none;transition:border-color .2s;box-sizing:border-box}.search-input-simple:focus{border-color:#4c6494}.search-input-simple::placeholder{color:#6b7280}.search-counter{font-size:14px;color:#6b7280;font-weight:500;white-space:nowrap}.search-bar-wrapper{display:flex;align-items:center;gap:16px;margin-bottom:12px}.search-bar-wrapper-custom{display:flex;flex-direction:row;gap:16px;width:calc(100% - 45px);align-items:center;margin-bottom:12px;margin-left:30px;margin-right:15px;box-sizing:border-box}.default-input-field{padding:10px 15px;border:1px solid #ccc;border-radius:8px;font-size:14px;outline:none;transition:border-color .2s;box-sizing:border-box;background:#fff;color:#333;width:100%}.default-input-field:focus{border-color:#4c6494;box-shadow:0 0 0 2px #4c64941a}.default-input-field::placeholder{color:#999;opacity:1}.btn{padding:8px 16px;border:none;border-radius:6px;font-weight:500;font-size:14px;cursor:pointer;outline:none;transition:all .2s ease;transform:scale(1);display:inline-flex;align-items:center;justify-content:center;gap:6px}.btn:hover{transform:translateY(-1px)}.btn:active{transform:scale(.95)}.btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.btn:disabled:hover{transform:none}.btn-primary{background:#4c6494;color:#fff}.btn-primary:hover{background:#3a5073}.btn-primary:active{background:#2e3f5c}.btn-success{background:#28a745;color:#fff}.btn-success:hover{background:#218838}.btn-success:active{background:#1e7e34}.btn-danger{background:#dc3545;color:#fff}.btn-danger:hover{background:#c82333}.btn-danger:active{background:#bd2130}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover{background:#5a6268}.btn-secondary:active{background:#545b62}.btn-light{background:#f8fafc;color:#2a3a5c;border:1px solid #e3e8f0}.btn-light:hover{background:#e2e8f0;border-color:#cbd5e0}.btn-light:active{background:#d1d9e6}.btn-dark{background:#354a6d;color:#fff}.btn-dark:hover{background:#2a3a5c}.btn-dark:active{background:#1e2a4a}.btn-sm{padding:6px 12px;font-size:13px}.btn-lg{padding:12px 24px;font-size:16px}.btn-outline{background:transparent;border:1px solid currentColor}.btn-outline.btn-primary{color:#4c6494;border-color:#4c6494}.btn-outline.btn-primary:hover{background:#4c6494;color:#fff}.btn-outline.btn-danger{color:#dc3545;border-color:#dc3545}.btn-outline.btn-danger:hover{background:#dc3545;color:#fff}.btn-modal-cancel{background:#f8fafc;color:#2a3a5c;border:1px solid #e3e8f0;padding:7px 18px;border-radius:6px;font-weight:500;font-size:14px;cursor:pointer;outline:none;transition:all .2s ease;transform:scale(1)}.btn-modal-cancel:hover{background:#e2e8f0;border-color:#cbd5e0;color:#1a202c}.btn-modal-cancel:active{transform:scale(.95);background:#d1d9e6}.btn-modal-confirm{background:#2a3a5c;color:#fff;border:1px solid #2a3a5c;padding:7px 18px;border-radius:6px;font-weight:600;font-size:14px;cursor:pointer;outline:none;transition:all .2s ease;transform:scale(1)}.btn-modal-confirm:hover{background:#1e2a4a;border-color:#1e2a4a}.btn-modal-confirm:active{transform:scale(.95);background:#162139}.btn-icon{padding:8px;border-radius:50%;width:36px;height:36px}.btn-close{background:transparent;border:none;font-size:24px;color:#6b7280;cursor:pointer;padding:4px;border-radius:50%;width:30px;height:30px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;position:absolute;top:20px;right:20px}.btn-close:hover{background:#f3f4f6;color:#374151}.btn-close:active{transform:scale(.9)}.btn-block{width:100%}.btn-group{display:flex;gap:10px;align-items:center}.btn-group.center{justify-content:center}.btn-group.right{justify-content:flex-end}.modal-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background:none;z-index:2000;display:flex;align-items:center;justify-content:center}.modal{background:#fff;border-radius:10px;box-shadow:0 2px 16px #2c3e502e;border:1px solid #e3e8f0;padding:32px;min-width:340px;max-width:90vw;display:flex;flex-direction:column;align-items:center}.modal-title{font-weight:700;font-size:18px;color:#be2626;margin-bottom:12px;text-align:center;letter-spacing:.2px}.modal-desc{color:#4c6494;font-size:15px;margin-bottom:18px;text-align:center}.modal-textarea{width:100%;border-radius:6px;border:1px solid #e3e8f0;padding:10px;font-size:14px;color:#2a3a5c;margin-bottom:8px;resize:vertical;outline:none;background:#f8fafc}.modal-error{color:#be2626;font-size:13px;margin-bottom:8px}.modal-actions{display:flex;gap:12px;margin-top:8px}.modal-btn-cancel{padding:7px 18px;border-radius:6px;border:1px solid #e3e8f0;background:#f8fafc;color:#2a3a5c;font-weight:500;font-size:14px;cursor:pointer;outline:none;transition:all .2s ease;transform:scale(1)}.modal-btn-cancel:hover{background:#e2e8f0;border-color:#cbd5e0;color:#1a202c}.modal-btn-cancel:active{transform:scale(.95);background:#d1d9e6}.modal-btn-deactivate{padding:7px 18px;border-radius:6px;border:1px solid #2a3a5c;background:#2a3a5c;color:#fff;font-weight:600;font-size:14px;cursor:pointer;outline:none;transition:all .2s ease;transform:scale(1)}.modal-btn-deactivate:hover{background:#1e2a4a;border-color:#1e2a4a}.modal-btn-deactivate:active{transform:scale(.95);background:#162139}.modal-dark{background:linear-gradient(135deg,#4c6494,#354a6b);border-radius:20px;box-shadow:0 8px 32px #0000004d;border:none;padding:40px;min-width:400px;max-width:90vw;display:flex;flex-direction:column;align-items:center;color:#fff}.modal-dark .modal-title{font-weight:700;font-size:24px;color:#fff;margin-bottom:16px;text-align:center;letter-spacing:.5px}.modal-dark .modal-desc{color:#ffffffe6;font-size:16px;margin-bottom:24px;text-align:center;line-height:1.5}.modal-dark .modal-actions{display:flex;gap:16px;margin-top:8px}.modal-dark .modal-btn-cancel{padding:12px 24px;border-radius:12px;border:2px solid rgba(255,255,255,.3);background:#ffffff1a;color:#fff;font-weight:500;font-size:16px;cursor:pointer;outline:none;transition:all .3s ease;transform:scale(1)}.modal-dark .modal-btn-cancel:hover{background:#fff3;border-color:#ffffff80;transform:translateY(-2px)}.modal-dark .modal-btn-cancel:active{transform:scale(.95);background:#ffffff26}.modal-dark .modal-btn-deactivate{padding:12px 24px;border-radius:12px;border:2px solid #fff;background:#fff;color:#4c6494;font-weight:600;font-size:16px;cursor:pointer;outline:none;transition:all .3s ease;transform:scale(1)}.modal-dark .modal-btn-deactivate:hover{background:#ffffffe6;transform:translateY(-2px);box-shadow:0 4px 12px #0003}.modal-dark .modal-btn-deactivate:active{transform:scale(.95);background:#fffc}.modal-backdrop-dark{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0009;z-index:2000;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.seamless-scrollbar{scrollbar-width:thin;scrollbar-color:#e3e8f0 #fff}.seamless-scrollbar::-webkit-scrollbar{width:8px;background:transparent}.seamless-scrollbar::-webkit-scrollbar-thumb{background:#e3e8f0;border-radius:6px;border:2px solid #fff}.seamless-scrollbar::-webkit-scrollbar-track{background:transparent;margin:2px}.notification{position:fixed;top:20px;right:20px;border-radius:8px;padding:12px 16px;font-size:14px;z-index:1000;max-width:300px;box-shadow:0 4px 6px #0000001a;animation:slideInRight .3s ease-out}.notification-success{background:#e8eef7;border:1px solid #c4d4e6;color:#2a3a5c}.notification-error{background:#fee2e2;border:1px solid #fecaca;color:#dc2626}.notification-stacked{top:80px}.notification-content{display:flex;justify-content:space-between;align-items:center}.notification-message{display:flex;align-items:center;gap:8px}.notification-icon{font-size:16px;font-weight:700}.notification-icon-success{color:#354a6d}.notification-icon-error{color:#dc2626}.notification-close{background:none;border:none;cursor:pointer;font-size:18px;padding:0;margin-left:8px;transition:opacity .2s ease}.notification-close:hover{opacity:.7}.notification-close-success,.notification-close-info{color:#2a3a5c}.notification-close-error{color:#dc2626}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOutRight{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}.notification-exit{animation:slideOutRight .3s ease-in forwards}@media (max-width: 768px){.notification{left:10px;right:10px;max-width:none;width:auto}.notification-stacked{top:70px}}@media (prefers-color-scheme: dark){.notification-success{background:#2a3a5c;border:1px solid #354a6d;color:#e8eef7}.notification-error{background:#7f1d1d;border:1px solid #dc2626;color:#fecaca}.notification-icon-success{color:#c4d4e6}.notification-icon-error{color:#ef4444}.notification-close-success{color:#e8eef7}.notification-close-error{color:#fecaca}}.table-container{background:#fff;border-radius:10px;box-shadow:0 2px 8px #2c3e5012;padding:8px;border:1px solid #e3e8f0;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:4px;box-sizing:border-box;margin:4px 15px 12px 30px}.manage-accounts-table{width:100%;min-width:340px;max-width:100%;border-collapse:separate;border-spacing:0 6px;background:none;font-size:15px;margin:0;align-self:flex-start;box-shadow:none;border:none;padding:0;color:#222b45}.manage-accounts-table thead tr{background:none}.manage-accounts-table th{padding:7px 18px;text-align:left;font-weight:700;color:#222b45;font-size:13px;letter-spacing:.2px;background:none;border:none}.manage-accounts-table th.center{text-align:center}.manage-accounts-table-row{background:none;border:none;box-shadow:none;cursor:pointer;transition:background .15s;height:38px}.manage-accounts-table-row:hover{background:#eaf3fb!important}.manage-accounts-table-row:last-child{border-bottom:none}.manage-accounts-table td{padding:6px 18px;font-weight:400;color:#222b45;font-size:12px;background:none;border:none}.manage-accounts-table td.center{text-align:center}.no-results-message{text-align:center;padding:32px 0;color:#4c6494;font-weight:500;font-size:16px}.toggle-switch{display:inline-block;position:relative;width:38px;height:22px}.toggle-switch input{opacity:0;width:0;height:0;position:absolute}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;border-radius:22px;transition:background .2s}.toggle-slider.active{background:#4caf50;box-shadow:0 0 0 2px #e3e8f0}.toggle-slider.inactive{background:#e3e8f0}.toggle-knob{position:absolute;top:2px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #2c3e5012;transition:left .2s;border:1px solid #e3e8f0}.toggle-knob.active{left:18px}.toggle-knob.inactive{left:2px}.action-button{padding:6px 14px;background:#4c6494;color:#fff;border:none;border-radius:6px;font-weight:500;font-size:13px;cursor:pointer;transition:all .2s ease;outline:none;transform:scale(1)}.action-button:hover{background:#3a5073}.action-button:active{transform:scale(.95);background:#2e3f5c}.action-button:focus{background:#3a5073}.filter-container{display:flex;flex-direction:row;gap:16px;width:100%;align-items:center;margin-bottom:12px}.filter-select{padding:8px 12px;border-radius:6px;border:1px solid #e3e8f0;min-width:140px;color:#2a3a5c;font-weight:500;font-size:13px;outline:none;background:#fff;cursor:pointer;transition:all .2s ease}.filter-select:hover{border-color:#cbd5e0;background:#f8fafc}.filter-select:focus{border-color:#4c6494;background:#f8fafc;box-shadow:0 0 0 1px #4c64941a}.filter-select.role-filter{margin-left:auto}.filter-select.class-filter{margin-right:15px}.table-header{display:flex;align-items:center;margin-bottom:4px;gap:8px}.table-title{font-weight:700;font-size:15px;color:#2a3a5c}.table-title.large{font-size:18px}.underline-button{background:none;color:#388e3c;border:none;border-radius:0;padding:0;font-weight:600;font-size:14px;cursor:pointer;box-shadow:none;margin:0;outline:none;text-decoration:underline;transition:all .2s ease;transform:scale(1)}.underline-button:hover{color:#256029}.underline-button:active{transform:scale(.95);color:#1b4520}.status-badge{padding:3px 8px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;display:inline-block;margin-left:0}.status-badge.success{background:#d1fae5;color:#065f46}.status-badge.warning{background:#fef3c7;color:#92400e}.status-badge.danger{background:#fee2e2;color:#991b1b}.dropdown-container{position:relative;display:inline-block;min-width:80px}.dropdown-toggle{padding:4px 22px 4px 8px;border-radius:6px;border:none;font-size:13px;font-weight:600;background:transparent;outline:none;box-shadow:none;min-width:80px;cursor:pointer;transition:border .2s;display:flex;align-items:center;position:relative;-webkit-user-select:none;user-select:none}.dropdown-toggle.active{color:#388e3c}.dropdown-toggle.inactive{color:#c62828}.dropdown-menu{position:absolute;top:110%;left:0;min-width:100px;background:#fff;border-radius:8px;box-shadow:0 4px 16px #2c3e5021;z-index:10;padding:4px 0;border:1px solid #e3e8f0}.dropdown-item{padding:7px 16px;font-weight:600;font-size:13px;cursor:pointer;border:none;background:transparent;width:100%;text-align:left}.dropdown-item.active{color:#388e3c}.dropdown-item.inactive{color:#c62828}.dropdown-item.selected.active{background:#eafbe7}.dropdown-item.selected.inactive{background:#fdeaea}.user-info{background:#f8fafc;padding:12px 16px;border-radius:8px;margin-bottom:12px;margin-top:-60px;border:1px solid #e3e8f0}.user-info h3{margin:0 0 8px;color:#2a3a5c;font-size:18px;font-weight:600}.info-not-available{display:flex;align-items:flex-start;gap:16px;padding:24px;background:#f8fafc;border:1px solid #e3e8f0;border-radius:8px;margin-top:12px}.info-icon{font-size:24px;line-height:1}.info-text p{margin:0 0 8px;color:#4b5563;line-height:1.5}.info-text p:last-child{margin-bottom:0}.loading-message{text-align:center;padding:30px 20px;color:#4c6494}.error-message{text-align:center;padding:20px;color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;margin-bottom:20px}
