:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#333;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden;width:100%}h1,h2,h3,h4,h5,h6{margin:0;font-weight:600}a{font-weight:500;text-decoration:inherit}button{font-family:inherit}[dir=rtl]{direction:rtl;text-align:right}[dir=ltr]{direction:ltr;text-align:left}[lang=ar]{font-family:Segoe UI,Tahoma,Arial,sans-serif}[dir=rtl] .form-group,[dir=rtl] .form-group label,[dir=rtl] .form-group input,[dir=rtl] .form-group select,[dir=rtl] .form-group textarea{text-align:right}[dir=rtl] .students-table{direction:rtl}[dir=rtl] .students-table th,[dir=rtl] .students-table td{text-align:right}[dir=rtl] .pagination{direction:rtl}[dir=rtl] .btn-back:before{content:"→"}[dir=ltr] .btn-back:before{content:"←"}[dir=rtl] .filter-group label{text-align:right}[dir=rtl] .action-buttons,[dir=rtl] .checkbox-group label{direction:rtl}[dir=rtl] input[type=checkbox]{margin-left:.5rem;margin-right:0}[dir=rtl] .page-header{direction:rtl}[dir=rtl] .results-info,[dir=rtl] .empty-state{text-align:right}.language-switcher{position:relative;display:inline-block}.language-switcher-current{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background-color:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;cursor:pointer;transition:all .3s ease;color:#fff;font-size:.9rem;font-weight:500;outline:none;box-shadow:0 2px 4px #0000001a}.language-switcher-current:hover{background-color:#fff3;transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.language-switcher-current.active{background-color:#ffffff40;border-color:#fff6;box-shadow:0 4px 12px #0003}.language-flag{font-size:1.3rem;line-height:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.2))}.language-name{font-weight:500;white-space:nowrap}.language-arrow{font-size:.7rem;transition:transform .3s ease;margin-left:.25rem}.language-arrow.open{transform:rotate(180deg)}.language-dropdown{position:absolute;top:calc(100% + .5rem);left:0;background-color:#fff;border-radius:8px;box-shadow:0 8px 24px #0003;overflow:hidden;z-index:1000;min-width:160px;animation:slideDown .2s ease-out;border:1px solid rgba(0,0,0,.1)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}[dir=rtl] .language-dropdown{left:auto;right:0}.language-option{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;background:none;border:none;text-align:left;cursor:pointer;transition:all .2s ease;color:#333;font-size:.9rem;font-weight:500;position:relative;outline:none}[dir=rtl] .language-option{text-align:right}.language-option:hover{background-color:#f5f5f5;padding-left:1.25rem}[dir=rtl] .language-option:hover{padding-left:1rem;padding-right:1.25rem}.language-option.active{background-color:#e3f2fd;color:#2d4f6b;font-weight:600}.language-option.active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background-color:#2d4f6b}[dir=rtl] .language-option.active:before{left:auto;right:0}.language-check{margin-left:auto;color:#2d4f6b;font-weight:700;font-size:1rem}[dir=rtl] .language-check{margin-left:0;margin-right:auto}.admin-sidebar .language-switcher{width:100%;padding:0 1.5rem;margin-bottom:1rem}.admin-sidebar .language-switcher-current{background-color:#ffffff1a;border-color:#fff3;color:#fff;width:100%;justify-content:space-between}.admin-sidebar .language-switcher-current:hover{background-color:#fff3}.admin-sidebar .language-dropdown{left:1.5rem;right:1.5rem;width:calc(100% - 3rem)}[dir=rtl] .admin-sidebar .language-dropdown{left:1.5rem;right:1.5rem}.teacher-sidebar .language-switcher{width:100%}.teacher-sidebar .language-switcher-current{background-color:#ffffff1a;border-color:#fff3;color:#fff;width:100%;justify-content:space-between}.teacher-sidebar .language-switcher-current:hover{background-color:#fff3}.teacher-sidebar .language-switcher-current.active{background-color:#ffffff40;border-color:#fff6}.teacher-sidebar .language-dropdown{left:0;right:0;width:100%;margin-top:.5rem}[dir=rtl] .teacher-sidebar .language-dropdown{left:0;right:0}.navbar .language-switcher-current{background-color:transparent;border-color:#ffffff4d;color:#fff}.navbar .language-switcher-current:hover{background-color:#ffffff26}.navbar.scrolled .language-switcher-current{background-color:#2d4f6b1a;border-color:#2d4f6b4d;color:#2d4f6b}.navbar.scrolled .language-switcher-current:hover{background-color:#2d4f6b26}.navbar.scrolled .language-flag{filter:none}@media(max-width:768px){.language-name{display:none}.language-switcher-current{padding:.5rem;gap:.25rem}.language-dropdown{min-width:120px}.language-option{padding:.625rem .875rem;font-size:.85rem}.navbar .language-switcher-current{background-color:#fff!important;border-color:#ddd!important;color:#333!important}.navbar .language-switcher-current:hover{background-color:#f5f5f5!important}.navbar .language-switcher-current.active{background-color:#e3f2fd!important;border-color:#2d4f6b!important;color:#2d4f6b!important}.navbar .language-flag{filter:none!important}.navbar .language-arrow{color:#333!important}}.navbar{background-color:transparent;padding:0;position:fixed;top:0;left:0;right:0;z-index:1000;transition:background-color .3s,box-shadow .3s}.navbar.scrolled{background-color:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 2px 4px #0000001a}.navbar-container{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;position:relative}.navbar-logo{display:flex;align-items:center;gap:.75rem;text-decoration:none;z-index:1001}.logo-img{height:40px;width:auto;object-fit:contain}.logo-text{font-size:1.5rem;font-weight:700;color:#2d4f6b}.navbar:not(.scrolled) .logo-text{color:#fff}.navbar-menu{display:flex;align-items:center;gap:2rem}.navbar-link{color:#333;text-decoration:none;font-weight:500;transition:color .3s}.navbar:not(.scrolled) .navbar-link{color:#fff}.navbar-link:hover{color:#2d4f6b}.navbar:not(.scrolled) .navbar-link:hover{color:#fffc}.navbar-language{display:flex;align-items:center}.navbar-buttons{display:flex;align-items:center;gap:1rem;margin-left:1rem}[dir=rtl] .navbar-buttons{margin-left:0;margin-right:1rem}.navbar-btn{padding:.6rem 1.5rem;border-radius:5px;text-decoration:none;font-weight:500;transition:all .3s;border:none;cursor:pointer;display:inline-block;text-align:center}.navbar-btn-login{background-color:#fff;color:#2d4f6b;border:2px solid #2d4f6b}.navbar:not(.scrolled) .navbar-btn-login{background-color:transparent;color:#fff;border:2px solid white}.navbar-btn-login:hover{background-color:#f0f7ff}.navbar:not(.scrolled) .navbar-btn-login:hover{background-color:#fff3}.navbar-btn-signup{background-color:#2d4f6b;color:#fff}.navbar:not(.scrolled) .navbar-btn-signup{background-color:#fff;color:#2d4f6b}.navbar-btn-signup:hover{background-color:#1f3647}.navbar:not(.scrolled) .navbar-btn-signup:hover{background-color:#ffffffe6}.hamburger{display:none;flex-direction:column;cursor:pointer;padding:.5rem;background:none;border:none;gap:5px;z-index:1001}.hamburger span{width:25px;height:3px;background-color:#2d4f6b;transition:all .3s ease;border-radius:2px}.navbar:not(.scrolled) .hamburger span{background-color:#fff}@media(max-width:768px){.navbar{background-color:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 2px 4px #0000001a}.navbar:not(.scrolled){background-color:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 2px 4px #0000001a}.navbar:not(.scrolled) .logo-text{color:#2d4f6b}.navbar:not(.scrolled) .navbar-link{color:#333}.navbar:not(.scrolled) .hamburger span{background-color:#2d4f6b}.navbar:not(.scrolled) .navbar-btn-login{background-color:#fff;color:#2d4f6b;border:2px solid #2d4f6b}.navbar:not(.scrolled) .navbar-btn-signup{background-color:#2d4f6b;color:#fff}.hamburger{display:flex}.navbar-overlay{position:fixed;top:0;left:0;width:100%;height:100vh;background-color:#00000080;z-index:999}.navbar-menu{position:fixed;top:0;right:-100%;width:70%;max-width:300px;height:100vh;background-color:#fff;flex-direction:column;align-items:flex-start;padding:5rem 2rem 2rem;box-shadow:-2px 0 10px #0000001a;transition:right .3s ease;gap:0;z-index:1000;overflow-y:auto}[dir=rtl] .navbar-menu{right:auto;left:-100%;box-shadow:2px 0 10px #0000001a;transition:left .3s ease}.navbar-menu.active{right:0}[dir=rtl] .navbar-menu.active{right:auto;left:0}.navbar-link{width:100%;padding:.75rem 0;border-bottom:1px solid #f0f0f0;color:#333!important;margin-top:0}.navbar-link:first-of-type{margin-top:0}.navbar-language{width:100%;padding:.75rem 0;border-bottom:1px solid #f0f0f0}.navbar-language .language-switcher{width:100%}.navbar-language .language-switcher-current{width:100%;background-color:#fff;color:#333;border:1px solid #ddd}.navbar-buttons{flex-direction:column;margin-left:0;width:100%;gap:1rem;margin-top:1rem;padding-top:.5rem}.navbar-btn{width:100%;text-align:center;color:#2d4f6b!important;background-color:#fff!important;border:2px solid #2d4f6b!important}.navbar-btn-signup{background-color:#2d4f6b!important;color:#fff!important}}@media(max-width:480px){.navbar-container{padding:1rem}.logo-text{font-size:1.2rem}.logo-img{height:35px}}.footer{background-color:#2d4f6b;color:#fff;padding:3rem 2rem 1rem;margin-top:auto}.footer-container{max-width:1200px;margin:0 auto}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-bottom:2rem}.footer-section h3{color:#fff;margin-bottom:1rem;font-size:1.5rem}.footer-section h4{color:#fff;margin-bottom:1rem;font-size:1.1rem}.footer-section p{color:#fffc;line-height:1.6;font-size:.9rem}.footer-section ul{list-style:none;padding:0;margin:0}.footer-section ul li{margin-bottom:.75rem}.footer-section ul li a{color:#fffc;text-decoration:none;transition:color .3s;font-size:.9rem}.footer-section ul li a:hover{color:#fff}.phone-number{direction:ltr!important;text-align:left!important;unicode-bidi:embed}.footer-section ul li{color:#fffc;font-size:.9rem}.social-links{display:flex;gap:1rem;flex-wrap:wrap}.social-links a{color:#fffc;text-decoration:none;transition:color .3s;font-size:.9rem}.social-links a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.2);padding-top:1.5rem;text-align:center}.footer-bottom p{color:#fffc;font-size:.9rem;margin:0}@media(max-width:768px){.footer{padding:2rem 1rem 1rem}.footer-content{grid-template-columns:1fr;gap:2rem}.social-links{flex-direction:column;gap:.5rem}}.sidebar-toggle-btn{display:flex!important;align-items:center;justify-content:center;position:fixed;top:1rem;left:1rem;z-index:101;background-color:#2d4f6b;color:#fff;border:none;padding:.75rem;border-radius:8px;cursor:pointer;font-size:1.5rem;box-shadow:0 4px 12px #0000004d;transition:left .3s ease,right .3s ease,background-color .3s,transform .2s,box-shadow .3s;width:48px;height:48px;min-width:48px;min-height:48px}.sidebar-toggle-btn.sidebar-open{left:calc(250px + 2rem)}.sidebar-toggle-btn:hover{background-color:#1f3647;transform:scale(1.05)}[dir=rtl] .sidebar-toggle-btn{left:auto;right:1rem;transition:left .3s ease,right .3s ease,background-color .3s,transform .2s,box-shadow .3s}[dir=rtl] .sidebar-toggle-btn.sidebar-open{right:calc(250px + 2rem);left:auto}@media(max-width:768px){.sidebar-overlay{display:block}}.admin-sidebar{width:250px;background-color:#2d4f6b;color:#fff;height:100vh;position:fixed;left:0;top:0;display:flex;flex-direction:column;box-shadow:2px 0 4px #0000001a;z-index:100;transition:transform .3s ease;transform:translate(0)}.admin-sidebar:not(.open){transform:translate(-100%)}[dir=rtl] .admin-sidebar{left:auto;right:0;box-shadow:-2px 0 4px #0000001a}[dir=rtl] .admin-sidebar:not(.open){transform:translate(100%)}.sidebar-close-btn{display:flex;position:absolute;top:1rem;right:1rem;background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:.5rem;border-radius:50%;width:35px;height:35px;align-items:center;justify-content:center;transition:background-color .3s}@media(max-width:768px){.admin-sidebar{width:280px;max-width:85%}.admin-sidebar:not(.open){transform:translate(-100%)}.admin-sidebar.open{transform:translate(0)}[dir=rtl] .admin-sidebar:not(.open){transform:translate(100%)}[dir=rtl] .admin-sidebar.open{transform:translate(0)}}.admin-layout{display:flex;min-height:100vh;background-color:#f5f5f5}.admin-main-content{flex:1;margin-left:250px;min-height:100vh;transition:margin-left .3s,margin-right .3s}.admin-main-content.sidebar-hidden{margin-left:0}.admin-main-content .page-header,.admin-main-content .dashboard-header{padding-left:4.5rem}.admin-main-content.sidebar-hidden .page-header,.admin-main-content.sidebar-hidden .dashboard-header{padding-left:4rem}[dir=rtl] .admin-main-content{margin-left:0;margin-right:250px}[dir=rtl] .admin-main-content.sidebar-hidden{margin-right:0}@media(max-width:768px){.admin-main-content{margin-left:0;padding-top:5rem}[dir=rtl] .admin-main-content{margin-right:0}}.sidebar-toggle-btn{display:none;position:fixed;top:1rem;left:1rem;z-index:101;background-color:#2d4f6b;color:#fff;border:none;padding:.75rem;border-radius:5px;cursor:pointer;font-size:1.5rem;box-shadow:0 2px 8px #0003;transition:background-color .3s}.sidebar-toggle-btn:hover{background-color:#1f3647}.student-sidebar{width:250px;background-color:#2d4f6b;color:#fff;height:100vh;position:fixed;left:0;top:0;display:flex;flex-direction:column;box-shadow:2px 0 4px #0000001a;z-index:100;transition:left .3s}[dir=rtl] .student-sidebar{left:auto;right:0;box-shadow:-2px 0 4px #0000001a}.sidebar-header{padding:2rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.1);position:relative}.sidebar-header p{margin:0;font-size:.85rem;opacity:.8}.sidebar-user-info-link{text-decoration:none;color:inherit;display:block;transition:background-color .3s}.sidebar-user-info-link:hover{background-color:#ffffff1a}.sidebar-user-info{padding:1.5rem;border-bottom:1px solid rgba(255,255,255,.1);display:flex;align-items:center;gap:1rem}.user-avatar,.user-avatar-image{width:50px;height:50px;border-radius:50%;background-color:#fff3;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0;color:#fff;object-fit:cover;border:2px solid rgba(255,255,255,.3)}.user-name{font-weight:500;font-size:.95rem;margin-bottom:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-email{font-size:.8rem;opacity:.8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-item.active{background-color:#ffffff26;color:#fff;border-left-color:#fff}[dir=rtl] .nav-item.active{border-left-color:transparent;border-right-color:#fff}.nav-label{flex:1}.nav-group{position:relative}.nav-group-toggle{display:flex;align-items:center;justify-content:space-between}.nav-arrow{transition:transform .3s;font-size:.8rem}.nav-submenu{background-color:#0003;padding-left:1rem}.nav-subitem{padding-left:3rem!important;font-size:.9rem;color:#ffffffe6!important}.nav-subitem:hover{color:#fff!important;background-color:#ffffff26!important}.nav-subitem.active{color:#fff!important;background-color:#fff3!important;border-left-color:#fff!important}.nav-subitem.no-items{color:#fff9!important;cursor:default}[dir=rtl] .nav-subitem{padding-left:1rem!important;padding-right:3rem!important}.logout-btn{display:flex;align-items:center;padding:1rem 1.5rem;color:#fffc;text-decoration:none;transition:all .3s;border:none;width:100%;background:none;text-align:left;font-family:inherit;font-size:.95rem;cursor:pointer}[dir=rtl] .logout-btn{text-align:right}.logout-btn:hover{background-color:#f003;color:#fff}@media(max-width:768px){.sidebar-toggle-btn{display:flex;align-items:center;justify-content:center}.sidebar-overlay{display:block}.student-sidebar{width:280px;max-width:85%;left:-100%;transition:left .3s ease}.student-sidebar.open{left:0}[dir=rtl] .student-sidebar{left:auto;right:-100%;transition:right .3s ease}[dir=rtl] .student-sidebar.open{right:0}.sidebar-close-btn{display:flex}}.student-layout{display:flex;min-height:100vh;background-color:#f5f5f5}.student-main-content{flex:1;margin-left:250px;padding:2rem;transition:margin-left .3s}[dir=rtl] .student-main-content{margin-left:0;margin-right:250px}@media(max-width:768px){.student-main-content{margin-left:0;padding:5rem 1rem 1rem}[dir=rtl] .student-main-content{margin-right:0}}.sidebar-toggle-btn{display:none;position:fixed;top:1rem;left:1rem;z-index:101;background-color:#1e3a5f;color:#fff;border:none;padding:.75rem;border-radius:5px;cursor:pointer;font-size:1.5rem;box-shadow:0 2px 8px #0003;transition:background-color .3s}.sidebar-toggle-btn:hover{background-color:#15294a}[dir=rtl] .sidebar-toggle-btn{left:auto;right:1rem}.sidebar-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100vh;background-color:#00000080;z-index:99}.teacher-sidebar{width:250px;background:linear-gradient(180deg,#1e3a5f,#2c5282);color:#fff;height:100vh;position:fixed;left:0;top:0;display:flex;flex-direction:column;box-shadow:2px 0 8px #00000026;z-index:100;transition:left .3s}[dir=rtl] .teacher-sidebar{left:auto;right:0;box-shadow:-2px 0 8px #00000026}.sidebar-header{padding:2rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.1);position:relative;background:#0000001a}.sidebar-close-btn{display:none;position:absolute;top:1rem;right:1rem;background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:.5rem;border-radius:50%;width:35px;height:35px;align-items:center;justify-content:center;transition:background-color .3s}.sidebar-close-btn:hover{background-color:#fff3}[dir=rtl] .sidebar-close-btn{right:auto;left:1rem}.sidebar-header h2{margin:0 0 .5rem;font-size:1.5rem;color:#fff}.sidebar-header p{margin:0;font-size:.85rem;opacity:.8;color:#81d4fa}.sidebar-user-info-link{text-decoration:none;color:inherit;display:block}.sidebar-user-info{display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;background:#ffffff0d;border-bottom:1px solid rgba(255,255,255,.1);transition:background-color .3s}.sidebar-user-info:hover{background:#ffffff1a}.user-avatar-image{width:45px;height:45px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.3)}.user-avatar{width:45px;height:45px;border-radius:50%;background:#fff3;display:flex;align-items:center;justify-content:center;font-size:1.2rem;color:#fff;border:2px solid rgba(255,255,255,.3)}.user-details{flex:1;min-width:0}.user-name{font-weight:600;font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-email{font-size:.8rem;opacity:.7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-language{padding:0 1.5rem;margin-bottom:1rem}.sidebar-language .language-switcher{width:100%}.sidebar-language .language-switcher-current{background-color:#ffffff1a;border-color:#fff3;color:#fff;width:100%;justify-content:space-between}.sidebar-language .language-switcher-current:hover{background-color:#fff3}.sidebar-language .language-switcher-current.active{background-color:#ffffff40;border-color:#fff6}.sidebar-language .language-dropdown{left:0;right:0;width:100%;margin-top:.5rem}[dir=rtl] .sidebar-language .language-dropdown{left:0;right:0}.sidebar-nav{flex:1;padding:1rem 0;overflow-y:auto}.nav-item{display:flex;align-items:center;padding:1rem 1.5rem;color:#fffc;text-decoration:none;transition:all .3s;border-left:3px solid transparent;width:100%;background:none;border-top:none;border-bottom:none;border-right:none;text-align:left;font-family:inherit;font-size:.95rem;cursor:pointer}[dir=rtl] .nav-item{border-left:none;border-right:3px solid transparent;text-align:right}.nav-item:hover{background-color:#ffffff1a;color:#fff}.nav-item.active{background-color:#ffffff26;color:#fff;border-left-color:#81d4fa}[dir=rtl] .nav-item.active{border-left-color:transparent;border-right-color:#81d4fa}.nav-icon{font-size:1.2rem;margin-right:.75rem;width:24px;text-align:center;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:inherit}[dir=rtl] .nav-icon{margin-right:0;margin-left:.75rem}.nav-label{font-size:.95rem;font-weight:500;flex:1}.nav-group{width:100%}.nav-group-toggle{position:relative}.nav-arrow{margin-left:auto;font-size:.8rem;transition:transform .3s}[dir=rtl] .nav-arrow{margin-left:0;margin-right:auto}.nav-arrow.open{transform:rotate(90deg)}[dir=rtl] .nav-arrow.open{transform:rotate(-90deg)}.nav-submenu{background-color:#0003;padding:.5rem 0}.nav-subitem{padding-left:3rem}[dir=rtl] .nav-subitem{padding-left:1.5rem;padding-right:3rem}.sidebar-footer{padding:1rem 0;border-top:1px solid rgba(255,255,255,.1)}.logout-btn{width:100%;display:flex;align-items:center;padding:1rem 1.5rem;background:none;border:none;color:#fffc;cursor:pointer;transition:all .3s;font-size:.95rem;font-weight:500;font-family:inherit}.logout-btn:hover{background-color:#ffffff1a;color:#fff}@media(max-width:768px){.sidebar-toggle-btn{display:flex;align-items:center;justify-content:center}.sidebar-overlay{display:block}.teacher-sidebar{width:280px;max-width:85%;left:-100%;transition:left .3s ease}.teacher-sidebar.open{left:0}[dir=rtl] .teacher-sidebar{left:auto;right:-100%;transition:right .3s ease}[dir=rtl] .teacher-sidebar.open{right:0}.sidebar-close-btn{display:flex}}.teacher-layout{display:flex;min-height:100vh;background-color:#f0f4f8}.teacher-main-content{flex:1;margin-left:250px;min-height:100vh;transition:margin-left .3s,margin-right .3s}[dir=rtl] .teacher-main-content{margin-left:0;margin-right:250px}@media(max-width:768px){.teacher-main-content{margin-left:0;padding-top:5rem}[dir=rtl] .teacher-main-content{margin-right:0}}.whatsapp-button{position:fixed;bottom:20px;right:20px;width:60px;height:60px;background-color:#25d366;border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #25d36666;z-index:999;transition:all .3s ease;outline:none;animation:slideInRight .5s ease-out}[dir=rtl] .whatsapp-button{right:auto;left:20px;animation:slideInLeft .5s ease-out}@keyframes slideInRight{0%{transform:translate(100px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInLeft{0%{transform:translate(-100px);opacity:0}to{transform:translate(0);opacity:1}}.whatsapp-button:hover{background-color:#20ba5a;transform:scale(1.1);box-shadow:0 6px 20px #25d36699}.whatsapp-button:active{transform:scale(.95)}.whatsapp-icon{width:32px;height:32px;color:#fff;z-index:2;position:relative}.whatsapp-pulse{position:absolute;width:100%;height:100%;border-radius:50%;background-color:#25d366;animation:pulse 2s infinite;z-index:1}@keyframes pulse{0%{transform:scale(1);opacity:1}50%{transform:scale(1.3);opacity:.5}to{transform:scale(1.5);opacity:0}}@media(max-width:768px){.whatsapp-button{width:56px;height:56px;bottom:15px;right:15px}[dir=rtl] .whatsapp-button{left:15px}.whatsapp-icon{width:28px;height:28px}}@media(max-width:480px){.whatsapp-button{width:50px;height:50px;bottom:10px;right:10px}[dir=rtl] .whatsapp-button{left:10px}.whatsapp-icon{width:24px;height:24px}}.home{min-height:calc(100vh - 80px);overflow-x:hidden;width:100%}.hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;color:#fff;text-align:center;overflow:hidden}.hero-video{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:1}.hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#2d4f6bb3,#1f3647b3);z-index:2}.hero-content{position:relative;z-index:3;max-width:800px;padding:2rem;padding-top:120px;margin:0 auto}.hero-title{font-size:3rem;margin-bottom:1rem;font-weight:700}.hero-subtitle{font-size:1.5rem;margin-bottom:1rem;opacity:.9}.hero-description{font-size:1.1rem;margin-bottom:2rem;opacity:.8;line-height:1.6}.hero-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.btn{padding:.8rem 2rem;border-radius:5px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s;border:none}.btn-primary{background-color:#fff;color:#2d4f6b}.btn-primary:hover{background-color:#f0f7ff;transform:translateY(-2px);box-shadow:0 4px 8px #0003}.btn-secondary{background-color:transparent;color:#fff;border:2px solid white}.btn-secondary:hover{background-color:#ffffff1a;transform:translateY(-2px)}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.feature-section{padding:6rem 0;opacity:0;transform:translateY(50px);transition:all .8s ease-out;position:relative}.feature-section:nth-child(2n){background:linear-gradient(180deg,#fff,#f8f9fa)}.feature-section:nth-child(odd){background:linear-gradient(180deg,#f8f9fa,#fff)}.feature-section.visible{opacity:1;transform:translateY(0)}.feature-content{display:flex;align-items:center;gap:4rem;max-width:1100px;margin:0 auto}.feature-content.reverse{flex-direction:row-reverse}.feature-icon-wrapper{flex:0 0 auto;display:flex;align-items:center;justify-content:center}.feature-icon{width:180px;height:180px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#2d4f6b,#4a90a4);border-radius:50%;color:#fff;font-size:5rem;box-shadow:0 10px 30px #2d4f6b4d;position:relative}.feature-icon.floating{animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.feature-icon:before{content:"";position:absolute;inset:-10px;border-radius:50%;background:linear-gradient(135deg,#2d4f6b33,#4a90a433);z-index:-1;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:.7}50%{transform:scale(1.1);opacity:.4}}.feature-text{flex:1}.feature-title{font-size:2.5rem;color:#2d4f6b;margin-bottom:1.5rem;font-weight:700;line-height:1.2}.feature-description{font-size:1.2rem;color:#666;line-height:1.8;margin-bottom:2rem}.btn-cta{background:linear-gradient(135deg,#2d4f6b,#4a90a4);color:#fff;padding:1rem 2.5rem;font-size:1.1rem;font-weight:600;border-radius:50px;border:none;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #2d4f6b4d}.btn-cta:hover{transform:translateY(-2px);box-shadow:0 6px 20px #2d4f6b66;background:linear-gradient(135deg,#1f3d52,#2d4f6b)}@media(max-width:768px){.hero-title{font-size:2rem}.hero-subtitle{font-size:1.2rem}.feature-section{padding:4rem 0}.feature-content{flex-direction:column!important;gap:2.5rem;text-align:center}.feature-content.reverse{flex-direction:column!important}.feature-icon{width:140px;height:140px;font-size:4rem}.feature-title{font-size:2rem;margin-bottom:1rem}.feature-description{font-size:1.1rem;margin-bottom:1.5rem}.btn-cta{padding:.9rem 2rem;font-size:1rem}.container{padding:0 1.5rem}}.levels-intro{padding:5rem 2rem;background:linear-gradient(180deg,#fff,#f0f7ff);text-align:center}.levels-intro-title{font-size:2.8rem;color:#2d4f6b;margin-bottom:1rem;font-weight:700;position:relative;display:inline-block;width:100%}.levels-intro-title:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:80px;height:4px;background:linear-gradient(90deg,#2d4f6b,#4a90a4);border-radius:2px}.levels-intro-subtitle{font-size:1.2rem;color:#666;margin-top:2rem;max-width:600px;margin-left:auto;margin-right:auto}.level-section{padding:5rem 0;opacity:0;transition:all .8s ease-out;position:relative;will-change:transform,opacity;contain:layout}.level-section.slide-left{transform:translate(-100px)}.level-section.slide-right{transform:translate(100px)}@media(max-width:768px){.level-section.slide-left,.level-section.slide-right{transform:translate(0) translateY(30px)}.level-section.visible{transform:translate(0) translateY(0)}}.level-section:nth-child(2n){background:linear-gradient(180deg,#fff,#f0f7ff)}.level-section:nth-child(odd){background:linear-gradient(180deg,#f0f7ff,#fff)}.level-section.visible{opacity:1;transform:translate(0)}.level-content{display:flex;align-items:center;gap:4rem;max-width:1100px;margin:0 auto;justify-content:center}.level-content.reverse{flex-direction:row-reverse}.level-icon-wrapper{flex:0 0 auto;display:flex;align-items:center;justify-content:center}.level-icon{width:200px;height:200px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#2d4f6b,#4a90a4);border-radius:50%;color:#fff;font-size:5.5rem;box-shadow:0 10px 30px #2d4f6b4d;position:relative}.level-icon.floating{animation:float 3s ease-in-out infinite}.level-icon:before{content:"";position:absolute;inset:-15px;border-radius:50%;background:linear-gradient(135deg,#2d4f6b33,#4a90a433);z-index:-1;animation:pulse 2s ease-in-out infinite}.level-text{flex:1;text-align:center}.level-title{font-size:2.8rem;color:#2d4f6b;font-weight:700;line-height:1.2;margin:0}@media(max-width:768px){.level-section{padding:4rem 0}.level-content{flex-direction:column!important;gap:2.5rem;text-align:center}.level-content.reverse{flex-direction:column!important}.level-icon{width:160px;height:160px;font-size:4.5rem}.level-title{font-size:2rem}}.experience-section{position:relative;min-height:600px;display:flex;align-items:center;justify-content:center;background-image:url(/experience.jpg);background-size:cover;background-position:center;background-attachment:fixed;padding:6rem 2rem;margin-bottom:4rem;opacity:0;transform:translateY(50px);transition:all 1s ease-out;overflow:hidden;will-change:transform,opacity;contain:layout}@media(max-width:768px){.experience-section{background-attachment:scroll}}.experience-section.visible{opacity:1;transform:translateY(0)}.experience-overlay{position:absolute;inset:0;background:linear-gradient(135deg,#2d4f6bd9,#1f3647e6);z-index:1}.experience-content{position:relative;z-index:2;max-width:1200px;width:100%;text-align:center;color:#fff}.experience-stats{display:flex;align-items:center;justify-content:center;gap:4rem;margin-bottom:3rem;flex-wrap:wrap}.stat-item{display:flex;flex-direction:column;align-items:center;gap:1rem}.stat-number{font-size:4.5rem;font-weight:800;line-height:1;background:linear-gradient(135deg,#fff,#e3f2fd);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;display:flex;align-items:baseline;gap:.2rem;animation:numberGlow 2s ease-in-out infinite}.stat-number.years{font-size:5rem}.counter{display:inline-block;min-width:120px;text-align:right}.plus{font-size:3rem;opacity:.8}.stat-label{font-size:1.3rem;font-weight:500;color:#fffffff2;text-transform:uppercase;letter-spacing:1px}.stat-divider{width:2px;height:100px;background:linear-gradient(180deg,transparent,rgba(255,255,255,.3),transparent)}@keyframes numberGlow{0%,to{filter:drop-shadow(0 0 10px rgba(255,255,255,.3))}50%{filter:drop-shadow(0 0 20px rgba(255,255,255,.6))}}.experience-title{font-size:3rem;font-weight:700;margin-bottom:1.5rem;line-height:1.2;text-shadow:0 2px 10px rgba(0,0,0,.3);animation:fadeInUp 1s ease-out .3s both}.experience-description{font-size:1.3rem;line-height:1.8;max-width:800px;margin:0 auto;color:#fffffff2;text-shadow:0 1px 5px rgba(0,0,0,.2);animation:fadeInUp 1s ease-out .5s both}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.experience-section{min-height:500px;padding:4rem 1.5rem;background-attachment:scroll}.experience-stats{flex-direction:column;gap:2.5rem}.stat-divider{width:100px;height:2px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent)}.stat-number{font-size:3.5rem}.stat-number.years{font-size:4rem}.counter{min-width:90px}.plus{font-size:2.5rem}.stat-label{font-size:1.1rem}.experience-title{font-size:2rem;margin-bottom:1rem}.experience-description{font-size:1.1rem}}.contact{min-height:100vh;background-color:#f8f9fa;padding:3rem 2rem;padding-top:calc(80px + 3rem)}.contact-container{max-width:1200px;margin:0 auto}.contact-header{text-align:center;margin-bottom:3rem}.contact-title{font-size:2.5rem;color:#2d4f6b;margin-bottom:.5rem}.contact-subtitle{font-size:1.2rem;color:#666}.contact-content{display:grid;grid-template-columns:2fr 1fr;gap:3rem}.contact-form{background-color:#fff;padding:2rem;border-radius:10px;box-shadow:0 2px 10px #0000001a}.form-group input,.form-group textarea{width:100%;padding:.8rem;border:2px solid #e0e0e0;border-radius:5px;font-size:1rem;font-family:inherit;transition:border-color .3s}.form-group textarea{resize:vertical}.submit-btn:hover{background-color:#1f3647;transform:translateY(-2px);box-shadow:0 4px 8px #2d4f6b4d}.contact-info{display:flex;flex-direction:column;gap:2rem}.info-card h3{color:#2d4f6b;margin-bottom:1rem;font-size:1.5rem}.info-card p{color:#666;margin-bottom:.8rem;line-height:1.6}.info-card strong{color:#333}.info-card a{color:#2d4f6b;text-decoration:none;transition:color .3s}.info-card a:hover{color:#1f3647;text-decoration:underline}@media(max-width:968px){.contact-content{grid-template-columns:1fr}}@media(max-width:768px){.contact-title{font-size:2rem}.contact-form,.info-card{padding:1.5rem}}.courses-page{min-height:100vh;padding:80px 0 0;background:#fff;position:relative;z-index:1;overflow-x:hidden}.courses-header{text-align:center;padding:3rem 2rem 2rem;background:linear-gradient(135deg,#2d4f6be6,#1f3647e6);color:#fff;position:relative;z-index:2}.courses-header h1{font-size:2.5rem;color:#fff;margin-bottom:.75rem;font-weight:700}.courses-subtitle{font-size:1.1rem;color:#ffffffe6;max-width:700px;margin:0 auto;line-height:1.6}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;gap:1.5rem;position:relative;z-index:2}.loading-spinner{width:50px;height:50px;border:4px solid rgba(45,79,107,.2);border-top:4px solid #2d4f6b;border-radius:50%;animation:spin 1s linear infinite}.courses-by-level{max-width:1400px;margin:0 auto;padding:3rem 2rem 4rem;position:relative;z-index:2}.level-section{margin-bottom:5rem;position:relative;z-index:2;background:linear-gradient(135deg,#f8f9fa,#fff);border-radius:20px;padding:2.5rem;box-shadow:0 4px 20px #2d4f6b14;border:1px solid rgba(45,79,107,.1)}.level-title{font-size:2.2rem;color:#2d4f6b;margin-bottom:2.5rem;padding:1rem 1.5rem;background:linear-gradient(135deg,#2d4f6b,#4a90a4);color:#fff;border-radius:12px;font-weight:700;position:relative;z-index:2;display:inline-block;box-shadow:0 4px 15px #2d4f6b4d;margin-left:0;margin-right:0;width:100%;text-align:center}.packs-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;position:relative;z-index:2;margin-top:1rem}.pack-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 4px 15px #00000014;transition:all .4s cubic-bezier(.175,.885,.32,1.275);display:flex;flex-direction:column;position:relative;z-index:2;border:1px solid rgba(45,79,107,.1);background:linear-gradient(to bottom,#fff,#f8f9fa)}.pack-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#2d4f6b,#4a90a4);transform:scaleX(0);transition:transform .4s;z-index:1}.pack-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 12px 30px #2d4f6b33;border-color:#2d4f6b4d}.pack-card:hover:before{transform:scaleX(1)}.pack-thumbnail{width:100%;height:220px;overflow:hidden;background:linear-gradient(135deg,#2d4f6b,#4a90a4);position:relative;display:flex;align-items:center;justify-content:center}.pack-thumbnail:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.1) 100%);z-index:1}.pack-thumbnail img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s;position:relative;z-index:0}.pack-card:hover .pack-thumbnail img{transform:scale(1.1)}.pack-content{padding:1.75rem;flex:1;display:flex;flex-direction:column;position:relative;z-index:2;background:#fff}.pack-title{font-size:1.2rem;color:#2d4f6b;margin-bottom:1rem;font-weight:700;line-height:1.4;min-height:3.2rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pack-meta-info{margin-bottom:.75rem}.pack-teacher{color:#7f8c8d;font-size:.85rem;margin-bottom:.25rem}.pack-niveau{color:#7f8c8d;font-size:.85rem;margin-bottom:0}.rating-stars{color:#f39c12;font-size:.9rem}.rating-value{color:#7f8c8d;font-size:.85rem;font-weight:600}.pack-description{color:#555;font-size:.85rem;line-height:1.5;margin-bottom:1rem;flex:1}.pack-chapters-info{color:#2d4f6b;font-size:.85rem;margin-bottom:1rem;font-weight:500}.pack-footer{margin-top:auto;padding-top:1rem;border-top:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center}.pack-price{font-size:1.75rem;background:linear-gradient(135deg,#2d4f6b,#4a90a4);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:800;margin-bottom:1rem}.pack-cta{padding:.875rem 1.5rem;background:linear-gradient(135deg,#2d4f6b,#4a90a4);color:#fff;border:none;border-radius:10px;font-weight:700;font-size:.95rem;cursor:pointer;transition:all .3s;width:100%;box-shadow:0 4px 15px #2d4f6b4d;position:relative;overflow:hidden}.pack-cta:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.pack-cta:hover{transform:translateY(-2px);box-shadow:0 6px 20px #2d4f6b66}.pack-cta:hover:before{left:100%}.pack-cta:disabled{opacity:.6;cursor:not-allowed}.pack-cta-approved{background:linear-gradient(135deg,#10b981,#059669)}.pack-cta-pending{background:linear-gradient(135deg,#f59e0b,#d97706)}.pack-cta-suspended{background:linear-gradient(135deg,#ef4444,#dc2626)}.no-courses{text-align:center;padding:4rem 2rem;color:#7f8c8d;font-size:1.2rem;position:relative;z-index:2}.alert{max-width:1400px;margin:2rem auto;padding:1rem 1.5rem;border-radius:8px;position:relative;z-index:10}.alert-error{background:#fee;color:#c33;border:1px solid #fcc}.packs-grid{display:grid!important;opacity:1!important;visibility:visible!important}.level-section,.pack-card{opacity:1!important;visibility:visible!important}@media(max-width:1200px){.packs-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:900px){.packs-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.courses-page{padding-top:70px}.courses-header{padding:2rem 1.5rem 1.5rem}.courses-header h1{font-size:2rem}.courses-subtitle{font-size:1rem}.packs-grid{grid-template-columns:1fr;gap:1.5rem}.level-title{font-size:1.5rem}.pack-content{padding:1.25rem}.pack-title{font-size:1rem}.courses-by-level{padding:2rem 1rem 3rem}.pack-footer{flex-direction:column;gap:1rem;align-items:stretch}.pack-cta{width:100%}}.pack-detail-page{min-height:100vh;background:#f4f7f6;padding:2rem;padding-top:100px}.enroll-button-large:disabled{opacity:.6;cursor:not-allowed}.enroll-button-approved{background:linear-gradient(135deg,#10b981,#059669)}.enroll-button-pending{background:linear-gradient(135deg,#f59e0b,#d97706)}.enroll-button-suspended{background:linear-gradient(135deg,#ef4444,#dc2626)}.enrollment-notification{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background-color:#fef3c7;color:#d97706;border-radius:8px;font-size:.875rem;font-weight:500;margin-bottom:.75rem;border-left:4px solid #f59e0b}.enrollment-notification svg{flex-shrink:0}.enrollment-notification-inline{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background-color:#fef3c7;color:#d97706;border-radius:6px;font-size:.8rem;font-weight:500;margin-top:.5rem;border-left:3px solid #f59e0b}.enrollment-notification-inline svg{flex-shrink:0}.enroll-note.approved{color:#10b981;font-weight:500}@media(max-width:768px){.pack-detail-page{padding:1rem}.pack-detail-header{padding:1.5rem}.pack-detail-header h1{font-size:1.5rem}.pack-meta{flex-direction:column;gap:.5rem}.video-section{max-width:100%}.chapters-section-below{padding:1.5rem}.chapters-section-below h3{font-size:1.5rem}.chapter-header{padding:1rem;font-size:1rem}.chapter-items{padding:1rem 1rem 1rem 1.5rem}.chapter-item-content{padding:.75rem;font-size:.9rem}.videos-section{padding:1rem}}.student-pack-detail-page{min-height:100vh;background:#f4f7f6;padding:2rem;padding-top:100px}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center}.loading-spinner{border:4px solid #f3f3f3;border-top:4px solid #2d4f6b;border-radius:50%;width:50px;height:50px;animation:spin 1s linear infinite;margin-bottom:1rem}.back-link{display:inline-flex;align-items:center;gap:.5rem;color:#2d4f6b;text-decoration:none;margin-bottom:1.5rem;font-weight:500;transition:color .2s}.back-link:hover{color:#1e3a5f;text-decoration:underline}.pack-detail-header{background:#fff;border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 2px 10px #0000000d}.pack-detail-header h1{font-size:2rem;color:#2d4f6b;margin:0 0 1rem}.pack-meta{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.meta-item{display:flex;align-items:center;gap:.5rem;color:#666;font-size:.95rem}.meta-item.niveau-badge{background:#dcfce7;color:#16a34a;padding:.25rem .75rem;border-radius:20px;font-weight:500}.meta-item.rating{color:#f59e0b}.meta-item.price{color:#28a745;font-weight:600;font-size:1.1rem}.pack-description{color:#666;line-height:1.6;margin:0}.pack-content-wrapper{display:flex;flex-direction:column;gap:2rem;width:100%}.pack-main-content{display:grid;grid-template-columns:1fr 400px;gap:2rem;width:100%}.video-section{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 10px #0000000d;max-width:900px;width:100%}.video-player{position:relative;padding-top:56.25%;background:#000;width:100%}.free-preview-badge{position:absolute;top:1rem;left:1rem;background:#10b981;color:#fff;padding:.5rem 1rem;border-radius:6px;font-weight:600;font-size:.9rem;z-index:10;box-shadow:0 2px 8px #0000004d}.video-player video{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:contain}.video-locked{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,#2d4f6b,#4a90a4);color:#fff;text-align:center;padding:2rem}.video-locked svg{margin-bottom:1rem;opacity:.8}.video-locked p{margin-bottom:1.5rem;font-size:1.1rem}.enroll-button{background:#fff;color:#2d4f6b;border:none;padding:.75rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.enroll-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0003}.video-info{padding:1.5rem}.video-info h3{color:#2d4f6b;margin:0 0 .5rem;font-size:1.3rem}.video-info p{color:#666;margin:.5rem 0;line-height:1.6}.video-duration{color:#999;font-size:.9rem}.chapters-section-below{background:linear-gradient(145deg,#fff,#f8f9fa);border-radius:16px;padding:2.5rem;box-shadow:0 4px 20px #00000014;width:100%;border:1px solid #e8ecef}.chapters-section-below h3{color:#2d4f6b;margin:0 0 2rem;font-size:1.75rem;font-weight:700;display:flex;align-items:center;gap:.75rem;padding-bottom:1rem;border-bottom:3px solid #2d4f6b}.pack-sidebar{display:flex;flex-direction:column;gap:1.5rem;max-width:400px;width:100%}.videos-section{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 10px #0000000d}.videos-section h3{color:#2d4f6b;margin:0 0 1rem;font-size:1.2rem}.chapter-item{background:#fff;border-radius:12px;margin-bottom:1rem;border:1px solid #e8ecef;overflow:hidden;transition:all .3s ease;box-shadow:0 2px 8px #0000000a}.chapter-item:hover{box-shadow:0 4px 16px #2d4f6b1f;transform:translateY(-2px)}.chapter-item:last-child{margin-bottom:0}.chapter-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;cursor:pointer;background:linear-gradient(135deg,#f8f9fa,#fff);color:#2d4f6b;font-weight:600;font-size:1.1rem;transition:all .3s ease;border-bottom:2px solid transparent}.chapter-header:hover{background:linear-gradient(135deg,#e8f0f7,#f0f7ff);color:#1e3a5f}.chapter-header svg{color:#4a90a4;transition:transform .3s ease}.chapter-item.active .chapter-header{background:linear-gradient(135deg,#2d4f6b,#4a90a4);color:#fff;border-bottom-color:#1e3a5f}.chapter-item.active .chapter-header svg{color:#fff;transform:rotate(180deg)}.chapter-items{padding:1rem 1.5rem 1.5rem 2.5rem;background:#fff;animation:slideDown .3s ease}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:500px}}.chapter-item-content{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;color:#495057;font-size:.95rem;background:#f8f9fa;border-radius:8px;margin-bottom:.5rem;transition:all .2s ease;border-left:3px solid #4a90a4}.chapter-item-content:hover{background:#e8f0f7;transform:translate(5px);box-shadow:0 2px 8px #0000000d}.chapter-item-content:last-child{margin-bottom:0}.chapter-item-content svg{color:#2d4f6b;font-size:1rem}.videos-list{display:flex;flex-direction:column;gap:.5rem}.video-item{display:flex;align-items:center;gap:1rem;padding:1rem;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;transition:all .2s;background:#fff}.video-item:hover{border-color:#2d4f6b;background:#f8f9fa}.video-item.active{border-color:#2d4f6b;background:#e8f0f7}.video-item.locked{opacity:.7;cursor:not-allowed}.video-item.locked:hover{border-color:#e0e0e0;background:#fff}.video-item-icon{color:#2d4f6b;font-size:1.2rem}.video-item.locked .video-item-icon{color:#999}.video-item-content{flex:1;min-width:0}.video-item-title{font-weight:500;color:#333;margin-bottom:.25rem;display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.free-preview-label{background:#10b981;color:#fff;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;white-space:nowrap}.video-item-duration{font-size:.85rem;color:#999}.video-item-lock{color:#999}.enroll-cta{background:linear-gradient(135deg,#2d4f6b,#4a90a4);border-radius:12px;padding:2rem;text-align:center;color:#fff}.enroll-button-large{background:#fff;color:#2d4f6b;border:none;padding:1rem 2rem;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;width:100%;transition:transform .2s,box-shadow .2s;margin-bottom:1rem}.enroll-button-large:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0003}.enroll-note{font-size:.9rem;opacity:.9;margin:0}@media(max-width:1024px){.pack-main-content{grid-template-columns:1fr}.pack-sidebar,.video-section{max-width:100%}.chapters-section-below{padding:2rem}}@media(max-width:768px){.student-pack-detail-page{padding:1rem}.pack-detail-header{padding:1.5rem}.pack-detail-header h1{font-size:1.5rem}.pack-meta{flex-direction:column;gap:.5rem}.video-section{max-width:100%}.chapters-section-below{padding:1.5rem}.chapters-section-below h3{font-size:1.5rem}.chapter-header{padding:1rem;font-size:1rem}.chapter-items{padding:1rem 1rem 1rem 1.5rem}.chapter-item-content{padding:.75rem;font-size:.9rem}.videos-section{padding:1rem}}.login{min-height:calc(100vh - 80px);display:flex;align-items:center;justify-content:center;background-color:#f8f9fa;padding:2rem;padding-top:100px;margin-top:0}.login-container{width:100%;max-width:400px}.login-card{background-color:#fff;padding:2.5rem;border-radius:10px;box-shadow:0 2px 10px #0000001a}.login-card h1{color:#2d4f6b;text-align:center;margin-bottom:2rem;font-size:2rem}.login-form .form-group{margin-bottom:1.5rem}.login-form label{display:block;margin-bottom:.5rem;color:#333;font-weight:500}.login-form input{width:100%;padding:.8rem;border:2px solid #e0e0e0;border-radius:5px;font-size:1rem;font-family:inherit;transition:border-color .3s}.login-form input:focus{outline:none;border-color:#2d4f6b}.login-btn:hover{background-color:#1f3647;transform:translateY(-2px);box-shadow:0 4px 8px #1061b34d}.forgot-password-link{text-align:center;margin-top:1rem}.forgot-password-link a{color:#2d4f6b;text-decoration:none;font-size:.9rem;transition:color .3s}.forgot-password-link a:hover{color:#1f3647;text-decoration:underline}.signup{min-height:calc(100vh - 80px);display:flex;align-items:center;justify-content:center;background-color:#f8f9fa;padding:2rem;padding-top:100px;margin-top:0}.signup-container{width:100%;max-width:500px}.signup-card{background-color:#fff;padding:2.5rem;border-radius:10px;box-shadow:0 2px 10px #0000001a}.signup-card h1{color:#2d4f6b;text-align:center;margin-bottom:2rem;font-size:2rem}.signup-type-selection{text-align:center}.signup-question{font-size:1.1rem;color:#333;margin-bottom:2rem;font-weight:500}.signup-options{display:flex;flex-direction:column;gap:1rem}.signup-type-btn{width:100%;padding:1rem;background-color:#2d4f6b;color:#fff;border:none;border-radius:5px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .3s,transform .2s}.signup-type-btn:hover{background-color:#1f3647;transform:translateY(-2px);box-shadow:0 4px 8px #2d4f6b4d}.back-btn{background:none;border:none;color:#2d4f6b;cursor:pointer;font-size:.9rem;margin-bottom:1rem;padding:.5rem 0;transition:color .3s}.back-btn:hover{color:#1f3647;text-decoration:underline}.signup-form .form-group{margin-bottom:1.5rem}.signup-form label{display:block;margin-bottom:.5rem;color:#333;font-weight:500}.signup-form input,.signup-form select{width:100%;padding:.8rem;border:2px solid #e0e0e0;border-radius:5px;font-size:1rem;font-family:inherit;transition:border-color .3s}.signup-form input:focus,.signup-form select:focus{outline:none;border-color:#2d4f6b}.signup-form select{cursor:pointer;background-color:#fff}.signup-btn{width:100%;padding:.8rem;background-color:#2d4f6b;color:#fff;border:none;border-radius:5px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .3s,transform .2s}.signup-btn:hover{background-color:#1f3647;transform:translateY(-2px);box-shadow:0 4px 8px #2d4f6b4d}@media(max-width:768px){.signup{padding:1rem}.signup-card{padding:1.5rem}.signup-card h1{font-size:1.5rem}}.forgot-password{min-height:calc(100vh - 80px);display:flex;align-items:center;justify-content:center;background-color:#f8f9fa;padding:2rem;padding-top:calc(80px + 2rem)}.forgot-password-container{width:100%;max-width:450px}.forgot-password-card{background-color:#fff;padding:2.5rem;border-radius:10px;box-shadow:0 2px 10px #0000001a}.forgot-password-card h1{color:#2d4f6b;text-align:center;margin-bottom:.5rem;font-size:2rem}.forgot-password-subtitle{text-align:center;color:#666;margin-bottom:2rem;font-size:.95rem}.success-message{background-color:#dfd;color:#3a3;padding:1.5rem;border-radius:5px;text-align:center;border:1px solid #cfc}.success-message p{margin:0 0 1rem;font-size:1rem}.forgot-password-form .form-group{margin-bottom:1.5rem}.forgot-password-form label{display:block;margin-bottom:.5rem;color:#333;font-weight:500}.forgot-password-form input{width:100%;padding:.8rem;border:2px solid #e0e0e0;border-radius:5px;font-size:1rem;font-family:inherit;transition:border-color .3s}.forgot-password-form input:focus{outline:none;border-color:#2d4f6b}@media(max-width:768px){.forgot-password-card{padding:1.5rem}.forgot-password-card h1{font-size:1.75rem}}.reset-password{min-height:calc(100vh - 80px);display:flex;align-items:center;justify-content:center;background-color:#f8f9fa;padding:2rem;padding-top:calc(80px + 2rem)}.reset-password-container{width:100%;max-width:450px}.reset-password-card{background-color:#fff;padding:2.5rem;border-radius:10px;box-shadow:0 2px 10px #0000001a}.reset-password-card h1{color:#2d4f6b;text-align:center;margin-bottom:.5rem;font-size:2rem}.reset-password-subtitle{text-align:center;color:#666;margin-bottom:2rem;font-size:.95rem}.success-message{background-color:#dfd;color:#3a3;padding:2rem;border-radius:5px;text-align:center;border:1px solid #cfc}.success-message h2{color:#2d4f6b;margin:0 0 1rem}.success-message p{margin:.5rem 0;font-size:1rem}.redirect-message{font-size:.9rem;color:#666;margin-top:1rem}.reset-password-form .form-group{margin-bottom:1.5rem}.reset-password-form label{display:block;margin-bottom:.5rem;color:#333;font-weight:500}.reset-password-form input{width:100%;padding:.8rem;border:2px solid #e0e0e0;border-radius:5px;font-size:1rem;font-family:inherit;transition:border-color .3s}.reset-password-form input:focus{outline:none;border-color:#2d4f6b}.submit-btn{width:100%;padding:.8rem;background-color:#2d4f6b;color:#fff;border:none;border-radius:5px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .3s,transform .2s}.submit-btn:hover:not(:disabled){background-color:#1f3647;transform:translateY(-2px);box-shadow:0 4px 8px #2d4f6b4d}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.back-to-login-link{text-align:center;margin-top:1.5rem}.back-to-login-link a{color:#2d4f6b;text-decoration:none;font-size:.9rem;transition:color .3s}.back-to-login-link a:hover{color:#1f3647;text-decoration:underline}.back-to-login{display:inline-block;margin-top:1rem;padding:.6rem 1.5rem;background-color:#2d4f6b;color:#fff;text-decoration:none;border-radius:5px;transition:background-color .3s}.back-to-login:hover{background-color:#1f3647}@media(max-width:768px){.reset-password-card{padding:1.5rem}.reset-password-card h1{font-size:1.75rem}}.thank-you{min-height:calc(100vh - 80px);display:flex;align-items:center;justify-content:center;background-color:#f8f9fa;padding:2rem;padding-top:calc(80px + 2rem)}.thank-you-container{width:100%;max-width:600px}.thank-you-card{background-color:#fff;padding:3rem 2.5rem;border-radius:10px;box-shadow:0 2px 10px #0000001a;text-align:center}.success-icon{width:80px;height:80px;border-radius:50%;background-color:#28a745;color:#fff;font-size:48px;display:flex;align-items:center;justify-content:center;margin:0 auto 2rem;font-weight:700}.thank-you-card h1{color:#2d4f6b;margin-bottom:1rem;font-size:2rem}.thank-you-message{color:#333;font-size:1.1rem;line-height:1.6;margin-bottom:1.5rem}.thank-you-info{color:#666;font-size:1rem;line-height:1.6;margin-bottom:2rem;background-color:#f8f9fa;padding:1.5rem;border-radius:8px;border-left:4px solid #2d4f6b}.back-home-btn{display:inline-block;padding:.8rem 2rem;background-color:#2d4f6b;color:#fff;text-decoration:none;border-radius:5px;font-weight:500;font-size:1rem;transition:background-color .3s,transform .2s}.back-home-btn:hover{background-color:#1f3647;transform:translateY(-2px);box-shadow:0 4px 8px #2d4f6b4d}@media(max-width:768px){.thank-you-card{padding:2rem 1.5rem}.thank-you-card h1{font-size:1.75rem}.success-icon{width:60px;height:60px;font-size:36px}}.admin-login{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#2d4f6b,#1f3647);padding:2rem}.admin-login-container{width:100%;max-width:450px}.admin-login-card{background-color:#fff;padding:3rem;border-radius:10px;box-shadow:0 4px 20px #0003}.admin-login-header{text-align:center;margin-bottom:2rem}.admin-login-header h1{color:#2d4f6b;margin-bottom:.5rem;font-size:2rem}.admin-login-header p{color:#666;font-size:.9rem}.error-message{background-color:#fee;color:#c33;padding:.75rem;border-radius:5px;margin-bottom:1.5rem;font-size:.9rem;border:1px solid #fcc}.admin-login-form .form-group{margin-bottom:1.5rem}.admin-login-form label{display:block;margin-bottom:.5rem;color:#333;font-weight:500;font-size:.9rem}.admin-login-form input{width:100%;padding:.8rem;border:2px solid #e0e0e0;border-radius:5px;font-size:1rem;font-family:inherit;transition:border-color .3s}.admin-login-form input:focus{outline:none;border-color:#2d4f6b}.login-btn{width:100%;padding:.8rem;background-color:#2d4f6b;color:#fff;border:none;border-radius:5px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .3s,transform .2s}.login-btn:hover:not(:disabled){background-color:#1f3647;transform:translateY(-2px);box-shadow:0 4px 8px #2d4f6b4d}.login-btn:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.admin-login-card{padding:2rem}.admin-login-header h1{font-size:1.5rem}}.dashboard-page{padding:2rem}.dashboard-header{margin-bottom:2rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.stat-card{background-color:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 2px 10px #0000001a;display:flex;align-items:center;gap:1.5rem;transition:transform .3s,box-shadow .3s}.stat-card:hover{transform:translateY(-5px);box-shadow:0 4px 15px #00000026}.stat-icon{width:60px;height:60px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.75rem;color:#fff;flex-shrink:0}.stat-icon.students{background:linear-gradient(135deg,#3b82f6,#2563eb)}.stat-icon.active-students{background:linear-gradient(135deg,#10b981,#059669)}.stat-icon.intern-students{background:linear-gradient(135deg,#6366f1,#4f46e5)}.stat-icon.extern-students{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.stat-icon.teachers{background:linear-gradient(135deg,#f59e0b,#d97706)}.stat-icon.active-teachers{background:linear-gradient(135deg,#14b8a6,#0d9488)}.stat-icon.published-courses{background:linear-gradient(135deg,#10b981,#059669)}.stat-icon.packs{background:linear-gradient(135deg,#ec4899,#db2777)}.stat-icon.groups{background:linear-gradient(135deg,#06b6d4,#0891b2)}.stat-icon.matieres{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.stat-icon.active-matieres{background:linear-gradient(135deg,#a855f7,#9333ea)}.stat-icon.views{background:linear-gradient(135deg,#f97316,#ea580c)}.stat-icon.videos{background:linear-gradient(135deg,#ef4444,#dc2626)}.stat-icon.live-streams{background:linear-gradient(135deg,#84cc16,#65a30d)}.stat-content h3{margin:0 0 .5rem;color:#666;font-size:.9rem;font-weight:500;text-transform:uppercase}.stat-value{margin:0;color:#2d4f6b;font-size:2.5rem;font-weight:700}@media(max-width:768px){.dashboard-page{padding:1rem}.stats-grid{grid-template-columns:1fr}.dashboard-header{flex-direction:column;align-items:flex-start}}.create-student-page{padding:2rem}.btn-back{padding:.75rem 1.5rem;background-color:#f0f0f0;color:#333;border:none;border-radius:5px;cursor:pointer;font-weight:500;transition:background-color .3s}.btn-back:hover{background-color:#e0e0e0}.success-message{background-color:#dfd;color:#3a3;padding:1rem;border-radius:5px;margin-bottom:1.5rem;border:1px solid #cfc}.form-container{background-color:#fff;padding:2rem;border-radius:10px;box-shadow:0 2px 10px #0000001a}.student-form{max-width:800px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-bottom:1.5rem}.form-group input,.form-group select{padding:.8rem;border:2px solid #e0e0e0;border-radius:5px;font-size:1rem;font-family:inherit;transition:border-color .3s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#2d4f6b}.checkbox-group{margin-top:1rem}.checkbox-group input[type=checkbox]{width:auto;cursor:pointer}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:2rem;border-top:1px solid #f0f0f0}.btn-cancel{padding:.75rem 1.5rem;background-color:#f0f0f0;color:#333;border:none;border-radius:5px;cursor:pointer;font-weight:500;transition:background-color .3s}.btn-cancel:hover{background-color:#e0e0e0}.btn-submit{padding:.75rem 1.5rem;background-color:#2d4f6b;color:#fff;border:none;border-radius:5px;cursor:pointer;font-weight:500;transition:background-color .3s}.btn-submit:hover:not(:disabled){background-color:#1f3647}@media(max-width:768px){.create-student-page{padding:1rem}.page-header{flex-direction:column;align-items:flex-start;gap:1rem}.form-row{grid-template-columns:1fr}}.manage-students-page{padding:2rem}.bulk-actions{background-color:#fff3cd;padding:1rem 1.5rem;border-radius:5px;margin-bottom:1.5rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap;border:1px solid #ffc107}.bulk-actions .selected-count{font-weight:500;color:#856404;margin-right:auto}.bulk-actions-dropdown{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.bulk-action-select{padding:.5rem 1rem;border:1px solid #ddd;border-radius:5px;background-color:#fff;color:#333;font-size:.95rem;cursor:pointer;min-width:180px;transition:border-color .3s}.bulk-action-select:focus{outline:none;border-color:#2d4f6b;box-shadow:0 0 0 2px #2d4f6b1a}.btn-apply-bulk{padding:.5rem 1.25rem;background-color:#2d4f6b;color:#fff;border:none;border-radius:5px;cursor:pointer;font-weight:500;transition:background-color .3s,transform .2s}.btn-apply-bulk:hover:not(:disabled){background-color:#1f3647;transform:translateY(-1px)}.btn-apply-bulk:disabled{background-color:#ccc;cursor:not-allowed;opacity:.6}.bulk-actions button{padding:.5rem 1rem;border:none;border-radius:5px;cursor:pointer;font-weight:500;transition:background-color .3s,transform .2s}.btn-approve{background-color:#28a745;color:#fff}.btn-approve:hover{background-color:#218838;transform:translateY(-1px)}.btn-pending{background-color:#ffc107;color:#212529}.btn-pending:hover{background-color:#e0a800;transform:translateY(-1px)}.btn-suspend{background-color:#dc3545;color:#fff}.btn-suspend:hover{background-color:#c82333;transform:translateY(-1px)}.btn-cancel:hover{background-color:#5a6268;transform:translateY(-1px)}.filters-section{background-color:#fff;padding:1.5rem;border-radius:10px;box-shadow:0 2px 10px #0000001a;margin-bottom:1.5rem;display:grid!important;grid-template-columns:2fr 1fr 1fr 1fr!important;gap:1rem;align-items:end}@media(max-width:768px){.filters-section{grid-template-columns:1fr!important}}.filter-group{display:flex;flex-direction:column;min-width:0}.filter-group label{margin-bottom:.5rem;color:#333;font-weight:500;font-size:.9rem}.filter-input{padding:.75rem;border:1px solid #ddd;border-radius:5px;font-size:1rem;transition:border-color .3s,box-shadow .3s;width:100%;box-sizing:border-box}.filter-input:focus{outline:none;border-color:#2d4f6b;box-shadow:0 0 0 2px #2d4f6b1a}.filter-select{padding:.75rem;border:1px solid #ddd;border-radius:5px;background-color:#fff;color:#333;font-size:1rem;cursor:pointer;transition:border-color .3s,box-shadow .3s;width:100%;box-sizing:border-box}.filter-select:focus{outline:none;border-color:#2d4f6b;box-shadow:0 0 0 2px #2d4f6b1a}.filter-group input,.filter-group select{padding:.6rem;border:2px solid #e0e0e0;border-radius:5px;font-size:.9rem;font-family:inherit;transition:border-color .3s;width:100%;box-sizing:border-box}.filter-group input:focus,.filter-group select:focus{outline:none;border-color:#2d4f6b}.results-info{color:#666;margin-bottom:1rem;font-size:.9rem}.students-table-container{background-color:#fff;border-radius:10px;overflow:hidden;box-shadow:0 2px 10px #0000001a;margin-bottom:1.5rem;overflow-x:auto}.students-table{width:100%;border-collapse:collapse;min-width:800px}.students-table thead{background-color:#2d4f6b;color:#fff}.students-table th{padding:1rem;text-align:left;font-weight:500;font-size:.9rem;text-transform:uppercase}.students-table td{padding:1rem;border-bottom:1px solid #f0f0f0}.students-table tbody tr:hover{background-color:#f8f9fa}.students-table tbody tr:last-child td{border-bottom:none}.badge-active{background-color:#d4edda;color:#155724}.badge-inactive{background-color:#f8d7da;color:#721c24}.badge-online,.badge-pending{background-color:#fff3cd;color:#856404}.status-select{padding:.4rem .6rem;border:2px solid #e0e0e0;border-radius:5px;font-size:.85rem;font-weight:500;cursor:pointer;transition:border-color .3s,background-color .3s;min-width:120px}.status-select:focus{outline:none;border-color:#2d4f6b}.status-select.status-confirmed{background-color:#d4edda;color:#155724;border-color:#c3e6cb}.status-select.status-pending{background-color:#fff3cd;color:#856404;border-color:#ffeaa7}.status-select.status-suspended{background-color:#f8d7da;color:#721c24;border-color:#f5c6cb}.pagination{display:flex;justify-content:center;align-items:center;gap:1rem;padding:1.5rem;background-color:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a}.pagination-btn{padding:.5rem 1rem;background-color:#2d4f6b;color:#fff;border:none;border-radius:5px;cursor:pointer;font-weight:500;transition:background-color .3s}.pagination-btn:hover:not(:disabled){background-color:#1f3647}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-info{color:#666;font-weight:500}.groups-container{display:flex;flex-direction:column;gap:2rem}.group-table-section{background-color:#f8f9fa;padding:1.5rem;border-radius:10px;box-shadow:0 2px 10px #0000001a;margin-bottom:2rem}.group-table-section:last-child{margin-bottom:0}.group-table-section .filters-section{background-color:#fff;padding:1.5rem;border-radius:10px;box-shadow:0 2px 10px #0000001a;margin-bottom:1.5rem;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:1rem;align-items:end}@media(max-width:768px){.group-table-section .filters-section{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.group-table-section .filters-section{grid-template-columns:1fr}}.group-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #2d4f6b}.group-header h2{color:#2d4f6b;margin:0;font-size:1.5rem}.empty-state-message{text-align:center;padding:3rem;color:#666;background-color:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a}.results-summary{margin-bottom:1rem;color:#666;font-size:.95rem;padding:.5rem 0}.empty-row{text-align:center;padding:2rem;color:#666}@media(max-width:768px){.manage-students-page{padding:1rem}.page-header{flex-direction:column;align-items:flex-start;gap:1rem}.header-actions{width:100%;flex-direction:column}.header-actions button{width:100%}.group-table-section{padding:1rem}}.create-group-page{padding:2rem}.btn-back{padding:.75rem 1.5rem;background-color:#6c757d;color:#fff;border:none;border-radius:5px;cursor:pointer;font-weight:500;transition:background-color .3s}.form-container{background-color:#fff;padding:2rem;border-radius:10px;box-shadow:0 2px 10px #0000001a;max-width:600px}.group-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column}.form-group label{margin-bottom:.5rem;color:#333;font-weight:500}.form-group input,.form-group textarea{padding:.8rem;border:2px solid #e0e0e0;border-radius:5px;font-size:1rem;font-family:inherit;transition:border-color .3s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#2d4f6b}.form-actions{display:flex;gap:1rem;margin-top:1rem}.btn-submit{padding:.8rem 2rem;background-color:#2d4f6b;color:#fff;border:none;border-radius:5px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .3s,transform .2s}.btn-submit:hover:not(:disabled){background-color:#1f3647;transform:translateY(-2px)}.btn-submit:disabled{opacity:.6;cursor:not-allowed}.btn-cancel{padding:.8rem 2rem;background-color:#6c757d;color:#fff;border:none;border-radius:5px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .3s}.manage-groups-page{padding:2rem}.btn-add{padding:.75rem 1.5rem;background-color:#2d4f6b;color:#fff;border:none;border-radius:5px;cursor:pointer;font-weight:500;transition:background-color .3s,transform .2s}.btn-add:hover{background-color:#1f3647;transform:translateY(-2px);box-shadow:0 4px 8px #2d4f6b4d}.btn-refresh{padding:.75rem 1.5rem;background-color:#28a745;color:#fff;border:none;border-radius:5px;cursor:pointer;font-weight:500;font-size:1rem;transition:background-color .3s,transform .2s;display:flex;align-items:center;gap:.5rem}.btn-refresh:hover{background-color:#218838;transform:translateY(-2px);box-shadow:0 4px 8px #28a7454d}.btn-refresh:active{transform:translateY(0)}.groups-table-container{background-color:#fff;border-radius:10px;overflow:hidden;box-shadow:0 2px 10px #0000001a;overflow-x:auto}.groups-table{width:100%;border-collapse:collapse;min-width:600px}.groups-table thead{background-color:#2d4f6b;color:#fff}.groups-table th{padding:1rem;text-align:left;font-weight:500;font-size:.9rem;text-transform:uppercase}.groups-table td{padding:1rem;border-bottom:1px solid #f0f0f0}.groups-table tbody tr:hover{background-color:#f8f9fa}.groups-table tbody tr:last-child td{border-bottom:none}.empty-state{text-align:center;padding:3rem;color:#666}.edit-input{padding:.5rem;border:2px solid #e0e0e0;border-radius:5px;font-size:.9rem;font-family:inherit;width:100%;transition:border-color .3s}.edit-actions{display:flex;gap:.5rem}.btn-save{padding:.5rem 1rem;background-color:#28a745;color:#fff;border:none;border-radius:5px;cursor:pointer;font-weight:500;transition:background-color .3s}.btn-save:hover{background-color:#218838}.btn-cancel{padding:.5rem 1rem;background-color:#6c757d;color:#fff;border:none;border-radius:5px;cursor:pointer;font-weight:500;transition:background-color .3s}.btn-edit,.btn-delete{padding:.5rem;background:none;border:none;cursor:pointer;font-size:1.2rem;transition:transform .2s,color .2s;display:flex;align-items:center;justify-content:center;color:#666}.btn-edit:hover{transform:scale(1.2);color:#2d4f6b}.btn-delete:hover{transform:scale(1.2);color:#dc3545}.manage-live-streams-page{padding:2rem}.page-header h1{color:#2d4f6b;margin:0;font-size:2rem}.btn-sync{padding:.75rem 1.5rem;background-color:#28a745;color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:500;font-size:1rem;transition:background-color .3s,transform .2s;display:flex;align-items:center;gap:.5rem}.btn-sync:hover:not(:disabled){background-color:#218838;transform:translateY(-2px);box-shadow:0 4px 8px #28a7454d}.btn-sync:disabled{opacity:.6;cursor:not-allowed}.btn-sync svg{color:#fff}.spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.success-message{background-color:#e0e7ff;color:#2d4f6b;padding:1rem;border-radius:8px;margin-bottom:1.5rem;border:1px solid #c7d2fe}.section{margin-bottom:3rem}.section h2{color:#2d4f6b;margin-bottom:1.5rem;font-size:1.5rem}.live-streams-table-container,.recordings-table-container{background-color:#fff;border-radius:10px;overflow:hidden;box-shadow:0 2px 10px #0000001a;overflow-x:auto}.live-streams-table,.recordings-table{width:100%;border-collapse:collapse;min-width:600px}.live-streams-table thead,.recordings-table thead{background-color:#2d4f6b;color:#fff}.live-streams-table th,.recordings-table th{padding:1rem;text-align:left;font-weight:500;font-size:.9rem;text-transform:uppercase}.live-streams-table td,.recordings-table td{padding:1rem;border-bottom:1px solid #f0f0f0}.live-streams-table tbody tr:hover,.recordings-table tbody tr:hover{background-color:#f8f9fa}.live-streams-table tbody tr:last-child td,.recordings-table tbody tr:last-child td{border-bottom:none}.edit-input{width:100%;padding:.5rem;border:2px solid #e0e0e0;border-radius:5px;font-size:.9rem;font-family:inherit}.edit-input:focus{outline:none;border-color:#2d4f6b}.btn-edit,.btn-save,.btn-cancel,.btn-add,.btn-toggle{padding:.5rem;background:none;border:none;cursor:pointer;font-size:1.2rem;transition:transform .2s;border-radius:5px}.btn-edit{color:#2d4f6b}.btn-edit:hover{transform:scale(1.2);background-color:#f0f0f0}.btn-save{color:#2d4f6b}.btn-save:hover{transform:scale(1.2);background-color:#e0e7ff}.btn-cancel{color:#dc3545}.btn-cancel:hover{transform:scale(1.2);background-color:#f8d7da}.btn-add{padding:.5rem 1rem;background-color:#2d4f6b;color:#fff;font-size:.9rem;font-weight:500}.btn-add:hover{background-color:#1f3647;transform:translateY(-2px)}.btn-toggle{color:#666}.btn-show{color:#2d4f6b}.btn-hide{color:#dc3545}.btn-toggle:hover{transform:scale(1.2);background-color:#f0f0f0}.badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:500}.badge-completed{background-color:#e0e7ff;color:#2d4f6b}.badge-processing{background-color:#fff3cd;color:#856404}.badge-failed{background-color:#f8d7da;color:#721c24}.badge-visible{background-color:#e0e7ff;color:#2d4f6b}.badge-hidden{background-color:#f8d7da;color:#721c24}.channel-section{margin-bottom:2rem}.channel-section h3{color:#2d4f6b;margin-bottom:1rem;font-size:1.2rem}.empty-state{text-align:center;padding:3rem;color:#666;background-color:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a}.btn-upload-pdf{color:#2d4f6b}.btn-upload-pdf:hover{transform:scale(1.2);background-color:#e0e7ff}.btn-delete{color:#dc3545}.btn-delete:hover{transform:scale(1.2);background-color:#f8d7da}.pdfs-table-container{background-color:#fff;border-radius:10px;overflow:hidden;box-shadow:0 2px 10px #0000001a;overflow-x:auto}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background-color:#fff;border-radius:10px;padding:0;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px #0000004d}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e0e0e0}.modal-header h2{margin:0;color:#2d4f6b}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#666;padding:.5rem;border-radius:5px;transition:background-color .2s}.modal-close:hover{background-color:#f0f0f0}.modal-body{padding:1.5rem}.form-group label{display:block;margin-bottom:.5rem;color:#2d4f6b;font-weight:500}.form-input{width:100%;padding:.75rem;border:2px solid #e0e0e0;border-radius:5px;font-size:1rem;font-family:inherit}.form-input:focus{outline:none;border-color:#2d4f6b}.checkbox-group{display:flex;flex-direction:column;gap:.5rem;max-height:200px;overflow-y:auto;padding:.5rem;border:2px solid #e0e0e0;border-radius:5px}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;padding:.5rem;border-radius:5px;transition:background-color .2s}.checkbox-label:hover{background-color:#f8f9fa}.checkbox-label input[type=checkbox]{cursor:pointer}.file-info{margin-top:.5rem;color:#666;font-size:.9rem}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e0e0e0}.btn-primary{padding:.75rem 1.5rem;background-color:#2d4f6b;color:#fff;border:none;border-radius:5px;cursor:pointer;font-weight:500;font-size:1rem;display:flex;align-items:center;gap:.5rem;transition:background-color .3s}.btn-primary:hover:not(:disabled){background-color:#1f3647}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{padding:.75rem 1.5rem;background-color:#6c757d;color:#fff;border:none;border-radius:5px;cursor:pointer;font-weight:500;font-size:1rem;transition:background-color .3s}.btn-secondary:hover{background-color:#5a6268}@media(max-width:768px){.manage-live-streams-page{padding:1rem}.page-header{flex-direction:column;align-items:flex-start}.modal-content{width:95%;max-height:95vh}}.manage-chat-channels-page{padding:2rem;max-width:1400px;margin:0 auto}.page-header h1{display:flex;align-items:center;gap:.75rem;color:#2d4f6b;margin:0;font-size:1.8rem}.header-icon{color:#2d4f6b}.header-actions{display:flex;gap:1rem}.btn-refresh,.btn-add{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;border-radius:8px;font-weight:500;cursor:pointer;transition:all .3s;border:none}.btn-refresh{background-color:#28a745;color:#fff}.btn-refresh:hover{background-color:#218838}.btn-refresh svg{color:#fff}.btn-add{background-color:#2d4f6b;color:#fff}.btn-add:hover{background-color:#1e3a52}.error-message{background-color:#fee2e2;color:#dc2626;padding:1rem;border-radius:8px;margin-bottom:1.5rem;border:1px solid #fecaca}.success-message{background-color:#dcfce7;color:#16a34a;padding:1rem;border-radius:8px;margin-bottom:1.5rem;border:1px solid #bbf7d0}.chat-channel-form-card{background:#fff;border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 4px 6px -1px #0000001a}.chat-channel-form-card h2{color:#2d4f6b;margin:0 0 1.5rem;font-size:1.4rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#374151}.form-help{font-size:.875rem;color:#6b7280;margin:0 0 .75rem}.form-group input[type=text],.form-group textarea{width:100%;padding:.75rem;border:2px solid #e5e7eb;border-radius:8px;font-size:1rem;transition:border-color .2s}.form-group input[type=text]:focus,.form-group textarea:focus{outline:none;border-color:#2d4f6b}.groups-selection{display:flex;flex-wrap:wrap;gap:.75rem;padding:1rem;background:#f8fafc;border-radius:8px;border:1px solid #e5e7eb}.group-checkbox{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#fff;border-radius:6px;cursor:pointer;transition:all .2s;border:1px solid #e5e7eb}.group-checkbox:hover{border-color:#2d4f6b}.group-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer}.group-checkbox input[type=checkbox]:checked+span{color:#2d4f6b;font-weight:500}.no-groups{color:#6b7280;font-style:italic}.form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:1.5rem}.btn-cancel,.btn-save{padding:.75rem 1.5rem;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s;border:none}.btn-cancel{background-color:#f1f5f9;color:#64748b}.btn-cancel:hover{background-color:#e2e8f0}.btn-save{background-color:#2d4f6b;color:#fff}.btn-save:hover{background-color:#1e3a52}.loading{text-align:center;padding:3rem;color:#6b7280}.no-channels{text-align:center;padding:4rem 2rem;background:#fff;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a}.empty-icon{font-size:4rem;color:#d1d5db;margin-bottom:1rem}.no-channels p{color:#6b7280;margin:.5rem 0}.no-channels .hint{font-size:.875rem}.channels-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.channel-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 4px 6px -1px #0000001a;transition:transform .2s,box-shadow .2s;position:relative}.channel-card:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px #0000001a}.channel-card.inactive{opacity:.7;background:#f8fafc}.channel-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.channel-header h3{margin:0;color:#1f2937;font-size:1.2rem}.status-toggle{display:flex;align-items:center;gap:.35rem;padding:.35rem .75rem;border-radius:20px;font-size:.75rem;font-weight:500;cursor:pointer;border:none;transition:all .2s}.status-toggle.active{background:#dcfce7;color:#16a34a}.status-toggle:not(.active){background:#fee2e2;color:#dc2626}.channel-description{color:#6b7280;font-size:.9rem;margin:0 0 1rem;line-height:1.5}.channel-groups{margin-bottom:1rem}.channel-groups strong{font-size:.85rem;color:#374151;display:block;margin-bottom:.5rem}.groups-badges{display:flex;flex-wrap:wrap;gap:.5rem}.group-badge{background:#e0e7ff;color:#4338ca;padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:500}.no-groups-badge{color:#9ca3af;font-size:.85rem;font-style:italic}.channel-meta{font-size:.8rem;color:#9ca3af;margin-bottom:1rem}.channel-actions{display:flex;justify-content:flex-end;gap:.5rem;padding-top:1rem;border-top:1px solid #e5e7eb}.btn-edit,.btn-delete,.btn-clear-history{width:36px;height:36px;border-radius:8px;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.btn-edit{background:#f1f5f9;color:#2d4f6b}.btn-edit:hover{background:#2d4f6b;color:#fff}.btn-clear-history{background:#fef3c7;color:#d97706}.btn-clear-history:hover{background:#d97706;color:#fff}.btn-delete{background:#fee2e2;color:#dc2626}.btn-delete:hover{background:#dc2626;color:#fff}@media(max-width:768px){.manage-chat-channels-page{padding:1rem}.page-header{flex-direction:column;align-items:flex-start}.header-actions{width:100%;justify-content:space-between}.channels-grid{grid-template-columns:1fr}.chat-channel-form-card{padding:1.5rem}}.manage-matieres{padding:2rem}.form-container{background:#fff;border-radius:12px;padding:2rem;width:100%;max-width:500px;max-height:90vh;overflow-y:auto}.form-group input[type=color]{height:45px;padding:.25rem;cursor:pointer}.matiere-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000000d;transition:transform .3s;position:relative}.matiere-card:hover{transform:translateY(-4px)}.matiere-card.inactive{opacity:.7}.matiere-header{padding:1.5rem;color:#fff;display:flex;justify-content:space-between;align-items:center}.matiere-header svg{font-size:1.5rem}.status-badge.active{background:#ffffffe6;color:#16a34a}.status-badge.inactive{background:#ffffffe6;color:#dc2626}.matiere-content{padding:1.25rem}.matiere-content h3{margin:0 0 .5rem;font-size:1.1rem;color:#1e293b}.matiere-content p{margin:0 0 1rem;color:#64748b;font-size:.85rem}.matiere-stats{display:flex;gap:1rem;color:#64748b;font-size:.8rem}.matiere-actions{display:flex;gap:.5rem;padding:1rem 1.25rem;border-top:1px solid #f1f5f9}.edit-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem;background:#f1f5f9;border:none;border-radius:6px;color:#475569;cursor:pointer}.delete-btn{padding:.5rem;background:none;border:1px solid #fecaca;border-radius:6px;color:#dc2626;cursor:pointer}.delete-confirm{position:absolute;top:0;left:0;width:100%;height:100%;background:#fffffff2;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:12px}.delete-confirm p{margin:0 0 1rem;color:#374151}.confirm-actions{display:flex;gap:.5rem}.confirm-actions button{padding:.5rem 1rem;border:none;border-radius:6px;cursor:pointer}.confirm-delete{background:#dc2626;color:#fff}@media(max-width:768px){.manage-matieres{padding:1rem}.page-header{flex-direction:column;gap:1rem;align-items:flex-start}.add-btn{width:100%;justify-content:center}.form-container{margin:1rem;padding:1.5rem}.form-row{grid-template-columns:1fr}}.manage-teachers{padding:2rem}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.add-btn{display:inline-flex;align-items:center;gap:.5rem;background:#2d4f6b;color:#fff;padding:.75rem 1.5rem;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s}.add-btn:hover{background:#1f3647}.error-message{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:1rem;border-radius:8px;margin-bottom:1rem}.success-message{background:#f0fdf4;border:1px solid #bbf7d0;color:#16a34a;padding:1rem;border-radius:8px;margin-bottom:1rem}.search-bar{display:flex;align-items:center;gap:.75rem;background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:.75rem 1rem;margin-bottom:1.5rem}.search-bar svg{color:#9ca3af}.search-bar input{border:none;outline:none;width:100%;font-size:.95rem}.form-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.form-container{background:#fff;border-radius:12px;padding:2rem;width:100%;max-width:600px;max-height:90vh;overflow-y:auto}.form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.form-header h2{margin:0;color:#1e3a5f}.close-btn{background:none;border:none;font-size:1.25rem;color:#64748b;cursor:pointer}.form-group{margin-bottom:1rem}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.75rem;border:1px solid #e5e7eb;border-radius:8px;font-size:.95rem}.form-group select[multiple]{min-height:120px;padding:.5rem}.form-group select[multiple] option{padding:.5rem;margin:.125rem 0}.form-group select[multiple] option:checked{background-color:#3182ce;color:#fff}.checkbox-group label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.checkbox-label input{width:auto}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem}.cancel-btn{padding:.75rem 1.5rem;background:#f1f5f9;border:none;border-radius:8px;cursor:pointer}.save-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#2d4f6b;color:#fff;border:none;border-radius:8px;font-weight:500;cursor:pointer}.teachers-table-container{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000000d}.teachers-table{width:100%;border-collapse:collapse}.teachers-table th,.teachers-table td{padding:1rem;text-align:left;border-bottom:1px solid #f1f5f9}.teachers-table th{background:#f8fafc;font-weight:600;color:#475569;font-size:.85rem;text-transform:uppercase}.teachers-table tr:hover{background:#f8fafc}.teachers-table tr.inactive{opacity:.6}.teacher-name{display:flex;align-items:center;gap:.75rem}.teacher-name svg{color:#3182ce}.no-matiere{color:#9ca3af;font-style:italic;font-size:.85rem}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:500}.status-badge.confirmed{background:#dcfce7;color:#16a34a}.status-badge.pending{background:#fef3c7;color:#d97706}.status-badge.suspended{background:#fef2f2;color:#dc2626}.action-buttons{display:flex;gap:.5rem}.edit-btn{padding:.5rem;background:#f1f5f9;border:none;border-radius:6px;color:#475569;cursor:pointer;transition:all .2s}.delete-confirm-inline{display:flex;align-items:center;gap:.5rem;margin-top:.5rem;font-size:.8rem}.delete-confirm-inline button{padding:.25rem .5rem;border:none;border-radius:4px;cursor:pointer;font-size:.75rem}.delete-confirm-inline button:first-of-type{background:#dc2626;color:#fff}.delete-confirm-inline button:last-of-type{background:#f1f5f9}.empty-state{text-align:center;padding:4rem;background:#fff;border-radius:12px}.empty-state button{background:#2d4f6b;color:#fff;padding:.75rem 1.5rem;border:none;border-radius:8px;cursor:pointer}@media(max-width:768px){.manage-teachers{padding:1rem}.page-header{flex-direction:column;gap:1rem;align-items:flex-start}.add-btn{width:100%;justify-content:center}.form-container{margin:1rem;padding:1.5rem}.form-row{grid-template-columns:1fr}.teachers-table-container{overflow-x:auto}.teachers-table{min-width:700px}}.manage-sessions-page{padding:2rem;max-width:1600px;margin:0 auto}.page-header h1{font-size:2rem;color:#1e293b;margin-bottom:.5rem}.page-header p{color:#64748b;font-size:1rem}.alert{padding:1rem;border-radius:8px;margin-bottom:1.5rem;display:flex;align-items:center;gap:.5rem}.alert-error{background-color:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.alert-success{background-color:#dcfce7;color:#166534;border:1px solid #86efac}.sessions-filter{display:flex;gap:1rem;margin-bottom:1.5rem;align-items:center;flex-wrap:wrap}.filter-input{padding:.75rem;border:1px solid #cbd5e1;border-radius:8px;font-size:1rem;width:200px}.per-page-select{padding:.75rem;border:1px solid #cbd5e1;border-radius:8px;font-size:1rem;background-color:#fff;cursor:pointer}.refresh-btn{padding:.75rem 1.5rem;background-color:#3b82f6;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;transition:background-color .2s}.refresh-btn:hover{background-color:#2563eb}.sessions-summary{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:1rem;font-size:.9rem;color:#64748b}.loading,.no-sessions{text-align:center;padding:3rem;color:#64748b}.no-sessions svg{font-size:3rem;margin-bottom:1rem;opacity:.5}.sessions-table-container{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow-x:auto;margin-bottom:1.5rem}.sessions-table{width:100%;border-collapse:collapse;min-width:1000px}.sessions-table thead{background-color:#f1f5f9;position:sticky;top:0;z-index:10}.sessions-table th{padding:1rem;text-align:left;font-weight:600;color:#475569;font-size:.9rem;text-transform:uppercase;white-space:nowrap}.sessions-table td{padding:1rem;border-top:1px solid #e2e8f0;color:#334155;vertical-align:top}.sessions-table tbody tr{transition:background-color .2s}.sessions-table tbody tr:hover{background-color:#f8fafc}.sessions-table tbody tr.active{background-color:#f0fdf4}.sessions-table tbody tr.active:hover{background-color:#dcfce7}.sessions-table tbody tr.inactive{background-color:#fef2f2;opacity:.8}.sessions-table tbody tr.inactive:hover{background-color:#fee2e2;opacity:1}.sessions-table tbody tr.suspicious{border-left:4px solid #f59e0b;background-color:#fffbeb}.sessions-table tbody tr.suspicious.active{background-color:#fef3c7}.sessions-table tbody tr.suspicious.inactive{background-color:#fee2e2}.student-info{display:flex;flex-direction:column;gap:.25rem}.student-name{font-weight:600;color:#1e293b;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.student-id{font-size:.75rem;color:#94a3b8}.suspicious-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;background-color:#f59e0b;color:#fff;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:500;white-space:nowrap}.status-badge.active{background-color:#dcfce7;color:#166534}.status-badge.inactive{background-color:#fee2e2;color:#991b1b}.device-fingerprint{font-family:monospace;font-size:.85rem;color:#64748b}.session-stats{font-size:.85rem}.stats-info{display:flex;flex-direction:column;gap:.25rem;color:#64748b}.stats-info span{white-space:nowrap}.action-buttons{display:flex;gap:.5rem;align-items:center}.btn-revoke,.btn-re-allow{padding:.5rem;border:none;border-radius:6px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background-color .2s;min-width:36px;height:36px}.btn-revoke{background-color:#dc2626;color:#fff}.btn-revoke:hover{background-color:#b91c1c}.btn-re-allow{background-color:#10b981;color:#fff}.btn-re-allow:hover{background-color:#059669}.pagination{display:flex;justify-content:center;align-items:center;gap:1rem;padding:1rem;background-color:#fff;border:1px solid #e2e8f0;border-radius:8px}.pagination-btn{padding:.75rem 1.5rem;background-color:#3b82f6;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;display:flex;align-items:center;gap:.5rem;transition:background-color .2s}.pagination-btn:hover:not(:disabled){background-color:#2563eb}.pagination-btn:disabled{background-color:#cbd5e1;color:#64748b;cursor:not-allowed}.pagination-info{font-weight:500;color:#475569}@media(max-width:1200px){.sessions-table-container{overflow-x:auto}}@media(max-width:768px){.manage-sessions-page{padding:1rem}.sessions-filter{flex-direction:column;align-items:stretch}.filter-input,.per-page-select{width:100%}.sessions-table{font-size:.85rem}.sessions-table th,.sessions-table td{padding:.5rem}.pagination{flex-direction:column;gap:.5rem}.pagination-info{order:-1}}.assign-extern-students-page{padding:2rem;background-color:#f4f7f6;min-height:calc(100vh - 60px)}.btn-refresh{background-color:#6c757d;color:#fff;border:none;padding:.75rem 1.25rem;border-radius:8px;cursor:pointer;font-size:.9rem;display:flex;align-items:center;gap:.5rem;transition:background-color .3s ease}.btn-refresh:hover{background-color:#5a6268}.tables-container{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:2rem}.table-section{background-color:#fff;border-radius:10px;box-shadow:0 2px 10px #0000000d;overflow:hidden;display:flex;flex-direction:column}.table-filters{padding:1.5rem;border-bottom:1px solid #e0e0e0;display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:end}.table-filters .filter-group{display:flex;flex-direction:column}.table-filters .filter-group label{margin-bottom:.5rem;color:#333;font-weight:500;font-size:.9rem}.filter-input,.filter-select{padding:.75rem;border:1px solid #ddd;border-radius:5px;font-size:1rem;transition:border-color .3s,box-shadow .3s;width:100%;box-sizing:border-box}.filter-input:focus,.filter-select:focus{outline:none;border-color:#2d4f6b;box-shadow:0 0 0 2px #2d4f6b1a}.btn-bulk-toggle{grid-column:1 / -1;background-color:#2d4f6b;color:#fff;border:none;padding:.75rem 1rem;border-radius:5px;cursor:pointer;font-size:.9rem;font-weight:500;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:background-color .3s ease;margin-top:.5rem}.btn-bulk-toggle:hover{background-color:#1e3a5f}.table-wrapper{flex:1;overflow-y:auto;max-height:calc(100vh - 400px)}.data-table{width:100%;border-collapse:collapse}.data-table thead{background-color:#f8f9fa;position:sticky;top:0;z-index:10}.data-table th{padding:1rem;text-align:left;font-weight:600;color:#2d4f6b;border-bottom:2px solid #dee2e6;font-size:.9rem;text-transform:uppercase}.data-table td{padding:1rem;border-bottom:1px solid #e9ecef;color:#333}.data-table tbody tr{cursor:pointer;transition:background-color .2s ease}.data-table tbody tr:hover{background-color:#f8f9fa}.data-table tbody tr.selected-row{background-color:#e6f0f7;border-left:4px solid #2d4f6b}.data-table tbody tr.assigned-row{background-color:#d4edda}.data-table tbody tr.assigned-row.selected-row{background-color:#c3e6cb}.loading-cell,.empty-cell{text-align:center;padding:3rem;color:#6c757d;font-style:italic}.badge-info{background-color:#d1ecf1;color:#0c5460}.btn-select{background-color:#28a745;color:#fff;border:none;padding:.5rem 1rem;border-radius:5px;cursor:pointer;font-size:.85rem;font-weight:500;display:flex;align-items:center;gap:.5rem;transition:all .2s ease}.btn-select:hover{background-color:#218838;transform:translateY(-1px)}.btn-select.active{background-color:#2d4f6b}.btn-add{background-color:#28a745;color:#fff;border:none;padding:.4rem .8rem;border-radius:5px;cursor:pointer;font-size:.85rem;font-weight:500;display:flex;align-items:center;gap:.4rem;transition:all .2s ease}.btn-add:hover{background-color:#218838}.btn-remove{background-color:#dc3545;color:#fff;border:none;padding:.4rem .8rem;border-radius:5px;cursor:pointer;font-size:.85rem;font-weight:500;display:flex;align-items:center;gap:.4rem;transition:all .2s ease}.btn-remove:hover{background-color:#c82333}.data-table input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#2d4f6b}.action-bar{background-color:#fff;padding:1.5rem;border-radius:10px;box-shadow:0 2px 10px #0000000d;display:flex;justify-content:space-between;align-items:center;position:sticky;bottom:0;z-index:100;gap:1.5rem}.selection-info{color:#333;font-size:1rem;flex:1}.selection-info strong{color:#2d4f6b;font-weight:600;display:block;margin-bottom:.5rem}.selection-details{display:flex;flex-wrap:wrap;gap:.5rem;font-size:.9rem;color:#666}.selection-details .assigned-count{color:#28a745;font-weight:500}.selection-details .unassigned-count{color:#ffc107;font-weight:500}.action-buttons{display:flex;gap:1rem;align-items:center}.btn-assign-bulk,.btn-deassign-bulk{color:#fff;border:none;padding:.8rem 1.5rem;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;display:flex;align-items:center;gap:.75rem;transition:background-color .3s ease,transform .2s ease}.btn-assign-bulk{background-color:#28a745}.btn-assign-bulk:hover:not(:disabled){background-color:#218838;transform:translateY(-1px)}.btn-assign-bulk:disabled{background-color:#ccc;cursor:not-allowed}.btn-deassign-bulk{background-color:#dc3545}.btn-deassign-bulk:hover:not(:disabled){background-color:#c82333;transform:translateY(-1px)}.btn-deassign-bulk:disabled{background-color:#ccc;cursor:not-allowed}@media(max-width:1400px){.tables-container{grid-template-columns:1fr}}@media(max-width:768px){.assign-extern-students-page{padding:1rem}.table-filters{grid-template-columns:1fr}.action-bar{flex-direction:column;gap:1rem;align-items:stretch}.action-buttons{flex-direction:column;width:100%}.btn-assign-bulk,.btn-deassign-bulk{width:100%;justify-content:center}}.manage-packs-page{padding:2rem;background-color:#f4f7f6;min-height:calc(100vh - 60px)}.header-actions{display:flex;gap:1rem;align-items:center}.btn-refresh,.btn-create{background-color:#2d4f6b;color:#fff;border:none;padding:.75rem 1.25rem;border-radius:8px;cursor:pointer;font-size:.9rem;display:flex;align-items:center;gap:.5rem;transition:background-color .3s ease}.btn-refresh:hover{background-color:#1e3a5f}.btn-create{background-color:#28a745}.btn-create:hover{background-color:#218838}.packs-container{background-color:#fff;border-radius:10px;padding:2rem;box-shadow:0 2px 10px #0000000d}.empty-state p{margin-bottom:1rem;font-size:1.1rem}.packs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem}.pack-card{background-color:#fff;border:1px solid #e0e0e0;border-radius:10px;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.pack-card:hover{transform:translateY(-4px);box-shadow:0 4px 12px #0000001a}.pack-thumbnail{width:100%;height:200px;overflow:hidden;background-color:#f0f0f0}.pack-thumbnail img{width:100%;height:100%;object-fit:cover}.pack-content{padding:1.5rem}.pack-name{font-size:1.3rem;color:#2d4f6b;margin:0 0 .5rem;font-weight:600}.pack-teacher{color:#666;font-size:.9rem;margin-bottom:.75rem}.pack-rating{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.star{font-size:1.2rem;color:#ffc107}.star.empty{color:#ddd}.star.half{opacity:.5}.rating-value{font-weight:600;color:#333;font-size:.9rem}.pack-price{font-size:1.5rem;font-weight:700;color:#28a745;margin-bottom:.75rem}.pack-meta{display:flex;gap:1rem;margin-bottom:1rem;font-size:.85rem;color:#666}.pack-description{color:#666;font-size:.9rem;line-height:1.5;margin-bottom:1rem}.pack-actions{display:flex;gap:.5rem;padding-top:1rem;border-top:1px solid #e0e0e0}.btn-manage-enrollments,.btn-edit,.btn-delete{flex:1;padding:.6rem;border:none;border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:500;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .2s ease}.btn-manage-enrollments{background-color:#17a2b8;color:#fff}.btn-manage-enrollments:hover{background-color:#138496}.btn-edit{background-color:#2d4f6b;color:#fff}.btn-edit:hover{background-color:#1e3a5f}.btn-delete{background-color:#dc3545;color:#fff}.btn-delete:hover{background-color:#c82333}.filters-section{background-color:#fff;border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 2px 10px #0000000d}.filters-grid{display:grid;grid-template-columns:4fr 3fr 3fr 2fr auto;column-gap:3.5rem;row-gap:1rem;align-items:end}@media(min-width:1400px){.filters-grid{grid-template-columns:5fr 3.5fr 3.5fr 2.5fr auto;column-gap:4.5rem}}.filter-group{display:flex;flex-direction:column;gap:.5rem;min-width:0}.filter-group label{font-weight:600;color:#333;font-size:.9rem;margin-bottom:.25rem}.filter-group input,.filter-group select{padding:.875rem 1rem;border:2px solid #e0e0e0;border-radius:8px;font-size:.95rem;transition:all .3s;width:100%;box-sizing:border-box;background-color:#fff}.filter-group input:focus,.filter-group select:focus{outline:none;border-color:#2d4f6b;box-shadow:0 0 0 3px #2d4f6b1a;background-color:#fff}.filter-group input:hover,.filter-group select:hover{border-color:#b0b0b0}.btn-clear-filters{background-color:#6c757d;color:#fff;border:none;padding:.875rem 1.5rem;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:600;transition:all .3s;white-space:nowrap;height:fit-content;align-self:end;margin-bottom:0}.btn-clear-filters:hover{background-color:#5a6268;transform:translateY(-1px);box-shadow:0 2px 8px #6c757d4d}@media(max-width:991px)and (min-width:768px){.filters-grid{grid-template-columns:repeat(2,1fr);gap:2rem}}@media(max-width:768px){.filters-section{padding:1.5rem}.filters-grid{grid-template-columns:1fr;gap:1.5rem}.btn-clear-filters{width:100%;justify-self:stretch}}.pack-meta-info{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.75rem}.pack-niveau{color:#666;font-size:.85rem;font-weight:500}.pagination{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:2rem;padding-top:2rem;border-top:1px solid #e0e0e0}.pagination-btn{padding:.75rem 1.25rem;background-color:#2d4f6b;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;display:flex;align-items:center;gap:.5rem;transition:background-color .2s}.pagination-btn:hover:not(:disabled){background-color:#1e3a5f}.pagination-btn:disabled{background-color:#ccc;cursor:not-allowed;opacity:.6}.pagination-info{font-size:.95rem;color:#333;font-weight:500;display:flex;align-items:center;gap:.5rem}.pagination-total{color:#6c757d;font-size:.85rem;font-weight:400}@media(max-width:768px){.manage-packs-page{padding:1rem}.page-header{flex-direction:column;align-items:flex-start;gap:1rem}.header-actions{width:100%;flex-direction:column}.header-actions button{width:100%}.filters-grid{grid-template-columns:1fr;gap:1.5rem}.filter-group{width:100%}.packs-grid{grid-template-columns:1fr}.pagination{flex-direction:column;gap:.75rem}.pagination-btn{width:100%;justify-content:center}}.create-pack-page{padding:2rem;background-color:#f4f7f6;min-height:calc(100vh - 60px)}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #e0e0e0}.page-header h1{font-size:1.8rem;color:#2d4f6b;margin:0}.btn-back{background-color:#6c757d;color:#fff;border:none;padding:.75rem 1.25rem;border-radius:8px;cursor:pointer;font-size:.9rem;transition:background-color .3s ease}.pack-form{background-color:#fff;border-radius:10px;padding:2rem;box-shadow:0 2px 10px #0000000d;max-width:1200px;margin:0 auto}.form-section{margin-bottom:3rem;padding-bottom:2rem;border-bottom:1px solid #e0e0e0}.form-section:last-of-type{border-bottom:none}.form-section h2{font-size:1.4rem;color:#2d4f6b;margin-bottom:1.5rem;font-weight:600}.form-group label{display:block;margin-bottom:.5rem;color:#333;font-weight:500}.form-group input[type=text],.form-group input[type=number],.form-group textarea,.form-group select{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:6px;font-size:1rem;transition:border-color .3s,box-shadow .3s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#2d4f6b;box-shadow:0 0 0 2px #2d4f6b1a}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.rating-selector{display:flex;align-items:center;gap:.5rem}.star-btn{background:none;border:none;font-size:1.5rem;color:#ddd;cursor:pointer;padding:0;transition:color .2s}.star-btn:hover,.star-btn.active{color:#ffc107}.rating-value{margin-left:.5rem;font-weight:600;color:#333}.courses-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem;max-height:300px;overflow-y:auto;padding:1rem;border:1px solid #e0e0e0;border-radius:6px}.course-checkbox{display:flex;align-items:center;gap:.5rem;cursor:pointer;padding:.5rem;border-radius:4px;transition:background-color .2s}.course-checkbox:hover{background-color:#f8f9fa}.course-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#2d4f6b}.chapter-item{margin-bottom:2rem;padding:1.5rem;border:1px solid #e0e0e0;border-radius:8px;background-color:#f8f9fa}.chapter-header{display:flex;gap:1rem;margin-bottom:1rem;align-items:center}.chapter-title-input{flex:1;padding:.75rem;border:1px solid #ddd;border-radius:6px;font-size:1rem;font-weight:600}.btn-remove-chapter{background-color:#dc3545;color:#fff;border:none;padding:.75rem 1rem;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.btn-remove-chapter:hover{background-color:#c82333}.chapter-items{margin-left:1rem}.chapter-item-row{display:grid;grid-template-columns:120px 1fr 200px auto;gap:.75rem;margin-bottom:.75rem;align-items:center}.item-type-select,.item-title-input,.item-icon-select{padding:.6rem;border:1px solid #ddd;border-radius:6px;font-size:.9rem}.item-icon-select-wrapper{display:flex;align-items:center;gap:.5rem;position:relative}.item-icon-select{flex:1;min-width:0}.icon-preview{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background-color:#f8f9fa;border:1px solid #ddd;border-radius:4px;color:#2d4f6b;font-size:1.1rem;flex-shrink:0}.item-title-input{min-width:0}.btn-remove-item{background-color:#dc3545;color:#fff;border:none;padding:.6rem;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.btn-remove-item:hover{background-color:#c82333}.btn-add-chapter,.btn-add-item{background-color:#28a745;color:#fff;border:none;padding:.6rem 1rem;border-radius:6px;cursor:pointer;font-size:.9rem;display:flex;align-items:center;gap:.5rem;transition:background-color .2s}.btn-add-chapter:hover,.btn-add-item:hover{background-color:#218838}.form-actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:2rem;border-top:1px solid #e0e0e0}.btn-submit,.btn-cancel{padding:.75rem 1.5rem;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;display:flex;align-items:center;gap:.5rem;transition:all .2s}.btn-submit{background-color:#2d4f6b;color:#fff}.btn-submit:hover:not(:disabled){background-color:#1e3a5f}.btn-submit:disabled{background-color:#ccc;cursor:not-allowed}.btn-cancel{background-color:#6c757d;color:#fff}.btn-cancel:hover{background-color:#5a6268}.loading{text-align:center;padding:3rem;color:#6c757d;font-size:1.1rem}.thumbnail-upload-container{display:flex;flex-direction:column;gap:1rem}.thumbnail-preview{position:relative;width:200px;height:200px;border-radius:8px;overflow:hidden;border:2px solid #e0e0e0}.thumbnail-preview img{width:100%;height:100%;object-fit:cover}.btn-remove-thumbnail{position:absolute;top:.5rem;right:.5rem;background-color:#dc3545e6;color:#fff;border:none;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .2s}.btn-remove-thumbnail:hover{background-color:#dc3545}.thumbnail-upload-label{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background-color:#f8f9fa;border:2px dashed #2d4f6b;border-radius:8px;cursor:pointer;color:#2d4f6b;font-weight:500;transition:all .2s;width:fit-content}.thumbnail-upload-label:hover{background-color:#e9ecef;border-color:#1e3a5f}.section-description{color:#6c757d;margin-bottom:1.5rem;font-size:.95rem}.courses-selection-container{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.courses-list-modern{display:flex;flex-direction:column;gap:.75rem;max-height:600px;overflow-y:auto;padding:1rem;background-color:#f8f9fa;border-radius:8px;border:1px solid #e0e0e0}.course-item-modern{background-color:#fff;border-radius:8px;border:1px solid #e0e0e0;overflow:hidden;transition:box-shadow .2s}.course-item-modern:hover{box-shadow:0 2px 8px #00000014}.course-item-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;background-color:#fff}.course-item-controls{display:flex;align-items:center;gap:.75rem;flex:1}.expand-btn{background:none;border:none;color:#6c757d;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.expand-btn:hover{background-color:#f8f9fa}.course-checkbox-modern{display:flex;align-items:center;gap:.75rem;cursor:pointer;flex:1;-webkit-user-select:none;user-select:none}.course-checkbox-modern input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:#2d4f6b}.course-icon{color:#2d4f6b;font-size:1.1rem}.course-title{font-weight:500;color:#333;flex:1}.videos-count{font-size:.85rem;color:#6c757d;background-color:#e9ecef;padding:.25rem .75rem;border-radius:12px}.course-videos-list{padding:.5rem 1rem 1rem 3rem;background-color:#f8f9fa;border-top:1px solid #e0e0e0;display:flex;flex-direction:column;gap:.5rem}.video-checkbox-modern{display:flex;align-items:center;gap:.75rem;cursor:pointer;padding:.5rem;border-radius:6px;transition:background-color .2s;-webkit-user-select:none;user-select:none}.video-checkbox-modern:hover{background-color:#fff}.video-checkbox-modern input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#2d4f6b}.video-checkbox-modern input[type=checkbox]:disabled{opacity:.5;cursor:not-allowed}.video-icon{color:#dc3545;font-size:1rem}.video-title{font-size:.9rem;color:#555;flex:1}.selected-items-container{background-color:#fff;border-radius:8px;padding:1.5rem;border:1px solid #e0e0e0}.selected-items-container h3{font-size:1.2rem;color:#2d4f6b;margin-bottom:.5rem}.selected-items-hint{font-size:.85rem;color:#6c757d;margin-bottom:1rem}.selected-items-list{display:flex;flex-direction:column;gap:.75rem;max-height:500px;overflow-y:auto}.selected-item-card{display:flex;align-items:center;gap:1rem;padding:1rem;background-color:#f8f9fa;border:2px solid #e0e0e0;border-radius:8px;cursor:move;transition:all .2s}.selected-item-card:hover{border-color:#2d4f6b;box-shadow:0 2px 8px #00000014}.selected-item-card.dragging{opacity:.5;border-color:#2d4f6b}.drag-handle{color:#6c757d;cursor:grab;font-size:1.2rem;-webkit-user-select:none;user-select:none}.selected-item-info{display:flex;align-items:center;gap:.75rem;flex:1}.item-icon{color:#2d4f6b;font-size:1.2rem}.selected-item-info>div{display:flex;flex-direction:column;gap:.25rem}.item-label{font-size:.75rem;color:#6c757d;text-transform:uppercase;letter-spacing:.5px}.item-title{font-weight:500;color:#333}.item-course-name{font-size:.85rem;color:#6c757d;font-style:italic}.btn-remove-selected{background-color:#dc3545;color:#fff;border:none;padding:.5rem;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.btn-remove-selected:hover{background-color:#c82333}@media(max-width:1200px){.courses-selection-container{grid-template-columns:1fr}}@media(max-width:768px){.create-pack-page{padding:1rem}.form-row,.chapter-item-row{grid-template-columns:1fr}.form-actions{flex-direction:column}.form-actions button{width:100%}.courses-selection-container{grid-template-columns:1fr}.selected-item-card{flex-wrap:wrap}}.manage-pack-enrollments-page{padding:2rem;background-color:#f4f7f6;min-height:calc(100vh - 60px)}.page-header{margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #e0e0e0}.page-header h1{font-size:1.8rem;color:#2d4f6b;margin:.5rem 0 0}.back-button{background:none;border:none;color:#2d4f6b;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;font-size:.9rem;margin-bottom:.5rem;transition:color .2s}.back-button:hover{color:#1e3a5f}.alert{padding:1rem;margin-bottom:1.5rem;border-radius:8px;font-weight:500;text-align:center}.alert-error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.alert-success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.enrollments-container{background-color:#fff;border-radius:10px;padding:2rem;box-shadow:0 2px 10px #0000000d}.loading,.empty-state{text-align:center;padding:3rem;color:#6c757d}.empty-state{display:flex;flex-direction:column;align-items:center;gap:1rem}.empty-state svg{color:#ccc}.bulk-actions{display:flex;align-items:center;gap:1rem;padding:1rem;background-color:#f8f9fa;border-radius:8px;margin-bottom:1.5rem}.bulk-actions-info{font-weight:600;color:#2d4f6b}.bulk-status-select{padding:.5rem 1rem;border:2px solid #e0e0e0;border-radius:6px;font-size:.9rem;cursor:pointer}.btn-bulk-update{background-color:#2d4f6b;color:#fff;border:none;padding:.5rem 1.5rem;border-radius:6px;cursor:pointer;font-weight:500;transition:background-color .2s}.btn-bulk-update:hover:not(:disabled){background-color:#1e3a5f}.btn-bulk-update:disabled{opacity:.5;cursor:not-allowed}.enrollments-table-container{overflow-x:auto}.enrollments-table{width:100%;border-collapse:collapse}.enrollments-table thead{background-color:#f8f9fa}.enrollments-table th,.enrollments-table td{padding:1rem;text-align:left;border-bottom:1px solid #e0e0e0}.enrollments-table th{font-weight:600;color:#2d4f6b}.enrollments-table tbody tr:hover{background-color:#f8f9fa}.status-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.25rem .75rem;border-radius:20px;font-size:.85rem;font-weight:500}.status-actions{display:flex;gap:.5rem;flex-wrap:wrap}.btn-status{padding:.4rem .8rem;border:none;border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:500;display:inline-flex;align-items:center;gap:.4rem;transition:all .2s}.btn-status.approve{background-color:#10b981;color:#fff}.btn-status.approve:hover{background-color:#059669}.btn-status.suspend{background-color:#ef4444;color:#fff}.btn-status.suspend:hover{background-color:#dc2626}.btn-status.pending{background-color:#f59e0b;color:#fff}.btn-status.pending:hover{background-color:#d97706}@media(max-width:768px){.manage-pack-enrollments-page{padding:1rem}.enrollments-table-container{overflow-x:scroll}.status-actions{flex-direction:column}.btn-status{width:100%;justify-content:center}}.student-dashboard-page{padding:2rem}.dashboard-header{margin-bottom:2rem}.dashboard-header h1{color:#2d4f6b;margin:0 0 .5rem;font-size:2rem}.dashboard-header p{color:#666;margin:0}.dashboard-content{background-color:transparent;border-radius:10px;padding:0;box-shadow:none;min-height:400px}.empty-dashboard-message{text-align:center;color:#666}.empty-icon{font-size:4rem;margin-bottom:1rem;color:#2d4f6b;display:flex;align-items:center;justify-content:center}.empty-dashboard-message h2{color:#2d4f6b;margin:0 0 1rem;font-size:1.5rem}.empty-dashboard-message p{color:#999;margin:0;font-size:1rem}.progress-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.metric-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000d;display:flex;align-items:center;gap:1rem;transition:transform .2s,box-shadow .2s}.metric-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.metric-icon{width:60px;height:60px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:#fff;flex-shrink:0}.metric-icon.courses{background:linear-gradient(135deg,#667eea,#764ba2)}.metric-icon.videos{background:linear-gradient(135deg,#f093fb,#f5576c)}.metric-icon.livestreams{background:linear-gradient(135deg,#4facfe,#00f2fe)}.metric-icon.attention{background:linear-gradient(135deg,#43e97b,#38f9d7)}.metric-content h3{margin:0 0 .25rem;font-size:2rem;color:#1e3a5f;font-weight:700}.metric-content p{margin:0;color:#64748b;font-size:.9rem}.course-progress-section{margin-top:2rem}.course-progress-section h2{color:#1e3a5f;margin:0 0 1.5rem;font-size:1.5rem}.course-progress-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.course-progress-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000000d;text-decoration:none;color:inherit;transition:transform .2s,box-shadow .2s;position:relative;display:flex;flex-direction:column}.course-progress-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.course-thumbnail{width:100%;height:200px;overflow:hidden;background:#000;position:relative}.thumbnail-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:3rem}.course-info{padding:1.5rem;flex:1;display:flex;flex-direction:column;gap:1rem}.course-info h3{margin:0;color:#1e3a5f;font-size:1.2rem;font-weight:600;word-wrap:break-word}.progress-details{display:flex;flex-direction:column;gap:.75rem}.progress-stat{display:flex;justify-content:space-between;align-items:center;font-size:.9rem}.stat-label{color:#64748b;font-weight:500}.stat-value{color:#1e3a5f;font-weight:600}.progress-bar-container{margin-top:.25rem}.progress-bar{width:100%;height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#2563eb);border-radius:4px;transition:width .3s ease}.completed-badge{position:absolute;top:1rem;right:1rem;background:#fffffff2;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;color:#16a34a;font-size:1.25rem;box-shadow:0 2px 8px #0000001a}.course-progress-card.disabled{opacity:.6;cursor:not-allowed!important}.course-progress-card.disabled:hover{transform:none;box-shadow:0 2px 8px #0000001a}.status-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:20px;font-size:.875rem;font-weight:500;margin-top:.5rem}.status-badge.pending{background-color:#fef3c7;color:#d97706}.status-badge.suspended{background-color:#fee2e2;color:#dc2626}.status-badge.approved{background-color:#dcfce7;color:#16a34a}.loading-state,.error-state{text-align:center;padding:2rem;color:#64748b}@media(max-width:768px){.student-dashboard-page{padding:1rem}.progress-overview,.course-progress-list{grid-template-columns:1fr}.course-progress-card{flex-direction:column}.course-thumbnail{width:100%;height:auto;aspect-ratio:16/9}}.live-stream-metrics-section{margin-top:2rem}.live-stream-metrics-section h2{color:#1e3a5f;margin:0 0 1.5rem;font-size:1.5rem}.live-stream-metrics-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.live-stream-metric-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000d;transition:transform .2s,box-shadow .2s}.live-stream-metric-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.stream-header{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1rem}.stream-icon{width:48px;height:48px;border-radius:12px;background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}.stream-info{flex:1;min-width:0}.stream-info h3{margin:0 0 .25rem;color:#1e3a5f;font-size:1.1rem;font-weight:600;word-wrap:break-word}.stream-meta{margin:0;color:#64748b;font-size:.85rem}.attention-badge{padding:.5rem 1rem;border-radius:20px;font-weight:600;font-size:.9rem;white-space:nowrap;flex-shrink:0}.stream-stats{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.stream-stat .stat-label{color:#64748b;font-weight:500}.stream-stat .stat-value{color:#1e3a5f;font-weight:600}.stream-stat .stat-value.missed{color:#dc2626}.response-times{padding-top:1rem;border-top:1px solid #e5e7eb}.response-times-label{display:block;color:#64748b;font-size:.85rem;margin-bottom:.5rem;font-weight:500}.response-times-list{display:flex;flex-wrap:wrap;gap:.5rem}.response-time-badge{background:#e0e7ff;color:#3730a3;padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:500}.response-time-more{color:#64748b;font-size:.8rem;align-self:center}@media(max-width:768px){.live-stream-metrics-list{grid-template-columns:1fr}.live-stream-metric-card{padding:1rem}.stream-header{flex-wrap:wrap}.attention-badge{width:100%;text-align:center;margin-top:.5rem}}.student-profile-page{padding:2rem}.profile-header{margin-bottom:2rem}.profile-header h1{color:#2d4f6b;margin:0;font-size:2rem}.success-message{background-color:#d4edda;color:#155724;padding:1rem;border-radius:5px;margin-bottom:1.5rem;border:1px solid #c3e6cb}.profile-content{display:grid;grid-template-columns:300px 1fr;gap:2rem}.profile-picture-section{display:flex;justify-content:center}.profile-picture-container{position:relative;display:flex;flex-direction:column;align-items:center;gap:1rem}.profile-picture,.profile-picture-placeholder{width:200px;height:200px;border-radius:50%;object-fit:cover;border:4px solid #2d4f6b;box-shadow:0 4px 10px #0000001a}.profile-picture-placeholder{background-color:#e0e0e0;display:flex;align-items:center;justify-content:center;color:#999;font-size:4rem}.upload-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background-color:#2d4f6b;color:#fff;border:none;border-radius:5px;cursor:pointer;font-weight:500;transition:background-color .3s,transform .2s}.upload-button:hover{background-color:#1f3647;transform:translateY(-2px);box-shadow:0 4px 8px #2d4f6b4d}.upload-button:active{transform:translateY(0)}.upload-button:disabled{opacity:.6;cursor:not-allowed}.profile-info-section{flex:1}.info-card{background-color:#fff;padding:2rem;border-radius:10px;box-shadow:0 2px 10px #0000001a}.info-card h2{color:#2d4f6b;margin:0 0 1.5rem;font-size:1.5rem;border-bottom:2px solid #e0e0e0;padding-bottom:1rem}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.info-item{display:flex;flex-direction:column;gap:.5rem}.info-item label{color:#666;font-weight:500;font-size:.9rem;text-transform:uppercase}.info-value{color:#333;font-size:1rem}.badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:500}.badge-physical{background-color:#cfe2ff;color:#084298}.badge-online{background-color:#fff3cd;color:#856404}.badge-confirmed{background-color:#d4edda;color:#155724}.badge-pending{background-color:#fff3cd;color:#856404}.badge-suspended{background-color:#f8d7da;color:#721c24}@media(max-width:768px){.student-profile-page{padding:1rem}.profile-content,.info-grid{grid-template-columns:1fr}}.live-chat-container{position:fixed;bottom:100px;right:20px;width:380px;max-width:calc(100vw - 40px);height:500px;max-height:calc(100vh - 150px);background:#fff;border-radius:16px;box-shadow:0 8px 32px #00000026;display:flex;flex-direction:column;z-index:1000;overflow:hidden}[dir=rtl] .live-chat-container{right:auto;left:20px}.live-chat-header{display:flex;align-items:center;justify-content:space-between;padding:16px;background:linear-gradient(135deg,#2d4f6b,#1e3a52);color:#fff}.header-left{display:flex;align-items:center;gap:10px}.chat-icon{font-size:1.4rem}.live-chat-header span{font-weight:600;font-size:1.1rem}.close-chat-btn{background:#fff3;border:none;color:#fff;width:32px;height:32px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.close-chat-btn:hover{background:#ffffff4d}.chat-error{background:#fee2e2;color:#dc2626;padding:10px 16px;display:flex;justify-content:space-between;align-items:center;font-size:.9rem}.chat-error button{background:none;border:none;color:#dc2626;font-size:1.2rem;cursor:pointer}.chat-connecting{background:#fef3c7;color:#92400e;padding:10px 16px;text-align:center;font-size:.9rem}.channel-selector{padding:8px 16px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.channel-selector select{width:100%;padding:8px 12px;border:1px solid #e2e8f0;border-radius:8px;font-size:.9rem;background:#fff}.live-chat-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px;background:#f8fafc}.chat-message{display:flex;flex-direction:column;max-width:85%}.chat-message.student{align-self:flex-start}.chat-message.teacher{align-self:flex-end}.message-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.sender-avatar{width:28px;height:28px;min-width:28px;border-radius:50%;object-fit:cover;border:1px solid #e2e8f0}.sender-avatar-placeholder{width:28px;height:28px;min-width:28px;border-radius:50%;background:linear-gradient(135deg,#2d4f6b,#1e3a52);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;text-transform:uppercase}.message-sender{font-size:.85rem;font-weight:600;color:#475569}.message-sender.teacher{color:#2d4f6b}.message-time{font-size:.75rem;color:#94a3b8}.message-content{background:#fff;padding:10px 14px;border-radius:12px;box-shadow:0 1px 3px #0000001a}.chat-message.teacher .message-content{background:#2d4f6b;color:#fff}.message-content p{margin:0;word-break:break-word;line-height:1.4}.chat-image{max-width:100%;max-height:200px;border-radius:8px;cursor:pointer;transition:transform .2s}.chat-image:hover{transform:scale(1.02)}.chat-video{max-width:100%;max-height:200px;border-radius:8px}.chat-audio-wrapper{width:100%;min-width:250px}.chat-audio{width:100%;height:40px}.live-chat-input{padding:12px 16px;background:#fff;border-top:1px solid #e2e8f0}.upload-indicator{background:#dbeafe;color:#1d4ed8;padding:8px 12px;border-radius:8px;margin-bottom:10px;text-align:center;font-size:.9rem}.recording-indicator{background:#fee2e2;color:#dc2626;padding:8px 12px;border-radius:8px;margin-bottom:10px;display:flex;align-items:center;gap:8px;font-size:.9rem}.recording-dot{width:10px;height:10px;background:#dc2626;border-radius:50%;animation:pulse 1s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.recording-controls{margin-left:auto;display:flex;gap:8px}.cancel-recording-button{background:#f3f4f6;border:1px solid #d1d5db;color:#6b7280;padding:4px 12px;border-radius:6px;cursor:pointer;font-size:.85rem}.stop-send-button{background:#2d4f6b;border:none;color:#fff;padding:4px 12px;border-radius:6px;cursor:pointer;font-size:.85rem}.input-row{display:flex;align-items:center;gap:8px;width:100%;overflow:hidden}.message-type-buttons{display:flex;gap:4px;flex-shrink:0}.type-btn{width:32px;height:32px;min-width:32px;min-height:32px;border:none;background:#f1f5f9;color:#64748b;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0;position:relative;padding:0;overflow:visible}.type-btn svg{width:1em;height:1em;font-size:16px;display:block;flex-shrink:0;position:relative;z-index:1}.type-btn>*{pointer-events:none}.type-btn:hover:not(:disabled){background:#e2e8f0;color:#2d4f6b}.type-btn:disabled{opacity:.5;cursor:not-allowed}.type-btn.active,.type-btn.recording{background:#2d4f6b;color:#fff}.type-btn.recording{background:#dc2626;animation:pulse 1s infinite}.chat-text-input{flex:1;min-width:0;padding:10px 14px;border:1px solid #e2e8f0;border-radius:20px;font-size:.95rem;outline:none;transition:border-color .2s}.chat-text-input:focus{border-color:#2d4f6b}.chat-text-input:disabled{background:#f8fafc}.send-message-button{width:36px;height:36px;min-width:36px;border:none;background:#2d4f6b;color:#fff;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.send-message-button:hover:not(:disabled){background:#1e3a52;transform:scale(1.05)}.send-message-button:disabled{background:#94a3b8;cursor:not-allowed}.chat-floating-button-container{position:relative}@media(max-width:480px){.live-chat-container{bottom:0;right:0;left:0;width:100%;max-width:100%;height:100vh;max-height:100vh;border-radius:0}[dir=rtl] .live-chat-container{right:0;left:0}.chat-floating-button{width:50px;height:50px;font-size:1.5rem}.chat-audio-wrapper{min-width:200px}}.watch-live-page{padding:2rem;max-width:1400px;margin:0 auto}.watch-live-page h1{color:#2d4f6b;margin-bottom:1rem;font-size:2rem}.channel-name{color:#666;margin-bottom:2rem;font-size:1.1rem}.video-container{position:relative;width:100%;padding-bottom:56.25%;height:0;overflow:hidden;border-radius:10px;box-shadow:0 4px 20px #0003;background-color:#000;margin-bottom:2rem}.live-stream-iframe,.recording-video{position:absolute;top:0;left:0;width:100%;height:100%;border:none}.recording-video{object-fit:contain;pointer-events:auto;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.recording-video::-webkit-media-controls{-webkit-appearance:none}.recording-video::-webkit-media-controls-enclosure{overflow:hidden}.error-message{background-color:#fee;color:#c33;padding:1rem;border-radius:5px;margin-bottom:1.5rem;border:1px solid #fcc}.loading{text-align:center;padding:3rem;color:#666}.no-stream-message,.no-recordings-message{text-align:center;padding:3rem;background-color:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;color:#666}.filters-section{display:flex;gap:1rem;margin-bottom:2rem;padding:1.5rem;background-color:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;flex-wrap:wrap;align-items:flex-end}.filter-group{display:flex;flex-direction:column;gap:.5rem;flex:1;min-width:200px}.filter-group label{font-weight:500;color:#2d4f6b;font-size:.9rem}.filter-input{padding:.75rem;border:2px solid #e0e0e0;border-radius:5px;font-size:1rem;font-family:inherit;transition:border-color .3s}.filter-input:focus{outline:none;border-color:#2d4f6b}.btn-clear-filters{padding:.75rem 1.5rem;background-color:#6c757d;color:#fff;border:none;border-radius:5px;cursor:pointer;font-weight:500;transition:background-color .3s;height:fit-content}.btn-clear-filters:hover{background-color:#5a6268}.youtube-style-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;margin-top:2rem}.video-card{cursor:pointer;transition:transform .2s;background-color:transparent}.video-card:hover{transform:scale(1.02)}.video-thumbnail-container{position:relative;width:100%;padding-bottom:56.25%;background-color:#000;border-radius:12px;overflow:hidden;margin-bottom:.75rem}.video-thumbnail{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.play-button-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:68px;height:48px;background-color:#2d4f6bcc;border-radius:12px;display:flex;align-items:center;justify-content:center;transition:all .3s;pointer-events:none}.video-card:hover .play-button-overlay{background-color:#2d4f6be6;transform:translate(-50%,-50%) scale(1.1)}.play-button-overlay svg{color:#fff;font-size:24px;margin-left:4px;width:24px;height:24px}.duration-badge{position:absolute;bottom:8px;right:8px;background-color:#000c;color:#fff;padding:4px 8px;border-radius:4px;font-size:.85rem;font-weight:500}.view-toggle-section{margin-bottom:1.5rem;display:flex;justify-content:flex-end}.view-toggle-buttons{display:flex;gap:.5rem;background-color:#fff;padding:.5rem;border-radius:8px;box-shadow:0 2px 8px #0000001a}.view-toggle-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;border:2px solid #e0e0e0;background-color:#fff;color:#666;border-radius:6px;cursor:pointer;font-size:.95rem;font-weight:500;transition:all .2s ease}.view-toggle-btn:hover{border-color:#2d4f6b;color:#2d4f6b;background-color:#f8f9fa}.view-toggle-btn.active{background-color:#2d4f6b;border-color:#2d4f6b;color:#fff}.view-toggle-btn svg{font-size:1rem}.recordings-list-view{display:flex;flex-direction:column;gap:.75rem;margin-top:2rem}.recording-list-item{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;background-color:#fff;border-radius:10px;box-shadow:0 2px 8px #00000014;cursor:pointer;transition:all .2s ease;border:2px solid transparent}.recording-list-item:hover{transform:translate(5px);box-shadow:0 4px 12px #0000001f;border-color:#2d4f6b;background-color:#f8f9fa}.recording-list-content{flex:1;min-width:0}.recording-list-title{font-size:1.1rem;font-weight:600;color:#2d4f6b;margin:0 0 .5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recording-list-date{font-size:.9rem;color:#666;margin:0}.recording-list-play-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background-color:#2d4f6b;color:#fff;border-radius:50%;margin-left:1rem;flex-shrink:0;transition:all .2s ease}.recording-list-item:hover .recording-list-play-icon{background-color:#1e3a5f;transform:scale(1.1)}.recording-list-play-icon svg{font-size:.9rem;margin-left:2px}.video-details{padding:.5rem 0;text-align:center}.video-title{color:#333;font-size:1rem;font-weight:700;margin:0 0 .5rem;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;min-height:2.8rem;text-align:center}.video-date{color:#666;font-size:.875rem;margin:0;font-weight:700;text-align:center}.video-player-section{margin-top:2rem}.btn-back{margin-bottom:1rem;padding:.5rem 1rem;background-color:#6c757d;color:#fff;border:none;border-radius:5px;cursor:pointer;font-weight:500;transition:background-color .3s;display:flex;align-items:center;gap:.5rem}.btn-back i{font-size:.9rem}.btn-back:hover{background-color:#5a6268}.video-info{margin-top:1.5rem;padding:1.5rem;background-color:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a}.video-info h3{color:#2d4f6b;margin:0 0 1rem}.video-info p{color:#666;margin:.5rem 0}.floating-buttons-container{position:fixed;bottom:2rem;right:2rem;display:flex;flex-direction:column;gap:1rem;z-index:1000}.pdf-floating-button-container,.chat-floating-button-container{position:relative}.chat-floating-button{width:60px;height:60px;border-radius:50%;background-color:#2d4f6b;color:#fff;border:none;font-size:1.8rem;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #2d4f6b66;transition:all .3s}.chat-floating-button:hover{transform:scale(1.1);box-shadow:0 6px 16px #2d4f6b99;background-color:#1e3a52}.pdf-floating-button{position:relative;width:60px;height:60px;border-radius:50%;background-color:#dc3545;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.5rem;box-shadow:0 4px 12px #dc354566;transition:all .3s}.pdf-floating-button:hover{transform:scale(1.1);box-shadow:0 6px 16px #dc354599;background-color:#c82333}.pdf-button-badge{position:absolute;top:-5px;right:-5px;background-color:#2d4f6b;color:#fff;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;border:2px solid white}.pdf-viewer-overlay{position:fixed;inset:0;background-color:#000c;display:flex;justify-content:center;align-items:center;z-index:2000;padding:2rem}.pdf-viewer-modal{background-color:#fff;border-radius:10px;width:90%;max-width:1200px;height:90vh;display:flex;flex-direction:column;box-shadow:0 4px 20px #0000004d}.pdf-viewer-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e0e0e0;background-color:#2d4f6b;color:#fff;border-radius:10px 10px 0 0}.pdf-viewer-header h3{margin:0;font-size:1.25rem;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-right:1rem}.pdf-viewer-close{background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:.5rem;border-radius:5px;transition:background-color .2s;display:flex;align-items:center;justify-content:center;width:36px;height:36px}.pdf-viewer-close:hover{background-color:#fff3}.pdf-viewer-content{flex:1;overflow:hidden;position:relative;isolation:isolate}.pdf-viewer-wrapper{width:100%;height:100%;overflow:hidden;position:relative;touch-action:none;-webkit-overflow-scrolling:touch}.pdf-viewer-iframe,.pdf-viewer-content object,.pdf-viewer-content embed{width:100%;height:100%;border:none;border-radius:0 0 10px 10px;display:block;pointer-events:auto;-webkit-overflow-scrolling:touch}.pdf-viewer-content object p,.pdf-viewer-content object div{padding:2rem;text-align:center;color:#666}.pdf-viewer-content object a{color:#2d4f6b;text-decoration:underline}[dir=rtl] .floating-buttons-container{right:auto;left:2rem}.attention-popup-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:flex-start;justify-content:flex-end;z-index:2147483647;padding:1rem;pointer-events:auto;position:fixed!important}.attention-popup{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0000004d;max-width:400px;width:100%;animation:slideInFromRight .3s ease-out;pointer-events:auto}@keyframes slideInFromRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.attention-popup-content{padding:1.5rem;text-align:center}.attention-popup-content h3{margin:0 0 1rem;color:#1e3a5f;font-size:1.25rem}.attention-popup-content p{margin:0 0 1.5rem;color:#64748b;font-size:1rem;line-height:1.5}.attention-yes-button{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;border-radius:8px;padding:.75rem 2rem;font-size:1rem;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;transition:transform .2s,box-shadow .2s}.attention-yes-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #3b82f666}.attention-yes-button:active{transform:translateY(0)}@media(max-width:768px){.attention-popup{max-width:100%;margin:0}.attention-popup-overlay{padding:.5rem}.attention-popup-content{padding:1.25rem}.attention-popup-content h3{font-size:1.1rem}.attention-popup-content p{font-size:.9rem}}.watch-live-page{padding:1rem}.youtube-style-grid{grid-template-columns:1fr}.filters-section{flex-direction:column}.filter-group{min-width:100%}.view-toggle-section{margin-bottom:1rem}.view-toggle-buttons{flex-direction:column;width:100%}.view-toggle-btn{width:100%}.recording-list-item{padding:1rem}.recording-list-title{font-size:1rem}.recording-list-date{font-size:.85rem}.floating-buttons-container{bottom:1rem;right:1rem}[dir=rtl] .floating-buttons-container{right:auto;left:1rem}.pdf-floating-button{width:50px;height:50px;font-size:1.25rem}.chat-floating-button{width:50px;height:50px;font-size:1.5rem}.pdf-viewer-overlay{padding:0}.pdf-viewer-modal{width:100%;height:100vh;border-radius:0}.pdf-viewer-header,.pdf-viewer-iframe{border-radius:0}} :root{--react-pdf-annotation-layer: 1;--annotation-unfocused-field-background: url("data:image/svg+xml;charset=UTF-8,<svg width='1px' height='1px' xmlns='http://www.w3.org/2000/svg'><rect width='100%' height='100%' style='fill:rgba(0, 54, 255, 0.13);'/></svg>");--input-focus-border-color: Highlight;--input-focus-outline: 1px solid Canvas;--input-unfocused-border-color: transparent;--input-disabled-border-color: transparent;--input-hover-border-color: black;--link-outline: none}@media screen and (forced-colors:active){:root{--input-focus-border-color: CanvasText;--input-unfocused-border-color: ActiveText;--input-disabled-border-color: GrayText;--input-hover-border-color: Highlight;--link-outline: 1.5px solid LinkText}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid selectedItem}.annotationLayer .linkAnnotation:hover{-webkit-backdrop-filter:invert(100%);backdrop-filter:invert(100%)}}.annotationLayer{position:absolute;top:0;left:0;pointer-events:none;transform-origin:0 0;z-index:3}.annotationLayer[data-main-rotation="90"] .norotate{transform:rotate(270deg) translate(-100%)}.annotationLayer[data-main-rotation="180"] .norotate{transform:rotate(180deg) translate(-100%,-100%)}.annotationLayer[data-main-rotation="270"] .norotate{transform:rotate(90deg) translateY(-100%)}.annotationLayer canvas{position:absolute;width:100%;height:100%}.annotationLayer section{position:absolute;text-align:initial;pointer-events:auto;box-sizing:border-box;margin:0;transform-origin:0 0}.annotationLayer .linkAnnotation{outline:var(--link-outline)}.textLayer.selecting~.annotationLayer section{pointer-events:none}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a{position:absolute;font-size:1em;top:0;left:0;width:100%;height:100%}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a:hover{opacity:.2;background:#ff0;box-shadow:0 2px 10px #ff0}.annotationLayer .textAnnotation img{position:absolute;cursor:pointer;width:100%;height:100%;top:0;left:0}.annotationLayer .textWidgetAnnotation :is(input,textarea),.annotationLayer .choiceWidgetAnnotation select,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{background-image:var(--annotation-unfocused-field-background);border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px * var(--total-scale-factor)) sans-serif;height:100%;margin:0;vertical-align:top;width:100%}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid red}.annotationLayer .choiceWidgetAnnotation select option{padding:0}.annotationLayer .buttonWidgetAnnotation.radioButton input{border-radius:50%}.annotationLayer .textWidgetAnnotation textarea{resize:none}.annotationLayer .textWidgetAnnotation :is(input,textarea)[disabled],.annotationLayer .choiceWidgetAnnotation select[disabled],.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input[disabled]{background:none;border:2px solid var(--input-disabled-border-color);cursor:not-allowed}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:hover{border:2px solid var(--input-hover-border-color)}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation.checkBox input:hover{border-radius:2px}.annotationLayer .textWidgetAnnotation :is(input,textarea):focus,.annotationLayer .choiceWidgetAnnotation select:focus{background:none;border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) :focus{background-image:none;background-color:transparent}.annotationLayer .buttonWidgetAnnotation.checkBox :focus{border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.radioButton :focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{background-color:CanvasText;content:"";display:block;position:absolute}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{height:80%;left:45%;width:1px}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{transform:rotate(45deg)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{transform:rotate(-45deg)}.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{border-radius:50%;height:50%;left:30%;top:20%;width:50%}.annotationLayer .textWidgetAnnotation input.comb{font-family:monospace;padding-left:2px;padding-right:0}.annotationLayer .textWidgetAnnotation input.comb:focus{width:103%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{appearance:none}.annotationLayer .popupTriggerArea{height:100%;width:100%}.annotationLayer .fileAttachmentAnnotation .popupTriggerArea{position:absolute}.annotationLayer .popupWrapper{position:absolute;font-size:calc(9px * var(--total-scale-factor));width:100%;min-width:calc(180px * var(--total-scale-factor));pointer-events:none}.annotationLayer .popup{position:absolute;max-width:calc(180px * var(--total-scale-factor));background-color:#ff9;box-shadow:0 calc(2px * var(--total-scale-factor)) calc(5px * var(--total-scale-factor)) #888;border-radius:calc(2px * var(--total-scale-factor));padding:calc(6px * var(--total-scale-factor));margin-left:calc(5px * var(--total-scale-factor));cursor:pointer;font:message-box;white-space:normal;word-wrap:break-word;pointer-events:auto}.annotationLayer .popup>*{font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .popup h1{display:inline-block}.annotationLayer .popupDate{display:inline-block;margin-left:calc(5px * var(--total-scale-factor))}.annotationLayer .popupContent{border-top:1px solid rgba(51,51,51,1);margin-top:calc(2px * var(--total-scale-factor));padding-top:calc(2px * var(--total-scale-factor))}.annotationLayer .richText>*{white-space:pre-wrap;font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .highlightAnnotation,.annotationLayer .underlineAnnotation,.annotationLayer .squigglyAnnotation,.annotationLayer .strikeoutAnnotation,.annotationLayer .freeTextAnnotation,.annotationLayer .lineAnnotation svg line,.annotationLayer .squareAnnotation svg rect,.annotationLayer .circleAnnotation svg ellipse,.annotationLayer .polylineAnnotation svg polyline,.annotationLayer .polygonAnnotation svg polygon,.annotationLayer .caretAnnotation,.annotationLayer .inkAnnotation svg polyline,.annotationLayer .stampAnnotation,.annotationLayer .fileAttachmentAnnotation{cursor:pointer}.annotationLayer section svg{position:absolute;width:100%;height:100%;top:0;left:0}.annotationLayer .annotationTextContent{position:absolute;width:100%;height:100%;opacity:0;color:transparent;-webkit-user-select:none;user-select:none;pointer-events:none}.annotationLayer .annotationTextContent span{width:100%;display:inline-block}:root{--react-pdf-text-layer: 1;--highlight-bg-color: rgba(180, 0, 170, 1);--highlight-selected-bg-color: rgba(0, 100, 0, 1)}@media screen and (forced-colors:active){:root{--highlight-bg-color: Highlight;--highlight-selected-bg-color: ButtonText}}[data-main-rotation="90"]{transform:rotate(90deg) translateY(-100%)}[data-main-rotation="180"]{transform:rotate(180deg) translate(-100%,-100%)}[data-main-rotation="270"]{transform:rotate(270deg) translate(-100%)}.textLayer{position:absolute;text-align:initial;inset:0;overflow:hidden;line-height:1;text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;z-index:2}.textLayer :is(span,br){color:transparent;position:absolute;white-space:pre;cursor:text;margin:0;transform-origin:0 0}.textLayer span.markedContent{top:0;height:0}.textLayer .highlight{margin:-1px;padding:1px;background-color:var(--highlight-bg-color);border-radius:4px}.textLayer .highlight.appended{position:initial}.textLayer .highlight.begin{border-radius:4px 0 0 4px}.textLayer .highlight.end{border-radius:0 4px 4px 0}.textLayer .highlight.middle{border-radius:0}.textLayer .highlight.selected{background-color:var(--highlight-selected-bg-color)}.textLayer br::selection{background:transparent}.textLayer .endOfContent{display:block;position:absolute;inset:100% 0 0;z-index:-1;cursor:default;-webkit-user-select:none;user-select:none}.textLayer.selecting .endOfContent{top:0}.hiddenCanvasElement{position:absolute;top:0;left:0;width:0;height:0;display:none}.student-courses{padding:2rem;max-width:1400px;margin:0 auto}.student-courses.loading,.student-courses.error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;color:#64748b;gap:1rem}.page-header{margin-bottom:2rem}[dir=rtl] .page-header{text-align:right}.page-header h1{font-size:2rem;color:#1e3a5f;margin:0 0 .5rem}.matiere-title{color:#1e3a5f!important;position:relative;padding-left:.5rem;border-left:4px solid var(--matiere-color, #3B82F6)}[dir=rtl] .matiere-title{padding-left:0;padding-right:.5rem;border-left:none;border-right:4px solid var(--matiere-color, #3B82F6)}.page-header p{color:#64748b;margin:0}.matieres-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.matiere-card{background:#fff;border-radius:12px;padding:1.5rem;text-decoration:none;border-top:4px solid;box-shadow:0 2px 8px #0000000d;transition:transform .3s,box-shadow .3s}.matiere-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001a}.matiere-icon{width:50px;height:50px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.5rem;margin-bottom:1rem}.matiere-card h3{color:#1e293b;margin:0 0 .5rem;font-size:1.25rem}.matiere-card p{color:#64748b;margin:0;font-size:.9rem}.course-card{background:#fff;border-radius:12px;overflow:hidden;text-decoration:none;box-shadow:0 2px 8px #0000000d;transition:transform .3s,box-shadow .3s}.course-thumbnail{height:180px;overflow:hidden}.thumbnail-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:3rem;color:#fffc}.course-content h3{color:#1e293b;margin:0 0 .5rem;font-size:1.1rem;line-height:1.4}.course-meta{margin-bottom:1rem}.teacher{display:flex;align-items:center;gap:.5rem;color:#3182ce;font-size:.85rem}.course-stats{display:flex;gap:1rem;color:#64748b;font-size:.8rem;padding-top:.75rem;border-top:1px solid #f1f5f9}.empty-state svg{font-size:4rem;color:#cbd5e1;margin-bottom:1rem}.empty-state p{color:#64748b;margin:0}@media(max-width:1024px){.matieres-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.courses-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media(max-width:768px){.student-courses{padding:1rem}.page-header h1{font-size:1.5rem}.matieres-grid,.courses-grid{grid-template-columns:1fr;gap:1rem}.matiere-card,.course-card{padding:1rem}.course-thumbnail{height:160px}.course-content{padding:1rem}.course-stats{flex-wrap:wrap;gap:.5rem}}@media(max-width:480px){.student-courses{padding:.75rem}.page-header h1{font-size:1.25rem}.matiere-icon{width:40px;height:40px;font-size:1.25rem}.course-thumbnail{height:140px}.course-content h3{font-size:1rem}}[dir=rtl] .matieres-grid,[dir=rtl] .courses-grid{direction:rtl}[dir=rtl] .course-card,[dir=rtl] .matiere-card{text-align:right}[dir=rtl] .course-content,[dir=rtl] .matiere-card{direction:rtl}body{overflow-x:hidden;max-width:100vw}.course-detail{padding:2rem;max-width:1400px;margin:0 auto;width:100%;max-width:100vw;box-sizing:border-box;overflow-x:hidden;position:relative}.course-detail.loading,.course-detail.error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;color:#64748b;gap:1rem}.course-header{margin-bottom:2rem;width:100%;box-sizing:border-box;overflow-x:hidden}.back-link{display:inline-flex;align-items:center;gap:.5rem;color:#64748b;text-decoration:none;font-size:.9rem;margin-bottom:.75rem;transition:color .2s;flex-direction:row}.back-link:hover{color:#1e3a5f}[dir=rtl] .back-link{flex-direction:row-reverse}[dir=rtl] .back-link svg{transform:scaleX(-1)}.course-header h1{font-size:1.75rem;color:#1e3a5f;margin:0 0 1rem;word-wrap:break-word;overflow-wrap:break-word;max-width:100%;box-sizing:border-box}.course-meta{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem;font-size:.9rem;width:100%;box-sizing:border-box;overflow-x:hidden}.course-meta .teacher{display:inline-flex;align-items:center;gap:.5rem;color:#3182ce;flex-shrink:0;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.course-meta .matiere{background:#e0e7ff;color:#4f46e5;padding:.25rem .75rem;border-radius:20px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline-block;max-width:200px;box-sizing:border-box;flex-shrink:0}.course-meta .niveau{background:#dcfce7;color:#16a34a;padding:.25rem .75rem;border-radius:20px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline-block;max-width:150px;box-sizing:border-box;flex-shrink:0}.course-meta .views{display:inline-flex;align-items:center;gap:.25rem;color:#64748b;flex-shrink:0;white-space:nowrap}.course-header .description{color:#64748b;margin:0;line-height:1.6}.course-content-wrapper{display:grid;grid-template-columns:1fr 402px;gap:2rem;width:100%;max-width:100%;box-sizing:border-box;overflow-x:hidden;min-width:0}.course-content-wrapper>*{min-width:0;max-width:100%;box-sizing:border-box}.video-section{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000000d;width:100%;box-sizing:border-box;max-width:100%}.video-player{position:relative;padding-top:56.25%;background:#000;width:100%;max-width:100%;min-width:0;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;box-sizing:border-box;overflow:hidden}.video-player iframe,.video-player video{position:absolute;top:0;left:0;width:100%;height:100%;max-width:100%;max-height:100%;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;pointer-events:auto;box-sizing:border-box;object-fit:contain}.video-player video::-webkit-media-controls-enclosure{overflow:hidden}.video-player video::-webkit-media-controls-panel{-webkit-user-select:none}.video-player video::-webkit-media-controls-download-button{display:none!important}.video-player video::-webkit-media-controls-fullscreen-button{display:block!important}.no-video{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#1e293b;color:#fff;text-align:center}.no-video svg{font-size:3rem;margin-bottom:1rem;opacity:.5}.no-video p{margin:0;opacity:.7}.active-video-info{padding:1.25rem;width:100%;box-sizing:border-box;overflow-x:hidden}.active-video-info h3{margin:0 0 .5rem;color:#1e293b;font-size:1.1rem;word-wrap:break-word;overflow-wrap:break-word}.active-video-info>p{margin:0 0 1rem;color:#64748b;font-size:.9rem}.active-video-documents{margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e7eb}.active-video-documents h4{display:flex;align-items:center;gap:.5rem;font-size:.95rem;color:#374151;margin:0 0 .75rem}.active-docs-list{display:flex;flex-direction:column;gap:.5rem}.active-doc-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#f8fafc;border-radius:8px;text-decoration:none;transition:background .2s}.active-doc-item:hover{background:#f1f5f9}.active-doc-item .doc-icon{font-size:1.25rem;color:#dc2626}.active-doc-item .doc-info{flex:1;min-width:0}.active-doc-item .doc-title{display:block;color:#1e293b;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.active-doc-item .doc-meta{display:block;color:#94a3b8;font-size:.75rem;margin-top:.125rem}.active-doc-item .download-icon{color:#94a3b8;font-size:.9rem}.active-doc-item:hover .download-icon{color:#3182ce}.content-sidebar{display:flex;flex-direction:column;gap:1.5rem;width:100%;max-width:100%;box-sizing:border-box;min-width:0;overflow-x:hidden}.videos-section,.lives-section{background:#fff;border-radius:12px;padding:1.25rem;box-shadow:0 2px 8px #0000000d;border:1px solid #e5e7eb;width:100%;max-width:100%;min-width:0;box-sizing:border-box;overflow-x:hidden}.videos-section{border-left:4px solid #3182ce}.lives-section{border-left:4px solid #8b5cf6}.videos-section h2,.lives-section h2{display:flex;align-items:center;gap:.5rem;font-size:1rem;color:#1e3a5f;margin:0;padding:1rem 1rem .75rem;border-bottom:1px solid #e5e7eb;font-weight:600}.videos-list,.lives-list{display:flex;flex-direction:column;gap:0;max-height:500px;overflow-y:auto;overflow-x:hidden;width:100%;box-sizing:border-box;min-width:0;padding:.5rem 0}.video-item-wrapper,.live-item-wrapper{background:transparent;border-radius:0;overflow:visible;transition:none;width:100%;max-width:100%;box-sizing:border-box;min-width:0;margin-bottom:.5rem}.video-item-wrapper:hover,.live-item-wrapper:hover{box-shadow:none}.video-item,.live-item{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:transparent;border:none;border-radius:8px;cursor:pointer;text-align:left;width:100%;max-width:100%;transition:background-color .15s ease;min-width:0;box-sizing:border-box;overflow:visible;flex-wrap:nowrap}.video-item:hover,.live-item:hover{background:#0000000d}.video-item.active,.live-item.active{background:#2563eb1a;border-left:none;padding-left:.5rem}.video-item.active .video-title,.live-item.active .live-title{font-weight:500;color:#2563eb}.video-thumb-small,.live-thumb-small{width:168px;height:94px;min-width:168px;background:#000;border-radius:4px;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;position:relative}.video-thumb-small img,.live-thumb-small img{width:100%;height:100%;object-fit:cover}.video-thumb-small svg,.live-thumb-small svg{font-size:2rem;color:#94a3b8}.video-item .video-thumb-small:before,.live-item .live-thumb-small:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:0;height:0;border-left:12px solid white;border-top:8px solid transparent;border-bottom:8px solid transparent;margin-left:2px;opacity:0;transition:opacity .2s;pointer-events:none;z-index:2}.video-item:hover .video-thumb-small:before,.live-item:hover .live-thumb-small:before{opacity:.9}.video-item.active .video-thumb-small:before,.live-item.active .live-thumb-small:before{opacity:0}.video-item .video-thumb-small:after,.live-item .live-thumb-small:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:40px;height:40px;background:#0009;border-radius:50%;opacity:0;transition:opacity .2s;pointer-events:none;z-index:1}.video-item:hover .video-thumb-small:after,.live-item:hover .live-thumb-small:after{opacity:1}.video-item.active .video-thumb-small:after,.live-item.active .live-thumb-small:after{opacity:0}.video-info,.live-info{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:.25rem;overflow:visible;box-sizing:border-box;padding-top:0;width:100%;justify-content:center;background:transparent}.video-title,.live-title{display:block;color:#0f172a;font-size:.875rem;font-weight:500;line-height:1.4;overflow:visible;word-break:break-word;margin:0;white-space:normal}.video-item:hover .video-title,.live-item:hover .live-title,.video-item.active .video-title,.live-item.active .live-title{color:#2563eb}.video-title span,.live-title span{display:inline}.video-meta-info,.live-meta-info{display:flex;align-items:center;gap:.5rem;margin-top:.25rem;flex-wrap:wrap;font-size:.75rem;color:#64748b}.doc-badge{display:inline-flex;align-items:center;gap:.25rem;background:transparent;color:#64748b;padding:0;border-radius:0;font-size:.75rem;font-weight:400}.doc-badge svg{font-size:.7rem}.duration{font-size:.75rem;color:#64748b;background:transparent;padding:0;border-radius:0}.preview-badge{display:inline-block;background:#dcfce7;color:#16a34a;padding:.125rem .375rem;border-radius:4px;font-size:.7rem;font-weight:500}.play-icon{display:none}.video-docs-section,.live-docs-section{border-top:1px solid #e5e7eb}.toggle-docs-btn{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem .75rem;background:#f1f5f9;border:none;font-size:.75rem;color:#64748b;cursor:pointer;transition:background .2s}.toggle-docs-btn:hover{background:#e2e8f0}.toggle-docs-btn svg:last-child{margin-left:auto}.video-docs-list,.live-docs-list{background:#f1f5f9;padding:.5rem;display:flex;flex-direction:column;gap:.25rem}.video-doc-item,.live-doc-item{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:#fff;border-radius:6px;text-decoration:none;font-size:.8rem;color:#374151;transition:background .2s}.video-doc-item:hover,.live-doc-item:hover{background:#f8fafc}.video-doc-item svg:first-child,.live-doc-item svg:first-child{color:#dc2626;font-size:.9rem}.video-doc-item span,.live-doc-item span{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.video-doc-item svg:last-child,.live-doc-item svg:last-child{color:#94a3b8;font-size:.75rem}.video-doc-item:hover svg:last-child,.live-doc-item:hover svg:last-child{color:#3182ce}@media(max-width:1024px){.course-content-wrapper{grid-template-columns:1fr;gap:1.5rem}.content-sidebar{order:2;width:100%;max-width:100%}.video-section{order:1;width:100%;max-width:100%}}@media(max-width:768px){.course-detail{padding:1rem;width:100%;box-sizing:border-box;overflow-x:hidden}.course-header{margin-bottom:1.5rem;width:100%;box-sizing:border-box;overflow-x:hidden}.course-header h1{font-size:1.5rem;line-height:1.3;word-wrap:break-word;overflow-wrap:break-word;max-width:100%;box-sizing:border-box}.course-meta{flex-direction:column;gap:.5rem;font-size:.85rem;width:100%;box-sizing:border-box;overflow-x:hidden}.course-meta span{max-width:100%;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis}.course-meta .matiere{max-width:150px}.course-meta .niveau{max-width:120px}.course-meta .teacher{max-width:100%}.course-header .description{font-size:.9rem;line-height:1.5;word-wrap:break-word;overflow-wrap:break-word;max-width:100%;box-sizing:border-box}.course-content-wrapper{width:100%;max-width:100%;box-sizing:border-box;overflow-x:hidden;gap:1rem;grid-template-columns:1fr}.content-sidebar{width:100%;max-width:100%;min-width:0}.video-section{width:100%;max-width:100%;min-width:0;box-sizing:border-box;overflow-x:hidden}.video-player{width:100%;max-width:100%;min-width:0;box-sizing:border-box;overflow:hidden}.video-thumb-small,.live-thumb-small{width:120px;height:67px;min-width:120px;flex-shrink:0}.videos-list,.lives-list{max-height:none;gap:.5rem;overflow-x:hidden;width:100%;box-sizing:border-box;min-width:0}.video-info,.live-info{max-width:calc(100% - 100px)}.video-item,.live-item{padding:.75rem;flex-wrap:nowrap;align-items:center}.video-info,.live-info{gap:.5rem;flex:1;min-width:0;padding-top:0;justify-content:center}.video-title,.live-title{font-size:.85rem;line-height:1.4;white-space:normal;overflow:visible;word-break:break-word}.active-video-info{padding:1rem}.active-video-info h3{font-size:1rem;word-wrap:break-word;overflow-wrap:break-word}.video-info,.live-info{max-width:100%}.videos-section,.lives-section{padding:1rem}.videos-section h2,.lives-section h2{font-size:.95rem}}@media(max-width:480px){.course-detail{padding:.75rem;width:100%;box-sizing:border-box;overflow-x:hidden}.course-header{margin-bottom:1rem;width:100%;box-sizing:border-box;overflow-x:hidden}.course-header h1{font-size:1.25rem;line-height:1.3;word-wrap:break-word;overflow-wrap:break-word;max-width:100%;box-sizing:border-box}.course-meta{font-size:.8rem;width:100%;box-sizing:border-box;overflow-x:hidden;gap:.5rem}.course-meta span{max-width:100%;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis}.course-meta .matiere{max-width:120px}.course-meta .niveau{max-width:100px}.course-meta .teacher{max-width:100%}.course-header .description{font-size:.85rem;word-wrap:break-word;overflow-wrap:break-word;max-width:100%;box-sizing:border-box}.course-content-wrapper{width:100%;max-width:100%;box-sizing:border-box;overflow-x:hidden;gap:1rem;grid-template-columns:1fr}.content-sidebar{width:100%;max-width:100%;min-width:0}.video-section{width:100%;max-width:100%;min-width:0;box-sizing:border-box;overflow-x:hidden}.video-player{width:100%;max-width:100%;min-width:0;box-sizing:border-box;overflow:hidden}.video-item,.live-item{padding:.5rem;gap:.5rem;flex-wrap:nowrap;max-width:100%;box-sizing:border-box;overflow:hidden}.video-thumb-small,.live-thumb-small{width:100px;height:56px;min-width:100px;flex-shrink:0}.video-title,.live-title{font-size:.8rem;line-height:1.4;white-space:normal;overflow:visible;word-break:break-word}.video-info,.live-info{box-sizing:border-box;flex:1;min-width:0;width:100%;padding-top:0;justify-content:center}.video-item,.live-item{gap:.5rem;padding:.5rem;align-items:center}.videos-list,.lives-list{overflow-x:hidden;width:100%;box-sizing:border-box;min-width:0}.active-video-info{padding:.75rem}.active-video-info h3{font-size:.95rem;word-wrap:break-word;overflow-wrap:break-word}.video-info,.live-info{max-width:100%}.active-video-info>p{font-size:.85rem}.videos-section,.lives-section{padding:.75rem}.videos-section h2,.lives-section h2{font-size:.9rem;margin-bottom:.75rem}.video-item-wrapper,.live-item-wrapper{border-radius:8px}.active-doc-item{padding:.5rem;font-size:.85rem;flex-wrap:wrap}.active-doc-item .doc-info{min-width:0;flex:1}.active-doc-item .doc-title{font-size:.85rem}.active-doc-item .doc-meta{font-size:.7rem}}.teacher-login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;padding:2rem}.login-background{position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#1e3a5f,#2c5282,#3182ce);z-index:0}.background-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");opacity:.5}.login-container{position:relative;z-index:1;width:100%;max-width:420px}.login-card{background:#fff;border-radius:16px;padding:2.5rem;box-shadow:0 20px 60px #0000004d}.login-header{text-align:center;margin-bottom:2rem}.login-header h1{font-size:2rem;font-weight:700;color:#1e3a5f;margin:0 0 .5rem}.login-header p{color:#64748b;font-size:1rem;margin:0}.language-switcher-wrapper{display:flex;justify-content:center;margin-bottom:1.5rem}.language-switcher-wrapper .language-switcher-current{background-color:#f1f5f9;border-color:#e5e7eb;color:#1e3a5f}.language-switcher-wrapper .language-switcher-current:hover{background-color:#e2e8f0;border-color:#cbd5e1}.language-switcher-wrapper .language-switcher-current.active{background-color:#e3f2fd;border-color:#3182ce;color:#1e3a5f}.language-switcher-wrapper .language-arrow{color:#64748b}.error-message{background-color:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:1rem;border-radius:8px;margin-bottom:1.5rem;font-size:.9rem;text-align:center}.login-form{display:flex;flex-direction:column;gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:500;color:#374151;font-size:.9rem}.form-group input{padding:.875rem 1rem;border:2px solid #e5e7eb;border-radius:8px;font-size:1rem;transition:all .2s;background:#f9fafb}.form-group input:focus{outline:none;border-color:#3182ce;background:#fff;box-shadow:0 0 0 3px #3182ce1a}.login-btn{background:linear-gradient(135deg,#1e3a5f,#2c5282);color:#fff;padding:1rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s;margin-top:.5rem}.login-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #1e3a5f4d}.login-btn:disabled{opacity:.7;cursor:not-allowed}@media(max-width:480px){.login-card{padding:2rem 1.5rem}.login-header h1{font-size:1.75rem}}.teacher-dashboard{padding:2rem;max-width:1400px;margin:0 auto}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.welcome-section h1{font-size:1.75rem;color:#1e3a5f;margin:0 0 .5rem}.welcome-section p{color:#64748b;margin:0}.create-course-btn{display:inline-flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,#1e3a5f,#2c5282);color:#fff;padding:.75rem 1.5rem;border-radius:8px;text-decoration:none;font-weight:600;transition:all .3s}.create-course-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #1e3a5f4d}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fff;border-radius:12px;padding:1.5rem;display:flex;align-items:center;gap:1rem;box-shadow:0 2px 8px #0000000d;transition:transform .3s,box-shadow .3s}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001a}.stat-icon{width:50px;height:50px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;color:#fff}.stat-icon.courses{background:linear-gradient(135deg,#3b82f6,#2563eb)}.stat-icon.published{background:linear-gradient(135deg,#10b981,#059669)}.stat-icon.views{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.stat-icon.videos{background:linear-gradient(135deg,#f59e0b,#d97706)}.stat-icon.documents{background:linear-gradient(135deg,#ec4899,#db2777)}.stat-info{display:flex;flex-direction:column}.stat-value{font-size:1.5rem;font-weight:700;color:#1e293b}.stat-label{font-size:.85rem;color:#64748b}.recent-courses-section{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000d}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.section-header h2{font-size:1.25rem;color:#1e3a5f;margin:0}.view-all-link{color:#3182ce;text-decoration:none;font-weight:500;font-size:.9rem}.view-all-link:hover{text-decoration:underline}.courses-list{display:flex;flex-direction:column;gap:1rem}.course-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:#f8fafc;border-radius:8px;transition:background .2s}.course-item:hover{background:#f1f5f9}.course-info{flex:1}.course-info h3{margin:0 0 .5rem;font-size:1rem;color:#1e293b}.course-meta{display:flex;gap:.5rem}.status-badge{padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:500}.course-stats{display:flex;gap:1rem;color:#64748b;font-size:.85rem}.edit-link{color:#3182ce;text-decoration:none;font-weight:500;font-size:.9rem;padding:.5rem 1rem;border-radius:6px;transition:background .2s}.edit-link:hover{background:#e0e7ff}.empty-state{text-align:center;padding:3rem;color:#64748b}.empty-icon{font-size:3rem;color:#cbd5e1;margin-bottom:1rem}.empty-state p{margin:0 0 1rem}.loading{text-align:center;padding:2rem;color:#64748b}@media(max-width:768px){.teacher-dashboard{padding:1rem}.dashboard-header{flex-direction:column;align-items:flex-start}.create-course-btn{width:100%;justify-content:center}.course-item{flex-direction:column;align-items:flex-start}.course-stats{margin-top:.5rem}.edit-link{align-self:flex-end}}.manage-courses{padding:2rem;max-width:1400px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}[dir=rtl] .page-header{flex-direction:row-reverse}.create-btn{display:inline-flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,#1e3a5f,#2c5282);color:#fff;padding:.75rem 1.5rem;border-radius:8px;text-decoration:none;font-weight:600;transition:all .3s}.create-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #1e3a5f4d}.filters-bar{display:flex;gap:.75rem;margin-bottom:1.5rem;flex-wrap:wrap;align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:.75rem 1rem;box-shadow:0 1px 3px #0000000d}.search-box{display:flex;align-items:center;gap:.5rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:.5rem .75rem;flex:1;min-width:200px;transition:all .2s}.search-box:focus-within{background:#fff;border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a}.search-box input{border:none;outline:none;width:100%;font-size:.9rem;background:transparent;color:#1e293b}.search-box input::placeholder{color:#94a3b8}.search-box svg{color:#64748b;flex-shrink:0;font-size:.9rem}.filter-group{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.filter-group svg{color:#64748b;flex-shrink:0;font-size:.9rem}.filter-group select{padding:.5rem 2rem .5rem .75rem;border:1px solid #e2e8f0;border-radius:6px;background:#f8fafc;font-size:.9rem;cursor:pointer;min-width:140px;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2364748b' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center;transition:all .2s;color:#1e293b}.filter-group select:hover{background:#fff;border-color:#cbd5e1}.filter-group select:focus{outline:none;background:#fff;border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a}[dir=rtl] .filter-group{flex-direction:row-reverse}[dir=rtl] .filter-group select{background-position:left .5rem center;padding-right:.75rem;padding-left:2rem;text-align:right}[dir=rtl] .search-box{flex-direction:row-reverse}[dir=rtl] .search-box input{text-align:right}.courses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.course-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000000d;transition:transform .3s,box-shadow .3s;position:relative}.course-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001a}.course-thumbnail{position:relative;height:180px;background:#f1f5f9}.course-thumbnail img{width:100%;height:100%;object-fit:cover}.placeholder-thumbnail{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:3rem;color:#cbd5e1}.course-thumbnail .status-badge{position:absolute;top:.75rem;right:.75rem;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600}.status-badge.published{background:#dcfce7;color:#16a34a}.status-badge.draft{background:#fef3c7;color:#d97706}.course-content{padding:1.25rem}.course-content h3{margin:0 0 .5rem;font-size:1.1rem;color:#1e293b;line-height:1.4}.course-description{color:#64748b;font-size:.85rem;margin:0 0 1rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.course-meta{display:flex;gap:.5rem;margin-bottom:1rem}.niveau-badge{background:#e0e7ff;color:#4f46e5;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:500}.playlist-badge{background:#fce7f3;color:#db2777;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:500}.course-stats{display:flex;gap:1rem;color:#64748b;font-size:.8rem}.course-stats span{display:flex;align-items:center;gap:.25rem}.course-actions{display:flex;gap:.5rem;padding:1rem 1.25rem;border-top:1px solid #f1f5f9}.publish-btn{flex:1;padding:.5rem;border:none;border-radius:6px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s}.publish-btn.publish{background:#dcfce7;color:#16a34a}.publish-btn.publish:hover{background:#bbf7d0}.publish-btn.unpublish{background:#fef3c7;color:#d97706}.publish-btn.unpublish:hover{background:#fde68a}.edit-btn{display:inline-flex;align-items:center;gap:.25rem;padding:.5rem 1rem;background:#f1f5f9;color:#475569;border-radius:6px;text-decoration:none;font-size:.85rem;font-weight:500;transition:all .2s}.edit-btn:hover{background:#e2e8f0}.delete-btn{padding:.5rem;background:none;border:1px solid #fecaca;border-radius:6px;color:#dc2626;cursor:pointer;transition:all .2s}.delete-btn:hover{background:#fef2f2}.delete-confirm-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:center;justify-content:center;border-radius:12px}.delete-confirm-dialog{background:#fff;padding:1.5rem;border-radius:8px;text-align:center;max-width:280px}.delete-confirm-dialog p{margin:0 0 1rem;color:#374151}.confirm-actions{display:flex;gap:.5rem;justify-content:center}.cancel-btn{padding:.5rem 1rem;background:#f1f5f9;border:none;border-radius:6px;cursor:pointer;font-weight:500}.confirm-delete-btn{padding:.5rem 1rem;background:#dc2626;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:500}.empty-state{text-align:center;padding:4rem 2rem;background:#fff;border-radius:12px}.empty-icon{font-size:4rem;color:#cbd5e1;margin-bottom:1rem}.empty-state p{color:#64748b;margin:0 0 1rem}.create-link{color:#3182ce;text-decoration:none;font-weight:500}.create-link:hover{text-decoration:underline}.loading{text-align:center;padding:4rem;color:#64748b}@media(max-width:768px){.manage-courses{padding:1rem}.page-header{flex-direction:column;align-items:flex-start}.create-btn{width:100%;justify-content:center}.filters-bar{flex-direction:column;padding:.75rem;gap:.75rem}.search-box{width:100%;min-width:100%}.filter-group{flex-wrap:wrap;width:100%;gap:.5rem}.filter-group svg{display:none}.filter-group select{flex:1;min-width:calc(50% - .25rem);width:auto}.search-box{width:100%}.courses-grid{grid-template-columns:1fr}}.create-course{padding:2rem;max-width:800px;margin:0 auto}.page-header h1{font-size:1.75rem;color:#1e3a5f;margin:0}.form-container{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000000d}.error-message{background-color:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:1rem;border-radius:8px;margin-bottom:1.5rem;font-size:.9rem}.form-group label{display:block;font-weight:500;color:#374151;margin-bottom:.5rem;font-size:.95rem}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.875rem 1rem;border:2px solid #e5e7eb;border-radius:8px;font-size:1rem;transition:all .2s;background:#f9fafb;font-family:inherit}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#3182ce;background:#fff;box-shadow:0 0 0 3px #3182ce1a}.form-group textarea{resize:vertical;min-height:100px}.checkbox-group{display:flex;align-items:center}.checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;font-size:.95rem;color:#374151}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:#3182ce}.form-info{background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;padding:1rem;margin-bottom:1.5rem}.form-info p{margin:0;color:#0369a1;font-size:.9rem}.form-actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:1rem;border-top:1px solid #f1f5f9}.cancel-btn{padding:.75rem 1.5rem;background:#f1f5f9;border:none;border-radius:8px;color:#475569;font-weight:500;cursor:pointer;transition:all .2s}.cancel-btn:hover{background:#e2e8f0}.submit-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#1e3a5f,#2c5282);border:none;border-radius:8px;color:#fff;font-weight:600;cursor:pointer;transition:all .3s}.submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #1e3a5f4d}.submit-btn:disabled{opacity:.7;cursor:not-allowed}.no-matiere-warning{background:#fff;border-radius:12px;padding:3rem;text-align:center;box-shadow:0 2px 8px #0000000d}.no-matiere-warning h2{color:#d97706;margin:0 0 1rem}.no-matiere-warning p{color:#64748b;margin:0}@media(max-width:768px){.create-course{padding:1rem}.form-container{padding:1.5rem}.form-actions{flex-direction:column-reverse}.cancel-btn,.submit-btn{width:100%;justify-content:center}}.edit-course{padding:2rem;max-width:1000px;margin:0 auto}.edit-course.loading-state,.edit-course.error-state{display:flex;align-items:center;justify-content:center;min-height:50vh;color:#64748b}.page-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.back-btn{display:inline-flex;align-items:center;gap:.5rem;background:none;border:none;color:#64748b;cursor:pointer;font-size:.95rem;padding:.5rem;transition:color .2s}.back-btn:hover{color:#1e3a5f}[dir=rtl] .back-btn{flex-direction:row-reverse}.page-header h1{flex:1;font-size:1.5rem;color:#1e3a5f;margin:0}.save-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#1e3a5f,#2c5282);border:none;border-radius:8px;color:#fff;font-weight:600;cursor:pointer;transition:all .3s}.save-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #1e3a5f4d}.save-btn:disabled{opacity:.7;cursor:not-allowed}.error-message{background-color:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:1rem;border-radius:8px;margin-bottom:1rem}.success-message{background-color:#f0fdf4;border:1px solid #bbf7d0;color:#16a34a;padding:1rem;border-radius:8px;margin-bottom:1rem}.tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:2px solid #e5e7eb;padding-bottom:-2px}.tab{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;color:#64748b;font-weight:500;cursor:pointer;transition:all .2s}.tab:hover{color:#1e3a5f}.tab.active{color:#1e3a5f;border-bottom-color:#1e3a5f}.tab-content{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000000d;overflow:visible;position:relative}.thumbnail-section{margin-bottom:2rem}.thumbnail-section label{display:block;font-weight:500;color:#374151;margin-bottom:.75rem}.thumbnail-upload{display:flex;align-items:center;gap:1.5rem}.current-thumbnail{width:200px;height:120px;object-fit:cover;border-radius:8px;border:1px solid #e5e7eb}.thumbnail-placeholder{width:200px;height:120px;background:#f1f5f9;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#94a3b8;gap:.5rem;font-size:.85rem}.thumbnail-placeholder svg{font-size:2rem}.upload-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#f1f5f9;border-radius:6px;color:#475569;font-size:.9rem;cursor:pointer;transition:background .2s}.upload-btn:hover{background:#e2e8f0}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-weight:500;color:#374151;margin-bottom:.5rem}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.75rem 1rem;border:1px solid #e5e7eb;border-radius:8px;font-size:.95rem;transition:all .2s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.checkbox-group{margin-top:.5rem}.checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;color:#374151}.checkbox-label.inline{margin-top:.5rem}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#3182ce}.add-video-form{background:#f8fafc;padding:1.5rem;border-radius:8px;margin-bottom:2rem}.add-video-form h3{margin:0 0 1rem;font-size:1rem;color:#1e3a5f}.add-video-form .form-row,.add-video-form .form-group{margin-bottom:1rem}.add-video-form input,.add-video-form select{background:#fff}.video-input-type-selector{display:flex;gap:.5rem;margin-bottom:1.5rem}.type-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;background:#fff;border:2px solid #e5e7eb;border-radius:8px;color:#64748b;font-weight:500;cursor:pointer;transition:all .2s}.type-btn:hover{border-color:#1e3a5f;color:#1e3a5f}.type-btn.active{background:#1e3a5f;border-color:#1e3a5f;color:#fff}.file-upload-section{margin-bottom:1rem}.file-upload-label{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#fff;border:2px dashed #e5e7eb;border-radius:8px;color:#64748b;cursor:pointer;transition:all .2s}.file-upload-label:hover{border-color:#3182ce;background:#f0f9ff}.file-upload-label svg{font-size:1.25rem;color:#3182ce}.thumbnail-upload-label{border-color:#d4d4d8}.thumbnail-upload-label:hover{border-color:#8b5cf6;background:#f5f3ff}.thumbnail-upload-label svg{color:#8b5cf6}.add-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#1e3a5f;border:none;border-radius:6px;color:#fff;font-weight:500;cursor:pointer;transition:background .2s}.add-btn:hover:not(:disabled){background:#15294a}.add-btn:disabled{opacity:.7;cursor:not-allowed}.videos-list,.lives-list{display:flex;flex-direction:column;gap:1rem}.video-item-card,.live-item-card{background:#f8fafc;border-radius:12px;overflow:visible;border:1px solid #e5e7eb;transition:box-shadow .2s;position:relative;z-index:1}.video-item-card:hover,.live-item-card:hover{z-index:2}.video-item-card:hover,.live-item-card:hover{box-shadow:0 4px 12px #0000000d}.video-item-header,.live-item-header{display:flex;align-items:center;gap:1rem;padding:1rem;cursor:pointer;transition:background .2s}.video-item-header:hover,.live-item-header:hover{background:#f1f5f9}.drag-handle{color:#94a3b8;cursor:grab;-webkit-user-select:none;user-select:none;padding:.25rem;display:flex;align-items:center}.drag-handle:active{cursor:grabbing}.video-item-card.dragging{opacity:.5}.video-item-card[draggable=true]{cursor:move}.video-thumbnail-small,.live-thumbnail-small{width:80px;height:50px;background:#e2e8f0;border-radius:6px;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.video-thumbnail-small img,.live-thumbnail-small img{width:100%;height:100%;object-fit:cover}.video-thumbnail-small svg,.live-thumbnail-small svg{font-size:1.5rem;color:#94a3b8}.video-number,.live-number{width:28px;height:28px;background:#e0e7ff;color:#4f46e5;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.85rem;flex-shrink:0}.video-info,.live-info{flex:1;display:flex;align-items:center;gap:.75rem;min-width:0}.video-info h4,.live-info h4{margin:0 0 .25rem;font-size:.95rem;color:#1e293b}.video-source{font-size:.8rem;color:#64748b}.video-meta,.live-meta{display:flex;align-items:center;gap:1rem;color:#64748b}.doc-count{display:flex;align-items:center;gap:.25rem;font-size:.85rem}.duration{font-size:.8rem;color:#64748b;background:#e2e8f0;padding:.125rem .5rem;border-radius:4px}.preview-badge{display:inline-block;background:#dcfce7;color:#16a34a;padding:.125rem .5rem;border-radius:10px;font-size:.7rem;font-weight:500;margin-top:.25rem}.video-item-expanded,.live-item-expanded{padding:1rem 1.5rem;border-top:1px solid #e5e7eb;background:#fff;position:relative;z-index:10;margin:0 -.25rem;border-radius:0 0 12px 12px}.video-actions-row,.live-actions-row{display:flex;gap:.75rem;margin-bottom:1.5rem}.edit-actions-row{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1rem}.edit-video-form{padding:1rem;background:#f8fafc;border-radius:8px;margin-top:.5rem}.edit-video-form h5{margin:0 0 1rem;color:#1e3a5f;font-size:1rem}.edit-video-form .form-group{margin-bottom:1rem}.edit-video-form .form-group label{display:block;margin-bottom:.5rem;color:#1e3a5f;font-weight:500;font-size:.875rem}.edit-video-form .form-group input,.edit-video-form .form-group select{width:100%;padding:.5rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem}.action-btn.edit-action{background:#2563eb;color:#fff}.action-btn.edit-action:hover{background:#1d4ed8}.action-btn.save-action{background:#16a34a;color:#fff}.action-btn.save-action:hover{background:#15803d}.action-btn.cancel-action{background:#64748b;color:#fff}.action-btn.cancel-action:hover{background:#475569}.action-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#f1f5f9;border:1px solid #e5e7eb;border-radius:6px;color:#475569;font-size:.85rem;cursor:pointer;transition:all .2s}.action-btn:hover{background:#e2e8f0}.thumbnail-action{color:#8b5cf6;border-color:#ddd6fe}.thumbnail-action:hover{background:#f5f3ff}.delete-action{color:#dc2626;border-color:#fecaca}.delete-action:hover{background:#fef2f2}.documents-section{background:#fafafa;padding:1rem;border-radius:8px;position:relative;z-index:11}.documents-section h5{margin:0 0 1rem;font-size:.9rem;color:#374151}.upload-doc-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#fff;border:1px dashed #3182ce;border-radius:6px;color:#3182ce;font-size:.85rem;cursor:pointer;transition:all .2s;margin-bottom:1rem}.upload-doc-btn:hover{background:#eff6ff}.documents-list-mini{display:flex;flex-direction:column;gap:.5rem}.document-item-mini{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#fff;border-radius:6px;border:1px solid #e5e7eb}.document-item-mini .doc-icon{font-size:1.25rem;color:#3182ce}.document-item-mini span{flex:1;font-size:.9rem;color:#374151}.document-item-mini .doc-type{background:#e0e7ff;color:#4f46e5;padding:.125rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600}.delete-doc-btn{padding:.25rem;background:none;border:none;color:#dc2626;cursor:pointer;opacity:.6;transition:opacity .2s}.delete-doc-btn:hover{opacity:1}.no-docs-msg{color:#94a3b8;font-size:.85rem;margin:0}.add-live-section{background:#f8fafc;padding:1.5rem;border-radius:8px;margin-bottom:2rem}.add-live-section h3{margin:0 0 .5rem;font-size:1rem;color:#1e3a5f}.lives-info{color:#64748b;font-size:.9rem;margin:0 0 1rem}.show-recordings-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#1e3a5f;border:none;border-radius:6px;color:#fff;font-weight:500;cursor:pointer;transition:background .2s}.show-recordings-btn:hover{background:#15294a}.recordings-selector{margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e7eb}.recordings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}.recording-select-card{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s}.recording-select-card:hover{border-color:#3182ce;box-shadow:0 2px 8px #0000000d}.recording-select-card .rec-icon{font-size:1.5rem;color:#3182ce}.recording-select-card .rec-info{flex:1;min-width:0}.recording-select-card h5{margin:0 0 .25rem;font-size:.9rem;color:#1e293b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recording-select-card span{font-size:.8rem;color:#64748b}.recording-select-card .add-icon{color:#3182ce}.no-recordings{color:#64748b;font-size:.9rem;text-align:center;padding:1rem}.empty-list{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:#94a3b8}.empty-list svg{font-size:3rem;margin-bottom:1rem}@media(max-width:768px){.edit-course{padding:1rem}.page-header{flex-wrap:wrap}.page-header h1{order:-1;width:100%;margin-bottom:.5rem}.tabs{overflow-x:auto}.tab-content{padding:1.5rem}.form-row{grid-template-columns:1fr}.thumbnail-upload{flex-direction:column;align-items:flex-start}.video-input-type-selector{flex-direction:column}.video-item-header,.live-item-header{flex-wrap:wrap}.video-thumbnail-small,.live-thumbnail-small{display:none}.video-meta,.live-meta{width:100%;justify-content:flex-end;margin-top:.5rem}.recordings-grid{grid-template-columns:1fr}.video-actions-row,.live-actions-row{flex-wrap:wrap}}.exclude-students-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#f1f5f9;border:2px solid #e2e8f0;border-radius:8px;color:#475569;font-weight:500;cursor:pointer;transition:all .2s;position:relative}.exclude-students-btn:hover{background:#e2e8f0;border-color:#cbd5e1}.excluded-count-badge{position:absolute;top:-8px;right:-8px;background:#ef4444;color:#fff;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600}.exclude-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.exclude-modal{background:#fff;border-radius:12px;max-width:600px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.exclude-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid #e5e7eb}.exclude-modal-header h3{margin:0;font-size:1.25rem;color:#1e3a5f}.exclude-modal-close{background:none;border:none;color:#64748b;cursor:pointer;font-size:1.25rem;padding:.25rem;display:flex;align-items:center;justify-content:center;transition:color .2s}.exclude-modal-close:hover{color:#1e3a5f}.exclude-modal-content{padding:1.5rem;overflow-y:auto;flex:1}.exclude-modal-filters{display:flex;gap:1rem;margin-bottom:1.5rem}.exclude-modal-filters .form-group{flex:1;margin-bottom:0}.exclude-modal-students{margin-top:1rem}.students-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.students-list-header label{font-weight:600;color:#374151;margin:0}.students-count{font-size:.875rem;color:#64748b;font-weight:500}.students-list-container{border:2px solid #e5e7eb;border-radius:8px;background:#f9fafb;max-height:300px;overflow-y:auto;padding:.5rem}.students-list-container::-webkit-scrollbar{width:8px}.students-list-container::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.students-list-container::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.students-list-container::-webkit-scrollbar-thumb:hover{background:#94a3b8}.student-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;border-radius:6px;cursor:pointer;transition:all .2s;background:#fff;margin-bottom:.5rem;border:1px solid transparent}.student-item:hover{background:#f0f9ff;border-color:#bae6fd;transform:translate(2px)}.student-item.selected{background:#eff6ff;border-color:#3b82f6}.student-item:last-child{margin-bottom:0}.student-item input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#3b82f6;flex-shrink:0}.student-info{display:flex;flex-direction:column;gap:.25rem;flex:1}.student-name{font-weight:500;color:#1e3a5f;font-size:.95rem}.student-email{font-size:.85rem;color:#64748b}.selected-count{margin-top:.75rem;padding:.5rem .75rem;background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;font-size:.875rem;color:#1e40af;font-weight:500;text-align:center}.students-loading{text-align:center;padding:2rem;color:#64748b}.no-students-message{text-align:center;padding:2rem;color:#64748b;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.exclude-modal-actions{display:flex;gap:1rem;justify-content:flex-end;padding:1.5rem;border-top:1px solid #e5e7eb}.exclude-modal-actions .btn-cancel{padding:.75rem 1.5rem;background:#f1f5f9;border:none;border-radius:8px;color:#475569;font-weight:500;cursor:pointer;transition:all .2s}.exclude-modal-actions .btn-cancel:hover{background:#e2e8f0}.exclude-modal-actions .btn-submit{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#1e3a5f,#2c5282);border:none;border-radius:8px;color:#fff;font-weight:600;cursor:pointer;transition:all .3s}.exclude-modal-actions .btn-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #1e3a5f4d}.exclude-modal-actions .btn-submit:disabled{opacity:.7;cursor:not-allowed}@media(max-width:768px){.exclude-modal-filters{flex-direction:column;gap:0}.exclude-modal-actions{flex-direction:column-reverse}.exclude-modal-actions .btn-cancel,.exclude-modal-actions .btn-submit{width:100%;justify-content:center}}*{margin:0;padding:0;box-sizing:border-box}.App{min-height:100vh;display:flex;flex-direction:column;overflow-x:hidden;width:100%}.main-content{flex:1;display:flex;flex-direction:column;overflow-x:hidden;width:100%}
