body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.sidebar{background:var(--bg-dark);color:var(--text-white);display:flex;flex-direction:column;height:100vh;left:0;overflow:hidden;position:fixed;top:0;transition:width var(--transition-slow);z-index:1000}.sidebar.open{width:var(--sidebar-width)}.sidebar.closed{width:var(--sidebar-collapsed-width)}.sidebar-header{align-items:center;border-bottom:1px solid #ffffff14;display:flex;min-height:var(--header-height);padding:0 20px}.sidebar.closed .sidebar-header{justify-content:center;padding:0}.sidebar-logo{align-items:center;display:flex;gap:12px}.sidebar-logo-icon{align-items:center;background:var(--color-primary);display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.sidebar-logo-icon svg{color:var(--text-white);height:22px;width:22px}.sidebar-header h2{color:var(--text-white);font-size:18px;font-weight:700;letter-spacing:-.3px;margin:0;white-space:nowrap}.sidebar.closed .sidebar-header h2{display:none}.sidebar-nav{flex:1 1;overflow-x:hidden;overflow-y:auto;padding:16px 0}.sidebar-nav::-webkit-scrollbar{width:4px}.sidebar-nav::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:var(--radius-full)}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:#ffffff40}.sidebar-nav ul{list-style:none;margin:0;padding:0}.nav-section{margin-bottom:8px}.nav-section-title{color:#fff6;font-size:11px;font-weight:700;letter-spacing:.08em;padding:12px 24px 8px;text-transform:uppercase}.sidebar.closed .nav-section-title{display:none}.sidebar-nav li{padding:2px 12px}.sidebar-nav a{align-items:center;border-left:3px solid #0000;color:#ffffffb3;display:flex;font-size:14px;font-weight:500;gap:12px;margin-left:-3px;padding:12px;text-decoration:none;transition:all var(--transition-fast);white-space:nowrap}.sidebar-nav a:hover{background:#ffffff14;color:var(--text-white)}.sidebar-nav a.active{background:#a435f026;border-left-color:var(--color-primary);color:var(--text-white)}.nav-icon{align-items:center;display:flex;flex-shrink:0;height:20px;justify-content:center;opacity:.85;width:20px}.nav-icon svg{height:18px;width:18px}.sidebar-nav a.active .nav-icon{color:var(--color-primary);opacity:1}.sidebar-nav .label{flex:1 1;overflow:hidden;text-overflow:ellipsis}.sidebar.closed .sidebar-nav .label{display:none}.sidebar.closed .sidebar-nav a{border-left:none;justify-content:center;margin-left:0;padding:12px}.nav-badge,.sidebar.closed .sidebar-nav li{padding:2px 8px}.nav-badge{background:var(--color-primary);border-radius:var(--radius-full);color:var(--text-white);font-size:11px;font-weight:700;min-width:20px;text-align:center}.sidebar.closed .nav-badge{display:none}.sidebar-footer{border-top:1px solid #ffffff14;padding:16px}.sidebar-user{align-items:center;border-radius:var(--radius-sm);cursor:pointer;display:flex;gap:12px;padding:10px;transition:background var(--transition-fast)}.sidebar-user:hover{background:#ffffff14}.sidebar-user-avatar{align-items:center;background:var(--color-primary);border-radius:var(--radius-full);color:var(--text-white);display:flex;flex-shrink:0;font-size:14px;font-weight:700;height:38px;justify-content:center;width:38px}.sidebar-user-info{flex:1 1;overflow:hidden}.sidebar-user-name{color:var(--text-white);font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-user-role{color:#ffffff80;font-size:12px}.sidebar.closed .sidebar-user-info{display:none}.sidebar.closed .sidebar-user{justify-content:center;padding:8px}.sidebar-toggle{align-items:center;background:var(--bg-dark);border:1px solid #ffffff26;border-radius:var(--radius-full);color:#ffffffb3;cursor:pointer;display:flex;height:28px;justify-content:center;position:absolute;right:-14px;top:50%;transform:translateY(-50%);transition:all var(--transition-fast);width:28px;z-index:10}.sidebar-toggle:hover{background:#ffffff1a;color:var(--text-white)}.sidebar-toggle svg{height:14px;transition:transform var(--transition-normal);width:14px}.sidebar.closed .sidebar-toggle svg{transform:rotate(180deg)}@media (max-width:768px){.sidebar{transform:translateX(-100%)}.sidebar.open{transform:translateX(0);width:var(--sidebar-width)}.sidebar-overlay{animation:fadeIn .2s ease;background:#0009;inset:0;position:fixed;z-index:999}.sidebar-toggle{display:none}}.admin-header{background:var(--bg-primary);border-bottom:1px solid var(--border-color);height:var(--header-height);justify-content:space-between;padding:0 24px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.admin-header,.menu-toggle{align-items:center;display:flex}.menu-toggle{background:#0000;border:none;color:var(--text-secondary);cursor:pointer;height:40px;justify-content:center;transition:all var(--transition-fast);width:40px}.menu-toggle:hover{color:var(--text-primary)}.menu-toggle svg{height:20px;width:20px}.header-left{gap:16px}.header-left,.header-search{align-items:center;display:flex}.header-search{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-full);gap:12px;height:40px;padding:0 16px;transition:all var(--transition-fast);width:320px}.header-search:hover{border-color:var(--text-secondary)}.header-search:focus-within{background:var(--bg-primary);border-color:var(--text-primary);box-shadow:0 0 0 4px var(--bg-secondary)}.header-search svg{color:var(--text-secondary);flex-shrink:0;height:16px;width:16px}.header-search input{background:#0000;border:none;color:var(--text-primary);flex:1 1;font-family:var(--font-family-base);font-size:14px;outline:none}.header-search input::placeholder{color:var(--text-muted)}.header-right{gap:8px}.header-icon-btn,.header-right{align-items:center;display:flex}.header-icon-btn{background:#0000;border:none;border-radius:var(--radius-full);color:var(--text-secondary);cursor:pointer;height:40px;justify-content:center;position:relative;transition:all var(--transition-fast);width:40px}.header-icon-btn:hover{background:var(--bg-secondary);color:var(--text-primary)}.header-icon-btn svg{height:20px;width:20px}.header-icon-btn .badge{height:8px;right:8px;top:8px;width:8px}.header-icon-btn .badge,.header-icon-btn .badge-count{background:var(--color-error);border:2px solid var(--bg-primary);border-radius:var(--radius-full);position:absolute}.header-icon-btn .badge-count{align-items:center;color:var(--text-white);display:flex;font-size:10px;font-weight:700;height:18px;justify-content:center;min-width:18px;padding:0 5px;right:4px;top:4px}.header-divider{background:var(--border-color);height:32px;margin:0 8px;width:1px}.user-menu{align-items:center;border-radius:var(--radius-full);cursor:pointer;display:flex;gap:10px;padding:6px 12px 6px 6px;transition:background var(--transition-fast)}.user-menu:hover{background:var(--bg-secondary)}.user-avatar{align-items:center;background:var(--text-primary);border-radius:var(--radius-full);color:var(--text-white);display:flex;font-size:14px;font-weight:700;height:36px;justify-content:center;width:36px}.user-name{font-size:14px;line-height:1.2}.user-role{color:var(--text-secondary);font-size:12px}.logout-btn{align-items:center;background:#0000;border:1px solid var(--text-primary);color:var(--text-primary);cursor:pointer;display:flex;font-size:13px;font-weight:700;gap:6px;height:36px;padding:0 14px;transition:all var(--transition-fast)}.logout-btn:hover{background:var(--text-primary);color:var(--text-white)}.logout-btn svg{height:16px;width:16px}.header-breadcrumb{align-items:center;color:var(--text-secondary);display:flex;font-size:14px;gap:8px}.header-breadcrumb a{color:var(--text-secondary);text-decoration:none;transition:color var(--transition-fast)}.header-breadcrumb a:hover{color:var(--text-primary)}.header-breadcrumb span{color:var(--text-muted)}.header-breadcrumb-current{color:var(--text-primary);font-weight:500}@media (max-width:1024px){.header-search{width:260px}}@media (max-width:768px){.admin-header{padding:0 16px}.header-divider,.header-search,.logout-btn span,.user-info{display:none}.logout-btn{border:none;padding:0;width:36px}}@media (max-width:480px){.header-right{gap:4px}.header-icon-btn{height:36px;width:36px}}.toast-container{display:flex;flex-direction:column;gap:12px;pointer-events:none;position:fixed;right:24px;top:24px;z-index:9999}.toast-container .toast{pointer-events:all}.toast{align-items:flex-start;animation:toastSlideIn .3s ease-out;box-shadow:var(--shadow-lg);display:flex;font-family:var(--font-family-base);gap:12px;justify-content:space-between;max-width:480px;min-width:320px;padding:16px 20px;position:fixed;right:24px;top:24px;z-index:9999}@keyframes toastSlideIn{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.toast-content{align-items:flex-start;display:flex;flex:1 1;gap:12px}.toast-icon{align-items:center;background:#ffffff40;border-radius:var(--radius-full);display:flex;flex-shrink:0;font-size:14px;font-weight:700;height:22px;justify-content:center;width:22px}.toast-message{flex:1 1;font-size:14px;font-weight:500;line-height:1.5}.toast-close{background:none;border:none;color:inherit;cursor:pointer;flex-shrink:0;font-size:20px;line-height:1;opacity:.7;padding:0;transition:opacity .2s}.toast-close:hover{opacity:1}.toast-success{background:var(--color-success);color:var(--text-white)}.toast-error{background:var(--color-error);color:var(--text-white)}.toast-warning{background:var(--color-warning);color:var(--text-primary)}.toast-warning .toast-icon{background:#00000026}.toast-info{background:var(--color-secondary);color:var(--text-white)}@media (max-width:480px){.toast,.toast-container{left:16px;right:16px;top:16px}.toast{max-width:none;min-width:auto}}.admin-layout{background-color:var(--bg-secondary)}.admin-layout,.main-content{display:flex;min-height:100vh}.main-content{flex:1 1;flex-direction:column;margin-left:var(--sidebar-width);transition:margin-left var(--transition-slow)}.main-content.sidebar-closed{margin-left:var(--sidebar-collapsed-width)}.content-area{flex:1 1;max-width:var(--container-max-width);padding:28px 32px;width:100%}.page-title{color:var(--text-primary);font-size:24px;font-weight:700;margin-bottom:24px}.page-subtitle{color:var(--text-secondary);font-size:14px;font-weight:400;margin-top:4px}.content-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:0}.content-card-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:16px 20px}.content-card-body{padding:0}.section{margin-bottom:32px}@media (max-width:1200px){.content-area{padding:24px}}@media (max-width:768px){.main-content{margin-left:0!important}.content-area{padding:20px 16px}.page-header{align-items:flex-start;flex-direction:column;gap:16px}.page-header h1{font-size:22px}}@media (max-width:480px){.content-area{padding:16px}}.login-container{align-items:center;background:var(--bg-dark);display:flex;justify-content:center;min-height:100vh;padding:20px;position:relative}.login-container:before{background:linear-gradient(90deg,var(--color-primary),var(--color-secondary),var(--color-primary));content:"";height:4px;left:0;position:absolute;right:0;top:0}.login-card{animation:slideUp .4s ease;background:var(--bg-primary);border:none;border-radius:0;box-shadow:0 4px 24px #0003;max-width:420px;padding:48px;width:100%}.chakra-logo{align-items:center;display:flex;justify-content:center;margin-bottom:24px}.rotating-chakra{height:80px;object-fit:contain;width:80px}.login-header{margin-bottom:32px;text-align:center}.login-header h1{color:var(--text-primary);font-size:24px;font-weight:700;letter-spacing:-.5px;margin-bottom:8px}.login-header p{color:var(--text-secondary);font-size:14px;font-weight:400}.form-group input[type=email],.form-group input[type=tel],.form-group input[type=text]{background:var(--bg-primary);border:1px solid var(--text-primary);border-radius:0;color:var(--text-primary);font-family:var(--font-family-base);font-size:15px;padding:14px 16px;transition:all .2s ease;width:100%}.form-group input::placeholder{color:var(--text-muted)}.form-group input:hover{border-color:var(--text-secondary)}.radio-group{display:flex;gap:0;margin-top:8px}.radio-label{align-items:center;background:var(--bg-primary);border:1px solid var(--text-primary);color:var(--text-primary);cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:600;justify-content:center;padding:14px 20px;transition:all .2s ease}.radio-label:first-child{border-right:none}.radio-label:hover{background:var(--bg-secondary)}.radio-label:has(input:checked){background:var(--text-primary);color:var(--text-white)}.radio-label input[type=radio]{display:none}.btn{font-size:15px;padding:14px 24px}.btn-primary:disabled{background:var(--color-gray-300);color:var(--text-white)}.error-message{animation:slideDown .3s ease;border-radius:0;font-weight:500}.error-message,.otp-info{margin-bottom:20px;padding:14px 16px}.otp-info{background:var(--bg-secondary);border-left:3px solid var(--color-primary);color:var(--text-secondary);font-size:14px}.otp-info strong{color:var(--text-primary)}.otp-actions{align-items:center;border-top:1px solid var(--border-color);display:flex;justify-content:space-between;margin-top:24px;padding-top:20px}.btn-link{background:none;border:none;cursor:pointer;font-size:14px;padding:8px 0;transition:all .2s ease}.btn-link:disabled{color:var(--text-muted);cursor:not-allowed}@media (max-width:480px){.login-card{padding:32px 24px}.chakra-logo{margin-bottom:20px}.rotating-chakra{height:60px;width:60px}.login-header h1{font-size:22px}.radio-group{flex-direction:column;gap:0}.radio-label{border-right:1px solid var(--text-primary)!important}.radio-label:first-child{border-bottom:none}.otp-actions{align-items:stretch;flex-direction:column;gap:12px}.btn-link{text-align:center}}.dashboard{animation:fadeIn .3s ease;padding:0}.dashboard-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:32px}.dashboard-header h1{color:var(--text-primary);font-size:26px;font-weight:700;margin:0}.refresh-info{color:var(--text-secondary);display:flex;gap:16px}.btn-refresh,.refresh-info{align-items:center;font-size:13px}.btn-refresh{background:var(--bg-primary);border:1px solid var(--text-primary);color:var(--text-primary);cursor:pointer;display:inline-flex;font-weight:600;gap:6px;height:36px;padding:0 16px;transition:all .2s ease}.btn-refresh:hover:not(:disabled){background:var(--text-primary);color:var(--text-white)}.btn-refresh:disabled{cursor:not-allowed;opacity:.5}.analytics-section{margin-bottom:40px}.analytics-section h2{align-items:center;color:var(--text-primary);display:flex;font-size:18px;font-weight:700;gap:10px;margin-bottom:20px}.analytics-section h2:before{background:var(--color-primary);border-radius:2px;content:"";display:block;height:20px;width:4px}.dashboard-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(4,1fr)}@media (max-width:1200px){.dashboard-cards{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.dashboard-cards{grid-template-columns:1fr}}.dashboard .card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:0;overflow:hidden;padding:24px;position:relative;transition:all .2s ease}.dashboard .card:after{background:var(--color-primary);bottom:0;content:"";height:3px;left:0;position:absolute;right:0;transform:scaleX(0);transition:transform .3s ease}.dashboard .card:hover{box-shadow:var(--shadow-card-hover)}.dashboard .card:hover:after{transform:scaleX(1)}.dashboard .card h3{color:var(--text-secondary);font-size:12px;font-weight:700;letter-spacing:.05em;margin:0 0 12px;text-transform:uppercase}.card-value{color:var(--text-primary);font-size:32px;font-weight:700;line-height:1.1;margin-bottom:6px}.card-subtitle{color:var(--text-secondary);font-size:13px}.card-highlight{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-secondary) 100%);border:none}.card-highlight:after{display:none}.card-highlight .card-subtitle,.card-highlight .card-value,.card-highlight h3{color:var(--text-white)}.card-highlight h3{opacity:.9}.card-highlight .card-subtitle{opacity:.85}.popular-courses{display:flex;flex-direction:column;gap:12px}.course-item{align-items:center;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:0;display:flex;gap:16px;padding:16px 20px;transition:all .2s ease}.course-item:hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.course-rank{align-items:center;background:var(--bg-secondary);color:var(--text-primary);display:flex;flex-shrink:0;font-size:14px;font-weight:700;height:36px;justify-content:center;width:36px}.course-item:first-child .course-rank{background:var(--color-primary);color:var(--text-white)}.course-item:nth-child(2) .course-rank{background:var(--color-secondary);color:var(--text-white)}.course-item:nth-child(3) .course-rank{background:var(--color-accent);color:var(--text-primary)}.course-info{flex:1 1;min-width:0}.course-info h4{color:var(--text-primary);font-size:15px;font-weight:600;margin:0 0 6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.course-stats{color:var(--text-secondary);flex-wrap:wrap;font-size:13px;gap:16px}.course-stats span{align-items:center;display:inline-flex;gap:4px}.course-stats .separator{display:none}.charts-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(3,1fr)}@media (max-width:1200px){.charts-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.charts-grid{grid-template-columns:1fr}}.chart-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:0;padding:20px}.chart-card h3{color:var(--text-primary);font-size:14px;font-weight:700;margin:0 0 20px}.simple-chart{align-items:flex-end;display:flex;gap:8px;height:180px;justify-content:space-between;padding-top:16px}.chart-bar{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:8px;height:100%}.bar{align-self:flex-end;background:var(--color-primary);cursor:pointer;margin:0 auto;max-width:40px;min-height:4px;transition:all .3s ease;width:100%}.bar:hover{opacity:.85;transform:scaleY(1.02)}.bar-revenue{background:var(--color-success)}.bar-enrollment{background:var(--color-accent)}.bar-label{color:var(--text-secondary);font-size:11px;font-weight:500;text-align:center;white-space:nowrap}.error-state,.loading-state{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;font-size:15px;gap:16px;justify-content:center;min-height:400px}.loading-state:before{animation:spin .8s linear infinite;border:3px solid var(--border-color);border-radius:50%;border-top-color:var(--color-primary);content:"";height:40px;width:40px}.error-state{color:var(--color-error)}@media (max-width:768px){.dashboard-header{align-items:flex-start;flex-direction:column;gap:16px}.dashboard-header h1{font-size:22px}.refresh-info{justify-content:space-between;width:100%}.card-value{font-size:26px}.course-item{padding:14px 16px}.simple-chart{height:140px}}@media (max-width:480px){.dashboard-header h1{font-size:20px}.dashboard .card{padding:20px}.card-value{font-size:24px}.course-stats{flex-direction:column;gap:4px}}.course-list-container{animation:fadeIn .3s ease}.course-table{background:var(--bg-primary);border:1px solid var(--border-color);overflow:hidden}table{border-collapse:collapse;width:100%}th{background:var(--bg-tertiary);color:var(--text-secondary);font-size:11px;font-weight:700;letter-spacing:.05em;padding:14px 16px;text-align:left;text-transform:uppercase}td,th{border-bottom:1px solid var(--border-color)}td{color:var(--text-primary);font-size:14px;padding:16px;vertical-align:middle}tbody tr{transition:background var(--transition-fast)}tbody tr:hover{background:var(--bg-hover)}tbody tr:last-child td{border-bottom:none}tr.deleted{opacity:.6}tr.deleted,tr.deleted:hover{background:var(--color-error-bg)}td:first-child{font-weight:500;max-width:280px}td:first-child span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}td:nth-child(4),td:nth-child(5),td:nth-child(6),td:nth-child(7){font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:center}th:nth-child(4),th:nth-child(5),th:nth-child(6),th:nth-child(7){text-align:center}.action-buttons .btn{white-space:nowrap}@media (max-width:1200px){.course-table{overflow-x:auto}table{min-width:900px}}@media (max-width:768px){.page-header{align-items:flex-start;flex-direction:column;gap:16px}.page-header h1{font-size:22px}.filters{align-items:flex-start;flex-direction:column;gap:12px}.action-buttons{flex-wrap:wrap}}.file-upload{margin-bottom:16px}.upload-label{color:#2c3e50;display:block;font-size:13px;font-weight:600;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.upload-error{background:#0000;border:2px solid #dc2626;color:#dc2626;font-size:14px;font-weight:500;margin-bottom:12px;padding:12px 16px}.upload-area{border:2px dashed #cbd5e1;padding:24px;text-align:center;transition:all .3s ease}.upload-area:hover{background-color:#f8fafc;border-color:#4a90e2}.upload-button{align-items:center;background:#fff;border:2px solid #2c3e50;color:#2c3e50;cursor:pointer;display:inline-flex;font-size:15px;font-weight:600;gap:8px;letter-spacing:.5px;padding:12px 24px;text-transform:uppercase;transition:all .25s ease}.upload-button:hover{background:#4a90e2;border-color:#4a90e2;box-shadow:0 4px 12px #4a90e226;color:#fff;transform:translateY(-2px)}.upload-button:active{transform:translateY(0)}.upload-icon,.upload-spinner{font-size:20px}.upload-hint{color:#64748b;font-size:13px;margin-top:12px}.file-preview{background:#fff;border:2px solid #4a90e2;display:inline-block;max-width:100%;padding:8px;position:relative}.file-preview img{max-height:300px;object-fit:contain}.file-preview img,.file-preview video{display:block;max-width:100%}.file-preview.file-link{padding:16px 24px;text-align:center}.file-preview.file-link a{color:#4a90e2;font-size:15px;font-weight:600;text-decoration:none}.file-preview.file-link a:hover{text-decoration:underline}.btn-remove{background:#dc2626;border:none;color:#fff;cursor:pointer;font-size:24px;font-weight:600;height:32px;line-height:1;position:absolute;right:4px;top:4px;transition:all .2s ease;width:32px}.btn-remove:hover{background:#b91c1c;transform:scale(1.1)}@media (max-width:480px){.upload-button{font-size:14px;padding:10px 20px}.file-preview img{max-height:200px}}.lesson-management{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;margin-top:20px;padding:20px}.lesson-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.lesson-header h4{color:#495057;font-size:16px;margin:0}.no-lessons{color:#999;font-size:13px;padding:30px;text-align:center}.lesson-list{display:flex;flex-direction:column;gap:8px}.lesson-item{align-items:center;background:#fff;border:1px solid #ddd;border-radius:4px;display:flex;gap:12px;padding:12px;transition:all .2s}.lesson-item:hover{background:#f8f9fa;box-shadow:0 2px 4px #0000000d}.lesson-drag-handle{color:#999;cursor:grab;font-size:16px;-webkit-user-select:none;user-select:none}.lesson-drag-handle:active{cursor:grabbing}.lesson-icon{font-size:24px}.lesson-content{flex:1 1}.lesson-title{color:#333;font-size:14px;font-weight:500;margin-bottom:3px}.lesson-meta{color:#666;font-size:11px}.lesson-actions{display:flex;gap:6px}.form-row{grid-gap:15px;gap:15px}.checkbox-group label{gap:8px;margin-bottom:0!important}.module-management{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-top:32px;padding:24px}.module-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.module-header h3{color:var(--text-primary);font-size:18px;font-weight:600;margin:0}.no-modules{color:var(--text-secondary);font-size:14px;padding:60px 20px;text-align:center}.module-list{gap:12px}.module-list,.module-wrapper{display:flex;flex-direction:column}.module-wrapper{gap:0}.module-item{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;gap:12px;padding:16px;transition:all .2s ease}.module-item:hover{background:var(--bg-tertiary);box-shadow:var(--shadow-sm)}.module-drag-handle{color:var(--text-tertiary);cursor:grab;font-size:18px;padding:4px;-webkit-user-select:none;user-select:none}.module-drag-handle:active{cursor:grabbing}.module-content{cursor:pointer;flex:1 1;-webkit-user-select:none;user-select:none}.module-title{align-items:center;color:var(--text-primary);display:flex;font-size:15px;font-weight:600;gap:8px;margin-bottom:6px}.expand-icon{transition:transform .2s ease}.module-meta{color:var(--text-secondary);font-size:13px}.module-actions{display:flex;gap:8px}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;z-index:2000}.modal-content{border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:32px}.modal-content h3{font-weight:600;margin:0 0 24px}.modal-content form{display:flex;flex-direction:column;gap:0}.course-form-container{animation:fadeIn .3s ease;max-width:100%}.form-card{background:var(--bg-primary);border:1px solid var(--border-color);margin-bottom:24px;padding:28px}.form-card h2{border-bottom:1px solid var(--border-color);color:var(--text-primary);font-size:18px;font-weight:700;margin:0 0 20px;padding-bottom:16px}.form-row{grid-template-columns:repeat(2,1fr);margin-bottom:0}@media (max-width:768px){.form-row{grid-template-columns:1fr}}.checkbox-group label{color:var(--text-primary);font-size:14px}.multi-select-container{background:var(--bg-secondary);border:1px solid var(--border-color);max-height:200px;overflow-y:auto;padding:16px}.text-muted{color:var(--text-secondary);font-size:14px;margin:0}.text-muted a{color:var(--color-primary);font-weight:600;text-decoration:none}.text-muted a:hover{text-decoration:underline}.checkbox-list{display:flex;flex-direction:column;gap:4px}.checkbox-item{align-items:center;cursor:pointer;display:flex;padding:10px 12px;transition:background .2s}.checkbox-item:hover{background:var(--bg-hover)}.checkbox-item input[type=checkbox]{accent-color:var(--color-primary);cursor:pointer;height:18px;margin-right:10px;width:18px}.checkbox-label{color:var(--text-primary);font-size:14px;gap:8px}.item-icon{font-size:16px}.tag-list{display:flex;flex-wrap:wrap;gap:10px}.tag-item{align-items:center;background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;padding:8px 16px;transition:all .2s;-webkit-user-select:none;user-select:none}.tag-item:hover{background:var(--color-primary-bg);border-color:var(--color-primary)}.tag-item.selected{background:var(--color-primary);border-color:var(--color-primary);color:var(--text-white)}.image-preview{background:var(--bg-secondary);border:1px solid var(--border-color);margin-top:12px;padding:12px}.image-preview img{display:block;height:auto;max-width:200px}.section-header{margin-bottom:16px}.section-title{color:var(--text-primary);font-size:16px;font-weight:700}.form-group.error input,.form-group.error select,.form-group.error textarea{border-color:var(--color-error)}.payment-management{animation:fadeIn .3s ease;margin:0 auto;max-width:var(--container-max-width)}.revenue-summary{background:var(--bg-primary);border:1px solid var(--border-color);margin-bottom:28px;padding:28px}.revenue-summary h2{align-items:center;color:var(--text-primary);display:flex;font-size:18px;font-weight:700;gap:10px;margin:0 0 24px}.revenue-summary h2:before{background:var(--color-primary);border-radius:2px;content:"";display:block;height:20px;width:4px}.revenue-summary h3{color:var(--text-primary);font-size:16px;font-weight:700;margin:32px 0 16px}.summary-cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:28px}.summary-card{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-secondary) 100%);color:var(--text-white);padding:24px;transition:all .2s ease}.summary-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.summary-card .card-label{font-size:12px;font-weight:700;letter-spacing:.05em;margin-bottom:10px;opacity:.9;text-transform:uppercase}.summary-card .card-value{font-size:28px;font-weight:700}.top-courses{margin-top:28px}.courses-table{border-collapse:collapse;margin-top:16px;width:100%}.courses-table thead{background:var(--bg-tertiary)}.courses-table th{color:var(--text-secondary);font-size:11px;font-weight:700;letter-spacing:.05em;padding:14px 16px;text-align:left;text-transform:uppercase}.courses-table td,.courses-table th{border-bottom:1px solid var(--border-color)}.courses-table td{color:var(--text-primary);font-size:14px;padding:16px}.courses-table tbody tr{transition:background .2s}.courses-table tbody tr:hover{background:var(--bg-hover)}.courses-table tbody tr:last-child td{border-bottom:none}.courses-table .rank{align-items:center;background:var(--color-primary);color:var(--text-white);display:inline-flex;font-size:12px;font-weight:700;height:24px;justify-content:center;margin-right:10px;width:24px}.payment-methods{margin-top:28px}.payment-method-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-top:16px}.payment-method-card{background:var(--bg-secondary);border:1px solid var(--border-color);padding:20px;text-align:center;transition:all .2s}.payment-method-card:hover{border-color:var(--color-primary)}.payment-method-card .method-name{color:var(--text-secondary);font-size:12px;font-weight:700;letter-spacing:.05em;margin-bottom:8px;text-transform:uppercase}.payment-method-card .method-amount{color:var(--color-primary);font-size:20px;font-weight:700}.transactions-section{background:var(--bg-primary);border:1px solid var(--border-color);padding:28px}.transactions-section h2{align-items:center;color:var(--text-primary);display:flex;font-size:18px;font-weight:700;gap:10px;margin:0 0 24px}.transactions-section h2:before{background:var(--color-primary);border-radius:2px;content:"";display:block;height:20px;width:4px}.filters{align-items:flex-end;flex-wrap:wrap;gap:16px}.filter-group input,.filter-group select{min-width:140px}.payments-table{border-collapse:collapse;margin-top:20px;width:100%}.payments-table thead{background:var(--bg-tertiary)}.payments-table th{color:var(--text-secondary);font-size:11px;font-weight:700;letter-spacing:.05em;padding:14px 16px;text-align:left;text-transform:uppercase}.payments-table td,.payments-table th{border-bottom:1px solid var(--border-color)}.payments-table td{color:var(--text-primary);font-size:14px;padding:16px;vertical-align:middle}.payments-table tbody tr{transition:background .2s}.payments-table tbody tr:hover{background:var(--bg-hover)}.payments-table tbody tr:last-child td{border-bottom:none}.payments-table .transaction-id{color:var(--text-secondary);font-family:var(--font-family-mono);font-size:12px}.payments-table .user-email{color:var(--text-secondary);font-size:12px;margin-top:4px}.payments-table .amount{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:700}.payments-table .no-data{color:var(--text-secondary);padding:48px;text-align:center}.status-pending{background:var(--color-warning-bg);color:#92400e}.status-failed{background:var(--color-error-bg);color:var(--color-error)}.status-refunded{background:var(--color-info-bg);color:var(--color-secondary)}.btn-clear{background:var(--bg-primary);border:1px solid var(--text-primary);color:var(--text-primary);height:40px}.btn-clear:hover{background:var(--text-primary);color:var(--text-white)}.pagination{padding-top:24px}.btn-pagination{background:var(--color-primary);color:var(--text-white);height:36px;padding:0 16px}.btn-pagination:hover:not(:disabled){background:var(--color-primary-dark)}.btn-pagination:disabled{background:var(--color-gray-300);cursor:not-allowed}.error-message{background:var(--color-error-bg);border-left:3px solid var(--color-error);font-size:14px;margin:20px 0;padding:16px 20px}@media (max-width:1024px){.summary-cards{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.page-header{align-items:flex-start;flex-direction:column;gap:16px}.revenue-summary,.transactions-section{padding:20px}.summary-cards{grid-template-columns:1fr}.payment-method-grid{grid-template-columns:repeat(2,1fr)}.filters{align-items:stretch;flex-direction:column}.filter-group input,.filter-group select{width:100%}.payments-table td,.payments-table th{font-size:13px;padding:12px 10px}}.user-management{animation:fadeIn .3s ease}.statistics-cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:28px}.stat-card:hover{box-shadow:var(--shadow-card-hover)}.stat-card.active{border-left:3px solid var(--color-success)}.stat-card.suspended{border-left:3px solid var(--color-error)}.stat-label{margin-bottom:8px}.filter-tabs{background:var(--bg-primary);border:1px solid var(--border-color);display:flex;gap:0;margin-bottom:24px}.filter-tab{background:#0000;border:none;border-right:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:14px 24px;transition:all .2s ease}.filter-tab:last-child{border-right:none}.filter-tab:hover{background:var(--bg-secondary);color:var(--text-primary)}.filter-tab.active{background:var(--color-primary);color:var(--text-white)}.users-table-container{background:var(--bg-primary);border:1px solid var(--border-color);overflow-x:auto}.users-table{border-collapse:collapse;width:100%}.users-table thead{background:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.users-table th{color:var(--text-secondary);font-size:11px;font-weight:700;letter-spacing:.05em;padding:14px 16px;text-align:left;text-transform:uppercase}.users-table td{border-bottom:1px solid var(--border-color);color:var(--text-primary);font-size:14px;padding:16px;vertical-align:middle}.users-table tbody tr{transition:background .2s ease}.users-table tbody tr:hover{background:var(--bg-hover)}.users-table tbody tr:last-child td{border-bottom:none}.users-table tbody tr.suspended-row{background:var(--color-error-bg)}.users-table tbody tr.suspended-row:hover{background:#fee2e2}.status-badge.suspended{background:var(--color-error-bg);color:var(--color-error)}.suspension-reason{color:var(--text-secondary);font-style:italic;margin-top:4px}.no-users{color:var(--text-secondary);font-size:15px;padding:64px 20px;text-align:center}.modal-content{max-width:480px;padding:28px}.modal-content h3{color:var(--text-primary);font-size:20px;font-weight:700;margin:0 0 20px}.warning-text{background:var(--color-error-bg);border-left:3px solid var(--color-error);color:var(--color-error);font-size:14px;font-weight:500;margin-bottom:20px;padding:14px 16px}@media (max-width:1024px){.statistics-cards{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.page-header{align-items:flex-start;flex-direction:column;gap:16px}.statistics-cards{grid-template-columns:1fr}.filter-tabs{flex-direction:column}.filter-tab{border-bottom:1px solid var(--border-color);border-right:none}.filter-tab:last-child{border-bottom:none}.users-table td,.users-table th{padding:12px}.action-buttons{flex-direction:column}}.enrollment-management{animation:fadeIn .3s ease}.page-header h1,.stats-grid{margin-bottom:28px}.stats-grid{grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stat-value{margin:8px 0}.stat-label{font-size:12px;margin:4px 0 0;opacity:.8}.filters-section{padding:24px}.filters-section h3{color:var(--text-primary);font-size:16px;font-weight:700;margin:0 0 16px}.filters-grid{grid-gap:16px;align-items:end;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.filter-group{flex-direction:column}.filter-group label{margin-bottom:8px}.filter-group input,.filter-group select{background:var(--bg-primary);border:1px solid var(--text-primary);color:var(--text-primary);font-family:var(--font-family-base);font-size:14px;padding:10px 14px}.filter-group input:focus,.filter-group select:focus{border-color:var(--text-primary);box-shadow:0 0 0 4px var(--bg-secondary);outline:none}.filter-actions{display:flex;gap:10px}.table-section{background:var(--bg-primary);border:1px solid var(--border-color);padding:24px}.table-section h3{color:var(--text-primary);font-size:16px;font-weight:700;margin:0 0 20px}.table-container{overflow-x:auto}.enrollments-table{border-collapse:collapse;min-width:900px;width:100%}.enrollments-table thead{background:var(--bg-tertiary)}.enrollments-table th{border-bottom:1px solid var(--border-color);color:var(--text-secondary);font-size:11px;font-weight:700;letter-spacing:.05em;padding:14px 16px;text-align:left;text-transform:uppercase}.enrollments-table td{border-bottom:1px solid var(--border-color);color:var(--text-primary);font-size:14px;padding:16px;vertical-align:middle}.enrollments-table tbody tr{transition:background .2s}.enrollments-table tbody tr:hover{background:var(--bg-hover)}.enrollments-table tbody tr:last-child td{border-bottom:none}.no-data{padding:48px}.user-info{display:flex;flex-direction:column;gap:2px}.user-name{color:var(--text-primary);font-weight:600}.user-email{color:var(--text-secondary);font-size:12px}.user-id{color:var(--text-muted);font-size:11px}.course-title{color:var(--text-primary);font-weight:600}.course-id{color:var(--text-muted);font-size:11px;margin-top:2px}.progress-bar-container{background-color:var(--bg-tertiary);height:20px;overflow:hidden;position:relative;width:100px}.progress-bar-fill{background:var(--color-primary);height:100%;transition:width .3s ease}.progress-text{color:var(--text-primary);font-size:11px;font-weight:700;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.status-active{background:var(--color-info-bg);color:var(--color-secondary)}.status-completed{background:var(--color-success-bg);color:var(--color-success)}.status-revoked{background:var(--color-error-bg);color:var(--color-error)}.btn-danger-small{background:var(--color-error);border:none;color:var(--text-white);cursor:pointer;font-size:12px;font-weight:600;height:32px;padding:0 12px;transition:all .2s}.btn-danger-small:hover{background:#a32823}.pagination{border-top:1px solid var(--border-color);gap:16px;margin-top:24px;padding-top:20px}.page-info{color:var(--text-secondary);font-size:14px;font-weight:500}.modal{animation:slideUp .3s ease;max-width:480px;padding:28px}.modal h2{color:var(--text-primary);font-size:20px;font-weight:700;margin:0 0 16px}.modal p{color:var(--text-secondary);font-size:14px;line-height:1.5;margin:0 0 20px}.form-group textarea{border:1px solid var(--text-primary);color:var(--text-primary);font-family:var(--font-family-base);font-size:14px;padding:12px 14px;width:100%}.form-group textarea:focus{border-color:var(--text-primary);box-shadow:0 0 0 4px var(--bg-secondary);outline:none}.form-group.checkbox,.form-group.checkbox label{align-items:center;display:flex}.form-group.checkbox label{cursor:pointer;font-weight:500;margin:0}.form-group.checkbox input[type=checkbox]{accent-color:var(--color-primary);cursor:pointer;margin-right:10px}.modal-actions{border-top:1px solid var(--border-color);display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px}@media (max-width:1024px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.filters-grid,.stats-grid{grid-template-columns:1fr}.pagination{flex-direction:column;gap:12px}}.category-management{animation:fadeIn .3s ease;margin:0 auto;max-width:var(--container-max-width)}.category-table{background:var(--bg-primary);border:1px solid var(--border-color);overflow:hidden}.category-table table{border-collapse:collapse;width:100%}.category-table thead{background:var(--bg-tertiary)}.category-table th{color:var(--text-secondary);font-size:11px;font-weight:700;letter-spacing:.05em;padding:14px 16px;text-align:left;text-transform:uppercase}.category-table td,.category-table th{border-bottom:1px solid var(--border-color)}.category-table td{color:var(--text-primary);font-size:14px;padding:16px;vertical-align:middle}.category-table tbody tr{transition:background .2s}.category-table tbody tr:hover{background:var(--bg-hover)}.category-table tbody tr:last-child td{border-bottom:none}.category-icon-display{align-items:center;background:var(--bg-secondary);border-radius:8px;display:inline-flex;font-size:24px;height:40px;justify-content:center;width:40px}.category-name{color:var(--text-primary);font-weight:600}.category-description{color:var(--text-secondary);max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.course-count-badge{background:var(--color-secondary);border-radius:12px;height:24px;min-width:28px;padding:0 8px}.modal-content{max-width:560px}.category-form{padding:24px}@media (max-width:768px){.page-header{align-items:flex-start;flex-direction:column;gap:16px}.page-header h1{font-size:22px}.stats-grid{grid-template-columns:1fr}.filters{align-items:flex-start;flex-direction:column;gap:12px}.category-table{overflow-x:auto}.category-table table{min-width:700px}.form-row{grid-template-columns:1fr}.modal-content{width:95%}.action-buttons{flex-direction:column}.action-buttons .btn{width:100%}}.tag-management{animation:fadeIn .3s ease;margin:0 auto;max-width:var(--container-max-width)}.tag-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:28px}.tag-header h1{color:var(--text-primary);font-size:24px;font-weight:700;margin:0}.tag-filters{display:flex;gap:8px;margin-bottom:24px}.filter-btn{background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;font-size:14px;font-weight:500;height:36px;padding:0 16px;transition:all .2s}.filter-btn:hover{background:var(--bg-secondary);color:var(--text-primary)}.filter-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:var(--text-white)}.tag-table-container{background:var(--bg-primary);border:1px solid var(--border-color);overflow:hidden}.tag-table{border-collapse:collapse;width:100%}.tag-table thead{background:var(--bg-tertiary)}.tag-table th{color:var(--text-secondary);font-size:11px;font-weight:700;letter-spacing:.05em;padding:14px 16px;text-align:left;text-transform:uppercase}.tag-table td,.tag-table th{border-bottom:1px solid var(--border-color)}.tag-table td{color:var(--text-primary);font-size:14px;padding:16px;vertical-align:middle}.tag-table tbody tr{transition:background .2s}.tag-table tbody tr:hover{background:var(--bg-hover)}.tag-table tbody tr:last-child td{border-bottom:none}.tag-name{color:var(--text-primary);font-weight:600}.tag-badge{border-radius:12px;display:inline-block;font-weight:600;padding:4px 12px}.color-preview,.tag-badge{color:var(--text-white);font-size:12px}.color-preview{align-items:center;display:inline-flex;font-family:var(--font-family-mono);gap:8px;padding:4px 10px}.actions button{border:none;cursor:pointer;font-size:13px;font-weight:600;height:32px;padding:0 12px;transition:all .2s}.btn-edit{background:var(--color-secondary);color:var(--text-white)}.btn-edit:hover{background:#401b9c}.btn-toggle{background:var(--color-warning);color:var(--text-primary)}.btn-toggle:hover{background:#e08c00}.btn-delete{background:var(--color-error);color:var(--text-white)}.btn-delete:hover{background:#a32823}.modal-content{max-width:500px}.tag-form{padding:24px}.form-group input{border:1px solid var(--text-primary);box-sizing:border-box;color:var(--text-primary);font-size:14px;padding:12px 14px;transition:all .2s;width:100%}.form-group input:focus{border-color:var(--text-primary);box-shadow:0 0 0 4px var(--bg-secondary);outline:none}.color-options{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(8,1fr);margin-top:8px}.color-option{border:3px solid #0000;cursor:pointer;height:40px;transition:all .2s;width:40px}.color-option:hover{transform:scale(1.1)}.color-option.selected{border-color:var(--text-primary);box-shadow:0 0 0 2px var(--bg-primary),0 0 0 4px var(--text-primary)}.custom-color-input{align-items:center;border-top:1px solid var(--border-color);display:flex;gap:12px;margin-top:12px;padding-top:12px}.custom-color-input label{color:var(--text-secondary);font-size:13px;font-weight:500;margin:0}.custom-color-input input[type=color]{border:1px solid var(--border-color);cursor:pointer;height:36px;padding:2px;width:50px}.color-value{color:var(--text-secondary);font-family:var(--font-family-mono);font-size:13px}.tag-preview-label{margin-bottom:8px}.tag-preview{font-size:14px;padding:6px 14px}@media (max-width:768px){.tag-header{align-items:flex-start;flex-direction:column;gap:16px}.tag-header h1{font-size:22px}.tag-table-container{overflow-x:auto}.tag-table{min-width:700px}.modal-content{width:95%}.color-options{grid-template-columns:repeat(4,1fr)}}.instructor-management{animation:fadeIn .3s ease;margin:0 auto;max-width:var(--container-max-width)}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(4,1fr);margin-bottom:24px}.stat-card{align-items:center;background:var(--bg-primary);border:1px solid var(--border-color);display:flex;gap:16px;padding:20px;transition:box-shadow .2s ease}.stat-card:hover{box-shadow:var(--shadow-sm)}.stat-icon{align-items:center;background:var(--bg-secondary);border-radius:8px;display:flex;font-size:32px;height:56px;justify-content:center;width:56px}.stat-content{display:flex;flex-direction:column;gap:4px}.stat-value{color:var(--text-primary);font-size:28px;line-height:1}.stat-label{font-size:13px;font-weight:500}.filters{gap:24px}.filters input[type=checkbox],.filters input[type=radio]{accent-color:var(--color-primary);cursor:pointer;height:18px;width:18px}.instructor-table{background:var(--bg-primary);border:1px solid var(--border-color);overflow-x:auto}.instructor-table table{border-collapse:collapse;min-width:1100px;width:100%}.instructor-table thead{background:var(--bg-tertiary)}.instructor-table th{color:var(--text-secondary);font-size:11px;font-weight:700;letter-spacing:.05em;padding:14px 16px;text-align:left;text-transform:uppercase;white-space:nowrap}.instructor-table td,.instructor-table th{border-bottom:1px solid var(--border-color)}.instructor-table td{color:var(--text-primary);font-size:14px;padding:16px;vertical-align:middle}.instructor-table tbody tr{transition:background .2s}.instructor-table tbody tr:hover{background:var(--bg-hover)}.instructor-table tbody tr:last-child td{border-bottom:none}.instructor-info{align-items:center;display:flex;gap:12px;min-width:200px}.instructor-avatar{border:2px solid var(--border-color);border-radius:50%;height:40px;object-fit:cover;width:40px}.instructor-avatar-placeholder{align-items:center;background:var(--color-secondary);border-radius:50%;color:var(--text-white);display:flex;font-size:16px;font-weight:700;height:40px;justify-content:center;width:40px}.instructor-details{display:flex;flex-direction:column;gap:2px}.instructor-name{color:var(--text-primary);font-weight:600}.suspension-reason{color:var(--color-error);font-size:12px}.expertise-cell{color:var(--text-secondary);max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.course-stats{align-items:center;display:flex;gap:4px}.course-count-badge{align-items:center;background:var(--color-success);border-radius:4px;color:var(--text-white);display:inline-flex;font-size:12px;font-weight:700;height:22px;justify-content:center;min-width:24px;padding:0 6px}.course-total{color:var(--text-secondary);font-size:13px}.badge-suspended{background:var(--color-error-bg);color:var(--color-error)}.badge-inactive{background:var(--bg-tertiary);color:var(--text-secondary)}.suspended-date{color:var(--text-secondary);font-size:11px;margin-top:4px}.modal-content{max-width:700px;width:100%}.modal-content.suspend-modal{max-width:500px}.modal-close{font-size:24px;transition:all .2s}.instructor-form,.suspend-form{padding:24px}.suspend-warning{background:var(--color-warning-bg);border:1px solid var(--color-warning);color:var(--text-primary);font-size:14px;line-height:1.6;margin-bottom:20px;padding:12px 16px}.form-group input,.form-group textarea{border:1px solid var(--text-primary);box-sizing:border-box;color:var(--text-primary);font-family:var(--font-family-base);font-size:14px;padding:12px 14px;transition:all .2s;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:var(--text-primary);box-shadow:0 0 0 4px var(--bg-secondary);outline:none}.modal-footer{margin-top:24px;padding-top:20px}@media (max-width:1200px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.page-header{align-items:flex-start;flex-direction:column;gap:16px}.page-header h1{font-size:22px}.stats-grid{grid-template-columns:1fr}.filters{align-items:flex-start;flex-direction:column;gap:12px}.form-row{grid-template-columns:1fr}.modal-content{width:95%}.action-buttons{flex-direction:column}.action-buttons .btn{width:100%}}.active-sessions-container{animation:fadeIn .3s ease;margin:0 auto;max-width:var(--container-max-width)}.sessions-header{margin-bottom:28px}.sessions-header h1{color:var(--text-primary);font-size:24px;font-weight:700;margin-bottom:8px}.sessions-subtitle{color:var(--text-secondary);font-size:14px}.error-banner{align-items:center;background:var(--color-error-bg);border:1px solid var(--color-error-light);display:flex;justify-content:space-between;margin-bottom:24px;padding:12px 16px}.error-banner span{color:var(--color-error);font-size:14px}.btn-retry{background:none;border:1px solid var(--color-error);color:var(--color-error);cursor:pointer;font-size:13px;font-weight:600;height:32px;padding:0 12px;transition:all .2s}.btn-retry:hover{background:var(--color-error);color:var(--text-white)}.sessions-actions{align-items:center;background:var(--bg-primary);border:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:24px;padding:16px 20px}.sessions-count{color:var(--text-secondary);font-size:14px;font-weight:500}.empty-state{border:1px solid var(--border-color);padding:64px}.sessions-grid{grid-gap:20px;display:grid;gap:20px;margin-bottom:32px}.session-card{background:var(--bg-primary);border:1px solid var(--border-color);display:flex;gap:20px;padding:24px;transition:all .2s}.session-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-card-hover)}.session-card.current-session{background:var(--color-primary-bg);border:2px solid var(--color-primary)}.session-icon{align-items:center;display:flex;font-size:48px;justify-content:center;min-width:60px}.session-content{flex:1 1}.session-header-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.session-header-row h3{color:var(--text-primary);font-size:18px;font-weight:700;margin:0}.session-details{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:16px}.session-detail-item{display:flex;flex-direction:column;gap:4px}.session-detail-item .label{color:var(--text-secondary);font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.session-detail-item .value{color:var(--text-primary);font-size:14px;font-weight:500}.badge-primary{background:var(--color-primary);color:var(--text-white)}.badge-success{background:var(--color-success);color:var(--text-white)}.badge-secondary{background:var(--bg-tertiary);color:var(--text-secondary)}.session-actions{border-top:1px solid var(--border-color);margin-top:16px;padding-top:16px}.current-device-note{background:var(--color-info-bg);border-left:3px solid var(--color-secondary);color:var(--color-secondary);font-size:13px;margin-top:12px;padding:12px 16px}.sessions-info-box{background:var(--bg-primary);border:1px solid var(--border-color);margin-top:32px;padding:24px}.sessions-info-box h4{color:var(--text-primary);font-size:16px;font-weight:700;margin-bottom:16px}.sessions-info-box ul{list-style:none;margin:0;padding:0}.sessions-info-box li{color:var(--text-secondary);font-size:14px;line-height:1.6;padding:8px 0 8px 20px;position:relative}.sessions-info-box li:before{background:var(--color-primary);content:"";height:6px;left:0;position:absolute;top:14px;width:6px}@media (max-width:768px){.sessions-header h1{font-size:22px}.session-card{flex-direction:column;gap:16px}.session-icon{font-size:36px;min-width:auto}.session-details{grid-template-columns:1fr}.sessions-actions{align-items:stretch;flex-direction:column;gap:12px}.sessions-actions .btn{width:100%}}.modal-overlay{background-color:#00000080;bottom:0;left:0;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:.75rem;box-shadow:0 1.25rem 2.5rem #00000040;max-width:37.5rem;overflow:auto}.modal-header{background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:1px solid #dee2e6;border-radius:.75rem .75rem 0 0;color:#fff;padding:1.5rem}.modal-header h2{font-size:1.5rem;font-weight:600}.modal-close{background:none;border-radius:.25rem;color:#fff;font-size:2rem;height:2rem;line-height:1;padding:0;transition:background-color .2s;width:2rem}.modal-close:hover{background-color:#fff3}.goal-form{padding:1.5rem}.form-group{margin-bottom:1.5rem}.form-group label{color:#1a1a1a;font-size:.9375rem;font-weight:600;margin-bottom:.5rem}.required{color:#dc3545}.form-group input[type=number],.form-group input[type=text],.form-group select,.form-group textarea{border:1px solid #ced4da;border-radius:.375rem;font-family:inherit;font-size:.9375rem;padding:.75rem}.form-group input[type=number]:focus,.form-group input[type=text]:focus,.form-group select:focus,.form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 .2rem #667eea40;outline:none}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:#dc3545}.form-group input.error:focus,.form-group select.error:focus,.form-group textarea.error:focus{box-shadow:0 0 0 .2rem #dc354540}.error-message{color:#dc3545}.error-message,.helper-text{font-size:.8125rem;margin-top:.375rem}.helper-text{color:#6c757d;display:block}.icon-preview{align-items:center;background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:.375rem;display:flex;justify-content:center;margin-top:.75rem;padding:.75rem}.icon-preview img{max-height:6rem;max-width:6rem;object-fit:contain}.checkbox-group label{gap:.625rem}.checkbox-group input[type=checkbox]{height:1.125rem;width:1.125rem}.form-actions{border-top:1px solid #dee2e6;gap:1rem;margin-top:2rem;padding-top:1.5rem}.btn{border-radius:.375rem;font-size:.9375rem;font-weight:500;padding:.625rem 1.25rem;transition:all .2s ease}.btn:hover{box-shadow:0 .25rem .5rem #00000026;transform:translateY(-.125rem)}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2)}.btn-primary:hover{background:linear-gradient(135deg,#5568d3,#6a3e91)}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover{background-color:#5a6268}@media (max-width:768px){.modal-content{max-height:95vh;width:95%}.modal-header{padding:1rem}.modal-header h2{font-size:1.25rem}.goal-form{padding:1rem}.form-actions{flex-direction:column-reverse}.btn{width:100%}}.goal-management-container{animation:fadeIn .3s ease}.filters{margin-bottom:20px}.filters label{cursor:pointer;gap:8px;-webkit-user-select:none;user-select:none}.filters input[type=checkbox]{accent-color:var(--color-primary);cursor:pointer;height:18px;width:18px}.goal-table{background:var(--bg-primary);border:1px solid var(--border-color);overflow:hidden}.goal-table table{border-collapse:collapse;width:100%}.goal-table thead{background:var(--bg-tertiary)}.goal-table th{color:var(--text-secondary);font-size:11px;font-weight:700;letter-spacing:.05em;padding:14px 16px;text-align:left;text-transform:uppercase}.goal-table td,.goal-table th{border-bottom:1px solid var(--border-color)}.goal-table td{color:var(--text-primary);font-size:14px;padding:16px;vertical-align:middle}.goal-table tbody tr{transition:background .2s ease}.goal-table tbody tr:hover{background:var(--bg-hover)}.goal-table tbody tr:last-child td{border-bottom:none}.goal-table tbody tr.deleted{background:var(--color-warning-bg);opacity:.7}.goal-table tbody tr.deleted:hover{background:#fef0c8}.goal-icon-preview{background:var(--bg-secondary);border:1px solid var(--border-color);height:48px;object-fit:contain;padding:4px;width:48px}.goal-name{color:var(--text-primary);font-weight:600}.goal-description{color:var(--text-secondary);font-size:13px;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge-active{background:var(--color-success-bg);color:var(--color-success)}.badge-inactive{background:var(--color-warning-bg);color:#92400e}.badge-deleted{background:var(--color-error-bg);color:var(--color-error)}.action-buttons{flex-wrap:wrap;gap:8px}.no-data{padding:64px 20px!important}@media (max-width:1200px){.goal-table{overflow-x:auto}.goal-table table{min-width:900px}}@media (max-width:768px){.page-header{align-items:flex-start;flex-direction:column;gap:16px}.page-header h1{font-size:22px}.filters{align-items:flex-start;gap:12px}.action-buttons,.filters{flex-direction:column}.action-buttons .btn{width:100%}}.modal-overlay{animation:fadeIn .2s ease}.modal-header{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-secondary) 100%);color:var(--text-white)}.close-btn{align-items:center;background:none;border:none;color:var(--text-white);cursor:pointer;display:flex;font-size:28px;height:36px;justify-content:center;padding:0;transition:transform .2s ease;width:36px}.close-btn:hover{transform:scale(1.1)}.subject-form form{padding:24px}.form-group input[type=text],.form-group textarea{border:1px solid var(--text-primary);color:var(--text-primary);font-family:var(--font-family-base);font-size:14px;padding:12px 14px;transition:all .2s ease;width:100%}.form-group input[type=text]:focus,.form-group textarea:focus{border-color:var(--text-primary);box-shadow:0 0 0 4px var(--bg-secondary);outline:none}.form-group input.error,.form-group textarea.error{border-color:var(--color-error)}.form-hint{color:var(--text-secondary)}.error-message,.form-hint{display:block;font-size:13px;margin-top:6px}.error-message{color:var(--color-error)}.icon-preview{background:var(--bg-secondary);border:1px solid var(--border-color);display:inline-block;margin-top:12px;padding:12px}.icon-preview img{height:60px;object-fit:cover;width:60px}.checkbox-group{margin-bottom:16px}.checkbox-label{align-items:center;cursor:pointer;display:flex;font-weight:500;gap:10px}.checkbox-label input[type=checkbox]{accent-color:var(--color-primary);cursor:pointer;height:20px;width:20px}.checkbox-label span{font-weight:600}.btn-cancel,.checkbox-label span{color:var(--text-primary);font-size:14px}.btn-cancel{background:var(--bg-primary);border:1px solid var(--text-primary);cursor:pointer;font-weight:700;height:40px;padding:0 20px;transition:all .2s ease}.btn-cancel:hover{background:var(--text-primary);color:var(--text-white)}.btn-submit{background:var(--color-primary);border:none;color:var(--text-white);cursor:pointer;font-size:14px;font-weight:700;height:40px;padding:0 20px;transition:all .2s ease}.btn-submit:hover{background:var(--color-primary-hover)}@media (max-width:768px){.modal-content{max-height:95vh;width:95%}.modal-header{padding:16px 20px}.modal-header h2{font-size:18px}.subject-form form{padding:20px}.form-actions{flex-direction:column-reverse}.form-actions button{width:100%}}.subject-management{animation:fadeIn .3s ease;margin:0 auto;max-width:var(--container-max-width)}.subject-header{align-items:center;margin-bottom:28px}.subject-header h1{color:var(--text-primary);font-size:24px;font-weight:700;margin:0}.subject-filters{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:24px}.search-input{border:1px solid var(--text-primary);color:var(--text-primary);flex:1 1;font-size:14px;max-width:400px;padding:12px 14px;transition:all .2s}.search-input:focus{border-color:var(--text-primary);box-shadow:0 0 0 4px var(--bg-secondary);outline:none}.filter-info{color:var(--text-secondary);font-size:14px;white-space:nowrap}.subject-card{transition:all .2s ease}.subject-card.inactive{background:var(--bg-secondary);opacity:.6}.subject-card-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;gap:16px;margin-bottom:16px;padding-bottom:16px}.subject-icon{border:2px solid var(--border-color);height:50px;object-fit:cover;width:50px}.subject-info{flex:1 1}.subject-info h3{color:var(--text-primary);font-size:18px;font-weight:700;margin:0 0 8px}.subject-card-body{margin-bottom:16px}.subject-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;margin-bottom:16px;min-height:42px;overflow:hidden}.subject-stats{background:var(--bg-secondary);display:flex;gap:24px;padding:12px 16px}.stat-item{display:flex;flex-direction:column;gap:4px}.stat-label{color:var(--text-secondary);font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.stat-value{color:var(--color-primary);font-size:24px}.subject-card-actions{border-top:1px solid var(--border-color);display:flex;gap:8px;padding-top:16px}.subject-card-actions button{flex:1 1}.btn-secondary{font-weight:600;height:36px;padding:0 16px}.btn-secondary.btn-sm{font-size:13px;height:32px;padding:0 12px}.btn-danger{border:none;cursor:pointer;font-size:14px;font-weight:600;height:36px;padding:0 16px;transition:all .2s}.btn-danger:disabled{cursor:not-allowed;opacity:.5}.btn-danger.btn-sm{font-size:13px;height:32px;padding:0 12px}.no-data{grid-column:1/-1;padding:64px}.no-data p{font-size:15px;margin-bottom:16px}.loading{height:400px}@media (max-width:768px){.subject-header{align-items:flex-start;flex-direction:column;gap:16px}.subject-header h1{font-size:22px}.subject-filters{align-items:stretch;flex-direction:column}.search-input{max-width:100%}.subject-grid{grid-template-columns:1fr}.subject-card-actions{flex-direction:column}.subject-card-actions button{width:100%}}.topic-form-modal{width:600px}.topic-form{padding:24px}@media (max-width:768px){.topic-form-modal{width:95%}.form-row{grid-template-columns:1fr}}.topic-header{align-items:center;margin-bottom:28px}.topic-header h1{color:var(--text-primary);font-size:24px;font-weight:700;margin:0}.topic-filters{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px;padding:16px 20px}.topic-filters,.topic-table-container{background:var(--bg-primary);border:1px solid var(--border-color)}.topic-table-container{overflow-x:auto}.topic-table{border-collapse:collapse;width:100%}.topic-table thead{background:var(--bg-tertiary)}.topic-table th{color:var(--text-secondary);font-size:11px;font-weight:700;letter-spacing:.05em;padding:14px 16px;text-align:left;text-transform:uppercase}.topic-table td,.topic-table th{border-bottom:1px solid var(--border-color)}.topic-table td{color:var(--text-primary);font-size:14px;padding:12px 16px;vertical-align:middle;white-space:nowrap}.topic-table td:first-child{max-width:280px;white-space:normal}.topic-table tbody tr{transition:background .2s}.topic-table tbody tr:hover{background:var(--bg-hover)}.topic-table tbody tr:last-child td{border-bottom:none}.topic-name{align-items:center;color:var(--text-primary);display:flex;font-weight:600;gap:8px}.topic-icon{font-size:20px}.topic-description{font-size:12px;font-style:italic;margin-top:4px}.actions{align-items:center;flex-wrap:nowrap;gap:6px}.btn-icon{align-items:center;border:1px solid var(--border-color);color:var(--text-primary);display:inline-flex;font-size:13px;font-weight:600;height:30px;padding:5px 12px;transition:all .2s;white-space:nowrap}.btn-icon:hover{border-color:var(--text-primary)}.btn-icon.btn-danger{border-color:var(--color-error);color:var(--color-error)}.btn-icon.btn-danger:hover{background:var(--color-error);color:var(--text-white)}.topic-stats{background:var(--bg-primary);border:1px solid var(--border-color);display:flex;gap:24px;margin-top:20px;padding:16px 20px}.topic-stats p{color:var(--text-secondary);font-size:14px;margin:0}@media (max-width:768px){.topic-header{align-items:flex-start;flex-direction:column;gap:16px}.topic-header h1{font-size:22px}.topic-filters{flex-direction:column}.filter-select{width:100%}.topic-table-container{overflow-x:auto}.topic-table{min-width:700px}.topic-stats{flex-direction:column;gap:12px}}.modal-content{max-width:90%}.question-form-modal{width:700px}.question-form{padding:24px}.form-group input[type=text],.form-group select,.form-group textarea{border:1px solid var(--text-primary);color:var(--text-primary);font-family:var(--font-family-base);font-size:14px;padding:12px 14px;transition:all .2s;width:100%}.form-group input[type=text]:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--text-primary);box-shadow:0 0 0 4px var(--bg-secondary);outline:none}.options-list{display:flex;flex-direction:column;gap:12px;margin-bottom:12px}.option-item{align-items:center;display:flex;gap:12px}.option-item input[type=checkbox]{accent-color:var(--color-primary);cursor:pointer;height:20px;width:20px}.option-input{border:1px solid var(--text-primary);color:var(--text-primary);flex:1 1;font-size:14px;padding:12px 14px;transition:all .2s}.option-input:focus{border-color:var(--text-primary);box-shadow:0 0 0 4px var(--bg-secondary);outline:none}.btn-remove-option{background:var(--color-error);border:none;color:var(--text-white);cursor:pointer;font-size:14px;font-weight:600;height:40px;padding:0 12px;transition:all .2s}.btn-remove-option:hover{background:#a32823}.btn-add-option{background:var(--color-success);border:none;color:var(--text-white);cursor:pointer;font-size:14px;font-weight:700;height:40px;padding:0 16px;transition:all .2s}.btn-add-option:hover{background:#165a4a}.btn-primary:disabled{background:var(--bg-tertiary);color:var(--text-secondary);cursor:not-allowed}@media (max-width:768px){.question-form-modal{width:95%}.form-row{grid-template-columns:1fr}}.bulk-upload-modal{width:600px}.upload-instructions{background:var(--color-info-bg);margin-bottom:24px;padding:16px 20px}.upload-instructions h3{color:var(--text-primary);font-size:16px;font-weight:700;margin:0 0 12px}.upload-instructions ol{margin:0;padding-left:20px}.upload-instructions li{color:var(--text-secondary);font-size:14px;line-height:1.5;margin-bottom:8px}.template-download{margin-bottom:24px}.template-download p{color:var(--text-primary);font-size:14px;font-weight:700;margin:0 0 12px}.template-buttons{display:flex;gap:12px}.btn-template{background:var(--color-secondary);border:none;color:var(--text-white);cursor:pointer;flex:1 1;font-size:14px;font-weight:700;height:44px;padding:0 16px;transition:all .2s}.btn-template:hover{background:#401b9c}.file-upload-section{margin-bottom:20px}.file-upload-label{cursor:pointer;display:block}.file-input{display:none}.file-upload-button{align-items:center;background:var(--bg-primary);border:1px solid var(--text-primary);color:var(--text-primary);display:inline-flex;font-size:14px;font-weight:700;height:44px;justify-content:center;padding:0 24px;transition:all .2s}.file-upload-label:hover .file-upload-button{background:var(--text-primary);color:var(--text-white)}.selected-file{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);display:flex;justify-content:space-between;margin-top:12px;padding:12px 16px}.selected-file span{color:var(--text-primary);font-size:14px;font-weight:500}.btn-clear-file{background:var(--color-error);border:none;color:var(--text-white);cursor:pointer;font-size:13px;font-weight:600;height:32px;padding:0 12px;transition:all .2s}.btn-clear-file:hover{background:#a32823}.upload-result{margin-top:20px;padding:16px 20px}.upload-result.success{background:var(--color-success-bg);border:1px solid var(--color-success-light)}.upload-result.error{background:var(--color-error-bg);border:1px solid var(--color-error-light)}.result-message{font-size:14px;font-weight:700;margin:0 0 12px}.upload-result.success .result-message{color:var(--color-success)}.upload-result.error .result-message{color:var(--color-error)}.result-details{font-size:13px}.result-details p{margin:4px 0}.upload-result.success .result-details{color:var(--color-success)}.error-list{margin-top:12px}.error-list p{color:var(--color-error);font-size:13px;font-weight:600;margin:0 0 8px}.error-list ul{margin:0;padding-left:20px}.error-list li{color:var(--color-error);font-size:12px;margin-bottom:4px}.modal-footer{padding:20px 24px}@media (max-width:768px){.bulk-upload-modal{width:95%}.template-buttons{flex-direction:column}}.question-management{animation:fadeIn .3s ease;margin:0 auto;max-width:var(--container-max-width)}.question-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:28px}.question-header h1{color:var(--text-primary);font-size:24px;font-weight:700;margin:0}.header-actions{gap:12px}.question-filters{align-items:center;background:var(--bg-primary);border:1px solid var(--border-color);display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px;padding:16px 20px}.filter-select{background:var(--bg-primary);border:1px solid var(--text-primary);color:var(--text-primary);font-size:14px;min-width:150px;padding:10px 14px}.filter-select:focus{border-color:var(--text-primary);box-shadow:0 0 0 4px var(--bg-secondary);outline:none}.filter-checkbox{align-items:center;color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px}.filter-checkbox input{accent-color:var(--color-primary);cursor:pointer}.question-table-container{background:var(--bg-primary);border:1px solid var(--border-color);overflow-x:auto}.question-table{border-collapse:collapse;width:100%}.question-table thead{background:var(--bg-tertiary)}.question-table th{color:var(--text-secondary);font-size:11px;font-weight:700;letter-spacing:.05em;padding:14px 16px;text-align:left;text-transform:uppercase}.question-table td,.question-table th{border-bottom:1px solid var(--border-color)}.question-table td{color:var(--text-primary);font-size:14px;padding:16px;vertical-align:middle}.question-table tbody tr{transition:background .2s}.question-table tbody tr:hover{background:var(--bg-hover)}.question-table tbody tr:last-child td{border-bottom:none}.question-text{max-width:400px}.question-content{color:var(--text-primary);font-weight:600;margin-bottom:4px}.question-explanation{color:var(--text-secondary);font-size:12px;font-style:italic}.badge-easy{background:var(--color-success-bg);color:var(--color-success)}.badge-medium{background:var(--color-warning-bg);color:#92400e}.badge-hard{background:var(--color-error-bg);color:var(--color-error)}.badge-default{background:var(--bg-tertiary);color:var(--text-secondary)}.actions{display:flex;gap:8px}.btn-icon{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:18px;padding:6px 10px;transition:background .2s}.btn-icon:hover{background:var(--bg-secondary);color:var(--text-primary)}.btn-icon.btn-danger:hover{background:var(--color-error-bg);color:var(--color-error)}.btn-primary{border:none}.btn-primary,.btn-secondary{cursor:pointer;font-size:14px;font-weight:700;height:40px;padding:0 20px;transition:all .2s}.btn-text{background:none;border:none;color:var(--text-link);cursor:pointer;font-size:14px;font-weight:600;padding:10px 14px;transition:background .2s}.btn-text:hover{background:var(--bg-secondary)}.question-stats{background:var(--bg-primary);border:1px solid var(--border-color);display:flex;gap:24px;margin-top:20px;padding:16px 20px}.question-stats p{color:var(--text-secondary);font-size:14px;margin:0}.no-data{padding:64px!important}@media (max-width:768px){.question-header{align-items:flex-start;flex-direction:column;gap:16px}.question-header h1{font-size:22px}.header-actions{flex-direction:column;width:100%}.question-filters{align-items:flex-start;flex-direction:column}.filter-select{width:100%}.question-table-container{overflow-x:auto}.question-table{min-width:800px}.question-stats{flex-direction:column;gap:12px}}.exam-list-container{animation:fadeIn .3s ease}.page-header h1{margin:0}.filters{background:var(--bg-primary);border:1px solid var(--border-color);gap:20px;margin-bottom:24px;padding:16px 20px}.filters,.filters label{align-items:center;display:flex}.filters label{font-weight:500;gap:10px}.filters label,.filters select{color:var(--text-primary);font-size:14px}.filters select{background:var(--bg-primary);border:1px solid var(--text-primary);cursor:pointer;font-family:var(--font-family-base);padding:10px 14px}.filters select:focus{border-color:var(--text-primary);box-shadow:0 0 0 4px var(--bg-secondary);outline:none}.exam-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(360px,1fr))}.exam-card{background:var(--bg-primary);border:1px solid var(--border-color);padding:24px;transition:all .2s ease}.exam-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-card-hover)}.exam-card.deleted{background:var(--bg-secondary);opacity:.6}.exam-header{align-items:flex-start;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:16px}.exam-header h3{color:var(--text-primary);font-size:17px;font-weight:700;line-height:1.3;margin:0}.badge{flex-shrink:0}.exam-details{margin-bottom:16px}.exam-details p{color:var(--text-secondary);display:flex;font-size:14px;gap:8px;margin:8px 0}.exam-details strong{color:var(--text-primary);font-weight:600;min-width:80px}.exam-description{background:var(--bg-secondary);border-left:3px solid var(--color-primary);color:var(--text-secondary);font-size:13px;line-height:1.5;margin:16px 0;padding:14px}.exam-actions{border-top:1px solid var(--border-color);display:flex;gap:10px;margin-top:16px;padding-top:16px}.deleted-notice{background:var(--color-warning-bg);border-left:3px solid var(--color-warning);color:#92400e;font-size:13px;margin-top:16px;padding:12px 14px}@media (max-width:768px){.page-header{gap:16px}.filters,.page-header{align-items:flex-start;flex-direction:column}.filters{gap:12px}.exam-grid{grid-template-columns:1fr}.exam-actions{flex-direction:column}.exam-actions .btn{width:100%}}.exam-form-container{animation:fadeIn .3s ease;margin:0 auto;max-width:1000px}.form-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:28px}.form-header h1{color:var(--text-primary);font-size:24px;font-weight:700;margin:0}.exam-form{background:var(--bg-primary);border:1px solid var(--border-color);padding:28px}.form-section{border-bottom:1px solid var(--border-color);margin-bottom:28px;padding-bottom:28px}.form-section:last-of-type{border-bottom:none;margin-bottom:0;padding-bottom:0}.form-section h2{color:var(--text-primary);font-size:18px;font-weight:700;margin:0 0 20px}.form-group input[type=date],.form-group input[type=number],.form-group input[type=text],.form-group select,.form-group textarea{border:1px solid var(--text-primary);color:var(--text-primary);font-family:var(--font-family-base);font-size:14px;padding:12px 14px;transition:all .2s;width:100%}.checkbox-group{flex-direction:column;gap:10px}.help-text{color:var(--text-secondary);display:block;font-size:13px;font-style:italic;margin-top:6px}.form-actions{margin-top:28px;padding-top:24px}.btn{height:44px;padding:0 24px}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn-secondary:hover:not(:disabled){background:var(--text-primary);color:var(--text-white)}@media (max-width:768px){.exam-form{padding:20px}.form-row{grid-template-columns:1fr}.form-header{align-items:flex-start;flex-direction:column;gap:16px}.form-header h1{font-size:22px}.form-actions{flex-direction:column}.form-actions .btn{width:100%}}.stage-management-container{animation:fadeIn .3s ease;margin:0 auto;max-width:var(--container-max-width)}.page-header h1{margin:0 0 8px}.exam-info{color:var(--text-secondary);font-size:14px;margin:0}.stage-form-card{background:var(--bg-primary);border:1px solid var(--border-color);margin-bottom:28px;padding:24px}.stage-form-card h2{color:var(--text-primary);font-size:18px;font-weight:700;margin:0 0 20px}.stages-list{margin-top:20px}.stage-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.stage-card{background:var(--bg-primary);border:1px solid var(--border-color);padding:24px;transition:all .2s}.stage-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-card-hover)}.stage-header{align-items:flex-start;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:12px;padding-bottom:12px}.stage-header h3{color:var(--text-primary);font-size:18px;font-weight:700;margin:0}.stage-type{align-items:center;background:var(--color-info-bg);color:var(--color-secondary);display:inline-flex;font-size:11px;font-weight:700;letter-spacing:.02em;margin-bottom:10px;padding:4px 10px;text-transform:uppercase}.stage-description{color:var(--text-secondary);font-size:14px;line-height:1.5;margin:10px 0 16px}.stage-details{margin-bottom:16px}.stage-details p{color:var(--text-secondary);font-size:14px;margin:8px 0}.stage-details strong{color:var(--text-primary);display:inline-block;font-weight:600;min-width:100px}.stage-actions{border-top:1px solid var(--border-color);display:flex;flex-wrap:wrap;gap:8px;padding-top:16px}@media (max-width:768px){.page-header{flex-direction:column;gap:16px}.page-header h1{font-size:22px}.header-actions{flex-direction:column;width:100%}.header-actions .btn{width:100%}.form-row,.stage-grid{grid-template-columns:1fr}.stage-actions{flex-direction:column}.stage-actions .btn{width:100%}}.subject-management-container{animation:fadeIn .3s ease;margin:0 auto;max-width:var(--container-max-width)}.page-header h1{color:var(--text-primary);font-size:24px;font-weight:700;margin:0 0 10px}.breadcrumb{align-items:center;display:flex;gap:8px}.breadcrumb-item{color:var(--text-secondary)}.breadcrumb-separator{color:var(--text-muted)}.header-actions{display:flex;gap:10px}.subject-form-card{background:var(--bg-primary);border:1px solid var(--border-color);margin-bottom:28px;padding:24px}.subject-form-card h2{color:var(--text-primary);font-size:18px;font-weight:700;margin:0 0 20px}.form-row{grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:20px}.form-group input[type=number],.form-group input[type=text],.form-group select,.form-group textarea{border:1px solid var(--text-primary);color:var(--text-primary);font-family:var(--font-family-base);font-size:14px;padding:12px 14px;transition:all .2s;width:100%}.form-group textarea{min-height:80px}.required{color:var(--color-error);margin-left:4px}.form-actions,.subjects-list{margin-top:20px}.subject-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.subject-card{background:var(--bg-primary);border:1px solid var(--border-color);padding:24px;transition:all .2s}.subject-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-card-hover)}.subject-header{align-items:flex-start;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.subject-header h3{color:var(--text-primary);font-size:18px;font-weight:700;margin:0 0 6px}.subject-code{align-items:center;background:var(--bg-tertiary);color:var(--text-secondary);display:inline-flex;font-size:11px;font-weight:700;padding:2px 8px}.subject-description{color:var(--text-secondary);font-size:14px;line-height:1.5;margin:0 0 16px}.subject-details{grid-gap:12px;background:var(--bg-secondary);display:grid;gap:12px;grid-template-columns:repeat(2,1fr);margin-bottom:16px;padding:16px}.detail-item{color:var(--text-secondary);font-size:14px}.detail-item strong{color:var(--text-primary);display:block;font-size:11px;font-weight:700;letter-spacing:.05em;margin-bottom:4px;text-transform:uppercase}.subject-actions{border-top:1px solid var(--border-color);display:flex;flex-wrap:wrap;gap:8px;padding-top:16px}.badge{padding:4px 10px;white-space:nowrap}.badge.active{background:var(--color-success-bg);color:var(--color-success)}.badge.inactive{background:var(--color-error-bg);color:var(--color-error)}.no-data{background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-secondary);font-size:15px;padding:64px 20px;text-align:center}@media (max-width:768px){.page-header{flex-direction:column;gap:16px}.page-header h1{font-size:22px}.header-actions{flex-direction:column;width:100%}.header-actions .btn{width:100%}.form-row,.subject-details,.subject-grid{grid-template-columns:1fr}.subject-actions{flex-direction:column}.subject-actions .btn{width:100%}}.topic-management{animation:fadeIn .3s ease;margin:0 auto;max-width:var(--container-max-width)}.checkbox-group{margin-top:30px}.topics-list{margin-top:20px}.topics-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.topic-card{background:var(--bg-primary);border:1px solid var(--border-color);padding:24px;transition:all .2s}.topic-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-card-hover)}.topic-header{align-items:flex-start;display:flex;gap:10px;justify-content:space-between;margin-bottom:12px}.topic-header h3{color:var(--text-primary);flex:1 1;font-size:18px;font-weight:700;margin:0}.status-badge{white-space:nowrap}.topic-title{margin:0 0 8px}.topic-description,.topic-title{color:var(--text-secondary);font-size:14px}.topic-description{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;line-height:1.5;margin:0 0 16px;overflow:hidden}.topic-meta{border-bottom:1px solid var(--border-color);border-top:1px solid var(--border-color);display:flex;gap:16px;margin-bottom:16px;padding:12px 0}.meta-item{color:var(--text-secondary);font-size:13px}.topic-actions{display:flex;flex-wrap:wrap;gap:8px}@media (max-width:768px){.page-header{flex-direction:column}.header-info h1{font-size:22px}.form-row,.topics-grid{grid-template-columns:1fr}.topic-actions{flex-direction:column}.topic-actions .btn{width:100%}}.resource-management{animation:fadeIn .3s ease;margin:0 auto;max-width:var(--container-max-width)}.page-header{align-items:flex-start;gap:20px}.header-content{flex:1 1}.back-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:14px;font-weight:600;margin-bottom:10px;padding:8px 0;transition:color .2s}.back-btn:hover,.header-info h1{color:var(--text-primary)}.header-info h1{font-size:24px;font-weight:700;margin:0 0 8px}.breadcrumb{color:var(--text-secondary);font-size:14px;margin:0}.form-modal{align-items:center;background:#0009;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1100}.form-container{animation:slideUp .3s ease;background:var(--bg-primary);max-height:90vh;max-width:600px;overflow-y:auto;padding:28px;width:100%}.form-container h2{color:var(--text-primary);font-size:20px;font-weight:700;margin:0 0 20px}.form-group input,.form-group select,.form-group textarea{border:1px solid var(--text-primary);color:var(--text-primary);font-family:var(--font-family-base);font-size:14px;padding:12px 14px;transition:all .2s;width:100%}.form-checkboxes{gap:20px;margin:20px 0}.checkbox-group label{gap:10px}.checkbox-group input[type=checkbox]{width:auto}.form-actions{margin-top:24px}.resources-list{margin-top:20px}.resources-table{background:var(--bg-primary);border:1px solid var(--border-color);overflow:hidden}.resources-table table{border-collapse:collapse;width:100%}.resources-table td{padding:16px}.resource-type.pdf{background:var(--color-warning-bg);color:#92400e}.resource-type.quiz{background:var(--color-primary-bg);color:var(--color-primary)}.resource-type.practice{background:var(--color-error-bg);color:var(--color-error)}.resource-name strong{font-size:14px}.resource-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;font-size:13px;line-height:1.4;overflow:hidden}.empty-state{background:var(--bg-primary);border:2px dashed var(--border-color)}.empty-state p{color:var(--text-secondary)}.btn{padding:0 20px}.btn-link{padding:0 8px}@media (max-width:768px){.page-header{flex-direction:column}.header-info h1{font-size:22px}.form-row{grid-template-columns:1fr}.form-checkboxes{flex-direction:column;gap:10px}.resources-table{overflow-x:auto}.resources-table table{min-width:800px}}.modal-content{animation:slideUp .3s ease;background:var(--bg-primary);max-height:90vh;max-width:600px;overflow-y:auto;width:90%}.modal-header h2{color:var(--text-primary);font-size:20px;font-weight:700;margin:0}.btn-close{align-items:center;background:none;border:none;color:var(--text-secondary);cursor:pointer;display:flex;font-size:24px;height:36px;justify-content:center;padding:0;transition:all .2s;width:36px}.btn-close:hover{background:var(--bg-secondary);color:var(--text-primary)}.resource-form{padding:24px}.form-group input[type=number],.form-group input[type=text],.form-group input[type=url],.form-group select,.form-group textarea{border:1px solid var(--text-primary);box-sizing:border-box;color:var(--text-primary);font-family:var(--font-family-base);font-size:14px;padding:12px 14px;transition:all .2s;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--text-primary);box-shadow:0 0 0 4px var(--bg-secondary);outline:none}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.form-checkboxes{background:var(--bg-secondary);display:flex;gap:30px;margin-bottom:20px;padding:16px}.checkbox-group,.checkbox-group label{align-items:center;display:flex}.checkbox-group label{cursor:pointer;font-weight:500;margin:0}.checkbox-group input[type=checkbox]{accent-color:var(--color-primary);cursor:pointer;height:18px;margin-right:10px;width:18px}.checkbox-group span{color:var(--text-primary);font-size:14px}.form-actions{border-top:1px solid var(--border-color);display:flex;gap:12px;justify-content:flex-end;padding-top:20px}.form-actions .btn{align-items:center;border:none;cursor:pointer;display:inline-flex;font-size:14px;font-weight:700;height:40px;justify-content:center;padding:0 20px;transition:all .2s}.form-actions .btn-primary{background:var(--color-primary);color:var(--text-white)}.form-actions .btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.form-actions .btn-secondary{background:var(--bg-primary);border:1px solid var(--text-primary);color:var(--text-primary)}.form-actions .btn-secondary:hover:not(:disabled){background:var(--text-primary);color:var(--text-white)}.form-actions .btn:disabled{cursor:not-allowed;opacity:.5}@media (max-width:768px){.form-row{grid-template-columns:1fr}.form-checkboxes{flex-direction:column;gap:12px}}.resource-management-page{animation:fadeIn .3s ease;margin:0 auto;max-width:var(--container-max-width)}.page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:28px}.header-content h1{color:var(--text-primary);font-size:24px;font-weight:700;margin:0 0 6px}.subtitle{color:var(--text-secondary);font-size:14px;margin:0}.filters-section{background:var(--bg-primary);border:1px solid var(--border-color);display:flex;flex-wrap:wrap;gap:16px;margin-bottom:24px;padding:16px 20px}.filter-group{align-items:center;display:flex;gap:8px}.filter-group label{color:var(--text-primary);font-size:14px;font-weight:700}.filter-group select{background:var(--bg-primary);border:1px solid var(--text-primary);color:var(--text-primary);font-size:14px;min-width:180px;padding:10px 14px}.filter-group select:focus{border-color:var(--text-primary);box-shadow:0 0 0 4px var(--bg-secondary);outline:none}.resources-stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:24px}.stat-card{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-secondary) 100%);color:var(--text-white);padding:24px;text-align:center;transition:all .2s ease}.stat-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.stat-card h3{font-size:12px;font-weight:700;letter-spacing:.05em;margin:0 0 10px;opacity:.9;text-transform:uppercase}.stat-value{color:var(--text-white);font-size:32px;font-weight:700;margin:0}.resources-table-container{background:var(--bg-primary);border:1px solid var(--border-color);overflow-x:auto}.resources-table{border-collapse:collapse;min-width:900px;width:100%}.resources-table thead{background:var(--bg-tertiary)}.resources-table th{color:var(--text-secondary);font-size:11px;font-weight:700;letter-spacing:.05em;padding:14px 16px;text-align:left;text-transform:uppercase}.resources-table td,.resources-table th{border-bottom:1px solid var(--border-color)}.resources-table td{color:var(--text-primary);font-size:14px;padding:12px 16px;vertical-align:middle;white-space:nowrap}.resources-table td:nth-child(2){max-width:220px;white-space:normal}.resources-table td:last-child{white-space:nowrap}.resources-table tbody tr{transition:background .2s}.resources-table tbody tr:hover{background:var(--bg-hover)}.resources-table tbody tr:last-child td{border-bottom:none}.resource-type{align-items:center;display:inline-flex;font-size:11px;font-weight:700;letter-spacing:.02em;padding:4px 10px;text-transform:uppercase;white-space:nowrap}.resource-type.video{background:var(--color-info-bg);color:var(--color-secondary)}.resource-type.pdf{background:var(--color-error-bg);color:var(--color-error)}.resource-type.quiz{background:var(--color-warning-bg);color:#92400e}.resource-type.text{background:var(--color-success-bg);color:var(--color-success)}.resource-type.practice{background:var(--color-primary-bg);color:var(--color-primary)}.resource-name strong{color:var(--text-primary);display:block;font-weight:600;margin-bottom:4px}.resource-description{color:var(--text-secondary);font-size:12px;margin:0}.access-badge{align-items:center;display:inline-flex;font-size:11px;font-weight:700;letter-spacing:.02em;padding:4px 10px;text-transform:uppercase}.access-badge.free{background:var(--color-success-bg);color:var(--color-success)}.access-badge.paid{background:var(--color-warning-bg);color:#92400e}.status-badge{align-items:center;display:inline-flex;font-size:11px;font-weight:700;letter-spacing:.02em;padding:4px 10px;text-transform:uppercase}.status-badge.active{background:var(--color-success-bg);color:var(--color-success)}.status-badge.inactive{background:var(--color-error-bg);color:var(--color-error)}.action-buttons{align-items:center;display:flex;flex-wrap:nowrap;gap:6px}.empty-state{padding:64px 20px}.empty-state p{font-size:15px;margin-bottom:20px}.loading{font-size:15px;padding:64px}.btn{transition:all .2s}.btn-primary:hover{background:var(--color-primary-hover)}.btn-secondary{background:var(--bg-primary)}.btn-secondary:hover{background:var(--text-primary);color:var(--text-white)}.btn-danger:hover{background:#a32823}.btn-info:hover{background:#401b9c}.btn-link{color:var(--text-link);height:32px;padding:0 12px}.btn-link:hover{background:var(--bg-secondary)}@media (max-width:768px){.page-header{align-items:flex-start;gap:16px}.filters-section,.page-header{flex-direction:column}.filter-group{width:100%}.filter-group select{flex:1 1}.resources-stats{grid-template-columns:1fr}}.footer-management{animation:fadeIn .3s ease;margin:0 auto;max-width:var(--container-max-width)}.footer-sections-list{display:flex;flex-direction:column;gap:12px}.footer-section-card{background:var(--bg-primary);border:1px solid var(--border-color);overflow:hidden}.section-header{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:16px 20px;transition:background .2s}.section-header:hover{background:var(--bg-hover)}.section-info{align-items:center;display:flex;gap:12px}.section-info h3{color:var(--text-primary);font-size:15px;font-weight:700;margin:0}.expand-icon{color:var(--text-secondary);display:inline-block;font-size:10px;transition:transform .2s}.expand-icon.expanded{transform:rotate(90deg)}.link-count{background:var(--bg-secondary);border-radius:10px;font-size:12px;padding:2px 8px}.link-count,.order-badge{color:var(--text-secondary)}.order-badge{font-size:11px}.section-actions{display:flex;gap:8px}.section-links{background:var(--bg-secondary);border-top:1px solid var(--border-color);padding:0}.section-links table{border-collapse:collapse;width:100%}.section-links thead{background:var(--bg-tertiary)}.section-links th{color:var(--text-secondary);font-size:11px;font-weight:700;letter-spacing:.05em;padding:10px 16px;text-align:left;text-transform:uppercase}.section-links td,.section-links th{border-bottom:1px solid var(--border-color)}.section-links td{color:var(--text-primary);font-size:13px;padding:12px 16px;vertical-align:middle}.section-links tbody tr{transition:background .2s}.section-links tbody tr:hover{background:var(--bg-primary)}.section-links tbody tr:last-child td{border-bottom:none}.link-label{font-weight:600}.link-url{color:var(--text-secondary);max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.no-links{font-size:13px;padding:32px 20px}.no-data-card,.no-links{color:var(--text-secondary);text-align:center}.no-data-card{background:var(--bg-primary);border:1px solid var(--border-color);font-size:15px;padding:64px 20px}.footer-form{padding:24px}@media (max-width:768px){.section-header{align-items:flex-start;flex-direction:column;gap:12px}.section-info{flex-wrap:wrap}.section-actions{width:100%}.section-actions .btn{flex:1 1}.section-links{overflow-x:auto}.section-links table{min-width:500px}}:root{--color-primary:#a435f0;--color-primary-dark:#8710d8;--color-primary-light:#e8d4f8;--color-primary-hover:#8710d8;--color-primary-bg:#f5ebff;--color-secondary:#5624d0;--color-accent:#f69c08;--color-success:#1e6f5c;--color-success-light:#aed9cc;--color-success-bg:#ecf7f4;--color-error:#c4302b;--color-error-light:#f8d4d3;--color-error-bg:#fef2f2;--color-warning:#f69c08;--color-warning-light:#fef3cd;--color-warning-bg:#fffbeb;--color-info:#5624d0;--color-info-light:#e0d4f7;--color-info-bg:#f5f3ff;--bg-primary:#fff;--bg-secondary:#f7f9fa;--bg-tertiary:#f0f2f5;--bg-dark:#1c1d1f;--bg-darker:#000;--bg-card:#fff;--bg-hover:#f7f9fa;--text-primary:#1c1d1f;--text-secondary:#6a6f73;--text-tertiary:#9da3a7;--text-muted:#b4b4b4;--text-white:#fff;--text-link:#5624d0;--border-color:#e4e8eb;--border-light:#f0f2f5;--border-dark:#3e4143;--border-focus:#a435f0;--color-gray-50:#f7f9fa;--color-gray-100:#f0f2f5;--color-gray-200:#e4e8eb;--color-gray-300:#d1d7dc;--color-gray-400:#9da3a7;--color-gray-500:#6a6f73;--color-gray-600:#3e4143;--color-gray-700:#2d2f31;--color-gray-800:#1c1d1f;--color-gray-900:#000;--shadow-xs:0 1px 2px #0000000a;--shadow-sm:0 2px 4px #0000000f,0 1px 2px #0000000a;--shadow-md:0 4px 6px #00000012,0 2px 4px #0000000d;--shadow-lg:0 10px 15px #00000014,0 4px 6px #0000000a;--shadow-xl:0 20px 25px #0000001a,0 8px 10px #0000000a;--shadow-card:0 2px 8px #00000014;--shadow-card-hover:0 4px 12px #0000001f;--radius-none:0;--radius-xs:2px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:9999px;--font-family-base:"SF Pro Display",-apple-system,BlinkMacSystemFont,"Roboto","Segoe UI","Helvetica Neue",sans-serif;--font-family-heading:"SF Pro Display",-apple-system,BlinkMacSystemFont,"Roboto","Segoe UI","Helvetica Neue",sans-serif;--font-family-mono:"SF Mono","Menlo","Monaco","Courier New",monospace;--font-size-xs:11px;--font-size-sm:13px;--font-size-base:14px;--font-size-md:15px;--font-size-lg:16px;--font-size-xl:18px;--font-size-2xl:20px;--font-size-3xl:24px;--font-size-4xl:30px;--font-size-5xl:36px;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--line-height-tight:1.2;--line-height-snug:1.375;--line-height-normal:1.5;--line-height-relaxed:1.625;--transition-fast:0.15s ease;--transition-normal:0.2s ease;--transition-slow:0.3s ease;--spacing-1:4px;--spacing-2:8px;--spacing-3:12px;--spacing-4:16px;--spacing-5:20px;--spacing-6:24px;--spacing-7:28px;--spacing-8:32px;--spacing-10:40px;--spacing-12:48px;--spacing-16:64px;--container-max-width:1400px;--sidebar-width:260px;--sidebar-collapsed-width:80px;--header-height:64px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{background-color:#f7f9fa;background-color:var(--bg-secondary);color:#1c1d1f;color:var(--text-primary);font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,Roboto,Segoe UI,Helvetica Neue,sans-serif;font-family:var(--font-family-base);font-size:14px;font-size:var(--font-size-base);line-height:1.5;line-height:var(--line-height-normal)}a{color:#5624d0;color:var(--text-link);text-decoration:none}a:hover{color:#a435f0;color:var(--color-primary)}h1,h2,h3,h4,h5,h6{color:#1c1d1f;color:var(--text-primary);font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,Roboto,Segoe UI,Helvetica Neue,sans-serif;font-family:var(--font-family-heading);font-weight:700;font-weight:var(--font-weight-bold);line-height:1.2;line-height:var(--line-height-tight)}h1{font-size:30px;font-size:var(--font-size-4xl)}h2{font-size:20px;font-size:var(--font-size-2xl)}h3{font-size:18px;font-size:var(--font-size-xl)}h4{font-size:16px;font-size:var(--font-size-lg)}h5{font-size:14px;font-size:var(--font-size-base)}h6{font-size:13px;font-size:var(--font-size-sm)}.btn{align-items:center;border:none;border-radius:0;border-radius:var(--radius-none);cursor:pointer;display:inline-flex;font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,Roboto,Segoe UI,Helvetica Neue,sans-serif;font-family:var(--font-family-base);font-size:14px;font-size:var(--font-size-base);font-weight:700;font-weight:var(--font-weight-bold);gap:8px;height:40px;justify-content:center;padding:0 16px;text-decoration:none;transition:all .15s ease;transition:all var(--transition-fast);white-space:nowrap}.btn:disabled{cursor:not-allowed;opacity:.5}.btn svg{height:16px;width:16px}.btn-primary{background:#a435f0;background:var(--color-primary);color:#fff;color:var(--text-white)}.btn-primary:hover:not(:disabled){background:#8710d8;background:var(--color-primary-dark)}.btn-secondary{background:#0000;border:1px solid #1c1d1f;border:1px solid var(--text-primary);color:#1c1d1f;color:var(--text-primary)}.btn-secondary:hover:not(:disabled){background:#f7f9fa;background:var(--bg-secondary)}.btn-success{background:#1e6f5c;background:var(--color-success);color:#fff;color:var(--text-white)}.btn-success:hover:not(:disabled){background:#165c4a}.btn-danger{background:#c4302b;background:var(--color-error);color:#fff;color:var(--text-white)}.btn-danger:hover:not(:disabled){background:#a32823}.btn-warning{background:#f69c08;background:var(--color-warning);color:#1c1d1f;color:var(--text-primary)}.btn-warning:hover:not(:disabled){background:#e08c00}.btn-info{background:#5624d0;background:var(--color-secondary);color:#fff;color:var(--text-white)}.btn-info:hover:not(:disabled){background:#401b9c}.btn-ghost{background:#0000;color:#6a6f73;color:var(--text-secondary)}.btn-ghost:hover:not(:disabled){background:#f7f9fa;background:var(--bg-secondary);color:#1c1d1f;color:var(--text-primary)}.btn-link{background:#0000;color:#a435f0;color:var(--color-primary);font-weight:600;font-weight:var(--font-weight-semibold);height:auto;padding:0}.btn-link:hover:not(:disabled){color:#8710d8;color:var(--color-primary-dark);text-decoration:underline}.btn-sm{font-size:13px;font-size:var(--font-size-sm);height:32px;padding:0 12px}.btn-lg{height:48px;padding:0 24px}.btn-lg,.btn-xl{font-size:16px;font-size:var(--font-size-lg)}.btn-xl{height:56px;padding:0 32px}.btn-block{width:100%}.btn-icon{height:40px;padding:0;width:40px}.btn-icon.btn-sm{height:32px;width:32px}.btn-icon.btn-lg{height:48px;width:48px}.card{background:#fff;background:var(--bg-card);border:1px solid #e4e8eb;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--radius-md);transition:box-shadow .2s ease;transition:box-shadow var(--transition-normal)}.card:hover{box-shadow:0 4px 12px #0000001f;box-shadow:var(--shadow-card-hover)}.card-header{align-items:center;border-bottom:1px solid #e4e8eb;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:16px 20px}.card-title{color:#1c1d1f;color:var(--text-primary);font-size:16px;font-size:var(--font-size-lg);font-weight:700;font-weight:var(--font-weight-bold);margin:0}.card-body{padding:20px}.card-footer{background:#f7f9fa;background:var(--bg-secondary);border-top:1px solid #e4e8eb;border-top:1px solid var(--border-color);padding:16px 20px}.form-group{margin-bottom:20px}.form-group label,.form-label{color:#1c1d1f;color:var(--text-primary);display:block;font-size:14px;font-size:var(--font-size-base);font-weight:700;font-weight:var(--font-weight-bold);margin-bottom:8px}.form-control,.form-group input,.form-group select,.form-group textarea{background:#fff;background:var(--bg-primary);border:1px solid #1c1d1f;border:1px solid var(--text-primary);border-radius:0;border-radius:var(--radius-none);color:#1c1d1f;color:var(--text-primary);font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,Roboto,Segoe UI,Helvetica Neue,sans-serif;font-family:var(--font-family-base);font-size:14px;font-size:var(--font-size-base);padding:12px 16px;transition:border-color .15s ease,box-shadow .15s ease;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);width:100%}.form-control:hover,.form-group input:hover,.form-group select:hover,.form-group textarea:hover{border-color:#6a6f73;border-color:var(--text-secondary)}.form-control:focus,.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#1c1d1f;border-color:var(--text-primary);box-shadow:0 0 0 4px #f7f9fa;box-shadow:0 0 0 4px var(--bg-secondary);outline:none}.form-control::placeholder,.form-group input::placeholder,.form-group textarea::placeholder{color:#b4b4b4;color:var(--text-muted)}.form-group textarea{min-height:100px;resize:vertical}.form-helper{color:#6a6f73;color:var(--text-secondary)}.form-error,.form-helper{font-size:13px;font-size:var(--font-size-sm);margin-top:6px}.form-error{color:#c4302b;color:var(--color-error)}.form-checkbox,.form-radio{align-items:center;cursor:pointer;display:flex;gap:8px}.form-checkbox input,.form-radio input{accent-color:#a435f0;accent-color:var(--color-primary);cursor:pointer;height:18px;width:18px}.table{background:#fff;background:var(--bg-primary);border-collapse:collapse;width:100%}.table thead{background:#f0f2f5;background:var(--bg-tertiary)}.table th{color:#6a6f73;color:var(--text-secondary);font-size:11px;font-size:var(--font-size-xs);font-weight:700;font-weight:var(--font-weight-bold);letter-spacing:.05em;padding:12px 16px;text-align:left;text-transform:uppercase}.table td,.table th{border-bottom:1px solid #e4e8eb;border-bottom:1px solid var(--border-color)}.table td{color:#1c1d1f;color:var(--text-primary);font-size:14px;font-size:var(--font-size-base);padding:16px;vertical-align:middle}.table tbody tr{transition:background .15s ease;transition:background var(--transition-fast)}.table tbody tr:hover{background:#f7f9fa;background:var(--bg-hover)}.table tbody tr:last-child td{border-bottom:none}.badge{align-items:center;border-radius:2px;border-radius:var(--radius-xs);display:inline-flex;font-size:11px;font-size:var(--font-size-xs);font-weight:700;font-weight:var(--font-weight-bold);letter-spacing:.02em;padding:4px 8px;text-transform:uppercase}.badge-primary{background:#f5ebff;background:var(--color-primary-bg);color:#a435f0;color:var(--color-primary)}.badge-active,.badge-success{background:#ecf7f4;background:var(--color-success-bg);color:#1e6f5c;color:var(--color-success)}.badge-danger,.badge-deleted{background:#fef2f2;background:var(--color-error-bg);color:#c4302b;color:var(--color-error)}.badge-inactive,.badge-warning{background:#fffbeb;background:var(--color-warning-bg);color:#92400e}.badge-info{background:#f5f3ff;background:var(--color-info-bg);color:#5624d0;color:var(--color-secondary)}.badge-neutral{background:#f0f2f5;background:var(--color-gray-100);color:#6a6f73;color:var(--text-secondary)}.alert{align-items:flex-start;border-radius:8px;border-radius:var(--radius-md);display:flex;font-size:14px;font-size:var(--font-size-base);gap:12px;padding:16px}.alert-success{background:#ecf7f4;background:var(--color-success-bg);border:1px solid #aed9cc;border:1px solid var(--color-success-light);color:#1e6f5c;color:var(--color-success)}.alert-error{background:#fef2f2;background:var(--color-error-bg);border:1px solid #f8d4d3;border:1px solid var(--color-error-light);color:#c4302b;color:var(--color-error)}.alert-warning{background:#fffbeb;background:var(--color-warning-bg);border:1px solid #fef3cd;border:1px solid var(--color-warning-light);color:#92400e}.alert-info{background:#f5f3ff;background:var(--color-info-bg);border:1px solid #e0d4f7;border:1px solid var(--color-info-light);color:#5624d0;color:var(--color-secondary)}.loading{align-items:center;color:#6a6f73;color:var(--text-secondary);display:flex;font-size:14px;font-size:var(--font-size-base);justify-content:center;padding:48px}.loading-spinner{animation:spin .8s linear infinite;border:3px solid #e4e8eb;border-top-color:#a435f0;border:3px solid var(--border-color);border-radius:9999px;border-radius:var(--radius-full);border-top-color:var(--color-primary);height:32px;width:32px}@keyframes spin{to{transform:rotate(1turn)}}.empty-state{color:#6a6f73;color:var(--text-secondary);padding:64px 24px;text-align:center}.empty-state-icon{color:#d1d7dc;color:var(--color-gray-300);height:80px;margin:0 auto 20px;width:80px}.empty-state-title{color:#1c1d1f;color:var(--text-primary);font-size:18px;font-size:var(--font-size-xl);font-weight:700;font-weight:var(--font-weight-bold);margin-bottom:8px}.empty-state-description{color:#6a6f73;color:var(--text-secondary);font-size:14px;font-size:var(--font-size-base);margin:0 auto;max-width:400px}.modal-overlay{align-items:center;background:#0009;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1100}.modal{background:#fff;background:var(--bg-primary);border-radius:8px;border-radius:var(--radius-md);box-shadow:0 20px 25px #0000001a,0 8px 10px #0000000a;box-shadow:var(--shadow-xl);max-height:90vh;max-width:600px;overflow-y:auto;width:100%}.modal-header{align-items:center;border-bottom:1px solid #e4e8eb;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:20px 24px}.modal-title{color:#1c1d1f;color:var(--text-primary);font-size:18px;font-size:var(--font-size-xl);font-weight:700;font-weight:var(--font-weight-bold);margin:0}.modal-close{align-items:center;background:#0000;border:none;border-radius:9999px;border-radius:var(--radius-full);color:#6a6f73;color:var(--text-secondary);cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .15s ease;transition:all var(--transition-fast);width:36px}.modal-close:hover{background:#f7f9fa;background:var(--bg-secondary);color:#1c1d1f;color:var(--text-primary)}.modal-body{padding:24px}.modal-footer{background:#f7f9fa;background:var(--bg-secondary);border-top:1px solid #e4e8eb;border-top:1px solid var(--border-color);display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.dropdown{display:inline-block;position:relative}.dropdown-menu{background:#fff;background:var(--bg-primary);border:1px solid #e4e8eb;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--radius-md);box-shadow:0 10px 15px #00000014,0 4px 6px #0000000a;box-shadow:var(--shadow-lg);min-width:180px;padding:8px 0;position:absolute;right:0;top:100%;z-index:1000}.dropdown-item{align-items:center;color:#1c1d1f;color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;font-size:var(--font-size-base);gap:12px;padding:10px 16px;transition:background .15s ease;transition:background var(--transition-fast)}.dropdown-item:hover{background:#f7f9fa;background:var(--bg-secondary)}.dropdown-divider{background:#e4e8eb;background:var(--border-color);height:1px;margin:8px 0}.tabs{border-bottom:1px solid #e4e8eb;border-bottom:1px solid var(--border-color);display:flex;gap:0}.tab{background:#0000;border:none;border-bottom:2px solid #0000;color:#6a6f73;color:var(--text-secondary);cursor:pointer;font-size:14px;font-size:var(--font-size-base);font-weight:600;font-weight:var(--font-weight-semibold);margin-bottom:-1px;padding:12px 20px;transition:all .15s ease;transition:all var(--transition-fast)}.tab:hover{color:#1c1d1f;color:var(--text-primary)}.tab.active{border-bottom-color:#a435f0;border-bottom-color:var(--color-primary);color:#a435f0;color:var(--color-primary)}.pagination{gap:4px;padding:20px 0}.pagination,.pagination-btn{align-items:center;display:flex;justify-content:center}.pagination-btn{background:#fff;background:var(--bg-primary);border:1px solid #e4e8eb;border:1px solid var(--border-color);border-radius:4px;border-radius:var(--radius-sm);color:#1c1d1f;color:var(--text-primary);cursor:pointer;font-size:14px;font-size:var(--font-size-base);font-weight:600;font-weight:var(--font-weight-semibold);height:36px;min-width:36px;padding:0 12px;transition:all .15s ease;transition:all var(--transition-fast)}.pagination-btn:hover:not(:disabled){background:#f7f9fa;background:var(--bg-secondary);border-color:#6a6f73;border-color:var(--text-secondary)}.pagination-btn.active{background:#a435f0;background:var(--color-primary);border-color:#a435f0;border-color:var(--color-primary);color:#fff;color:var(--text-white)}.pagination-btn:disabled{cursor:not-allowed;opacity:.5}.text-primary{color:#1c1d1f;color:var(--text-primary)}.text-secondary{color:#6a6f73;color:var(--text-secondary)}.text-muted{color:#b4b4b4;color:var(--text-muted)}.text-success{color:#1e6f5c;color:var(--color-success)}.text-danger{color:#c4302b;color:var(--color-error)}.text-warning{color:#f69c08;color:var(--color-warning)}.text-info{color:#5624d0;color:var(--color-secondary)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-normal{font-weight:400;font-weight:var(--font-weight-normal)}.font-medium{font-weight:500;font-weight:var(--font-weight-medium)}.font-semibold{font-weight:600;font-weight:var(--font-weight-semibold)}.font-bold{font-weight:700;font-weight:var(--font-weight-bold)}.text-xs{font-size:11px;font-size:var(--font-size-xs)}.text-sm{font-size:13px;font-size:var(--font-size-sm)}.text-base{font-size:14px;font-size:var(--font-size-base)}.text-lg{font-size:16px;font-size:var(--font-size-lg)}.text-xl{font-size:18px;font-size:var(--font-size-xl)}.text-2xl{font-size:20px;font-size:var(--font-size-2xl)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-0{margin:0}.m-1{margin:4px}.m-2{margin:8px}.m-3{margin:12px}.m-4{margin:16px}.mt-0{margin-top:0}.mt-1{margin-top:4px}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.mt-5{margin-top:20px}.mt-6{margin-top:24px}.mt-8{margin-top:32px}.mb-0{margin-bottom:0}.mb-1{margin-bottom:4px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.mb-4{margin-bottom:16px}.mb-5{margin-bottom:20px}.mb-6{margin-bottom:24px}.mb-8{margin-bottom:32px}.ml-0{margin-left:0}.ml-1{margin-left:4px}.ml-2{margin-left:8px}.ml-3{margin-left:12px}.ml-4{margin-left:16px}.mr-0{margin-right:0}.mr-1{margin-right:4px}.mr-2{margin-right:8px}.mr-3{margin-right:12px}.mr-4{margin-right:16px}.p-0{padding:0}.p-1{padding:4px}.p-2{padding:8px}.p-3{padding:12px}.p-4{padding:16px}.p-5{padding:20px}.p-6{padding:24px}.p-8{padding:32px}.d-flex{display:flex}.d-inline-flex{display:inline-flex}.flex-row{flex-direction:row}.flex-column{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-1{flex:1 1}.align-start{align-items:flex-start}.align-center{align-items:center}.align-end{align-items:flex-end}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-5{gap:20px}.gap-6{gap:24px}.hidden{display:none}.visible{visibility:visible}.invisible{visibility:hidden}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#f7f9fa;background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:#d1d7dc;background:var(--color-gray-300);border-radius:9999px;border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:#9da3a7;background:var(--color-gray-400)}::selection{background:#e8d4f8;background:var(--color-primary-light);color:#1c1d1f;color:var(--text-primary)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-fadeIn{animation:fadeIn .3s ease}.animate-slideUp{animation:slideUp .3s ease}.animate-slideDown{animation:slideDown .3s ease}.animate-pulse{animation:pulse 2s infinite}
/*# sourceMappingURL=main.6b8c2b7b.css.map*/