:root{--bg-body:#0f0f0f;--bg-surface:#1a1a2e;--bg-surface-alt:#1e1e38;--bg-elevated:#2a2a3e;--bg-hover:#3a3a4e;--bg-login:radial-gradient(ellipse at center, #16213e 0%, #0f0f0f 70%);--nav-bg:linear-gradient(135deg, #1a1a2e, #16213e);--card-bg:linear-gradient(135deg, #1a1a2e, #1e1e38);--text-primary:#e0e0e0;--text-secondary:#aaa;--text-muted:#888;--text-dim:#666;--text-drag:#555;--border:#333;--border-subtle:#2a2a3e;--accent:#7c9ff5;--accent-secondary:#a78bfa;--accent-gradient:linear-gradient(135deg, #7c9ff5, #a78bfa);--accent-gradient-hover:linear-gradient(135deg, #5b82e0, #8b6fd4);--accent-on:#0f0f0f;--success:#2ecc71;--success-dark:#27ae60;--danger:#e74c3c;--danger-dark:#c0392b;--warning:#f39c12;--warning-dark:#e67e22;--overlay:#000000d9;--card-shadow:#7c9ff514;--focus-ring:#7c9ff526;--video-bg:#000;--sidebar-active-bg:#2a2a3e;--sidebar-video-active:#2a2a3e;--sidebar-video-active-text:#7c9ff5}.theme-light{--bg-body:#f5f5f7;--bg-surface:#fff;--bg-surface-alt:#f0f0f5;--bg-elevated:#e8e8f0;--bg-hover:#dcdce5;--bg-login:radial-gradient(ellipse at center, #e8eaf6 0%, #f5f5f7 70%);--nav-bg:linear-gradient(135deg, #fff, #f0f0f5);--card-bg:linear-gradient(135deg, #fff, #f8f8fc);--text-primary:#1a1a2e;--text-secondary:#555;--text-muted:#777;--text-dim:#999;--text-drag:#bbb;--border:#ddd;--border-subtle:#e0e0e8;--accent:#5b6abf;--accent-secondary:#7c5cbf;--accent-gradient:linear-gradient(135deg, #5b6abf, #7c5cbf);--accent-gradient-hover:linear-gradient(135deg, #4a59a8, #6b4bae);--accent-on:#fff;--overlay:#00000080;--card-shadow:#0000000f;--focus-ring:#5b6abf33;--video-bg:#111;--sidebar-active-bg:#e8e8f0;--sidebar-video-active:#e8e8f0;--sidebar-video-active-text:#5b6abf}@media (prefers-color-scheme:light){:root:not(.theme-dark):not(.theme-light){--bg-body:#f5f5f7;--bg-surface:#fff;--bg-surface-alt:#f0f0f5;--bg-elevated:#e8e8f0;--bg-hover:#dcdce5;--bg-login:radial-gradient(ellipse at center, #e8eaf6 0%, #f5f5f7 70%);--nav-bg:linear-gradient(135deg, #fff, #f0f0f5);--card-bg:linear-gradient(135deg, #fff, #f8f8fc);--text-primary:#1a1a2e;--text-secondary:#555;--text-muted:#777;--text-dim:#999;--text-drag:#bbb;--border:#ddd;--border-subtle:#e0e0e8;--accent:#5b6abf;--accent-secondary:#7c5cbf;--accent-gradient:linear-gradient(135deg, #5b6abf, #7c5cbf);--accent-gradient-hover:linear-gradient(135deg, #4a59a8, #6b4bae);--accent-on:#fff;--overlay:#00000080;--card-shadow:#0000000f;--focus-ring:#5b6abf33;--video-bg:#111;--sidebar-active-bg:#e8e8f0;--sidebar-video-active:#e8e8f0;--sidebar-video-active-text:#5b6abf}}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg-body);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;transition:background .3s,color .3s}a{color:var(--accent);text-decoration:none}.container{width:100%;padding:24px 32px}.nav{background:var(--nav-bg);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:16px 32px;display:flex}.nav h1{background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:1.2rem}.nav-links{align-items:center;gap:16px;display:flex}.nav-links a,.nav-links button{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;font-size:.9rem;transition:color .2s}.nav-links a:hover,.nav-links button:hover{color:var(--text-primary)}.theme-toggle{border-radius:6px;background:var(--bg-elevated)!important;padding:6px 10px!important;font-size:1rem!important;transition:background .2s!important}.theme-toggle:hover{background:var(--bg-hover)!important}input,select{border:1px solid var(--border);background:var(--bg-surface);color:var(--text-primary);border-radius:6px;width:100%;padding:10px 14px;font-size:1rem;transition:border-color .2s}input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--focus-ring);outline:none}button,.btn{cursor:pointer;border:none;border-radius:6px;padding:10px 20px;font-size:1rem;transition:all .2s}.btn-primary{background:var(--accent-gradient);color:var(--accent-on);font-weight:600}.btn-primary:hover{background:var(--accent-gradient-hover);transform:translateY(-1px)}.btn-danger{background:linear-gradient(135deg, var(--danger), var(--danger-dark));color:#fff}.btn-sm{padding:6px 12px;font-size:.85rem}.card{background:var(--card-bg);border:1px solid var(--border-subtle);border-radius:10px;margin-bottom:16px;padding:20px;transition:border-color .2s,box-shadow .2s}.card:hover{border-color:var(--accent);box-shadow:0 4px 20px var(--card-shadow)}.card h3{margin-bottom:8px}.card p{color:var(--text-muted);font-size:.9rem}.session-list{flex-direction:column;gap:8px;display:flex}.session-item{background:var(--bg-surface);border:1px solid var(--border-subtle);cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;padding:12px 16px;transition:all .2s;display:flex}.session-item:hover{border-color:var(--accent);background:var(--bg-surface-alt)}.session-item.completed{border-left:3px solid var(--success)}.badge{background:var(--bg-elevated);color:var(--accent);border-radius:4px;padding:2px 8px;font-size:.75rem;display:inline-block}.video-player{background:var(--video-bg);object-fit:contain;border-radius:8px;width:100%;height:calc(100vh - 160px)}.video-section{margin-bottom:12px}.video-section h4{color:var(--accent);text-transform:uppercase;margin-bottom:4px;font-size:.85rem}.form-group{margin-bottom:16px}.form-group label{color:var(--text-secondary);margin-bottom:6px;font-size:.9rem;display:block}.error{color:var(--danger);margin-bottom:12px}.login-page{background:var(--bg-login);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-box{width:360px}.progress-bar{background:var(--bg-elevated);border-radius:3px;height:6px;margin-top:8px}.progress-fill{background:linear-gradient(90deg, var(--accent), var(--success));border-radius:3px;height:100%;transition:width .4s}.flex{gap:8px;display:flex}.flex-between{justify-content:space-between;align-items:center;display:flex}.mt{margin-top:16px}.mb{margin-bottom:16px}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border-subtle);padding:10px}th{color:var(--text-muted);font-size:.85rem}.player-layout{gap:0;height:calc(100vh - 70px);display:flex}.player-sidebar{background:var(--bg-surface);border-right:1px solid var(--border-subtle);width:300px;min-width:300px;padding:16px;transition:width .3s,min-width .3s,padding .3s;overflow-y:auto}.player-sidebar.collapsed{width:0;min-width:0;padding:0;overflow:hidden}.player-main{flex:1;padding:16px 24px;overflow-y:auto}.sidebar-toggle{background:var(--bg-elevated);color:var(--accent);cursor:pointer;border:none;border-radius:6px;padding:8px 12px;font-size:1rem}.sidebar-toggle:hover{background:var(--bg-hover)}.sidebar-session{cursor:pointer;border:1px solid #0000;border-radius:6px;margin-bottom:4px;padding:10px 12px;font-size:.9rem;transition:all .2s}.sidebar-session:hover{background:var(--bg-elevated)}.sidebar-session.active{background:var(--sidebar-active-bg);border-color:var(--accent)}.lightbox-overlay{background:var(--overlay);z-index:1000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lightbox-content{width:80vw;max-width:1000px;position:relative}.lightbox-content video{border-radius:8px;width:100%}.lightbox-close{color:#fff;cursor:pointer;background:0 0;border:none;font-size:1.5rem;position:absolute;top:-40px;right:0}.btn-preview{background:linear-gradient(135deg, var(--success), var(--success-dark));color:#fff;cursor:pointer;border:none;border-radius:4px;padding:4px 10px;font-size:.8rem}.btn-preview:hover{opacity:.85}.admin-tabs{background:var(--bg-surface);border-radius:8px;gap:4px;padding:4px;display:flex}.admin-tab{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:6px;padding:8px 16px;font-size:.9rem;transition:all .2s}.admin-tab.active{background:var(--accent-gradient);color:var(--accent-on);font-weight:600}.admin-tab:not(.active):hover{color:var(--text-primary);background:var(--bg-elevated)}.section-header{align-items:center;gap:8px;margin-bottom:16px;display:flex}.section-header .icon{font-size:1.3rem}.section-header h3{background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.toast{color:#fff;z-index:2000;border-radius:8px;padding:12px 20px;font-size:.9rem;animation:.3s toastIn,.3s 2.7s forwards toastOut;position:fixed;top:20px;right:20px}.toast-warning{background:linear-gradient(135deg, var(--warning), var(--warning-dark))}.toast-success{background:linear-gradient(135deg, var(--success), var(--success-dark))}.toast-error{background:linear-gradient(135deg, var(--danger), var(--danger-dark))}@keyframes toastIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes toastOut{0%{opacity:1}to{opacity:0}}.drag-handle{cursor:grab;color:var(--text-drag);-webkit-user-select:none;user-select:none;padding:0 4px;font-size:1.1rem}.drag-handle:active{cursor:grabbing}.dragging{opacity:.5}.drag-over{border-top:2px solid var(--accent)!important}.inline-edit{flex:1;align-items:center;gap:6px;display:flex}.inline-edit input{padding:4px 8px;font-size:.85rem}.admin-columns{align-items:flex-start;gap:16px;display:flex}.admin-col{min-width:0}.sidebar-video{cursor:pointer;border-radius:4px;padding:6px 12px 6px 28px;font-size:.82rem}.player-header{justify-content:space-between;align-items:center;display:flex}.player-controls{flex-shrink:0}@media (width<=768px){.container{padding:12px 16px}.nav{flex-wrap:wrap;gap:8px;padding:12px 16px}.nav h1{font-size:1rem}.nav-links{flex-wrap:wrap;gap:10px;font-size:.8rem}.player-layout{flex-direction:column;height:auto;min-height:calc(100vh - 60px)}.player-sidebar{z-index:100;height:100vh;position:fixed;top:0;left:0;width:100%!important;min-width:100%!important}.player-sidebar.collapsed{padding:0;width:0!important;min-width:0!important}.player-main{padding:12px}.player-header{flex-direction:column;align-items:flex-start;gap:8px}.player-header h2{font-size:1.1rem}.player-controls{justify-content:flex-end;width:100%}.video-player{height:auto;max-height:50vh}.admin-columns{flex-direction:column}.admin-col{width:100%!important;min-width:0!important}.admin-tabs{flex-wrap:wrap}.admin-tab{text-align:center;flex:1;min-width:0;padding:8px;font-size:.8rem}.flex{flex-wrap:wrap}.flex input,.flex select{min-width:0}.flex-between{flex-wrap:wrap;gap:8px}table{white-space:nowrap;display:block;overflow-x:auto}.card{padding:14px}.session-item{padding:10px 12px}.login-box{max-width:360px;width:90vw!important}.course-grid{grid-template-columns:1fr!important}.progress-bar{margin-top:6px}}@media (width>=769px) and (width<=900px){.admin-columns{flex-direction:column}.admin-col{width:100%!important;min-width:0!important}}.modal-box{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;width:90vw;max-width:480px;padding:24px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.cast-btn{color:var(--text-secondary)!important;background:0 0!important;padding:6px 8px!important;transition:color .2s!important}.cast-btn:hover{color:var(--text-primary)!important}
