*{margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#f8f9fa,#e9ecef);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:14px;line-height:1.6}.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.loading-spinner{border:4px solid #f3f3f3;border-top:4px solid var(--primary-color)}.error-container{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;display:flex;flex-direction:column;justify-content:center;margin:20px;padding:60px 20px;text-align:center}.error-container h2{color:#dc3545;margin-bottom:20px}.dashboard-header{margin-bottom:30px}.welcome-section h1{color:var(--primary-color);font-size:2.5em;font-weight:600;margin-bottom:20px}.welcome-card{background:linear-gradient(135deg,#002c1c,#002c1c);background:linear-gradient(135deg,var(--primary-color,#002c1c) 0,var(--primary-color,#002c1c) 100%);border:1px solid #ffffff1a;border-radius:20px;box-shadow:0 12px 40px #00000026;gap:24px;overflow:hidden;padding:32px;position:relative}.welcome-card:before{background:radial-gradient(circle,#ffffff1a 0,#0000 70%);content:"";height:100%;pointer-events:none;position:absolute;right:-50%;top:-50%;width:100%}.user-avatar-large{color:#fff;font-size:2em;font-weight:700;height:80px;width:80px}.welcome-content h2{font-size:1.8em;margin:0 0 10px}.user-role{margin:10px 0}.role-badge{background:#fff3;border:1px solid #ffffff4d;border-radius:20px;font-size:.9em;font-weight:500;padding:6px 12px}.role-badge.admin{background:#ffc10733;border-color:#ffc10780}.last-login{font-size:.9em;margin:10px 0 0;opacity:.9}.stats-section{margin-bottom:40px}.stats-grid{grid-gap:12px;gap:12px;margin-bottom:30px}.stats-grid.admin-layout,.stats-grid.student-layout{grid-template-columns:repeat(4,1fr)}@media (max-width:1200px){.stats-grid.admin-layout,.stats-grid.student-layout{grid-template-columns:repeat(4,1fr)}}@media (max-width:768px){.stats-grid.admin-layout,.stats-grid.student-layout{gap:16px;grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.stats-grid.admin-layout,.stats-grid.student-layout{gap:12px;grid-template-columns:repeat(2,1fr)}}@media (max-width:360px){.stats-grid.admin-layout,.stats-grid.student-layout{gap:10px;grid-template-columns:1fr}}.stat-card{border:1px solid #0000000d;border-radius:clamp(8px,2vw,12px);box-shadow:0 4px 20px #00000014;flex:1 1;gap:clamp(12px,2.5vw,16px);min-height:80px;min-width:0;padding:clamp(16px,3vw,20px);transition:all .4s cubic-bezier(.4,0,.2,1)}@media (max-width:1024px){.welcome-card{gap:20px;padding:28px}.user-avatar-large{height:70px;width:70px}.welcome-section h1{font-size:2.2em}}@media (max-width:768px){.stat-card{gap:8px;padding:12px}.stat-icon,.stat-number{font-size:1.5em!important}.stat-content h3{font-size:.8em!important}.stat-details{font-size:.7em!important}.welcome-card{flex-direction:column;gap:16px;padding:24px;text-align:center}.user-avatar-large{height:60px;width:60px}.welcome-section h1{font-size:2em}.courses-grid{gap:16px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.course-card-modern{min-height:180px}.course-thumbnail{height:80px}.course-content{padding:14px}.course-title{font-size:.9em}.course-description{font-size:.75em}}@media (max-width:480px){.courses-grid{gap:12px;grid-template-columns:1fr;padding:0 8px}.course-card-modern{border-radius:12px;min-height:160px}.course-thumbnail{height:70px}.course-content{padding:12px}.course-title{font-size:.85em;margin-bottom:6px}.course-description,.course-meta{font-size:.7em;margin-bottom:8px}.course-meta{padding-top:6px}.course-actions{gap:6px}.btn-sm{font-size:.8em;min-height:32px;padding:6px 10px}}@media (max-width:360px){.courses-grid{gap:8px;padding:0 4px}.course-card-modern{border-radius:10px;min-height:140px}.course-thumbnail{height:60px}.course-placeholder{font-size:2em}.course-content{padding:10px}.course-title{font-size:.8em;margin-bottom:4px}.course-description,.course-meta{font-size:.65em;margin-bottom:6px}.course-meta{padding-top:4px}.btn-sm{font-size:.75em;min-height:28px;padding:5px 8px}}.stat-card:before{background:linear-gradient(90deg,#0000,var(--primary-color),#0000);height:2px;opacity:0;transition:opacity .3s ease}.stat-card:hover{box-shadow:0 8px 30px #00000026}.stat-card:hover:before{opacity:1}.stat-card.users{border-left-color:#007bff}.stat-card.courses{border-left-color:#28a745}.stat-card.enrollments{border-left-color:#ffc107}.stat-card.certificates{border-left-color:#dc3545}.stat-card.available{border-left-color:#17a2b8}.stat-card.enrolled{border-left-color:#28a745}.stat-card.completed{border-left-color:#ffc107}.stat-icon{font-size:2.2em;height:48px;opacity:.8;width:48px}.stat-content{flex:1 1;min-width:0}.stat-content h3{color:#666;font-size:.85em}.stat-number{color:#333;font-size:2em;line-height:1;margin-bottom:6px}.stat-details{color:#888;display:flex;flex-direction:column;font-size:.75em;gap:2px;line-height:1.2}.stat-details span{display:block}.quick-actions-section{margin-bottom:40px}.quick-actions-section h3{color:#333;font-size:1.4em;margin-bottom:20px}.quick-actions-grid{grid-gap:15px;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.quick-action-btn{align-items:center;background:linear-gradient(145deg,#fff,#f8f9fa);border:1px solid #00000014;border-radius:16px;cursor:pointer;display:flex;gap:16px;overflow:hidden;padding:24px;position:relative;text-align:left;transition:all .4s cubic-bezier(.4,0,.2,1)}.quick-action-btn:before{background:linear-gradient(135deg,#002c1c05,#002c1c0a);bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.quick-action-btn:hover{background:linear-gradient(145deg,#f8f9fa,#e9ecef);border-color:var(--primary-color);box-shadow:0 8px 25px #0000001f;transform:translateY(-3px)}.quick-action-btn:hover:before{opacity:1}.action-icon{font-size:1.5em}.action-title{color:#333;font-weight:500}.recent-courses-section{margin-bottom:40px}.section-header{margin-bottom:25px}.section-header h3{color:#333;font-size:1.4em}.btn-outline{border:2px solid #fff}.btn-outline:hover{background:#fff;color:var(--primary-color)}.courses-grid{grid-gap:clamp(20px,4vw,24px);gap:clamp(20px,4vw,24px);grid-template-columns:repeat(auto-fill,minmax(280px,320px));padding:0}.course-card-modern{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffffa;border:1px solid #0000000f;border-radius:16px;box-shadow:0 6px 24px #00000014;display:flex;flex-direction:column;height:auto;min-height:200px;overflow:hidden;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1);width:100%}.course-card-modern:before{background:linear-gradient(90deg,#002c1c,#10b981);background:linear-gradient(90deg,var(--primary-color,#002c1c),var(--primary-color-light,#10b981));content:"";height:4px;left:0;position:absolute;right:0;top:0;z-index:1}.course-card-modern:hover{border-color:#002c1c33;border-color:rgba(var(--primary-color-rgb,0,44,28),.2);box-shadow:0 16px 48px #00000026;transform:translateY(-8px)}.course-thumbnail{background:linear-gradient(135deg,#002c1c,#10b981);background:linear-gradient(135deg,var(--primary-color,#002c1c) 0,var(--primary-color-light,#10b981) 100%);height:100px;position:relative}.course-thumbnail:after{background:linear-gradient(45deg,#ffffff1a,#0000 50%,#ffffff0d);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.course-placeholder{font-size:2.5em;opacity:.8}.course-content{justify-content:space-between;padding:16px}.course-title{font-size:1em;margin:0 0 8px}.course-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#64748b;display:-webkit-box;flex:1 1;font-size:.8em;line-height:1.4;margin-bottom:12px;overflow:hidden}.course-meta{font-size:.75em;margin-bottom:12px;padding-top:8px}.course-date{color:#64748b;font-weight:500}.course-completed{background:#dbeafe;border-radius:12px;color:#1e40af;font-size:.7em;font-weight:600;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}.course-actions{display:flex;flex-wrap:wrap;gap:8px}.course-actions .btn{color:#fff!important;flex:1 1;font-weight:500;min-width:0;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.btn-sm{align-items:center;display:flex;font-size:.9em;font-weight:600;justify-content:center;min-height:36px}.course-actions .btn-primary{background:#007bff;border:1px solid #007bff;color:#fff!important}.course-actions .btn-primary:hover{background:#0056b3;border:1px solid #0056b3;color:#fff!important}.course-actions .btn-success{background:#28a745;border:1px solid #28a745;color:#fff!important}.course-actions .btn-success:hover{background:#1e7e34;border:1px solid #1e7e34;color:#fff!important}.dashboard-card{background:#fffffff2;border:1px solid #0000000d;border-radius:16px;box-shadow:0 4px 20px #00000014;margin-bottom:32px;padding:28px}.dashboard-card:hover{box-shadow:0 8px 30px #0000001f;transform:translateY(-2px)}.dashboard-card h3{font-size:1.4em;margin:0 0 24px}.empty-state{background:#fffffff2;border-radius:16px}.empty-icon{font-size:4em;margin-bottom:20px}.empty-state h4{color:#666;font-size:1.3em}.empty-state p{color:#888;font-size:1em;margin-bottom:25px}@media (min-width:1200px){.container{max-width:1400px;padding:30px}.stats-grid{grid-template-columns:repeat(4,1fr)}.courses-grid,.quick-actions-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:992px) and (max-width:1199px){.container{max-width:1140px;padding:25px}.stats-grid{grid-template-columns:repeat(3,1fr)}.courses-grid,.quick-actions-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:768px) and (max-width:991px){.container{max-width:960px;padding:20px}.welcome-card{gap:15px;padding:20px}.courses-grid,.quick-actions-grid,.stats-grid{gap:15px;grid-template-columns:repeat(2,1fr)}.section-header{align-items:center;flex-direction:row;justify-content:space-between}}@media (max-width:767px){.container{padding:15px}.welcome-card{flex-direction:column;gap:15px;padding:20px;text-align:center}.user-avatar-large{font-size:1.5em;height:60px;width:60px}.welcome-content h2{font-size:1.4em}.courses-grid,.quick-actions-grid,.stats-grid{gap:12px;grid-template-columns:1fr}.section-header{align-items:stretch;flex-direction:column;gap:15px}.dashboard-card{padding:20px}.btn{font-size:14px;justify-content:center;padding:12px 20px;width:100%}}@media (max-width:480px){.container{padding:12px}.welcome-card{gap:12px;padding:16px}.welcome-section h1{font-size:1.8em}.welcome-content h2{font-size:1.2em}.dashboard-card{padding:16px}.dashboard-card h3{font-size:1.2em}.btn{font-size:14px;min-height:44px;padding:12px 16px}.modern-btn{font-size:13px!important;min-height:44px!important;padding:12px 16px!important}.stat-card{flex-direction:column;gap:8px;min-height:100px;padding:16px 12px;text-align:center}}@media (max-width:360px){.container{padding:8px}.welcome-card{gap:8px;padding:12px}.welcome-section h1{font-size:1.6em}.welcome-content h2{font-size:1.1em}.dashboard-card{padding:12px}.btn{font-size:13px;min-height:44px;padding:12px 14px}.modern-btn{font-size:12px!important;min-height:44px!important;padding:12px 14px!important}.stat-card{flex-direction:column;gap:6px;min-height:90px;padding:14px 10px;text-align:center}}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.container{margin:0 auto;max-width:1200px;padding:20px}.card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:12px;box-shadow:0 4px 20px #00000014;margin-bottom:20px;padding:24px;transition:all .3s ease}.card:hover{box-shadow:0 8px 30px #0000001f;transform:translateY(-2px)}.btn{background:linear-gradient(135deg,var(--primary-color) 0,var(--primary-color) 100%);box-shadow:0 2px 8px rgba(var(--primary-color-rgb),.3);color:#fff;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn:hover{box-shadow:0 4px 15px #007bff66}.btn:disabled{background:#6c757d;box-shadow:none;transform:none}.modern-btn{-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;background:linear-gradient(135deg,var(--primary-color) 0,var(--primary-color) 100%)!important;border:none!important;border-radius:12px!important;box-shadow:0 4px 12px #002c1c4d!important;color:#fff!important;cursor:pointer!important;font-size:13px!important;font-weight:600!important;overflow:hidden!important;padding:8px 16px!important;position:relative!important;transition:all .3s cubic-bezier(.4,0,.2,1)!important}.modern-btn:hover{box-shadow:0 8px 20px #002c1c66!important;filter:brightness(.9)!important;transform:translateY(-2px)!important}.modern-btn:active{box-shadow:0 4px 12px #002c1c4d!important;transform:translateY(0)!important}.modern-btn:disabled{background:#6c757db3!important;box-shadow:none!important;cursor:not-allowed!important;filter:none!important;transform:none!important}.modern-input{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffffe6;border:1px solid #e5e7ebcc;border-radius:12px;font-size:12px;padding:8px 12px;transition:all .3s ease;width:100%}.modern-input:focus{background:#fff;border-color:#007bffcc;box-shadow:0 0 0 2px #007bff1a}.form-group input{background:#fffc;border:2px solid #e5e7eb;border-radius:8px;font-size:14px;padding:12px 16px;transition:all .3s ease;width:100%}.form-group input:focus{background:#fff;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(var(--primary-color-rgb),.1);outline:none}.alert{border-radius:4px;margin-bottom:15px;padding:10px}.alert-error{background-color:#f8d7da}.alert-success{background-color:#d4edda}.navbar{background-color:#343a40;color:#fff;margin-bottom:20px;padding:1rem 0}.navbar .container{align-items:center;display:flex;justify-content:space-between}.navbar h1{margin:0}.navbar .nav-links{align-items:center;display:flex;gap:20px}.navbar .nav-links a{border-radius:4px;color:#fff;padding:5px 10px;text-decoration:none;transition:background-color .3s}.navbar .nav-links a:hover{background-color:#ffffff1a}.loading{padding:20px}.course-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:20px}@media (max-width:1200px){.course-grid{gap:18px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (max-width:768px){.course-grid{gap:15px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}}@media (max-width:480px){.course-grid{gap:15px;grid-template-columns:1fr}.welcome-card{gap:12px;padding:20px}.user-avatar-large{height:50px;width:50px}.welcome-section h1{font-size:1.8em}}@media (max-width:320px){body{font-size:13px}.container{padding:10px}.welcome-card{gap:10px;padding:16px}.welcome-section h1{font-size:1.5em}.stat-card{gap:6px;padding:10px}.btn{font-size:.8rem;padding:8px 12px}}.course-card{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;overflow:hidden;transition:transform .3s}.course-card:hover{transform:translateY(-5px)}.course-image-container{background:#f8f9fa;height:200px;overflow:hidden;position:relative;width:100%}.course-card img{display:block;height:100%;object-fit:cover;object-position:center;transition:transform .3s ease;width:100%}.course-card:hover img{transform:scale(1.05)}@media (max-width:1024px){.course-image-container{height:190px}}@media (max-width:768px){.course-image-container{height:180px}}@media (max-width:480px){.course-image-container{height:160px}}.course-card-content{padding:20px}.course-card h3{color:#333;margin-bottom:10px}.course-card p{color:#666;margin-bottom:15px}.login-container{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);display:flex;justify-content:center;min-height:100vh;padding:20px}.login-card{background:#fff;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 4px 20px #00000014;max-width:600px;padding:60px;width:100%}.login-header{margin-bottom:32px;text-align:center}.login-logo{margin-bottom:20px}.default-logo-icon,.login-logo{align-items:center;display:flex;justify-content:center}.default-logo-icon{width:100%}.login-title{color:#2e7d32;font-size:28px;font-weight:700;letter-spacing:-.5px;margin:0 0 8px}.login-subtitle,.login-title{font-family:Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.login-subtitle{color:#6c757d;font-size:15px;font-weight:500;margin:0}.login-card .form-group{margin-bottom:28px}.login-card .form-group label{color:#495057;display:block;font-family:Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:15px;font-weight:600;margin-bottom:8px}.input-icon{left:12px;z-index:1}.form-input{background-color:#fff;border:1px solid #dee2e6;color:#000!important;font-family:Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-weight:500;padding:16px 20px}.form-input:focus{border-color:#2e7d32;box-shadow:0 0 0 3px #2e7d321a}.form-input::placeholder{color:#adb5bd}.password-toggle{align-items:center;background:none;border:none;color:#6c757d;cursor:pointer;display:flex;justify-content:center;padding:4px;position:absolute;right:12px;transition:color .2s ease}.password-toggle:hover{color:#495057}.login-submit-btn{align-items:center;background:#7cb342;background:var(--primary-color,#7cb342);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-family:Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:17px;font-weight:700;justify-content:center;letter-spacing:.5px;margin-top:16px;min-height:48px;padding:18px 20px;text-transform:uppercase;transition:all .2s ease;width:100%}.login-submit-btn:hover:not(:disabled){background:#689f38;background:var(--primary-color-dark,#689f38);box-shadow:0 4px 12px #7cb3424d;box-shadow:0 4px 12px rgba(var(--primary-color-rgb,124,179,66),.3);transform:translateY(-1px)}.login-submit-btn:disabled{background:#adb5bd;box-shadow:none;cursor:not-allowed;transform:none}.login-btn{border-color:var(--primary-color)!important;box-shadow:0 2px 8px rgba(var(--primary-color-rgb),.3)!important}.login-btn,.login-btn:hover{background:linear-gradient(135deg,var(--primary-color) 0,var(--primary-color) 100%)!important}.login-btn:hover{box-shadow:0 4px 15px rgba(var(--primary-color-rgb),.4)!important;transform:translateY(-1px)}.settings-form{display:flex;flex-direction:column;gap:20px}.settings-form input[type=color],.settings-form input[type=email],.settings-form input[type=number],.settings-form input[type=password],.settings-form input[type=text]{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffffe6;border:2px solid #e5e7eb;border-radius:10px;font-family:Inter,sans-serif;font-size:14px;padding:14px 16px;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.settings-form input[type=email]:focus,.settings-form input[type=number]:focus,.settings-form input[type=password]:focus,.settings-form input[type=text]:focus{background:#fff;border-color:var(--primary-color);box-shadow:0 0 0 4px rgba(var(--primary-color-rgb),.1);outline:none;transform:translateY(-1px)}.settings-form input[type=email]:hover,.settings-form input[type=number]:hover,.settings-form input[type=password]:hover,.settings-form input[type=text]:hover{background:#fff;border-color:#d1d5db}.settings-form label{color:#374151;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.settings-form .form-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr;margin-bottom:20px}.settings-form .form-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.settings-form .btn{border:none;border-radius:10px;cursor:pointer;font-size:14px;font-weight:600;overflow:hidden;padding:12px 24px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.settings-form .btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.settings-form .btn:hover:before{left:100%}.settings-form .btn:hover{box-shadow:0 8px 25px #00000026;transform:translateY(-2px)}.settings-form .btn:active{transform:translateY(0)}.color-picker-container{align-items:center;display:flex;gap:12px;margin-top:8px}.color-picker-container input[type=color]{background:none;border:2px solid #e5e7eb;border-radius:10px;cursor:pointer;height:50px;padding:0;transition:all .3s ease;width:60px}.color-picker-container input[type=color]:hover{border-color:var(--primary-color);transform:scale(1.05)}.color-picker-container input[type=text]{flex:1 1}.settings-form input[type=checkbox]{-webkit-appearance:none;appearance:none;background:#fff;border:2px solid #e5e7eb;border-radius:6px;cursor:pointer;height:20px;position:relative;transition:all .3s ease;width:20px}.settings-form input[type=checkbox]:checked{background:var(--primary-color);border-color:var(--primary-color)}.settings-form .checkbox-label{align-items:center;cursor:pointer;display:flex;gap:12px;padding:8px 0}.stat-card:before{background:linear-gradient(90deg,var(--primary-color),#28a745,#ffc107,#dc3545)}.stat-card:hover{border-color:var(--primary-color);box-shadow:0 12px 30px #0000001a}.stat-card h4{font-size:28px;font-weight:700;margin:0 0 8px}.stat-card small{font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.modern-input,.modern-input textarea{background:linear-gradient(145deg,#fff,#f8f9fa);border:2px solid #e1e5e9;border-radius:10px;box-shadow:0 2px 4px #00000005;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;min-height:44px;padding:12px 16px;resize:vertical;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}textarea.modern-input{min-height:100px;resize:vertical}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080}.modal-content{box-shadow:0 20px 60px #0003;max-width:500px;width:90%}.modal-content.large-modal{max-width:800px}.modal-header{border-bottom:1px solid #e1e5e9;padding:20px 24px}.modal-header h2{color:#2c3e50;font-size:1.5rem;margin:0}.modal-header-actions{align-items:center;display:flex;gap:10px}.modal-content form{padding:24px}.modal-footer{background:#f8f9fa;border-radius:0 0 12px 12px;border-top:1px solid #e1e5e9;padding:20px 24px}.form-group label{color:#2c3e50;font-weight:600}.form-control,.form-group input,.form-group textarea{border:2px solid #e1e5e9;border-radius:8px;font-size:14px;padding:12px 16px;transition:border-color .3s ease;width:100%}.form-control,.form-group select{background:#fff;cursor:pointer}.form-control:focus,.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #3498db1a;outline:none}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.modules-list{max-height:60vh;padding:24px}.module-item{background:#f8f9fa;border-left:4px solid var(--primary-color);border-radius:8px;margin-bottom:16px;padding:16px}.module-item h4{color:#2c3e50;margin:0 0 8px}.module-item p{color:#6c757d;margin:0 0 12px}.module-stats{display:flex;gap:16px;margin-bottom:12px}.module-stats span{background:#fff;border-radius:4px;color:#6c757d;font-size:12px;padding:4px 8px}.lessons-list{margin-top:12px}.lessons-list h5{color:#2c3e50;font-size:14px;margin:0 0 8px}.lesson-item{background:#fff;font-size:13px;justify-content:space-between;margin-bottom:4px;padding:8px 12px}.lesson-type{background:#e9ecef;border-radius:3px;color:#6c757d;font-size:11px;padding:2px 6px}.lesson-duration{color:#28a745;font-weight:500}.enrollments-list{padding:24px}.table-container{overflow-x:auto}.enrollments-table{background:#fff;border-collapse:collapse;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden;width:100%}.enrollments-table td,.enrollments-table th{border-bottom:1px solid #e1e5e9;padding:12px 16px;text-align:left}.enrollments-table th{background:#f8f9fa;color:#2c3e50;font-size:13px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.enrollments-table tr:hover{background:#f8f9fa}.btn-sm{border-radius:4px;font-size:.75em;padding:4px 8px}.course-header-top{margin-bottom:16px}.course-header-top h2{flex:1 1;margin:0}.close-btn{border-radius:4px;line-height:1;padding:4px 8px}.close-btn:hover{color:#dc3545;transform:scale(1.1)}.close-btn:active{transform:scale(.95)}:root{--breakpoint-xs:360px;--breakpoint-sm:480px;--breakpoint-md:768px;--breakpoint-lg:992px;--breakpoint-xl:1200px;--breakpoint-xxl:1400px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;font-size:16px}img{display:block;height:auto;max-width:100%}.table-responsive{-webkit-overflow-scrolling:touch;overflow-x:auto}table{border-collapse:collapse;width:100%}input,select,textarea{font-size:16px;max-width:100%}.btn-responsive{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:14px;gap:8px;justify-content:center;min-height:44px;min-width:44px;padding:12px 16px;transition:all .3s ease}.grid-responsive{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr}.flex-responsive{display:flex;flex-wrap:wrap;gap:15px}.text-responsive{font-size:clamp(14px,2.5vw,18px);line-height:1.6}.heading-responsive{font-size:clamp(20px,4vw,32px);line-height:1.3}.spacing-responsive{margin:clamp(10px,2vw,20px);padding:clamp(15px,3vw,30px)}.card-responsive{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;margin-bottom:clamp(15px,2.5vw,20px);padding:clamp(16px,3vw,24px);transition:all .3s ease}.card-responsive:hover{box-shadow:0 4px 20px #00000026;transform:translateY(-2px)}.modal-responsive{align-items:center;background:#00000080;display:flex;height:100%;justify-content:center;left:0;padding:20px;position:fixed;top:0;width:100%;z-index:1000}.modal-content-responsive{background:#fff;border-radius:12px;max-height:90vh;max-width:90vw;overflow-y:auto;padding:clamp(20px,4vw,30px)}.nav-responsive{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.hide-mobile{display:block}.show-mobile{display:none}.hide-tablet{display:block}.show-tablet{display:none}.hide-desktop{display:block}.show-desktop{display:none}@media (max-width:360px){html{font-size:14px}.grid-responsive{gap:12px}.flex-responsive{gap:10px}.btn-responsive{font-size:13px;min-height:40px;min-width:40px;padding:10px 14px}.modal-content-responsive{max-height:95vh;max-width:95vw}}@media (max-width:480px){.grid-responsive{gap:15px}.flex-responsive{gap:12px}.hide-mobile{display:none}.show-mobile{display:block}.btn-responsive{justify-content:center;width:100%}}@media (max-width:767px){.grid-responsive{gap:18px;grid-template-columns:1fr}.hide-tablet{display:none}.show-tablet{display:block}}@media (min-width:768px) and (max-width:991px){.grid-responsive{gap:20px;grid-template-columns:repeat(2,1fr)}}@media (min-width:992px){.grid-responsive{gap:25px;grid-template-columns:repeat(3,1fr)}.hide-desktop{display:none}.show-desktop{display:block}}@media (min-width:1200px){.grid-responsive{gap:30px;grid-template-columns:repeat(4,1fr)}}@media (min-width:1400px){html{font-size:18px}.grid-responsive{gap:35px}.flex-responsive{gap:25px}}@media (orientation:landscape) and (max-height:500px){.modal-content-responsive{max-height:85vh}}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.card-responsive{box-shadow:0 1px 5px #0000001a}}@media (prefers-color-scheme:dark){.card-responsive,.modal-content-responsive{background:#2d3748;color:#fff}}@media print{.hide-print{display:none!important}.card-responsive{border:1px solid #ddd;box-shadow:none}.btn-responsive{background:#fff!important;border:1px solid #000;color:#000!important}}.btn-responsive:focus,input:focus,select:focus,textarea:focus{outline:2px solid #007bff;outline-offset:2px}html{scroll-behavior:smooth}@media (pointer:coarse){.btn-responsive{min-height:48px;min-width:48px}input,select,textarea{min-height:48px}}.container-fluid-responsive{margin-left:auto;margin-right:auto;padding-left:clamp(15px,3vw,30px);padding-right:clamp(15px,3vw,30px);width:100%}.flex-column-mobile{display:flex}@media (max-width:767px){.flex-column-mobile{flex-direction:column}}.flex-row-desktop{display:flex;flex-direction:column}@media (min-width:768px){.flex-row-desktop{flex-direction:row}}.aspect-ratio-responsive{height:0;padding-bottom:56.25%;position:relative;width:100%}.aspect-ratio-responsive>*{height:100%;left:0;object-fit:cover;position:absolute;top:0;width:100%}.text-xs-responsive{font-size:clamp(10px,1.5vw,12px)}.text-sm-responsive{font-size:clamp(12px,2vw,14px)}.text-md-responsive{font-size:clamp(14px,2.5vw,16px)}.text-lg-responsive{font-size:clamp(16px,3vw,20px)}.text-xl-responsive{font-size:clamp(20px,4vw,28px)}.text-2xl-responsive{font-size:clamp(24px,5vw,36px)}.text-3xl-responsive{font-size:clamp(30px,6vw,48px)}.p-xs-responsive{padding:clamp(4px,1vw,8px)}.p-sm-responsive{padding:clamp(8px,1.5vw,12px)}.p-md-responsive{padding:clamp(12px,2vw,16px)}.p-lg-responsive{padding:clamp(16px,3vw,24px)}.p-xl-responsive{padding:clamp(24px,4vw,32px)}.m-xs-responsive{margin:clamp(4px,1vw,8px)}.m-sm-responsive{margin:clamp(8px,1.5vw,12px)}.m-md-responsive{margin:clamp(12px,2vw,16px)}.m-lg-responsive{margin:clamp(16px,3vw,24px)}.m-xl-responsive{margin:clamp(24px,4vw,32px)}.forgot-password-overlay{align-items:center;animation:fadeIn .3s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.forgot-password-modal{animation:slideUp .3s ease-out;background:#fff!important;border-radius:16px;box-shadow:0 25px 50px -12px #00000040;max-height:90vh;max-width:480px;overflow-y:auto;position:relative;width:100%}.modal-header{align-items:flex-start;border-bottom:1px solid #f3f4f6}.header-content{align-items:flex-start;flex:1 1;gap:16px}.header-icon{align-items:center;background:#7cb3421a;border-radius:12px;display:flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.header-text{flex:1 1}.modal-title{color:#111827;font-size:clamp(18px,4vw,20px);font-weight:600;line-height:1.3;margin:0 0 4px}.modal-subtitle{color:#6b7280;font-size:clamp(13px,3vw,14px);line-height:1.4;margin:0}.close-button{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#374151;cursor:pointer;display:flex;flex-shrink:0;height:44px;justify-content:center;min-height:44px;min-width:44px;transition:all .2s ease;width:44px}.close-button:hover{background:#f3f4f6;color:#374151}.modal-content{padding:24px}.forgot-password-form{display:flex;flex-direction:column;gap:20px}.form-group{gap:8px}.form-label{color:#374151;font-size:clamp(13px,3vw,14px);font-weight:500;margin:0}.input-wrapper{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:10px;display:flex;overflow:hidden;position:relative;transition:all .3s ease}.input-wrapper:focus-within{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;transform:translateY(-1px)}.input-icon{color:#667eea;left:16px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);transition:all .3s ease;z-index:10}.input-wrapper:focus-within .input-icon{color:#667eea;transform:translateY(-50%) scale(1.1)}.form-input{border:none;color:#374151!important;font-size:clamp(14px,3.5vw,16px);outline:none;padding:16px 20px 16px 56px;transition:all .3s ease}.form-input,.form-input:focus{background:#0000}.form-input:disabled{background:#f9fafb;color:#9ca3af;cursor:not-allowed}.input-error{background:#fef2f2;border-color:#ef4444!important}.input-error:focus{box-shadow:0 0 0 3px #ef44441a!important}.input-success{background:#f0fdf4;border-color:#10b981!important}.input-success:focus{box-shadow:0 0 0 3px #10b9811a!important}.input-success-icon{color:#10b981;pointer-events:none;position:absolute;right:12px;top:50%;transform:translateY(-50%);z-index:10}.error-message{color:#ef4444;font-size:clamp(12px,3vw,13px);gap:6px;margin-top:4px}.alert{border-radius:10px;font-size:clamp(13px,3vw,14px);gap:8px;line-height:1.4}.alert-error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626}.form-actions{margin-top:8px}.btn{border:2px solid #0000;border-radius:12px;font-size:clamp(14px,3.5vw,15px);gap:10px;min-height:48px;min-width:48px;outline:none;overflow:hidden;padding:14px 24px;position:relative}.btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.btn:hover:before{left:100%}.btn:disabled{opacity:.6}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000;box-shadow:0 4px 15px #667eea4d;flex:1 1}.btn-primary:hover:not(:disabled){box-shadow:0 8px 25px #667eea66;transform:translateY(-2px)}.btn-secondary{background:#fff;border-color:#e5e7eb;box-shadow:0 2px 8px #0000001a;color:#374151;flex:1 1}.btn-secondary:hover:not(:disabled){background:#f8fafc;border-color:#667eea;box-shadow:0 4px 12px #667eea26;color:#667eea}.btn-full{width:100%}.success-content{flex-direction:column;gap:20px;text-align:center}.success-content,.success-icon{align-items:center;display:flex}.success-icon{animation:successPulse .6s ease-out;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;color:#fff;height:80px;justify-content:center;width:80px}.success-message h3{color:#111827;font-size:clamp(18px,4vw,20px);font-weight:600;margin:0 0 8px}.success-message p{color:#6b7280;font-size:clamp(14px,3.5vw,15px);line-height:1.5;margin:0}.success-note{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;margin-top:16px;padding:16px}.success-note p{color:#166534;font-size:clamp(13px,3vw,14px);margin:0}.success-note strong{color:#14532d}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes successPulse{0%{opacity:0;transform:scale(.8)}50%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@media (max-width:1023px) and (min-width:768px){.forgot-password-modal{max-width:clamp(380px,60vw,420px)}.modal-header{padding:clamp(18px,3vw,20px) clamp(18px,3vw,20px) clamp(12px,2vw,14px)}.modal-content{padding:clamp(18px,3vw,20px)}.modal-title{font-size:clamp(18px,3.5vw,20px)}.modal-subtitle{font-size:clamp(13px,2.5vw,14px)}.form-input{padding:clamp(14px,2.5vw,16px) clamp(18px,3vw,20px) clamp(14px,2.5vw,16px) clamp(50px,8vw,56px)}}@media (max-width:767px) and (min-width:481px){.forgot-password-overlay{padding:clamp(14px,2.5vw,16px)}.forgot-password-modal{max-width:clamp(90%,95vw,100%);width:clamp(90%,95vw,100%)}.modal-header{padding:clamp(16px,2.5vw,18px) clamp(16px,2.5vw,18px) clamp(10px,1.5vw,12px)}.header-content{gap:clamp(10px,1.5vw,12px)}.header-icon{height:clamp(36px,5vw,40px);width:clamp(36px,5vw,40px)}.modal-content{padding:clamp(16px,2.5vw,18px)}.modal-title{font-size:clamp(17px,3vw,19px)}.modal-subtitle{font-size:clamp(12px,2vw,13px)}.form-input{padding:clamp(13px,2vw,14px) clamp(16px,2.5vw,18px) clamp(13px,2vw,14px) clamp(44px,6vw,48px)}.form-actions{flex-direction:column;gap:clamp(8px,1.5vw,10px)}.btn{padding:clamp(12px,2vw,14px) clamp(18px,2.5vw,20px);width:100%}}@media (max-width:480px){.forgot-password-overlay{align-items:flex-start;padding:clamp(30px,6vw,40px) clamp(8px,2vw,12px) clamp(8px,2vw,12px)}.forgot-password-modal{border-radius:clamp(10px,2vw,12px);max-width:clamp(95%,98vw,100%);width:clamp(95%,98vw,100%)}.modal-header{align-items:flex-start;flex-direction:column;gap:clamp(10px,2vw,12px);padding:clamp(14px,2.5vw,16px) clamp(14px,2.5vw,16px) clamp(8px,1.5vw,10px)}.header-content{gap:clamp(8px,1.5vw,10px);width:100%}.header-icon{height:clamp(32px,4vw,36px);width:clamp(32px,4vw,36px)}.close-button{height:clamp(26px,3.5vw,28px);position:absolute;right:clamp(14px,2.5vw,16px);top:clamp(14px,2.5vw,16px);width:clamp(26px,3.5vw,28px)}.modal-content{padding:clamp(14px,2.5vw,16px)}.modal-title{font-size:clamp(16px,3.5vw,18px)}.modal-subtitle{font-size:clamp(11px,2vw,13px)}.form-input{padding:clamp(12px,2vw,14px) clamp(10px,1.5vw,12px) clamp(12px,2vw,14px) clamp(36px,5vw,40px)}.input-icon{left:clamp(8px,1.5vw,10px)}.input-success-icon{right:clamp(8px,1.5vw,10px)}.form-actions{flex-direction:column;gap:clamp(6px,1vw,8px);margin-top:clamp(10px,2vw,12px)}.btn{min-height:clamp(44px,6vw,48px);padding:clamp(14px,2.5vw,16px) clamp(16px,2.5vw,20px);width:100%}.success-icon{height:clamp(56px,8vw,64px);width:clamp(56px,8vw,64px)}}@media (max-width:360px){.forgot-password-overlay{padding:clamp(15px,3vw,20px) clamp(6px,1.5vw,8px) clamp(6px,1.5vw,8px)}.forgot-password-modal{border-radius:clamp(8px,1.5vw,10px)}.modal-header{padding:clamp(12px,2vw,14px) clamp(12px,2vw,14px) clamp(6px,1vw,8px)}.modal-content{padding:clamp(12px,2vw,14px)}.header-icon{height:clamp(28px,3.5vw,32px);width:clamp(28px,3.5vw,32px)}.close-button{height:clamp(24px,3vw,26px);right:clamp(12px,2vw,14px);top:clamp(12px,2vw,14px);width:clamp(24px,3vw,26px)}.modal-title{font-size:clamp(14px,3vw,16px)}.modal-subtitle{font-size:clamp(10px,1.5vw,11px)}.form-input{padding:clamp(10px,1.5vw,12px) clamp(8px,1vw,10px) clamp(10px,1.5vw,12px) clamp(32px,4vw,36px)}.btn{min-height:clamp(40px,5vw,44px);padding:clamp(12px,2vw,14px) clamp(14px,2vw,16px)}.success-icon{height:clamp(48px,6vw,56px);width:clamp(48px,6vw,56px)}.success-note{padding:clamp(10px,1.5vw,12px)}.alert{font-size:clamp(10px,1.5vw,11px);padding:clamp(8px,1.5vw,10px) clamp(10px,1.5vw,12px)}}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.forgot-password-modal{box-shadow:0 25px 50px -12px #0000004d}}@media (hover:none) and (pointer:coarse){.btn{min-height:48px;padding:16px 20px}.close-button{min-height:44px;min-width:44px}.form-input{min-height:48px;padding:16px 12px 16px 44px}}@media (prefers-color-scheme:dark){.forgot-password-modal{background:#1f2937;color:#f9fafb}.modal-title{color:#f9fafb}.modal-subtitle{color:#d1d5db}.form-label{color:#e5e7eb}.form-input{background:#374151;border-color:#4b5563;color:#f9fafb}.form-input:focus{background:#374151;border-color:#7cb342}.close-button{background:#374151;color:#d1d5db}.close-button:hover{background:#4b5563;color:#f9fafb}.btn-secondary{border-color:#4b5563;color:#d1d5db}.btn-secondary:hover:not(:disabled){background:#374151;border-color:#6b7280;color:#f9fafb}}@media (prefers-reduced-motion:reduce){.forgot-password-modal,.forgot-password-overlay,.spinner,.success-icon{animation:none}.btn,.close-button,.form-input{transition:none}}.existing-file-info{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;justify-content:space-between;margin-bottom:10px;padding:10px}.existing-file-info,.file-info{align-items:center;display:flex}.file-info{gap:8px}.file-name{color:#495057;font-weight:500}.file-size{color:#6c757d;font-size:.875rem}.lesson-attachments{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-top:15px;padding:15px}.lesson-attachment-item{align-items:flex-start;background-color:#fff;border:1px solid #dee2e6;border-radius:6px;display:flex;gap:15px;margin-bottom:10px;padding:15px}.lesson-attachment-item:last-child{margin-bottom:0}.lesson-attachment-content{flex:1 1}.attachment-description-input,.attachment-title-input{border:1px solid #ced4da;border-radius:4px;font-size:14px;padding:8px 12px;width:100%}.attachment-description-input:focus,.attachment-title-input:focus{border-color:#007bff;box-shadow:0 0 0 .2rem #007bff40;outline:none}.lesson-attachment-btn{margin-top:10px}@media (max-width:768px){.existing-file-info{align-items:flex-start;flex-direction:column;gap:10px;padding:clamp(8px,2vw,10px)}.lesson-attachment-item{flex-direction:column;gap:clamp(10px,2vw,12px)}.lesson-attachment-item,.lesson-attachments{padding:clamp(12px,2.5vw,15px)}.attachment-description-input,.attachment-title-input{font-size:clamp(13px,3vw,14px);padding:clamp(8px,2vw,10px) clamp(10px,2.5vw,12px)}}.add-lesson-container,.add-module-container{margin:15px 0;padding:10px}.add-lesson-btn,.add-module-btn{background-color:#f8f9fa;border:2px dashed #dee2e6;border-radius:8px;color:#6c757d;font-weight:500;padding:12px 20px;transition:all .3s ease}.add-lesson-btn:hover{background-color:#e3f2fd;border-color:#007bff;color:#007bff;transform:translateY(-2px)}.add-module-btn{background-color:#007bff;border-color:#007bff;border-style:solid;color:#fff}.add-module-btn:hover{background-color:#0056b3;border-color:#0056b3;box-shadow:0 4px 12px #007bff4d;transform:translateY(-2px)}@media (max-width:480px){.existing-file-info{padding:clamp(6px,1.5vw,8px)}.file-name{font-size:clamp(13px,3vw,14px)}.file-size{font-size:clamp(11px,2.5vw,12px)}.lesson-attachment-item{gap:clamp(8px,2vw,10px)}.lesson-attachment-item,.lesson-attachments{padding:clamp(8px,2vw,12px)}.attachment-description-input,.attachment-title-input{font-size:clamp(12px,3vw,13px);padding:clamp(6px,1.5vw,8px) clamp(8px,2vw,10px)}}@media (max-width:360px){.existing-file-info{gap:clamp(6px,1.5vw,8px);padding:clamp(4px,1vw,6px)}.file-info{gap:clamp(4px,1vw,6px)}.file-name{font-size:clamp(11px,2.5vw,12px)}.file-size{font-size:clamp(10px,2vw,11px)}.lesson-attachment-item{gap:clamp(6px,1.5vw,8px);padding:clamp(6px,1.5vw,8px)}.lesson-attachments{margin-top:clamp(8px,2vw,12px);padding:clamp(6px,1.5vw,8px)}.attachment-description-input,.attachment-title-input{font-size:clamp(11px,2.5vw,12px);padding:clamp(4px,1vw,6px) clamp(6px,1.5vw,8px)}}.dashboard-container{margin:0 auto;max-width:100%;padding:clamp(15px,3vw,30px)}.welcome-section{margin-bottom:clamp(20px,4vw,30px)}.welcome-card{align-items:center;background:linear-gradient(135deg,#1a1a2e,#16213e 50%,#0f3460);border-radius:clamp(12px,2vw,16px);box-shadow:0 4px 20px #0000001a;color:#fff;display:flex;gap:clamp(15px,3vw,20px);margin-bottom:clamp(20px,4vw,30px);padding:clamp(20px,4vw,30px)}.user-avatar-large{align-items:center;background:#fff3;border:3px solid #ffffff4d;border-radius:50%;display:flex;flex-shrink:0;font-size:clamp(1.2em,3vw,1.8em);font-weight:600;height:clamp(60px,8vw,80px);justify-content:center;width:clamp(60px,8vw,80px)}.welcome-content h2{font-size:clamp(1.4em,4vw,2em);font-weight:600;margin:0 0 8px}.welcome-content p{font-size:clamp(.9em,2.5vw,1.1em);line-height:1.4;margin:0;opacity:.9}.stats-grid{grid-gap:clamp(15px,3vw,20px);gap:clamp(15px,3vw,20px);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:clamp(25px,5vw,35px)}.stat-card{border:2px solid #0000;border-radius:clamp(10px,2vw,12px);box-shadow:0 4px 15px #00000014;overflow:hidden;padding:clamp(18px,3.5vw,24px);position:relative;text-align:center;transition:all .3s ease}.stat-card:before{background:linear-gradient(90deg,#667eea,#764ba2);content:"";height:4px;left:0;position:absolute;right:0;top:0;transition:all .3s ease}.stat-card:hover{border-color:#667eea4d;box-shadow:0 8px 25px #00000026;transform:translateY(-4px)}.stat-card.users:before{background:linear-gradient(90deg,#667eea,#764ba2)}.stat-card.courses:before{background:linear-gradient(90deg,#f093fb,#f5576c)}.stat-card.enrollments:before{background:linear-gradient(90deg,#4facfe,#00f2fe)}.stat-card.certificates:before{background:linear-gradient(90deg,#43e97b,#38f9d7)}.stat-card.available:before{background:linear-gradient(90deg,#fa709a,#fee140)}.stat-card.enrolled:before{background:linear-gradient(90deg,#a8edea,#fed6e3)}.stat-card.completed:before{background:linear-gradient(90deg,#96fbc4,#f9f586)}.stat-icon{border-radius:50%;font-size:clamp(18px,3vw,22px);height:clamp(40px,6vw,50px);margin:0 auto clamp(12px,2vw,15px);width:clamp(40px,6vw,50px)}.stat-card.users .stat-icon{background:linear-gradient(135deg,#667eea,#764ba2)}.stat-card.courses .stat-icon{background:linear-gradient(135deg,#f093fb,#f5576c)}.stat-card.enrollments .stat-icon{background:linear-gradient(135deg,#4facfe,#00f2fe)}.stat-card.certificates .stat-icon{background:linear-gradient(135deg,#43e97b,#38f9d7)}.stat-card.available .stat-icon{background:linear-gradient(135deg,#fa709a,#fee140)}.stat-card.enrolled .stat-icon{background:linear-gradient(135deg,#a8edea,#fed6e3)}.stat-card.completed .stat-icon{background:linear-gradient(135deg,#96fbc4,#f9f586)}.stat-value{color:#1f2937;font-size:clamp(1.8em,4vw,2.2em);font-weight:700;margin-bottom:5px}.stat-label{color:#4a5568;font-size:clamp(.85em,2vw,.95em)}.quick-actions-grid{grid-gap:clamp(15px,3vw,20px);display:grid;gap:clamp(15px,3vw,20px);grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:clamp(25px,5vw,35px)}@media (max-width:768px){.quick-actions-grid{gap:16px;grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.quick-actions-grid{gap:12px;grid-template-columns:1fr}}.quick-action-card{align-items:center;background:#fff;border:2px solid #0000;border-radius:clamp(10px,2vw,12px);box-shadow:0 4px 15px #00000014;cursor:pointer;display:flex;gap:clamp(12px,2.5vw,16px);min-height:80px;overflow:hidden;padding:clamp(18px,3.5vw,24px);position:relative;transition:all .3s ease}@media (max-width:480px){.quick-action-card{gap:12px;min-height:88px;padding:16px}}@media (max-width:360px){.quick-action-card{gap:10px;min-height:84px;padding:14px}}.quick-action-card:before{background:linear-gradient(90deg,#667eea,#764ba2);content:"";height:3px;left:0;position:absolute;right:0;top:0;transition:all .3s ease}.quick-action-card:hover{border-color:#667eea33;box-shadow:0 8px 25px #00000026;transform:translateY(-3px)}.action-icon{align-items:center;border-radius:8px;color:#fff;display:flex;flex-shrink:0;font-size:clamp(16px,2.5vw,20px);height:clamp(35px,5vw,45px);justify-content:center;width:clamp(35px,5vw,45px)}.action-content h4{color:#1f2937;font-size:clamp(1em,2.5vw,1.1em);font-weight:600;margin:0 0 4px}.action-content p{color:#2d3748;font-size:clamp(.8em,2vw,.9em);line-height:1.4;margin:0}.courses-grid{justify-content:start}@media (max-width:768px){.courses-grid{gap:16px;grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.courses-grid{gap:12px;grid-template-columns:1fr}}.course-card,.course-card-modern{animation:fadeInUp .6s ease-out forwards;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffffa;border:1px solid #0000000f;border-radius:16px;box-shadow:0 6px 24px #00000014;display:flex;flex-direction:column;min-height:400px;overflow:hidden;position:relative;transform-origin:center;transition:all .5s cubic-bezier(.25,.46,.45,.94)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.course-card:first-child{animation-delay:.1s}.course-card:nth-child(2){animation-delay:.2s}.course-card:nth-child(3){animation-delay:.3s}.course-card:nth-child(4){animation-delay:.4s}.course-card-modern:first-child{animation-delay:.1s}.course-card-modern:nth-child(2){animation-delay:.2s}.course-card-modern:nth-child(3){animation-delay:.3s}.course-card-modern:nth-child(4){animation-delay:.4s}.course-card:before{background:linear-gradient(90deg,#002c1c,#10b981);background:linear-gradient(90deg,var(--primary-color,#002c1c),var(--primary-color-light,#10b981));content:"";height:4px;left:0;position:absolute;right:0;top:0;z-index:1}.course-card-modern:hover,.course-card:hover{border-color:#002c1c4d;border-color:rgba(var(--primary-color-rgb,0,44,28),.3);box-shadow:0 16px 50px #0000002e;transform:translateY(-8px) scale(1.02)}.course-image,.course-thumbnail{align-items:center;aspect-ratio:1/1!important;background:linear-gradient(135deg,#002c1c,#10b981);background:linear-gradient(135deg,var(--primary-color,#002c1c) 0,var(--primary-color-light,#10b981) 100%);border-radius:8px 8px 0 0;color:#fff;display:flex;flex-shrink:0;font-size:clamp(2em,4vw,2.5em);height:auto!important;justify-content:center;max-height:none!important;min-height:0!important;min-height:auto!important;overflow:hidden;position:relative;width:100%!important}.course-thumbnail img{border-radius:8px 8px 0 0;left:0;object-position:center;position:absolute;top:0;transform-origin:center;transition:all .6s cubic-bezier(.25,.46,.45,.94)}.course-card-modern:hover .course-thumbnail img,.course-card:hover .course-thumbnail img{filter:brightness(1.1) contrast(1.05);transform:scale(1.05)}.course-placeholder{align-items:center;border-radius:8px 8px 0 0;color:#fff;display:flex;font-size:clamp(2em,4vw,2.5em);height:100%;justify-content:center;left:0;position:absolute;top:0;transition:all .4s ease;width:100%}.course-card-modern:hover .course-placeholder,.course-card:hover .course-placeholder,.course-placeholder{background:linear-gradient(135deg,#002c1c,#10b981);background:linear-gradient(135deg,var(--primary-color,#002c1c) 0,var(--primary-color-light,#10b981) 100%)}.course-card-modern:hover .course-placeholder,.course-card:hover .course-placeholder{filter:brightness(1.1);transform:scale(1.05)}@media (max-width:480px){.course-image,.course-thumbnail{font-size:1.8em}}@media (max-width:360px){.course-image,.course-thumbnail{font-size:1.6em}}.course-image:after,.course-thumbnail:after{background:linear-gradient(45deg,#ffffff1a,#0000 50%,#ffffff0d);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0;transition:opacity .4s ease}.course-card-modern:hover .course-thumbnail:after,.course-card:hover .course-image:after{background:linear-gradient(45deg,#fff3,#0000 50%,#ffffff1a);opacity:1}.course-content{display:flex;flex:1 1;flex-direction:column;padding:clamp(20px,4vw,24px)}.course-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#1a202c;display:-webkit-box;font-size:clamp(1.1em,2.8vw,1.25em);font-weight:700;letter-spacing:-.025em;line-height:1.4;margin:0 0 12px;overflow:hidden}.course-progress{margin-bottom:16px}.progress-bar{background:#f1f5f9;border-radius:6px;box-shadow:inset 0 1px 2px #0000000d}.progress-fill{background:linear-gradient(90deg,#002c1c,#10b981);background:linear-gradient(90deg,var(--primary-color,#002c1c),var(--primary-color-light,#10b981));border-radius:6px;position:relative;transition:width .4s cubic-bezier(.4,0,.2,1)}.progress-fill:after{animation:shimmer 2s infinite;background:linear-gradient(90deg,#0000,#ffffff4d,#0000);bottom:0;content:"";left:0;position:absolute;right:0;top:0}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.progress-text{font-weight:500}.course-meta,.progress-text{color:#64748b;font-size:clamp(.8em,2vw,.9em)}.course-meta{align-items:center;border-top:1px solid #f1f5f9;display:flex;justify-content:space-between;margin-top:16px;padding-top:12px}.course-meta .course-date{font-weight:500}.course-meta .course-status{border-radius:20px;font-size:.75em;font-weight:600;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.course-meta .status-active{background:#dcfce7;color:#166534}.course-meta .status-completed{background:#dbeafe;color:#1e40af}.course-meta .status-pending{background:#fef3c7;color:#92400e}.dashboard-card{background:#0000;border:2px solid #0000;border-radius:clamp(12px,2vw,16px);box-shadow:0 6px 20px #00000014;margin-bottom:clamp(20px,4vw,32px);overflow:hidden;padding:clamp(20px,4vw,28px);position:relative;transition:all .3s ease}.dashboard-card:before{background:linear-gradient(90deg,#667eea,#764ba2);content:"";height:4px;left:0;position:absolute;right:0;top:0}.dashboard-card:hover{border-color:#667eea33;box-shadow:0 12px 35px #00000026;transform:translateY(-4px)}.dashboard-card h3{align-items:center;color:#1f2937;display:flex;font-size:clamp(1.2em,3vw,1.4em);font-weight:600;gap:8px;margin:0 0 clamp(16px,3vw,24px)}.section-header{align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:clamp(16px,3vw,20px)}.section-header h3{color:#1f2937;font-size:clamp(1.3em,3.5vw,1.5em);font-weight:600;margin:0}.btn{border-radius:clamp(6px,1.5vw,8px);font-size:clamp(.85em,2vw,.95em);gap:6px;padding:clamp(10px,2vw,12px) clamp(16px,3vw,20px)}.btn:hover{transform:translateY(-1px)}.empty-state{background:linear-gradient(145deg,#fff,#f8f9fa);border:1px solid #0000000d;border-radius:clamp(12px,2vw,16px);box-shadow:0 4px 20px #0000000d;padding:clamp(40px,8vw,60px) clamp(15px,3vw,20px)}.empty-icon{font-size:clamp(3em,8vw,4em);margin-bottom:clamp(15px,3vw,20px);opacity:.3}.empty-state h4{color:#2d3748;font-size:clamp(1.1em,3vw,1.3em);margin-bottom:10px}.empty-state p{color:#4a5568;font-size:clamp(.9em,2.5vw,1em);margin-bottom:clamp(20px,4vw,25px)}@media (max-width:767px){.dashboard-container{padding:clamp(10px,2.5vw,20px)}.welcome-card{flex-direction:column;gap:15px;padding:clamp(16px,3vw,24px);text-align:center}.stats-grid{gap:clamp(12px,2.5vw,16px);grid-template-columns:repeat(2,1fr)}.courses-grid,.quick-actions-grid{gap:clamp(12px,2.5vw,16px);grid-template-columns:1fr}.section-header{align-items:stretch;flex-direction:column;gap:15px}.btn{justify-content:center;min-height:44px;width:100%}}@media (max-width:480px){.dashboard-container{padding:clamp(8px,2vw,12px)}.welcome-card{gap:12px;padding:clamp(12px,2.5vw,16px)}.user-avatar-large{height:clamp(50px,12vw,60px);width:clamp(50px,12vw,60px)}.stats-grid{gap:clamp(8px,2vw,12px);grid-template-columns:1fr}.stat-card{padding:clamp(12px,2.5vw,16px)}.courses-grid,.quick-actions-grid{gap:clamp(8px,2vw,12px)}.dashboard-card{margin-bottom:clamp(12px,2.5vw,16px);padding:clamp(12px,2.5vw,16px)}.course-image{height:clamp(80px,20vw,100px)}.course-content{padding:clamp(10px,2.5vw,14px)}}@media (max-width:360px){.dashboard-container{padding:8px}.dashboard-card,.welcome-card{padding:12px}.quick-action-card,.stat-card{padding:14px}.course-content{padding:12px}}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.course-card,.dashboard-card,.quick-action-card,.stat-card{box-shadow:0 1px 5px #0000001a}}@media (pointer:coarse){.btn,.course-card,.quick-action-card{min-height:48px}.course-card:hover,.dashboard-card:hover,.quick-action-card:hover,.stat-card:hover{transform:none}}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-color-scheme:dark){.course-card,.dashboard-card,.quick-action-card,.stat-card{background:#2d3748;border-color:#4a5568;color:#fff}.welcome-card{background:linear-gradient(135deg,#4a5568,#2d3748)}}.restricted-youtube-player{background:#000;border-radius:8px;box-shadow:0 4px 12px #0000004d;overflow:hidden;position:relative;width:100%}.video-container{border-radius:clamp(4px,1vw,8px);box-shadow:0 clamp(2px,.5vw,4px) clamp(6px,1.5vw,12px) #0000004d}.youtube-player{height:100%;width:100%}.youtube-player,.youtube-player iframe{border:none!important;height:100%!important;left:0!important;object-fit:cover!important;position:absolute!important;top:0!important;width:100%!important}.player-overlay{background:#0000;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;z-index:1}.seek-warning{align-items:center;animation:slideDown .3s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ff5757f2;border-radius:clamp(4px,1vw,6px);box-shadow:0 clamp(2px,1vw,4px) clamp(8px,2vw,12px) #0000004d;color:#fff;display:flex;font-size:clamp(11px,2.5vw,14px);font-weight:500;gap:clamp(6px,1.5vw,8px);left:clamp(10px,2.5vw,50%);padding:clamp(8px,2vw,12px) clamp(12px,3vw,20px);position:absolute;right:clamp(10px,2.5vw,auto);top:clamp(10px,2.5vw,20px);transform:translateX(0);z-index:10}@keyframes slideDown{0%{opacity:0;transform:translateX(-50%) translateY(-10px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.custom-controls{-webkit-backdrop-filter:blur(clamp(2px,.5vw,4px));backdrop-filter:blur(clamp(2px,.5vw,4px));background:linear-gradient(#0000,#000c);color:#fff;padding:clamp(10px,2.5vw,20px) clamp(8px,2vw,15px) clamp(8px,2vw,15px)}.progress-section{margin-bottom:clamp(8px,2vw,15px)}.progress-bar{background:#ffffff4d;border-radius:clamp(2px,.5vw,3px);height:clamp(4px,1vw,6px);position:relative;transition:height .2s ease}.progress-watched{background:#28a745;transition:width .3s ease}.progress-current,.progress-watched{border-radius:3px;height:100%;left:0;position:absolute;top:0}.progress-current{background:#007bff;transition:width .1s ease}.controls-row{justify-content:space-between}.controls-left,.controls-row{flex-wrap:wrap;gap:clamp(8px,2vw,15px)}.control-btn,.controls-left,.controls-right,.controls-row{align-items:center;display:flex}.control-btn{background:none;border:none;border-radius:clamp(3px,.75vw,4px);color:#fff;cursor:pointer;justify-content:center;min-height:clamp(36px,9vw,44px);min-width:clamp(36px,9vw,44px);padding:clamp(6px,1.5vw,8px)}.control-btn:hover{background:#fff3}.volume-controls{align-items:center;display:flex;gap:8px}.volume-slider{-webkit-appearance:none;appearance:none;background:#ffffff4d;border-radius:2px;cursor:pointer;height:4px;outline:none;width:80px}.volume-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#fff;border-radius:50%;cursor:pointer;height:14px;width:14px}.volume-slider::-moz-range-thumb{background:#fff;border:none;border-radius:50%;cursor:pointer;height:14px;width:14px}.time-display{font-size:clamp(11px,2.5vw,14px);font-weight:500;line-height:1.2;min-width:clamp(80px,20vw,100px);text-align:center}.progress-stats{align-items:flex-end;display:flex;flex-direction:column;flex-wrap:wrap;font-size:clamp(10px,2vw,12px);gap:clamp(3px,.75vw,4px)}.progress-stats span{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0009;border-radius:clamp(8px,2vw,12px);padding:clamp(2px,.5vw,3px) clamp(6px,1.5vw,8px);white-space:nowrap}.can-proceed{color:#28a745!important;font-weight:600}.cannot-proceed{color:#ffc107!important;font-weight:600}@media (max-width:768px){.video-container{border-radius:clamp(4px,1vw,6px);height:clamp(220px,35vw,280px)}.controls-row{align-items:stretch;flex-direction:column;gap:clamp(8px,2vw,12px)}.controls-left{gap:clamp(8px,2vw,12px);justify-content:center}.volume-controls{display:none}.progress-stats{align-items:center;flex-direction:row;gap:clamp(8px,2vw,12px);justify-content:center;text-align:center}.time-display{font-size:clamp(11px,2.5vw,13px);min-width:auto}}@media (max-width:480px){.video-container{border-radius:clamp(3px,.75vw,5px);height:clamp(180px,40vw,220px)}.custom-controls{padding:clamp(8px,2vw,12px) clamp(6px,1.5vw,10px) clamp(6px,1.5vw,8px)}.controls-left{gap:clamp(6px,1.5vw,8px)}.control-btn{min-height:clamp(32px,8vw,36px);min-width:clamp(32px,8vw,36px);padding:clamp(4px,1vw,6px)}.progress-stats{font-size:clamp(9px,2vw,11px)}.seek-warning,.time-display{font-size:clamp(10px,2.25vw,12px)}.seek-warning{left:clamp(8px,2vw,10px);padding:clamp(6px,1.5vw,8px) clamp(10px,2.5vw,12px);right:clamp(8px,2vw,10px);transform:none}}@media (hover:hover){.control-btn:hover{background:#fff3;transform:scale(1.05)}.progress-bar:hover{height:8px}}.progress-current,.progress-watched{transition:width .3s ease}.control-btn{transition:all .2s ease}.control-btn:active{transform:scale(.95)}.youtube-player[data-loading=true]{opacity:.7}.video-container:after{align-items:center;background:#000000b3;border-radius:50%;content:"";display:none;height:80px;justify-content:center;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:80px;z-index:2}.video-container.paused:after{display:flex}.video-container.paused:before{color:#fff;content:"▶";font-size:24px;left:52%;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:3}.assessment-container{background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;margin:0 auto;max-width:900px;padding:20px}.retry-btn{align-items:center;background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;gap:8px;margin-top:20px;padding:10px 20px;transition:background-color .2s}.retry-btn:hover{background:#0056b3}.assessment-info h2{color:#333;font-size:24px;font-weight:600;margin:0 0 10px}.assessment-info p{font-size:16px}.assessment-stats{align-items:flex-end;flex-direction:column;gap:15px}.timer{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;font-size:18px;font-weight:600;gap:8px;padding:8px 16px}.time-warning{animation:pulse 1s infinite;color:#dc3545!important}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.progress{align-items:flex-end;display:flex;flex-direction:column;gap:5px}.progress-bar{width:200px}.progress-fill{background:#28a745}.question-navigation{background:#f8f9fa;border-radius:8px;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:30px;padding:20px}.nav-question{background:#fff;border:2px solid #dee2e6;border-radius:8px;cursor:pointer;font-weight:600;height:40px;transition:all .2s ease;width:40px}.nav-question:hover{background:#e3f2fd;border-color:#007bff}.nav-question.active{background:#007bff;border-color:#007bff;color:#fff}.nav-question.answered{background:#28a745;border-color:#28a745;color:#fff}.nav-question.answered.active{background:#1e7e34;border-color:#1e7e34}.question-container{background:#f8f9fa;border-radius:12px;margin-bottom:20px;padding:30px}.question-header{margin-bottom:20px}.question-number{border-radius:6px;display:inline-block;font-size:14px;padding:6px 12px}.question-content h3{color:#333;font-size:20px;line-height:1.5;margin:20px 0 30px}.options-container{display:flex;flex-direction:column;gap:15px;margin-bottom:30px}.option-label{align-items:flex-start;background:#fff;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:15px;transition:all .2s ease}.option-label:hover{background:#f0f8ff;border-color:#007bff}.option-label input[type=radio]{accent-color:#007bff;height:18px;margin:0;width:18px}.option-text{font-size:16px;line-height:1.4}.option-label:has(input:checked){background:#e3f2fd;border-color:#007bff}.question-actions{display:flex;gap:15px;justify-content:space-between}.btn-secondary:hover:not(:disabled){background:#545b62;transform:translateY(-1px)}.submit-btn{background:#28a745}.submit-btn:hover:not(:disabled){background:#1e7e34}.assessment-result{padding:40px 20px;text-align:center}.result-header{margin-bottom:40px}.result-header h2{color:#333;font-size:28px;margin:20px 0}.score-display{font-size:48px;font-weight:700;margin:20px 0}.score-icon{height:64px;width:64px}.score-icon.success{color:#28a745}.score-icon.warning{color:#ffc107}.score-icon.danger{color:#dc3545}.result-details{background:#f8f9fa;border-radius:12px;margin-bottom:30px;padding:30px}.result-stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.stat{flex-direction:column;gap:5px;text-align:center}.stat-label{font-size:14px;font-weight:500}.stat-value{color:#333;font-size:20px}.stat-value.passed{color:#28a745}.stat-value.failed{color:#dc3545}.failure-message,.success-message{align-items:center;border-radius:8px;display:flex;font-weight:600;gap:10px;justify-content:center;padding:15px}.success-message{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.failure-message{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.result-actions{display:flex;gap:15px;justify-content:center;margin-bottom:30px}.assessment-review{background:#fff;border:1px solid #e9ecef;border-radius:12px;padding:30px;text-align:left}.assessment-review h3{color:#333;margin-bottom:30px;text-align:center}.review-question{border:2px solid #e9ecef;border-radius:8px;margin-bottom:30px;padding:20px}.review-question.correct{background:#f8fff9;border-color:#28a745}.review-question.incorrect{background:#fff8f8;border-color:#dc3545}.question-header{align-items:center;display:flex;justify-content:space-between}.result-icon{height:20px;width:20px}.result-icon.correct{color:#28a745}.result-icon.incorrect{color:#dc3545}.review-question h4{color:#333;font-size:18px;margin-bottom:20px}.options-review{display:flex;flex-direction:column;gap:10px}.option-review{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;display:flex;justify-content:space-between;padding:10px 15px}.option-review.correct-option{background:#d4edda;border-color:#28a745;color:#155724}.option-review.user-answer{font-weight:600}.option-review.user-answer:not(.correct-option){background:#f8d7da;border-color:#dc3545;color:#721c24}@media (min-width:1200px){.assessment-container{margin:clamp(15px,3vw,20px);padding:clamp(25px,4vw,30px)}.assessment-header{margin-bottom:clamp(25px,4vw,30px);padding-bottom:clamp(18px,3vw,20px)}.assessment-info h2{font-size:clamp(22px,4vw,26px)}.assessment-info p{font-size:clamp(15px,2.5vw,17px)}.question-container{padding:clamp(25px,4vw,30px)}.question-content h3{font-size:clamp(18px,3vw,22px)}.nav-question{font-size:clamp(14px,2.5vw,16px);height:clamp(40px,6vw,45px);width:clamp(40px,6vw,45px)}.option-label{padding:clamp(15px,2.5vw,18px)}.option-text{font-size:clamp(15px,2.5vw,17px)}.btn{font-size:clamp(14px,2.5vw,16px);padding:clamp(10px,2vw,12px) clamp(20px,3vw,24px)}}@media (min-width:992px) and (max-width:1199px){.assessment-container{margin:clamp(12px,2.5vw,15px);padding:clamp(20px,3.5vw,25px)}.assessment-header{margin-bottom:clamp(22px,3.5vw,25px);padding-bottom:clamp(16px,2.5vw,18px)}.assessment-info h2{font-size:clamp(20px,3.5vw,24px)}.assessment-info p{font-size:clamp(14px,2.5vw,16px)}.question-container{padding:clamp(20px,3.5vw,25px)}.question-content h3{font-size:clamp(16px,2.5vw,20px)}.nav-question{font-size:clamp(13px,2vw,15px);height:clamp(38px,5vw,42px);width:clamp(38px,5vw,42px)}.option-label{padding:clamp(14px,2vw,16px)}.option-text{font-size:clamp(14px,2vw,16px)}.btn{font-size:clamp(13px,2vw,15px);padding:clamp(10px,1.5vw,12px) clamp(18px,2.5vw,22px)}}@media (min-width:768px) and (max-width:991px){.assessment-container{margin:clamp(10px,2vw,12px);padding:clamp(15px,3vw,20px)}.assessment-header{gap:clamp(15px,2.5vw,18px);margin-bottom:clamp(20px,3vw,25px);padding-bottom:clamp(15px,2vw,18px)}.assessment-info h2{font-size:clamp(18px,3vw,22px)}.assessment-info p{font-size:clamp(13px,2vw,15px)}.question-container{padding:clamp(18px,3vw,22px)}.question-content h3{font-size:clamp(16px,2.5vw,18px)}.nav-question{font-size:clamp(12px,1.5vw,14px);height:clamp(35px,4.5vw,40px);width:clamp(35px,4.5vw,40px)}.option-label{padding:clamp(12px,2vw,15px)}.option-text{font-size:clamp(13px,2vw,15px)}.btn{font-size:clamp(12px,2vw,14px);padding:clamp(8px,1.5vw,10px) clamp(16px,2.5vw,20px)}.timer{font-size:clamp(15px,2.5vw,17px);padding:clamp(6px,1vw,8px) clamp(12px,2vw,14px)}.progress-bar{width:clamp(150px,25vw,180px)}}@media (max-width:767px){.assessment-container{margin:clamp(8px,2vw,10px);padding:clamp(12px,2.5vw,15px)}.assessment-header{align-items:stretch;flex-direction:column;gap:clamp(15px,3vw,20px);margin-bottom:clamp(20px,4vw,25px);padding-bottom:clamp(15px,2.5vw,18px)}.assessment-info h2{font-size:clamp(18px,3.5vw,22px)}.assessment-info p{font-size:clamp(13px,2.5vw,15px)}.assessment-stats{align-items:stretch;gap:clamp(12px,2.5vw,15px)}.timer{font-size:clamp(15px,3vw,17px);justify-content:center;padding:clamp(6px,1.5vw,8px) clamp(12px,2.5vw,14px)}.progress{align-items:stretch}.progress-bar{height:clamp(6px,1vw,8px);width:100%}.question-navigation{flex-wrap:wrap;gap:clamp(6px,1.5vw,8px);justify-content:center;padding:clamp(15px,3vw,18px)}.question-container{margin-bottom:clamp(15px,3vw,18px);padding:clamp(15px,3vw,18px)}.question-content h3{font-size:clamp(16px,3vw,18px);margin:clamp(15px,3vw,18px) 0 clamp(20px,4vw,25px)}.question-actions{flex-direction:column;gap:clamp(10px,2vw,12px)}.result-stats{gap:clamp(12px,2.5vw,15px);grid-template-columns:1fr}.result-actions{flex-direction:column;gap:clamp(10px,2vw,12px)}.nav-question{font-size:clamp(11px,2vw,13px);height:clamp(32px,4vw,38px);width:clamp(32px,4vw,38px)}.option-label{gap:clamp(8px,2vw,10px);padding:clamp(12px,2.5vw,14px)}.btn,.option-text{font-size:clamp(13px,2.5vw,15px)}.btn{padding:clamp(10px,2vw,12px) clamp(18px,3.5vw,22px)}.result-header h2{font-size:clamp(22px,4vw,26px)}.score-display{font-size:clamp(36px,7vw,44px)}.assessment-review,.result-details{padding:clamp(20px,4vw,25px)}.review-question{margin-bottom:clamp(20px,4vw,25px);padding:clamp(15px,3vw,18px)}}@media (max-width:480px){.assessment-container{margin:clamp(6px,1.5vw,8px);padding:clamp(10px,2vw,12px)}.assessment-header{gap:clamp(12px,2.5vw,15px);margin-bottom:clamp(18px,3.5vw,22px);padding-bottom:clamp(12px,2vw,15px)}.assessment-info h2{font-size:clamp(16px,3vw,20px)}.assessment-info p{font-size:clamp(12px,2vw,14px)}.assessment-stats{gap:clamp(10px,2vw,12px)}.timer{font-size:clamp(14px,2.5vw,16px);padding:clamp(5px,1vw,6px) clamp(10px,2vw,12px)}.progress-bar{height:clamp(5px,1vw,6px)}.question-navigation{gap:clamp(5px,1vw,6px);padding:clamp(12px,2.5vw,15px)}.question-content h3{font-size:clamp(14px,2.5vw,18px);margin:clamp(12px,2.5vw,15px) 0 clamp(18px,3.5vw,22px)}.question-container{padding:clamp(12px,2.5vw,16px)}.question-container,.question-header{margin-bottom:clamp(12px,2.5vw,15px)}.question-number{font-size:clamp(11px,2vw,12px);padding:clamp(4px,1vw,5px) clamp(8px,1.5vw,10px)}.options-container{gap:clamp(10px,2vw,12px);margin-bottom:clamp(20px,4vw,25px)}.score-display{font-size:clamp(28px,5vw,36px)}.nav-question{font-size:clamp(10px,1.5vw,12px);height:clamp(30px,3.5vw,35px);width:clamp(30px,3.5vw,35px)}.option-label{gap:clamp(8px,1.5vw,10px);padding:clamp(10px,2vw,12px)}.option-text{font-size:clamp(12px,2vw,14px)}.question-actions{gap:clamp(8px,1.5vw,10px)}.btn{font-size:clamp(12px,2vw,14px);padding:clamp(8px,1.5vw,10px) clamp(15px,2.5vw,18px)}.result-stats{gap:clamp(10px,2vw,12px)}.result-actions{gap:clamp(8px,1.5vw,10px)}.result-header h2{font-size:clamp(20px,3.5vw,24px)}.assessment-review,.result-details{padding:clamp(18px,3.5vw,22px)}.review-question{margin-bottom:clamp(18px,3.5vw,22px);padding:clamp(12px,2.5vw,15px)}.review-question h4{font-size:clamp(14px,2.5vw,16px)}.option-review{padding:clamp(8px,1.5vw,10px) clamp(10px,2vw,12px)}}@media (max-width:360px){.assessment-container{margin:clamp(3px,1vw,5px);padding:clamp(6px,1.5vw,10px)}.assessment-header{gap:clamp(8px,2vw,12px);margin-bottom:clamp(12px,2.5vw,18px);padding-bottom:clamp(8px,1.5vw,12px)}.assessment-info h2{font-size:clamp(14px,2.5vw,18px)}.assessment-info p{font-size:clamp(10px,1.5vw,12px)}.assessment-stats{gap:clamp(6px,1.5vw,10px)}.timer{font-size:clamp(12px,2vw,14px);padding:clamp(4px,.5vw,5px) clamp(8px,1.5vw,10px)}.progress-bar{height:clamp(4px,.5vw,5px)}.question-navigation{gap:clamp(4px,.5vw,6px);padding:clamp(8px,2vw,12px)}.question-content h3{font-size:clamp(12px,2vw,16px);margin:clamp(8px,2vw,12px) 0 clamp(12px,2.5vw,18px)}.question-container{padding:clamp(8px,2vw,14px)}.question-container,.question-header{margin-bottom:clamp(8px,2vw,12px)}.question-number{font-size:clamp(9px,1.5vw,11px);padding:clamp(3px,.5vw,4px) clamp(6px,1vw,8px)}.options-container{gap:clamp(6px,1.5vw,10px);margin-bottom:clamp(15px,3vw,20px)}.score-display{font-size:clamp(24px,4vw,32px)}.nav-question{font-size:clamp(8px,1vw,11px);height:clamp(26px,3vw,32px);width:clamp(26px,3vw,32px)}.option-label{gap:clamp(6px,1vw,8px);padding:clamp(6px,1.5vw,10px)}.option-text{font-size:clamp(10px,1.5vw,13px)}.question-actions{flex-direction:column;gap:clamp(5px,1vw,8px)}.btn{font-size:clamp(10px,1.5vw,12px);padding:clamp(6px,1vw,8px) clamp(10px,2vw,15px);width:100%}.result-stats{gap:clamp(6px,1.5vw,10px)}.result-actions{flex-direction:column;gap:clamp(5px,1vw,8px)}.result-header h2{font-size:clamp(16px,3vw,20px)}.assessment-review,.result-details{padding:clamp(12px,2.5vw,18px)}.review-question{margin-bottom:clamp(12px,2.5vw,18px);padding:clamp(8px,2vw,12px)}.review-question h4{font-size:clamp(12px,2vw,14px);margin-bottom:clamp(12px,2.5vw,15px)}.option-review{font-size:clamp(10px,1.5vw,12px);padding:clamp(6px,1vw,8px) clamp(8px,1.5vw,10px)}.options-review{gap:clamp(6px,1vw,8px)}.loading{padding:clamp(30px,6vw,40px) clamp(10px,2vw,15px)}.loading-spinner{height:clamp(30px,4vw,35px);width:clamp(30px,4vw,35px)}.error-message{padding:clamp(30px,6vw,40px) clamp(10px,2vw,15px)}.retry-btn{font-size:clamp(10px,1.5vw,12px);padding:clamp(6px,1vw,8px) clamp(12px,2vw,16px)}}.attachments-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin:20px 0;padding:20px}.attachments-header{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.attachments-header h3{color:#333;font-size:18px;font-weight:600;margin:0}.upload-section{align-items:center;display:flex;gap:10px}.upload-btn{align-items:center;background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:8px;padding:8px 16px;text-decoration:none;transition:all .2s ease}.upload-btn:hover{background:#0056b3;transform:translateY(-1px)}.upload-btn.uploading{background:#6c757d;cursor:not-allowed}.error-message{border-radius:6px;margin-bottom:15px;padding:12px}.loading{font-style:italic}.no-attachments{color:#6c757d;padding:40px;text-align:center}.no-attachments-icon{margin-bottom:15px;opacity:.5}.no-attachments p{font-style:italic;margin:0}.attachments-list{display:flex;flex-direction:column;gap:12px}.attachment-item{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;display:flex;justify-content:space-between;padding:15px;transition:all .2s ease}.attachment-item:hover{background:#e9ecef;box-shadow:0 2px 8px #0000001a;transform:translateY(-1px)}.attachment-info{align-items:center;display:flex;flex:1 1;gap:15px}.file-icon{background:#e9ecef;border-radius:6px;color:#6c757d;height:40px;padding:8px;width:40px}.file-icon.pdf{background:#dc3545;color:#fff}.file-icon.ppt{background:#fd7e14;color:#fff}.file-icon.doc{background:#0d6efd;color:#fff}.file-icon.xls{background:#198754;color:#fff}.file-icon.img{background:#6f42c1;color:#fff}.file-icon.video{background:#d63384;color:#fff}.file-icon.archive{background:#6c757d;color:#fff}.file-icon.txt{background:#20c997;color:#fff}.attachment-details{flex:1 1}.attachment-title{color:#333;font-size:16px;font-weight:600;margin:0 0 4px}.attachment-description{color:#495057;font-size:14px;font-style:italic;margin:0 0 4px}.attachment-filename{color:#6c757d;font-size:13px;margin:0 0 4px}.attachment-size{background:#e9ecef;color:#adb5bd;margin-right:8px}.attachment-size,.file-type{border-radius:4px;font-size:12px;padding:2px 6px}.file-type{background:#f8f9fa;border:1px solid #dee2e6;color:#495057}.file-preview{border-radius:6px;height:40px;overflow:hidden;position:relative;width:40px}.image-preview{object-fit:cover}.file-icon-fallback,.image-preview{border-radius:6px;height:100%;width:100%}.file-icon-fallback{align-items:center;background:#e9ecef;display:flex;justify-content:center;left:0;position:absolute;top:0}.attachment-actions{display:flex;gap:8px}.action-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:inline-flex;height:36px;justify-content:center;text-decoration:none;transition:all .2s ease;width:36px}.view-btn{background:#17a2b8;color:#fff}.view-btn:hover{background:#138496;color:#fff}.download-btn{background:#28a745;color:#fff}.download-btn:hover{background:#1e7e34;color:#fff}.action-btn:hover{box-shadow:0 2px 4px #0003;transform:translateY(-1px)}.upload-form{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;margin-bottom:20px;padding:20px}.form-group{margin-bottom:15px}.form-group label{margin-bottom:5px}.form-group input[type=file],.form-group input[type=text]{border:1px solid #ced4da;border-radius:4px;font-size:14px;padding:8px 12px;transition:border-color .2s ease;width:100%}.form-group input[type=file]:focus,.form-group input[type=text]:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.file-input-wrapper{display:flex;flex-direction:column;gap:10px}.file-input-button{align-items:center;background:#f8f9fa;border:2px dashed #ced4da;border-radius:6px;color:#495057;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:8px;justify-content:center;min-height:44px;padding:10px 16px;text-align:center;transition:all .2s ease}.file-input-button:hover{background:#e9ecef;border-color:#007bff;color:#007bff;transform:translateY(-1px)}.selected-file{align-items:center;background:#d4edda;border:1px solid #c3e6cb;border-radius:4px;color:#155724;display:flex;font-size:13px;gap:8px;margin-top:8px;padding:12px}.selected-file span{flex:1 1}.form-actions{gap:10px;margin-top:20px}.btn-primary,.btn-secondary{align-items:center;border:none;border-radius:6px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:8px;padding:10px 16px;transition:all .2s ease}.btn-secondary:hover{transform:translateY(-1px)}@media (max-width:768px){.attachment-item,.attachments-header{align-items:flex-start;flex-direction:column;gap:15px}.attachment-info{width:100%}.attachment-actions{justify-content:flex-end;width:100%}.form-actions{flex-direction:column}.btn-primary,.btn-secondary{justify-content:center}}@media (max-width:480px){.attachments-container{margin:15px 0;padding:15px}.upload-btn{font-size:13px;padding:6px 12px}.attachment-title{font-size:14px}.attachment-filename{font-size:13px}.upload-form{padding:15px}}.course-view{background:#f8f9fa;display:flex;height:calc(100vh - 60px)}.video-section{display:flex;flex:1 1;flex-direction:column;padding:clamp(8px,2vw,20px) clamp(10px,3vw,20px) clamp(8px,2vw,20px) clamp(20px,4vw,30px)}.video-container{background:#000;border-radius:clamp(6px,1vw,8px);box-shadow:0 4px 12px #00000026;height:0!important;margin-bottom:clamp(15px,3vw,20px);overflow:hidden;padding-bottom:56.25%!important;position:relative;width:100%!important}.video-container>*{height:100%!important;left:0!important;position:absolute!important;top:0!important;width:100%!important}.video-iframe{height:100%;width:100%}.video-placeholder{color:#6c757d;flex-direction:column;height:100%}.play-button,.video-placeholder{align-items:center;display:flex;justify-content:center}.play-button{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fffffff2;border-radius:50%;box-shadow:0 4px 12px #0003;color:#333;cursor:pointer;font-size:clamp(20px,4vw,30px);height:clamp(50px,8vw,80px);margin-bottom:clamp(10px,2vw,15px);transition:all .3s ease;width:clamp(50px,8vw,80px)}.play-button:hover{background:#fff;transform:scale(1.1)}.lesson-info{background:#fff;border:1px solid #dee2e6;border-radius:8px;margin-bottom:20px;padding:20px}.lesson-info h1{color:#000;font-size:clamp(20px,4vw,28px);font-weight:600;line-height:1.3;margin-bottom:clamp(8px,1.5vw,12px)}.module-info{color:#000;font-size:clamp(12px,2.5vw,16px);margin-bottom:clamp(10px,2vw,15px)}.lesson-controls{display:flex;flex-wrap:wrap;gap:clamp(8px,2vw,12px)}.course-sidebar{background:#fff;border-left:1px solid #dee2e6;display:flex;flex-direction:column;width:380px}.course-header{background:#fff;border-bottom:1px solid #dee2e6;padding:20px}.course-header-top{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.close-btn{font-size:24px;height:44px;min-height:44px;min-width:44px;width:44px}.close-btn:hover{color:#333}.course-header h2{color:#fff;font-size:20px;font-weight:600;line-height:1.3;margin:0}.progress-info{display:flex;flex-direction:column;margin-top:12px}.progress-bar{background:#dee2e6;border:1px solid #ced4da;border-radius:12px;height:24px;margin-bottom:8px;width:100%}.progress-fill{background:linear-gradient(90deg,#007bff,#0056b3)}.progress-text{color:#fff;font-size:14px;margin-left:0;text-align:left}.modules-list{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:8px;flex:1 1;margin:clamp(8px,2vw,12px);overflow-y:auto;padding:clamp(12px,2.5vw,16px)}.module-item{border-bottom:1px solid #f1f3f4}.module-header{align-items:center;background:linear-gradient(135deg,#007bff,#0056b3);border-radius:6px;box-shadow:0 2px 8px #007bff33;color:#fff;cursor:pointer;display:flex;justify-content:space-between;margin-bottom:clamp(8px,2vw,10px);padding:clamp(12px,2.5vw,16px);transition:all .3s ease}.module-header:hover{background:#e9ecef}.module-title{color:#fff;font-size:clamp(15px,3.2vw,17px);font-weight:600;line-height:1.4}.expand-icon{color:#6c757d;transition:transform .2s ease}.expand-icon.expanded{transform:rotate(180deg)}.lessons-list{background:#fff}.lesson-item{align-items:center;border-left:3px solid #0000;border-radius:4px;cursor:pointer;display:flex;margin-bottom:clamp(4px,1vw,6px);padding:clamp(10px,2vw,14px) clamp(12px,2.5vw,16px);transition:all .2s ease}.lesson-item:hover{background:#007bff14;border-left-color:#007bff;transform:translateX(2px)}.lesson-item.active{background:#e3f2fd;border-left-color:#007bff}.lesson-item.completed{background:#f1f8e9}.lesson-item.completed .lesson-status{color:#28a745}.lesson-item.blocked{background-color:#f8f9fa;border-left:3px solid #6c757d;pointer-events:none}.lesson-item.blocked .lesson-status{color:#6c757d}.lesson-blocked-text{color:#6c757d;display:block;font-size:12px;font-style:italic;margin-top:4px}.lesson-status{color:#007bff;font-size:16px;margin-right:15px;width:20px}.lesson-content{flex:1 1}.lesson-title{color:#333;font-size:clamp(13px,2.8vw,15px);font-weight:500;line-height:1.4}.btn{font-size:13px;padding:8px 16px;text-align:center}.btn-primary:disabled{background:#6c757d;cursor:not-allowed}.btn-success{background:#28a745;color:#fff}.btn-success:hover{background:#218838}.btn-outline:disabled{background:#0000;border-color:#6c757d;color:#6c757d;cursor:not-allowed}.lesson-navigation{align-items:center;display:flex;gap:12px}.lesson-navigation .btn{align-items:center;display:inline-flex;font-size:13px;font-weight:500;gap:4px;justify-content:center;min-width:auto;overflow:visible;padding:8px 16px;text-overflow:clip;white-space:nowrap}.lesson-navigation .btn-outline{cursor:pointer;font-weight:500!important}.lesson-navigation .btn-outline,.lesson-navigation .btn-outline:hover{background:#090b0a!important;border:none!important;color:#fff!important}.lesson-navigation .btn-outline:disabled{background:#6c757d!important;border:none!important;color:#fff!important;cursor:not-allowed}.lesson-navigation .btn-primary{cursor:pointer;font-weight:500!important}.lesson-navigation .btn-primary,.lesson-navigation .btn-primary:hover{background:#090b0a!important;border:none!important;color:#fff!important}.lesson-navigation .btn-primary:disabled{background:#6c757d!important;border:none!important;color:#fff!important;cursor:not-allowed}.lesson-timer{background:#f8f9fa;border:1px solid #dee2e6;border-radius:clamp(6px,1.5vw,10px);box-shadow:0 2px 8px #0000001a;margin-bottom:clamp(10px,2vw,15px);padding:clamp(10px,2.5vw,15px)}.timer-info{align-items:center;display:flex;justify-content:space-between;margin-top:10px}.timer-label{color:#333;font-size:14px;font-weight:600}.timer-display{color:#2196f3;font-family:Courier New,monospace;font-size:clamp(14px,3vw,18px);font-weight:700}.timer-status{color:#6c757d;font-size:12px}.timer-progress{background:#e9ecef;border-radius:4px;height:8px;overflow:hidden;width:100%}.timer-progress-fill{background:linear-gradient(90deg,#28a745,#20c997);border-radius:4px;height:100%;transition:width .3s ease}.timer-controls{align-items:center;display:flex;margin-top:12px}.btn-sm{font-size:12px;padding:8px 12px}.btn-outline{border:1px solid #6c757d;color:#6c757d}.btn-outline:hover{background:#6c757d}@media (min-width:768px) and (max-width:1023px){.course-view{height:calc(100vh - 50px)}.course-sidebar{width:300px}.video-section{padding:8px 15px 8px 8px}.video-container{aspect-ratio:1/1;margin-bottom:12px;max-height:45vh;min-height:150px}.lesson-info h1{font-size:clamp(18px,3vw,20px)}.course-header{padding:12px}.course-header h2{font-size:16px}.module-header{padding:10px 12px}.lesson-item{padding:8px 12px}}@media (min-width:481px) and (max-width:767px){.course-view{flex-direction:column;gap:clamp(12px,2vw,16px);height:auto;min-height:100vh}.course-sidebar{background:linear-gradient(135deg,#fff,#f8f9fa);border:1px solid #007bff1a;border-radius:0 0 12px 12px;box-shadow:0 4px 12px #0000001a;display:flex;flex-direction:column;height:clamp(45vh,50vh,55vh);max-height:clamp(45vh,50vh,55vh);order:-1;overflow:hidden;width:100%}.video-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;order:1;padding:clamp(10px,3vw,15px)}.course-header{padding:clamp(12px,2.5vw,16px)}.modules-list{padding:clamp(10px,2vw,14px);scrollbar-color:#007bff4d #0000}.modules-list::-webkit-scrollbar{width:6px}.modules-list::-webkit-scrollbar-track{border-radius:3px}.modules-list::-webkit-scrollbar-thumb{background:#007bff4d;border-radius:3px}.modules-list::-webkit-scrollbar-thumb:hover{background:#007bff80}.module-header{font-size:clamp(14px,2.8vw,16px);padding:clamp(10px,2vw,14px)}.lesson-item{font-size:clamp(12px,2.5vw,14px);padding:clamp(8px,1.8vw,12px) clamp(10px,2vw,14px)}.video-container{aspect-ratio:1/1;border-radius:clamp(6px,1.5vw,10px);margin-bottom:clamp(10px,2vw,15px);max-height:clamp(35vh,40vh,45vh);min-height:clamp(150px,25vh,200px)}.lesson-info h1{font-size:clamp(18px,4.5vw,22px)}.module-info{font-size:13px}.lesson-controls{flex-direction:column;gap:8px}.btn{font-size:13px;padding:10px 16px;width:100%}.course-header{background:linear-gradient(135deg,#007bff,#0056b3);border-radius:12px 12px 0 0;color:#fff;flex-shrink:0;font-size:clamp(16px,4vw,20px);font-weight:600;margin-bottom:0;padding:clamp(14px,3vw,18px);text-align:center}.modules-list{background:#0000;flex:1 1;margin:0;overflow-y:auto;padding:clamp(12px,3vw,16px);scrollbar-color:#007bff66 #0000;scrollbar-width:thin}.modules-list::-webkit-scrollbar{width:8px}.modules-list::-webkit-scrollbar-track{background:#0000000d;border-radius:4px;margin:4px}.modules-list::-webkit-scrollbar-thumb{background:#007bff66;border-radius:4px}.modules-list::-webkit-scrollbar-thumb:hover{background:#007bff99}.course-header h2{font-size:16px}.module-header{border-radius:6px;font-size:clamp(14px,3.5vw,16px);margin-bottom:clamp(6px,1.5vw,8px);padding:clamp(10px,2.5vw,14px)}.module-title{font-size:14px}.lesson-item{border-radius:4px;font-size:clamp(12px,3vw,14px);margin-bottom:clamp(3px,.8vw,5px);padding:clamp(8px,2vw,12px) clamp(10px,2.5vw,14px)}.lesson-title{font-size:13px}.lesson-timer{margin-bottom:15px;padding:12px}.timer-display{font-size:14px}}@media (max-width:480px){.course-view{background:linear-gradient(135deg,#f8f9fa,#e9ecef);height:auto;min-height:100vh}.course-sidebar,.course-view{flex-direction:column;padding:0}.course-sidebar{background:linear-gradient(135deg,#fff,#f8f9fa);border:1px solid #007bff1a;border-radius:0 0 12px 12px;box-shadow:0 4px 16px #00000026;display:flex;height:clamp(50vh,55vh,60vh);max-height:clamp(50vh,55vh,60vh);order:-1;overflow:hidden;width:100%}.video-section{background:#fff;border-radius:12px;box-shadow:0 3px 12px #0000001a;margin:clamp(8px,2vw,12px);order:1;padding:clamp(12px,3vw,16px)}.video-container{aspect-ratio:16/9;background:#000;border-radius:clamp(8px,2vw,12px);box-shadow:0 4px 16px #0003;margin-bottom:clamp(12px,3vw,16px);max-height:clamp(25vh,30vh,35vh);min-height:clamp(140px,20vh,180px)}.play-button{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff2;box-shadow:0 6px 20px #00000040;font-size:clamp(20px,5vw,28px);height:clamp(55px,12vw,70px);width:clamp(55px,12vw,70px)}.lesson-info h1,.play-button{margin-bottom:clamp(8px,2vw,12px)}.lesson-info h1{color:#333;font-size:clamp(20px,5vw,24px);font-weight:600;line-height:1.3}.module-info{color:#666;font-size:clamp(12px,3vw,14px);margin-bottom:clamp(12px,3vw,16px)}.lesson-controls{align-items:stretch;flex-direction:column;gap:clamp(8px,2vw,12px)}.btn{border-radius:8px;box-shadow:0 2px 8px #0000001a;font-size:clamp(13px,3.5vw,15px);font-weight:500;min-height:48px;padding:clamp(12px,3vw,16px) clamp(16px,4vw,20px);transition:all .3s ease;width:100%}.lesson-navigation{align-items:center;display:flex;gap:8px;justify-content:space-between;width:100%}.lesson-navigation .btn{align-items:center;display:flex!important;flex:1 1;font-size:11px;justify-content:center;min-width:auto;overflow:visible;padding:10px 6px;text-overflow:clip;white-space:nowrap}.course-view .video-section .lesson-info .lesson-controls .lesson-navigation .btn-outline,.course-view .video-section .lesson-info .lesson-controls .lesson-navigation .btn-primary,.course-view .video-section .lesson-info .lesson-controls .lesson-navigation .btn.btn-outline,.course-view .video-section .lesson-info .lesson-controls .lesson-navigation .btn.btn-primary{background-color:#ffc107!important;background:#ffc107!important;border:none!important;color:#fff!important;cursor:pointer!important;display:flex!important;font-weight:500!important;opacity:1!important;transition:none!important;visibility:visible!important}.course-view .video-section .lesson-info .lesson-controls .lesson-navigation .btn-outline:hover,.course-view .video-section .lesson-info .lesson-controls .lesson-navigation .btn-primary:hover,.course-view .video-section .lesson-info .lesson-controls .lesson-navigation .btn.active,.course-view .video-section .lesson-info .lesson-controls .lesson-navigation .btn.btn-outline:hover,.course-view .video-section .lesson-info .lesson-controls .lesson-navigation .btn.btn-primary:hover,.course-view .video-section .lesson-info .lesson-controls .lesson-navigation .btn.focus,.course-view .video-section .lesson-info .lesson-controls .lesson-navigation .btn:active,.course-view .video-section .lesson-info .lesson-controls .lesson-navigation .btn:focus{background-color:#ffc107!important;background:#ffc107!important;border:none!important;box-shadow:none!important;color:#fff!important;cursor:pointer!important;opacity:1!important;transform:none!important;transition:none!important}.course-view .video-section .lesson-info .lesson-controls .lesson-navigation .btn:disabled,.course-view .video-section .lesson-info .lesson-controls .lesson-navigation .btn:disabled:active,.course-view .video-section .lesson-info .lesson-controls .lesson-navigation .btn:disabled:focus,.course-view .video-section .lesson-info .lesson-controls .lesson-navigation .btn:disabled:hover{background-color:#6c757d!important;background:#6c757d!important;border:none!important;color:#fff!important;cursor:not-allowed!important;opacity:1!important}.course-header{padding:12px}.course-header-top{margin-bottom:12px}.course-header h2{font-size:15px;line-height:1.3}.close-btn{font-size:20px;height:28px;width:28px}.progress-text{font-size:12px}.module-header{padding:10px 12px}.module-title{font-size:13px;line-height:1.3}.expand-icon{font-size:14px}.lesson-item{padding:8px 12px}.lesson-status{font-size:12px;margin-right:10px;width:18px}.lesson-title{font-size:12px;line-height:1.4}.lesson-timer{border-radius:6px;margin-bottom:12px;padding:10px}.timer-info{align-items:flex-start;flex-direction:column;gap:5px;margin-bottom:8px}.timer-label{font-size:12px}.timer-display{font-size:13px}.timer-status{font-size:11px}.timer-progress{height:6px}}@media (max-width:360px){.video-section{padding:clamp(4px,2vw,8px)}.video-container{aspect-ratio:16/9;border-radius:clamp(3px,1vw,6px);margin-bottom:clamp(6px,1.5vw,10px);max-height:clamp(20vh,25vh,30vh);min-height:clamp(120px,18vh,160px)}.play-button{font-size:clamp(16px,4vw,24px);height:clamp(40px,10vw,60px);width:clamp(40px,10vw,60px)}.lesson-info h1{font-size:clamp(12px,3.5vw,16px)}.course-header{padding:10px}.course-header h2{font-size:14px}.module-header{padding:8px 10px}.lesson-item{padding:6px 10px}.btn{font-size:13px;min-height:44px;padding:10px 14px}.lesson-navigation{align-items:center;display:flex;gap:6px;justify-content:space-between;width:100%}.lesson-navigation .btn{flex:1 1;font-size:11px;min-height:40px;min-width:0;overflow:visible;padding:10px 6px;text-overflow:clip;white-space:nowrap}}.modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal-content{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000004d;max-height:90vh;max-width:600px;overflow-y:auto;width:100%}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:24px 24px 16px}.modal-header h3{color:var(--primary-color);font-weight:600;gap:8px;margin:0}.modal-header .close-btn,.modal-header h3{align-items:center;display:flex;font-size:24px}.modal-header .close-btn{background:none;border:none;border-radius:4px;color:#6c757d;cursor:pointer;justify-content:center;padding:4px;transition:all .2s ease}.modal-header .close-btn:hover{background:#f8f9fa;color:#495057}.modal-body{padding:24px}.modal-body p{color:#495057;line-height:1.6;margin-bottom:16px}.assessment-info{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-top:20px;padding:20px}.assessment-info h4{color:var(--primary-color);font-size:18px;font-weight:600;margin:0 0 12px}.assessment-info p{margin-bottom:16px}.assessment-info ul{list-style:none;margin:0;padding:0}.assessment-info li{border-bottom:1px solid #e9ecef;color:#495057;font-weight:500;padding:8px 0}.assessment-info li:last-child{border-bottom:none}.modal-footer{border-top:1px solid #e9ecef;display:flex;gap:12px;justify-content:flex-end;padding:16px 24px 24px}.modal-footer .btn{align-items:center;display:flex;gap:8px;justify-content:center;min-width:140px}.btn-restart-lesson{background:#ffc107!important;border:none!important;color:#fff!important;font-weight:500!important}.btn-restart-lesson:hover{background:#e0a800!important;border:none!important;color:#fff!important}.course-materials{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-top:20px;padding:15px}.course-materials h4{color:#495057;font-size:16px;font-weight:600;margin:0 0 15px}.course-materials .attachments-container{max-height:200px;overflow-y:auto}.course-materials .no-attachments{color:#6c757d;padding:20px;text-align:center}.course-materials .no-attachments-icon{color:#dee2e6;margin-bottom:10px}@media (max-width:768px){.modal-content{margin:10px;max-width:calc(100vw - 20px)}.modal-header{padding:20px 16px 12px}.modal-header h3{font-size:20px}.modal-body{padding:20px 16px}.modal-footer{flex-direction:column;padding:12px 16px 20px}.modal-footer .btn{min-width:auto;width:100%}.assessment-info{padding:16px}.course-materials{margin-top:15px;padding:10px}.course-materials .attachments-container{max-height:150px}}.attachments-loading{align-items:center;background:#f8f9fa;border-radius:8px;color:#6c757d;display:flex;font-size:14px;gap:10px;justify-content:center;margin:15px 0;padding:20px}.loading-spinner{border:2px solid #e9ecef;height:20px;width:20px}.btn-standard-size{align-items:center;display:inline-flex;gap:8px;height:40px;justify-content:center;min-width:140px}.attachments-toggle{margin:15px 0;text-align:center}.attachments-toggle .btn{background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;color:#495057;padding:8px 16px;transition:all .2s ease}.attachments-toggle .btn:hover{background:#e9ecef;border-color:#adb5bd;color:#495057}.attachments-toggle .btn:active{background:#dee2e6;border-color:#6c757d}.assessment-button-container{margin:12px 0 8px;padding:0 16px}.btn-assessment{align-items:center;background:linear-gradient(135deg,gold,#ffb347);border:2px solid gold;border-radius:8px;box-shadow:0 3px 12px #ffd7004d;color:#333;display:flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;letter-spacing:.5px;padding:12px 16px;text-transform:uppercase;transition:all .3s ease;width:100%}.btn-assessment:hover:not(:disabled){background:linear-gradient(135deg,#ffed4e,#ffc947);border-color:#ffed4e;box-shadow:0 5px 20px #ffd70066;transform:translateY(-2px)}.btn-assessment:active:not(:disabled){box-shadow:0 2px 8px #ffd7004d;transform:translateY(0)}.btn-assessment:disabled{border-color:#dee2e6;color:#6c757d;cursor:not-allowed}.btn-assessment:disabled,.btn-assessment:disabled:hover{background:#e9ecef;box-shadow:none;transform:none}.assessment-section{margin:20px 30px;padding:0}.assessment-card{background:linear-gradient(135deg,#fff,#f8f9fa);border:2px solid #007bff;box-shadow:0 8px 24px #007bff26;padding:24px;transition:all .3s ease}.assessment-card:hover{box-shadow:0 12px 32px #007bff33}.assessment-header{gap:12px;margin-bottom:20px;padding-bottom:16px}.assessment-icon{background:#007bff1a;border-radius:50%;color:#007bff;padding:8px}.assessment-header h3{color:#007bff;font-size:24px;font-weight:600;margin:0}.assessment-content{margin-bottom:24px}.assessment-description{color:#28a745;font-size:18px;font-weight:500;margin-bottom:12px}.assessment-content p{color:#495057;line-height:1.6;margin-bottom:16px}.assessment-details{grid-gap:12px;background:#007bff0d;border:1px solid #007bff1a;gap:12px;margin-top:16px;padding:16px}.detail-item{justify-content:space-between;padding:8px 0}.detail-label{color:#495057;font-weight:500}.detail-value{color:#007bff}.assessment-actions{flex-wrap:wrap;gap:12px;justify-content:center}.assessment-actions .btn{border-radius:8px;font-weight:600;min-width:180px;padding:12px 24px;transition:all .3s ease}.assessment-actions .btn-primary{background:linear-gradient(135deg,#007bff,#0056b3);border:none;box-shadow:0 4px 12px #007bff4d;color:#fff}.assessment-actions .btn-primary:hover{box-shadow:0 6px 16px #007bff66;transform:translateY(-2px)}.assessment-actions .btn-outline{background:#fff;border:2px solid #6c757d;color:#6c757d}.assessment-actions .btn-outline:hover{background:#6c757d;color:#fff;transform:translateY(-2px)}.certificate-section{margin:20px 30px;padding:0}.certificate-card{background:linear-gradient(135deg,#fff,#f8f9fa);border:2px solid #28a745;border-radius:12px;box-shadow:0 8px 24px #28a74526;padding:24px;transition:all .3s ease}.certificate-card:hover{box-shadow:0 12px 32px #28a74533;transform:translateY(-2px)}.certificate-header{align-items:center;border-bottom:2px solid #e9ecef;display:flex;gap:12px;margin-bottom:20px;padding-bottom:16px}.certificate-icon{background:#28a7451a;border-radius:50%;color:#28a745;padding:8px}.certificate-header h3{color:#28a745;font-size:24px;font-weight:600;margin:0}.certificate-content{margin-bottom:24px}.certificate-description{color:#28a745;font-size:18px;font-weight:500;margin-bottom:12px}.certificate-content p{color:#495057;line-height:1.6;margin-bottom:12px}.certificate-note{color:#6c757d;font-size:14px;font-style:italic}.certificate-actions{display:flex;justify-content:center}.certificate-actions .btn{background:linear-gradient(135deg,#28a745,#1e7e34);border:none;border-radius:8px;box-shadow:0 4px 12px #28a7454d;color:#fff;font-weight:600;min-width:200px;padding:12px 24px;transition:all .3s ease}.certificate-actions .btn:hover{box-shadow:0 6px 16px #28a74566;transform:translateY(-2px)}@media (max-width:768px){.assessment-section,.certificate-section{margin:15px}.assessment-card,.certificate-card{padding:20px}.assessment-details{grid-template-columns:1fr}.assessment-actions,.certificate-actions{flex-direction:column}.assessment-actions .btn,.certificate-actions .btn{min-width:100%}}.assessment-manager{background:#f8f9fa;margin:0 auto;max-width:1200px;min-height:100vh;padding:20px}.assessment-header{align-items:flex-start;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;justify-content:space-between;padding:25px}.header-info h2{align-items:center;color:#2c3e50;display:flex;font-size:28px;font-weight:600;gap:12px;margin:0 0 8px}.header-info p{color:#6c757d;font-size:16px;margin:0}.loading-state{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:60px 20px}.spinner{border:4px solid #e9ecef;margin-bottom:16px}.error-message{justify-content:space-between}.error-message p{font-weight:500;margin:0}.assessment-form-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.assessment-form{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0000004d;max-height:90vh;max-width:600px;overflow-y:auto;width:100%}.form-header{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:25px 30px}.form-header h3{color:#2c3e50;font-size:24px;font-weight:600;margin:0}.close-btn{align-items:center;background:none;border:none;border-radius:50%;color:#6c757d;cursor:pointer;display:flex;font-size:28px;height:32px;justify-content:center;padding:0;transition:all .2s ease;width:32px}.close-btn:hover{background:#f8f9fa;color:#495057}.assessment-form form{padding:30px}.form-group label{color:#495057}.form-input{background:#fff;border:2px solid #e9ecef;border-radius:8px;font-size:16px;padding:12px 16px;transition:all .2s ease}.form-input:invalid{border-color:#e9ecef;box-shadow:none}.form-input:valid{border-color:#e9ecef;box-shadow:none}.form-input:focus{background:#fff!important;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.form-input[type=textarea],textarea.form-input{background:#fff!important;resize:vertical}textarea.form-input:focus{background:#fff!important;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.form-actions{border-top:1px solid #e9ecef;gap:12px;justify-content:flex-end;margin-top:30px}.btn{line-height:1.2}.btn,.btn svg{vertical-align:middle}.btn svg{flex-shrink:0}.btn-primary:hover{box-shadow:0 4px 12px #007bff4d}.btn-secondary:hover{background:#545b62}.btn-outline{background:#fff}.btn-danger{background:#dc3545;color:#fff}.btn-danger:hover{background:#c82333;box-shadow:0 4px 12px #dc35454d;transform:translateY(-1px)}.assessments-list{display:flex;flex-direction:column;gap:20px}.empty-state{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:60px 20px}.empty-state svg{color:#6c757d;margin-bottom:20px}.empty-state h3{font-size:24px;margin:0 0 12px}.empty-state p{color:#6c757d;font-size:16px;margin:0 0 30px}.empty-state .btn{border-radius:8px;box-shadow:0 4px 12px #007bff4d;font-size:16px;font-weight:600;min-width:200px;padding:14px 28px}.assessment-card{align-items:flex-start;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;padding:25px;transition:all .2s ease}.assessment-card:hover{box-shadow:0 4px 16px #00000026;transform:translateY(-2px)}.assessment-info{flex:1 1}.assessment-info h3{color:#2c3e50;font-size:20px;font-weight:600;margin:0 0 8px}.assessment-description{font-size:14px;line-height:1.5;margin:0 0 16px}.assessment-stats{align-items:center;flex-direction:row;flex-wrap:nowrap}.stat{align-items:center;color:#495057;display:flex;font-size:14px;font-weight:500;gap:6px}.stat svg{color:#007bff}.assessment-actions{display:flex;gap:8px;margin-left:20px;opacity:1;visibility:visible}.assessment-actions .btn{min-height:auto;opacity:1;padding:8px 12px;transition:all .2s ease;visibility:visible}.assessment-actions .btn-outline{background:#0000;border:2px solid #fff;color:#fff;opacity:1;visibility:visible}.assessment-actions .btn-outline:hover{background:#fff;border-color:#fff;color:#333}.assessment-actions .btn:hover{box-shadow:0 2px 8px #00000026;transform:translateY(-1px)}@media (max-width:768px){.assessment-manager{padding:clamp(10px,2vw,15px)}.assessment-header{align-items:stretch;flex-direction:column;gap:clamp(15px,3vw,20px);margin-bottom:clamp(20px,4vw,25px);padding:clamp(15px,3vw,20px)}.header-info h2{font-size:clamp(20px,4vw,24px)}.header-info p{font-size:clamp(13px,2.5vw,14px)}.assessment-form{margin:clamp(8px,2vw,10px);max-width:none}.form-header{padding:clamp(15px,3vw,20px) clamp(20px,4vw,25px)}.form-header h3{font-size:clamp(18px,3.5vw,20px)}.assessment-form form{padding:clamp(20px,4vw,25px)}.form-group{margin-bottom:clamp(15px,3vw,18px)}.form-group label{font-size:clamp(12px,2.5vw,13px);margin-bottom:clamp(6px,1.5vw,8px)}.form-input{font-size:clamp(14px,2.5vw,15px);padding:clamp(10px,2vw,12px) clamp(12px,2.5vw,14px)}.form-row{gap:clamp(15px,3vw,18px);grid-template-columns:1fr}.form-actions{flex-direction:column;gap:clamp(8px,2vw,10px);margin-top:clamp(20px,4vw,25px)}.btn{font-size:clamp(12px,2.5vw,13px);padding:clamp(10px,2vw,12px) clamp(18px,3vw,20px)}.assessment-card{flex-direction:column;gap:clamp(15px,3vw,20px);padding:clamp(15px,3vw,20px)}.assessment-info h3{font-size:clamp(16px,3vw,18px)}.assessment-description{font-size:clamp(12px,2.5vw,13px)}.assessment-actions{gap:clamp(6px,1.5vw,8px);justify-content:flex-start;margin-left:0}.assessment-actions .btn{font-size:clamp(11px,2vw,12px);padding:clamp(6px,1.5vw,8px) clamp(10px,2vw,12px)}.assessment-stats{gap:clamp(12px,2.5vw,15px)}.stat{font-size:clamp(12px,2.5vw,13px)}.empty-state{padding:clamp(40px,8vw,50px) clamp(15px,3vw,20px)}.empty-state h3{font-size:clamp(18px,3.5vw,20px)}.empty-state p{font-size:clamp(13px,2.5vw,14px)}.empty-state .btn{font-size:14px;min-width:180px;padding:12px 24px}}@media (max-width:480px){.assessment-manager{padding:clamp(8px,1.5vw,10px)}.assessment-header{gap:clamp(12px,2.5vw,15px);margin-bottom:clamp(15px,3vw,20px);padding:clamp(12px,2.5vw,15px)}.header-info h2{font-size:clamp(18px,3.5vw,20px)}.header-info p{font-size:clamp(12px,2vw,13px)}.assessment-form{margin:clamp(5px,1vw,8px)}.form-header{padding:clamp(12px,2.5vw,15px) clamp(15px,3vw,18px)}.form-header h3{font-size:clamp(16px,3vw,18px)}.assessment-form form{padding:clamp(15px,3vw,20px)}.form-group{margin-bottom:clamp(12px,2.5vw,15px)}.form-group label{font-size:clamp(11px,2vw,12px);margin-bottom:clamp(5px,1vw,6px)}.form-input{font-size:clamp(12px,2.5vw,14px);padding:clamp(8px,1.5vw,10px) clamp(10px,2vw,12px)}.form-actions{gap:clamp(6px,1.5vw,8px);margin-top:clamp(15px,3vw,20px)}.btn{font-size:clamp(11px,2vw,12px);padding:clamp(8px,1.5vw,10px) clamp(15px,2.5vw,18px)}.assessment-card{gap:clamp(12px,2.5vw,15px);padding:clamp(12px,2.5vw,15px)}.assessment-info h3{font-size:clamp(14px,2.5vw,16px)}.assessment-description{font-size:clamp(11px,2vw,12px)}.assessment-stats{flex-direction:column;gap:clamp(6px,1.5vw,8px)}.stat{font-size:clamp(11px,2vw,12px)}.assessment-actions{flex-wrap:wrap;gap:clamp(5px,1vw,6px)}.assessment-actions .btn{font-size:clamp(10px,1.5vw,11px);padding:clamp(5px,1vw,6px) clamp(8px,1.5vw,10px)}.empty-state{padding:clamp(30px,6vw,40px) clamp(12px,2.5vw,15px)}.empty-state h3{font-size:clamp(16px,3vw,18px)}.empty-state p{font-size:clamp(12px,2vw,13px)}.empty-state .btn{font-size:13px;min-width:160px;padding:10px 20px}}@media (max-width:360px){.assessment-manager{padding:clamp(5px,1vw,8px)}.assessment-header{gap:clamp(8px,2vw,12px);margin-bottom:clamp(10px,2vw,15px);padding:clamp(8px,2vw,12px)}.header-info h2{font-size:clamp(16px,3vw,18px)}.header-info p{font-size:clamp(10px,1.5vw,12px)}.assessment-form{margin:clamp(2px,.5vw,5px)}.form-header{padding:clamp(8px,2vw,12px) clamp(10px,2vw,15px)}.form-header h3{font-size:clamp(14px,2.5vw,16px)}.close-btn{font-size:clamp(20px,3vw,24px);height:clamp(24px,3vw,28px);width:clamp(24px,3vw,28px)}.assessment-form form{padding:clamp(10px,2vw,15px)}.form-group{margin-bottom:clamp(8px,2vw,12px)}.form-group label{font-size:clamp(10px,1.5vw,11px);margin-bottom:clamp(3px,.5vw,5px)}.form-input{font-size:clamp(10px,2vw,12px);padding:clamp(6px,1vw,8px) clamp(8px,1.5vw,10px)}.form-actions{flex-direction:column;gap:clamp(4px,1vw,6px);margin-top:clamp(10px,2vw,15px)}.btn{font-size:clamp(9px,1.5vw,10px);padding:clamp(6px,1vw,8px) clamp(10px,2vw,12px);width:100%}.assessment-card{gap:clamp(8px,2vw,12px);padding:clamp(8px,2vw,12px)}.assessment-info h3{font-size:clamp(12px,2vw,14px)}.assessment-description{font-size:clamp(9px,1.5vw,11px)}.assessment-stats{gap:clamp(4px,1vw,6px)}.stat{font-size:clamp(9px,1.5vw,10px)}.assessment-actions{flex-direction:column;gap:clamp(3px,.5vw,5px)}.assessment-actions .btn{font-size:clamp(8px,1vw,9px);padding:clamp(4px,.5vw,5px) clamp(6px,1vw,8px);width:100%}.empty-state{padding:clamp(20px,4vw,30px) clamp(8px,2vw,12px)}.empty-state h3{font-size:clamp(14px,2.5vw,16px)}.empty-state p{font-size:clamp(10px,1.5vw,12px)}.empty-state .btn{font-size:12px;min-width:140px;padding:10px 16px;width:auto}.loading-state{padding:clamp(30px,6vw,40px) clamp(10px,2vw,15px)}.spinner{height:clamp(30px,4vw,35px);width:clamp(30px,4vw,35px)}.error-message{font-size:clamp(10px,1.5vw,12px);padding:clamp(10px,2vw,15px)}}.assessment-view-container{margin:0 auto;max-width:800px;padding:20px}.assessment-header{align-items:center;border-bottom:2px solid #e9ecef;display:flex;gap:20px;margin-bottom:30px;padding-bottom:20px}.assessment-header h1{align-items:center;color:#333;display:flex;font-size:28px;font-weight:600;gap:12px;margin:0}.back-btn{align-items:center;background:#6c757d;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;gap:8px;padding:10px 16px;text-decoration:none;transition:background-color .2s}.back-btn:hover{background:#5a6268}.assessment-info-card{background:#fff;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 4px 12px #0000001a;padding:30px}.assessment-description{margin-bottom:30px}.assessment-description h2{color:#333;font-size:20px;font-weight:600;margin:0 0 15px}.assessment-description p{color:#6c757d;font-size:16px;line-height:1.6;margin:0}.assessment-details{grid-gap:20px;background:#f8f9fa;border-radius:8px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px;padding:20px}.detail-item{align-items:center;display:flex;gap:12px}.detail-item svg{color:#007bff;flex-shrink:0}.detail-item div{display:flex;flex-direction:column}.detail-label{color:#6c757d;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.detail-value{color:#333;font-size:16px;font-weight:600;margin-top:2px}.assessment-actions{border-top:1px solid #e9ecef;padding-top:20px;text-align:center}.btn{font-size:16px;font-weight:600;margin:0 8px;padding:12px 24px}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary:hover:not(:disabled){background:#0056b3;transform:translateY(-1px)}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover{background:#5a6268}.btn-large{font-size:18px;padding:16px 32px}.warning-text{color:#dc3545;font-size:14px;font-style:italic;margin-top:15px}.loading{align-items:center;color:#6c757d;display:flex;flex-direction:column;justify-content:center}.loading-spinner{animation:spin 1s linear infinite;border:3px solid #e9ecef;border-radius:50%;border-top-color:#007bff;height:40px;margin-bottom:20px;width:40px}.error-message{align-items:center;color:#dc3545;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.error-message h3{color:#dc3545;margin:20px 0 10px}.error-actions{display:flex;gap:15px;margin-top:20px}@media (max-width:768px){.assessment-view-container{padding:15px}.assessment-header{align-items:flex-start;flex-direction:column;gap:15px}.assessment-header h1{font-size:24px}.assessment-info-card{padding:20px}.assessment-details{gap:15px;grid-template-columns:1fr}.error-actions{flex-direction:column;width:100%}.btn{justify-content:center;width:100%}}.assessment-preview-container{background-color:#f8f9fa;margin:0 auto;max-width:1200px;min-height:100vh;padding:20px}.assessment-preview-header{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;gap:20px;margin-bottom:30px;padding:20px}.assessment-preview-header h1{color:#2c3e50;font-size:1.8rem;margin:0}.assessment-preview-content{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.assessment-info{border-bottom:1px solid #e9ecef;padding:30px}.assessment-info h2{color:#2c3e50;font-size:1.6rem;margin:0 0 15px}.assessment-description{color:#6c757d;font-size:1.1rem;line-height:1.6;margin-bottom:20px}.assessment-stats{display:flex;flex-wrap:wrap;gap:20px}.assessment-stats .stat{align-items:center;background:#f8f9fa;border-radius:6px;color:#495057;display:flex;font-weight:500;gap:8px;padding:10px 15px}.assessment-stats .stat svg{color:#007bff}.questions-preview{padding:30px}.questions-preview h3{border-bottom:2px solid #007bff;color:#2c3e50;font-size:1.4rem;margin:0 0 25px;padding-bottom:10px}.question-preview{background:#fafafa;border:1px solid #e9ecef;border-radius:8px;margin-bottom:30px;padding:25px}.question-header{margin-bottom:15px}.question-number{background:#007bff;border-radius:20px;color:#fff;font-size:.9rem;font-weight:600;padding:5px 12px}.question-text{color:#2c3e50;font-size:1.1rem;font-weight:500;line-height:1.6;margin-bottom:20px}.options-preview{display:flex;flex-direction:column;gap:12px}.option-preview{align-items:center;background:#fff;border:1px solid #dee2e6;border-radius:6px;display:flex;gap:12px;padding:12px 15px;transition:all .2s ease}.option-preview.correct{background:#d4edda;border-color:#28a745;color:#155724}.option-letter{color:#007bff;font-weight:600;min-width:20px}.option-preview.correct .option-letter{color:#28a745}.option-text{flex:1 1;line-height:1.5}.correct-icon{color:#28a745;flex-shrink:0}.no-questions{color:#6c757d;padding:40px;text-align:center}.no-questions p{font-size:1.1rem;margin:0}.loading-spinner{align-items:center;display:flex;flex-direction:column;gap:20px;justify-content:center;min-height:400px}.spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#007bff;height:40px;width:40px}.error-message{background:#fff;box-shadow:0 2px 4px #0000001a;padding:40px}.error-message h2{color:#dc3545;margin-bottom:15px}.error-message p{color:#6c757d;margin-bottom:20px}.btn{border-radius:6px;font-size:.95rem}.btn-outline{border:1px solid #007bff}@media (max-width:768px){.assessment-preview-container{padding:10px}.assessment-preview-header{align-items:flex-start;flex-direction:column;gap:15px}.assessment-stats{flex-direction:column}.assessment-info,.question-preview,.questions-preview{padding:20px}.users-container{padding:clamp(8px,2vw,12px)}.card{border-radius:clamp(8px,2vw,12px);box-shadow:0 3px 12px #00000014;margin-bottom:clamp(12px,3vw,16px);padding:clamp(12px,3vw,16px)!important}.card h3{font-size:clamp(14px,4vw,18px)!important;font-weight:600}.card h3,.form-grid{margin-bottom:clamp(8px,2vw,12px)!important}.form-grid{grid-gap:clamp(8px,2vw,12px)!important;display:grid!important;gap:clamp(8px,2vw,12px)!important;grid-template-columns:1fr!important}.form-group{margin-bottom:clamp(6px,1.5vw,8px)}.form-group label{color:#495057;font-size:clamp(11px,3vw,13px)!important;font-weight:500;margin-bottom:clamp(3px,1vw,5px)!important}.modern-input{border:1px solid #ced4da;border-radius:clamp(4px,1vw,6px);box-sizing:border-box;font-size:clamp(13px,3.5vw,15px)!important;padding:clamp(8px,2vw,12px)!important;width:100%}.modern-btn{border:none;border-radius:clamp(4px,1vw,6px);cursor:pointer;font-size:clamp(12px,3vw,14px)!important;font-weight:500;min-height:clamp(40px,10vw,48px);padding:clamp(8px,2vw,12px) clamp(12px,3vw,16px)!important;transition:all .2s ease}.users-table-container{-webkit-overflow-scrolling:touch;border-radius:clamp(6px,1.5vw,8px);box-shadow:0 2px 8px #0000001a;overflow-x:auto}.users-table{background:#fff;border-collapse:collapse;min-width:600px;width:100%}.users-table th{background:#f8f9fa;border-bottom:2px solid #dee2e6;font-size:clamp(10px,2.5vw,12px)!important;font-weight:600;padding:clamp(8px,2vw,12px)!important;text-align:left;white-space:nowrap}.users-table td{border-bottom:1px solid #e9ecef;font-size:clamp(11px,2.8vw,13px)!important;padding:clamp(6px,1.5vw,10px)!important;vertical-align:middle}.action-btn{align-items:center;border:none;border-radius:clamp(3px,1vw,4px);cursor:pointer;display:flex;height:clamp(28px,7vw,36px)!important;justify-content:center;padding:clamp(4px,1vw,6px)!important;transition:all .2s ease;width:clamp(28px,7vw,36px)!important}.action-btn svg{height:clamp(12px,3vw,16px);width:clamp(12px,3vw,16px)}.status-badge{border-radius:clamp(8px,2vw,12px)!important;font-size:clamp(9px,2.2vw,11px)!important;font-weight:500;padding:clamp(2px,.8vw,4px) clamp(4px,1.2vw,6px)!important;white-space:nowrap}.modal-overlay{padding:clamp(10px,2.5vw,15px)}.modal-content{border-radius:clamp(8px,2vw,12px);margin:auto;max-width:95vw;padding:clamp(15px,4vw,20px)}.modal-header h2{font-size:clamp(16px,4.5vw,20px);margin-bottom:clamp(10px,2.5vw,15px)}}@media (max-width:480px){.users-container{padding:clamp(6px,1.5vw,10px)}.card{border-radius:clamp(6px,1.5vw,8px);margin-bottom:clamp(8px,2vw,12px);padding:clamp(8px,2vw,12px)!important}.card h3{font-size:clamp(12px,3.5vw,16px)!important}.card h3,.form-grid{margin-bottom:clamp(6px,1.5vw,8px)!important}.form-grid{gap:clamp(6px,1.5vw,8px)!important}.form-group label{font-size:clamp(10px,2.5vw,12px)!important;margin-bottom:clamp(2px,.8vw,3px)!important}.modern-input{font-size:clamp(12px,3vw,14px)!important;padding:clamp(6px,1.5vw,8px)!important}.modern-btn{font-size:clamp(11px,2.8vw,13px)!important;min-height:clamp(36px,9vw,44px);padding:clamp(6px,1.5vw,8px) clamp(10px,2.5vw,12px)!important}.users-table{min-width:550px}.users-table th{font-size:clamp(9px,2.2vw,11px)!important;padding:clamp(6px,1.5vw,8px)!important}.users-table td{font-size:clamp(10px,2.5vw,12px)!important;padding:clamp(4px,1.2vw,6px)!important}.action-btn{height:clamp(24px,6vw,32px)!important;padding:clamp(3px,.8vw,4px)!important;width:clamp(24px,6vw,32px)!important}.action-btn svg{height:clamp(10px,2.5vw,14px);width:clamp(10px,2.5vw,14px)}.status-badge{font-size:clamp(8px,2vw,10px)!important;padding:clamp(1px,.5vw,2px) clamp(3px,1vw,4px)!important}}@media (max-width:360px){.users-container{padding:clamp(4px,1.2vw,6px)}.card{margin-bottom:clamp(6px,1.5vw,8px);padding:clamp(6px,1.5vw,8px)!important}.card h3{font-size:clamp(11px,3vw,14px)!important;margin-bottom:clamp(4px,1vw,6px)!important}.form-grid{gap:clamp(4px,1.2vw,6px)!important;margin-bottom:clamp(4px,1.2vw,6px)!important}.form-group label{font-size:clamp(9px,2.2vw,11px)!important;margin-bottom:clamp(1px,.5vw,2px)!important}.modern-input{font-size:clamp(11px,2.8vw,13px)!important;padding:clamp(4px,1.2vw,6px)!important}.modern-btn{font-size:clamp(10px,2.5vw,12px)!important;min-height:clamp(32px,8vw,40px);padding:clamp(4px,1.2vw,6px) clamp(8px,2vw,10px)!important}.users-table{min-width:500px}.users-table th{font-size:clamp(8px,2vw,10px)!important;padding:clamp(4px,1.2vw,6px)!important}.users-table td{font-size:clamp(9px,2.2vw,11px)!important;padding:clamp(3px,1vw,4px)!important}.action-btn{height:clamp(20px,5vw,28px)!important;padding:clamp(2px,.6vw,3px)!important;width:clamp(20px,5vw,28px)!important}.action-btn svg{height:clamp(8px,2vw,12px);width:clamp(8px,2vw,12px)}.status-badge{font-size:clamp(7px,1.8vw,9px)!important;padding:clamp(1px,.3vw,2px) clamp(2px,.8vw,3px)!important}}@media (pointer:coarse){.action-btn,.modern-btn{min-height:44px;min-width:44px}.modern-input{min-height:44px}}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.card,.users-table-container{box-shadow:0 1px 6px #0000001a}}@media (prefers-reduced-motion:reduce){.action-btn,.modern-btn{transition:none}}.company-reports-container{background-color:#f8f9fa;margin:0 auto;max-width:1400px;min-height:100vh;padding:20px}.company-reports-header{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;margin-bottom:30px;padding:20px;text-align:center}.company-reports-header h1{align-items:center;color:#2c3e50;display:flex;font-size:2rem;font-weight:600;gap:12px;justify-content:center;margin:0 0 10px}.company-reports-header p{color:#6c757d;font-size:1.1rem;margin:0}.access-denied,.loading{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;padding:60px 20px;text-align:center}.stats-overview{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}.stat-card{gap:16px;padding:20px;transition:transform .2s ease,box-shadow .2s ease}.stat-icon{flex-shrink:0}.stat-number{font-size:2rem}.controls-section{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;gap:20px;justify-content:space-between;margin-bottom:30px;padding:20px}.controls-section,.filters{align-items:center;display:flex;flex-wrap:wrap}.filters{gap:15px}.search-box{align-items:center;display:flex;position:relative}.search-box svg{color:#6c757d;left:12px;position:absolute;z-index:1}.search-box input{border:2px solid #e9ecef;border-radius:8px;font-size:14px;padding:10px 12px 10px 40px;transition:border-color .2s ease;width:250px}.search-box input:focus{border-color:#007bff;outline:none}.company-filter,.status-filter{background:#fff;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;font-size:14px;padding:10px 15px;transition:border-color .2s ease}.company-filter:focus,.status-filter:focus{border-color:#007bff;outline:none}.export-controls{display:flex;gap:10px}.btn{display:inline-flex;font-size:14px;justify-content:center;min-height:44px;min-width:44px;transition:all .2s ease}.btn-primary{background:#007bff}.btn-primary:hover{background:#0056b3;transform:translateY(-1px)}.btn-outline{background:#0000;border:2px solid #007bff;color:#007bff}.btn-outline:hover{background:#007bff;color:#fff;transform:translateY(-1px)}.btn-sm{font-size:13px;min-height:40px;min-width:40px;padding:8px 14px}.companies-list{display:flex;flex-direction:column;gap:20px}.company-card{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.company-card:hover{box-shadow:0 4px 20px #00000026;transform:translateY(-2px)}.company-header{align-items:flex-start;border-bottom:1px solid #e9ecef;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;padding:20px}.company-info h3{color:#2c3e50;font-size:1.3rem;font-weight:600;margin:0 0 8px}.company-details{color:#6c757d;display:flex;flex-direction:column;gap:4px;margin:0}.company-details span{font-size:.9rem}.company-stats{display:flex;flex-wrap:wrap;gap:20px}.stat-item{align-items:center;display:flex;flex-direction:column;text-align:center}.stat-label{color:#6c757d;font-size:.8rem;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.stat-value{color:#2c3e50;font-size:1.2rem;font-weight:600}.company-actions{align-items:flex-start;display:flex;gap:10px}.employees-table{overflow-x:auto}.employees-table table{border-collapse:collapse;width:100%}.employees-table th{background:#f8f9fa;border-bottom:2px solid #e9ecef;color:#495057;font-size:.9rem;font-weight:600;letter-spacing:.5px;padding:15px 12px;text-align:left;text-transform:uppercase}.employees-table td{border-bottom:1px solid #e9ecef;padding:15px 12px;vertical-align:middle}.employees-table tr:hover{background:#f8f9fa}.employee-info{display:flex;flex-direction:column;gap:4px}.employee-name{color:#2c3e50;font-weight:500}.employee-cpf{color:#6c757d;font-size:.8rem}.status-badge{border-radius:20px;display:inline-block;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase}.progress-bar{min-width:80px}.courses-info{display:flex;flex-direction:column;gap:8px}.courses-count{color:#2c3e50;font-weight:600}.courses-list{display:flex;flex-wrap:wrap;gap:4px}.course-badge{background:#e9ecef;color:#495057;font-size:.7rem;padding:2px 8px}.more-courses{font-size:.7rem;font-style:italic}.no-results{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;padding:60px 20px}.no-results svg{margin-bottom:20px;opacity:.5}.no-results h3{color:#495057;margin:0 0 10px}.no-results p{margin:0}@media (min-width:1200px){.company-reports-container{padding:30px}.stats-overview{gap:25px;grid-template-columns:repeat(4,1fr)}.controls-section,.filters{gap:20px}.company-card{padding:25px}}@media (min-width:992px) and (max-width:1199px){.company-reports-container{padding:25px}.stats-overview{gap:20px;grid-template-columns:repeat(3,1fr)}.controls-section,.filters{gap:18px}.company-card{padding:22px}}@media (min-width:768px) and (max-width:991px){.company-reports-container{padding:20px}.company-reports-header h1{font-size:1.8rem}.stats-overview{gap:18px;grid-template-columns:repeat(2,1fr)}.controls-section,.filters{flex-direction:row;flex-wrap:wrap;gap:15px}.search-box{flex:1 1;min-width:200px}.company-card{padding:20px}.company-header{align-items:center;flex-direction:row;justify-content:space-between}}@media (max-width:767px){.company-reports-container{padding:15px}.company-reports-header h1{font-size:1.5rem}.stats-overview{gap:15px;grid-template-columns:1fr}.controls-section{gap:15px}.controls-section,.filters{align-items:stretch;flex-direction:column}.filters{gap:12px}.search-box input{font-size:16px;padding:12px;width:100%}.company-header{align-items:stretch;flex-direction:column;gap:15px}.company-card{padding:18px}.company-stats{justify-content:space-around}.employees-table{font-size:.9rem}.employees-table td,.employees-table th{padding:10px 8px}}@media (max-width:480px){.stat-card{flex-direction:column;text-align:center}.stat-icon{height:50px;width:50px}.stat-number{font-size:1.5rem}.company-stats{grid-template-columns:repeat(2,1fr)}}.reports-container{background-color:#f8f9fa;margin:0 auto;max-width:1400px;min-height:100vh;padding:20px}.reports-header{margin-bottom:30px;text-align:center}.reports-header h1{align-items:center;color:#2c3e50;display:flex;font-size:2.5rem;font-weight:600;gap:10px;justify-content:center;margin-bottom:10px}.reports-header p{color:#6c757d;font-size:1.1rem;margin:0}.access-denied{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;padding:60px 20px}.access-denied h2{color:#dc3545;margin-bottom:15px}.loading{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;padding:60px 20px}.loading h2{color:#007bff;margin-bottom:15px}.error-message{background:#f8d7da;border:1px solid #f5c6cb;border-radius:8px;color:#721c24;margin-bottom:20px;padding:20px;text-align:center}.error-message button{margin-top:10px}.reports-tabs{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;display:flex;gap:5px;margin-bottom:30px;overflow-x:auto;padding:5px}.tab-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:#6c757d;cursor:pointer;display:flex;font-weight:500;gap:8px;padding:12px 20px;transition:all .3s ease;white-space:nowrap}.tab-btn:hover{background:#f8f9fa;color:#495057}.tab-btn.active{background:#002c1c;background:var(--primary-color,#002c1c);box-shadow:0 2px 8px #002c1c4d;color:#fff}.overview-section{display:flex;flex-direction:column;gap:30px}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.stat-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;display:flex;gap:20px;padding:25px;transition:transform .3s ease,box-shadow .3s ease}.stat-card:hover{box-shadow:0 4px 20px #00000026;transform:translateY(-2px)}.stat-icon{align-items:center;background:linear-gradient(135deg,#002c1c,#002c1c);background:linear-gradient(135deg,var(--primary-color,#002c1c),var(--primary-color,#002c1c));border-radius:12px;color:#fff;display:flex;height:60px;justify-content:center;width:60px}.stat-content h3{color:#6c757d;font-size:.9rem;font-weight:500;letter-spacing:.5px;margin:0 0 8px;text-transform:uppercase}.stat-number{color:#2c3e50;font-size:2.2rem;font-weight:700;margin:0}.recent-activity-section{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;padding:25px}.recent-activity-section h3{align-items:center;color:#2c3e50;display:flex;font-size:1.3rem;gap:10px;margin-bottom:20px}.activity-list{display:flex;flex-direction:column;gap:15px}.activity-item{align-items:flex-start;background:#f8f9fa;border-left:4px solid #002c1c;border-left:4px solid var(--primary-color,#002c1c);border-radius:8px;display:flex;gap:15px;padding:15px}.activity-icon{align-items:center;background:#002c1c;background:var(--primary-color,#002c1c);border-radius:50%;color:#fff;display:flex;flex-shrink:0;height:32px;justify-content:center;width:32px}.activity-content{flex:1 1}.activity-content strong{color:#2c3e50}.activity-date{color:#6c757d;font-size:.85rem;margin-top:5px}.students-section{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;overflow:hidden}.filters-section{align-items:center;background:#f8f9fa;border-bottom:1px solid #dee2e6;display:flex;flex-wrap:wrap;gap:15px;padding:20px}.search-filter{flex:1 1;min-width:250px;position:relative}.search-filter svg{color:#6c757d;left:12px;position:absolute;top:50%;transform:translateY(-50%)}.search-filter input{padding:10px 10px 10px 40px;width:100%}.filter-select,.search-filter input{border:1px solid #dee2e6;border-radius:8px;font-size:.9rem}.filter-select{background:#fff;cursor:pointer;padding:10px 15px}.btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:8px;padding:10px 20px;text-decoration:none;transition:all .3s ease}.btn-primary{color:#fff}.btn-primary,.btn-primary:hover{background:#002c1c;background:var(--primary-color,#002c1c)}.btn-primary:hover{filter:brightness(.9)}.btn-outline{background:#002c1c;background:var(--primary-color,#002c1c);border:1px solid #002c1c;border:1px solid var(--primary-color,#002c1c);color:#fff}.btn-outline:hover{background:#002c1c!important;background:var(--primary-color,#002c1c)!important;filter:brightness(.9)}.btn-outline:hover,.export-csv-btn{color:#fff!important}.export-csv-btn:hover{background:#002c1c!important;background:var(--primary-color,#002c1c)!important;color:#fff!important;filter:none!important;transform:none!important}.students-table{overflow-x:auto}.students-table table{border-collapse:collapse;width:100%}.students-table th{background:#f8f9fa;border-bottom:2px solid #dee2e6;color:#495057;font-weight:600;padding:15px;text-align:left;white-space:nowrap}.students-table td{border-bottom:1px solid #dee2e6;padding:15px;vertical-align:top}.student-info{display:flex;flex-direction:column;gap:8px}.student-info strong{color:#2c3e50;font-size:.95rem}.student-courses{display:flex;flex-wrap:wrap;gap:5px}.course-badge{color:#fff;font-weight:500}.course-badge,.more-courses{border-radius:12px;font-size:.75rem;padding:3px 8px}.more-courses{background:#e9ecef;color:#6c757d}.progress-cell{align-items:center;display:flex;gap:10px;min-width:120px}.progress-bar{background:#e9ecef;border-radius:4px;flex:1 1;height:8px;overflow:hidden}.progress-fill{border-radius:4px;height:100%;transition:width .3s ease}.certificates-count{align-items:center;color:#28a745;display:flex;font-weight:500;gap:5px}.status-badge{border-radius:12px;padding:4px 12px;white-space:nowrap}.no-results{color:#6c757d;padding:40px;text-align:center}.courses-section{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;padding:25px}.courses-section h3{color:#2c3e50;margin-bottom:25px;text-align:center}.courses-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.course-report-card{background:#fff;border:1px solid #dee2e6;border-radius:12px;cursor:pointer;overflow:hidden;transition:all .3s ease}.course-report-card:hover{border-color:#002c1c;border-color:var(--primary-color,#002c1c);box-shadow:0 4px 20px #00000026;transform:translateY(-2px)}.course-thumbnail{align-items:center;background:#f8f9fa;display:flex;height:150px;justify-content:center}.thumbnail-placeholder{color:#6c757d}.course-info{padding:20px}.course-info h4{color:#2c3e50;font-size:1.1rem;margin:0 0 10px}.course-info p{font-size:.9rem;line-height:1.4;margin:0 0 15px}.course-detail-section{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;overflow:hidden}.course-header{background:linear-gradient(135deg,#002c1c,#002c1c);background:linear-gradient(135deg,var(--primary-color,#002c1c),var(--primary-color,#002c1c));color:#fff;filter:brightness(1.1);padding:25px}.course-header h3{font-size:1.5rem;margin:0 0 10px}.course-header p{margin:0;opacity:.9}.course-stats-grid{grid-gap:20px;background:#f8f9fa;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));padding:25px}.course-students-table{padding:25px}.course-students-table h4{color:#2c3e50;margin:0 0 20px}.course-students-table table{border-collapse:collapse;width:100%}.course-students-table th{background:#f8f9fa;border-bottom:2px solid #dee2e6;color:#495057;font-weight:600;padding:12px 15px;text-align:left}.course-students-table td{border-bottom:1px solid #dee2e6;padding:12px 15px}@media (max-width:1024px){.reports-container{padding:18px}.stats-grid{gap:18px;grid-template-columns:repeat(2,1fr)}.filters-section{gap:12px}.search-filter{min-width:200px}}@media (max-width:768px){.reports-container{padding:15px}.reports-header h1{font-size:2rem}.stats-grid{grid-template-columns:1fr}.stat-card{padding:20px}.stat-number{font-size:1.8rem}.filters-section{align-items:stretch;flex-direction:column}.search-filter{min-width:auto}.reports-tabs{flex-direction:column}.tab-btn{justify-content:center}.courses-grid{grid-template-columns:1fr}.course-stats-grid{grid-template-columns:repeat(2,1fr)}.course-students-table,.students-table{font-size:.85rem}.course-students-table td,.course-students-table th,.students-table td,.students-table th{padding:10px 8px}}@media (max-width:480px){.course-stats-grid{grid-template-columns:1fr}.stat-card{flex-direction:column;text-align:center}.stat-icon{height:50px;width:50px}.stat-number{font-size:1.5rem}}@media (max-width:320px){.reports-container{padding:10px}.reports-header h1{font-size:1.5rem}.btn{font-size:.8rem;padding:8px 12px}.filters-section{padding:15px}.search-filter input{padding:8px 8px 8px 35px}}.grades-report{margin:0 auto;max-width:400px;padding:15px}.grades-header{margin-bottom:20px;text-align:center}.grades-header h1{align-items:center;color:#2c3e50;display:flex;font-size:1.6rem;gap:8px;justify-content:center;margin-bottom:8px}.grades-header p{color:#6c757d;font-size:1rem}.error,.loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.error{color:#dc3545}.error svg{margin-bottom:15px}.no-grades{align-items:center;color:#6c757d;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.no-grades svg{color:#dee2e6;margin-bottom:20px}.no-grades h3{color:#495057;margin-bottom:10px}.grades-list{display:flex;flex-direction:column;gap:10px}.course-grade-card{background:#fff;border:1px solid #dee2e6;border-radius:8px;box-shadow:0 2px 8px #00000014;padding:10px;transition:all .3s ease}.course-grade-card:hover{box-shadow:0 4px 20px #00000026;transform:translateY(-2px)}.course-header{align-items:flex-start;border-bottom:1px solid #e9ecef;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:12px;padding-bottom:12px}.course-info h3{color:#2c3e50;font-size:1.1rem;margin-bottom:4px}.course-info p{color:#6c757d;line-height:1.5;margin:0 0 8px}.completion-date{color:#28a745;display:block;font-size:.85rem;font-weight:500;margin-top:5px}.course-thumbnail{border-radius:4px;flex-shrink:0;height:45px;overflow:hidden;width:60px}.course-thumbnail img{height:100%;object-fit:cover;width:100%}.assessments-section{display:flex;flex-direction:column;gap:6px}.assessment-grade{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;display:flex;justify-content:space-between;padding:12px}.assessment-info h4{color:#495057;font-size:1rem;margin-bottom:3px}.assessment-info p{color:#6c757d;font-size:.85rem;margin:0}.grade-details{align-items:flex-end;display:flex;flex-direction:column;gap:6px}.score-display{align-items:baseline;display:flex;gap:5px}.score{color:#2c3e50;font-size:1.3rem;font-weight:700}.max-score{color:#6c757d;font-size:1rem}.status-badge{border-radius:16px;color:#fff;font-size:.8rem;font-weight:500;min-width:70px;padding:4px 10px;text-align:center}.status-badge.approved{background-color:#28a745}.status-badge.failed{background-color:#dc3545}.status-badge.not-attempted{background-color:#6c757d}.attempt-details{text-align:right}.attempt-details small{color:#6c757d;font-size:.8rem}.no-attempt{align-items:flex-end;display:flex;flex-direction:column;gap:5px}.no-attempt small{color:#6c757d;font-size:.8rem}.no-assessments{align-items:center;background:#f8f9fa;border:1px dashed #dee2e6;border-radius:6px;color:#6c757d;display:flex;font-style:italic;gap:8px;justify-content:center;padding:15px}.no-assessments svg{color:#adb5bd}@media (max-width:768px){.grades-report{padding:15px}.course-header{flex-direction:column;gap:15px}.course-thumbnail{align-self:center}.assessment-grade{align-items:flex-start;flex-direction:column;gap:15px}.grade-details{align-items:flex-start;width:100%}.attempt-details{text-align:left}.no-attempt{align-items:flex-start}}@media (max-width:480px){.grades-header h1{font-size:1.5rem}.course-grade-card{padding:14px}.score{font-size:1.3rem}}.login-settings-container{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;margin:0 auto;max-width:800px;padding:20px}.login-settings-header{margin-bottom:30px;text-align:center}.login-settings-header h2{color:#333;font-size:24px;font-weight:600;margin-bottom:8px}.login-settings-header p{color:#666;font-size:14px;margin:0}.login-settings-form{display:flex;flex-direction:column;gap:30px}.form-section{background:#fafafa;border:1px solid #e0e0e0;border-radius:8px;padding:20px}.form-section h3{border-bottom:2px solid #7cb342;color:#333;font-size:18px;font-weight:600;margin:0 0 20px;padding-bottom:8px}.form-group{margin-bottom:20px}.form-group:last-child{margin-bottom:0}.form-group label{color:#333;display:block;font-size:14px;margin-bottom:8px}.form-input{border:1px solid #ddd;border-radius:6px;box-sizing:border-box;font-size:14px;padding:12px;transition:border-color .3s ease;width:100%}.form-input:focus{border-color:#7cb342;box-shadow:0 0 0 2px #7cb34233;outline:none}.upload-section{margin-top:10px}.upload-area{background:#fff;border:2px dashed #ddd;border-radius:8px;padding:20px;position:relative;text-align:center;transition:border-color .3s ease}.upload-area:hover{border-color:#7cb342}.upload-label{align-items:center;color:#666;cursor:pointer;display:flex;flex-direction:column;gap:8px}.upload-label:hover{color:#7cb342}.upload-label span{font-size:14px;font-weight:500}.upload-label small{color:#999;font-size:12px}.image-preview{display:inline-block;position:relative}.logo-preview{max-height:100px;max-width:200px;object-fit:contain}.background-preview,.logo-preview{border-radius:4px;box-shadow:0 2px 8px #0000001a}.background-preview{max-height:200px;max-width:300px;object-fit:cover}.remove-image-btn{align-items:center;background:#ff4757;border:none;border-radius:50%;box-shadow:0 2px 4px #0003;color:#fff;cursor:pointer;display:flex;height:32px;justify-content:center;min-height:32px;min-width:32px;position:absolute;right:-8px;top:-8px;transition:background-color .3s ease;width:32px}.remove-image-btn:hover{background:#ff3742}.form-actions{border-top:1px solid #e0e0e0;padding-top:20px}.form-actions,.save-btn{display:flex;justify-content:center}.save-btn{align-items:center;background:#7cb342;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;gap:8px;min-height:44px;min-width:44px;padding:12px 24px;transition:background-color .3s ease}.save-btn:hover:not(:disabled){background:#6da036}.save-btn:disabled{background:#ccc;cursor:not-allowed}.alert{border-radius:6px;font-size:14px;margin-bottom:20px;padding:12px 16px}.loading{color:#666;font-size:16px;padding:40px;text-align:center}@media (max-width:768px){.login-settings-container{margin:clamp(8px,2vw,10px);padding:clamp(12px,2.5vw,15px)}.login-settings-header{margin-bottom:clamp(20px,4vw,25px)}.login-settings-header h2{font-size:clamp(20px,4vw,22px)}.form-section{gap:clamp(20px,4vw,25px);padding:clamp(12px,2.5vw,15px)}.form-section h3{font-size:clamp(16px,3.5vw,18px)}.form-group{margin-bottom:clamp(15px,3vw,18px)}.form-input{font-size:clamp(13px,3vw,14px);padding:clamp(10px,2vw,12px)}.upload-area{padding:clamp(15px,3vw,18px)}.logo-preview{max-height:clamp(60px,12vw,75px);max-width:clamp(120px,25vw,150px)}.background-preview{max-height:clamp(120px,24vw,150px);max-width:clamp(200px,40vw,250px)}.save-btn{font-size:clamp(13px,3vw,14px);padding:clamp(10px,2vw,12px) clamp(20px,4vw,24px)}}@media (max-width:480px){.login-settings-container{margin:clamp(5px,1vw,8px);padding:clamp(8px,2vw,12px)}.login-settings-header{margin-bottom:clamp(15px,3vw,20px)}.login-settings-header h2{font-size:clamp(18px,4vw,20px)}.login-settings-header p{font-size:clamp(12px,2.5vw,13px)}.login-settings-form{gap:clamp(20px,4vw,25px)}.form-section{padding:clamp(10px,2vw,12px)}.form-section h3{font-size:clamp(14px,3vw,16px);margin-bottom:clamp(15px,3vw,18px)}.form-group{margin-bottom:clamp(12px,2.5vw,15px)}.form-group label{margin-bottom:clamp(6px,1.5vw,8px)}.form-group label,.form-input{font-size:clamp(12px,2.5vw,13px)}.form-input{padding:clamp(8px,2vw,10px)}.upload-area{padding:clamp(12px,2.5vw,15px)}.upload-label span{font-size:clamp(12px,2.5vw,13px)}.upload-label small{font-size:clamp(10px,2vw,11px)}.logo-preview{max-height:clamp(50px,10vw,60px);max-width:clamp(100px,20vw,120px)}.background-preview{max-height:clamp(96px,19vw,120px);max-width:clamp(160px,32vw,200px)}.save-btn{padding:clamp(8px,2vw,10px) clamp(16px,3vw,20px)}.alert,.save-btn{font-size:clamp(12px,2.5vw,13px)}.alert{padding:clamp(8px,2vw,10px) clamp(12px,2.5vw,14px)}}@media (max-width:360px){.login-settings-container{margin:clamp(2px,.5vw,5px);padding:clamp(6px,1.5vw,8px)}.login-settings-header{margin-bottom:clamp(12px,2.5vw,15px)}.login-settings-header h2{font-size:clamp(16px,3.5vw,18px)}.login-settings-header p{font-size:clamp(11px,2vw,12px)}.login-settings-form{gap:clamp(15px,3vw,20px)}.form-section{padding:clamp(6px,1.5vw,8px)}.form-section h3{font-size:clamp(12px,2.5vw,14px);margin-bottom:clamp(10px,2vw,12px)}.form-group{margin-bottom:clamp(8px,2vw,10px)}.form-group label{margin-bottom:clamp(4px,1vw,6px)}.form-group label,.form-input{font-size:clamp(10px,2vw,11px)}.form-input{padding:clamp(6px,1.5vw,8px)}.upload-area{padding:clamp(8px,2vw,10px)}.upload-label{gap:clamp(4px,1vw,6px)}.upload-label span{font-size:clamp(10px,2vw,11px)}.upload-label small{font-size:clamp(9px,1.5vw,10px)}.logo-preview{max-height:clamp(40px,8vw,50px);max-width:clamp(80px,16vw,100px)}.background-preview{max-height:clamp(72px,14vw,96px);max-width:clamp(120px,24vw,160px)}.remove-image-btn{height:clamp(20px,4vw,22px);width:clamp(20px,4vw,22px)}.save-btn{padding:clamp(6px,1.5vw,8px) clamp(12px,2.5vw,16px)}.alert,.save-btn{font-size:clamp(10px,2vw,11px)}.alert{padding:clamp(6px,1.5vw,8px) clamp(8px,2vw,10px)}}.backup-container{background:#f8f9fa;margin:0 auto;max-width:1200px;min-height:100vh;padding:2rem}.backup-header{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;justify-content:space-between;margin-bottom:2rem;padding:1.5rem}.backup-header,.header-content{align-items:center;display:flex}.header-content{gap:1rem}.header-content h1{color:#2c3e50;font-size:1.8rem;font-weight:600;margin:0}.header-content p{color:#6c757d;font-size:.9rem;margin:0}.refresh-btn{align-items:center;background:#fff;border:2px solid;border-radius:8px;cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:.75rem 1rem;transition:all .2s ease}.refresh-btn:hover:not(:disabled){background:#007bff1a}.refresh-btn:disabled{cursor:not-allowed;opacity:.6}.spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.alert{align-items:center;border-radius:8px;display:flex;font-weight:500;gap:.75rem;margin-bottom:1.5rem;padding:1rem}.alert-error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.alert-success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.backup-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem;overflow:hidden}.section-header{background:#f8f9fa;border-bottom:1px solid #e9ecef;padding:1.5rem}.section-header h2{color:#2c3e50;font-size:1.3rem;font-weight:600;margin:0 0 .5rem}.section-header p{color:#6c757d;font-size:.9rem;margin:0}.create-backup-card{justify-content:space-between;padding:1.5rem}.backup-info,.create-backup-card{align-items:center;display:flex;gap:1rem}.backup-info{flex:1 1}.backup-info h3{color:#2c3e50;font-size:1.1rem;font-weight:600;margin:0 0 .25rem}.backup-info p{color:#6c757d;font-size:.85rem;margin:0}.create-backup-btn{align-items:center;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease;white-space:nowrap}.create-backup-btn:hover:not(:disabled){box-shadow:0 4px 12px #0003;transform:translateY(-1px)}.create-backup-btn:disabled{cursor:not-allowed;opacity:.7;transform:none}.restore-backup-card{display:flex;flex-direction:column;gap:1rem;padding:1.5rem}.file-upload-label,.restore-upload{display:flex;justify-content:center}.file-upload-label{align-items:center;background:#f8f9fa;border:2px dashed #dee2e6;border-radius:8px;color:#6c757d;cursor:pointer;font-weight:500;gap:.5rem;min-width:300px;padding:1rem 1.5rem;transition:all .2s ease}.file-upload-label:hover{background:#e3f2fd;border-color:#007bff;color:#007bff}.restore-backup-btn{align-items:center;align-self:center;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-weight:500;gap:.5rem;justify-content:center;padding:.75rem 1.5rem;transition:all .2s ease}.restore-backup-btn:hover:not(:disabled){box-shadow:0 4px 12px #0003;transform:translateY(-1px)}.restore-backup-btn:disabled{cursor:not-allowed;opacity:.7;transform:none}.restore-warning{align-items:center;background:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;color:#856404;display:flex;font-size:.85rem;font-weight:500;gap:.5rem;padding:.75rem}.loading-state{align-items:center;color:#6c757d;display:flex;flex-direction:column;justify-content:center;padding:3rem}.loading-state p{font-size:.9rem;margin:1rem 0 0}.empty-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:3rem}.empty-state h3{font-weight:600}.backups-list{padding:1.5rem}.backup-item{align-items:center;border:1px solid #e9ecef;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:.75rem;padding:1rem;transition:all .2s ease}.backup-item:hover{border-color:#007bff;box-shadow:0 2px 8px #007bff1a}.backup-item:last-child{margin-bottom:0}.backup-item .backup-info{flex:1 1}.backup-details h4{color:#2c3e50;font-size:.95rem;font-weight:600;margin:0 0 .25rem}.backup-meta{color:#6c757d;font-size:.8rem;gap:1rem}.backup-date,.backup-meta{align-items:center;display:flex}.backup-date{gap:.25rem}.backup-size{font-weight:500}.backup-actions{display:flex;gap:.5rem}.delete-btn,.download-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s ease;width:36px}.download-btn{background:#e3f2fd;color:#1976d2}.download-btn:hover{background:#bbdefb;transform:translateY(-1px)}.delete-btn{background:#ffebee;color:#d32f2f}.delete-btn:hover{background:#ffcdd2}.access-denied{align-items:center;color:#6c757d;display:flex;flex-direction:column;justify-content:center;padding:4rem 2rem;text-align:center}.access-denied h3{color:#495057;font-weight:600;margin:1rem 0 .5rem}.access-denied p{font-size:.9rem;margin:0}.backup-modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.backup-modal{background:#fff;border-radius:8px;box-shadow:0 10px 25px #0003;max-height:80vh;max-width:600px;overflow-y:auto;width:90%}.backup-modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1.5rem}.backup-modal-header h3{color:#1f2937;font-size:1.25rem;font-weight:600;margin:0}.backup-modal-close{background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;font-size:1.5rem;padding:.25rem;transition:all .2s}.backup-modal-close:hover{background-color:#f3f4f6;color:#374151}.backup-modal-close:disabled{cursor:not-allowed;opacity:.5}.backup-modal-content{padding:1.5rem}.backup-restore-warning{align-items:center;background-color:#fef3c7;border:1px solid #f59e0b;border-radius:6px;display:flex;gap:.75rem;margin-bottom:1.5rem;padding:1rem}.backup-warning-icon{color:#f59e0b;flex-shrink:0}.backup-restore-warning p{color:#92400e;font-size:.875rem;margin:0}.backup-restore-info{margin-bottom:1.5rem}.backup-restore-info h4{color:#1f2937;font-size:1rem;font-weight:600;margin:0 0 .75rem}.backup-restore-info ul{color:#4b5563;margin:0;padding-left:1.25rem}.backup-restore-info li{margin-bottom:.5rem}.backup-contents{border-top:1px solid #e5e7eb;margin-top:1rem;padding-top:1rem}.backup-contents ul{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:4px;max-height:150px;overflow-y:auto;padding:.75rem}.backup-restore-actions{display:flex;gap:.75rem;justify-content:flex-end}.backup-btn-secondary{background-color:#f3f4f6;border:1px solid #d1d5db;color:#374151}.backup-btn-secondary:hover:not(:disabled){background-color:#e5e7eb}.backup-btn-danger{background-color:#dc2626;border:1px solid #dc2626;color:#fff}.backup-btn-danger:hover:not(:disabled){background-color:#b91c1c;border-color:#b91c1c}.section-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.section-header>div{flex:1 1}.create-schedule-btn{align-items:center;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease;white-space:nowrap}.create-schedule-btn:hover:not(:disabled){box-shadow:0 4px 12px #0003;filter:brightness(.9);transform:translateY(-1px)}.create-schedule-btn:disabled{cursor:not-allowed;opacity:.7;transform:none}.schedules-list{padding:1.5rem}.schedule-item{background:#f8f9fa;border-left:4px solid;border-radius:8px;justify-content:space-between;margin-bottom:1rem;padding:1rem}.schedule-info,.schedule-item{align-items:center;display:flex}.schedule-info{flex:1 1;gap:1rem}.schedule-details h4{color:#2c3e50;font-size:1.1rem;font-weight:600;margin:0 0 .5rem}.schedule-meta{display:flex;flex-wrap:wrap;gap:1rem}.schedule-frequency,.schedule-retention{color:#6c757d;font-size:.85rem}.schedule-status{border-radius:4px;font-size:.75rem;font-weight:500;padding:.25rem .5rem}.schedule-status.active{background:#d4edda;color:#155724}.schedule-status.inactive{background:#f8d7da;color:#721c24}.schedule-actions{display:flex;gap:.5rem}.delete-btn,.toggle-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:.9rem;height:36px;justify-content:center;transition:all .2s ease;width:36px}.toggle-btn.play{background:#28a745;color:#fff}.toggle-btn.play:hover{background:#1e7e34;transform:translateY(-1px)}.toggle-btn.pause{background:#ffc107;color:#212529}.toggle-btn.pause:hover{background:#e0a800;transform:translateY(-1px)}.delete-btn{background:#dc3545;color:#fff}.delete-btn:hover{background:#c82333;transform:translateY(-1px)}.empty-state{color:#6c757d;padding:3rem 1.5rem;text-align:center}.empty-state h3{color:#495057;margin:1rem 0 .5rem}.empty-state p{font-size:.9rem;margin:0}.schedule-form{gap:1.5rem}.form-group,.schedule-form{display:flex;flex-direction:column}.form-group{gap:.5rem}.form-group label{color:#374151;font-size:.9rem;font-weight:500}.modern-input{background:#fff;border:2px solid #e1e5e9;border-radius:8px;font-size:.9rem;padding:.75rem;transition:all .2s ease}.modern-input:focus{border-color:#007bff;border-color:var(--primary-color,#007bff);box-shadow:0 0 0 3px #007bff1a;outline:none}.checkbox-label{align-items:center;color:#374151;cursor:pointer;display:flex;font-size:.9rem;gap:.75rem}.checkbox-label input[type=checkbox]{cursor:pointer;height:18px;width:18px}.form-group small{color:#6c757d;font-size:.8rem;margin-top:.25rem}.backup-modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem}.backup-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease}.backup-btn-primary{color:#fff}.backup-btn-primary:hover:not(:disabled){box-shadow:0 4px 12px #0003;filter:brightness(.9);transform:translateY(-1px)}.backup-btn-primary:disabled{cursor:not-allowed;opacity:.7;transform:none}.backup-btn-secondary{background:#6c757d;color:#fff}.backup-btn-secondary:hover:not(:disabled){background:#5a6268;transform:translateY(-1px)}@media (max-width:768px){.backup-container{padding:1rem}.backup-header{gap:1rem}.backup-header,.backup-item,.create-backup-card{flex-direction:column;text-align:center}.backup-item{gap:1rem}.backup-meta{justify-content:center}.file-upload-label{min-width:auto;width:100%}.backup-modal{margin:1rem;width:95%}.backup-modal-content,.backup-modal-header{padding:1rem}.backup-restore-actions{flex-direction:column}}.profile-photo-container:hover .photo-overlay{opacity:1!important}.profile-photo-container:hover{box-shadow:0 12px 32px #0003!important;transform:scale(1.02)}.profile-input:focus{background:#fffc!important;border-color:#3b82f680!important;box-shadow:0 0 0 3px #3b82f61a!important}.profile-input:hover{background:#ffffffb3!important;border-color:#9ca3af99!important}.profile-file-input:hover{background:#3b82f60d!important;border-color:#3b82f680!important}.profile-button:hover:not(:disabled),.profile-upload-button:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-2px)}@media (max-width:1024px){.profile-grid{gap:24px!important;grid-template-columns:1fr!important}.profile-photo-section{margin:0 auto;max-width:400px}}@media (max-width:768px){.profile-container{padding:20px!important}.profile-form-grid{gap:16px!important;grid-template-columns:1fr!important}.profile-card{padding:24px!important}.profile-title{font-size:28px!important}}.sidebar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#1a1a2e,#16213e 50%,#0f3460);border-right:1px solid #ffffff1a;box-shadow:0 0 30px #00000026;color:#fff;display:flex;flex-direction:column;height:100vh;left:0;position:fixed;top:0;transition:all .3s cubic-bezier(.4,0,.2,1);width:240px;z-index:1000}.sidebar.collapsed{width:60px}.sidebar-header{border-bottom:1px solid #ffffff14;justify-content:space-between;min-height:64px;padding:16px}.logo,.sidebar-header{align-items:center;display:flex}.logo{gap:10px}.logo-icon{filter:drop-shadow(0 2px 8px rgba(0,0,0,.3));font-size:24px;transition:transform .3s ease}.logo-icon:hover{transform:scale(1.1)}.logo-text{font-size:18px;font-weight:600;letter-spacing:.5px;white-space:nowrap}.collapse-btn{align-items:center;background:#ffffff14;border:none;border-radius:6px;color:#fffc;cursor:pointer;display:flex;font-size:12px;height:28px;justify-content:center;transition:all .3s ease;width:28px}.collapse-btn:hover{background:#ffffff26;color:#fff;transform:scale(1.05)}.sidebar-menu{flex:1 1;overflow-x:hidden;overflow-y:auto;padding:12px 0}.menu-item{align-items:center;border-radius:8px;color:#ffffffb3;display:flex;font-size:14px;margin:1px 8px;padding:12px 16px;position:relative;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1)}.menu-item:hover{background:#ffffff14;color:#fffffff2;transform:translateX(2px)}.menu-item.active{background:#ffffff1f;box-shadow:0 2px 8px #00000026;color:#fff}.menu-item.active:before{background:#fffc;border-radius:0 2px 2px 0;content:"";height:20px;left:0;position:absolute;top:50%;transform:translateY(-50%);width:3px}.menu-icon{font-size:18px;opacity:.9;text-align:center;width:20px}.menu-label{font-weight:500;letter-spacing:.3px;margin-left:12px;white-space:nowrap}.sidebar-footer{border-top:1px solid #ffffff14;padding:16px}.user-info{gap:10px;margin-bottom:12px}.user-avatar,.user-info{align-items:center;display:flex}.user-avatar{background:#ffffff26;border:2px solid #ffffff1a;border-radius:50%;font-size:14px;font-weight:600;height:36px;justify-content:center;transition:all .3s ease;width:36px}.user-avatar:hover{border-color:#fff3;transform:scale(1.05)}.user-details{flex:1 1;min-width:0}.user-name{color:#fffffff2;font-size:13px;font-weight:600}.user-name,.user-role{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-role{color:#fff9;font-size:11px;margin-top:2px}.logout-btn{align-items:center;background:#ffffff14;border:none;border-radius:6px;color:#fffc;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;justify-content:center;padding:10px;transition:all .3s ease;width:100%}.logout-btn:hover{background:#ffffff26;color:#fff;transform:translateY(-1px)}.logout-icon{font-size:14px}@media (min-width:1200px){.sidebar{width:260px}.sidebar.collapsed{width:70px}.main-content{margin-left:260px}.main-content.sidebar-collapsed{margin-left:70px}}@media (min-width:992px) and (max-width:1199px){.sidebar{width:240px}.sidebar.collapsed{width:60px}.main-content{margin-left:240px}.main-content.sidebar-collapsed{margin-left:60px}}@media (min-width:768px) and (max-width:991px){.sidebar{width:220px}.sidebar.collapsed{width:50px}.main-content{margin-left:220px}.main-content.sidebar-collapsed{margin-left:50px}.menu-item{font-size:13px;padding:10px 14px}.menu-icon{font-size:16px}.menu-label{margin-left:10px}.user-name{font-size:12px}.user-role{font-size:10px}}@media (max-width:767px){.sidebar{height:100vh;left:0;overflow:hidden;position:fixed;transition:width .3s cubic-bezier(.4,0,.2,1);width:60px;z-index:1000}.sidebar.collapsed{width:45px}.main-content{margin-left:60px;padding:clamp(8px,2vw,15px);transition:all .3s ease;width:calc(100% - 60px)}.main-content.sidebar-collapsed{margin-left:45px;width:calc(100% - 45px)}.sidebar-overlay{background:#00000080;height:100%;left:0;opacity:0;position:fixed;top:0;transition:all .3s ease;visibility:hidden;width:100%;z-index:999}.sidebar-overlay.active{opacity:1;visibility:visible}.menu-item{font-size:14px;padding:14px 16px}.menu-icon{font-size:18px;width:24px}.menu-label{font-size:14px;margin-left:12px}.sidebar-footer{padding:16px}.user-info{gap:12px;margin-bottom:14px}.user-avatar{font-size:15px;height:38px;width:38px}.user-name{font-size:13px}.user-role{font-size:11px}.logout-btn{font-size:14px;padding:12px}}@media (max-width:480px){.sidebar{left:0;width:70px}.sidebar.collapsed{width:60px}.main-content{margin-left:70px;width:calc(100% - 70px)}.main-content.sidebar-collapsed{margin-left:60px;width:calc(100% - 60px)}.sidebar-header{gap:8px;min-height:70px;padding:12px 8px}.logo,.sidebar-header{align-items:center;flex-direction:column}.logo{gap:6px}.logo-text{display:block;font-size:10px;font-weight:600;letter-spacing:.3px;line-height:1.1;text-align:center;white-space:normal}.collapse-btn{font-size:10px;height:24px;width:24px}.menu-item{align-items:center;flex-direction:column;font-size:12px;justify-content:center;min-height:50px;padding:8px 4px;text-align:center}.menu-icon{display:block;font-size:18px;margin-bottom:4px;width:auto}.menu-label{display:block;font-size:9px;line-height:1.1;margin-left:0;max-width:60px;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.sidebar.collapsed .menu-label{display:none}.sidebar.collapsed .menu-item{min-height:40px;padding:8px 2px}.sidebar.collapsed .menu-icon{font-size:16px;margin-bottom:0}.sidebar.collapsed .logo-text{display:none}.sidebar.collapsed .sidebar-header{min-height:50px;padding:8px 4px}.sidebar-footer{padding:12px 8px}.user-info{align-items:center;flex-direction:column;gap:8px;margin-bottom:12px}.user-avatar{font-size:16px;height:40px;width:40px}.user-details,.user-name{text-align:center}.user-name{font-size:11px}.user-role{font-size:9px;text-align:center}.logout-btn{font-size:12px;padding:8px}.sidebar.collapsed .user-details{display:none}.sidebar.collapsed .user-info{margin-bottom:8px}}@media (max-width:360px){.sidebar{left:0;width:65px}.sidebar.collapsed{width:55px}.main-content{margin-left:65px;padding:6px;width:calc(100% - 65px)}.main-content.sidebar-collapsed{margin-left:55px;width:calc(100% - 55px)}.sidebar-header{gap:6px;min-height:65px;padding:10px 6px}.logo,.sidebar-header{align-items:center;flex-direction:column}.logo{gap:4px}.logo-text{display:block;font-size:9px;font-weight:600;letter-spacing:.2px;line-height:1;text-align:center;white-space:normal}.collapse-btn{font-size:9px;height:20px;width:20px}.menu-item{align-items:center;flex-direction:column;font-size:11px;justify-content:center;min-height:42px;padding:8px 3px;text-align:center}.menu-icon{display:block;font-size:16px;margin-bottom:2px;width:auto}.menu-label{display:block;font-size:8px;line-height:1;margin-left:0;max-width:55px;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.sidebar.collapsed .menu-label{display:none}.sidebar.collapsed .menu-item{min-height:38px;padding:6px 2px}.sidebar.collapsed .menu-icon{font-size:14px;margin-bottom:0}.sidebar.collapsed .logo-text{display:none}.sidebar.collapsed .sidebar-header{min-height:45px;padding:6px 3px}.sidebar-footer{padding:8px 6px}.user-info{align-items:center;flex-direction:column;gap:6px;margin-bottom:8px}.user-avatar{font-size:13px;height:32px;width:32px}.user-details,.user-name{text-align:center}.user-name{font-size:9px}.user-role{font-size:8px;text-align:center}.logout-btn{font-size:10px;padding:6px}.sidebar.collapsed .user-details{display:none}.sidebar.collapsed .user-info{margin-bottom:6px}}.main-content{background:linear-gradient(135deg,#f8f9fa,#e9ecef);margin-left:240px;min-height:100vh;transition:margin-left .3s cubic-bezier(.4,0,.2,1)}.main-content.sidebar-collapsed{margin-left:60px}@media (max-width:768px){.main-content{margin-left:60px}}