.admin-shell-root{display:flex;min-height:100vh;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background-color:#f4f6f9;transition:background-color .2s ease}.admin-shell-root *{box-sizing:border-box}.main-sidebar{width:60px;background-color:#f8f9fa;display:flex;flex-direction:column;align-items:center;position:fixed;top:0;left:0;bottom:0;z-index:100;transition:background-color .2s ease}.main-sidebar .nav-menu{width:100%;display:flex;flex-direction:column;align-items:center;gap:24px;margin-top:20px;flex:1}.main-sidebar .nav-item{width:100%;text-align:center;position:relative}.main-sidebar .nav-item a,.main-sidebar .nav-item .router-link{display:flex;justify-content:center;align-items:center;color:#6c757d;text-decoration:none;font-size:22px;transition:all .2s ease;padding:8px 0;margin:0 8px;border-radius:8px;border:none;background:transparent;width:calc(100% - 16px);cursor:pointer}.main-sidebar .nav-item a:hover,.main-sidebar .nav-item .router-link:hover,.main-sidebar .nav-item.active a,.main-sidebar .nav-item.active .router-link,.main-sidebar .nav-item .router-link.router-link-active{color:#0d6efd;background-color:#e9ecef}.main-sidebar .nav-item a:hover:after,.main-sidebar .nav-item .router-link:hover:after{content:attr(data-tooltip);position:absolute;left:60px;top:50%;transform:translateY(-50%);background:#212529;color:#fff;padding:6px 12px;border-radius:6px;font-size:14px;white-space:nowrap;z-index:200;box-shadow:0 2px 6px #0003}.main-sidebar .nav-item--bottom{margin-top:auto;margin-bottom:20px}.page-sidebar{width:260px;background-color:#fff;border-right:1px solid #e9ecef;position:fixed;top:0;left:60px;bottom:0;z-index:99;padding:24px 16px;display:flex;flex-direction:column;transition:background-color .2s ease,border-color .2s ease}.page-sidebar-header{font-size:1.25rem;font-weight:600;margin-bottom:24px;color:#1e2a3a;padding-bottom:12px;border-bottom:1px solid #e9ecef}.page-sidebar-nav{display:flex;flex-direction:column;gap:8px}.page-sidebar-nav a,.page-sidebar-nav .router-link{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:8px;color:#495057;text-decoration:none;font-size:.9rem;transition:all .2s}.page-sidebar-nav a i,.page-sidebar-nav .router-link i{width:20px;font-size:1rem;color:#6c757d}.page-sidebar-nav a:hover,.page-sidebar-nav .router-link:hover{background-color:#f8f9fa;color:#0d6efd}.page-sidebar-nav a:hover i,.page-sidebar-nav .router-link:hover i{color:#0d6efd}.page-sidebar-nav a.active,.page-sidebar-nav .router-link.router-link-active{background-color:#e9ecef;color:#0d6efd;font-weight:500}.page-sidebar-nav a.active i,.page-sidebar-nav .router-link.router-link-active i{color:#0d6efd}.main-content--dashboard{margin-left:60px;padding:24px;width:calc(100% - 60px);min-height:100vh;transition:background-color .2s ease}.main-content--materials{margin-left:320px;padding:24px;width:calc(100% - 320px);min-height:100vh;transition:margin-left .2s,background-color .2s}.page-header-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.section-title{font-size:1.5rem;font-weight:600;color:#1e2a3a}.btn-create{background-color:#0d6efd;color:#fff;border:none;padding:8px 20px;border-radius:30px;font-size:.9rem;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:background-color .2s;text-decoration:none}.btn-create:hover{background-color:#0b5ed7;color:#fff}.courses-table-container{background:#ffffff;border-radius:16px;box-shadow:0 2px 8px #0000000a;overflow-x:auto}.courses-table{width:100%;border-collapse:collapse}.courses-table th,.courses-table td{padding:14px 16px;text-align:left;border-bottom:1px solid #e9ecef}.courses-table th{background-color:#f8f9fa;font-weight:600;color:#495057}.courses-table td{color:#212529}.courses-table-title-link{color:#212529;font-weight:500}.courses-table-title-link:hover{color:#0d6efd}.materials-fav-btn{line-height:1}.checkbox-col{width:40px;text-align:center}.checkbox-col input{width:18px;height:18px;cursor:pointer}.users-table-container{background:#ffffff;border-radius:16px;box-shadow:0 2px 8px #0000000a;overflow-x:auto}.users-table{width:100%;border-collapse:collapse}.users-table th,.users-table td{padding:14px 16px;text-align:left;border-bottom:1px solid #e9ecef;vertical-align:middle}.users-table th{background-color:#f8f9fa;font-weight:600;color:#495057}.users-table td{color:#212529}.users-actions-cell{white-space:nowrap;text-align:right;width:1%}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;margin-left:4px;border:none;border-radius:8px;background:transparent;color:#6c757d;cursor:pointer;transition:background-color .15s ease,color .15s ease}.btn-icon:hover{background-color:#e9ecef;color:#0d6efd}.btn-icon--danger:hover{background-color:#f8d7da;color:#dc3545}.btn-icon--success:hover{background-color:#d1e7dd;color:#198754}.btn-new{background-color:#0d6efd;color:#fff;border:none;padding:8px 20px;border-radius:30px;font-size:.9rem;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:background-color .2s}.btn-new:hover{background-color:#0b5ed7;color:#fff}.role-badge{background-color:#e9ecef;padding:4px 10px;border-radius:20px;font-size:.75rem;font-weight:500;display:inline-block;color:#212529}.role-badge--admin{background-color:#fff3cd;color:#664d03}.role-badge--instructor{background-color:#cfe2ff;color:#084298}.role-badge--student{background-color:#e9ecef;color:#495057}.status-wrap{display:inline-flex;align-items:center;font-size:.875rem;color:#495057}.status-badge{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:6px;flex-shrink:0}.status-active{background-color:#28a745}.status-inactive{background-color:#adb5bd}.page-header-dash h1{font-size:1.8rem;font-weight:600;margin-bottom:24px;color:#1e2a3a}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-bottom:32px}.stat-card{background:#ffffff;border-radius:16px;padding:20px;box-shadow:0 2px 8px #0000000a;transition:all .2s ease;cursor:pointer;display:flex;align-items:center;justify-content:space-between;text-decoration:none;color:inherit}.stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px #00000014}.stat-info h3{font-size:.85rem;font-weight:500;color:#6c757d;margin-bottom:8px}.stat-number{font-size:2rem;font-weight:700;color:#1e2a3a;line-height:1}.stat-icon{font-size:2.2rem;color:#0d6efd;opacity:.7}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px}.dashboard-card{background:#ffffff;border-radius:20px;padding:20px;box-shadow:0 2px 8px #0000000a}.card-title{font-size:1.2rem;font-weight:600;margin-bottom:16px;color:#1e2a3a}.card-title-sub{font-size:.75rem;font-weight:400}.tabs{display:flex;gap:16px;border-bottom:1px solid #e9ecef;margin-bottom:20px}.tab{padding-bottom:8px;font-weight:500;color:#6c757d;cursor:pointer;border-bottom:2px solid transparent;background:none;border-top:none;border-left:none;border-right:none;font-size:inherit;font-family:inherit}.tab.active{color:#0d6efd;border-bottom-color:#0d6efd}.tab-badge{background:#e9ecef;padding:0 6px;border-radius:20px;margin-left:4px}.assignments-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.btn-outline{border:1px solid #dee2e6;background:transparent;padding:6px 12px;border-radius:20px;font-size:.8rem;cursor:pointer;transition:.2s}.btn-outline:hover{background:#f8f9fa}.empty-state{text-align:center;padding:32px 0;color:#adb5bd}.material-list{display:flex;flex-direction:column;gap:16px}.link-all-materials{margin-top:16px;text-align:right}.link-all-materials a{color:#0d6efd;text-decoration:none;font-size:.85rem}@media (prefers-color-scheme: dark){.admin-shell-root{background-color:#121212}.main-sidebar{background-color:#1e1e2f}.main-sidebar .nav-item a,.main-sidebar .nav-item .router-link{color:#adb5bd}.main-sidebar .nav-item a:hover,.main-sidebar .nav-item .router-link:hover,.main-sidebar .nav-item.active a,.main-sidebar .nav-item.active .router-link,.main-sidebar .nav-item .router-link.router-link-active{color:#90caf9;background-color:#2c2c3a}.page-sidebar{background-color:#1e1e2f;border-right-color:#2c2c3a}.page-sidebar-header{color:#e0e0e0;border-bottom-color:#2c2c3a}.page-sidebar-nav a,.page-sidebar-nav .router-link{color:#adb5bd}.page-sidebar-nav a i,.page-sidebar-nav .router-link i{color:#8f9bb3}.page-sidebar-nav a:hover,.page-sidebar-nav .router-link:hover,.page-sidebar-nav a.active,.page-sidebar-nav .router-link.router-link-active{background-color:#2c2c3a;color:#90caf9}.main-content--dashboard,.main-content--materials{background-color:#121212}.page-header-dash h1,.section-title{color:#e0e0e0}.stat-card,.dashboard-card{background-color:#1e1e2f;box-shadow:0 2px 8px #0000004d}.stat-number,.card-title{color:#e0e0e0}.stat-info h3,.tab{color:#adb5bd}.tab.active{color:#90caf9;border-bottom-color:#90caf9}.btn-outline{border-color:#2c2c3a;color:#e0e0e0}.btn-outline:hover{background-color:#2c2c3a}.courses-table-container{background-color:#1e1e2f}.courses-table th{background-color:#2c2c3a;color:#e0e0e0;border-bottom-color:#3a3a4a}.courses-table td{color:#e0e0e0;border-bottom-color:#2c2c3a}.courses-table-title-link{color:#e0e0e0}.courses-table-title-link:hover{color:#90caf9}.users-table-container{background-color:#1e1e2f}.users-table th{background-color:#2c2c3a;color:#e0e0e0;border-bottom-color:#3a3a4a}.users-table td{color:#e0e0e0;border-bottom-color:#2c2c3a}.role-badge{background-color:#2c2c3a;color:#e0e0e0}.role-badge--admin{background-color:#4d4420;color:#ffecb3}.role-badge--instructor{background-color:#1e3a5f;color:#90caf9}.role-badge--student{background-color:#2c2c3a;color:#adb5bd}.status-wrap,.btn-icon{color:#adb5bd}.btn-icon:hover{background-color:#2c2c3a;color:#90caf9}.btn-icon--danger:hover{background-color:#3d2020;color:#f48fb1}.btn-icon--success:hover{background-color:#1f3d33;color:#7ad9a0}}@media (max-width: 768px){.page-sidebar{width:200px;left:60px}.main-content--materials{margin-left:260px;width:calc(100% - 260px)}.dashboard-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:1fr 1fr}}
