@import"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css";@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";.change-password-overlay{position:fixed;inset:0;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:999999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:20px}.change-password-modal{background-color:var(--card-bg, #ffffff);width:100%;max-width:400px;max-height:90vh;border-radius:12px;box-shadow:0 10px 25px #0003;overflow:auto;animation:modal-appear .3s ease-out;position:relative}@keyframes modal-appear{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.modal-header{padding:20px;border-bottom:1px solid var(--border-color, #eee);display:flex;justify-content:space-between;align-items:center;background-color:#fff}.modal-header h2{margin:0;font-size:1.25rem;color:#111827;font-weight:600}.close-btn{background:none;border:none;font-size:1.2rem;color:var(--text-secondary, #666);cursor:pointer;padding:5px;border-radius:50%;transition:background-color .2s}.close-btn:hover{background-color:#0000000d}.change-password-form{padding:24px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--text-primary, #333);font-size:.9rem}.input-wrapper input{width:100%;padding:12px;border:1px solid var(--border-color, #ddd);border-radius:8px;font-size:1rem;background-color:var(--input-bg, #fff);color:var(--text-primary, #333);transition:border-color .2s,box-shadow .2s}.input-wrapper input:focus{outline:none;border-color:var(--primary-color, #007bff);box-shadow:0 0 0 3px #007bff1a}.error-message{background-color:#fff5f5;color:#c53030;padding:10px;border-radius:6px;border-left:4px solid #c53030;margin-bottom:20px;font-size:.9rem}.success-message{background-color:#f0fff4;color:#2f855a;padding:10px;border-radius:6px;border-left:4px solid #2f855a;margin-bottom:20px;font-size:.9rem}.modal-actions{display:flex;gap:12px;margin-top:30px}.cancel-btn{flex:1;padding:12px;border:1px solid var(--border-color, #ddd);background:var(--card-bg, #fff);color:var(--text-secondary, #666);border-radius:8px;font-weight:600;cursor:pointer;transition:background-color .2s}.cancel-btn:hover{background-color:var(--hover-bg, #f1f1f1)}.submit-btn{flex:2;padding:12px;border:none;background-color:var(--primary-color, #007bff);color:#fff;border-radius:8px;font-weight:600;cursor:pointer;transition:background-color .2s,transform .1s}.submit-btn:hover{background-color:var(--primary-hover, #0056b3)}.submit-btn:active{transform:translateY(1px)}.submit-btn:disabled{opacity:.7;cursor:not-allowed}[data-theme=dark] .change-password-modal{background-color:#1e293b}[data-theme=dark] .modal-header{background-color:#1e293b;border-bottom-color:#334155}[data-theme=dark] .close-btn{color:#94a3b8}[data-theme=dark] .close-btn:hover{background-color:#334155;color:#f1f5f9}[data-theme=dark] .input-wrapper input{background-color:#0f172a;border-color:#334155;color:#e2e8f0}[data-theme=dark] .input-wrapper input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}[data-theme=dark] .error-message{background-color:#ef44441a;color:#fca5a5;border-left-color:#ef4444}[data-theme=dark] .success-message{background-color:#22c55e1a;color:#86efac;border-left-color:#22c55e}[data-theme=dark] .cancel-btn{background:#334155;color:#cbd5e1;border-color:#334155}[data-theme=dark] .cancel-btn:hover{background-color:#475569}[data-theme=dark] .submit-btn{background-color:#3b82f6}[data-theme=dark] .submit-btn:hover{background-color:#2563eb}.help-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:999999;animation:helpModalFadeIn .2s ease;padding:20px}@keyframes helpModalFadeIn{0%{opacity:0}to{opacity:1}}.help-modal-content{background:#fff;border-radius:12px;width:90%;max-width:500px;max-height:90vh;box-shadow:0 20px 60px #0000004d;animation:helpModalSlideUp .3s cubic-bezier(.4,0,.2,1);overflow:hidden;position:relative}@keyframes helpModalSlideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.help-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb;background:#f9fafb}.help-modal-header h3{margin:0;font-size:1.25rem;font-weight:600;color:#111827}.help-modal-close{background:none;border:none;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;cursor:pointer;color:#6b7280;transition:all .2s ease}.help-modal-close:hover{background:#e5e7eb;color:#111827}.help-modal-body{padding:24px}.help-contact-details p{margin:0 0 20px;color:#4b5563;line-height:1.6}.help-contact-list{display:flex;flex-direction:column;gap:16px}.help-contact-item{display:flex;align-items:center;gap:12px;padding:12px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.help-contact-item i{width:20px;font-size:1.1rem;color:#3b82f6}.help-contact-item span{color:#374151;font-size:.9375rem}.help-contact-item a{color:#3b82f6;text-decoration:none;font-size:.9375rem;transition:color .2s ease}.help-contact-item a:hover{color:#2563eb;text-decoration:underline}.help-modal-footer{padding:16px 24px;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;background:#f9fafb}.help-modal-button{padding:10px 24px;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s ease}.help-modal-button:hover{background:#2563eb;transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.help-modal-button:active{transform:translateY(0)}[data-theme=dark] .help-modal-content{background:#1e293b}[data-theme=dark] .help-modal-header{background:#0f172a;border-bottom-color:#334155}[data-theme=dark] .help-modal-header h3{color:#f1f5f9}[data-theme=dark] .help-modal-close{color:#94a3b8}[data-theme=dark] .help-modal-close:hover{background:#334155;color:#f1f5f9}[data-theme=dark] .help-contact-details p{color:#cbd5e1}[data-theme=dark] .help-contact-item{background:#0f172a;border-color:#334155}[data-theme=dark] .help-contact-item span{color:#e2e8f0}[data-theme=dark] .help-contact-item a{color:#60a5fa}[data-theme=dark] .help-contact-item a:hover{color:#93c5fd}[data-theme=dark] .help-modal-footer{background:#0f172a;border-top-color:#334155}@media(max-width:640px){.help-modal-content{width:95%;margin:0 10px}.help-modal-header{padding:16px 20px}.help-modal-header h3{font-size:1.125rem}.help-modal-body{padding:20px}.help-contact-item{padding:10px}.help-modal-footer{padding:12px 20px}}.header{position:fixed;top:0;left:0;right:0;height:56px;padding:0 1rem;background:#fffffffa;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 2px 8px #00000014;z-index:10100!important;border-bottom:1px solid rgba(229,231,235,.8);transition:all .3s ease;overflow:visible}@media(min-width:768px){.header{height:64px;padding:0 1.5rem}}.nav-container{height:100%;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;position:relative;z-index:1010}.logo-link{display:flex;align-items:center;text-decoration:none;font-size:1.5rem;font-weight:700;color:#1f2937;gap:.5rem}.logo-image,.logo-fallback{height:32px;width:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;object-fit:contain;font-size:1.5rem;color:#2563eb}:root{--primary-color: #2563eb}.logo-fallback{color:var(--primary-color)}.menu-wrapper{position:relative;display:none}.menu-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:none;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;font-size:.9rem;color:#4b5563;transition:all .3s ease}.menu-btn:hover{background:#f9fafb;border-color:#d1d5db}.menu-dropdown{position:absolute;top:100%;left:0;width:300px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 25px #0000001a;z-index:1001;max-height:80vh;overflow-y:auto}.menu-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid #e5e7eb}.menu-header h3{margin:0;font-size:1.1rem;color:#1f2937}.close-menu{background:none;border:none;cursor:pointer;padding:.25rem;color:#6b7280;font-size:1.2rem}.menu-sections{padding:1rem}.menu-section{margin-bottom:1.5rem}.menu-section h4{margin:0 0 .5rem;font-size:.9rem;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.menu-section ul{list-style:none;margin:0;padding:0}.menu-section li{margin-bottom:.25rem}.menu-section a{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;text-decoration:none;color:#4b5563;border-radius:6px;transition:all .3s ease}.menu-section a:hover{background:#f3f4f6;color:#2563eb}.nav-links{display:flex;list-style:none;gap:1.5rem;margin:0;padding:0;height:100%;align-items:stretch}.nav-links a{text-decoration:none;color:#4b5563;font-weight:500;font-size:.9rem;padding:.5rem .75rem;border-radius:6px;transition:all .3s ease;position:relative;display:block}.nav-links a.active,.nav-links a:hover{color:#2563eb}.nav-links a.active:after{content:"";position:absolute;bottom:-.5rem;left:50%;transform:translate(-50%);width:80%;height:2px;background:#2563eb}.nav-dropdown{position:relative;display:flex;align-items:center}.header-dropdown-container{position:absolute;top:100%;left:0;min-width:220px;z-index:1001;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .3s ease,visibility .3s ease,transform .3s ease;padding-top:10px}.nav-dropdown.open .header-dropdown-container{opacity:1;visibility:visible;transform:translateY(0)}.nav-dropdown:focus-within .header-dropdown-container{opacity:1;visibility:visible;transform:translateY(0)}.header-dropdown-container ul{list-style:none;margin:0;padding:.5rem;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 25px #0000001a}.header-dropdown-container li{margin-bottom:.25rem}.header-dropdown-container a{display:flex;align-items:center;gap:.75rem;padding:.75rem;color:#4b5563;text-decoration:none;border-radius:6px;transition:all .3s ease;width:100%;box-sizing:border-box}.header-dropdown-container a:hover{background:#f3f4f6;color:#2563eb}.search-bar{position:relative;flex:1;max-width:400px;margin:0 .75rem}.search-input{width:100%;height:40px;padding:0 1rem 0 2rem;border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;background:#f9fafb;transition:all .2s ease;color:#374151}.search-input::placeholder{color:#9ca3af;font-weight:400}.search-input:focus{outline:none;border-color:#3b82f6;background:#fff;box-shadow:0 0 0 2px #3b82f61a}.search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:#9ca3af;font-size:.875rem;pointer-events:none}.nav-right{display:flex;align-items:center;gap:.5rem}.sidebar-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:none;border:none;border-radius:8px;cursor:pointer;color:#6b7280;transition:all .2s ease;font-size:1rem}.sidebar-toggle:hover{background:#f3f4f6cc;color:#374151}.sidebar-toggle.desktop-only{display:none}.sidebar-toggle.mobile-only{display:flex}@media(min-width:768px){.sidebar-toggle.desktop-only{display:flex}.sidebar-toggle.mobile-only{display:none}}.mobile-dropdown-backdrop{position:fixed;inset:0;background:#0000004d;z-index:1000;animation:fadeIn .2s ease-out}@media(min-width:768px){.mobile-dropdown-backdrop{display:none}}.notification-center{position:relative!important;width:36px;height:36px;display:flex!important;align-items:center!important;justify-content:center!important;flex-shrink:0;z-index:1020}.notification-bell{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:none;border:none;border-radius:8px;cursor:pointer;color:#6b7280;font-size:1rem;transition:all .2s ease;z-index:10001}.notification-bell:hover{background:#f3f4f6cc;color:#374151}.notification-badge{position:absolute;top:.15rem;right:.15rem;background:#ef4444;color:#fff;font-size:.65rem;padding:.1rem .25rem;border-radius:10px;min-width:1rem;text-align:center;line-height:1;font-weight:600}.notification-dropdown{position:absolute!important;top:calc(100% + 10px);right:0;width:320px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 10px 40px #00000026;z-index:20000;overflow:hidden;animation:dropdownFadeIn .2s cubic-bezier(.165,.84,.44,1);transform-origin:top right;pointer-events:auto}@media(max-width:767px){.notification-dropdown{position:fixed!important;top:52px!important;right:.5rem;left:.5rem;width:calc(100vw - 1rem);max-width:360px;z-index:20000!important;pointer-events:auto!important;margin:0 auto}.notification-dropdown:before{display:none}}.notification-dropdown:before{content:"";position:absolute;top:-6px;right:14px;width:12px;height:12px;background:#fff;transform:rotate(45deg);border-left:1px solid #e5e7eb;border-top:1px solid #e5e7eb;z-index:1003}.notification-header{padding:1rem;border-bottom:1px solid #e5e7eb;background:#fff;border-radius:12px 12px 0 0;display:flex;align-items:center;justify-content:space-between;gap:1rem}.notification-header h3{margin:0;font-size:1.1rem;color:#1f2937}.mark-all-read-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#3b82f61a;border:none;border-radius:8px;color:var(--primary-color);cursor:pointer;transition:all .2s ease;flex-shrink:0}.mark-all-read-btn:hover{background:#3b82f633;transform:scale(1.05)}.mark-all-read-btn:active{transform:scale(.95)}.mark-all-read-btn i{font-size:.9rem}.notification-list{max-height:300px;overflow-y:auto}.notification-item{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;border-bottom:1px solid #f3f4f6;transition:background .3s ease;cursor:pointer}.notification-item:hover{background:#f9fafb}.notification-icon{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:14px}.notification-icon.info{background:#3b82f61a;color:#3b82f6}.notification-icon.success{background:#22c55e1a;color:#22c55e}.notification-icon.warning{background:#f59e0b1a;color:#f59e0b}.notification-icon.error{background:#ef44441a;color:#ef4444}.notification-content{flex:1;min-width:0}.notification-content h4{margin:0 0 .25rem;font-size:.9rem;font-weight:600;color:#1f2937;line-height:1.3}.notification-content p{margin:0 0 .5rem;font-size:.8rem;color:#6b7280;line-height:1.4}.notification-time{font-size:.75rem;color:#9ca3af;display:block}.empty-notifications{padding:2rem 1rem;text-align:center;color:#9ca3af;font-size:.9rem}.see-more-notifications{display:block;padding:.75rem 1rem;text-align:center;color:var(--primary-color);font-weight:600;font-size:.9rem;text-decoration:none;border-top:1px solid #e5e7eb;background:#f9fafb;transition:all .2s ease}.see-more-notifications:hover{background:#f3f4f6;color:var(--primary-dark)}.theme-toggle-container{position:relative;flex-shrink:0}.theme-toggle-button{background:none;border:none;cursor:pointer;padding:2px;border-radius:12px;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.theme-toggle-button:hover{background:#f3f4f6cc}.theme-toggle-track{width:44px;height:22px;background:#e5e7eb;border-radius:11px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);border:1px solid #d1d5db;overflow:hidden}.theme-toggle-thumb{width:16px;height:16px;background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;box-shadow:0 1px 3px #0000001a;z-index:2}.theme-toggle-thumb i{font-size:9px;color:#3b82f6!important;transition:all .3s ease;line-height:1}.theme-toggle-thumb.dark{transform:translate(22px);background:#374151;box-shadow:0 1px 3px #0000004d}.theme-toggle-thumb.dark i{color:#e5e5e5}[data-theme=light] .theme-toggle-track{background:#e5e7eb!important;border-color:#3b82f6!important}[data-theme=dark] .theme-toggle-track{background:#1f2937!important;border-color:#374151!important}[data-theme=dark] .theme-toggle-button:hover{background:#ffffff1a}[data-theme=light] .theme-toggle-button:hover{background:#f3f4f6cc}.theme-toggle-button:active .theme-toggle-thumb{transform:scale(.95)}[data-theme=dark] .theme-toggle-button:active .theme-toggle-thumb{transform:translate(26px) scale(.95)}.theme-toggle-thumb.light i{transform:rotate(0)}.theme-toggle-thumb.dark i{transform:rotate(180deg)}.theme-toggle-button:focus{outline:none}@media(prefers-reduced-motion:reduce){.theme-toggle-thumb,.theme-toggle-track,.theme-toggle-thumb i{transition:none}}[data-theme=dark] .header{background:#0c0c0cfa;border-bottom-color:#ffffff1a}[data-theme=dark] .logo-link{color:#e5e5e5}[data-theme=dark] .logo-link span{background:linear-gradient(135deg,#60a5fa,#3b82f6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}[data-theme=dark] .nav-links a{color:#d1d5db}[data-theme=dark] .nav-links a.active,[data-theme=dark] .nav-links a:hover{color:#60a5fa}[data-theme=dark] .search-input{background:#1a1a1a;border-color:#ffffff1a;color:#e5e5e5}[data-theme=dark] .search-input::placeholder{color:#6b7280}[data-theme=dark] .search-input:focus{background:#0c0c0c;border-color:#3b82f6}[data-theme=dark] .search-icon{color:#6b7280}[data-theme=dark] .notification-bell,[data-theme=dark] .dark-mode-toggle,[data-theme=dark] .profile-icon,[data-theme=dark] .mobile-nav-toggle{color:#d1d5db}[data-theme=dark] .notification-bell:hover,[data-theme=dark] .dark-mode-toggle:hover,[data-theme=dark] .profile-icon:hover,[data-theme=dark] .mobile-nav-toggle:hover{background:#ffffff1a;color:#e5e5e5}[data-theme=dark] .notification-dropdown,[data-theme=dark] .profile-menu{background:#18181b;border-color:#27272a;box-shadow:0 4px 6px -1px #0000004d,0 2px 4px -1px #0003,0 20px 25px -5px #0006}[data-theme=dark] .mark-all-read-btn{background:#3b82f626;color:#60a5fa}[data-theme=dark] .mark-all-read-btn:hover{background:#3b82f640}[data-theme=dark] .notification-dropdown:before{background:#18181b;border-color:#27272a}[data-theme=dark] .header-dropdown-container ul{background:#18181b;border-color:#27272a}[data-theme=dark] .notification-header,[data-theme=dark] .profile-header{background:#1e293b!important;border-bottom-color:#334155}[data-theme=dark] .notification-header h3,[data-theme=dark] .profile-name{color:#f1f5f9}[data-theme=dark] .profile-email{color:#94a3b8}[data-theme=dark] .profile-avatar{background:#334155;color:#cbd5e1;box-shadow:none}[data-theme=dark] .profile-link{color:#cbd5e1}[data-theme=dark] .profile-link i{color:#94a3b8}[data-theme=dark] .profile-link:hover{background:#27272a;color:#60a5fa}[data-theme=dark] .profile-link:hover i{color:#60a5fa}[data-theme=dark] .logout-btn{color:#f87171;border-top-color:#27272a}[data-theme=dark] .logout-btn i{color:#f87171}[data-theme=dark] .logout-btn:hover{background:#ef44441a;color:#fca5a5}[data-theme=dark] .logout-btn:hover i{color:#fca5a5}[data-theme=dark] .profile-icon:hover{border-color:#27272a}[data-theme=dark] .notification-item{border-bottom-color:#27272a}[data-theme=dark] .notification-item:hover{background:#27272a}[data-theme=dark] .notification-item h4{color:#f1f5f9}[data-theme=dark] .notification-item p{color:#94a3b8}[data-theme=dark] .notification-item.unread{background:#3b82f61a;border-left-color:#3b82f6}[data-theme=dark] .notification-time,[data-theme=dark] .empty-notifications{color:#71717a}[data-theme=dark] .see-more-notifications{background:#27272a;border-top-color:#27272a;color:#60a5fa}[data-theme=dark] .see-more-notifications:hover{background:#3f3f46;color:#93c5fd}[data-theme=dark] .header-dropdown-container a{color:#cbd5e1}[data-theme=dark] .header-dropdown-container a:hover{background:#27272a;color:#60a5fa}[data-theme=dark] .mobile-nav-menu{background:#18181b}[data-theme=dark] .mobile-nav-header{background:#0f172a;border-bottom-color:#27272a}[data-theme=dark] .mobile-nav-header h3{color:#e5e5e5}[data-theme=dark] .mobile-nav-close{color:#9ca3af}[data-theme=dark] .mobile-nav-close:hover{background:#ffffff1a;color:#e5e5e5}[data-theme=dark] .mobile-nav-main-link{color:#d1d5db;background:#1a1a1a}[data-theme=dark] .mobile-nav-main-link:hover,[data-theme=dark] .mobile-nav-main-link.active{background:#262626;color:#60a5fa}[data-theme=dark] .mobile-nav-submenu{background:#0c0c0c}[data-theme=dark] .mobile-nav-sub-link{color:#9ca3af}[data-theme=dark] .mobile-nav-sub-link:hover{background:#1a1a1a;color:#d1d5db}[data-theme=dark] .mobile-nav-section{border-bottom-color:#ffffff0d}[data-theme=dark] .mobile-nav-overlay{background:#000c}.profile-dropdown{position:relative;flex-shrink:0;z-index:1020}.profile-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:none;border:2px solid transparent;border-radius:50%;cursor:pointer;color:#6b7280;font-size:1.1rem;transition:all .2s cubic-bezier(.4,0,.2,1);overflow:hidden;z-index:1021}.profile-icon:hover{border-color:#e5e7eb;transform:scale(1.05)}.profile-icon:active{transform:scale(.98)}.profile-menu{position:absolute;top:calc(100% + 12px);right:0;width:300px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f,0 20px 25px -5px #0000001a;z-index:20000;overflow:visible;animation:profileDropdownFadeIn .15s cubic-bezier(.4,0,.2,1);pointer-events:auto}@keyframes profileDropdownFadeIn{0%{opacity:0;transform:translateY(-8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:767px){.profile-menu{position:fixed!important;top:52px!important;right:.75rem;left:.75rem;width:calc(100vw - 1.5rem);max-width:340px;z-index:20000!important;pointer-events:auto!important;margin:0 auto}}.profile-header{display:flex;align-items:center;gap:12px;padding:16px;background:#fff!important;border-bottom:1px solid #e2e8f0}.profile-avatar{width:48px;height:48px;background:#e5e7eb;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#6b7280;font-size:1.25rem;flex-shrink:0;box-shadow:none}.profile-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.profile-info{flex:1;min-width:0;overflow:visible}.profile-name{font-weight:600;font-size:.9375rem;color:#0f172a;margin:0 0 4px;line-height:1.3;word-wrap:break-word;overflow-wrap:break-word;white-space:normal}.profile-email{font-size:.8125rem;color:#64748b;line-height:1.4;word-wrap:break-word;overflow-wrap:break-word;white-space:normal}.profile-sections{padding:8px}.profile-link{display:flex;align-items:center;gap:12px;padding:10px 12px;text-decoration:none;color:#334155;font-size:.875rem;font-weight:500;border-radius:8px;transition:all .15s cubic-bezier(.4,0,.2,1);cursor:pointer}.profile-link i{width:18px;font-size:1rem;color:#64748b;transition:color .15s ease}.profile-link:hover{background:#f1f5f9;color:#2563eb}.profile-link:hover i{color:#2563eb}.profile-link:active{transform:scale(.98)}.logout-btn{width:100%;display:flex;align-items:center;gap:12px;padding:10px 12px;margin-top:4px;background:none;border:none;border-top:1px solid #e2e8f0;color:#dc2626;font-size:.875rem;font-weight:500;border-radius:0;cursor:pointer;transition:all .15s cubic-bezier(.4,0,.2,1);text-align:left}.logout-btn i{width:18px;font-size:1rem;color:#dc2626}.logout-btn:hover{background:#fef2f2;color:#b91c1c}.logout-btn:hover i{color:#b91c1c}.logout-btn:active{transform:scale(.98)}.nav-container{height:100%;display:flex;align-items:center;justify-content:space-between;gap:.5rem;position:relative}.nav-links{display:none}.search-bar{display:none!important}.mobile-search-btn{display:flex!important;align-items:center;justify-content:center;width:36px;height:36px;background:none;border:none;border-radius:8px;cursor:pointer;color:#6b7280;font-size:1rem;transition:all .2s ease;flex-shrink:0;z-index:1010}.mobile-search-btn:hover{background:#f3f4f6cc;color:#374151}.nav-right{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.logo-link{display:flex;align-items:center;text-decoration:none;font-size:1.25rem;font-weight:700;color:#1f2937;gap:.375rem;flex-shrink:1;min-width:0;overflow:hidden}.logo-link span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logo-link .logo-image{width:32px;height:32px;object-fit:contain;border-radius:6px;flex-shrink:0}.mobile-nav-toggle{display:flex!important;align-items:center;justify-content:center;width:36px;height:36px;background:none;border:none;border-radius:8px;cursor:pointer;color:#6b7280;font-size:1rem;transition:all .2s ease;margin-right:.25rem;z-index:1010;flex-shrink:0}.mobile-nav-toggle i{font-size:1.1rem!important;line-height:1!important}.mobile-nav-toggle:hover{background:#f3f4f6cc;color:#374151}.mobile-nav-toggle:active{background:#e5e7ebcc;transform:scale(.95)}.mobile-nav-overlay{position:fixed;inset:0;background:#00000080;z-index:1004;animation:fadeIn .2s ease-out}.mobile-nav-menu{position:fixed;bottom:0;left:0;right:0;background:#fff;z-index:1005;max-height:80vh;overflow:hidden;box-shadow:0 -4px 24px #00000026;border-radius:16px 16px 0 0;animation:slideInFromBottom .3s ease-out}@keyframes slideInFromBottom{0%{transform:translateY(100%)}to{transform:translateY(0)}}.mobile-nav-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1.25rem 1rem;border-bottom:1px solid #e5e7eb;background:#f9fafb;position:relative}.mobile-nav-handle{position:absolute;top:.5rem;left:50%;transform:translate(-50%);width:40px;height:4px;background:#d1d5db;border-radius:2px}.mobile-nav-header h3{margin:0;font-size:1.125rem;color:#1f2937;font-weight:600}.mobile-nav-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:none;border:none;cursor:pointer;color:#6b7280;font-size:1rem;border-radius:6px;transition:all .2s ease}.mobile-nav-close:hover{background:#e5e7eb99;color:#374151}.mobile-nav-content{padding:.5rem 0;max-height:calc(80vh - 80px);overflow-y:auto;-webkit-overflow-scrolling:touch}.mobile-nav-section{border-bottom:1px solid #f3f4f6}.mobile-nav-main-link{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;text-decoration:none;color:#374151;font-weight:600;font-size:1rem;transition:all .3s ease;background:#fff}.mobile-nav-main-link:hover,.mobile-nav-main-link.active{background:#f3f4f6;color:#3b82f6}.mobile-nav-main-link i:first-child{font-size:1.1rem;width:20px;text-align:center}.mobile-nav-main-link i:last-child{margin-left:auto;font-size:.875rem;color:#9ca3af}.mobile-nav-submenu{background:#f9fafb;border-top:1px solid #e5e7eb}.mobile-nav-sub-link{display:flex;align-items:center;gap:.75rem;padding:.875rem 1.25rem .875rem 2.5rem;text-decoration:none;color:#6b7280;font-size:.9rem;transition:all .3s ease}.mobile-nav-sub-link:hover{background:#e5e7eb;color:#374151}.mobile-nav-sub-link i{font-size:.9rem;width:16px;text-align:center;color:#9ca3af}@media(max-width:769px){.header .mobile-only,.nav-container .mobile-only,button.mobile-only{display:flex!important}.header .desktop-only,.nav-container .desktop-only,.search-bar.desktop-only{display:none!important}}@media(max-width:767px){.mobile-nav-toggle.mobile-only{display:flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;position:relative!important;z-index:1010!important}}@media(max-width:480px){.header{padding:0 .5rem;height:52px}.nav-container{gap:.25rem}.logo-link{font-size:1rem;gap:.25rem;max-width:50%}.logo-link span{font-size:.95rem}.logo-link .logo-image{width:28px;height:28px}.nav-right{gap:.25rem}.mobile-nav-toggle,.sidebar-toggle,.notification-bell,.dark-mode-toggle,.profile-icon,.mobile-search-btn{width:32px;height:32px;font-size:.875rem}.notification-center{width:32px;height:32px}.profile-icon{font-size:1rem}.theme-toggle-track{width:42px;height:22px}.theme-toggle-thumb{width:16px;height:16px}.theme-toggle-thumb i{font-size:8px}.theme-toggle-thumb.dark{transform:translate(20px)}.notification-dropdown,.profile-menu{width:calc(100vw - 1rem);right:.5rem;left:.5rem;max-width:320px;top:52px!important;z-index:20000!important}.notification-icon{width:28px;height:28px;font-size:12px}.notification-content h4{font-size:.85rem}.notification-content p{font-size:.75rem}.profile-menu{width:calc(100vw - 1.5rem)}}@media(max-width:360px){.header{padding:0 .375rem}.logo-link{font-size:.9rem;max-width:45%}.logo-link span{font-size:.875rem}.logo-link .logo-image{width:26px;height:26px}.nav-right{gap:.125rem}.mobile-nav-toggle,.notification-center,.theme-toggle-container,.profile-dropdown{width:30px;height:30px}.mobile-nav-toggle,.notification-bell,.profile-icon{width:30px;height:30px;font-size:.8rem}.theme-toggle-track{width:38px;height:20px}.theme-toggle-thumb{width:14px;height:14px;top:2px;left:2px}.theme-toggle-thumb i{font-size:7px}.theme-toggle-thumb.dark{transform:translate(18px)}.notification-badge{font-size:.6rem;padding:.05rem .2rem;min-width:.9rem}}@media(min-width:481px)and (max-width:767px){.header{padding:0 .75rem;height:56px}.logo-link{font-size:1.125rem;max-width:60%}.logo-link .logo-image{width:30px;height:30px}.nav-right{gap:.375rem}.mobile-nav-toggle,.notification-center,.profile-dropdown{width:36px;height:36px}.notification-bell,.profile-icon{font-size:1rem}}@media(min-width:768px){.header{height:60px;padding:0 1.25rem}.nav-container{gap:1rem}.nav-links{display:flex!important}.search-bar,.search-bar.desktop-only{display:block!important}.mobile-search-btn,.mobile-search-btn.mobile-only,.mobile-only{display:none!important}.desktop-only{display:flex!important}.nav-right{gap:.5rem}.logo-link{font-size:1.375rem;gap:.5rem;max-width:none;flex:0 0 auto}.sidebar-toggle,.notification-bell,.dark-mode-toggle,.profile-icon{width:40px;height:40px;font-size:1rem}.notification-center{width:40px;height:40px}.profile-icon{width:40px;height:40px;font-size:1.25rem}.theme-toggle-track{width:48px;height:24px}.theme-toggle-thumb{width:18px;height:18px}.theme-toggle-thumb i{font-size:10px}.theme-toggle-thumb.dark{transform:translate(24px)}}@media(min-width:1024px){.header{height:64px;padding:0 1.5rem}.nav-container{gap:1.5rem}.nav-right{gap:.75rem}.logo-link{font-size:1.5rem}.search-bar{max-width:500px}}@media(min-width:1280px){.nav-container{gap:2rem}.search-bar{max-width:600px}}.logo-link i{color:#3b82f6;font-size:1.25rem}.logo-link span{background:linear-gradient(135deg,#3b82f6,#1d4ed8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}*{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.notification-badge{animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.header i{font-family:"Font Awesome 6 Free","Font Awesome 6 Pro",FontAwesome,sans-serif!important;font-weight:900!important;font-style:normal!important;display:inline-block!important;text-rendering:auto!important;-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale!important}.search-input:focus+.search-icon{color:#3b82f6}.search-bar:hover .search-input{border-color:#9ca3af}.search-bar:hover .search-icon{color:#6b7280}@media(max-width:769px){.mobile-search-btn{display:flex!important}}@media(min-width:770px){.search-bar{display:block!important}.mobile-search-btn{display:none!important}}.nav-right i,.menu-btn i,.logo-link i{font-size:1rem!important;line-height:1!important}@media(max-width:480px){.mobile-nav-menu{max-height:80vh}.mobile-nav-main-link{padding:.875rem 1rem;font-size:.95rem}.mobile-nav-sub-link{padding:.75rem 1rem .75rem 2rem;font-size:.85rem}.mobile-nav-header{padding:.875rem 1rem}.mobile-nav-header h3{font-size:1rem}}@media(max-width:767px){.mobile-nav-overlay{z-index:1004}.mobile-nav-menu{z-index:1005}.mobile-nav-menu.with-sidebar{max-height:60vh}}.mobile-nav-content{scroll-behavior:smooth;-webkit-overflow-scrolling:touch}@media(hover:none)and (pointer:coarse){.mobile-nav-main-link:hover,.mobile-nav-sub-link:hover{background:inherit}.mobile-nav-main-link:active{background:#f3f4f6}.mobile-nav-sub-link:active{background:#e5e7eb}}.mobile-nav-current-section{background:#f8fafc;margin-bottom:.5rem}.mobile-nav-section-title{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem .5rem;font-size:.8rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;background:#f1f5f9;border-bottom:1px solid #e2e8f0}.mobile-nav-section-title i{font-size:.75rem;color:#9ca3af}.mobile-nav-sidebar-link{display:flex;align-items:center;gap:.75rem;padding:.875rem 1.25rem;text-decoration:none;color:#374151;font-size:.95rem;font-weight:500;transition:all .3s ease;border-left:4px solid transparent;background:#fff}.mobile-nav-sidebar-link:hover{background:#f3f4f6;color:#1f2937}.mobile-nav-sidebar-link.active{background:#eff6ff;color:#3b82f6;border-left-color:#3b82f6;font-weight:600}.mobile-nav-sidebar-link i{font-size:1rem;width:20px;text-align:center;flex-shrink:0}.mobile-nav-badge{margin-left:auto;padding:.2rem .6rem;border-radius:12px;font-size:.7rem;font-weight:600;background:#3b82f6;color:#fff}.mobile-nav-badge:is(.new){background:#10b981}.mobile-nav-badge:is(.popular){background:#f59e0b}.mobile-nav-divider{height:1px;background:#e5e7eb;margin:.5rem 0}.mobile-nav-main-link{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;text-decoration:none;color:#374151;font-weight:600;font-size:1rem;transition:all .3s ease;background:#fff;border-left:4px solid transparent}.mobile-nav-main-link:hover,.mobile-nav-main-link.active{background:#f3f4f6;color:#3b82f6;border-left-color:#3b82f6}.mobile-nav-submenu{background:#f9fafb}.mobile-nav-sub-link{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.25rem .75rem 2.5rem;text-decoration:none;color:#6b7280;font-size:.9rem;transition:all .3s ease;border-left:4px solid transparent}.mobile-nav-sub-link:hover{background:#e5e7eb;color:#374151;border-left-color:#d1d5db}.search-dropdown{position:fixed;top:60px;left:.5rem;right:.5rem;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 10px 40px #00000026;z-index:9999;overflow:hidden;animation:dropdownFadeIn .2s cubic-bezier(.165,.84,.44,1);max-width:600px;margin:0 auto;pointer-events:auto}.search-dropdown-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid #e5e7eb;background:#f9fafb}.search-dropdown-header h3{margin:0;font-size:1.125rem;color:#1f2937;font-weight:700}.search-dropdown-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#fff;border:1px solid #e5e7eb;cursor:pointer;color:#6b7280;font-size:1rem;border-radius:50%;transition:all .2s ease}.search-dropdown-close:hover{background:#f3f4f6;color:#374151;transform:rotate(90deg)}.search-dropdown-content{padding:1.25rem;max-height:400px;overflow-y:auto}.search-dropdown-input-wrapper{position:relative;display:flex;align-items:center;margin-bottom:1.25rem}.search-dropdown-icon{position:absolute;left:1rem;color:#9ca3af;font-size:1rem;pointer-events:none;z-index:1}.search-dropdown-input{width:100%;height:48px;padding:0 3rem;border:2px solid #e5e7eb;border-radius:10px;font-size:.95rem;background:#f9fafb;transition:all .2s ease;color:#374151}.search-dropdown-input::placeholder{color:#9ca3af}.search-dropdown-input:focus{outline:none;border-color:#3b82f6;background:#fff;box-shadow:0 0 0 3px #3b82f61a}.search-dropdown-clear{position:absolute;right:.75rem;display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:#e5e7eb;border:none;border-radius:50%;cursor:pointer;color:#6b7280;font-size:.75rem;transition:all .2s ease;z-index:1}.search-dropdown-clear:hover{background:#d1d5db;color:#374151}.search-dropdown-suggestions h4{margin:0 0 .875rem;font-size:.8rem;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.search-suggestions-list{display:flex;flex-direction:column;gap:.625rem}.search-suggestion{display:flex;align-items:center;gap:.875rem;padding:.875rem 1rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;cursor:pointer;transition:all .2s ease;text-align:left;font-size:.9rem;color:#374151;font-weight:500}.search-suggestion:hover{background:#fff;border-color:#3b82f6;color:#3b82f6;transform:translate(4px);box-shadow:0 2px 8px #3b82f626}.search-suggestion i{font-size:1rem;color:#9ca3af;width:20px;text-align:center;flex-shrink:0}.search-suggestion:hover i{color:#3b82f6}[data-theme=dark] .search-dropdown{background:#1a1a1a;border-color:#ffffff1a}[data-theme=dark] .search-dropdown-header{border-bottom-color:#ffffff1a;background:#0c0c0c}[data-theme=dark] .search-dropdown-header h3{color:#e5e5e5}[data-theme=dark] .search-dropdown-close{background:#262626;border-color:#ffffff1a;color:#9ca3af}[data-theme=dark] .search-dropdown-close:hover{background:#333;color:#e5e5e5}[data-theme=dark] .search-dropdown-input{background:#0c0c0c;border-color:#ffffff1a;color:#e5e5e5}[data-theme=dark] .search-dropdown-input:focus{background:#1a1a1a;border-color:#3b82f6}[data-theme=dark] .search-dropdown-clear{background:#333;color:#9ca3af}[data-theme=dark] .search-dropdown-clear:hover{background:#404040;color:#e5e5e5}[data-theme=dark] .search-dropdown-suggestions h4{color:#9ca3af}[data-theme=dark] .search-suggestion{background:#0c0c0c;border-color:#ffffff1a;color:#d1d5db}[data-theme=dark] .search-suggestion:hover{background:#262626;border-color:#3b82f6;color:#60a5fa}[data-theme=dark] .search-suggestion:hover i{color:#60a5fa}@media(max-width:480px){.search-dropdown{left:.5rem;right:.5rem}.search-dropdown-header{padding:.875rem 1rem}.search-dropdown-header h3{font-size:1rem}.search-dropdown-content{padding:1rem;max-height:350px}.search-dropdown-input{height:44px;font-size:.9rem}.search-suggestion{padding:.75rem .875rem;font-size:.875rem}}@media(min-width:768px){.search-dropdown{position:absolute;top:calc(100% + 10px);left:auto;right:0;width:400px;max-width:none}}Modern Sidebar Styles .modern-sidebar{display:flex;flex-direction:column;width:256px;height:100%;background:#fff;border-right:1px solid rgba(229,231,235,.8);transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden;box-shadow:0 1px 3px #0000000d;position:relative;z-index:100}.modern-sidebar.collapsed{width:64px}.modern-sidebar.mobile{width:280px;height:100%;box-shadow:none}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:1rem;border-bottom:1px solid rgba(229,231,235,.8);background:#fff;min-height:64px;flex-shrink:0}.sidebar-title h3{margin:0;font-size:1.125rem;color:#111827;font-weight:600;letter-spacing:-.025em}.sidebar-toggle-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:none;border:none;cursor:pointer;color:#6b7280;font-size:.875rem;border-radius:6px;transition:all .2s ease}.sidebar-toggle-btn:hover{background:#e5e7eb99;color:#374151}.sidebar-close-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:none;border:none;cursor:pointer;color:#6b7280;font-size:1rem;border-radius:6px;transition:all .2s ease}.sidebar-close-btn:hover{background:#e5e7eb99;color:#374151}.modern-sidebar.collapsed .sidebar-header{justify-content:center;padding:1rem .5rem}.sidebar-nav{display:flex;flex-direction:column;align-items:flex-start;flex:1;padding:.25rem;overflow-y:auto!important;overflow-x:hidden;min-height:0;position:relative;z-index:1}.sidebar-nav{scrollbar-width:thin!important;scrollbar-color:#cbd5e1 #f1f5f9!important}.sidebar-nav::-webkit-scrollbar{display:block!important;width:8px!important}.sidebar-nav::-webkit-scrollbar-track{display:block!important;background:#f1f5f9!important;border-radius:4px!important;margin:4px 0!important}.sidebar-nav::-webkit-scrollbar-thumb{display:block!important;background:#cbd5e1!important;border-radius:4px!important;border:2px solid #f1f5f9!important}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:#94a3b8!important}.sidebar-menu{list-style:none;margin:0;padding:0;width:100%;display:flex;flex-direction:column;gap:.125rem;position:relative;z-index:2}.sidebar-item{position:relative;z-index:2;display:block!important;width:100%}.sidebar-link{display:flex;align-items:center;gap:.75rem;padding:.625rem .875rem;text-decoration:none;color:#6b7280;font-weight:500;font-size:.875rem;border-radius:8px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;min-height:42px;margin:0 .125rem;border:1px solid transparent;justify-content:flex-start}.sidebar-link:hover{background:linear-gradient(135deg,#3b82f60d,#6366f10d);color:#374151;border-color:#3b82f61a;transform:translate(2px);box-shadow:0 2px 8px #3b82f61a}.sidebar-link.active{background:linear-gradient(135deg,#3b82f626,#6366f11a);color:#3b82f6;font-weight:600;border-color:#3b82f633;box-shadow:0 4px 12px #3b82f626;transform:translate(4px)}.sidebar-link.active:before{content:"";position:absolute;left:-1px;top:50%;transform:translateY(-50%);width:4px;height:24px;background:linear-gradient(180deg,#3b82f6,#1d4ed8);border-radius:0 4px 4px 0;box-shadow:0 2px 4px #3b82f64d;z-index:5}.sidebar-link.active:after{display:none!important}.link-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0;border-radius:6px;transition:all .3s ease;position:relative}.link-icon i{font-size:1.1rem;transition:all .3s ease}.sidebar-link:hover .link-icon{background:#3b82f61a;transform:scale(1.1)}.sidebar-link.active .link-icon{background:#3b82f626;color:#3b82f6;transform:scale(1.15)}.sidebar-link.active .link-icon i{text-shadow:0 1px 2px rgba(59,130,246,.3)}.link-text{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.modern-sidebar.collapsed .sidebar-link{justify-content:center;padding:.75rem 0;margin:0;width:100%}.modern-sidebar.collapsed .link-icon{margin:0!important;transform:none!important}.modern-sidebar.collapsed .sidebar-link.active{transform:none!important}.sidebar-tooltip{position:absolute!important;left:100%;top:50%;transform:translateY(-50%);margin-left:.5rem;background:#1e293b;color:#fff;padding:.5rem .75rem;border-radius:6px;font-size:.875rem;white-space:nowrap;opacity:0;visibility:hidden;transition:all .2s ease;z-index:1000;pointer-events:none;display:flex!important;align-items:center;gap:.5rem}.modern-sidebar.collapsed .sidebar-tooltip{visibility:hidden;opacity:0}.modern-sidebar.collapsed .sidebar-link:hover .sidebar-tooltip{opacity:1;visibility:visible}.modern-sidebar.collapsed .sidebar-item{padding-left:0!important;padding-right:0!important;display:flex;justify-content:center}.sidebar-tooltip:before{content:"";position:absolute;right:100%;top:50%;transform:translateY(-50%);border-width:4px;border-style:solid;border-color:transparent #1e293b transparent transparent}.tooltip-badge{background:#fff3;padding:.125rem .375rem;border-radius:10px;font-size:.75rem}.sidebar-badge{padding:.2rem .6rem;border-radius:14px;font-size:.7rem;font-weight:700;line-height:1.2;flex-shrink:0;transition:all .3s ease;text-transform:uppercase;letter-spacing:.025em;box-shadow:0 1px 3px #0000001a}.sidebar-badge.new{background:linear-gradient(135deg,#dcfce7,#bbf7d0);color:#166534;border:1px solid rgba(22,101,52,.2)}.sidebar-badge.popular{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;border:1px solid rgba(146,64,14,.2)}.sidebar-badge.beta{background:linear-gradient(135deg,#e0e7ff,#c7d2fe);color:#3730a3;border:1px solid rgba(55,48,163,.2)}.sidebar-badge.count{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;min-width:22px;text-align:center;border:1px solid rgba(59,130,246,.3);animation:pulse-badge 2s infinite}.sidebar-badge.default{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);color:#64748b;border:1px solid rgba(100,116,139,.2)}@keyframes pulse-badge{0%,to{transform:scale(1);box-shadow:0 1px 3px #0000001a}50%{transform:scale(1.05);box-shadow:0 2px 6px #3b82f64d}}.sidebar-link.active .sidebar-badge{background:#fffffff2;color:#3b82f6;border-color:#3b82f64d;box-shadow:0 2px 6px #3b82f633;transform:scale(1.05)}.sidebar-link.active .sidebar-badge.count{background:linear-gradient(135deg,#fffffff2,#ffffffe6);color:#3b82f6;border-color:#3b82f666;animation:none}.sidebar-link.active .sidebar-badge.new{background:#fffffff2;color:#166534;border-color:#1665344d}.sidebar-link.active .sidebar-badge.popular{background:#fffffff2;color:#92400e;border-color:#92400e4d}.sidebar-link:hover .sidebar-badge{transform:scale(1.02);box-shadow:0 2px 4px #00000026}.sidebar-footer{padding:1rem 1.5rem 1.5rem;border-top:1px solid rgba(229,231,235,.6);background:#fff;flex-shrink:0}.sidebar-stats{display:flex;flex-direction:column;gap:.75rem}.stat-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#fffc;border-radius:10px;border:1px solid rgba(229,231,235,.6);transition:all .2s ease}.stat-item:hover{background:#fffffff2;border-color:#3b82f633}.stat-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#3b82f61a;color:#3b82f6;border-radius:6px;font-size:.875rem;flex-shrink:0}.stat-content{flex:1;min-width:0}.stat-number{display:block;font-size:1rem;font-weight:700;color:#111827;line-height:1.2}.stat-label{display:block;font-size:.75rem;color:#6b7280;line-height:1.2}.sidebar-footer-collapsed{padding:1rem .5rem;border-top:1px solid rgba(229,231,235,.6);background:#fff;display:flex;flex-direction:column;gap:.5rem;align-items:center}.footer-icon{position:relative;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#3b82f61a;color:#3b82f6;border-radius:6px;font-size:.875rem;cursor:pointer;transition:all .2s ease}.footer-icon:hover{background:#e5e7eb99}.icon-badge{position:absolute;top:-4px;right:-4px;background:#3b82f6;color:#fff;font-size:.625rem;padding:.125rem .25rem;border-radius:8px;min-width:16px;text-align:center;line-height:1}.modern-sidebar.mobile{position:fixed;top:56px;left:-280px;height:calc(100vh - 56px);width:280px;max-width:85vw;z-index:30000!important;transition:left .3s cubic-bezier(.4,0,.2,1);box-shadow:4px 0 24px #00000026;overflow:hidden}.modern-sidebar.mobile.open{left:0;background:#fff}@media(max-width:767px){.modern-sidebar:not(.mobile){display:none}.modern-sidebar.mobile{width:280px!important;max-width:85vw!important}.modern-sidebar.mobile .sidebar-header{padding:.75rem 1rem;min-height:52px;border-bottom:1px solid rgba(229,231,235,.8);background:#f9fafb}.modern-sidebar.mobile .sidebar-nav{padding:.25rem .5rem;height:calc(100vh - 104px);overflow-y:auto}.modern-sidebar.mobile .sidebar-menu{gap:.0625rem}.sidebar-link{padding:.625rem .875rem;margin:0 .125rem;font-size:.875rem;min-height:40px}.link-icon{width:18px;height:18px}.link-icon i{font-size:.95rem}.sidebar-badge{font-size:.625rem;padding:.125rem .4rem}.sidebar-footer{padding:.75rem 1rem}.stat-item{padding:.5rem}.stat-icon{width:22px;height:22px;font-size:.75rem}.stat-number{font-size:.875rem}.stat-label{font-size:.675rem}}@media(max-width:480px){.modern-sidebar.mobile{width:280px!important;max-width:280px!important;top:52px;height:calc(100vh - 52px);left:-280px}.modern-sidebar.mobile.open{left:0;background:#fff}.sidebar-header{padding:.625rem .875rem!important;min-height:48px!important}.sidebar-title h3{font-size:.95rem!important}.sidebar-link{padding:.5rem .75rem!important;margin:0 .125rem!important;font-size:.85rem!important;min-height:38px!important}.sidebar-footer{padding:.625rem .875rem!important}.modern-sidebar.mobile .sidebar-nav{padding:.25rem .5rem!important}.modern-sidebar.mobile .sidebar-menu{gap:.0625rem!important}.mobile-sidebar-section{margin-bottom:.125rem!important}.mobile-sidebar-section-title{padding:.25rem .75rem .125rem!important;font-size:.65rem!important;margin-bottom:.0625rem!important}}@media(min-width:768px)and (max-width:1023px){.modern-sidebar{width:240px}.modern-sidebar.collapsed{width:60px}.sidebar-link{padding:.75rem 1rem;margin:0 .5rem}}@media(min-width:1024px){.modern-sidebar{position:relative;top:auto;left:auto;bottom:auto;height:100%;z-index:100;box-shadow:none;border-right:1px solid rgba(229,231,235,.8);transform:none;transition:width .3s cubic-bezier(.4,0,.2,1)}.modern-sidebar.mobile{display:none}}.sidebar::-webkit-scrollbar{width:8px}.sidebar::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.sidebar::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px;border:2px solid #f1f5f9}.sidebar::-webkit-scrollbar-thumb:hover{background:#94a3b8}.sidebar{scrollbar-width:thin;scrollbar-color:#cbd5e1 #f1f5f9}.sidebar{scroll-behavior:smooth}.sidebar-badge{animation:fadeInScale .3s ease-out}@keyframes fadeInScale{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.stat-item:hover .stat-number{color:#3b82f6}.sidebar-loading{padding:.75rem 1.5rem}.sidebar-skeleton{height:20px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200px 100%;animation:skeleton-loading 1.5s infinite;border-radius:4px;margin-bottom:.5rem}.sidebar-divider{height:1px;background:#e5e7eb99;margin:.75rem 1.5rem}@media(max-width:480px){.sidebar{width:100vw;left:-100vw}.sidebar-open{left:0}}@media(max-width:767px){.modern-sidebar,.modern-sidebar.collapsed{width:280px!important}}.sidebar-link:focus{outline:none;background:linear-gradient(135deg,#3b82f61a,#6366f114);border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f633,0 4px 12px #3b82f626;transform:translate(2px)}.sidebar-loading{padding:.75rem}.sidebar-skeleton{height:44px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200px 100%;animation:skeleton-loading 1.5s infinite;border-radius:8px;margin-bottom:.25rem}@media(prefers-contrast:high){.modern-sidebar{border-right:2px solid #000}.sidebar-link.active{background:#000;color:#fff}}@media(prefers-reduced-motion:reduce){.modern-sidebar,.sidebar-link,.sidebar-tooltip,.upgrade-card:before{transition:none;animation:none}}.sidebar-item{animation:slideInFromLeft .3s ease-out;animation-fill-mode:both}.sidebar-item:nth-child(1){animation-delay:.1s}.sidebar-item:nth-child(2){animation-delay:.15s}.sidebar-item:nth-child(3){animation-delay:.2s}.sidebar-item:nth-child(4){animation-delay:.25s}.sidebar-item:nth-child(5){animation-delay:.3s}@keyframes slideInFromLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.sidebar-link.active:before{animation:expandIndicator .4s ease-out}@keyframes expandIndicator{0%{height:0;opacity:0}to{height:24px;opacity:1}}.sidebar-link{overflow:hidden}.sidebar-link:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:#3b82f633;border-radius:50%;transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease;pointer-events:none;z-index:0}.sidebar-link:active:after{width:100px;height:100px}.sidebar-link>*{position:relative;z-index:1}.link-text{transition:color .3s ease,font-weight .3s ease}.sidebar-link.active .link-text{font-weight:600;text-shadow:0 1px 2px rgba(59,130,246,.1)}.sidebar-tooltip{transform:translateY(-50%) translate(-8px);transition:all .3s cubic-bezier(.4,0,.2,1)}.modern-sidebar.collapsed .sidebar-link:hover .sidebar-tooltip{transform:translateY(-50%) translate(0)}.sidebar-link.active.loading{position:relative}.sidebar-link.active.loading:before{background:linear-gradient(90deg,#3b82f6,#1d4ed8,#3b82f6);background-size:200% 100%;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.sidebar-link:hover{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.sidebar-link:hover .link-icon i{animation:iconBounce .6s ease}@keyframes iconBounce{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.sidebar-link.active{position:relative}.sidebar-link.active:before{box-shadow:0 0 8px #3b82f666}@media(prefers-reduced-motion:reduce){.sidebar-item,.sidebar-link,.sidebar-link:before,.sidebar-link:after,.link-icon,.link-icon i,.sidebar-badge,.sidebar-tooltip{animation:none!important;transition:none!important}}@media(prefers-contrast:high){.sidebar-link.active{background:#000!important;color:#fff!important;border:2px solid #fff!important}.sidebar-link.active:before{background:#fff!important}}.modern-sidebar i,.sidebar-link i,.link-icon i,.stat-icon i,.footer-icon i,.sidebar-toggle-btn i,.sidebar-close-btn i{font-family:"Font Awesome 6 Free","Font Awesome 6 Pro",FontAwesome,sans-serif!important;font-weight:900!important;font-style:normal!important;display:inline-block!important;text-rendering:auto!important;-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale!important;line-height:1!important}.modern-sidebar.collapsed .link-icon i{font-size:1.2rem!important;color:#6b7280!important;display:block!important;text-align:center!important}.modern-sidebar.collapsed .sidebar-link.active .link-icon i{color:#3b82f6!important}.modern-sidebar.collapsed .sidebar-link:hover .link-icon i{color:#374151!important}.sidebar-footer-collapsed .footer-icon i{font-size:1rem!important;color:#3b82f6!important;display:block!important}.fa-book:before{content:""!important}.fa-calendar-check:before{content:""!important}.fa-chart-line:before{content:""!important}.fa-clock:before{content:""!important}.fa-chalkboard-teacher:before{content:""!important}.fa-blog:before{content:""!important}.fa-play-circle:before{content:""!important}.fa-brain:before{content:""!important}.fa-comments:before{content:""!important}.fa-briefcase:before{content:""!important}.fa-trophy:before{content:""!important}.fa-chevron-left:before{content:""!important}.fa-chevron-right:before{content:""!important}.fa-times:before{content:""!important}.modern-sidebar .link-icon{opacity:1!important;visibility:visible!important}.modern-sidebar.collapsed .link-icon{width:24px!important;height:24px!important;display:flex!important;align-items:center!important;justify-content:center!important}.modern-sidebar.collapsed .sidebar-tooltip{display:flex!important;align-items:center!important;gap:.5rem!important}.modern-sidebar.collapsed .sidebar-tooltip span:first-child{font-size:.875rem!important}.modern-sidebar *{font-family:inherit!important}.modern-sidebar i{font-family:"Font Awesome 6 Free",FontAwesome!important}.modern-sidebar.collapsed .sidebar-link{position:relative!important}.modern-sidebar.collapsed .sidebar-link .link-icon{background:transparent!important;border-radius:6px!important;transition:all .3s ease!important}.modern-sidebar.collapsed .sidebar-link:hover .link-icon{background:#3b82f61a!important}.modern-sidebar.collapsed .sidebar-link.active .link-icon{background:#3b82f626!important}.modern-sidebar i:before{display:inline-block!important;font-style:normal!important;font-variant:normal!important;text-rendering:auto!important;-webkit-font-smoothing:antialiased!important}.link-icon i{min-width:1em!important;min-height:1em!important}.modern-sidebar.collapsed{overflow:visible!important}.modern-sidebar.collapsed .sidebar-link{padding:.75rem .5rem!important;margin:.125rem!important}.sidebar-footer-collapsed{padding:1rem .25rem!important}.footer-icon{margin:.25rem 0!important}.mobile-sidebar-section{margin-bottom:0;padding-top:0}.mobile-sidebar-section-title{display:none!important}.sidebar-arrow{margin-left:auto!important;font-size:.875rem!important;color:#9ca3af!important;transition:transform .3s ease}.modern-sidebar.collapsed .sidebar-arrow{display:none!important}.sidebar-arrow.rotated{transform:rotate(90deg)}.sidebar-link:hover .sidebar-arrow{transform:translate(2px);color:#6b7280!important}.sidebar-link.active .sidebar-arrow{color:#3b82f6!important}button.sidebar-link{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;text-decoration:none;color:#6b7280;font-weight:500;font-size:.875rem;border-radius:10px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;min-height:48px;margin:0 .25rem;border:1px solid transparent;background:none;cursor:pointer;width:100%;text-align:left;justify-content:flex-start!important}button.sidebar-link:hover{background:linear-gradient(135deg,#3b82f60d,#6366f10d);color:#374151;border-color:#3b82f61a;transform:translate(2px);box-shadow:0 2px 8px #3b82f61a}button.sidebar-link.active{background:linear-gradient(135deg,#3b82f626,#6366f11a);color:#3b82f6;font-weight:600;border-color:#3b82f633;box-shadow:0 4px 12px #3b82f626;transform:translate(4px)}.sidebar-submenu{list-style:none;padding:.25rem 0;background:transparent;border-radius:0;border:none;border-left:none;margin:0;overflow:hidden;animation:slideDown .3s ease-out;position:relative!important;z-index:1;max-width:100%;left:auto!important;top:auto!important;transform:none!important;width:100%;clear:both}.sidebar-subitem{margin:0}.sidebar-sublink{display:flex;align-items:center;gap:.75rem;padding:.4rem 1rem .4rem .8rem;text-decoration:none;color:var(--text-secondary);font-weight:500;font-size:.8125rem;border-radius:6px;transition:all .2s ease;position:relative;min-height:32px;margin-left:1rem;margin-right:.3rem}.sidebar-sublink:hover{background:#3b82f61a;color:var(--text-primary);border-color:#3b82f633;transform:translate(4px)}.sidebar-sublink.active{background:#3b82f626;color:var(--primary-color);font-weight:600;border-color:#3b82f666;transform:translate(4px)}.sidebar-sublink.active:before{content:"";position:absolute;left:-2px;top:50%;transform:translateY(-50%);width:3px;height:60%;background:var(--primary-color);border-radius:0 2px 2px 0}.sidebar-sublink .link-icon{width:16px;height:16px;font-size:.75rem}@media(max-width:767px){.modern-sidebar.mobile .sidebar-nav{padding:.5rem .5rem .25rem}.modern-sidebar.mobile .mobile-sidebar-section{margin-bottom:0;padding-top:0}.modern-sidebar.mobile .mobile-sidebar-section:first-child{padding-bottom:0;padding-top:0}.modern-sidebar.mobile .mobile-sidebar-section:first-child .sidebar-link.active{background:#eff6ff;border-left-color:#3b82f6}.modern-sidebar.mobile .mobile-sidebar-section-title{display:none!important}}[data-theme=dark] .modern-sidebar{background:#1a1a1a!important;border-right-color:#ffffff1a}[data-theme=dark] .sidebar-header{background:#1a1a1a!important;border-bottom-color:#ffffff1a}[data-theme=dark] .sidebar-title h3{color:#e5e5e5!important}[data-theme=dark] .sidebar-toggle-btn,[data-theme=dark] .sidebar-close-btn{color:#9ca3af!important}[data-theme=dark] .sidebar-toggle-btn:hover,[data-theme=dark] .sidebar-close-btn:hover{background:#ffffff1a!important;color:#e5e5e5!important}[data-theme=dark] .sidebar-nav{background:#1a1a1a!important}[data-theme=dark] .sidebar-link{color:#d1d5db!important}[data-theme=dark] .sidebar-link:hover{background:linear-gradient(135deg,#33415599,#47556966)!important;color:#f9fafb!important;border-color:#3b82f633!important}[data-theme=dark] .sidebar-link.active{background:linear-gradient(135deg,#3b82f640,#6366f126)!important;color:#60a5fa!important;border-color:#3b82f64d!important}[data-theme=dark] .sidebar-link.active:before{background:linear-gradient(180deg,#60a5fa,#3b82f6)!important}[data-theme=dark] .sidebar-link.active:after{background:#60a5fa!important}[data-theme=dark] .link-icon{color:#9ca3af!important}[data-theme=dark] .sidebar-link:hover .link-icon{background:#3b82f633!important;color:#60a5fa!important}[data-theme=dark] .sidebar-link.active .link-icon{background:#3b82f640!important;color:#60a5fa!important}[data-theme=dark] .sidebar-badge{background:#334155!important;color:#d1d5db!important;border-color:#475569!important}[data-theme=dark] .sidebar-badge.new{background:linear-gradient(135deg,#10b9814d,#10b98133)!important;color:#10b981!important;border-color:#10b98166!important}[data-theme=dark] .sidebar-badge.popular{background:linear-gradient(135deg,#f59e0b4d,#f59e0b33)!important;color:#f59e0b!important;border-color:#f59e0b66!important}[data-theme=dark] .sidebar-badge.beta{background:linear-gradient(135deg,#6366f14d,#6366f133)!important;color:#818cf8!important;border-color:#6366f166!important}[data-theme=dark] .sidebar-badge.count{background:linear-gradient(135deg,#3b82f6,#2563eb)!important;color:#fff!important;border-color:#3b82f680!important}[data-theme=dark] .sidebar-link.active .sidebar-badge{background:#1e293bf2!important;color:#60a5fa!important;border-color:#3b82f666!important}[data-theme=dark] .sidebar-footer,[data-theme=dark] .sidebar-footer-collapsed{background:#1e293b!important;border-top-color:#33415599}[data-theme=dark] .stat-item{background:#0f172acc!important;border-color:#33415599!important}[data-theme=dark] .stat-item:hover{background:#33415599!important;border-color:#3b82f64d!important}[data-theme=dark] .stat-icon{background:#3b82f633!important;color:#60a5fa!important}[data-theme=dark] .stat-number{color:#f9fafb!important}[data-theme=dark] .stat-label{color:#9ca3af!important}[data-theme=dark] .footer-icon{background:#3b82f633!important;color:#60a5fa!important}[data-theme=dark] .footer-icon:hover{background:#33415599!important}[data-theme=dark] .sidebar-tooltip{background:#0f172a!important;color:#f9fafb!important}[data-theme=dark] .sidebar-tooltip:before{border-right-color:#0f172a!important}[data-theme=dark] .mobile-sidebar-section-title{background:#0f172a!important;border-bottom-color:#334155!important;color:#9ca3af!important}[data-theme=dark] .sidebar-arrow{color:#6b7280!important}[data-theme=dark] .sidebar-link:hover .sidebar-arrow{color:#9ca3af!important}[data-theme=dark] .sidebar-link.active .sidebar-arrow{color:#60a5fa!important}[data-theme=dark] .sidebar-submenu{background:var(--bg-secondary)!important;border-left-color:#3b82f666!important;border-color:var(--border-color)!important}[data-theme=dark] .sidebar-sublink{color:var(--text-secondary)!important}[data-theme=dark] .sidebar-sublink:hover{background:var(--bg-primary)!important;color:var(--text-primary)!important;border-color:#3b82f64d!important}[data-theme=dark] .sidebar-sublink.active{background:#3b82f640!important;color:var(--primary-color)!important;border-color:#3b82f680!important}[data-theme=dark] .sidebar-sublink.active:before{background:var(--primary-color)!important}[data-theme=dark] .sidebar-divider{background:#33415599!important}[data-theme=dark] .sidebar-skeleton{background:linear-gradient(90deg,#1e293b 25%,#334155,#1e293b 75%)!important}[data-theme=dark] .sidebar-nav{scrollbar-width:thin!important;scrollbar-color:#475569 #0f172a!important}[data-theme=dark] .sidebar-nav::-webkit-scrollbar{display:block!important;width:8px!important}[data-theme=dark] .sidebar-nav::-webkit-scrollbar-track{display:block!important;background:#0f172a!important;border-radius:4px!important}[data-theme=dark] .sidebar-nav::-webkit-scrollbar-thumb{display:block!important;background:#475569!important;border-radius:4px!important;border:2px solid #0f172a!important}[data-theme=dark] .sidebar-nav::-webkit-scrollbar-thumb:hover{background:#64748b!important}.footer-wrapper{background-color:var(--bg-secondary);color:var(--text-primary);font-family:var(--font-family);padding:4rem 2rem 2rem;width:100%;border-top:1px solid var(--border-color);border-top-left-radius:2rem;border-top-right-radius:2rem;transition:background-color var(--transition-normal),color var(--transition-normal);overflow:hidden;position:relative}.footer-content{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;position:relative;z-index:2}.footer-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:2rem;padding-bottom:2rem}.footer-brand-top{display:flex;flex-direction:column;gap:.5rem;width:100%;padding-left:5rem;align-items:flex-start}.brand-logo{font-size:1.5rem;font-weight:700;margin:0;padding:0;letter-spacing:.01em;line-height:1.3;background:none!important;background-color:transparent!important;text-transform:none;white-space:nowrap!important;word-wrap:normal!important;display:inline-block;width:auto;max-width:none;color:var(--text-primary)!important;border:none!important;border-radius:0!important;box-shadow:none!important;outline:none!important;overflow:visible!important}.brand-logo *{background:none!important;background-color:transparent!important;border:none!important;border-radius:0!important;box-shadow:none!important}@media(max-width:1200px){.footer-brand-top{padding-left:4rem}}@media(max-width:1024px){.footer-brand-top{padding-left:3rem}.brand-logo{font-size:1.4rem}}@media(max-width:768px){.footer-brand-top{padding-left:2rem}.brand-logo{font-size:1.2rem;white-space:normal!important;word-wrap:break-word!important}}@media(max-width:480px){.footer-brand-top{padding-left:1rem}.brand-logo{font-size:1.1rem}}.brand-tagline{font-size:.9rem;font-weight:400;color:var(--text-secondary);margin:0;padding:0;line-height:1.5;white-space:normal;word-wrap:break-word;background:none!important;background-color:transparent!important;max-width:600px}@media(max-width:1024px){.brand-tagline{font-size:.88rem;max-width:500px}}@media(max-width:768px){.brand-tagline{font-size:.85rem;max-width:100%}}@media(max-width:480px){.brand-tagline{font-size:.8rem}}.footer-divider{width:100%;height:1px;background-color:var(--border-color);margin-bottom:3rem;opacity:.5}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:2rem;margin-bottom:3rem}.footer-col{display:flex;flex-direction:column;gap:1.25rem}.col-title{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0;text-transform:uppercase;letter-spacing:.05em}.col-text{font-size:.95rem;line-height:1.6;color:var(--text-secondary);margin:0;max-width:300px}.footer-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.footer-list li{font-size:.95rem}.footer-list a{color:var(--text-secondary);text-decoration:none;transition:color var(--transition-normal)}.footer-list a:hover{color:var(--primary-color)}.footer-contact-info{display:flex;flex-direction:column;gap:1.25rem}.contact-item-row{display:flex;align-items:center;gap:1rem}.contact-item-row.align-start{align-items:flex-start}.contact-icon{width:20px;height:20px;color:var(--primary-color);flex-shrink:0;stroke-width:2}.contact-value{font-size:.95rem;color:var(--text-secondary);text-decoration:none;font-weight:500;transition:color var(--transition-normal)}.contact-value:hover{color:var(--primary-color)}.contact-address{font-size:.95rem;color:var(--text-secondary);line-height:1.5}.social-links-list{list-style:none;padding:0;margin:1rem 0 0;display:flex;gap:1rem}.social-links-list a{font-size:.95rem;color:var(--text-secondary);text-decoration:none;transition:color var(--transition-normal);font-weight:500}.social-links-list a:hover{color:var(--primary-color)}.footer-divider-subtle{width:100%;height:1px;background-color:var(--border-color);margin-bottom:1.5rem;opacity:.3}.footer-bottom-row{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;color:var(--text-muted);padding-bottom:2rem}.copyright-text{color:var(--text-muted)}.legal-links{display:flex;gap:2rem}.legal-links a{color:var(--text-muted);text-decoration:none;transition:color var(--transition-normal)}.legal-links a:hover{color:var(--primary-color)}@media(max-width:1024px){.footer-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.footer-wrapper{padding:3rem 1.5rem 0}.footer-header{flex-direction:column;text-align:left;gap:1.5rem}.footer-grid{grid-template-columns:1fr;gap:2.5rem}.footer-bottom-row{flex-direction:column;gap:1rem;align-items:center;text-align:center}}.bottom-nav{position:fixed;bottom:0;left:0;right:0;height:var(--bottom-nav-height);background:var(--card-bg);border-top:1px solid var(--border-color);display:flex;justify-content:space-around;align-items:center;padding:0 8px;z-index:1000;box-shadow:0 -2px 10px #0000000d;transition:transform .3s ease,background-color var(--transition-normal)}@media(min-width:768px){.bottom-nav{display:none}}.bottom-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:8px 12px;text-decoration:none;color:var(--text-muted);font-size:.7rem;font-weight:500;border-radius:12px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;min-width:64px;flex:1;max-width:80px}.bottom-nav-item i{font-size:1.25rem;transition:all .3s ease}.bottom-nav-item span{font-size:.65rem;letter-spacing:.02em;transition:all .3s ease}.bottom-nav-item.active{color:var(--primary-color);background:#3b82f614}.bottom-nav-item.active i{transform:scale(1.1);color:var(--primary-color)}.bottom-nav-item.active span{font-weight:600}.bottom-nav-item.active:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:32px;height:3px;background:var(--primary-color);border-radius:0 0 3px 3px;animation:slideDown .3s ease}@keyframes slideDown{0%{opacity:0;transform:translate(-50%) translateY(-3px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@media(hover:hover){.bottom-nav-item:hover:not(.active){color:var(--text-secondary);background:#00000008}}.bottom-nav-item:active{transform:scale(.95)}@supports (padding-bottom: env(safe-area-inset-bottom)){.bottom-nav{padding-bottom:max(8px,env(safe-area-inset-bottom));height:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom))}}[data-theme=dark] .bottom-nav{background:var(--card-bg);border-top-color:#ffffff1a;box-shadow:0 -2px 10px #0000004d}[data-theme=dark] .bottom-nav-item{color:var(--text-muted)}[data-theme=dark] .bottom-nav-item.active{color:var(--primary-color);background:#3b82f626}[data-theme=dark] .bottom-nav-item:hover:not(.active){background:#ffffff0d}.dashboard-layout{display:flex;flex-direction:column;height:100vh;background:var(--bg-primary);overflow:hidden;transition:background-color var(--transition-normal)}.layout-container{display:flex;flex:1;padding-top:56px;position:relative;height:calc(100vh - 56px);overflow:hidden}@media(max-width:767px){.layout-container{height:calc(100vh - 56px - var(--bottom-nav-height));padding-bottom:0}}.desktop-sidebar-container{display:none}@media(min-width:768px){.desktop-sidebar-container{display:block;flex-shrink:0;height:100%;z-index:100;pointer-events:auto;background:var(--card-bg);overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--text-light) var(--bg-tertiary);transition:background-color var(--transition-normal)}.desktop-sidebar-container::-webkit-scrollbar{width:6px}.desktop-sidebar-container::-webkit-scrollbar-track{background:var(--bg-tertiary)}.desktop-sidebar-container::-webkit-scrollbar-thumb{background:var(--text-light);border-radius:4px}.desktop-sidebar-container::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}}.desktop-sidebar-wrapper{position:relative;height:100%;background:var(--card-bg);transition:background-color var(--transition-normal)}.main-content{flex:1;display:flex;flex-direction:column;width:100%;transition:margin-left .3s cubic-bezier(.4,0,.2,1);position:relative;z-index:1;height:100%;overflow:hidden;pointer-events:auto}.main-content.with-sidebar{margin-left:0}.content-wrapper{flex:1;background:var(--bg-secondary);position:relative;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;z-index:2;pointer-events:auto;display:flex;flex-direction:column;transition:background-color var(--transition-normal);padding:var(--content-padding-mobile)}@media(min-width:768px){.content-wrapper{padding:var(--content-padding-tablet)}}@media(min-width:1024px){.content-wrapper{padding:var(--content-padding-desktop)}}@media(min-width:481px){.layout-container{padding-top:56px;height:calc(100vh - 56px)}}@media(min-width:768px){.layout-container{padding-top:60px;height:calc(100vh - 60px)}}@media(min-width:1024px){.layout-container{padding-top:64px;height:calc(100vh - 64px)}}.content-wrapper{scroll-behavior:smooth;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.content-wrapper::-webkit-scrollbar{width:6px}.content-wrapper::-webkit-scrollbar-track{background:var(--bg-tertiary)}.content-wrapper::-webkit-scrollbar-thumb{background:var(--text-light);border-radius:4px}.content-wrapper::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.page-home .content-wrapper{background:transparent;border-radius:0;box-shadow:none;width:100%;margin:0;padding:0}.content-wrapper>*{flex-shrink:0}.content-wrapper>.footer{margin-top:auto}.main-content:not(.with-sidebar){margin-left:0!important;width:100%!important}.main-content:not(.with-sidebar) .content-wrapper{width:100%!important;margin:0!important}@media(max-width:480px){.layout-container{padding-top:52px;height:calc(100vh - 52px)}.desktop-sidebar-wrapper{top:0;height:100%}}@media(max-width:767px){.desktop-sidebar-wrapper{top:0;height:100%}}@media(max-width:767px){.dashboard-layout,.layout-container,.main-content{overflow:hidden}.content-wrapper{overflow-x:hidden;overflow-y:auto}}.layout-loading{display:flex;align-items:center;justify-content:center;height:100vh;background:var(--bg-secondary);transition:background-color var(--transition-normal)}.layout-loading .spinner{width:40px;height:40px;border:4px solid var(--border-color);border-top:4px solid var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}@media(prefers-contrast:high){.content-wrapper{border:2px solid #000}.mobile-sidebar-overlay{background:#000c}}@media(prefers-reduced-motion:reduce){.main-content,.mobile-sidebar-container,.content-wrapper{transition:none}.mobile-sidebar-overlay,.mobile-sidebar-container{animation:none}}.content-wrapper.no-padding{padding:0!important}.content-wrapper.no-padding>*{margin:0}.admin-tabs-header{background:var(--card-bg);border-bottom:1px solid var(--border-color);box-shadow:0 1px 3px #0000001a;position:fixed;top:52px;left:200px;right:0;z-index:80;width:auto;overflow:visible;transition:background-color var(--transition-normal),border-color var(--transition-normal)}[data-theme=dark] .admin-tabs-header{box-shadow:0 1px 3px #0000004d}.tabs-container{display:flex;align-items:center;padding:0 1.5rem;overflow:visible}.tab-wrapper{position:relative;flex-shrink:0;z-index:1}.tab-wrapper.dropdown-open{z-index:201}.tab-item{display:flex;align-items:center;gap:.5rem;padding:.6rem .8rem;background:none;border:none;color:var(--text-secondary);font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s ease;border-bottom:2px solid transparent;white-space:nowrap;position:relative}.tab-item:hover{color:var(--text-primary);background:var(--primary-color-light)}.tab-item.active{color:var(--primary-color);border-bottom-color:var(--primary-color);background:var(--primary-color-light)}.tab-item.has-dropdown{padding-right:2.5rem}.tab-item i:first-child{font-size:.875rem;width:16px;text-align:center}.dropdown-icon{position:absolute;right:1rem;font-size:.75rem;transition:transform .2s ease}.dropdown-icon.rotated{transform:rotate(180deg)}.tab-dropdown{position:absolute;top:100%;left:0;min-width:280px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 10px 25px #00000026;z-index:200;max-height:400px;overflow-y:auto;animation:dropdownFadeIn .2s ease;transition:background-color var(--transition-normal),border-color var(--transition-normal)}[data-theme=dark] .tab-dropdown{box-shadow:0 10px 25px #00000080}.dropdown-section{padding:.5rem 0}.dropdown-section:not(:last-child){border-bottom:1px solid var(--border-color)}.dropdown-section-title{padding:.5rem 1rem;font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);transition:background-color var(--transition-normal),border-color var(--transition-normal)}.dropdown-item{display:block;width:100%;padding:.75rem 1rem;text-align:left;background:none;border:none;color:var(--text-primary);font-size:.875rem;font-weight:400;cursor:pointer;transition:all .2s ease;border-left:3px solid transparent}.dropdown-item:hover{background:var(--hover-bg);color:var(--text-primary);border-left-color:var(--border-color)}.dropdown-item.active{background:var(--primary-color-light);color:var(--primary-color);border-left-color:var(--primary-color);font-weight:500}@media(max-width:768px){.tabs-container{padding:0 1rem}.tab-item{padding:.75rem 1rem;font-size:.8125rem}.tab-dropdown{min-width:240px;left:-50%;transform:translate(50%)}.dropdown-item{padding:.625rem .875rem;font-size:.8125rem}}@media(max-width:480px){.tab-dropdown{position:fixed;top:auto;left:1rem;right:1rem;min-width:auto;transform:none;max-height:60vh}}.loading-animation{position:fixed;top:0;left:0;width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;z-index:9999;background:#0f172a;opacity:1;transition:opacity .5s ease-in-out;pointer-events:all}.loading-animation.fade-out{opacity:0;pointer-events:none}.loading-background{position:absolute;top:0;left:0;width:100%;height:100%;background-image:url(/insti-search.jpg);background-size:cover;background-position:center;background-repeat:no-repeat;z-index:0}.loading-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:1}.floating-particles{position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 20% 50%,rgba(255,255,255,.05) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(255,255,255,.05) 0%,transparent 50%),radial-gradient(circle at 40% 20%,rgba(255,255,255,.03) 0%,transparent 50%);animation:float 15s ease-in-out infinite;z-index:2}.loading-container{display:flex;align-items:center;justify-content:center;width:100%;height:100%;position:relative;z-index:3}.loading-content{text-align:center;animation:fadeInUp .8s ease-out}.loading-logo{width:100px;height:100px;background:#fff3;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 2rem;border:3px solid rgba(255,255,255,.3);box-shadow:0 10px 40px #0003;animation:pulse 2s ease-in-out infinite}.loading-logo i{font-size:3rem;color:#fff}.spinner-ring{position:absolute;width:100%;height:100%;border:3px solid transparent;border-top-color:#fffc;border-radius:50%;animation:spin 1.5s cubic-bezier(.68,-.55,.265,1.55) infinite}.spinner-ring:nth-child(2){width:70%;height:70%;top:15%;left:15%;border-top-color:#fff9;animation-delay:-.5s}.spinner-ring:nth-child(3){width:40%;height:40%;top:30%;left:30%;border-top-color:#fff6;animation-delay:-1s}.loading-title{font-size:1.75rem;font-weight:700;color:#fff;margin-bottom:.75rem;text-shadow:0 2px 10px rgba(0,0,0,.2);animation:fadeIn 1s ease-out .3s both}.loading-text{font-size:1rem;color:#ffffffe6;font-weight:400;text-shadow:0 1px 5px rgba(0,0,0,.1);animation:fadeIn 1s ease-out .5s both}.loading-animation.compact{position:relative;width:100%;height:200px;background:transparent;width:unset}.loading-animation.compact .loading-background{display:none}.loading-animation.compact .loading-content{animation:none}.loading-animation.compact .loading-logo{width:60px;height:60px;margin-bottom:1rem}.loading-animation.compact .loading-logo i{font-size:1.5rem}.loading-animation.compact .loading-spinner{width:50px;height:50px;margin-bottom:1rem}.loading-animation.compact .loading-title{font-size:1.25rem;margin-bottom:.5rem;color:var(--text-primary);text-shadow:none}.loading-animation.compact .loading-text{font-size:.875rem;color:var(--text-secondary);text-shadow:none}@media(max-width:480px){.loading-logo{width:80px;height:80px;margin-bottom:1.5rem}.loading-logo i{font-size:2.5rem}.loading-spinner{width:60px;height:60px;margin-bottom:1.5rem}.loading-title{font-size:1.5rem}.loading-text{font-size:.9rem;padding:0 1rem}}@media(prefers-reduced-motion:reduce){.loading-content,.floating-particles,.loading-logo{animation:none}.spinner-ring{animation:spin 3s linear infinite}}.loading-page-wrapper{position:fixed;top:0;left:0;width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;z-index:9999;background:#0f172a}.loading-page-wrapper .loading-background{position:absolute;top:0;left:0;width:100%;height:100%;background-image:url(/insti-search.jpg);background-size:cover;background-position:center;background-repeat:no-repeat;z-index:0}.loading-page-wrapper .loading-background:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:1}.loading-page-wrapper .loading-background:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 20% 50%,rgba(255,255,255,.05) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(255,255,255,.05) 0%,transparent 50%),radial-gradient(circle at 40% 20%,rgba(255,255,255,.03) 0%,transparent 50%);animation:float 15s ease-in-out infinite;z-index:2}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(5deg)}}.loading-page-wrapper .loading-container{display:flex;align-items:center;justify-content:center;width:100%;height:100%;position:relative;z-index:3}.loading-page-wrapper .loading-content{text-align:center;animation:fadeInUp .8s ease-out}.loading-page-wrapper .loading-logo{width:100px;height:100px;background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 2rem;border:3px solid rgba(255,255,255,.3);box-shadow:0 10px 40px #0003;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);box-shadow:0 10px 40px #0003}50%{transform:scale(1.05);box-shadow:0 15px 50px #0000004d}}.loading-page-wrapper .loading-logo i{font-size:3rem;color:#fff}.loading-page-wrapper .loading-spinner{position:relative;width:80px;height:80px;margin:0 auto 2rem}.loading-page-wrapper .spinner-ring{position:absolute;width:100%;height:100%;border:3px solid transparent;border-top-color:#fffc;border-radius:50%;animation:spin 1.5s cubic-bezier(.68,-.55,.265,1.55) infinite}.loading-page-wrapper .spinner-ring:nth-child(2){width:70%;height:70%;top:15%;left:15%;border-top-color:#fff9;animation-delay:-.5s}.loading-page-wrapper .spinner-ring:nth-child(3){width:40%;height:40%;top:30%;left:30%;border-top-color:#fff6;animation-delay:-1s}.loading-page-wrapper .loading-title{font-size:1.75rem;font-weight:700;color:#fff;margin-bottom:.75rem;text-shadow:0 2px 10px rgba(0,0,0,.2);animation:fadeIn 1s ease-out .3s both}.loading-page-wrapper .loading-text{font-size:1rem;color:#ffffffe6;font-weight:400;text-shadow:0 1px 5px rgba(0,0,0,.1);animation:fadeIn 1s ease-out .5s both}.module-guard-loading{display:flex;justify-content:center;align-items:center;min-height:100vh;background:var(--bg-primary)}.module-guard-loading-content{text-align:center}.module-guard-spinner{width:40px;height:40px;border:4px solid var(--border-color);border-top:4px solid var(--primary-color);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}.module-guard-loading-text{color:var(--text-muted);font-size:.9rem}.skeleton{display:inline-block;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200px 100%;animation:skeleton-loading 1.5s infinite}.skeleton-card{background:var(--bg-primary);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);border:1px solid var(--bg-tertiary)}.skeleton-image{margin-bottom:var(--spacing-md)}.skeleton-content{display:flex;flex-direction:column;gap:var(--spacing-sm)}.skeleton-title{margin-bottom:var(--spacing-xs)}.skeleton-subtitle{margin-bottom:var(--spacing-md)}.skeleton-text{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg)}.skeleton-actions{display:flex;gap:var(--spacing-md)}.skeleton-list-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-primary);border-radius:var(--radius-md);border:1px solid var(--bg-tertiary);margin-bottom:var(--spacing-sm)}.skeleton-list-content{flex:1;display:flex;flex-direction:column;gap:var(--spacing-xs)}.skeleton-avatar,.skeleton-badge{flex-shrink:0}.skeleton-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-lg)}.skeleton-stat-item{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-lg);background:var(--bg-primary);border-radius:var(--radius-lg);border:1px solid var(--bg-tertiary)}.skeleton-table{background:var(--bg-primary);border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--bg-tertiary)}.skeleton-table-header{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--bg-secondary);border-bottom:1px solid var(--bg-tertiary)}.skeleton-table-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--bg-tertiary)}.skeleton-table-row:last-child{border-bottom:none}@media(prefers-color-scheme:dark){.skeleton{background:linear-gradient(90deg,#2a2a2a 25%,#3a3a3a,#2a2a2a 75%);background-size:200px 100%}}[data-theme=dark] .skeleton{background:linear-gradient(90deg,#1e293b66 25%,#33415566,#1e293b66 75%);background-size:200px 100%;animation:skeleton-loading 1.5s infinite}[data-theme=dark] .skeleton-card,[data-theme=dark] .skeleton-list-item,[data-theme=dark] .skeleton-stat-item,[data-theme=dark] .skeleton-info-card-item,[data-theme=dark] .skeleton-subject-card,[data-theme=dark] .skeleton-preview-card,[data-theme=dark] .skeleton-achievement-card,[data-theme=dark] .skeleton-blog-card{background:#1e293b66;border-color:#4755694d}.skeleton-profile-header{background:var(--bg-primary);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.skeleton-banner{margin-bottom:-70px}.skeleton-profile-info{display:flex;align-items:flex-end;gap:var(--spacing-lg);padding:var(--spacing-xl);background:var(--bg-primary)}.skeleton-profile-avatar{flex-shrink:0;border:4px solid var(--bg-primary)}.skeleton-profile-details{flex:1;display:flex;flex-direction:column;gap:var(--spacing-sm);padding-top:var(--spacing-lg)}.skeleton-profile-meta{display:flex;gap:var(--spacing-lg);margin-top:var(--spacing-sm)}.skeleton-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg)}.skeleton-info-card-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--bg-primary);border-radius:var(--radius-lg);border:1px solid var(--bg-tertiary)}.skeleton-info-icon{flex-shrink:0}.skeleton-info-content{flex:1;display:flex;flex-direction:column;gap:var(--spacing-xs)}.skeleton-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.skeleton-form-field{display:flex;flex-direction:column;gap:var(--spacing-sm)}.skeleton-subjects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-lg)}.skeleton-subject-card{padding:var(--spacing-lg);background:var(--bg-primary);border-radius:var(--radius-lg);border:1px solid var(--bg-tertiary);display:flex;flex-direction:column;gap:var(--spacing-md)}.skeleton-subject-header{display:flex;justify-content:space-between;align-items:center}.skeleton-faculty-info{display:flex;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-sm)}.skeleton-timetable{display:flex;flex-direction:column;gap:var(--spacing-md)}.skeleton-timetable-header{margin-bottom:var(--spacing-sm)}.skeleton-timetable-row{display:flex;gap:var(--spacing-sm)}@media(max-width:768px){.skeleton-stats{grid-template-columns:repeat(2,1fr)}.skeleton-table-header,.skeleton-table-row{grid-template-columns:1fr;gap:var(--spacing-sm)}.skeleton-actions{flex-direction:column}.skeleton-list-item{flex-direction:column;text-align:center}.skeleton-profile-info{flex-direction:column;align-items:center;text-align:center}.skeleton-profile-meta{flex-direction:column;align-items:center}.skeleton-info-grid,.skeleton-subjects-grid{grid-template-columns:1fr}}@media(max-width:480px){.skeleton-stats{grid-template-columns:1fr}}.skeleton-preview-card{background:var(--card-bg);border-radius:var(--radius-lg);padding:16px;box-shadow:var(--shadow-sm);border:1px solid var(--border-color);min-width:260px;max-width:260px;flex-shrink:0}.skeleton-preview-card .preview-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid var(--border-color);gap:8px}.skeleton-preview-card .preview-content{display:flex;flex-direction:column;gap:8px}.skeleton-preview-card .preview-list{display:flex;flex-direction:column;gap:10px}.skeleton-material-card{position:relative;min-width:380px;width:380px;min-height:320px;border-radius:24px;overflow:hidden;box-shadow:0 8px 32px #1f268726;flex-shrink:0;background:#fffffff2;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3)}[data-theme=dark] .skeleton-material-card{background:#1a1a1a;border:1px solid rgba(255,255,255,.08);box-shadow:0 8px 32px #0006}.skeleton-material-card .material-card-top{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:flex-start;padding:2.5rem 2.5rem 0;margin-bottom:1.5rem}.skeleton-material-card .material-notes-list{position:relative;z-index:2;display:flex;flex-direction:column;gap:.75rem;padding:0 2.5rem 2.5rem;min-height:140px;max-height:140px}.skeleton-material-card .material-note-item{display:flex;align-items:flex-start;gap:.75rem;height:28px;overflow:hidden}.skeleton-achievement-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;padding:1.25rem;text-align:center;box-shadow:0 2px 8px #0000000f}.skeleton-achievement-card .achievement-rank{font-size:2rem;margin-bottom:.75rem;display:block}.skeleton-achievement-card .achievement-content{display:flex;flex-direction:column;gap:.75rem}.skeleton-achievement-card .achievement-stats{display:flex;justify-content:space-around;gap:.5rem}.skeleton-blog-card{background:var(--card-bg);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);border:1px solid var(--border-color);height:100%;display:flex;flex-direction:column}.skeleton-blog-card .course-image-wrapper{position:relative;width:100%;height:160px;overflow:hidden;background:var(--bg-tertiary)}.skeleton-blog-card .course-content{padding:16px;display:flex;flex-direction:column;flex-grow:1}@media(max-width:768px){.skeleton-material-card{min-width:320px;width:320px;min-height:280px}.skeleton-material-card .material-card-top{padding:2rem 2rem 0}.skeleton-material-card .material-notes-list{padding:0 2rem 2rem}}@media(max-width:480px){.skeleton-preview-card{min-width:260px;max-width:260px;padding:1rem}.skeleton-material-card{min-width:280px;width:280px;min-height:260px}.skeleton-material-card .material-card-top{padding:1.75rem 1.75rem 0}.skeleton-material-card .material-notes-list{padding:0 1.75rem 1.75rem;gap:.65rem}}.skeleton-aptitude-category-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:24px;min-width:380px;width:380px;height:320px;padding:2.5rem;display:flex;flex-direction:column;justify-content:space-between}[data-theme=dark] .skeleton-aptitude-category-card{background:#1e293b66;border-color:#4755694d}@media(max-width:768px){.skeleton-aptitude-category-card{min-width:320px;width:320px;height:280px;padding:2rem}}@media(max-width:480px){.skeleton-aptitude-category-card{min-width:280px;width:280px;height:260px;padding:1.75rem}}.skeleton-video-card{min-width:300px;width:300px;background:var(--card-bg);border-radius:16px;overflow:hidden;border:1px solid var(--border-color)}[data-theme=dark] .skeleton-video-card{background:#1e293b66;border-color:#4755694d}.skeleton-aptitude-material-card{background:var(--card-bg);border-radius:16px;padding:2rem;border:1px solid var(--border-color);display:flex;align-items:center;gap:1.5rem}[data-theme=dark] .skeleton-aptitude-material-card{background:#1e293b66;border-color:#4755694d}.skeleton-analytics-card{background:var(--card-bg);border-radius:16px;padding:2rem;border:1px solid var(--border-color);min-height:350px}[data-theme=dark] .skeleton-analytics-card{background:#1e293b66;border-color:#4755694d}.skeleton-explorer-sidebar{background:var(--card-bg);border-right:1px solid var(--border-color)}[data-theme=dark] .skeleton-explorer-sidebar{background:#1e293b66;border-color:#4755694d}.skeleton-explorer-content{background:var(--bg-primary);padding:2rem}[data-theme=dark] .skeleton-explorer-content{background:#0f172a66}.skeleton-video-grid .youtube-style-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;overflow:hidden}[data-theme=dark] .skeleton-video-grid .youtube-style-card{background:#1e293b66;border-color:#4755694d}.skeleton-resources-grid .resource-explorer-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px}[data-theme=dark] .skeleton-resources-grid .resource-explorer-card{background:#1e293b66;border-color:#4755694d}.page-home{padding:0!important;min-height:100vh;width:100%;margin:0;position:relative;background:var(--bg-secondary)}.hero-home{position:relative;color:#fff;padding:0;height:30vh;min-height:240px;max-height:300px;display:flex;align-items:center;justify-content:center;margin:1rem 1rem 0;margin-bottom:var(--card-spacing);overflow:hidden;border-radius:var(--radius-xl)}.hero-carousel{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0}.hero-slide{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;transition:opacity 1s ease-in-out;background-size:cover;background-position:center;background-repeat:no-repeat}.hero-slide.active{opacity:1;z-index:1}.hero-overlay{position:absolute;inset:0;background:linear-gradient(135deg,#000000b3,#00000080);z-index:2}.hero-content-wrapper{width:100%;max-width:1200px;margin:0 auto;position:relative;z-index:5;text-align:center;padding:2rem 1rem}.hero-text h1{font-size:1.75rem;font-weight:800;line-height:1.2;margin-bottom:.75rem;background:linear-gradient(135deg,#fff,#e0e7ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 2px 10px rgba(0,0,0,.3)}.hero-title-animated{animation:fadeInUp .8s ease-out}.hero-subtitle-animated{animation:fadeInUp .8s ease-out .2s both}.hero-subtitle{font-size:1.375rem;margin-bottom:2.5rem;color:gold;font-weight:700;text-shadow:0 0 20px rgba(0,0,0,1),0 0 10px rgba(0,0,0,.9),2px 2px 4px rgba(0,0,0,.8);line-height:1.6;max-width:900px;margin-left:auto;margin-right:auto;letter-spacing:.5px}.hero-buttons{animation:fadeInUp .8s ease-out .4s both}.hero-description{font-size:1rem;line-height:1.6;margin-bottom:1.5rem;color:#ffffffe6;display:none}.hero-buttons{display:flex;flex-direction:row;gap:.5rem;align-items:center;width:100%;justify-content:center}.hero-buttons .btn{flex:1;max-width:160px;padding:.75rem 1rem;font-size:.85rem;font-weight:600;border-radius:var(--radius-lg);text-decoration:none;text-align:center;transition:all .3s ease;border:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px}.btn-primary{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;box-shadow:0 4px 12px #3b82f64d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px #3b82f666}.btn-secondary{background:#ffffff1a;color:#fff;border:2px solid rgba(255,255,255,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-secondary:hover{background:#fff3;border-color:#ffffff80;transform:translateY(-2px)}[data-theme=dark] .hero-home .btn-secondary,[data-theme=dark] .btn-secondary{background:#1e1e1ed9!important;color:#fff!important;border:2px solid rgba(255,255,255,.5)!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}[data-theme=dark] .hero-home .btn-secondary:hover,[data-theme=dark] .btn-secondary:hover{background:#282828f2!important;border-color:#ffffffb3!important}[data-theme=dark] .hero-home .btn-primary,[data-theme=dark] .btn-primary{background:linear-gradient(135deg,#3b82f6,#2563eb)!important;color:#fff!important;box-shadow:0 4px 12px #3b82f666}[data-theme=dark] .hero-home .btn-primary:hover,[data-theme=dark] .btn-primary:hover{box-shadow:0 6px 16px #3b82f680}.section{padding:0;margin-bottom:var(--card-spacing)}.container{width:100%;max-width:1400px;margin:0 auto;padding:0}.section-header{margin-bottom:16px;padding:0 4px}.section-header h2{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin:0 0 4px;line-height:1.3}.section-header p{font-size:.85rem;color:var(--text-muted);line-height:1.5;margin:0}.section-primary,.section-secondary{background:transparent}.platform-modules-section{padding:0 1rem;margin-top:1rem}.modules-drawer{background:var(--card-bg);border-radius:var(--radius-xl);padding:1.25rem;border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}.modules-grid{display:flex;overflow-x:auto;gap:1rem;padding-bottom:.5rem;scrollbar-width:none}.modules-grid::-webkit-scrollbar{display:none}.module-item{display:flex;align-items:center;gap:.75rem;min-width:180px;padding:.75rem 1rem;background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-color);flex-shrink:0;transition:all .3s ease}.module-item:hover{transform:translateY(-2px);border-color:var(--primary-color);background:var(--hover-bg)}.module-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;background:#3b82f61a;color:var(--primary-color)}.module-item.core .module-icon{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff}.module-info{display:flex;flex-direction:column}.module-label{font-size:.9rem;font-weight:700;color:var(--text-primary)}.module-status{font-size:.7rem;color:var(--text-muted);font-weight:500}.module-placeholder{display:flex;align-items:center;gap:.75rem;color:var(--text-muted);font-size:.85rem;padding:.5rem;font-style:italic}@media(min-width:1024px){.modules-grid{flex-wrap:wrap;overflow-x:visible}}.preview-cards-scroll{overflow-x:auto;padding:0 0 8px;margin:0 calc(var(--content-padding-mobile) * -1);-webkit-overflow-scrolling:touch;scrollbar-width:none}.preview-cards-scroll::-webkit-scrollbar{display:none}.preview-cards-container{display:flex;gap:12px;padding:0 var(--content-padding-mobile);min-width:max-content}.preview-card{background:var(--card-bg);border-radius:var(--radius-lg);padding:16px;box-shadow:var(--shadow-sm);border:1px solid var(--border-color);transition:all .3s ease;min-width:260px;max-width:260px;flex-shrink:0}.preview-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.preview-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid var(--border-color);gap:8px}.preview-header h3{font-size:.95rem;font-weight:600;color:var(--text-primary);margin:0;line-height:1.3;flex:1}.preview-link{display:flex;align-items:center;gap:4px;color:var(--primary-color);text-decoration:none;font-size:.75rem;font-weight:600;transition:all .3s ease;white-space:nowrap;flex-shrink:0}.preview-link:hover{color:var(--primary-dark);transform:translate(2px)}.preview-link i{font-size:.7rem}.notification-count{background:var(--error-color);color:#fff;padding:2px 8px;border-radius:12px;font-size:.7rem;font-weight:600;white-space:nowrap}.preview-content{display:flex;flex-direction:column;gap:8px}.preview-list{display:flex;flex-direction:column;gap:10px}.preview-list-scrollable{max-height:280px;overflow-y:auto;overflow-x:hidden;padding-right:4px;scrollbar-width:none;-ms-overflow-style:none}.preview-list-scrollable::-webkit-scrollbar{display:none}.preview-list-scrollable::-webkit-scrollbar-track{background:transparent}.preview-list-scrollable::-webkit-scrollbar-thumb{background:transparent}.preview-list-item{display:flex;align-items:center;gap:12px;padding:12px;background:var(--bg-secondary);border-radius:10px;border:1px solid var(--border-color);transition:all .2s ease}[data-theme=dark] .preview-list-item{background:#1e293b66;border-color:#4755694d}.preview-list-item:hover{background:var(--hover-bg);border-color:var(--primary-color);transform:translate(4px)}[data-theme=dark] .preview-list-item:hover{background:#1e293b99}.preview-time-box{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:60px;height:60px;background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));border-radius:12px;padding:8px;flex-shrink:0}.preview-time-box .time{font-size:.85rem;font-weight:700;color:#fff;text-align:center;line-height:1.2}.preview-info{flex:1;min-width:0}.preview-info h4{font-size:.9rem;font-weight:600;color:var(--text-primary);margin:0 0 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-info .preview-meta{font-size:.75rem;color:var(--text-muted);margin:0}.preview-status{font-size:.75rem;font-weight:600;padding:4px 10px;border-radius:6px;white-space:nowrap;flex-shrink:0}.preview-status.warning{background:#fbbf241a;color:#f59e0b;border:1px solid rgba(251,191,36,.2)}.preview-status.success{background:#22c55e1a;color:#22c55e;border:1px solid rgba(34,197,94,.2)}.preview-status.danger{background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.2)}[data-theme=dark] .preview-status.warning{background:#fbbf2426;border-color:#fbbf244d}[data-theme=dark] .preview-status.success{background:#22c55e26;border-color:#22c55e4d}[data-theme=dark] .preview-status.danger{background:#ef444426;border-color:#ef44444d}.no-data-preview{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1rem;text-align:center;color:var(--text-muted)}.no-data-preview i{font-size:2rem;opacity:.3;margin-bottom:.75rem}.no-data-preview p{font-size:.85rem;margin:0}.preview-chart{margin-top:4px}.skeleton-chart{height:70px;background:linear-gradient(90deg,var(--bg-tertiary) 25%,var(--hover-bg) 50%,var(--bg-tertiary) 75%);background-size:200px 100%;animation:skeleton-loading 1.5s infinite;border-radius:var(--radius-md)}@keyframes skeleton-loading{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}.courses-scroll{overflow-x:auto;padding:0 0 8px;margin:0 calc(var(--content-padding-mobile) * -1);-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.courses-grid{display:flex;gap:12px;padding:0 var(--content-padding-mobile);min-width:max-content}.courses-grid .skeleton-card{min-width:280px;max-width:280px;flex-shrink:0;height:auto}.materials-cards-scroll{overflow-x:auto;padding:0 0 1rem;margin:0 calc(var(--content-padding-mobile) * -1);-webkit-overflow-scrolling:touch;scrollbar-width:none;position:relative}.materials-cards-scroll::-webkit-scrollbar{display:none}.materials-cards-container{display:flex;gap:1rem;padding:1rem var(--content-padding-mobile) 1rem;min-width:max-content;scroll-behavior:smooth}.material-subject-card{position:relative;min-width:380px;width:380px;min-height:280px;border-radius:24px;overflow:hidden;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 8px 32px #1f268726;flex-shrink:0;text-decoration:none;background:#fffffff2;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3)}[data-theme=dark] .material-subject-card{background:#1a1a1a;border:1px solid rgba(255,255,255,.08);box-shadow:0 8px 32px #0006}.material-subject-card:hover{transform:translateY(-8px);box-shadow:0 16px 48px #3b82f640;border-color:var(--primary-color)}[data-theme=dark] .material-subject-card:hover{box-shadow:0 16px 48px #3b82f659;background:#1f1f1f;border-color:var(--primary-color)}.material-card-top{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:flex-start;padding:2.5rem 2.5rem 0;margin-bottom:1.5rem}.material-card-top h3{font-size:2rem;font-weight:700;color:var(--text-primary);margin:0;line-height:1.2;max-width:65%;flex:1}[data-theme=dark] .material-card-top h3{color:#f1f5f9}.material-arrow-btn{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));border:none;color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-left:1rem;transition:all .3s ease;box-shadow:0 4px 12px #3b82f64d}[data-theme=dark] .material-arrow-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 4px 12px #3b82f666}.material-arrow-btn i{font-size:1.1rem;margin-left:2px}.material-subject-card:hover .material-arrow-btn{transform:scale(1.1);box-shadow:0 6px 20px #3b82f666}.material-notes-list{position:relative;z-index:2;display:flex;flex-direction:column;gap:.75rem;padding:0 2.5rem 2.5rem;min-height:120px}.material-note-item{display:flex;align-items:flex-start;gap:.75rem;font-size:.9rem;color:var(--text-secondary);line-height:1.4;font-weight:500;height:28px;overflow:hidden}[data-theme=dark] .material-note-item{color:#cbd5e1}.material-note-item i{font-size:.4rem;flex-shrink:0;margin-top:.5rem;color:var(--primary-color)}[data-theme=dark] .material-note-item i{color:#60a5fa}.material-note-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.material-more-indicator{opacity:.7;font-style:italic}[data-theme=dark] .material-more-indicator{color:#94a3b8}.no-materials-message{min-width:100%;text-align:center;padding:3rem 2rem;background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-color)}.no-materials-message i{font-size:2.5rem;opacity:.2;margin-bottom:1rem;display:block;color:var(--text-muted)}.no-materials-message p{color:var(--text-muted);margin:0}@media(max-width:768px){.materials-cards-container{gap:1rem;padding:1rem var(--content-padding-mobile) 1rem}.material-subject-card{min-width:320px;width:320px;min-height:280px}.material-card-top{padding:2rem 2rem 0}.material-card-top h3{font-size:1.6rem;max-width:70%}.material-arrow-btn{width:44px;height:44px}.material-arrow-btn i{font-size:1rem}.material-notes-list{padding:0 2rem 2rem}.material-note-item{font-size:.85rem}}@media(max-width:480px){.materials-cards-container{gap:1rem}.material-subject-card{min-width:280px;width:280px;min-height:260px}.material-card-top{padding:1.75rem 1.75rem 0}.material-card-top h3{font-size:1.4rem}.material-arrow-btn{width:40px;height:40px}.material-arrow-btn i{font-size:.9rem}.material-notes-list{padding:0 1.75rem 1.75rem;gap:.65rem}.material-note-item{font-size:.8rem}}.achievements-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-bottom:2.5rem}.achievement-card{background:var(--card-bg);border-radius:20px;padding:2rem 1.5rem;text-align:center;transition:all .4s cubic-bezier(.175,.885,.32,1.275);box-shadow:0 10px 30px -10px #00000014;position:relative;overflow:hidden;border:1px solid var(--border-color);display:flex;flex-direction:column;align-items:center}[data-theme=dark] .achievement-card{background:var(--card-bg);box-shadow:0 10px 30px -10px #0000004d}.achievement-card:before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:inherit}.achievement-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px -10px #0000001f}.achievement-rank{width:60px;height:60px;background:var(--bg-secondary);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0 auto 1.5rem;position:relative;z-index:2;box-shadow:0 4px 12px #00000014}[data-theme=dark] .achievement-rank{background:#ffffff0d;box-shadow:0 4px 12px #0000004d}.achievement-rank .rank-medal{font-size:1.75rem;line-height:1}.achievement-rank .rank-number{font-size:.75rem;font-weight:800;color:#64748b;margin-top:2px}.achievement-avatar{width:80px;height:80px;border-radius:50%;margin-bottom:1rem;padding:3px;background:var(--card-bg);box-shadow:0 0 0 2px var(--border-color)}[data-theme=dark] .achievement-avatar{background:var(--bg-secondary)}.achievement-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}.achievement-card h3{font-size:1.15rem;font-weight:700;color:var(--text-primary);margin-bottom:.25rem}.achievement-class{font-size:.85rem;color:var(--text-muted);margin-bottom:1.5rem}.achievement-stats{display:flex;justify-content:center;gap:1.5rem;width:100%;padding-top:1.25rem;border-top:1px solid var(--border-color)}.achievement-stats .stat{display:flex;flex-direction:column;align-items:center}.achievement-stats .stat-value{font-size:1.1rem;font-weight:800;color:var(--text-primary)}.achievement-stats .stat-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.leaderboard-preview{background:var(--card-bg);border-radius:20px;padding:2rem;box-shadow:0 4px 6px -1px #0000000d;border:1px solid var(--border-color)}[data-theme=dark] .leaderboard-preview{background:var(--card-bg);box-shadow:0 4px 6px -1px #0000004d}.leaderboard-preview h3{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin-bottom:1.5rem;display:flex;align-items:center;gap:.75rem}.leaderboard-preview h3:before{content:"";width:4px;height:20px;background:var(--primary-color);border-radius:4px}.leaderboard-item{display:flex;align-items:center;padding:1rem;background:var(--bg-secondary);border-radius:12px;transition:all .2s ease}[data-theme=dark] .leaderboard-item{background:#ffffff08}.leaderboard-item:hover{background:var(--card-bg);box-shadow:0 4px 12px #0000000d;transform:translate(4px)}[data-theme=dark] .leaderboard-item:hover{background:#ffffff0d;box-shadow:0 4px 12px #0000004d}.leaderboard-rank{width:32px;height:32px;background:var(--border-color);color:var(--text-secondary);border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem;margin-right:1rem}[data-theme=dark] .leaderboard-rank{background:#ffffff1a;color:var(--text-primary)}.leaderboard-avatar{width:40px;height:40px;border-radius:50%;margin-right:1rem;object-fit:cover}.leaderboard-info{flex:1}.leaderboard-info h4{font-size:.95rem;font-weight:600;color:var(--text-primary);margin-bottom:2px}.leaderboard-info p{font-size:.75rem;color:var(--text-muted)}.leaderboard-score{text-align:right;display:flex;flex-direction:column;align-items:flex-end}.leaderboard-score .score-value{font-size:1rem;font-weight:700;color:var(--primary-color)}.leaderboard-score .score-label{font-size:.7rem;color:var(--text-muted)}.no-data-message{text-align:center;padding:3rem;background:var(--card-bg);border-radius:16px;border:1px solid var(--border-color)}[data-theme=dark] .no-data-message{background:var(--card-bg)}.no-data-message i{font-size:3rem;color:var(--text-muted);margin-bottom:1rem;display:block}.no-data-message h3{color:var(--text-primary);margin-bottom:.5rem}.no-data-message p{color:var(--text-muted)}color: #94a3b8; } .blog-scroll{overflow-x:auto;padding:0 0 8px;margin:0 calc(var(--content-padding-mobile) * -1);-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.blog-grid{display:flex;gap:12px;padding:0 var(--content-padding-mobile);min-width:max-content}.section-footer{display:flex;justify-content:center;margin-top:1.5rem}.btn-outline{background:transparent;color:#3b82f6;border:2px solid #3b82f6;padding:.75rem 1.5rem;border-radius:8px;text-decoration:none;font-weight:600;font-size:.9rem;transition:all .3s ease;display:inline-block}.btn-outline:hover{background:#3b82f6;color:#fff;transform:translateY(-2px)}.preview-cards-scroll::-webkit-scrollbar,.courses-scroll::-webkit-scrollbar,.materials-cards-scroll::-webkit-scrollbar{height:4px}.preview-cards-scroll::-webkit-scrollbar-track,.courses-scroll::-webkit-scrollbar-track,.materials-cards-scroll::-webkit-scrollbar-track{background:#f3f4f6;border-radius:2px}.preview-cards-scroll::-webkit-scrollbar-thumb,.courses-scroll::-webkit-scrollbar-thumb,.materials-cards-scroll::-webkit-scrollbar-thumb{background:#3b82f6;border-radius:2px}.preview-cards-scroll::-webkit-scrollbar-thumb:hover,.courses-scroll::-webkit-scrollbar-thumb:hover,.materials-cards-scroll::-webkit-scrollbar-thumb:hover{background:#1d4ed8}@media(min-width:768px){.hero-home{height:50vh;min-height:320px;max-height:480px;margin:1.5rem 1.5rem 0;margin-bottom:var(--card-spacing)}.hero-content-wrapper{padding:2rem 1.5rem}.hero-text h1{font-size:2.5rem}.hero-subtitle{font-size:1.5rem;margin-bottom:2rem}.container{padding:0 .75rem}.section{margin-bottom:calc(var(--card-spacing) * 1.5)}.section-header h2{font-size:1.5rem}.section-header p{font-size:.95rem}.preview-cards-scroll{margin:0 calc(var(--content-padding-tablet) * -1)}.preview-cards-container{padding:0 var(--content-padding-tablet)}.preview-card{min-width:280px;max-width:280px;padding:18px}.preview-header h3{font-size:1rem}.preview-link{font-size:.8rem}.courses-scroll{overflow-x:auto;margin:0 calc(var(--content-padding-tablet) * -1)}.courses-grid{display:flex;gap:1rem;padding:0 var(--content-padding-tablet);min-width:max-content}.courses-grid .skeleton-card,.course-card{min-width:300px;max-width:300px;flex-shrink:0}.materials-cards-scroll{overflow-x:auto;margin:0 calc(var(--content-padding-tablet) * -1)}.materials-cards-container{padding:1rem var(--content-padding-tablet) 2rem}.materials-grid,.achievements-grid{grid-template-columns:repeat(2,1fr);gap:var(--card-spacing)}.blog-scroll{overflow-x:auto;margin:0 calc(var(--content-padding-tablet) * -1)}.blog-grid{display:flex;gap:1rem;padding:0 var(--content-padding-tablet);min-width:max-content}.blog-grid .course-card{min-width:300px;max-width:300px;flex-shrink:0}.skeleton-chart{height:90px}}@media(min-width:1024px){.hero-home{height:55vh;min-height:360px;max-height:520px;margin:2rem 2rem 0;margin-bottom:calc(var(--card-spacing) * 1.5)}.hero-content-wrapper{text-align:left;padding:3rem 2rem}.hero-text h1{font-size:3rem}.hero-subtitle{font-size:1.75rem;margin-left:0}.hero-buttons{justify-content:flex-start}.section{margin-bottom:calc(var(--card-spacing) * 2)}.section-header h2{font-size:1.75rem}.preview-cards-scroll{margin:0 calc(var(--content-padding-desktop) * -1)}.preview-cards-container{padding:0 var(--content-padding-desktop);gap:var(--card-spacing)}.courses-scroll{overflow-x:visible!important;margin:0!important}.courses-grid{display:grid;grid-template-columns:repeat(3,1fr)!important;overflow-x:visible!important}.courses-grid .skeleton-card,.course-card{min-width:auto!important;max-width:none!important}.materials-cards-scroll{overflow-x:auto;margin:0 calc(var(--content-padding-desktop) * -1)}.materials-cards-container{padding:1rem var(--content-padding-desktop) 1rem}.materials-grid,.achievements-grid{grid-template-columns:repeat(3,1fr)}.blog-scroll{overflow-x:visible!important;margin:0!important}.blog-grid{display:grid!important;grid-template-columns:repeat(3,1fr)!important;overflow-x:visible!important}.blog-grid .course-card{min-width:auto!important;max-width:none!important}.skeleton-chart{height:100px}}@media(min-width:1280px){.container{padding:0 3rem}.preview-cards-container{justify-content:flex-start;flex-wrap:wrap}.preview-card{min-width:300px;max-width:300px}}@media(max-width:480px){.hero-home{height:28vh;max-height:280px;margin-bottom:12px}.hero-content-wrapper{padding:2rem 1rem}.hero-text h1{font-size:2.125rem}.hero-subtitle{font-size:1.25rem;margin-bottom:2rem}.container{padding:0 .75rem}.section{padding:0;margin-bottom:12px}.section-header{margin-bottom:8px}.section-header h2{font-size:1.5rem;margin:0}.section-header p{font-size:.9rem;margin:0}.preview-card{min-width:260px;max-width:260px;padding:1rem}.preview-header{flex-direction:column;align-items:flex-start;gap:.5rem}.preview-header h3{font-size:.95rem}.courses-grid .skeleton-card,.course-card,.blog-grid .course-card{min-width:240px;max-width:240px}.preview-link{font-size:.8rem;align-self:flex-end}.material-category,.achievement-card,.leaderboard-preview{padding:1rem}.achievement-rank{font-size:1.75rem}.preview-list-scrollable{max-height:220px}.preview-list-item{padding:10px;gap:10px}.preview-time-box{min-width:50px;height:50px}.preview-time-box .time{font-size:.75rem}.preview-info h4{font-size:.85rem}.preview-info .preview-meta{font-size:.7rem}.preview-status{font-size:.7rem;padding:3px 8px}}@media(max-width:767px){.page-home .section{padding-top:0!important;padding-bottom:0!important}.page-home .section-header{padding-top:2px!important;padding-bottom:0!important;margin-top:0!important;margin-bottom:0!important}.page-home .section-header h2{line-height:1.05}.page-home .section-header>p{color:var(--text-muted)!important;line-height:1.15;margin-top:0!important;position:relative;top:-10px}}@media(prefers-reduced-motion:reduce){.hero-title-animated,.hero-subtitle-animated,.hero-buttons{animation:none}}.course-card{cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1)}.course-card:hover{transform:translateY(-8px)}.course-image-wrapper{position:relative}.course-stats-overlay span{display:flex;align-items:center;gap:4px}.course-stats-overlay i{font-size:.7rem}.course-footer-actions{display:flex;justify-content:space-between;align-items:center;margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--border-color)}.like-btn{background:none;border:1px solid var(--border-color);width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:var(--text-muted);cursor:pointer;transition:all .2s ease}.like-btn.active{background:#ef4444;color:#fff;border-color:#ef4444;transform:scale(1.1)}.course-link{font-size:.85rem;font-weight:600;color:var(--primary-color);text-decoration:none}.preview-card,.achievement-card,.btn,.preview-link{transition:none}.skeleton-chart{animation:none;background:#f0f0f0}.hero-slide{transition:none}.hero-title-animated,.hero-subtitle-animated,.hero-buttons{animation:none}@media(prefers-contrast:high){.preview-card,.material-category,.achievement-card,.leaderboard-preview{border:2px solid #000}.btn-primary{background:#000;border:2px solid #000}.btn-secondary{background:transparent;color:#000;border:2px solid #000}}.preview-card.loading{opacity:.7}.course-card{background:var(--card-bg);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s ease;height:100%;display:flex;flex-direction:column;border:1px solid var(--border-color);cursor:pointer;min-width:280px;max-width:280px;flex-shrink:0}.course-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-md)}.course-image-wrapper{position:relative;width:100%;height:160px;overflow:hidden;background:var(--bg-tertiary)}.course-image{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.course-card:hover .course-image{transform:scale(1.08)}.course-type-badge{position:absolute;top:10px;left:10px;background:#ffffffe6;padding:4px 10px;border-radius:20px;font-size:.65rem;font-weight:700;color:var(--primary-color);text-transform:uppercase;letter-spacing:.5px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:5}.course-stats-overlay{position:absolute;bottom:8px;right:8px;display:flex;gap:10px;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:4px 10px;border-radius:20px;color:#fff;font-size:.75rem;font-weight:600;z-index:10}.course-content{padding:16px;display:flex;flex-direction:column;flex-grow:1}.course-title{font-size:1.05rem;font-weight:700;color:var(--text-primary);margin:0 0 8px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-clamp:2;overflow:hidden}.course-body{font-size:.85rem;color:var(--text-secondary);margin-bottom:12px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;line-clamp:3;overflow:hidden;flex-grow:1}.course-footer-actions{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:12px;border-top:1px solid var(--border-color)}.course-link{display:inline-flex;align-items:center;gap:6px;color:var(--primary-color);font-weight:600;font-size:.85rem;text-decoration:none;transition:color .2s}.course-link:hover{color:var(--primary-dark)}.like-btn{background:none;border:1px solid var(--border-color);width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:var(--text-muted);cursor:pointer;transition:all .2s cubic-bezier(.175,.885,.32,1.275)}.like-btn:hover{background:#ef44441a;color:#ef4444;border-color:#ef4444}.like-btn.active{background:#ef4444;color:#fff;border-color:#ef4444;transform:scale(1.15)}.no-courses-message{grid-column:1 / -1;text-align:center;padding:32px 16px;color:var(--text-muted);background:var(--card-bg);border-radius:var(--radius-lg);border:1px solid var(--border-color)}.preview-card.loading .preview-content{filter:blur(1px)}@media print{.hero-home{background:none!important;color:#000!important;padding:1rem!important}.preview-cards-scroll{overflow:visible!important}.preview-cards-container{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:1rem!important}.btn{display:none!important}}.calendar-widget{background:var(--card-bg);border-radius:16px;border:1px solid var(--border-color);padding:1.5rem;margin-bottom:2rem;box-shadow:var(--shadow-md);transition:all .3s ease}.calendar-widget:hover{box-shadow:var(--shadow-lg);border-color:var(--border-hover)}.calendar-widget.loading{text-align:center;padding:3rem;color:var(--text-secondary)}.calendar-widget .widget-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--border-color)}.calendar-widget .widget-header h3{font-size:1.3rem;font-weight:800;margin:0 0 .3rem;color:var(--text-primary);display:flex;align-items:center;gap:.5rem}.calendar-widget .widget-header h3 i{color:var(--primary-color)}.refresh-indicator{margin-left:.5rem;font-size:.9rem;color:var(--text-secondary)!important;opacity:.7}.calendar-widget .widget-header p{margin:0;font-size:.85rem;color:var(--text-secondary)}.current-time{font-weight:600;color:var(--primary-color);font-size:.8rem;animation:pulse-subtle 2s ease-in-out infinite}@keyframes pulse-subtle{0%,to{opacity:1}50%{opacity:.7}}.calendar-controls{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;gap:1rem}.current-month{display:flex;align-items:baseline;gap:.5rem;flex:1;justify-content:center}.month-name{font-size:1.3rem;font-weight:800;color:var(--text-primary)}.year{font-size:1rem;font-weight:600;color:var(--text-secondary)}.nav-btn,.today-btn{background:var(--section-bg);border:1px solid var(--border-color);border-radius:8px;padding:.5rem 1rem;cursor:pointer;transition:all .2s;font-weight:600;color:var(--text-secondary);box-shadow:var(--shadow-sm)}.nav-btn{width:40px;height:40px;padding:0;display:flex;align-items:center;justify-content:center}.nav-btn:hover,.today-btn:hover{background:var(--hover-bg);border-color:var(--border-hover);color:var(--text-primary);box-shadow:var(--shadow-md)}.today-btn{background:var(--primary-color);color:var(--text-white);border:1px solid var(--primary-color)}.today-btn:hover{background:var(--primary-dark);border-color:var(--primary-dark)}.calendar-grid{background:var(--card-bg);border-radius:12px;padding:1rem;border:1px solid var(--border-color);display:block;box-shadow:var(--shadow-sm)}.calendar-header{display:grid;grid-template-columns:repeat(7,1fr);gap:.5rem;margin-bottom:.75rem;padding:.75rem .5rem;border-radius:8px;width:100%;background:var(--primary-color);border:1px solid var(--primary-color)}.day-label{text-align:center;font-weight:700;font-size:.75rem;color:var(--text-white);text-transform:uppercase;padding:0}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:.5rem;width:100%}.calendar-day{background:var(--section-bg);border:1px solid var(--border-color);border-radius:8px;padding:.5rem;min-height:80px;position:relative;transition:all .2s}.calendar-day.empty{background:transparent;border:none}.calendar-day:not(.empty):hover{border-color:var(--primary-color);transform:translateY(-2px);box-shadow:var(--shadow-md);background:var(--hover-bg)}.calendar-day.today{background:rgba(var(--primary-color-rgb),.1);border-color:var(--primary-color);font-weight:700;box-shadow:0 0 0 2px rgba(var(--primary-color-rgb),.2)}.calendar-day.has-event{border-color:var(--primary-color);background:rgba(var(--primary-color-rgb),.05)}.day-number{font-size:.9rem;font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.calendar-day.today .day-number{color:var(--primary-color);font-size:1rem}.event-indicators{display:flex;flex-direction:column;gap:.2rem;margin-top:.25rem}.event-dot{font-size:.65rem;padding:.15rem .35rem;border-radius:4px;background:var(--primary-color);color:var(--text-white);font-weight:600;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:1px solid rgba(var(--primary-color-rgb),.3);box-shadow:0 1px 2px #0000001a}.event-dot.holiday{background:var(--error-color, #ef4444);border-color:#ef44444d}.event-dot.exam{background:var(--warning-color, #f59e0b);border-color:#f59e0b4d}.event-dot.event{background:var(--info-color, #3b82f6);border-color:#3b82f64d}.more-events{font-size:.65rem;color:var(--text-secondary);font-weight:600;padding:.15rem .35rem}.upcoming-events{margin-top:1.5rem;padding-top:1.5rem;border-top:2px solid var(--border-color)}.upcoming-events h4{font-size:1rem;font-weight:700;color:var(--text-primary);margin:0 0 1rem;display:flex;align-items:center;gap:.5rem}.upcoming-events h4 i{color:var(--primary-color)}.event-list{display:flex;flex-direction:column;gap:.75rem}.event-item{display:flex;gap:1rem;padding:.75rem;background:var(--section-bg);border-left:4px solid var(--primary-color);border-radius:8px;transition:all .2s;border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}.event-item:hover{background:var(--hover-bg);transform:translate(4px);border-color:var(--border-hover);box-shadow:var(--shadow-md)}.event-item.holiday{border-left-color:var(--error-color, #ef4444);background:var(--section-bg)}.event-item.exam{border-left-color:var(--warning-color, #f59e0b);background:var(--section-bg)}.event-item.event{border-left-color:var(--info-color, #3b82f6);background:var(--section-bg)}.event-date{font-size:.75rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;min-width:60px}.event-details{flex:1}.event-name{font-weight:700;color:var(--text-primary);font-size:.9rem;margin-bottom:.2rem}.event-desc{font-size:.8rem;color:var(--text-secondary);line-height:1.4}@media(max-width:1024px){.calendar-days{gap:.3rem}.calendar-day{min-height:70px;padding:.4rem}.day-number{font-size:.85rem}.event-dot{font-size:.6rem}}@media(max-width:768px){.calendar-widget{padding:1rem}.calendar-controls{flex-wrap:wrap}.current-month{order:-1;width:100%;margin-bottom:.5rem}.month-name{font-size:1.1rem}.calendar-days{gap:.25rem}.calendar-day{min-height:60px;padding:.3rem}.day-number{font-size:.8rem}.event-dot{font-size:.55rem;padding:.1rem .25rem}.event-item{flex-direction:column;gap:.3rem}.event-date{min-width:auto}}.profile-header-card{background:var(--card-bg);border-radius:12px;overflow:hidden;box-shadow:var(--shadow-sm)}@media(max-width:1024px){.section-primary .container{padding-bottom:0}.profile-header-card{border-radius:12px 12px 0 0;margin-bottom:0;box-shadow:none}.section-primary .profile-sidebar{display:block!important;background:var(--card-bg);border-radius:0 0 12px 12px;box-shadow:0 4px 12px #00000014;margin-bottom:16px;padding:0;position:relative;top:auto;max-height:none;overflow:visible}}.page .section{padding:2rem 0}.page .section-primary{padding-top:1rem;padding-bottom:1rem}.page .section-secondary{padding-top:1.5rem}.profile-banner{height:150px;background:linear-gradient(135deg,var(--primary-color) 0%,var(--primary-dark) 100%);position:relative}.edit-banner-btn{position:absolute;top:16px;right:16px}.profile-main-info{padding:0 32px 32px;display:flex;gap:24px;align-items:flex-start}.profile-avatar-section{margin-top:-60px}.profile-avatar-large{width:140px;height:140px;border-radius:50%;background:var(--card-bg);border:4px solid var(--card-bg);display:flex;align-items:center;justify-content:center;font-size:48px;color:var(--text-secondary);position:relative;box-shadow:var(--shadow-md)}.avatar-edit-btn{position:absolute;bottom:4px;right:4px;width:36px;height:36px;border-radius:50%;background:var(--primary-color);color:#fff;border:2px solid var(--card-bg);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.avatar-edit-btn:hover{background:var(--primary-dark);transform:scale(1.05)}.profile-details{flex:1;padding-top:16px}.profile-details h1{font-size:28px;font-weight:600;color:var(--text-primary);margin:0 0 4px}.profile-email{color:var(--text-secondary);font-size:14px;margin:0 0 12px}.profile-meta{display:flex;gap:24px;flex-wrap:wrap}.profile-meta span{display:flex;align-items:center;gap:6px;color:var(--text-secondary);font-size:14px}.profile-meta i{color:var(--primary-color)}.profile-actions{padding-top:16px}.profile-content-wrapper{display:grid;grid-template-columns:280px 1fr;gap:24px}@media(min-width:1025px){.section-primary .profile-sidebar{display:none!important}.section-secondary .profile-sidebar{display:flex!important}}@media(max-width:1024px){.section-secondary .profile-sidebar{display:none!important}.section-primary .profile-sidebar{display:block!important}}.profile-sidebar{display:flex;flex-direction:column;gap:12px;position:sticky;top:70px;align-self:flex-start;max-height:calc(100vh - 80px);overflow-y:auto}.profile-sidebar::-webkit-scrollbar{width:6px}.profile-sidebar::-webkit-scrollbar-track{background:transparent}.profile-sidebar::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px;transition:background .3s ease}.profile-sidebar::-webkit-scrollbar-thumb:hover{background:var(--primary-color)}.profile-sidebar{scrollbar-width:thin;scrollbar-color:var(--border-color) transparent}.profile-nav{background:var(--card-bg);border-radius:12px;padding:6px;box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.nav-header{padding:10px 16px 6px;border-bottom:1px solid var(--border-color);margin-bottom:6px}.nav-header h4{font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin:0}.profile-nav-item{width:100%;display:flex;align-items:center;gap:10px;padding:12px 16px;border:none;background:transparent;color:var(--text-secondary);font-size:14px;font-weight:500;border-radius:8px;cursor:pointer;transition:all .3s ease;text-align:left;position:relative;margin-bottom:2px}.profile-nav-item:hover{background:var(--hover-bg);color:var(--text-primary);transform:translate(2px)}.profile-nav-item.active{background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));color:#fff;box-shadow:0 4px 12px #667eea4d;transform:translate(4px)}.profile-nav-item.active:before{content:"";position:absolute;left:-8px;top:50%;transform:translateY(-50%);width:4px;height:60%;background:var(--primary-color);border-radius:2px}.profile-nav-item i{font-size:18px;width:24px;transition:all .3s ease}.profile-nav-item.active i{transform:scale(1.1)}.profile-nav-item span{font-weight:600;flex:1}.active-indicator{width:8px;height:8px;background:#fff;border-radius:50%;opacity:.9}.profile-stats-card{background:var(--card-bg);border-radius:12px;padding:20px;box-shadow:var(--shadow-sm)}.profile-stats-card h3{font-size:16px;font-weight:600;color:var(--text-primary);margin:0 0 16px}.profile-stat-item{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--border-color)}.profile-stat-item:last-child{border-bottom:none}.stat-label{color:var(--text-secondary);font-size:14px}.stat-value{color:var(--text-primary);font-weight:600;font-size:14px}.achievement-badge{background:linear-gradient(135deg,#fbbf24,#f59e0b);border-radius:12px;padding:16px;color:#fff;display:flex;align-items:center;gap:12px}.badge-icon{width:40px;height:40px;background:#fff3;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px}.badge-content h4{font-size:14px;font-weight:600;margin:0 0 2px}.badge-content p{font-size:12px;margin:0;opacity:.9}.form-input{width:100%;padding:12px 16px;border:1px solid var(--border-color);border-radius:8px;background:var(--card-bg);color:var(--text-primary);font-size:14px;transition:all .2s}.form-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #667eea1a}.form-display{padding:12px 16px;background:var(--section-bg);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:14px;min-height:20px}.form-select{width:100%;padding:12px 16px;border:1px solid var(--border-color);border-radius:8px;background:var(--card-bg);color:var(--text-primary);font-size:14px;cursor:pointer}.academic-summary{display:flex;gap:12px}.cgpa-badge,.attendance-badge{padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600}.cgpa-badge{background:#94a3b81a;color:#64748b;border:1px solid rgba(148,163,184,.2)}.attendance-badge{background:rgba(var(--success-color-rgb, 16, 163, 129),.1);color:var(--success-color);border:1px solid rgba(var(--success-color-rgb, 16, 163, 129),.2)}.info-value{font-size:16px;font-weight:600;color:var(--text-primary)}.profile-main-content{background:var(--card-bg);border-radius:12px;padding:32px;box-shadow:var(--shadow-sm)}.profile-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border-color)}.profile-section-header h2{font-size:24px;font-weight:600;color:var(--text-primary);margin:0}.profile-form{display:flex;flex-direction:column;gap:20px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.form-group label{font-size:14px;font-weight:500;color:var(--text-primary)}.profile-section .academic-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;margin-bottom:32px}.profile-section .academic-info-grid .info-card{display:flex;align-items:center;gap:16px;padding:20px;background:#ffffffb3!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:12px;border:1px solid rgba(255,255,255,.3)!important;box-shadow:0 4px 6px #0000000d;transition:all .3s ease;color:inherit!important}.profile-section .academic-info-grid .info-card:hover{transform:translateY(-2px);box-shadow:0 8px 16px #0000001a;background:#fffc!important;border-color:#fff6!important}.profile-section .academic-info-grid .info-card .info-icon{width:48px;height:48px;border-radius:12px;background:#ffffffe6!important;color:#64748b!important;display:flex;align-items:center;justify-content:center;font-size:20px;box-shadow:0 2px 8px #00000014}.profile-section .academic-info-grid .info-card:before{display:none!important}.info-content{flex:1}.info-content label{display:block;font-size:12px;color:var(--text-secondary);margin-bottom:4px}.enrolled-courses{margin-top:32px}.enrolled-courses h3{font-size:18px;font-weight:600;color:var(--text-primary);margin:0 0 16px}.courses-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}.course-card{background:var(--section-bg);border:1px solid var(--border-color);border-radius:12px;padding:20px;transition:all .3s ease}.course-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000001a;border-color:var(--primary-color)}.course-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.course-code{font-size:12px;font-weight:600;color:var(--primary-color);background:var(--primary-light);padding:4px 8px;border-radius:6px}.grade-badge{padding:4px 8px;border-radius:6px;font-size:12px;font-weight:600}.grade-A{background:#dcfce7;color:#16a34a}.grade-Aminus{background:#fef3c7;color:#d97706}.grade-Bplus{background:#dbeafe;color:#2563eb}.course-name{font-size:16px;font-weight:600;color:var(--text-primary);margin:0 0 12px;line-height:1.4}.course-details{display:flex;justify-content:space-between;font-size:12px;color:var(--text-secondary)}.attendance-profile-container{padding:1rem}.attendance-summary-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.att-summary-card{background:var(--card-bg);padding:1.5rem;border-radius:16px;display:flex;flex-direction:column;gap:.5rem;box-shadow:var(--shadow-sm);border:none;transition:all .3s ease;position:relative;overflow:hidden}.att-summary-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.att-summary-card.primary{border-top:4px solid var(--primary-color)}.att-summary-card.success{border-top:4px solid var(--success-color)}.att-summary-card.danger{border-top:4px solid var(--error-color)}.att-summary-card .label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;font-weight:700;letter-spacing:.05em}.att-summary-card .value{font-size:1.75rem;font-weight:800;color:var(--text-primary)}.att-summary-card .sub{font-size:.75rem;color:var(--text-muted)}.progress-bar-bg{height:6px;background:var(--section-bg);border-radius:3px;margin-top:.5rem;overflow:hidden;border:none}.progress-bar-fill{height:100%;background:var(--primary-color);border-radius:3px;transition:width .3s ease}.attendance-main-grid{display:grid;grid-template-columns:320px 1fr;gap:1.5rem}@media(max-width:1024px){.attendance-main-grid{grid-template-columns:1fr}}.attendance-side-panel,.attendance-history-panel{background:var(--card-bg)!important;padding:1.5rem;border-radius:16px;border:none;box-shadow:var(--shadow-sm);transition:all .3s ease}.attendance-side-panel:hover,.attendance-history-panel:hover{box-shadow:var(--shadow-md)}.attendance-side-panel h3,.attendance-history-panel h3{font-size:1rem;font-weight:700;margin-bottom:1.25rem;color:var(--text-primary);display:flex;align-items:center;gap:.5rem}.subject-stats-list{display:flex;flex-direction:column;gap:1.25rem}.subject-stat-item .item-head{display:flex;justify-content:space-between;margin-bottom:.5rem}.subject-stat-item .name{font-weight:600;font-size:.9rem;color:var(--text-primary)}.subject-stat-item .perc{font-weight:700;color:var(--primary-color);font-size:.9rem}.item-bar-bg{height:4px;background:var(--section-bg);border-radius:2px;margin-bottom:.4rem;overflow:hidden;border:none}.item-bar-fill{height:100%;border-radius:2px;transition:width .3s ease}.item-meta{font-size:.7rem;color:var(--text-muted)}.history-list{display:flex;flex-direction:column;gap:.75rem;max-height:400px;overflow-y:auto;padding-right:.5rem;margin-right:-.5rem;position:relative}.history-list::-webkit-scrollbar{width:6px}.history-list::-webkit-scrollbar-track{background:var(--section-bg);border-radius:3px}.history-list::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px;transition:background .2s}.history-list::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.history-list{scrollbar-width:thin;scrollbar-color:var(--border-color) var(--section-bg)}.history-item{display:flex;gap:1rem;padding:1rem;border-radius:12px;background:var(--section-bg)!important;border:none;transition:all .2s ease;position:relative}.history-item:hover{background:var(--hover-bg)!important;transform:translate(2px)}.history-item .item-icon{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:.8rem;background:var(--section-bg);border:none;color:var(--text-secondary)}.history-item .item-icon.present{background:rgba(var(--success-color-rgb),.1);color:var(--success-color)}.history-item .item-icon.absent{background:rgba(var(--error-color-rgb),.1);color:var(--error-color)}.history-item .item-content{flex:1}.history-item .row1{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.history-item .subject{font-weight:600;color:var(--text-primary);font-size:.9rem}.status-pill{font-size:.65rem;font-weight:800;padding:.15rem .5rem;border-radius:4px;text-transform:uppercase;border:1px solid transparent}.status-pill.present{background:rgba(var(--success-color-rgb, 16, 163, 129),.1);color:var(--success-color);border-color:rgba(var(--success-color-rgb, 16, 163, 129),.2)}.status-pill.absent{background:rgba(var(--error-color-rgb, 239, 68, 68),.1);color:var(--error-color);border-color:rgba(var(--error-color-rgb, 239, 68, 68),.2)}.status-pill.late{background:rgba(var(--warning-color-rgb, 245, 158, 11),.1);color:var(--warning-color);border-color:rgba(var(--warning-color-rgb, 245, 158, 11),.2)}.history-item .row2{display:flex;gap:1rem;font-size:.75rem;color:var(--text-secondary);flex-wrap:wrap}.history-item .row2 span{display:flex;align-items:center;gap:4px}.history-item .remarks{margin-top:.5rem;font-size:.8rem;color:var(--text-secondary);font-style:italic;padding:.5rem;background:var(--section-bg);border-radius:6px;border:none}.empty-state{text-align:center;padding:2rem;color:var(--text-muted);background:var(--section-bg);border-radius:12px;font-style:italic}.course-credits,.course-instructor{display:flex;align-items:center;gap:4px}.course-details i{color:var(--primary-color)}.login-activity{display:flex;flex-direction:column;gap:16px}.activity-item{display:flex;justify-content:space-between;align-items:center;padding:16px;background:var(--section-bg);border-radius:8px;border:1px solid var(--border-color)}.activity-device{display:flex;align-items:center;gap:8px;font-weight:500;color:var(--text-primary);margin-bottom:4px}.activity-device i{color:var(--primary-color)}.activity-location{font-size:12px;color:var(--text-secondary)}.activity-time{text-align:right;font-size:12px;color:var(--text-secondary)}.current-session{background:#dcfce7;color:#16a34a;padding:2px 6px;border-radius:4px;font-size:10px;font-weight:500;margin-bottom:4px;display:inline-block}.toggle-switch{position:relative;display:inline-block;width:50px;height:24px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:#ccc;transition:.3s;border-radius:24px}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}input:checked+.toggle-slider{background-color:var(--primary-color)}input:checked+.toggle-slider:before{transform:translate(26px)}.courses-list,.activity-list{display:flex;flex-direction:column;gap:12px}.activity-item{display:flex;align-items:center;gap:12px;padding:12px;background:var(--card-bg);border-radius:8px;border:1px solid var(--border-color);transition:all .3s ease}.activity-item i{font-size:16px;width:20px;text-align:center}.activity-item i.success{color:#16a34a}.activity-item span{font-size:14px;color:var(--text-primary);line-height:1.4}.analytics-card{background:var(--section-bg);border:1px solid var(--border-color);border-radius:12px;padding:20px;transition:all .3s ease}.analytics-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000001a;border-color:var(--primary-color)}.analytics-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.analytics-header h4{font-size:14px;font-weight:600;color:var(--text-primary);margin:0}.analytics-header i{color:var(--primary-color);font-size:16px}.analytics-content{display:flex;justify-content:space-between;align-items:center}.metric{display:flex;flex-direction:column}.metric-value{font-size:24px;font-weight:700;color:var(--primary-color);line-height:1}.metric-label{font-size:12px;color:var(--text-secondary);margin-top:2px}.metric-trend{display:flex;align-items:center;gap:4px;font-size:12px;font-weight:500}.metric-trend.positive{color:#16a34a}.metric-trend.negative{color:#dc2626}.metric-trend i{font-size:10px}.goals-list{display:flex;flex-direction:column;gap:16px}.goal-item{display:flex;align-items:center;gap:16px;padding:20px;background:var(--section-bg);border-radius:12px;border:1px solid var(--border-color);transition:all .3s ease}.goal-item:hover{transform:translateY(-1px);box-shadow:0 4px 15px #00000014}.goal-icon{width:40px;height:40px;border-radius:50%;background:var(--primary-light);color:var(--primary-color);display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}.goal-content{flex:1}.goal-content h4{font-size:16px;font-weight:600;color:var(--text-primary);margin:0 0 4px}.goal-content p{font-size:14px;color:var(--text-secondary);margin:0 0 4px}.goal-deadline{font-size:12px;color:var(--primary-color);font-weight:500}.goal-progress{font-size:14px;font-weight:600;color:var(--primary-color);padding:4px 8px;background:var(--primary-light);border-radius:6px}@media(max-width:1024px){.page .section-primary{padding-bottom:0;margin-bottom:0}.page .section-secondary{padding-top:16px}.profile-header-card{border-radius:12px 12px 0 0;margin-bottom:0}.profile-content-wrapper{grid-template-columns:1fr;gap:0}.section-primary .profile-sidebar{display:block!important;position:relative;top:auto;z-index:10;background:var(--card-bg);border-radius:0 0 12px 12px;margin:0 0 16px;padding:0;box-shadow:0 4px 12px #00000014;border-top:1px solid var(--border-color);max-height:none;overflow:visible}.profile-main-content{order:2;border-radius:12px;margin-top:0;box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.section-primary .profile-nav{display:flex!important;flex-direction:row!important;overflow-x:auto;overflow-y:hidden;gap:8px;padding:12px 16px;background:var(--card-bg);box-shadow:none;border:none;border-radius:0 0 12px 12px;scrollbar-width:none;-ms-overflow-style:none;position:relative;scroll-behavior:smooth;white-space:nowrap}.section-primary .profile-nav::-webkit-scrollbar{display:none}.section-primary .nav-header{display:none}.section-primary .profile-nav-item{flex:0 0 auto;min-width:120px;max-width:150px;padding:10px 16px;margin:0;border-radius:50px;background:var(--section-bg);border:2px solid transparent;text-align:center;display:inline-flex!important;flex-direction:row!important;align-items:center;justify-content:center;gap:8px;font-size:12px;white-space:nowrap;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.section-primary .profile-nav-item:before{display:none}.section-primary .profile-nav-item:hover{background:var(--hover-bg);transform:translateY(-2px);border-color:var(--primary-color);box-shadow:0 4px 12px #00000014}.section-primary .profile-nav-item:active{transform:translateY(0);transition:transform .1s ease}.section-primary .profile-nav-item.active{background:linear-gradient(135deg,var(--primary-color),var(--primary-dark))!important;color:#fff!important;border-color:var(--primary-color);box-shadow:0 4px 16px #667eea4d;transform:translateY(-2px)}.section-primary .profile-nav-item i{font-size:16px;margin:0;position:relative;z-index:1;transition:transform .3s ease;flex-shrink:0}.section-primary .profile-nav-item.active i{transform:scale(1.1);filter:drop-shadow(0 2px 4px rgba(0,0,0,.2));color:#fff!important}.section-primary .profile-nav-item span{font-size:11px;font-weight:600;position:relative;z-index:1;text-transform:capitalize;letter-spacing:.2px;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.section-primary .profile-nav-item.active span{color:#fff!important}.section-primary .active-indicator{display:none}.profile-main-content{animation:fadeInUp .4s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.progress-dashboard{grid-template-columns:1fr}}@media(max-width:768px){.dashboard-overview,.analytics-grid-main{grid-template-columns:1fr}.analytics-grid{grid-template-columns:repeat(2,1fr)}.progress-dashboard,.tips-grid{grid-template-columns:1fr}.overview-card{flex-direction:column;text-align:center;gap:12px}.section-primary .profile-nav{padding:10px 12px;gap:6px}.section-primary .profile-nav-item{min-width:100px;max-width:130px;padding:10px 12px;font-size:11px;gap:6px}.section-primary .profile-nav-item i{font-size:15px}.section-primary .profile-nav-item span{font-size:10px}.profile-main-content{padding:16px;margin:0}.profile-section-header{margin-bottom:16px;padding-bottom:12px}.profile-section-header h2{font-size:20px}.profile-main-info{flex-direction:column;align-items:center;text-align:center;padding:0 20px 20px}.profile-avatar-section{margin-top:-70px}.profile-details{padding-top:0}.profile-meta{justify-content:center;flex-wrap:wrap;gap:12px}.academic-info-grid,.form-row{grid-template-columns:1fr}.security-option,.privacy-option{flex-direction:column;gap:16px;text-align:center}.security-option-info{flex-direction:column;text-align:center}.courses-grid{grid-template-columns:1fr}.academic-summary{flex-direction:column;align-items:flex-start}.activity-item{flex-direction:column;gap:12px;text-align:center}.activity-time{text-align:center}.achievement-badge{flex-direction:column;text-align:center}.overview-icon{width:50px;height:50px;font-size:20px}.activity-timeline .activity-item,.goal-item{flex-direction:column;text-align:center;gap:12px}}@media(max-width:480px){.analytics-grid{grid-template-columns:1fr}.dashboard-section{margin-bottom:24px;padding-bottom:24px}.overview-card,.activity-timeline .activity-item,.goal-item{padding:16px}.profile-main-content{padding:12px}.skill-progress-item{flex-direction:column;align-items:flex-start;gap:8px}.skill-info{min-width:auto}.skill-progress-bar{width:100%}.performance-item{flex-direction:column;align-items:flex-start;gap:8px}.performance-item .progress-bar{width:100%}.section-primary .profile-nav{padding:8px 10px;gap:4px}.section-primary .profile-nav-item{min-width:85px;max-width:110px;padding:8px 10px;font-size:10px;gap:5px}.section-primary .profile-nav-item i{font-size:14px}.section-primary .profile-nav-item span{font-size:9px}.profile-section-header h2{font-size:18px}.profile-details h1{font-size:24px}.profile-meta{gap:8px}.profile-meta span{font-size:12px}}.security-section{margin-bottom:32px;padding-bottom:32px;border-bottom:1px solid var(--border-color)}.security-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.security-section h3{font-size:18px;font-weight:600;color:var(--text-primary);margin:0 0 16px}.security-option{display:flex;justify-content:space-between;align-items:center;padding:20px;background:var(--section-bg);border-radius:12px;border:1px solid var(--border-color)}.security-option-info{display:flex;align-items:center;gap:16px}.security-option-info i{font-size:24px;color:var(--primary-color)}.security-option-info h4{font-size:16px;font-weight:600;color:var(--text-primary);margin:0 0 4px}.security-option-info p{font-size:14px;color:var(--text-secondary);margin:0}.privacy-options{display:flex;flex-direction:column;gap:16px}.privacy-option{display:flex;justify-content:space-between;align-items:center;padding:20px;background:var(--section-bg);border-radius:12px;border:1px solid var(--border-color)}.privacy-option-info h4{font-size:16px;font-weight:600;color:var(--text-primary);margin:0 0 4px}.privacy-option-info p{font-size:14px;color:var(--text-secondary);margin:0}@media(max-width:1024px){.profile-content-wrapper{grid-template-columns:1fr}.profile-sidebar{order:2;position:relative;top:auto;max-height:none;overflow-y:visible}.profile-main-content{order:1}.profile-nav{display:grid;grid-template-columns:repeat(3,1fr)}.courses-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}}@media(max-width:768px){.profile-main-info{flex-direction:column;align-items:center;text-align:center;padding:0 20px 20px}.profile-avatar-section{margin-top:-70px}.profile-details{padding-top:0}.profile-meta{justify-content:center}.profile-main-content{padding:20px}.academic-info-grid,.form-row,.profile-nav{grid-template-columns:1fr}.security-option,.privacy-option{flex-direction:column;gap:16px;text-align:center}.security-option-info{flex-direction:column;text-align:center}.courses-grid{grid-template-columns:1fr}.academic-summary{flex-direction:column;align-items:flex-start}.activity-item{flex-direction:column;gap:12px;text-align:center}.activity-time{text-align:center}.achievement-badge{flex-direction:column;text-align:center}}.student-timetable-container{margin-top:24px;width:100%}.exam-schedule-section{margin-bottom:3rem}.exam-schedule-section h3{margin:0;color:var(--text-primary)!important;display:flex;align-items:center;gap:8px}.exam-schedule-section .active-badge{font-size:.8rem;background:#1e293b1a!important;color:var(--text-primary)!important;padding:4px 12px;border-radius:12px;font-weight:700;border:1px solid rgba(30,41,59,.2)}.timetable-table-wrapper{width:100%;overflow-x:auto;background:var(--card-bg);border-radius:12px;box-shadow:var(--shadow-sm);border:1px solid var(--border-color);max-height:400px;overflow-y:auto}.timetable-table-wrapper::-webkit-scrollbar{width:6px;height:6px}.timetable-table-wrapper::-webkit-scrollbar-track{background:var(--section-bg);border-radius:3px}.timetable-table-wrapper::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px;transition:background .3s ease}.timetable-table-wrapper::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.timetable-table{width:100%;border-collapse:collapse;min-width:600px;font-size:12px;table-layout:fixed}.timetable-table thead{background:var(--text-primary);color:var(--card-bg);position:sticky;top:0;z-index:10}.timetable-table thead tr{background:var(--text-primary)!important}.timetable-table th{padding:12px 8px;text-align:center;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.3px;border-right:1px solid rgba(255,255,255,.1);color:var(--card-bg)!important;background:var(--text-primary)!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.timetable-table th:last-child{border-right:none}.time-column-header{width:100px;background:var(--text-primary)!important}.day-column-header{width:120px}.timetable-table tbody tr:hover{background-color:var(--section-bg)}.time-cell{background:var(--section-bg);border-right:2px solid var(--border-color);padding:10px 6px;text-align:center;font-weight:600;color:var(--text-primary);vertical-align:middle;position:sticky;left:0;z-index:5;width:100px}.time-slot{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:10px}.time-separator{font-size:8px;color:var(--text-secondary)}.period-cell{padding:8px 6px;text-align:center;vertical-align:middle;border-right:1px solid var(--border-color);min-height:60px;position:relative;background:var(--card-bg);width:120px;overflow:hidden}.period-cell:last-child{border-right:none}.period-cell.has-class{background:var(--section-bg);border-left:3px solid var(--text-primary)}.period-cell.has-class:hover{background:var(--hover-bg);transform:scale(1.01);box-shadow:var(--shadow-sm);z-index:5}.period-cell.no-class{background:var(--section-bg);color:var(--text-disabled);opacity:.6}.period-cell.break-cell{background:#f8fafccc!important;border-left:3px solid var(--primary-color)!important;opacity:1}.break-info{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%}.period-info{display:flex;flex-direction:column;gap:4px;align-items:center}.subject-name{font-size:11px;font-weight:700;color:var(--text-primary);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.faculty-name{font-size:9px;color:var(--text-secondary);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.class-info{font-size:8px;color:var(--text-primary);font-weight:600;background:#1e293b1a;padding:1px 4px;border-radius:3px;border:1px solid rgba(30,41,59,.2);white-space:nowrap}.room-info{font-size:8px;color:var(--text-secondary);font-weight:500;display:flex;align-items:center;gap:2px;justify-content:center}.no-period{font-size:14px;color:var(--text-disabled);font-weight:300}@media(max-width:1200px){.timetable-table{min-width:550px;font-size:11px}.day-column-header,.period-cell{width:100px}}@media(max-width:768px){.timetable-table{min-width:500px;font-size:10px}.time-column-header{width:80px}.day-column-header{width:85px}.period-cell{padding:6px 4px;min-height:50px;width:85px}.subject-name{font-size:10px}.faculty-name{font-size:8px}.timetable-table-wrapper{max-height:300px}.timetable-table th{padding:8px 4px;font-size:9px}.time-cell{padding:8px 4px;width:80px}}.empty-schedule{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:var(--text-secondary);background:var(--section-bg);border-radius:12px;border:1px dashed var(--border-color)}.empty-schedule i{font-size:48px;margin-bottom:16px;opacity:.3}.exam-room-badge{background:#ffffff1a!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:4px 8px;border-radius:4px;border:1px solid rgba(255,255,255,.2)!important;color:var(--text-primary)!important;font-weight:600;font-size:12px}.finance-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.finance-summary-card{background:var(--card-bg);padding:1.5rem;border-radius:16px;border:1px solid var(--border-color);display:flex;flex-direction:column;gap:.5rem;box-shadow:var(--shadow-sm);transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden}.finance-summary-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--border-hover),transparent);opacity:.5}.finance-summary-card:hover{box-shadow:var(--shadow-md);border-color:var(--border-hover);transform:translateY(-2px)}.finance-summary-card .label{font-size:.85rem;color:var(--text-secondary);font-weight:600}.finance-summary-card .value{font-size:1.8rem;font-weight:800;color:var(--text-primary)}.finance-summary-card .value.outstanding{color:var(--error-color)}.finance-summary-card .value.collected{color:var(--success-color)}.invoices-list{display:flex;flex-direction:column;gap:1rem}.invoice-profile-card{background:var(--card-bg);padding:1.5rem;border-radius:16px;border:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;transition:all .2s;box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative}.invoice-profile-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--border-hover),transparent);opacity:.3}.invoice-profile-card:hover{border-color:var(--primary-color);transform:translate(4px);box-shadow:var(--shadow-md);background:var(--hover-bg)}.inv-main h3{font-size:1.1rem;color:var(--text-primary);margin-bottom:.5rem}.inv-badge{display:inline-block;padding:.25rem .6rem;border-radius:6px;background:rgba(var(--warning-color-rgb, 245, 158, 11),.1);color:var(--warning-color);border:1px solid rgba(var(--warning-color-rgb, 245, 158, 11),.2);font-size:.7rem;font-weight:800;text-transform:uppercase;margin-bottom:.8rem}.inv-meta{display:flex;gap:1.5rem;font-size:.85rem;color:var(--text-secondary)}.inv-meta i{margin-right:.4rem;color:var(--text-muted)}.inv-financials{display:flex;gap:2rem;text-align:right}.fin-item{display:flex;flex-direction:column;gap:.2rem}.fin-item .l{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.fin-item .v{font-size:1.1rem;font-weight:700;color:var(--text-primary)}.fin-item .v.success{color:var(--success-color)}.fin-item .v.danger{color:var(--error-color)}@media(max-width:768px){.invoice-profile-card{flex-direction:column;align-items:flex-start;gap:1.5rem}.inv-financials{width:100%;justify-content:space-between;text-align:left}}.subjects-faculty-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.subject-fac-card{background:#ffffffb3;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 6px #0000000d}.subject-fac-card:hover{transform:translateY(-8px);background:#ffffffd9;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;border-color:#94a3b84d}.sub-info{padding:1.5rem;flex-grow:1}.sub-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.sub-code{font-size:.75rem;font-weight:700;color:#64748b;background:#94a3b81a;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);padding:4px 10px;border-radius:6px;letter-spacing:.5px;border:1px solid rgba(148,163,184,.2)}.sub-type-badge{font-size:.65rem;font-weight:800;text-transform:uppercase;padding:2px 8px;border-radius:4px;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);border:1px solid rgba(255,255,255,.3)}.sub-type-badge.theory{background:#2563eb1a;color:#2563eb;border-color:#2563eb33}.sub-type-badge.practical{background:#db27771a;color:#db2777;border-color:#db277733}.sub-name{font-size:1.125rem;font-weight:700;color:#1e293b;margin:0 0 .5rem;line-height:1.3}.sub-meta{font-size:.875rem;color:#64748b;display:flex;gap:1rem}.sub-meta i{color:#94a3b8}.fac-info{padding:1rem 1.5rem;background:#f8fafc99;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);border-top:1px solid rgba(241,245,249,.5);display:flex;align-items:center;gap:1rem}.fac-avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.8);box-shadow:0 2px 4px #0000001a}.fac-details{display:flex;flex-direction:column}.fac-label{font-size:.7rem;color:#94a3b8;font-weight:600;text-transform:uppercase;margin-bottom:2px}.fac-name{font-size:.938rem;font-weight:700;color:#334155}.empty-subjects{text-align:center;padding:4rem 2rem;background:#f8fafc99;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:16px;border:2px dashed rgba(226,232,240,.5)}.empty-subjects i{font-size:3rem;color:#cbd5e1;margin-bottom:1rem}.empty-subjects p{color:#64748b;font-size:1.1rem}.notes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.note-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;padding:16px;display:flex;gap:12px;align-items:center;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-sm)}.note-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--border-hover)}.note-icon{width:48px;height:48px;border-radius:12px;background:#ef44441a;color:#ef4444;display:flex;align-items:center;justify-content:center;font-size:1.25rem;transition:all .3s ease}.note-card:hover .note-icon{background:#ef4444;color:#fff;transform:rotate(-5deg) scale(1.1)}.note-details{flex:1;min-width:0}.note-sub-label{font-size:.7rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;display:block}.note-title{font-size:1rem;margin:2px 0;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}.note-footer{display:flex;justify-content:space-between;align-items:center;margin-top:4px}.note-meta{font-size:.75rem;color:var(--text-secondary)}.note-action{font-size:.75rem;color:var(--text-secondary);font-weight:600;text-decoration:none;display:flex;align-items:center;gap:4px;transition:color .2s ease}.note-action:hover{color:var(--text-primary);text-decoration:underline}.empty-notes{text-align:center;padding:3rem;background:var(--section-bg);border-radius:16px;border:2px dashed var(--border-color)}.empty-notes i{font-size:2.5rem;color:var(--text-muted);margin-bottom:1rem;display:block}.empty-notes p{color:var(--text-secondary);font-size:1rem}.results-table-container{overflow-x:auto;border-radius:12px;border:1px solid var(--border-color);background:var(--card-bg);margin-top:1rem;box-shadow:var(--shadow-sm)}.results-table{width:100%;border-collapse:collapse;font-size:.9rem}.results-table th{background:var(--section-bg);padding:1rem;text-align:left;font-weight:700;color:var(--text-primary);border-bottom:2px solid var(--border-color);white-space:nowrap}.results-table td{padding:1.25rem 1rem;border-bottom:1px solid var(--border-color);color:var(--text-primary);vertical-align:middle}.subject-cell{display:flex;flex-direction:column;gap:4px}.subject-cell .sub-name-text{font-weight:700;color:var(--text-primary);margin:0;font-size:1rem}.subject-cell .sub-code-text{font-size:.75rem;color:var(--text-secondary);background:var(--section-bg);padding:2px 8px;border-radius:4px;width:fit-content;border:1px solid var(--border-color)}.grade-pill{padding:6px 12px;border-radius:20px;font-weight:800;font-size:.8rem;display:inline-flex;align-items:center;gap:6px;justify-content:center;min-width:45px}.grade-pill.pass{background:rgba(var(--success-color-rgb),.1);color:var(--success-color);border:1px solid rgba(var(--success-color-rgb),.2)}.grade-pill.fail{background:rgba(var(--error-color-rgb),.1);color:var(--error-color);border:1px solid rgba(var(--error-color-rgb),.2)}.marks-cell{font-weight:600}.marks-cell .obtained{color:var(--text-primary);font-size:1.1rem}.marks-cell .total{color:var(--text-muted);font-size:.85rem}.exam-details-cell{display:flex;flex-direction:column;gap:4px}.exam-details-cell .exam-name{font-weight:700;color:var(--text-primary);font-size:.95rem}.exam-meta-sub{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.exam-type-badge{font-size:.65rem;font-weight:800;padding:1px 6px;border-radius:4px;background:var(--section-bg);color:var(--text-secondary);text-transform:uppercase;border:1px solid var(--border-color)}.exam-sem,.exam-year{font-size:.7rem;color:var(--text-muted);font-weight:500}.remarks-cell{font-style:italic;color:var(--text-secondary);font-size:.85rem;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.remarks-cell:hover{white-space:normal;overflow:visible;position:relative;z-index:10;background:var(--hover-bg);padding:.5rem;border-radius:4px}.date-cell{color:var(--text-secondary);font-size:.85rem}.notification-filter-tabs{display:flex;gap:12px;margin-bottom:24px;border-bottom:2px solid var(--border-color);padding-bottom:0}.filter-tab{display:flex;align-items:center;gap:8px;padding:12px 24px;background:transparent;border:none;border-bottom:3px solid transparent;color:var(--text-secondary);font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;position:relative;margin-bottom:-2px}.filter-tab:hover{color:var(--primary-color);background:var(--hover-bg)}.filter-tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.filter-tab i{font-size:16px}.tab-badge{background:var(--primary-color);color:#fff;font-size:11px;font-weight:700;padding:2px 8px;border-radius:12px;min-width:20px;text-align:center}.notifications-container{min-height:400px;max-height:600px;overflow-y:auto;padding-right:8px}.notifications-container::-webkit-scrollbar{width:8px}.notifications-container::-webkit-scrollbar-track{background:var(--section-bg);border-radius:4px}.notifications-container::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px;transition:background .3s ease}.notifications-container::-webkit-scrollbar-thumb:hover{background:var(--primary-color)}.notifications-container{scrollbar-width:thin;scrollbar-color:var(--border-color) var(--section-bg)}.notifications-list-profile{display:flex;flex-direction:column;gap:16px}.notification-card-profile{display:flex;gap:16px;padding:20px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;transition:all .3s ease;position:relative}.notification-card-profile:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000001a;border-color:var(--primary-color)}.notification-card-profile.unread{background:linear-gradient(to right,rgba(102,126,234,.05),var(--card-bg));border-left:4px solid var(--primary-color)}.notification-icon-wrapper{flex-shrink:0}.notification-icon-circle{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px}.notification-icon-circle.info{background:#3b82f61a;color:#3b82f6}.notification-icon-circle.success{background:#22c55e1a;color:#22c55e}.notification-icon-circle.warning{background:#f59e0b1a;color:#f59e0b}.notification-icon-circle.error{background:#ef44441a;color:#ef4444}.notification-content-profile{flex:1;min-width:0}.notification-header-row{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px}.notification-title{font-size:16px;font-weight:600;color:var(--text-primary);margin:0;line-height:1.4}.unread-dot{width:10px;height:10px;background:var(--primary-color);border-radius:50%;flex-shrink:0;margin-top:4px;animation:pulse 2s infinite}.notification-message{font-size:14px;color:var(--text-secondary);line-height:1.6;margin:0 0 12px}.notification-meta{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.notification-time{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-secondary)}.notification-time i{font-size:11px}.priority-badge{font-size:11px;font-weight:700;padding:4px 10px;border-radius:12px;text-transform:uppercase;letter-spacing:.5px}.priority-badge.urgent{background:#ef44441a;color:#ef4444}.priority-badge.high{background:#f59e0b1a;color:#f59e0b}.priority-badge.normal{background:#3b82f61a;color:#3b82f6}.empty-notifications-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;text-align:center}.empty-notifications-state h3{font-size:20px;font-weight:600;color:var(--text-primary);margin:16px 0 8px}.empty-notifications-state p{font-size:14px;color:var(--text-secondary);margin:0;max-width:400px}@media(max-width:768px){.notification-filter-tabs{gap:8px}.filter-tab{padding:10px 16px;font-size:13px}.filter-tab span{display:none}.filter-tab i{font-size:18px}.notification-card-profile{flex-direction:column;gap:12px;padding:16px}.notification-icon-circle{width:40px;height:40px;font-size:18px}.notification-title{font-size:15px}.notification-message{font-size:13px}.notification-meta{flex-direction:column;align-items:flex-start;gap:8px}}.comm-results-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.5rem;margin-top:1.5rem}.comm-result-card{background:var(--card-bg);border-radius:20px;border:1px solid var(--border-color);padding:1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:1.5rem}.comm-result-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg);border-color:var(--primary-color)}.card-top{display:flex;align-items:center;gap:1rem;position:relative}.icon-box{width:48px;height:48px;background:rgba(var(--primary-color-rgb),.1);color:var(--primary-color);border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;border:1px solid rgba(var(--primary-color-rgb),.2)}.title-box{flex:1}.title-box h4{margin:0;font-size:1rem;font-weight:700;color:var(--text-primary);line-height:1.4}.title-box span{font-size:.8rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.status-badge{position:absolute;top:-8px;right:-8px;padding:4px 10px;border-radius:8px;font-size:.7rem;font-weight:800}.status-badge.passed{background:rgba(var(--success-color-rgb),.1);color:var(--success-color);border:1px solid rgba(var(--success-color-rgb),.2)}.status-badge.failed{background:rgba(var(--error-color-rgb),.1);color:var(--error-color);border:1px solid rgba(var(--error-color-rgb),.2)}.card-marks{background:var(--section-bg);padding:1.25rem;border-radius:16px;border:1px solid var(--border-color)}.mark-main{display:flex;align-items:baseline;gap:4px;margin-bottom:.75rem;justify-content:center}.mark-main .score{font-size:2.25rem;font-weight:800;color:var(--text-primary)}.mark-main .total{font-size:1.1rem;color:var(--text-muted);font-weight:600}.progress-mini{height:8px;background:var(--section-bg);border-radius:4px;overflow:hidden;border:1px solid var(--border-color)}.progress-mini .fill{height:100%;border-radius:4px;transition:width 1s ease-out}.card-footer{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;color:var(--text-secondary)}.view-answers-btn{background:transparent;color:var(--primary-color);border:1px solid var(--primary-color);padding:6px 14px;border-radius:10px;font-weight:600;cursor:pointer;transition:all .2s;font-size:.85rem}.view-answers-btn:hover{background:var(--primary-color);color:var(--text-white)}.result-summary-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem;background:var(--section-bg);padding:1.5rem;border-radius:16px;border:1px solid var(--border-color)}.res-stat label{display:block;font-size:.75rem;color:var(--text-secondary);font-weight:600;text-transform:uppercase;margin-bottom:4px}.res-stat span{font-weight:800;color:var(--text-primary)}.answers-review-section h4{margin-bottom:1.5rem;font-size:1.1rem;font-weight:700;color:var(--text-primary)}.answers-list{display:flex;flex-direction:column;gap:1.25rem}.answer-item{padding:1.25rem;border-radius:16px;border:1px solid var(--border-color);transition:all .2s;background:var(--card-bg)}.answer-item.correct{border-color:rgba(var(--success-color-rgb),.3);background:rgba(var(--success-color-rgb),.05)}.answer-item.wrong{border-color:rgba(var(--error-color-rgb),.3);background:rgba(var(--error-color-rgb),.05)}.profile-upload-modal{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.profile-upload-content{background:var(--card-bg);border-radius:16px;border:1px solid var(--border-color);box-shadow:var(--shadow-xl);max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.profile-upload-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border-color);background:var(--section-bg)}.profile-upload-header h3{margin:0;font-size:1.25rem;font-weight:700;color:var(--text-primary)}.profile-upload-header button{background:none;border:none;font-size:1.5rem;color:var(--text-secondary);cursor:pointer;padding:.5rem;border-radius:8px;transition:all .2s;width:40px;height:40px;display:flex;align-items:center;justify-content:center}.profile-upload-header button:hover{background:var(--hover-bg);color:var(--text-primary);transform:scale(1.1)}.profile-upload-body{padding:1.5rem;overflow-y:auto;flex:1}.q-num{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;color:var(--text-white);flex-shrink:0}.q-num.correct{background:var(--success-color)}.q-num.wrong{background:var(--error-color)}.answer-item.correct .q-num{background:#10b981}.answer-item.wrong .q-num{background:#ef4444}.q-content p{font-size:1rem;font-weight:600;color:#1e293b;line-height:1.5;margin-bottom:1rem}.user-choice label,.correct-choice label{display:block;font-size:.7rem;color:#64748b;text-transform:uppercase;font-weight:600;margin-bottom:4px}.user-choice span,.correct-choice span{font-weight:700;font-size:.95rem}@media(max-width:600px){.result-summary-row{grid-template-columns:1fr 1fr!important}}.login-page{position:fixed;top:0;left:0;width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;z-index:9999}.error-page{position:relative}.error-background{position:absolute;top:0;left:0;width:100%;height:100%;background-image:url(/nodata.jpg);background-size:cover;background-position:center;background-repeat:no-repeat;z-index:-1}.error-container{display:flex;align-items:center;justify-content:center;width:100%;height:100%;position:relative;z-index:1;padding:2rem}.error-card{background:#0009;border-radius:24px;padding:3rem 2.5rem;box-shadow:0 25px 50px -12px #0000004d;border:1px solid rgba(255,255,255,.1);text-align:center;max-width:500px;width:100%;animation:errorSlideUp .6s ease-out}@keyframes errorSlideUp{0%{opacity:0;transform:translateY(40px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.error-title{font-size:5rem;font-weight:800;color:#fff;margin-bottom:1rem;line-height:1;text-shadow:2px 2px 8px rgba(0,0,0,.5)}.error-subtitle{font-size:1.5rem;font-weight:700;color:#fff;margin-bottom:1rem;text-shadow:1px 1px 4px rgba(0,0,0,.3)}.error-message{font-size:1rem;color:#e5e7eb;margin-bottom:2rem;line-height:1.6;text-shadow:1px 1px 4px rgba(0,0,0,.3)}.error-button{display:inline-flex;align-items:center;justify-content:center;gap:.75rem;padding:1rem 2rem;background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 14px #3b82f64d;min-height:50px}.error-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #3b82f666}.error-button:active{transform:translateY(0)}.error-button i{font-size:1.125rem}@media(max-width:480px){.error-container{padding:1rem}.error-card{padding:2rem 1.5rem;border-radius:20px}.error-title{font-size:4rem}.error-subtitle{font-size:1.25rem}.error-message{font-size:.9rem}.error-button{width:100%;padding:.875rem 1.5rem}}[data-theme=dark] .error-card{background:#1e293bf2;border:1px solid rgba(255,255,255,.1)}[data-theme=dark] .error-title{color:#f9fafb}[data-theme=dark] .error-subtitle{color:#e5e7eb}[data-theme=dark] .error-message{color:#9ca3af}.login-background{position:absolute;top:0;left:0;width:100%;height:100%;background-image:url(/login.avif);background-size:cover;background-position:center;background-repeat:no-repeat;filter:brightness(.7);z-index:-2}.login-background:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:#0000004d;z-index:-1}.login-container{width:100%;max-width:480px;padding:var(--spacing-lg);z-index:1}.login-card{background:#fffffff2;border-radius:20px;padding:2rem;box-shadow:0 25px 50px -12px #00000040;border:1px solid rgba(255,255,255,.2);animation:slideUp .6s ease-out;min-width:400px}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.login-header{text-align:center;margin-bottom:1.5rem}.institute-logo{width:70px;height:70px;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;box-shadow:0 10px 25px #3b82f64d;padding:8px}.institute-logo .logo-image{width:100%;height:100%;object-fit:contain;border-radius:50%}.login-header h1{font-size:1.875rem;font-weight:700;color:#1e293b;margin-bottom:.5rem;text-shadow:none}.login-header p{color:#64748b;font-size:1rem;text-shadow:none}.login-form{margin-bottom:var(--spacing-lg)}.login-error{background:#ef44441a;border:1px solid var(--error-color);color:var(--error-color);padding:var(--spacing-md);border-radius:var(--radius-lg);margin-bottom:var(--spacing-lg);display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);font-weight:500}.login-error i{font-size:var(--font-size-base)}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-weight:600;color:#334155;margin-bottom:.5rem;font-size:.875rem;line-height:1.4;text-shadow:none}.input-wrapper{position:relative;display:flex;align-items:center}.input-wrapper input{width:100%;padding:.875rem 3rem .875rem 1rem;border:1px solid rgba(255,255,255,.3);border-radius:12px;font-size:.95rem;background:#ffffffe6;color:#1e293b;transition:all .2s ease;line-height:1.5;min-height:48px;box-sizing:border-box;text-align:left;letter-spacing:normal}.input-wrapper input::placeholder{color:#94a3b8}.input-wrapper input:focus{outline:none;border-color:#3b82f6;background:#fff;box-shadow:0 0 0 4px #3b82f61a}.input-wrapper input.error{border-color:#ef4444}.input-wrapper input.error:focus{box-shadow:0 0 0 3px #ef44441a}.password-toggle{position:absolute;right:1.25rem;background:none;border:none;padding:.25rem;border-radius:6px;transition:color .2s ease;z-index:3;display:flex;align-items:center;justify-content:center;width:32px;height:32px}.password-toggle{position:absolute;right:1rem;background:none;border:none;color:#64748b;cursor:pointer;padding:.25rem;display:flex!important;align-items:center;justify-content:center;width:32px;height:32px;z-index:10}.password-toggle:hover{color:#334155}.password-toggle:disabled{opacity:.5;cursor:not-allowed}.error-message{display:block;color:#ef4444;font-size:.75rem;margin-top:.5rem;font-weight:500;line-height:1.4}.form-options{display:flex;justify-content:space-between;align-items:center;margin:1.25rem 0;gap:1rem}.remember-me{display:flex;align-items:center;cursor:pointer;font-size:.875rem;color:#475569}.remember-me input[type=checkbox]{display:none}.checkmark{width:18px;height:18px;border:2px solid #cbd5e1;border-radius:4px;margin-right:.5rem;position:relative;transition:all .2s ease;background:#f8fafc}.remember-me input[type=checkbox]:checked+.checkmark{background:#3b82f6;border-color:#3b82f6}.remember-me input[type=checkbox]:checked+.checkmark:after{content:"";font-family:"Font Awesome 6 Free";font-weight:900;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:10px}.forgot-password-link{background:none;border:none;color:#3b82f6;font-size:.875rem;cursor:pointer;text-decoration:none;transition:color .2s ease;font-weight:500}.forgot-password-link:hover{color:#1d4ed8;text-decoration:underline}.forgot-password-link:disabled{opacity:.5;cursor:not-allowed}.login-button{width:100%;padding:.875rem 1.5rem;background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;border:none;border-radius:12px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:0 4px 14px #3b82f64d;min-height:48px}.login-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #3b82f666}.login-button:disabled{opacity:.7;cursor:not-allowed;transform:none}.login-button i.fa-spinner{animation:spin 1s linear infinite}.login-spinner{width:16px;height:16px;position:relative}.login-spinner .spinner-ring{position:absolute;width:100%;height:100%;border:2px solid transparent;border-top-color:currentColor;border-radius:50%;animation:spin 1s linear infinite}.login-footer{text-align:center;padding-top:1.25rem;border-top:1px solid #cbd5e1}.login-footer p{color:#64748b;font-size:.875rem;margin:0}.register-link{color:#3b82f6;font-weight:600;text-decoration:none;margin-left:.25rem;transition:color .2s ease}.register-link:hover{color:#1d4ed8;text-decoration:underline}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .3s ease-out}.modal-content{background:var(--bg-primary);border-radius:var(--radius-xl);width:90%;max-width:450px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-2xl);animation:modalSlideUp .4s ease-out}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(50px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-xl) var(--spacing-xl) var(--spacing-lg);border-bottom:1px solid var(--border-color)}.modal-header h2{font-size:var(--font-size-2xl);font-weight:700;color:var(--text-primary);margin:0}.modal-close{background:none;border:none;color:var(--text-muted);font-size:var(--font-size-lg);cursor:pointer;padding:var(--spacing-sm);border-radius:var(--radius-sm);transition:all var(--transition-normal);display:flex;align-items:center;justify-content:center;width:36px;height:36px}.modal-close:hover:not(:disabled){background:var(--hover-bg);color:var(--text-primary)}.modal-close:disabled{opacity:.5;cursor:not-allowed}.modal-body{padding:var(--spacing-xl)}.modal-body p{color:var(--text-secondary);margin-bottom:var(--spacing-xl);line-height:1.6}.modal-actions{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-xl)}.btn-secondary{flex:1;padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);font-size:var(--font-size-base);font-weight:500;cursor:pointer;transition:all var(--transition-normal)}.btn-secondary:hover:not(:disabled){background:var(--hover-bg);border-color:var(--text-muted)}.btn-primary{flex:1;padding:var(--spacing-md) var(--spacing-lg);background:var(--gradient-secondary);color:var(--text-white);border:none;border-radius:var(--radius-lg);font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:all var(--transition-normal);display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm)}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-primary:disabled{opacity:.7;cursor:not-allowed;transform:none}@media(max-width:480px){.login-container{padding:1rem;max-width:95%}.login-card{padding:2rem 1.5rem;border-radius:16px;min-width:unset;width:100%}.institute-logo{width:60px;height:60px;padding:6px}.institute-logo .logo-image{width:100%;height:100%}.login-header h1{font-size:1.5rem}.login-header,.form-group{margin-bottom:1.5rem}.input-wrapper input{padding:1rem 3.5rem;min-height:50px;font-size:.95rem}.input-icon{left:1.25rem;font-size:.9rem}.password-toggle{right:1.25rem;width:36px;height:36px}.form-options{flex-direction:column;gap:1rem;align-items:flex-start;margin:1.5rem 0}.login-button{padding:1rem 1.25rem;min-height:50px;font-size:.95rem}.modal-content{width:95%;margin:1rem}.modal-header,.modal-body{padding:1.5rem}.modal-actions{flex-direction:column}}@media(min-width:481px)and (max-width:768px){.login-container{max-width:450px}}[data-theme=dark] .login-card{background:#1e293bf2;border:1px solid rgba(255,255,255,.1)}[data-theme=dark] .input-wrapper input{background:var(--bg-secondary);border-color:var(--border-color)}[data-theme=dark] .modal-content{background:var(--bg-secondary)}@media(prefers-contrast:high){.login-card{background:#fff;border:2px solid #000000}.input-wrapper input{border:2px solid #000000}.login-button{background:#000;border:2px solid #000000}}@media(prefers-reduced-motion:reduce){.login-card,.modal-content{animation:none}.login-button:hover:not(:disabled){transform:none}.btn-primary:hover:not(:disabled){transform:none}}.module-drawer-card{background:var(--card-bg);padding:1.5rem;border-radius:16px;border:1.5px solid var(--border-color);cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;gap:1rem;position:relative;overflow:hidden}[data-theme=dark] .module-drawer-card{background:#1a1a1a;border-color:#ffffff1a}.module-drawer-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md);border-color:var(--primary-color)!important}[data-theme=dark] .module-drawer-card:hover{background:#222;box-shadow:0 10px 25px -5px #000c}.module-icon-wrapper{width:45px;height:45px;border-radius:12px;background:#3b82f61a;display:flex;align-items:center;justify-content:center}[data-theme=dark] .module-icon-wrapper{background:#3b82f626}.module-icon-wrapper i{color:var(--primary-color);font-size:1.2rem}.module-drawer-card:hover .module-icon-wrapper{background:var(--primary-color)!important}.module-content h4{margin:0;font-size:1.1rem;font-weight:700;color:var(--text-primary)}[data-theme=dark] .module-content h4{color:#f1f5f9}.module-content p{margin:.3rem 0 0;font-size:.85rem;color:var(--text-muted);line-height:1.4}[data-theme=dark] .module-content p{color:#94a3b8}.module-action{margin-top:auto;display:flex;align-items:center;color:var(--primary-color);font-size:.85rem;font-weight:600}.module-action i{margin-left:.5rem;font-size:.75rem}.authority-matrix-dashboard{margin-top:2rem;background:var(--card-bg);border-radius:20px;padding:2rem;box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}[data-theme=dark] .authority-matrix-dashboard{background:#1a1a1a;border-color:#ffffff1a}.matrix-header{margin-bottom:2rem}.matrix-header h3{margin:0;font-size:1.5rem;font-weight:800;color:var(--text-primary);display:flex;align-items:center;gap:.75rem}[data-theme=dark] .matrix-header h3{color:#f1f5f9}.matrix-header h3 i{color:var(--primary-color)}.matrix-header p{color:var(--text-muted);margin-top:.5rem;font-size:.95rem}[data-theme=dark] .matrix-header p{color:#94a3b8}.matrix-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.matrix-module-card{background:var(--bg-secondary);border-radius:16px;overflow:hidden;border:1px solid var(--border-color);transition:transform .2s,box-shadow .2s}[data-theme=dark] .matrix-module-card{background:#0f0f0f;border-color:#ffffff1a}.matrix-module-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}[data-theme=dark] .matrix-module-card:hover{background:#1a1a1a;box-shadow:0 12px 20px -8px #000c}.module-banner{background:var(--primary-color);color:#fff;padding:.75rem 1.25rem;display:flex;align-items:center;gap:.75rem;font-weight:700;font-size:.8rem;letter-spacing:.5px}.module-roles{padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.role-capability{background:var(--card-bg);padding:1rem;border-radius:12px;border:1px solid var(--border-color)}[data-theme=dark] .role-capability{background:#1a1a1a;border-color:#ffffff1a}.role-head{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;color:var(--text-primary)}[data-theme=dark] .role-head{color:#f1f5f9}.role-dot{width:8px;height:8px;background:var(--success-color);border-radius:50%}.task-tags{display:flex;flex-wrap:wrap;gap:.4rem}.task-tag{font-size:.75rem;background:#3b82f61a;color:var(--primary-color);padding:.2rem .6rem;border-radius:6px;font-weight:600;border:1px solid rgba(59,130,246,.2)}[data-theme=dark] .task-tag{background:#3b82f626;border-color:#3b82f64d}.no-assignment{font-size:.85rem;color:var(--text-muted);text-align:center;padding:1rem;font-style:italic}[data-theme=dark] .no-assignment{color:#64748b}.empty-matrix{grid-column:1 / -1;text-align:center;padding:4rem 2rem;color:var(--text-muted)}.empty-matrix i{font-size:3rem;margin-bottom:1rem;opacity:.5}.empty-matrix h4{color:var(--text-primary);margin-bottom:.5rem}[data-theme=dark] .empty-matrix h4{color:#f1f5f9}.matrix-loading{padding:4rem;text-align:center;color:var(--text-muted);font-weight:600}[data-theme=dark] .matrix-loading{color:#94a3b8}.timetable-widget{background:var(--card-bg);border-radius:16px;border:1px solid var(--border-color);padding:1.5rem;margin-bottom:2rem;box-shadow:var(--shadow-sm)}[data-theme=dark] .timetable-widget{background:#1e293b66;border-color:#4755694d}.timetable-widget.loading{text-align:center;padding:3rem;color:var(--text-muted)}.timetable-widget .widget-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--border-color)}.timetable-widget .widget-header h3{font-size:1.3rem;font-weight:800;margin:0 0 .3rem;color:var(--text-primary);display:flex;align-items:center;gap:.5rem}.timetable-widget .widget-header h3 i{color:var(--primary-color)}.timetable-widget .widget-header p{margin:0;font-size:.85rem;color:var(--text-muted)}.timetable-widget .today-badge{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;padding:.5rem 1rem;border-radius:8px;font-size:.85rem;font-weight:700;display:flex;align-items:center;gap:.5rem}.timetable-table-container{overflow-x:auto;border-radius:12px;border:1px solid var(--border-color)}.timetable-table{width:100%;border-collapse:collapse;font-size:.9rem}.timetable-table thead th{background:var(--bg-secondary);color:var(--text-primary);font-weight:800;padding:1rem;text-align:center;border-bottom:2px solid var(--border-color);position:sticky;top:0;z-index:10}[data-theme=dark] .timetable-table thead th{background:#1e293b99}.timetable-table thead th.time-column{background:#1e293b;color:#fff;min-width:100px;text-align:left}[data-theme=dark] .timetable-table thead th.time-column{background:#0f172a}.timetable-table thead th.today-column{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1e40af;position:relative}[data-theme=dark] .timetable-table thead th.today-column{background:linear-gradient(135deg,#3b82f633,#2563eb4d);color:#93c5fd}.timetable-table thead th i{color:#f59e0b;margin-right:.3rem;font-size:.8rem}.timetable-table thead th .today-marker{font-size:.65rem;font-weight:700;text-transform:uppercase;color:#2563eb;margin-top:.2rem}[data-theme=dark] .timetable-table thead th .today-marker{color:#60a5fa}.timetable-table tbody tr{border-bottom:1px solid var(--border-color);transition:background-color .2s}.timetable-table tbody tr:hover{background:var(--hover-bg)}.timetable-table tbody tr:last-child{border-bottom:none}.timetable-table td{padding:.75rem;border-right:1px solid var(--border-color);vertical-align:top}.timetable-table td:last-child{border-right:none}.timetable-table .time-cell{background:var(--bg-secondary);font-weight:700;color:var(--text-primary);min-width:100px;position:sticky;left:0;z-index:5;border-right:2px solid var(--border-color)}[data-theme=dark] .timetable-table .time-cell{background:#1e293b99}.timetable-table .time-range{display:flex;flex-direction:column;gap:.2rem}.timetable-table .start-time{font-size:.95rem;color:var(--primary-color)}.timetable-table .separator{color:var(--text-muted);font-size:.75rem}.timetable-table .end-time{font-size:.85rem;color:var(--text-muted)}.timetable-table .period-cell{min-width:180px;max-width:220px;background:var(--card-bg);height:100%}[data-theme=dark] .timetable-table .period-cell{background:#1e293b4d}.timetable-table .period-cell.today-cell{background:linear-gradient(135deg,#eff6ff,#dbeafe)}[data-theme=dark] .timetable-table .period-cell.today-cell{background:linear-gradient(135deg,#3b82f626,#2563eb33)}.timetable-table .period-cell.empty-cell{background:var(--bg-secondary)}[data-theme=dark] .timetable-table .period-cell.empty-cell{background:#0f172a4d}.timetable-table .period-content{display:flex;flex-direction:column;gap:.4rem;padding:.2rem}.timetable-table .subject-name{font-weight:700;color:var(--text-primary);font-size:.95rem;line-height:1.3;word-wrap:break-word}.timetable-table .class-info{font-size:.78rem;color:var(--text-secondary);display:flex;align-items:flex-start;gap:.4rem;line-height:1.4}.timetable-table .class-info i{color:var(--primary-color);font-size:.75rem;margin-top:.15rem;flex-shrink:0}.timetable-table .class-detail{flex:1;word-wrap:break-word;font-weight:500}.timetable-table .room-info{font-size:.75rem;color:var(--text-muted);display:flex;align-items:center;gap:.4rem;background:var(--bg-tertiary);padding:.25rem .5rem;border-radius:4px;width:fit-content}[data-theme=dark] .timetable-table .room-info{background:#4755694d}.timetable-table .room-info i{color:var(--text-muted);font-size:.7rem}.timetable-table .break-info{font-size:.85rem;font-weight:600;color:#f59e0b;display:flex;align-items:center;gap:.5rem;justify-content:center;padding:.5rem}.timetable-table .break-info i{font-size:1rem}.timetable-table .empty-period{text-align:center;color:var(--text-muted);font-size:1.5rem;font-weight:300;padding:.5rem;opacity:.3}@media(max-width:1024px){.timetable-table{font-size:.85rem}.timetable-table thead th{padding:.75rem .5rem;font-size:.8rem}.timetable-table td{padding:.6rem .5rem}.timetable-table .period-cell{min-width:120px}}@media(max-width:768px){.timetable-widget{padding:1rem}.timetable-widget .widget-header{flex-direction:column;gap:.75rem}.timetable-widget .today-badge{font-size:.75rem;padding:.4rem .8rem;align-self:flex-start}.timetable-table{font-size:.8rem}.timetable-table thead th{padding:.6rem .4rem;font-size:.75rem}.timetable-table td{padding:.5rem .4rem}.timetable-table .period-cell{min-width:100px}.timetable-table .time-cell{min-width:80px}.timetable-table .subject-name{font-size:.8rem}.timetable-table .class-info,.timetable-table .room-info{font-size:.7rem}}.exam-schedule-widget{background:var(--card-bg);border-radius:20px;border:1px solid var(--border-color);padding:1.5rem;margin-bottom:2rem;box-shadow:var(--shadow-sm);overflow:hidden}[data-theme=dark] .exam-schedule-widget{background:#1a1a1a;border-color:#ffffff1a}.exam-schedule-widget.loading{padding:4rem;text-align:center;color:var(--text-muted);font-weight:600}.exam-schedule-widget .widget-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1.2rem;border-bottom:1px solid var(--border-color)}[data-theme=dark] .exam-schedule-widget .widget-header{border-bottom-color:#ffffff1a}.exam-schedule-widget .header-info{display:flex;gap:1.2rem;align-items:center}.exam-schedule-widget .icon-wrapper{width:48px;height:48px;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.2rem;box-shadow:0 4px 12px #f59e0b33}.exam-schedule-widget .header-info h3{margin:0 0 .2rem;font-size:1.25rem;font-weight:800;color:var(--text-primary)}[data-theme=dark] .exam-schedule-widget .header-info h3{color:#f1f5f9}.exam-schedule-widget .header-info p{margin:0;font-size:.85rem;color:var(--text-muted)}[data-theme=dark] .exam-schedule-widget .header-info p{color:#94a3b8}.exam-schedule-widget .status-badge{background:#f59e0b1a;color:#d97706;padding:.5rem 1rem;border-radius:100px;font-size:.75rem;font-weight:800;letter-spacing:.5px;border:1px solid rgba(245,158,11,.2)}[data-theme=dark] .exam-schedule-widget .status-badge{background:#f59e0b26;border-color:#f59e0b4d}.exam-schedule-widget .exam-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.2rem}.exam-schedule-widget .exam-card{background:var(--bg-secondary);border-radius:14px;padding:1.2rem;border:1px solid var(--border-color);transition:all .2s ease}[data-theme=dark] .exam-schedule-widget .exam-card{background:#0f0f0f;border-color:#ffffff1a}.exam-schedule-widget .exam-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:#f59e0b}[data-theme=dark] .exam-schedule-widget .exam-card:hover{background:#1a1a1a;box-shadow:0 8px 24px #000c}.exam-schedule-widget .exam-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.exam-schedule-widget .exam-date{font-size:.8rem;font-weight:700;color:var(--text-muted);display:flex;align-items:center;gap:.4rem}[data-theme=dark] .exam-schedule-widget .exam-date{color:#94a3b8}.exam-schedule-widget .days-badge{padding:.3rem .6rem;border-radius:6px;font-size:.7rem;font-weight:700;background:var(--bg-tertiary);color:var(--text-secondary)}[data-theme=dark] .exam-schedule-widget .days-badge{background:#4755694d;color:#cbd5e1}.exam-schedule-widget .days-badge.urgent{background:#ef44441a;color:#ef4444}[data-theme=dark] .exam-schedule-widget .days-badge.urgent{background:#ef444426}.exam-schedule-widget .exam-details h4{margin:0 0 .4rem;font-size:1rem;font-weight:800;color:var(--text-primary)}[data-theme=dark] .exam-schedule-widget .exam-details h4{color:#f1f5f9}.exam-schedule-widget .exam-meta{font-size:.8rem;color:var(--text-muted);margin-bottom:1.2rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}[data-theme=dark] .exam-schedule-widget .exam-meta{color:#94a3b8}.exam-schedule-widget .exam-footer{display:flex;gap:1rem;padding-top:1rem;border-top:1px dashed var(--border-color)}[data-theme=dark] .exam-schedule-widget .exam-footer{border-top-color:#ffffff1a}.exam-schedule-widget .footer-item{display:flex;align-items:center;gap:.4rem;font-size:.75rem;font-weight:600;color:var(--text-secondary)}[data-theme=dark] .exam-schedule-widget .footer-item{color:#cbd5e1}.exam-schedule-widget .footer-item i{color:var(--text-muted)}[data-theme=dark] .exam-schedule-widget .footer-item i{color:#64748b}.exam-schedule-widget .empty-state{padding:3rem;text-align:center;background:var(--bg-secondary);border-radius:14px;border:1px dashed var(--border-color)}[data-theme=dark] .exam-schedule-widget .empty-state{background:#0f0f0f;border-color:#ffffff1a}.exam-schedule-widget .empty-icon{font-size:2.5rem;color:var(--text-muted);margin-bottom:1rem;opacity:.3}.exam-schedule-widget .empty-state h4{margin-bottom:.5rem;color:var(--text-secondary)}[data-theme=dark] .exam-schedule-widget .empty-state h4{color:#cbd5e1}.exam-schedule-widget .empty-state p{color:var(--text-muted);max-width:400px;margin:0 auto;font-size:.9rem}[data-theme=dark] .exam-schedule-widget .empty-state p{color:#94a3b8}.admin-profile-widget{background:var(--card-bg, #ffffff);border:1px solid var(--border-color, rgba(0, 0, 0, .05));border-radius:16px;overflow:hidden;box-shadow:0 10px 25px -5px #0000000d,0 8px 10px -6px #0000000d;margin-bottom:30px;transition:transform .3s ease,box-shadow .3s ease;position:relative;border:1px solid rgba(255,255,255,.1)}.admin-profile-widget:hover{transform:translateY(-2px);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}[data-theme=dark] .admin-profile-widget{background:#1a1c23;border-color:#ffffff0d;box-shadow:0 10px 15px -3px #0000004d}.admin-profile-widget .profile-header-banner{height:80px;background:linear-gradient(135deg,#4f46e5,#3b82f6,#2dd4bf);position:relative;opacity:.9;overflow:hidden}.admin-profile-widget .profile-header-banner:after{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.2) 1px,transparent 1px);background-size:20px 20px}[data-theme=dark] .admin-profile-widget .profile-header-banner{background:linear-gradient(135deg,#3730a3,#1e40af,#134e4a);opacity:.8}.admin-profile-widget .profile-content-wrapper{padding:0 20px 20px;position:relative}.admin-profile-widget .profile-avatar-container{position:relative;width:80px;height:80px;margin-top:-40px;margin-bottom:16px;border-radius:50%;padding:6px;background:var(--card-bg, #fff);box-shadow:0 4px 20px #00000026;border:4px solid var(--card-bg, #fff)}[data-theme=dark] .admin-profile-widget .profile-avatar-container{background:#1a1c23;border-color:#1a1c23}.admin-profile-widget .profile-avatar-img,.admin-profile-widget .profile-avatar-fallback{width:100%;height:100%;border-radius:50%;object-fit:cover;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:800;color:#fff;background:linear-gradient(135deg,#6366f1,#3b82f6)}.admin-profile-widget .profile-status-indicator{position:absolute;bottom:12px;right:12px;width:20px;height:20px;border-radius:50%;border:4px solid var(--card-bg, #fff);background:#10b981;box-shadow:0 0 10px #10b98180}[data-theme=dark] .admin-profile-widget .profile-status-indicator{border-color:#1a1c23}.admin-profile-widget .profile-info-grid{display:flex;flex-direction:column;gap:24px}.admin-profile-widget .profile-main-info{margin-bottom:8px}.admin-profile-widget .profile-name{margin:0 0 8px;font-size:1.4rem;font-weight:800;color:var(--text-primary, #1e293b);letter-spacing:-.02em}[data-theme=dark] .admin-profile-widget .profile-name{color:#f8fafc}.admin-profile-widget .profile-badges{display:flex;gap:10px;flex-wrap:wrap}.admin-profile-widget .badge{padding:6px 14px;border-radius:50px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:inline-flex;align-items:center;box-shadow:0 2px 4px #0000000d}.admin-profile-widget .role-badge{background:#4f46e51a;color:#4f46e5;border:1px solid rgba(79,70,229,.2)}.admin-profile-widget .level-badge{background:#0d94881a;color:#0d9488;border:1px solid rgba(13,148,136,.2)}.admin-profile-widget .profile-details-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;background:#00000005;padding:16px;border-radius:12px;border:1px solid rgba(0,0,0,.03)}[data-theme=dark] .admin-profile-widget .profile-details-list{background:#ffffff05;border-color:#ffffff0d}.admin-profile-widget .detail-item{display:flex;align-items:center;gap:16px;transition:transform .2s ease}.admin-profile-widget .detail-item:hover{transform:translate(4px)}.admin-profile-widget .detail-icon{width:36px;height:36px;border-radius:10px;background:#fff;color:#64748b;display:flex;align-items:center;justify-content:center;font-size:1rem;box-shadow:0 4px 6px #0000000d;border:1px solid rgba(0,0,0,.05)}[data-theme=dark] .admin-profile-widget .detail-icon{background:#2d3748;color:#cbd5e1;border-color:#ffffff0d;box-shadow:0 4px 6px #0003}.admin-profile-widget .detail-text{display:flex;flex-direction:column}.admin-profile-widget .detail-label{font-size:.65rem;color:var(--text-muted, #64748b);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.admin-profile-widget .detail-value{font-size:.95rem;color:var(--text-primary, #1e293b);font-weight:600}[data-theme=dark] .admin-profile-widget .detail-value{color:#e2e8f0}.admin-profile-widget .profile-description-box{background:linear-gradient(to right,#4f46e50d,#3b82f60d);padding:20px;border-radius:12px;border-left:5px solid #4f46e5;position:relative}[data-theme=dark] .admin-profile-widget .profile-description-box{background:linear-gradient(to right,#4f46e51a,#3b82f61a);border-left-color:#6366f1}.admin-profile-widget .desc-header{display:flex;align-items:center;gap:10px;font-size:.9rem;font-weight:700;color:#4f46e5;margin-bottom:10px;text-transform:uppercase;letter-spacing:.05em}[data-theme=dark] .admin-profile-widget .desc-header{color:#818cf8}.admin-profile-widget .desc-text{margin:0;font-size:.9rem;color:var(--text-secondary, #475569);line-height:1.6;font-style:italic}[data-theme=dark] .admin-profile-widget .desc-text{color:#94a3b8}.admin-profile-widget.skeleton{padding:32px}.admin-profile-widget .profile-image-skeleton{width:120px;height:120px;border-radius:50%;background-color:var(--border-color, #e2e8f0);margin-bottom:24px}[data-theme=dark] .admin-profile-widget .profile-image-skeleton{background-color:#2d3748}.admin-profile-widget .profile-details-skeleton{display:flex;flex-direction:column;gap:16px}.admin-profile-widget .pulse{animation:admin-profile-pulse 1.5s infinite ease-in-out}.admin-profile-widget .line{height:14px;background-color:var(--border-color, #e2e8f0);border-radius:7px}[data-theme=dark] .admin-profile-widget .line{background-color:#2d3748}.admin-profile-widget .w-40{width:40%}.admin-profile-widget .w-60{width:60%}.admin-profile-widget .w-80{width:80%}@keyframes admin-profile-pulse{0%{opacity:.5}50%{opacity:1}to{opacity:.5}}@media(max-width:640px){.admin-profile-widget .profile-details-list{grid-template-columns:1fr;padding:16px}.admin-profile-widget .profile-content-wrapper{padding:0 20px 24px}.admin-profile-widget .profile-name{font-size:1.5rem}}.admin-dashboard{padding:1rem;padding-top:0;margin-top:0;background:var(--bg-primary);min-height:100vh}[data-theme=dark] .admin-dashboard{background:#0a0a0a}.page-header{margin-bottom:1.25rem;padding:1.5rem;background:linear-gradient(135deg,#1e3a8a,#3b82f6);border-radius:12px;border:none;box-shadow:0 10px 25px -5px #3b82f680;position:relative;overflow:hidden;color:#fff}[data-theme=dark] .page-header{background:linear-gradient(135deg,#1a1a1a,#2a2a2a);box-shadow:0 10px 25px -5px #000c;border:1px solid rgba(255,255,255,.1)}.page-header:before{content:"";position:absolute;top:-50%;right:-10%;width:300px;height:300px;background:#ffffff1a;border-radius:50%;filter:blur(40px)}[data-theme=dark] .page-header:before{background:#3b82f61a}.page-header h1{font-size:1.75rem;font-weight:800;color:#fff;margin-bottom:.25rem;position:relative;z-index:1}.page-header p{color:#ffffffe6;font-size:1rem;margin:0;position:relative;z-index:1}.kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:1.25rem}.kpi-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;padding:1rem;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-sm)}[data-theme=dark] .kpi-card{background:#1a1a1a;border-color:#ffffff1a;box-shadow:0 4px 6px -1px #00000080}.kpi-card:hover{border-color:var(--primary-color);transform:translateY(-5px);box-shadow:var(--shadow-md)}[data-theme=dark] .kpi-card:hover{background:#222;box-shadow:0 20px 25px -5px #000c;border-color:#3b82f6}.kpi-header{display:flex;align-items:flex-start;gap:1rem;margin-bottom:.75rem}.kpi-icon{width:40px;height:40px;background:#3b82f61a;border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0}[data-theme=dark] .kpi-icon{background:#3b82f626}.kpi-icon i{color:var(--primary-color);font-size:1.125rem}.kpi-content{flex:1}.kpi-value{font-size:1.5rem;font-weight:700;color:var(--text-primary);line-height:1;margin-bottom:.25rem}[data-theme=dark] .kpi-value{color:#f1f5f9}.kpi-title{font-size:.875rem;color:var(--text-secondary);font-weight:500}.kpi-trend{display:flex;align-items:center;gap:.375rem;font-size:.75rem;font-weight:500}.kpi-trend.positive{color:var(--success-color)}.kpi-trend.negative{color:var(--error-color)}.dashboard-content{display:flex;flex-direction:column;gap:1.25rem}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.dashboard-section{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;overflow:hidden;transition:background-color var(--transition-normal),border-color var(--transition-normal)}[data-theme=dark] .dashboard-section{background:#1a1a1a;border-color:#ffffff1a}.section-header{display:flex;align-items:center;justify-content:space-between;padding:.6rem .8rem;border-bottom:1px solid var(--border-color);background:var(--bg-secondary);transition:background-color var(--transition-normal),border-color var(--transition-normal)}[data-theme=dark] .section-header{background:#0f0f0f;border-bottom-color:#ffffff1a}.section-header h2{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0}[data-theme=dark] .section-header h2{color:#f1f5f9}.section-count{font-size:.75rem;color:var(--text-muted);background:var(--bg-tertiary);padding:.25rem .5rem;border-radius:4px}.view-all-btn{font-size:.75rem;color:var(--primary-color);background:none;border:none;cursor:pointer;padding:.25rem .5rem;border-radius:4px;transition:background-color .2s ease}.view-all-btn:hover{background:var(--primary-color-light)}.live-classes-table{overflow-x:auto}.live-classes-table table{width:100%;border-collapse:collapse}.live-classes-table th{background:var(--bg-secondary);padding:.75rem 1rem;text-align:left;font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.025em;border-bottom:1px solid var(--border-color);transition:background-color var(--transition-normal),border-color var(--transition-normal)}[data-theme=dark] .live-classes-table th{background:#0f0f0f;color:#94a3b8;border-bottom-color:#ffffff1a}.live-classes-table td{padding:.6rem .75rem;font-size:.8125rem;color:var(--text-primary);border-bottom:1px solid var(--border-color)}[data-theme=dark] .live-classes-table td{color:#e2e8f0;border-bottom-color:#ffffff0d}.live-classes-table tr:last-child td{border-bottom:none}.live-classes-table tr:hover{background:var(--hover-bg)}[data-theme=dark] .live-classes-table tr:hover{background:#ffffff08}.subject-cell{font-weight:500}.time-cell{font-family:Courier New,monospace;font-size:.8125rem}.status-badge{display:inline-flex;align-items:center;padding:.25rem .5rem;border-radius:4px;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.status-badge.live{background:#10b9811a;color:var(--success-color)}.pending-actions{padding:0}.action-item{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--border-color);transition:background-color .2s ease}[data-theme=dark] .action-item{border-bottom-color:#ffffff0d}.action-item:last-child{border-bottom:none}.action-item:hover{background:var(--hover-bg)}[data-theme=dark] .action-item:hover{background:#ffffff08}.action-content{flex:1}.action-type{font-size:.875rem;font-weight:500;color:var(--text-primary);margin-bottom:.25rem}[data-theme=dark] .action-type{color:#e2e8f0}.action-description{font-size:.75rem;color:var(--text-secondary)}[data-theme=dark] .action-description{color:#94a3b8}.action-priority{padding:.25rem .5rem;border-radius:4px;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.action-priority.high{background:#ef44441a;color:var(--error-color)}.action-priority.medium{background:#f59e0b1a;color:var(--warning-color)}.action-priority.low{background:#6b72801a;color:var(--text-muted)}.activity-log{padding:0}.activity-item{display:flex;align-items:flex-start;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--border-color);transition:background-color .2s ease}[data-theme=dark] .activity-item{border-bottom-color:#ffffff0d}.activity-item:hover{background:var(--hover-bg)}[data-theme=dark] .activity-item:hover{background:#ffffff08}.activity-content{flex:1}.activity-action{font-size:.875rem;font-weight:500;color:var(--text-primary);margin-bottom:.25rem}[data-theme=dark] .activity-action{color:#e2e8f0}.activity-details{font-size:.75rem;color:var(--text-secondary)}[data-theme=dark] .activity-details{color:#94a3b8}.activity-meta{text-align:right;flex-shrink:0;margin-left:1rem}.activity-user{font-size:.75rem;font-weight:500;color:var(--text-primary);margin-bottom:.125rem}[data-theme=dark] .activity-user{color:#cbd5e1}.activity-time{font-size:.6875rem;color:var(--text-muted)}[data-theme=dark] .activity-time{color:#64748b}@media(max-width:1200px){.kpi-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:1024px){.dashboard-grid{grid-template-columns:1fr}}@media(max-width:768px){.admin-dashboard{padding:0}.kpi-grid{grid-template-columns:1fr;gap:1rem}.kpi-card{padding:1rem}.dashboard-content{gap:1.5rem}.section-header{padding:1rem}.action-item,.activity-item{padding:.875rem 1rem}.live-classes-table th,.live-classes-table td{padding:.75rem .5rem;font-size:.8125rem}}@media(max-width:480px){.kpi-card{padding:.875rem}.kpi-header{gap:.75rem}.kpi-icon{width:36px;height:36px}.kpi-value{font-size:1.5rem}.kpi-title{font-size:.8125rem}}.module-drawer-card{transition:all .3s cubic-bezier(.4,0,.2,1)!important}.module-drawer-card:hover{transform:translateY(-8px) scale(1.02);border-color:#3b82f6!important;box-shadow:0 20px 25px -5px #3b82f61a,0 10px 10px -5px #3b82f60a!important}.module-drawer-card:hover h4{color:#2563eb}.module-drawer-card:hover .module-icon-wrapper{background:#2563eb!important}.module-drawer-card:hover .module-icon-wrapper i{color:#fff!important}.role-badge{font-size:.8rem;font-weight:800;color:#60a5fa;text-transform:uppercase;letter-spacing:1px;display:inline-block}[data-theme=dark] .role-badge{color:#93c5fd}.system-status-badge{background:var(--card-bg);padding:.8rem 1.5rem;border-radius:12px;border:1px solid var(--border-color);display:flex;align-items:center;gap:1rem}[data-theme=dark] .system-status-badge{background:#1e293b99;border-color:#4755694d}.status-label{font-size:.75rem;color:var(--text-muted)}.status-value{font-size:.9rem;font-weight:700;color:var(--success-color)}.hod-dashboard-section{margin-bottom:2.5rem}.hod-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;background:linear-gradient(135deg,#1e293b,#334155);padding:1.5rem;border-radius:16px;color:#fff}[data-theme=dark] .hod-header{background:linear-gradient(135deg,#1a1a1a,#2a2a2a);border:1px solid rgba(255,255,255,.1)}.hod-subtitle{font-size:.8rem;opacity:.8;text-transform:uppercase;letter-spacing:1px;display:block}.hod-title{margin:.5rem 0 0;font-size:1.8rem;color:#fff}.hod-description{margin-top:.5rem;opacity:.9}.hod-stats{text-align:right}.hod-percentage{font-size:3rem;font-weight:800;line-height:1;color:#fff}.hod-stats-label{opacity:.8;margin-top:.5rem}.exam-results-section{grid-column:1 / -1}.exam-header{display:flex;justify-content:space-between;margin-bottom:1rem;padding:1.5rem;border-bottom:1px solid var(--border-color)}.exam-header h3{margin:0;color:var(--text-primary)}.pending-count{font-size:.9rem;color:var(--text-muted)}.exam-table{width:100%}.exam-table thead tr{text-align:left;color:var(--text-muted)}.exam-table th{padding:.75rem 1rem;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.exam-table tbody tr{border-top:1px solid var(--border-color);transition:background-color .2s ease}.exam-table tbody tr:hover{background:var(--hover-bg)}.exam-table td{padding:12px 1rem}.exam-title-cell{display:flex;flex-direction:column;gap:4px}.exam-title{font-weight:600;color:var(--text-primary)}.exam-id{font-size:.75rem;color:var(--text-muted)}.exam-date{color:var(--text-muted)}.result-count{display:flex;align-items:center;gap:6px;color:var(--text-secondary)}.result-count i{color:var(--text-muted)}.avg-marks{font-weight:600;padding:4px 8px;border-radius:4px;font-size:.875rem}.avg-marks.high{color:var(--success-color);background:#10b9811a}.avg-marks.medium{color:var(--warning-color);background:#f59e0b1a}.avg-marks.low{color:var(--error-color);background:#ef44441a}.status-badge.published{background:#10b9811a;color:var(--success-color)}.status-badge.active{background:#6366f11a;color:#6366f1}.status-badge.draft{background:var(--bg-tertiary);color:var(--text-muted)}[data-theme=dark] .status-badge.published{background:#10b98126}[data-theme=dark] .status-badge.active{background:#6366f126}.publish-btn{background:var(--primary-color);border:none;padding:6px 12px;border-radius:6px;cursor:pointer;color:#fff;font-weight:600;transition:all .2s ease}.publish-btn:hover{background:var(--primary-dark);transform:translateY(-1px)}.published-status{color:var(--success-color);font-weight:600;font-size:.9rem;display:flex;align-items:center;gap:4px}.draft-status{color:var(--text-muted);font-size:.9rem}.no-data-message{color:var(--text-muted);text-align:center;padding:2rem}.modules-heading{margin-bottom:1.5rem;font-size:1.4rem;font-weight:800;color:var(--text-primary)}.modules-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;margin-bottom:3rem}.no-modules-message{grid-column:1/-1;text-align:center;padding:4rem;background:var(--bg-secondary);border-radius:16px;border:1px dashed var(--border-color)}[data-theme=dark] .no-modules-message{background:#1a1a1a;border-color:#ffffff1a}.no-modules-message i{font-size:3rem;color:var(--text-muted);margin-bottom:1rem;opacity:.3}.no-modules-message h3{color:var(--text-primary);margin-bottom:.5rem}[data-theme=dark] .no-modules-message h3{color:#f1f5f9}.no-modules-message p{color:var(--text-muted)}[data-theme=dark] .no-modules-message p{color:#94a3b8}.activity-section{padding:0}.activity-section .section-header{padding:1.5rem;border-bottom:1px solid var(--border-color)}[data-theme=dark] .activity-section .section-header{background:#0f0f0f;border-bottom-color:#ffffff1a}.activity-section .section-header h2{font-size:1.2rem;font-weight:800}.activity-section .activity-log{padding:0}.activity-section .activity-item{display:flex;gap:1rem;padding:1rem 1.5rem;transition:background-color .2s ease}.activity-section .activity-item.with-border{border-bottom:1px solid var(--border-color)}[data-theme=dark] .activity-section .activity-item.with-border{border-bottom-color:#ffffff0d}.activity-section .activity-item:hover{background:var(--hover-bg)}[data-theme=dark] .activity-section .activity-item:hover{background:#ffffff08}.activity-icon{color:var(--text-muted);font-size:1rem;width:24px;display:flex;align-items:center;justify-content:center}[data-theme=dark] .activity-icon{color:#64748b}.activity-section .activity-content{flex:1}.activity-section .activity-action{font-size:.9rem;font-weight:600;color:var(--text-primary);margin-bottom:4px}[data-theme=dark] .activity-section .activity-action{color:#e2e8f0}.activity-section .activity-details{font-size:.75rem;color:var(--text-muted)}[data-theme=dark] .activity-section .activity-details{color:#94a3b8}@media(max-width:768px){.module-drawer-card{padding:1.25rem!important}.hod-header{flex-direction:column;text-align:center;gap:1.5rem}.hod-stats{text-align:center}.exam-table{font-size:.85rem}.exam-table th,.exam-table td{padding:.5rem}.modules-grid{grid-template-columns:1fr}.page-header{flex-direction:column;gap:1rem}.system-status-badge{width:100%}}.attendance-management-container{padding:2.5rem;background:#f8fafc;min-height:calc(100vh - 80px)}[data-theme=dark] .attendance-management-container{background:#0a0a0a}.attendance-header.premium-card{background:linear-gradient(135deg,#0f172a,#1e293b);padding:2.5rem;border-radius:20px;color:#fff;display:flex;justify-content:space-between;align-items:center;box-shadow:0 10px 30px #0000001a;margin-bottom:3rem}[data-theme=dark] .attendance-header.premium-card{background:linear-gradient(135deg,#1a1a1a,#2a2a2a);box-shadow:0 10px 30px #000c;border:1px solid rgba(255,255,255,.1)}.today-badge{background:#ffffff1a;padding:12px 20px;border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;gap:12px;border:1px solid rgba(255,255,255,.1);font-weight:600}[data-theme=dark] .today-badge{background:#ffffff0d;border-color:#ffffff1a}.section-title{display:flex;align-items:center;gap:15px;margin-bottom:2rem}.section-title h2{font-size:1.5rem;color:#1e293b;margin:0}[data-theme=dark] .section-title h2{color:#f1f5f9}.badge{background:#e2e8f0;color:#475569;padding:4px 12px;border-radius:20px;font-size:.8rem;font-weight:700}[data-theme=dark] .badge{background:#ffffff1a;color:#cbd5e1}.attendance-schedule-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.loading-state,.empty-state{background:#fff;padding:4rem 2rem;border-radius:20px;text-align:center;border:1px solid #e2e8f0}[data-theme=dark] .loading-state,[data-theme=dark] .empty-state{background:#1a1a1a;border-color:#ffffff1a}.empty-state i{font-size:4rem;color:#cbd5e1;margin-bottom:1.5rem;opacity:.3}[data-theme=dark] .empty-state i{color:#64748b}.empty-state h2{font-size:1.5rem;color:#475569;margin-bottom:.75rem}[data-theme=dark] .empty-state h2{color:#cbd5e1}.empty-state p{color:#94a3b8;font-size:1rem}[data-theme=dark] .empty-state p{color:#64748b}.loading-state .spinner{width:50px;height:50px;border:4px solid #e2e8f0;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}[data-theme=dark] .loading-state .spinner{border-color:#ffffff1a;border-top-color:#60a5fa}.loading-state p{color:#64748b;font-size:1rem}.schedule-card{background:#fff;padding:1.5rem;border-radius:20px;border:1px solid #e2e8f0;transition:all .3s ease;display:flex;flex-direction:column;gap:1rem}[data-theme=dark] .schedule-card{background:#1a1a1a;border-color:#ffffff1a}.schedule-card:hover{transform:translateY(-5px);box-shadow:0 12px 25px #0000000d}[data-theme=dark] .schedule-card:hover{box-shadow:0 12px 25px #000c;background:#222}.schedule.btn-edit-attendance{background:#eef2ff;color:#4f46e5;border:1px solid #c7d2fe;padding:10px 18px;border-radius:8px;font-weight:700;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px}[data-theme=dark] .schedule.btn-edit-attendance{background:#4f46e526;border-color:#4f46e54d}.btn-edit-attendance:hover{background:#4f46e5;color:#fff}.schedule-card.completed{background:#f0fdf4;border-color:#bbf7d0}[data-theme=dark] .schedule-card.completed{background:#10b9811a;border-color:#10b9814d}.slot-info{display:flex;justify-content:space-between;align-items:center}.period-badge{background:#f1f5f9;color:#1e293b;width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:800}[data-theme=dark] .period-badge{background:#ffffff1a;color:#f1f5f9}.completed .period-badge{background:#10b981;color:#fff}.time{font-size:.9rem;color:#64748b;font-weight:600}[data-theme=dark] .time{color:#94a3b8}.class-details h3{font-size:1.2rem;margin-bottom:5px;color:#1e293b}[data-theme=dark] .class-details h3{color:#f1f5f9}.class-details p{color:#64748b;font-size:.95rem;margin:0}[data-theme=dark] .class-details p{color:#cbd5e1}.sub-info{font-size:.8rem!important;color:#94a3b8!important;margin-top:4px!important;font-weight:500}[data-theme=dark] .sub-info{color:#64748b!important}.card-footer{margin-top:auto;padding-top:1rem;border-top:1px solid #f1f5f9}[data-theme=dark] .card-footer{border-top-color:#ffffff1a}.btn-mark{width:100%;padding:12px;border-radius:12px;background:#f8fafc;border:1px solid #e2e8f0;color:#4f46e5;font-weight:700;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:8px}[data-theme=dark] .btn-mark{background:#ffffff0d;border-color:#ffffff1a;color:#60a5fa}.btn-mark:hover{background:#4f46e5;color:#fff}[data-theme=dark] .btn-mark:hover{background:#4f46e5;border-color:#4f46e5}.status-label.success{color:#10b981;font-weight:700;display:flex;align-items:center;gap:8px;justify-content:center}.marking-header{background:#fff;padding:2rem;border-radius:20px;box-shadow:0 4px 15px #00000008;display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}[data-theme=dark] .marking-header{background:#1a1a1a;box-shadow:0 4px 15px #00000080;border:1px solid rgba(255,255,255,.1)}.back-btn{background:transparent;border:none;color:#64748b;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:10px}[data-theme=dark] .back-btn{color:#94a3b8}.active-context h2{font-size:1.6rem;margin-bottom:5px;color:#1e293b}[data-theme=dark] .active-context h2{color:#f1f5f9}.active-context p{color:#64748b;margin:0;font-size:.9rem}[data-theme=dark] .active-context p{color:#94a3b8}.live-stats{display:flex;gap:20px}.stat-box{text-align:center;background:#f8fafc;padding:10px 25px;border-radius:15px;border:1px solid #e2e8f0}[data-theme=dark] .stat-box{background:#ffffff0d;border-color:#ffffff1a}.stat-box .label{display:block;font-size:.75rem;font-weight:700;color:#64748b;text-transform:uppercase}[data-theme=dark] .stat-box .label{color:#94a3b8}.stat-box .value{font-size:1.8rem;font-weight:900}[data-theme=dark] .stat-box .value{color:#f1f5f9}.value.success{color:#10b981}.value.danger{color:#ef4444}.marking-controls{display:grid;grid-template-columns:1fr 1fr auto;gap:2rem;padding:2rem;margin-bottom:2rem;align-items:flex-end;background:#fff;border-radius:20px;box-shadow:0 4px 15px #00000008}[data-theme=dark] .marking-controls{background:#1a1a1a;box-shadow:0 4px 15px #00000080;border:1px solid rgba(255,255,255,.1)}.control-group label{display:block;font-size:.85rem;font-weight:700;color:#475569;margin-bottom:.8rem}[data-theme=dark] .control-group label{color:#cbd5e1}.control-group input{width:100%;padding:12px 18px;border-radius:12px;border:1px solid #e2e8f0;background:#f8fafc;transition:all .2s}[data-theme=dark] .control-group input{background:#ffffff0d;border-color:#ffffff1a;color:#f1f5f9}.control-group input:focus{border-color:#4f46e5;background:#fff}[data-theme=dark] .control-group input:focus{background:#ffffff14;border-color:#60a5fa}.quick-actions button{background:#eef2ff;color:#4f46e5;border:1px solid #c7d2fe;padding:12px 20px;border-radius:12px;font-weight:700;cursor:pointer}[data-theme=dark] .quick-actions button{background:#4f46e526;border-color:#4f46e54d;color:#818cf8}.student-list-container{background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 4px 15px #00000008;margin-bottom:80px}[data-theme=dark] .student-list-container{background:#1a1a1a;box-shadow:0 4px 15px #00000080;border:1px solid rgba(255,255,255,.1)}.attendance-table{width:100%;border-collapse:collapse}.attendance-table th{background:#f8fafc;text-align:left;padding:1.2rem;color:#64748b;font-weight:700;font-size:.85rem;text-transform:uppercase;border-bottom:2px solid #f1f5f9}[data-theme=dark] .attendance-table th{background:#0f0f0f;color:#94a3b8;border-bottom-color:#ffffff1a}.attendance-table td{padding:1.2rem;border-bottom:1px solid #f1f5f9;color:#475569}[data-theme=dark] .attendance-table td{border-bottom-color:#ffffff0d;color:#e2e8f0}.roll-col{font-weight:600;color:#64748b}[data-theme=dark] .roll-col{color:#94a3b8}.name-col strong{color:#1e293b}[data-theme=dark] .name-col strong{color:#f1f5f9}.absent-row{background:#fef2f2}[data-theme=dark] .absent-row{background:#ef44441a}.status-toggle{display:flex;background:#f1f5f9;padding:4px;border-radius:12px;width:fit-content}[data-theme=dark] .status-toggle{background:#ffffff0d}.toggle-btn{padding:8px 18px;border-radius:9px;border:none;font-weight:700;cursor:pointer;transition:all .2s;background:transparent;color:#64748b}[data-theme=dark] .toggle-btn{color:#94a3b8}.toggle-btn.active{background:#fff;box-shadow:0 2px 8px #0000001a}[data-theme=dark] .toggle-btn.active{background:#1a1a1a;box-shadow:0 2px 8px #00000080}.toggle-btn.active:first-child{color:#10b981}.toggle-btn.active:last-child{color:#ef4444}.remark-col input{width:100%;border:none;background:transparent;padding:5px;font-size:.9rem;color:#475569}[data-theme=dark] .remark-col input{color:#cbd5e1}.sticky-footer{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);background:#fff;padding:1.2rem 2.5rem;border-radius:100px;box-shadow:0 15px 40px #0003;display:flex;gap:1.5rem;z-index:1000;width:fit-content;border:1px solid #e2e8f0}[data-theme=dark] .sticky-footer{background:#1a1a1a;box-shadow:0 15px 40px #000c;border-color:#ffffff1a}.btn-save-final{background:#10b981;color:#fff;padding:12px 30px;border-radius:100px;border:none;font-weight:800;cursor:pointer;font-size:1rem;display:flex;align-items:center;gap:12px;transition:all .3s ease}.btn-save-final:hover{background:#059669;transform:scale(1.05)}.btn-secondary{background:#f8fafc;color:#475569;padding:12px 30px;border-radius:100px;border:1px solid #e2e8f0;font-weight:700;cursor:pointer;font-size:1rem;transition:all .3s ease}[data-theme=dark] .btn-secondary{background:#ffffff0d;border-color:#ffffff1a;color:#cbd5e1}.btn-secondary:hover{background:#e2e8f0;border-color:#cbd5e1}[data-theme=dark] .btn-secondary:hover{background:#ffffff1a;border-color:#fff3}.results-management{padding:0}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card-mini{background:var(--bg-primary);padding:1.5rem;border-radius:20px;border:1px solid var(--border-color);display:flex;gap:1rem;align-items:center;transition:all .2s ease}[data-theme=dark] .stat-card-mini{background:#1a1a1a;border-color:#ffffff1a}.stat-card-mini:hover{transform:translateY(-5px);box-shadow:0 12px 24px #00000014}[data-theme=dark] .stat-card-mini:hover{box-shadow:0 12px 24px #00000080}.stat-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon-primary{background:#6366f11a;color:#6366f1}.stat-icon-success{background:#10b9811a;color:#10b981}.stat-icon-warning{background:#f59e0b1a;color:#f59e0b}.stat-icon-danger{background:#ef44441a;color:#ef4444}.stat-content{display:flex;flex-direction:column;gap:2px}.stat-label{font-size:.75rem;color:var(--text-secondary);display:block}[data-theme=dark] .stat-label{color:#94a3b8}.stat-value{font-size:1.25rem;color:var(--text-primary);font-weight:700}[data-theme=dark] .stat-value{color:#f1f5f9}.page-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:2rem;gap:2rem;padding:1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;box-shadow:0 4px 6px #0000001a;transition:box-shadow var(--transition-normal)}[data-theme=dark] .page-header{background:linear-gradient(135deg,#4c5fd5,#5a3a7d);box-shadow:0 4px 6px #0000004d}.page-title h1{font-size:1.75rem;font-weight:600;color:#fff;margin-bottom:.25rem}.page-title p{color:#ffffffe6;font-size:.875rem;margin:0}.page-actions{display:flex;gap:.75rem;flex-shrink:0}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:1px solid transparent;text-decoration:none}.btn-primary{background:#fff;color:#667eea;border-color:#fff}.btn-primary:hover{background:#ffffffe6;border-color:#ffffffe6;transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.btn-secondary{background:#fff3;color:#fff;border-color:#ffffff4d}.btn-secondary:hover{background:#ffffff4d;color:#fff;border-color:#ffffff80;transform:translateY(-1px)}.filters-section{background:var(--card-bg);border:1px solid var(--border-color);border-radius:20px;padding:1.5rem;margin-bottom:2rem;transition:background-color var(--transition-normal),border-color var(--transition-normal)}[data-theme=dark] .filters-section{background:#1a1a1a;border-color:#ffffff1a}.filters-inline{display:flex;align-items:flex-end;gap:1rem;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:.5rem;min-width:150px}.filter-group-search{flex:1;min-width:250px}.filter-group label{font-size:.85rem;font-weight:600;color:var(--text-secondary);display:block}[data-theme=dark] .filter-group label{color:#94a3b8}.filter-select,.filter-group select,.filter-group input{padding:.625rem 1rem;border:1px solid var(--border-color);border-radius:12px;font-size:.875rem;background:var(--bg-secondary);color:var(--text-primary);transition:all .2s ease;outline:none}[data-theme=dark] .filter-select,[data-theme=dark] .filter-group select,[data-theme=dark] .filter-group input{background:#0f0f0f;border-color:#ffffff1a;color:#f1f5f9}[data-theme=dark] .filter-select:hover,[data-theme=dark] .filter-group select:hover,[data-theme=dark] .filter-group input:hover{border-color:#fff3}[data-theme=dark] .filter-select:focus,[data-theme=dark] .filter-group select:focus,[data-theme=dark] .filter-group input:focus{background:#0a0a0a;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.filter-select:focus,.filter-group select:focus,.filter-group input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #2563eb1a;background:var(--bg-primary)}.filter-select:hover,.filter-group select:hover,.filter-group input:hover{border-color:var(--primary-color)}.search-input-wrapper{position:relative;display:flex;align-items:center;width:100%}.search-input-wrapper i{position:absolute;left:12px;color:var(--text-muted);font-size:.875rem;z-index:2;pointer-events:none}[data-theme=dark] .search-input-wrapper i{color:#64748b}.search-icon{position:absolute;left:.75rem;color:var(--text-muted);font-size:.875rem;z-index:2;pointer-events:none}.search-input{width:100%;padding:.625rem 1rem .625rem 2.5rem;border:1px solid var(--border-color);border-radius:12px;font-size:.875rem;background:var(--bg-secondary);color:var(--text-primary);transition:all .2s ease;outline:none}[data-theme=dark] .search-input{background:#0f0f0f;border-color:#ffffff1a;color:#f1f5f9}.search-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #2563eb1a;background:var(--bg-primary)}[data-theme=dark] .search-input:focus{background:#0a0a0a;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.search-input:hover{border-color:var(--primary-color)}[data-theme=dark] .search-input:hover{border-color:#fff3}.btn-reset{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;color:var(--text-secondary);font-size:.875rem;cursor:pointer;transition:all .2s ease;white-space:nowrap;height:fit-content}[data-theme=dark] .btn-reset{background:#0f0f0f;border-color:#ffffff1a;color:#94a3b8}[data-theme=dark] .btn-reset:hover{background:#1a1a1a;border-color:#ef444480;color:#ef4444}.btn-reset:hover{background:var(--hover-bg);color:var(--error-color);border-color:var(--error-color)}.clear-filters-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem .875rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-secondary);font-size:.875rem;cursor:pointer;transition:all .2s ease;height:38px;white-space:nowrap;margin-left:auto}[data-theme=dark] .clear-filters-btn{background:#0f0f0f;border-color:#ffffff1a;color:#94a3b8}[data-theme=dark] .clear-filters-btn:hover{background:#1a1a1a;border-color:#ef444480;color:#ef4444}.clear-filters-btn:hover{background:var(--hover-bg);color:var(--error-color);border-color:var(--error-color)}.results-table-section{background:var(--card-bg);border:1px solid var(--border-color);border-radius:24px;overflow:hidden;transition:background-color var(--transition-normal),border-color var(--transition-normal)}[data-theme=dark] .results-table-section{background:#1a1a1a;border-color:#ffffff1a}.table-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid var(--border-color);background:var(--bg-secondary);transition:background-color var(--transition-normal),border-color var(--transition-normal);flex-wrap:wrap;gap:1rem}[data-theme=dark] .table-header{background:#0f0f0f;border-color:#ffffff0d}.table-header h2{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin:0}[data-theme=dark] .table-header h2{color:#f1f5f9}.table-subtitle{font-size:.85rem;color:var(--text-secondary)}[data-theme=dark] .table-subtitle{color:#94a3b8}.record-count{font-size:.75rem;color:var(--text-muted);background:var(--bg-tertiary);padding:.25rem .5rem;border-radius:4px}.loading-state,.empty-state{padding:4rem 2rem;text-align:center}.loading-state i{font-size:2rem;color:var(--primary-color)}[data-theme=dark] .loading-state i{color:#6366f1}.loading-state p{margin-top:1rem;color:var(--text-secondary)}[data-theme=dark] .loading-state p{color:#94a3b8}.empty-state i{font-size:3rem;color:var(--border-color);margin-bottom:1.5rem;display:block}[data-theme=dark] .empty-state i{color:#ffffff1a}.empty-state h3{color:var(--text-primary);margin-bottom:.5rem}.empty-state p{color:var(--text-secondary);margin-bottom:1.5rem}.results-table{width:100%;border-collapse:collapse;min-width:900px}.results-table th{background:var(--bg-secondary);padding:1.2rem 1.5rem;text-align:left;font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.025em;border-bottom:1px solid var(--border-color);white-space:nowrap;transition:background-color var(--transition-normal),border-color var(--transition-normal)}[data-theme=dark] .results-table th{background:#0f0f0f;border-color:#ffffff0d;color:#94a3b8}.th-actions{text-align:right;padding-right:1.5rem}.results-table td{padding:1.2rem 1.5rem;border-bottom:1px solid var(--border-color);vertical-align:middle;transition:border-color var(--transition-normal)}[data-theme=dark] .results-table td{border-color:#ffffff0d}.results-table tr:last-child td{border-bottom:none}.results-table tr:hover{background:var(--hover-bg)}[data-theme=dark] .results-table tr:hover{background:#ffffff05}.exam-name{font-weight:700;color:var(--text-primary);margin-bottom:4px}[data-theme=dark] .exam-name{color:#f1f5f9}.exam-targets{font-size:.75rem;color:var(--text-secondary);display:flex;gap:4px;flex-wrap:wrap}[data-theme=dark] .exam-targets{color:#94a3b8}.target-badge{background:#0000000d;padding:2px 6px;border-radius:4px;white-space:nowrap}[data-theme=dark] .target-badge{background:#ffffff0d;color:#cbd5e1}.term-year{font-weight:600;color:var(--text-primary);margin-bottom:2px}[data-theme=dark] .term-year{color:#f1f5f9}.term-details{font-size:.8rem;color:var(--text-secondary)}[data-theme=dark] .term-details{color:#94a3b8}.exam-type-badge{font-size:.8rem;font-weight:600;padding:4px 10px;border-radius:8px;background:#6366f11a;color:#6366f1;white-space:nowrap;display:inline-block}.schedule-status{display:flex;align-items:center;gap:8px}.status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-dot-success{background:#10b981}.status-dot-warning{background:#f59e0b}.schedule-status span{font-size:.85rem;color:var(--text-primary)}[data-theme=dark] .schedule-status span{color:#f1f5f9}.td-actions{text-align:right;padding-right:1.5rem}.student-info{display:flex;flex-direction:column;gap:.25rem}.student-name{font-size:.875rem;font-weight:500;color:var(--text-primary)}.student-id{font-size:.75rem;color:var(--text-secondary);font-family:Courier New,monospace}.class-subject-info{display:flex;flex-direction:column;gap:.25rem}.class-name{font-size:.875rem;font-weight:500;color:var(--text-primary)}.subject-name{font-size:.75rem;color:var(--text-secondary)}.exam-type-cell{font-size:.875rem;color:var(--text-primary);white-space:nowrap}.marks-info{display:flex;align-items:center;gap:.25rem;font-family:Courier New,monospace;font-size:.875rem}.obtained{color:var(--primary-color);font-weight:600}.separator{color:var(--text-muted)}.total{color:var(--text-secondary)}.percentage-cell{font-size:.875rem;font-weight:600;color:var(--text-primary);font-family:Courier New,monospace}.grade-badge{display:inline-flex;align-items:center;justify-content:center;padding:.375rem .75rem;border-radius:6px;font-size:.75rem;font-weight:700;min-width:40px;text-align:center}.grade-badge.excellent{background:#10b9811a;color:var(--success-color)}.grade-badge.good{background:#3b82f61a;color:var(--primary-color)}.grade-badge.average{background:#f59e0b1a;color:var(--warning-color)}.grade-badge.below-average{background:#ef44441a;color:var(--error-color)}.grade-badge.poor{background:#6b72801a;color:var(--text-muted)}.status-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border-radius:6px;font-size:.75rem;font-weight:500;white-space:nowrap}.status-badge.success{background:#10b9811a;color:var(--success-color)}.status-badge.warning{background:#f59e0b1a;color:var(--warning-color)}.status-badge.info{background:#3b82f61a;color:var(--primary-color)}.action-buttons{display:flex;gap:.5rem;justify-content:flex-end;align-items:center;flex-wrap:wrap}.action-btn{width:36px;height:36px;border:none;border-radius:10px;background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;font-size:.875rem;flex-shrink:0}.action-btn:hover{background:#6366f11a;color:var(--primary-color)}[data-theme=dark] .action-btn{color:#94a3b8}[data-theme=dark] .action-btn:hover{background:#6366f126;color:#6366f1}.action-btn.view:hover{color:var(--primary-color);background:#3b82f61a}[data-theme=dark] .action-btn.view:hover{color:#3b82f6;background:#3b82f626}.action-btn.edit:hover{color:var(--warning-color);background:#f59e0b1a}[data-theme=dark] .action-btn.edit:hover{color:#f59e0b;background:#f59e0b26}.action-btn.publish:hover{color:var(--success-color);background:#10b9811a}[data-theme=dark] .action-btn.publish:hover{color:#10b981;background:#10b98126}.action-btn.delete:hover{color:#ef4444;background:#ef44441a}[data-theme=dark] .action-btn.delete:hover{color:#ef4444;background:#ef444426}.btn-grade{padding:.5rem 1rem;border:none;border-radius:8px;background:var(--primary-color);color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap;flex-shrink:0}.btn-grade:hover{background:#4f46e5;transform:translateY(-1px);box-shadow:0 4px 8px #6366f14d}[data-theme=dark] .btn-grade{background:#6366f1}[data-theme=dark] .btn-grade:hover{background:#4f46e5;box-shadow:0 4px 8px #6366f166}@media(max-width:1200px){.stats-grid{grid-template-columns:repeat(2,1fr)}.filters-inline{gap:.75rem}.filter-group{min-width:130px}.filter-group-search{min-width:200px}}@media(max-width:768px){.stats-grid{grid-template-columns:1fr}.page-header{flex-direction:column;align-items:stretch;gap:1rem}.page-actions{justify-content:flex-start;flex-wrap:wrap}.filters-section{padding:1rem}.filters-inline{flex-direction:column;align-items:stretch;gap:.75rem}.filter-group,.filter-group-search{min-width:auto;width:100%}.btn-reset{width:100%;justify-content:center}.table-header{flex-direction:column;align-items:flex-start;gap:.5rem}.results-table{min-width:800px}.results-table th,.results-table td{padding:.875rem .75rem;font-size:.8125rem}.action-buttons{gap:.375rem}.action-btn{width:32px;height:32px;font-size:.75rem}.btn-grade{padding:.375rem .75rem;font-size:.8125rem}.student-info,.class-subject-info{gap:.125rem}}.semester-overview{margin:24px 0}.semester-overview h3{margin-bottom:16px;color:var(--text-primary);font-size:20px;font-weight:600}.semester-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}.semester-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;padding:20px;transition:all .2s ease}.semester-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.semester-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.semester-header h4{margin:0;color:var(--text-primary);font-size:18px;font-weight:600}.department-badge{background:rgba(var(--primary-rgb),.1);color:var(--primary-color);padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.semester-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.semester-stat{text-align:center}.semester-stat .stat-value{display:block;font-size:24px;font-weight:700;color:var(--primary-color);margin-bottom:4px}.semester-stat .stat-label{font-size:12px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.exam-type-badge{background:rgba(var(--secondary-rgb, 108, 117, 125),.1);color:var(--secondary-color, #6c757d);padding:4px 8px;border-radius:12px;font-size:12px;font-weight:600}.student-info .student-name{font-weight:600;color:var(--text-primary);margin-bottom:2px}.student-info .student-id{font-size:12px;color:var(--text-secondary)}.bulk-actions{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--bg-secondary);border-radius:8px;border:1px solid var(--border-color);margin-top:12px}.bulk-actions span{font-size:14px;color:var(--text-secondary);margin-right:auto}.btn-success{background:#28a745;color:#fff;border:1px solid #28a745}.btn-success:hover{background:#218838;border-color:#1e7e34}.modal{background:var(--bg-primary);border-radius:12px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 40px #0003}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border-color)}.modal-header h3{margin:0;color:var(--text-primary);font-size:20px;font-weight:600}.modal-close{background:none;border:none;font-size:20px;color:var(--text-secondary);cursor:pointer;padding:4px;border-radius:4px;transition:all .2s ease}.modal-close:hover{background:var(--bg-secondary);color:var(--text-primary)}.modal-body{padding:24px}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid var(--border-color)}@media(max-width:768px){.semester-cards{grid-template-columns:1fr}.semester-stats{grid-template-columns:repeat(4,1fr);gap:12px}.semester-stat .stat-value{font-size:20px}.bulk-actions{flex-direction:column;align-items:stretch;gap:8px}.bulk-actions span{margin-right:0;text-align:center}.modal{width:95%;margin:20px}}[data-theme=dark] .semester-card{background:var(--bg-secondary);border-color:var(--border-dark)}[data-theme=dark] .semester-card:hover{box-shadow:0 4px 12px #ffffff1a}[data-theme=dark] .bulk-actions{background:var(--bg-tertiary);border-color:var(--border-dark)}[data-theme=dark] .modal{background:var(--bg-secondary)}.results-management{--primary-color: #6366f1;--transition-fast: .2s cubic-bezier(.4, 0, .2, 1)}.results-management .btn-primary{background:var(--primary-color);color:#fff;box-shadow:0 4px 12px #6366f133}.results-management .btn-primary:hover{background:#4f46e5;transform:translateY(-2px);box-shadow:0 6px 16px #6366f14d}.results-management .btn-secondary{background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary)}[data-theme=dark] .results-management .btn-secondary{background:#0f0f0f;border-color:#ffffff1a;color:#f1f5f9}.results-management .btn-secondary:hover{background:var(--bg-secondary);border-color:var(--primary-color)}[data-theme=dark] .results-management .btn-secondary:hover{background:#1a1a1a;border-color:#6366f1}.modal-overlay{position:fixed;inset:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;animation:fadeIn .15s ease-out}.modal-content{background:var(--bg-primary);width:95%;max-width:1000px;max-height:90vh;border-radius:20px;box-shadow:0 25px 50px -12px #00000040;display:flex;flex-direction:column;overflow:hidden;animation:slideIn .2s ease-out;border:1px solid var(--border-color)}[data-theme=dark] .modal-content{background:#121212;border-color:#ffffff1a}.modal-header{padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;background:var(--bg-secondary)}[data-theme=dark] .modal-header{background:#0a0a0a}.modal-header h2{margin:0;font-size:1.25rem;font-weight:700;color:var(--text-primary)}.modal-close{background:none;border:none;font-size:1.25rem;color:var(--text-secondary);cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s}.modal-close:hover{background:#ef44441a;color:#ef4444}.modal-body{padding:1.5rem;overflow-y:auto;flex:1}.modal-footer{padding:1rem 1.5rem;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:.75rem;background:var(--bg-secondary)}[data-theme=dark] .modal-footer{background:#0a0a0a}.exam-form-grid{display:grid;grid-template-columns:1fr 400px;gap:1.5rem}@media(max-width:900px){.exam-form-grid{grid-template-columns:1fr}}.form-section-title{font-size:.9rem;font-weight:700;color:var(--text-primary);margin-bottom:1rem;display:flex;align-items:center;gap:8px}.targets-manager{background:var(--bg-secondary);padding:1.25rem;border-radius:12px;border:1px solid var(--border-color);display:flex;flex-direction:column;gap:1rem}[data-theme=dark] .targets-manager{background:#0f0f0f}.target-item{background:var(--bg-primary);padding:1rem;border-radius:10px;border:1px solid var(--border-color);position:relative;transition:border-color .2s}[data-theme=dark] .target-item{background:#1a1a1a}.target-item:hover{border-color:var(--primary-color)}.btn-remove-target{position:absolute;top:8px;right:8px;width:24px;height:24px;background:#ef44441a;color:#ef4444;border:none;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.75rem;transition:all .2s}.btn-remove-target:hover{background:#ef4444;color:#fff}.target-grid-fields{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}@keyframes slideIn{0%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}.overall-dashboard-loading{padding:3rem;text-align:center}.overall-dashboard-loading i{font-size:2rem;color:#2563eb;margin-bottom:1rem}[data-theme=dark] .overall-dashboard-loading i{color:#60a5fa}.overall-dashboard-loading p{color:var(--text-secondary);margin:0}.overall-dashboard-error{padding:3rem;text-align:center;color:#ef4444}.overall-dashboard-error i{font-size:2rem;margin-bottom:1rem;display:block}.overall-dashboard-error p{margin:0}.overall-dashboard-header{margin-bottom:2rem;display:flex;justify-content:space-between;align-items:flex-end}.overall-dashboard-header-content h1{margin-top:.2rem;font-size:1.5rem;font-weight:800;color:var(--text-primary)}[data-theme=dark] .overall-dashboard-header-content h1{color:#f1f5f9}.overall-dashboard-header-content p{color:var(--text-secondary);margin:0}.overall-dashboard-header-badge{font-size:.8rem;font-weight:800;color:#2563eb;text-transform:uppercase;letter-spacing:1px}[data-theme=dark] .overall-dashboard-header-badge{color:#60a5fa}.overall-dashboard-tabs{display:flex;background:#f1f5f9;padding:4px;border-radius:12px;height:fit-content;position:relative;z-index:10}[data-theme=dark] .overall-dashboard-tabs{background:#1a1a1a;border:1px solid rgba(255,255,255,.1)}.overall-dashboard-tab{padding:8px 20px;border:none;border-radius:10px;cursor:pointer;font-size:.9rem;font-weight:700;background:transparent;color:#64748b;transition:all .2s ease;margin-right:4px}.overall-dashboard-tab:last-child{margin-right:0}.overall-dashboard-tab.active{background:#fff;color:#1e293b;box-shadow:0 4px 6px -1px #0000001a}[data-theme=dark] .overall-dashboard-tab{color:#94a3b8}[data-theme=dark] .overall-dashboard-tab.active{background:#2a2a2a;color:#f1f5f9;box-shadow:0 4px 6px -1px #0000004d}.overall-dashboard-kpi-grid{margin-bottom:2rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.overall-dashboard-kpi-card{background:#fff;padding:1rem;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a;border:1px solid #e2e8f0;transition:all .3s ease}[data-theme=dark] .overall-dashboard-kpi-card{background:#1a1a1a;border-color:#ffffff1a;box-shadow:0 4px 6px -1px #00000080}.overall-dashboard-kpi-card:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px #0000001a}[data-theme=dark] .overall-dashboard-kpi-card:hover{box-shadow:0 10px 15px -3px #000c}.overall-dashboard-kpi-header{display:flex;gap:15px}.overall-dashboard-kpi-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1rem}.overall-dashboard-kpi-icon.blue{background-color:#eff6ff;color:#2563eb}.overall-dashboard-kpi-icon.pink{background-color:#fdf2f8;color:#db2777}.overall-dashboard-kpi-icon.green{background-color:#f0fdf4;color:#16a34a}[data-theme=dark] .overall-dashboard-kpi-icon.blue{background-color:#2563eb26;color:#60a5fa}[data-theme=dark] .overall-dashboard-kpi-icon.pink{background-color:#db277726;color:#f472b6}[data-theme=dark] .overall-dashboard-kpi-icon.green{background-color:#16a34a26;color:#4ade80}.overall-dashboard-kpi-content{flex:1}.overall-dashboard-kpi-value{font-size:1.25rem;font-weight:800;color:var(--text-primary);margin-bottom:.25rem}[data-theme=dark] .overall-dashboard-kpi-value{color:#f1f5f9}.overall-dashboard-kpi-title{color:var(--text-secondary);font-size:.85rem;font-weight:600}.overall-dashboard-performance-card{background:linear-gradient(135deg,#1e293b,#0f172a);padding:1rem;border-radius:12px;box-shadow:0 10px 15px -3px #0000001a;border:none;color:#fff;transition:all .3s ease}[data-theme=dark] .overall-dashboard-performance-card{background:linear-gradient(135deg,#2a2a2a,#1a1a1a);border:1px solid rgba(255,255,255,.1);box-shadow:0 10px 15px -3px #000c}.overall-dashboard-performance-card:hover{transform:translateY(-2px);box-shadow:0 20px 25px -5px #0003}[data-theme=dark] .overall-dashboard-performance-card:hover{box-shadow:0 20px 25px -5px #000000e6}.overall-dashboard-performance-header{display:flex;gap:15px}.overall-dashboard-performance-content{flex:1}.overall-dashboard-performance-label{font-size:.8rem;font-weight:600;opacity:.8;text-transform:uppercase}.overall-dashboard-performance-value{font-size:1.3rem;font-weight:700;margin-top:4px}.overall-dashboard-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:1.5rem}.overall-dashboard-section{background:#fff;padding:1rem;border-radius:12px;border:1px solid #e2e8f0;transition:all .3s ease}[data-theme=dark] .overall-dashboard-section{background:#1a1a1a;border-color:#ffffff1a}.overall-dashboard-section:hover{box-shadow:0 10px 15px -3px #0000001a}[data-theme=dark] .overall-dashboard-section:hover{background:#1f1f1f;box-shadow:0 10px 15px -3px #000c}.overall-dashboard-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.overall-dashboard-section-header h3{margin:0;font-weight:700;color:var(--text-primary)}[data-theme=dark] .overall-dashboard-section-header h3{color:#f1f5f9}.overall-dashboard-table{width:100%;border-collapse:separate;border-spacing:0 8px}.overall-dashboard-table thead tr{text-align:left;color:#64748b;font-size:.75rem;text-transform:uppercase}[data-theme=dark] .overall-dashboard-table thead tr{color:#94a3b8}.overall-dashboard-table thead th{padding:0 12px 10px;font-weight:700}.overall-dashboard-table tbody tr{background-color:#f8fafc;transition:all .2s ease}[data-theme=dark] .overall-dashboard-table tbody tr{background-color:#0f0f0f}.overall-dashboard-table tbody tr:hover{background-color:#f1f5f9;transform:translateY(-1px);box-shadow:0 4px 6px -1px #0000001a}[data-theme=dark] .overall-dashboard-table tbody tr:hover{background-color:#1a1a1a;box-shadow:0 4px 6px -1px #00000080}.overall-dashboard-table tbody td{padding:10px;font-weight:500;color:var(--text-primary)}[data-theme=dark] .overall-dashboard-table tbody td{color:#e2e8f0}.overall-dashboard-table tbody td:first-child{border-top-left-radius:10px;border-bottom-left-radius:10px;font-weight:600}.overall-dashboard-table tbody td:last-child{border-top-right-radius:10px;border-bottom-right-radius:10px}.overall-dashboard-progress-container{display:flex;align-items:center;gap:8px}.overall-dashboard-progress-value{font-weight:800;min-width:35px;color:var(--text-primary)}[data-theme=dark] .overall-dashboard-progress-value{color:#f1f5f9}.overall-dashboard-progress-bar{flex:1;height:4px;background:#e2e8f0;border-radius:2px;max-width:60px;overflow:hidden}[data-theme=dark] .overall-dashboard-progress-bar{background:#ffffff1a}.overall-dashboard-progress-fill{height:100%;border-radius:2px;transition:width .3s ease}.overall-dashboard-progress-fill.high{background:#10b981}.overall-dashboard-progress-fill.medium{background:#f59e0b}.overall-dashboard-progress-fill.low{background:#ef4444}.overall-dashboard-achievers{display:flex;flex-direction:column;gap:15px}.overall-dashboard-achiever-item{display:flex;align-items:center;gap:12px;padding:8px;border-radius:12px;background:#f8fafc;transition:all .2s ease}[data-theme=dark] .overall-dashboard-achiever-item{background:#0f0f0f}.overall-dashboard-achiever-item:hover{background:#f1f5f9;transform:translateY(-1px)}[data-theme=dark] .overall-dashboard-achiever-item:hover{background:#1a1a1a}.overall-dashboard-achiever-rank{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:800}.overall-dashboard-achiever-rank.first{background-color:#fef3c7;color:#d97706}.overall-dashboard-achiever-rank.other{background-color:#f1f5f9;color:#64748b}[data-theme=dark] .overall-dashboard-achiever-rank.first{background-color:#d9770626;color:#fbbf24}[data-theme=dark] .overall-dashboard-achiever-rank.other{background-color:#64748b26;color:#94a3b8}.overall-dashboard-achiever-info{flex:1}.overall-dashboard-achiever-name{font-weight:700;font-size:.9rem;color:var(--text-primary)}[data-theme=dark] .overall-dashboard-achiever-name{color:#f1f5f9}.overall-dashboard-achiever-class{font-size:.75rem;color:var(--text-secondary)}.overall-dashboard-achiever-score{font-weight:800;color:#16a34a}[data-theme=dark] .overall-dashboard-achiever-score{color:#4ade80}.overall-dashboard-view-all{width:100%;margin-top:1.2rem;padding:10px;border:1px solid #e2e8f0;border-radius:10px;background:transparent;font-weight:600;color:#2563eb;cursor:pointer;transition:all .2s ease}[data-theme=dark] .overall-dashboard-view-all{border-color:#ffffff1a;color:#60a5fa}.overall-dashboard-view-all:hover{background:#f8fafc;border-color:#2563eb}[data-theme=dark] .overall-dashboard-view-all:hover{background:#0f0f0f;border-color:#60a5fa}.overall-dashboard-exam-table{width:100%;border-collapse:collapse}.overall-dashboard-exam-table thead tr{text-align:left;color:#64748b;font-size:.85rem}[data-theme=dark] .overall-dashboard-exam-table thead tr{color:#94a3b8}.overall-dashboard-exam-table thead th{padding:12px;font-weight:600}.overall-dashboard-exam-table tbody tr{border-bottom:1px solid #f1f5f9;transition:background-color .2s ease}[data-theme=dark] .overall-dashboard-exam-table tbody tr{border-bottom-color:#ffffff0d}.overall-dashboard-exam-table tbody tr:hover{background:#f8fafc}[data-theme=dark] .overall-dashboard-exam-table tbody tr:hover{background:#0f0f0f}.overall-dashboard-exam-table tbody td{padding:10px;color:var(--text-primary)}[data-theme=dark] .overall-dashboard-exam-table tbody td{color:#e2e8f0}.overall-dashboard-exam-title{font-weight:600}.overall-dashboard-exam-date{color:var(--text-secondary);font-size:.85rem}.overall-dashboard-exam-average{font-weight:700}.overall-dashboard-exam-average.high{color:#10b981}.overall-dashboard-exam-average.medium{color:#f59e0b}.overall-dashboard-exam-average.low{color:#ef4444}.overall-dashboard-status-badge{padding:4px 10px;border-radius:6px;font-size:.7rem;font-weight:800;text-transform:uppercase}.overall-dashboard-status-badge.published{background:#dcfce7;color:#166534}.overall-dashboard-status-badge.pending{background:#f1f5f9;color:#64748b}[data-theme=dark] .overall-dashboard-status-badge.published{background:#16653426;color:#4ade80}[data-theme=dark] .overall-dashboard-status-badge.pending{background:#64748b26;color:#94a3b8}.overall-dashboard-action-btn{padding:4px 10px;font-size:.7rem;font-weight:700;background-color:#2563eb;color:#fff;border:none;border-radius:6px;cursor:pointer;margin-top:2px;transition:all .2s ease}.overall-dashboard-action-btn:hover{background-color:#1d4ed8;transform:translateY(-1px)}[data-theme=dark] .overall-dashboard-action-btn{background-color:#3b82f6}[data-theme=dark] .overall-dashboard-action-btn:hover{background-color:#2563eb}.overall-dashboard-performance-bar{width:120px;height:8px;background:#f1f5f9;border-radius:4px;overflow:hidden}[data-theme=dark] .overall-dashboard-performance-bar{background:#ffffff1a}.overall-dashboard-performance-fill{height:100%;border-radius:4px;background:#2563eb;transition:width .3s ease}.overall-dashboard-no-data{text-align:center;padding:2rem;color:#94a3b8}[data-theme=dark] .overall-dashboard-no-data{color:#64748b}@media(max-width:1024px){.overall-dashboard-header{flex-direction:column;align-items:flex-start;gap:1rem}.overall-dashboard-kpi-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.overall-dashboard-kpi-grid,.overall-dashboard-grid{grid-template-columns:1fr}.overall-dashboard-tabs{flex-direction:column;gap:4px}.overall-dashboard-tab{margin-right:0}.overall-dashboard-table,.overall-dashboard-exam-table{font-size:.85rem}.overall-dashboard-table th,.overall-dashboard-table td,.overall-dashboard-exam-table th,.overall-dashboard-exam-table td{padding:8px}}@media(max-width:480px){.overall-dashboard-section,.overall-dashboard-kpi-card{padding:1rem}.overall-dashboard-achiever-item{padding:8px}.overall-dashboard-achiever-rank{width:32px;height:32px;font-size:.8rem}}.overall-dashboard-drill-header{display:flex;align-items:center;gap:1.5rem;margin-bottom:2rem;padding:1rem;background:#fff;border-radius:12px;border:1px solid #e2e8f0}[data-theme=dark] .overall-dashboard-drill-header{background:#1a1a1a;border-color:#ffffff1a}.overall-dashboard-back-btn{width:40px;height:40px;border-radius:50%;border:1px solid #e2e8f0;background:#fff;color:#64748b;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}[data-theme=dark] .overall-dashboard-back-btn{background:#2a2a2a;color:#94a3b8;border-color:#ffffff1a}.overall-dashboard-back-btn:hover{background:#f1f5f9;color:#2563eb;border-color:#2563eb}.overall-dashboard-breadcrumbs{display:flex;align-items:center;gap:.75rem;font-size:.95rem;font-weight:600;color:#64748b}.breadcrumb-item.link{color:#2563eb;cursor:pointer}.breadcrumb-item.link:hover{text-decoration:underline}.breadcrumb-item.active{color:var(--text-primary)}.overall-dashboard-breadcrumbs .separator{font-size:.75rem;opacity:.5}.overall-dashboard-table.interactive tbody tr{cursor:pointer}.overall-dashboard-table.interactive tbody tr:hover td:first-child{color:#2563eb}.bold{font-weight:700!important}.subtitle{font-size:.85rem;color:var(--text-secondary);font-weight:500;margin-top:4px}.overall-dashboard-student-profile{width:100%}.profile-header{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#1e293b,#0f172a);padding:2.5rem;border-radius:20px;color:#fff}[data-theme=dark] .profile-header{background:linear-gradient(135deg,#2a2a2a,#1a1a1a);border:1px solid rgba(255,255,255,.1)}.profile-info{display:flex;align-items:center;gap:2rem}.profile-info .avatar{width:80px;height:80px;background:#ffffff1a;border-radius:20px;display:flex;align-items:center;justify-content:center;font-size:2.5rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.profile-info h2{font-size:2rem;margin:0;font-weight:800}.profile-info p{margin:4px 0 0;opacity:.7}.p-stat{text-align:right}.p-stat .label{display:block;font-size:.75rem;font-weight:800;opacity:.6;letter-spacing:1px}.p-stat .value{font-size:2.5rem;font-weight:900;color:#4ade80}.percentage-badge{background:#f1f5f9;padding:4px 10px;border-radius:6px;font-weight:800;color:#1e293b}[data-theme=dark] .percentage-badge{background:#2a2a2a;color:#f1f5f9}.overall-dashboard-action-btn-sm{padding:6px 14px;font-size:.8rem;font-weight:700;background:#f1f5f9;color:#2563eb;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .2s ease}.overall-dashboard-action-btn-sm:hover{background:#2563eb;color:#fff;border-color:#2563eb}[data-theme=dark] .overall-dashboard-action-btn-sm{background:#2a2a2a;color:#60a5fa;border-color:#ffffff1a}.text-primary{color:#2563eb!important}[data-theme=dark] .text-primary{color:#60a5fa!important}.clickable{cursor:pointer}.heatmap-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem;margin-top:1rem}.heatmap-card{padding:1.2rem;border-radius:12px;display:flex;flex-direction:column;gap:8px;transition:transform .2s ease}.heatmap-card:hover{transform:scale(1.02)}.heatmap-card.very-high{background:#10b9811a;border:1px solid #10b981}.heatmap-card.high{background:#10b9811a;border:1px solid #10b981;opacity:.8}.heatmap-card.medium{background:#f59e0b1a;border:1px solid #f59e0b}.heatmap-card.low{background:#ef44441a;border:1px solid #ef4444}.overall-dashboard-filter-bar{display:flex;flex-wrap:wrap;gap:1.5rem;padding:1.5rem;background:#ffffff08;border-radius:16px;border:1px solid rgba(255,255,255,.08);margin-bottom:2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.filter-group{display:flex;flex-direction:column;gap:.6rem;flex:1;min-width:180px}.filter-group label{font-size:.75rem;text-transform:uppercase;letter-spacing:.8px;color:#94a3b8;font-weight:700}.filter-group select{background:#0f172a;border:1px solid rgba(255,255,255,.1);color:#f8fafc;padding:.75rem;border-radius:8px;font-size:.9rem;outline:none;transition:all .2s ease;cursor:pointer}.filter-group select:hover{border-color:#ffffff4d}.filter-group select:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633}.overall-dashboard-multi-col{display:grid;grid-template-columns:repeat(12,1fr);gap:1.5rem;margin-top:1rem}.overall-dashboard-table.small{font-size:.85rem}.overall-dashboard-table.small td{padding:.75rem}.subject-rings-grid.small{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:1rem}.overall-dashboard-empty{text-align:center;padding:4rem 2rem;color:#64748b;background:#ffffff05;border-radius:16px;border:1px dashed rgba(255,255,255,.1)}.overall-dashboard-empty i{font-size:3rem;margin-bottom:1.5rem;background:linear-gradient(135deg,#3b82f6,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;opacity:.8}.overall-dashboard-empty p{font-size:1.1rem;font-weight:500}.heatmap-subject{font-weight:700;font-size:.9rem}.heatmap-score{font-size:1.5rem;font-weight:900}.subject-rings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:2rem;margin-top:2rem;justify-items:center}.subject-ring-item{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.subject-ring-wrapper{position:relative;width:100px;height:100px}.ring-svg{transform:rotate(-90deg)}.ring-bg{fill:none;stroke:#0000000d;stroke-width:8}[data-theme=dark] .ring-bg{stroke:#ffffff0d}.ring-fill{fill:none;stroke-width:8;stroke-linecap:round;transition:stroke-dashoffset 1s ease}.ring-fill.high{stroke:#10b981}.ring-fill.medium{stroke:#f59e0b}.ring-fill.low{stroke:#ef4444}.ring-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-weight:800;font-size:1.1rem}.subject-ring-label{font-weight:700;font-size:.8rem;max-width:100px;line-height:1.2}.comparison-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:4px;font-size:.75rem;font-weight:700}.comparison-badge.positive{background:#dcfce7;color:#166534}.comparison-badge.negative{background:#fee2e2;color:#991b1b}[data-theme=dark] .comparison-badge.positive{background:#16653433;color:#4ade80}[data-theme=dark] .comparison-badge.negative{background:#991b1b33;color:#f87171}.gap-label{font-size:.7rem;color:var(--text-secondary);margin-left:8px;font-weight:600}.trend-indicator{display:flex;align-items:center;gap:4px;font-size:.75rem;font-weight:700}.materials-management{padding:0;background:var(--bg-primary);min-height:100vh}.page-header{background:linear-gradient(135deg,var(--primary-color) 0%,#667eea 100%);color:#fff;padding:32px 24px;margin-bottom:24px}[data-theme=dark] .page-header{background:linear-gradient(135deg,#1a1a1a,#2a2a2a);border-bottom:1px solid rgba(255,255,255,.1)}.header-content{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}.header-text h1{margin:0 0 8px;font-size:32px;font-weight:700;color:#fff}[data-theme=dark] .header-text h1{color:#f1f5f9}.header-text p{margin:0;font-size:16px;opacity:.9;color:#fff}[data-theme=dark] .header-text p{color:#cbd5e1;opacity:1}.btn{padding:12px 20px;border-radius:8px;font-weight:600;transition:all .2s ease;border:none;cursor:pointer;display:inline-flex;align-items:center;gap:8px}.btn-primary{background:#fff3;border:2px solid rgba(255,255,255,.3);color:#fff}.btn-primary:hover{background:#ffffff4d;transform:translateY(-2px)}.btn-outline{background:transparent;border:2px solid rgba(255,255,255,.3);color:#fff}.btn-outline:hover{background:#ffffff1a}.stats-overview{max-width:1200px;margin:0 auto 32px;padding:0 24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.stat-card{background:var(--bg-primary);border-radius:16px;padding:24px;display:flex;align-items:center;gap:16px;transition:all .3s ease;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--accent-color)}.stat-card.primary:before{background:#007bff}.stat-card.success:before{background:#28a745}.stat-card.warning:before{background:#ffc107}.stat-card.info:before{background:#17a2b8}.stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #0000001a}.stat-icon{width:60px;height:60px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:24px;color:#fff}.stat-card.primary .stat-icon{background:linear-gradient(135deg,#007bff,#0056b3)}.stat-card.success .stat-icon{background:linear-gradient(135deg,#28a745,#1e7e34)}.stat-card.warning .stat-icon{background:linear-gradient(135deg,#ffc107,#e0a800)}.stat-card.info .stat-icon{background:linear-gradient(135deg,#17a2b8,#138496)}.stat-info h3{margin:0 0 4px;font-size:28px;font-weight:700;color:var(--text-primary)}.stat-info p{margin:0;font-size:14px;color:var(--text-secondary);font-weight:500}.controls-section{max-width:1200px;margin:0 auto 32px;padding:0 24px}.search-filters{display:flex;gap:16px;align-items:center;margin-bottom:16px;flex-wrap:wrap}.search-box{position:relative;flex:1;min-width:300px;max-width:500px}.search-box i{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--text-secondary);font-size:14px;pointer-events:none;z-index:1}[data-theme=dark] .search-box i{color:#94a3b8}.search-box input{width:100%;padding:14px 16px 14px 44px;border:2px solid var(--border-color);border-radius:12px;font-size:14px;background:var(--bg-primary);color:var(--text-primary);transition:all .2s ease}.search-box input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.1)}.filters{display:flex;gap:12px;flex-wrap:wrap}.filters select{padding:12px 16px;border:2px solid var(--border-color);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:14px;min-width:150px;cursor:pointer;transition:all .2s ease}[data-theme=dark] .filters select{background:#1a1a1a;border-color:#ffffff1a;color:#f1f5f9}.filters select:focus{outline:none;border-color:var(--primary-color)}[data-theme=dark] .filters select:focus{background:#0f0f0f;border-color:#6366f1}.view-controls{display:flex;justify-content:flex-end;align-items:center;gap:16px}.bulk-actions{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--bg-secondary);border-radius:8px;border:1px solid var(--border-color)}.selection-count{font-size:14px;color:var(--text-secondary);font-weight:500}.btn-sm{padding:6px 12px;font-size:12px;border-radius:6px}.btn-danger{background:#dc3545;color:#fff;border:1px solid #dc3545}.btn-danger:hover{background:#c82333}.materials-section{max-width:1200px;margin:0 auto;padding:0 24px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.section-header h2{margin:0;font-size:24px;font-weight:600;color:var(--text-primary)}.select-all{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text-secondary);cursor:pointer}.materials-table{background:var(--bg-primary);border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000001a;border:1px solid var(--border-color)}[data-theme=dark] .materials-table{background:#1a1a1a;border-color:#ffffff1a;box-shadow:0 2px 8px #0000004d}.table-container{overflow-x:auto}.custom-table{width:100%;border-collapse:collapse;min-width:900px}.custom-table thead{background:var(--bg-secondary);border-bottom:1px solid var(--border-color)}[data-theme=dark] .custom-table thead{background:#0f0f0f;border-color:#ffffff0d}.custom-table th{padding:16px;text-align:left;font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}[data-theme=dark] .custom-table th{color:#94a3b8}.custom-table tbody tr{border-bottom:1px solid var(--border-color);transition:all .2s ease}[data-theme=dark] .custom-table tbody tr{border-color:#ffffff0d}.custom-table tbody tr:hover{background:var(--bg-secondary)}[data-theme=dark] .custom-table tbody tr:hover{background:#ffffff05}.custom-table tbody tr:last-child{border-bottom:none}.custom-table td{padding:16px;vertical-align:middle}.material-info{display:flex;align-items:center;gap:12px}.material-icon{width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;background:#00000008}[data-theme=dark] .material-icon{background:#ffffff0d}.material-icon.video-icon{color:#0d6efd;background:#0d6efd1a}.material-icon.document-icon{color:#dc3545;background:#dc35451a}.material-details{min-width:0;flex:1}.material-title{font-weight:600;color:var(--text-primary);margin-bottom:4px;font-size:14px;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}[data-theme=dark] .material-title{color:#f1f5f9}.material-meta{font-size:12px;color:var(--text-secondary)}[data-theme=dark] .material-meta{color:#94a3b8}.type-badge{padding:6px 12px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;display:inline-block;white-space:nowrap}.type-video{background:#0d6efd26;color:#3b82f6}[data-theme=dark] .type-video{background:#3b82f633;color:#60a5fa}.type-document{background:#dc354526;color:#dc3545}[data-theme=dark] .type-document{background:#ef444433;color:#f87171}.type-pdf{background:#dc354526;color:#dc3545}[data-theme=dark] .type-pdf{background:#ef444433;color:#f87171}.type-link{background:#ffc10726;color:#f59e0b}[data-theme=dark] .type-link{background:#f59e0b33;color:#fbbf24}.custom-table td:nth-child(3),.custom-table td:nth-child(4){font-size:14px;color:var(--text-primary)}[data-theme=dark] .custom-table td:nth-child(3),[data-theme=dark] .custom-table td:nth-child(4){color:#f1f5f9}.action-buttons{display:flex;gap:8px;justify-content:flex-start;flex-wrap:wrap}.action-btn{width:32px;height:32px;border:none;border-radius:8px;background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0}[data-theme=dark] .action-btn{background:#ffffff0d;color:#94a3b8}.action-btn:hover{background:var(--primary-color);color:#fff;transform:scale(1.1)}[data-theme=dark] .action-btn:hover{background:#6366f1;color:#fff}.action-btn.danger:hover{background:#dc3545;color:#fff}.empty-state{text-align:center;padding:80px 20px;color:var(--text-secondary)}.empty-icon{font-size:64px;color:var(--text-secondary);margin-bottom:24px;opacity:.5}.empty-state h3{margin:0 0 8px;font-size:24px;color:var(--text-primary)}.empty-state p{margin:0 0 24px;font-size:16px}.upload-modal{background:var(--bg-primary);border-radius:16px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}[data-theme=dark] .upload-modal{background:#1a1a1a;box-shadow:0 20px 60px #0009}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 28px;border-bottom:1px solid var(--border-color)}.modal-header h3{margin:0;font-size:24px;font-weight:600;color:var(--text-primary)}[data-theme=dark] .modal-header h3{color:#f1f5f9}.modal-close{width:40px;height:40px;border:none;background:var(--bg-secondary);color:var(--text-secondary);border-radius:8px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;font-size:16px}[data-theme=dark] .modal-close{background:#ffffff0d;color:#94a3b8}.modal-close:hover{background:var(--border-color);color:var(--text-primary)}[data-theme=dark] .modal-close:hover{background:#ffffff1a;color:#f1f5f9}.modal-body{padding:28px}.upload-form{display:flex;flex-direction:column;gap:24px}.form-section h4{margin:0 0 16px;font-size:18px;font-weight:600;color:var(--text-primary)}[data-theme=dark] .form-section h4{color:#f1f5f9}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:600;color:var(--text-primary);font-size:14px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-group input,.form-group select,.form-group textarea{padding:12px 16px;border:2px solid var(--border-color);border-radius:8px;font-size:14px;background:var(--bg-primary);color:var(--text-primary);transition:all .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.1)}.form-group input:disabled,.form-group select:disabled{opacity:.5;cursor:not-allowed}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:24px 28px;border-top:1px solid var(--border-color)}.modal-footer .btn{padding:12px 24px;border-radius:8px;font-weight:600}.modal-footer .btn-outline{background:transparent;border:2px solid var(--border-color);color:var(--text-primary)}[data-theme=dark] .modal-footer .btn-outline{border-color:#ffffff1a;color:#f1f5f9}.modal-footer .btn-outline:hover{background:var(--bg-secondary)}[data-theme=dark] .modal-footer .btn-outline:hover{background:#ffffff0d}.modal-footer .btn-primary{background:var(--primary-color);color:#fff;border:none}[data-theme=dark] .modal-footer .btn-primary{background:#6366f1}.modal-footer .btn-primary:hover{background:#4f46e5;transform:translateY(-1px)}@media(max-width:1024px){.table-content{min-width:1000px}}@media(max-width:768px){.page-header{padding:24px 16px}.header-content{flex-direction:column;align-items:stretch;text-align:center}.stats-overview{padding:0 16px;grid-template-columns:repeat(2,1fr)}.controls-section{padding:0 16px}.search-filters{flex-direction:column;align-items:stretch}.search-box{min-width:unset}.filters{justify-content:stretch}.filters select{flex:1;min-width:unset}.view-controls{flex-direction:column;align-items:stretch;gap:12px}.materials-section{padding:0 16px}.form-row{grid-template-columns:1fr}.table-content{min-width:800px}}@media(max-width:480px){.stats-overview{grid-template-columns:1fr}.header-actions{flex-direction:column}.upload-modal{width:95%;margin:20px}.table-content{min-width:700px}}[data-theme=dark] .materials-table{background:var(--bg-secondary)}[data-theme=dark] .table-header{background:var(--bg-tertiary);border-color:var(--border-dark)}[data-theme=dark] .table-body{background:var(--bg-secondary)}[data-theme=dark] .table-row{border-color:var(--border-dark)}[data-theme=dark] .table-row:hover{background:var(--bg-tertiary)}[data-theme=dark] .upload-modal{background:var(--bg-secondary)}[data-theme=dark] .modal-header,[data-theme=dark] .modal-footer{border-color:var(--border-dark)}[data-theme=dark] .file-upload-label{background:var(--bg-tertiary);border-color:var(--border-dark)}[data-theme=dark] .file-upload-label:hover{background:rgba(var(--primary-rgb),.1)}[data-theme=dark] .empty-state{color:#94a3b8}[data-theme=dark] .empty-icon{color:#fff3}[data-theme=dark] .empty-state h3{color:#f1f5f9}@media(max-width:768px){.header-text h1{font-size:24px}.header-text p{font-size:14px}.btn{width:100%;justify-content:center}.custom-table{min-width:700px}}@media(max-width:480px){.header-text h1{font-size:20px}.custom-table{min-width:600px}.material-info{gap:8px}.material-icon{width:32px;height:32px;font-size:14px}.material-title{font-size:13px}.material-meta{font-size:11px}}.academics-any-data{padding:1.5rem;background:#f8fafc;min-height:100vh;transition:background-color .3s ease;max-width:100%;overflow-x:hidden;box-sizing:border-box}[data-theme=dark] .academics-any-data{background:#0a0a0a}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #e5e7eb;transition:border-color .3s ease}[data-theme=dark] .page-header{border-bottom-color:#ffffff1a}.page-header h1{font-size:1.75rem;font-weight:700;color:#1f2937;margin:0;transition:color .3s ease}.back-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#6b7280;color:#fff;border:none;border-radius:6px;cursor:pointer;transition:all .3s ease}[data-theme=dark] .back-btn{background:#374151}.back-btn:hover,[data-theme=dark] .back-btn:hover{background:#4b5563}.search-section{background:#fff;border-radius:8px;padding:1.5rem;margin-bottom:2rem;box-shadow:0 1px 3px #0000001a;transition:all .3s ease}[data-theme=dark] .search-section{background:#1a1a1a;box-shadow:0 1px 3px #00000080}.search-section h2{font-size:1.25rem;font-weight:600;color:#1f2937;margin-bottom:1.5rem;padding-bottom:.5rem;border-bottom:1px solid #e5e7eb;transition:all .3s ease}[data-theme=dark] .search-section h2{color:#f1f5f9;border-bottom-color:#ffffff1a}.filters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem;width:100%;box-sizing:border-box}.filter-group{background:#f9fafb;padding:1.5rem;border-radius:8px;border:1px solid #e5e7eb;transition:all .3s ease;min-width:0;box-sizing:border-box;word-wrap:break-word}[data-theme=dark] .filter-group{background:#0f0f0f;border-color:#ffffff1a}.filter-group h3{font-size:1.125rem;font-weight:600;color:#374151;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid #d1d5db;transition:all .3s ease}[data-theme=dark] .filter-group h3{color:#e5e7eb;border-bottom-color:#ffffff1a}.highlight-group{background:#eff6ff!important;border:1px solid #bfdbfe!important;box-shadow:0 4px 6px -1px #3b82f61a}[data-theme=dark] .highlight-group{background:#3b82f61a!important;border-color:#3b82f64d!important;box-shadow:0 4px 6px -1px #3b82f633}.highlight-group h3{color:#1d4ed8!important;border-bottom-color:#bfdbfe!important}[data-theme=dark] .highlight-group h3{color:#60a5fa!important;border-bottom-color:#60a5fa4d!important}.filter-row{display:flex;align-items:center;margin-bottom:1rem;gap:1rem;flex-wrap:wrap}.filter-row label{min-width:120px;flex-shrink:0;font-weight:500;color:#374151;font-size:.875rem;transition:color .3s ease}[data-theme=dark] .filter-row label{color:#d1d5db}.filter-row input,.filter-row select{flex:1;min-width:0;padding:.5rem;border:1px solid #d1d5db;border-radius:4px;font-size:.875rem;background:#fff;color:#1f2937;transition:all .3s ease}[data-theme=dark] .filter-row input,[data-theme=dark] .filter-row select{background:#0f0f0f;border-color:#fff3;color:#f1f5f9}.filter-row input:focus,.filter-row select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}[data-theme=dark] .filter-row input:focus,[data-theme=dark] .filter-row select:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa1a}.range-inputs{display:flex;align-items:center;gap:.5rem;flex:1;flex-wrap:wrap}.range-inputs span{font-size:.875rem;color:#6b7280;transition:color .3s ease}[data-theme=dark] .range-inputs span{color:#9ca3af}.range-inputs input{width:80px;flex:none;min-width:70px}.radio-group{display:flex;gap:1rem;flex:1}.radio-group label{display:flex;align-items:center;gap:.5rem;min-width:auto;font-weight:400;cursor:pointer}.radio-group input[type=radio]{margin:0;flex:none}.additional-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-bottom:2rem;padding:1.5rem;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb;transition:all .3s ease}[data-theme=dark] .additional-filters{background:#0f0f0f;border-color:#ffffff1a}.search-actions{display:flex;gap:1rem;justify-content:center;padding-top:1rem;border-top:1px solid #e5e7eb;transition:border-color .3s ease}[data-theme=dark] .search-actions{border-top-color:#ffffff1a}.btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s;text-decoration:none}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:#3b82f6;color:#fff}.btn-primary:hover:not(:disabled){background:#2563eb}[data-theme=dark] .btn-primary{background:#2563eb}[data-theme=dark] .btn-primary:hover:not(:disabled){background:#1d4ed8}.btn-secondary{background:#6b7280;color:#fff}.btn-secondary:hover,[data-theme=dark] .btn-secondary{background:#4b5563}[data-theme=dark] .btn-secondary:hover{background:#374151}.btn-success{background:#10b981;color:#fff}.btn-success:hover,[data-theme=dark] .btn-success{background:#059669}[data-theme=dark] .btn-success:hover{background:#047857}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover,[data-theme=dark] .btn-danger{background:#dc2626}[data-theme=dark] .btn-danger:hover{background:#b91c1c}.btn-info{background:#06b6d4;color:#fff}.btn-info:hover,[data-theme=dark] .btn-info{background:#0891b2}[data-theme=dark] .btn-info:hover{background:#0e7490}.btn-outline{background:transparent;color:#6b7280;border:1px solid #d1d5db}.btn-outline:hover{background:#f3f4f6;color:#374151}[data-theme=dark] .btn-outline{color:#9ca3af;border-color:#fff3}[data-theme=dark] .btn-outline:hover{background:#ffffff0d;color:#d1d5db}.field-selection{background:#fff;border-radius:8px;padding:1.5rem;margin-bottom:2rem;box-shadow:0 1px 3px #0000001a;transition:all .3s ease}[data-theme=dark] .field-selection{background:#1a1a1a;box-shadow:0 1px 3px #00000080}.check-all-section{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb;transition:border-color .3s ease}[data-theme=dark] .check-all-section{border-bottom-color:#ffffff1a}.check-all-section label{display:flex;align-items:center;gap:.5rem;font-weight:600;color:#374151;cursor:pointer;transition:color .3s ease}[data-theme=dark] .check-all-section label{color:#e5e7eb}.fields-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem;margin-bottom:2rem}.field-checkbox{display:flex;align-items:center;gap:.5rem;padding:.5rem;border-radius:4px;cursor:pointer;transition:background .2s;font-size:.875rem}.field-checkbox:hover{background:#f3f4f6}[data-theme=dark] .field-checkbox:hover{background:#ffffff0d}.field-checkbox input[type=checkbox]{margin:0;flex:none}[data-theme=dark] .field-checkbox{color:#d1d5db}.field-checkbox.general{border-left:3px solid #6b7280}.field-checkbox.student{border-left:3px solid #3b82f6}.field-checkbox.transport{border-left:3px solid #10b981}.field-checkbox.hostel{border-left:3px solid #f59e0b}.field-checkbox.other{border-left:3px solid #8b5cf6}.legends{padding-top:1rem;border-top:1px solid #e5e7eb;transition:border-color .3s ease}[data-theme=dark] .legends{border-top-color:#ffffff1a}.legends h4{font-size:1rem;font-weight:600;color:#374151;margin-bottom:.75rem;transition:color .3s ease}[data-theme=dark] .legends h4{color:#e5e7eb}.legend-items{display:flex;gap:1.5rem;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#6b7280;transition:color .3s ease}[data-theme=dark] .legend-item{color:#9ca3af}.legend-color{width:12px;height:12px;border-radius:2px}.legend-item.student .legend-color{background:#3b82f6}.legend-item.staff .legend-color{background:#10b981}.legend-item.parent .legend-color{background:#8b5cf6}.legend-item.common .legend-color{background:#ef4444}.results-section{background:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 1px 3px #0000001a;transition:all .3s ease}[data-theme=dark] .results-section{background:#1a1a1a;box-shadow:0 1px 3px #00000080}.results-section h3{font-size:1.25rem;font-weight:600;color:#1f2937;margin-bottom:1.5rem;padding-bottom:.5rem;border-bottom:1px solid #e5e7eb;transition:all .3s ease}[data-theme=dark] .results-section h3{color:#f1f5f9;border-bottom-color:#ffffff1a}.results-table-container{overflow-x:auto;margin-bottom:2rem;border:1px solid #e5e7eb;border-radius:8px;transition:border-color .3s ease}[data-theme=dark] .results-table-container{border-color:#ffffff1a}.results-table{width:100%;border-collapse:collapse;font-size:.875rem}.results-table th{background:#f9fafb;padding:.75rem;text-align:left;font-weight:600;color:#374151;border-bottom:1px solid #e5e7eb;white-space:nowrap;transition:all .3s ease}[data-theme=dark] .results-table th{background:#0f0f0f;color:#e5e7eb;border-bottom-color:#ffffff1a}.results-table td{padding:.75rem;border-bottom:1px solid #f3f4f6;color:#6b7280;transition:all .3s ease}[data-theme=dark] .results-table td{border-bottom-color:#ffffff0d;color:#9ca3af}.results-table tbody tr:hover{background:#f9fafb}[data-theme=dark] .results-table tbody tr:hover{background:#ffffff05}.results-table tfoot td{padding:12px 10px;background:#f8fafc;font-weight:800;color:#1e293b;border-top:2px solid #cbd5e1;border-bottom:2px solid #cbd5e1;transition:all .3s ease}[data-theme=dark] .results-table tfoot td{background:#0a0a0a;color:#f1f5f9;border-top-color:#ffffff1a;border-bottom-color:#ffffff1a}.results-table tfoot td:first-child{color:#64748b;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;transition:color .3s ease}[data-theme=dark] .results-table tfoot td:first-child{color:#94a3b8}@media print{.results-table tfoot{display:table-footer-group}.results-table tfoot td{border:1pt solid #000}}.export-actions{display:flex;gap:1rem;justify-content:center;padding-top:1rem;border-top:1px solid #e5e7eb;transition:border-color .3s ease}[data-theme=dark] .export-actions{border-top-color:#ffffff1a}@media(max-width:1200px){.filters-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.filter-group{min-width:0}}@media(max-width:768px){.academics-any-data{padding:1rem;overflow-x:hidden}.page-header{flex-direction:column;gap:1rem;align-items:flex-start}.filters-grid{grid-template-columns:1fr;gap:1rem}.additional-filters{grid-template-columns:1fr;padding:1rem}.filter-row{flex-direction:column;align-items:flex-start;gap:.5rem}.filter-row label{min-width:auto;width:100%}.filter-row input,.filter-row select{width:100%;min-width:0}.range-inputs{width:100%;flex-wrap:wrap}.range-inputs input{flex:1;min-width:80px}.radio-group{flex-direction:column;gap:.5rem;width:100%}.fields-grid{grid-template-columns:1fr}.legend-items{flex-direction:column;gap:.5rem}.search-actions,.export-actions{flex-direction:column;width:100%}.search-actions .btn,.export-actions .btn{width:100%;justify-content:center}.results-table-container{font-size:.75rem;overflow-x:auto;-webkit-overflow-scrolling:touch}.results-table{min-width:600px}.results-table th,.results-table td{padding:.5rem .25rem;font-size:.75rem}}@media(max-width:480px){.academics-any-data{padding:.75rem}.page-header h1{font-size:1.5rem}.filter-group{padding:1rem}.filter-group h3{font-size:1rem}.btn{padding:.75rem 1rem;font-size:.875rem;width:100%}.search-section,.field-selection,.results-section{padding:1rem;margin-bottom:1rem}.results-table th,.results-table td{padding:.375rem .25rem;font-size:.7rem}.results-table{min-width:500px}}.fa-spinner{animation:spin 1s linear infinite}.print-header{display:none;border-bottom:2px solid #1e293b;padding-bottom:20px;margin-bottom:30px}.print-header-top{display:flex;align-items:center;gap:30px;margin-bottom:20px}.print-logo{width:80px;height:80px;object-fit:contain}.print-inst-name{margin:0;font-size:28px;font-weight:800;color:#1e293b;letter-spacing:-.5px}.print-inst-contact{display:flex;gap:15px;font-size:13px;color:#64748b;margin-top:5px}.print-report-meta{display:flex;justify-content:space-between;align-items:flex-end;background:#f8fafc;padding:15px;border-radius:8px}.report-title{margin:0;font-size:18px;color:#2563eb;font-weight:700}.report-filters-summary{font-size:12px;color:#64748b;margin-top:4px}.meta-right{text-align:right;font-size:12px;color:#64748b}.meta-right p{margin:2px 0}@media print{@page{size:A4 landscape;margin:1cm}.no-print,.admin-sidebar,.admin-header,.report-gen-header,.search-section,.field-selection,.back-btn{display:none!important}.admin-layout,.admin-main-content,.admin-content-area,.report-gen-layout,.report-content-area,.academics-any-data,.results-section,.results-table-container{display:block!important;opacity:1!important;visibility:visible!important;animation:none!important;height:auto!important;width:100%!important;overflow:visible!important;margin:0!important;padding:0!important;background:#fff!important;position:static!important}.print-header{display:block!important;margin-bottom:20px}.results-table{display:table!important;width:100%!important;border-collapse:collapse!important;table-layout:auto!important}.results-table th,.results-table td{border:1px solid black!important;padding:4px 8px!important}.results-section *,.print-header *{color:#000!important;-webkit-text-fill-color:black!important;opacity:1!important;visibility:visible!important;background:transparent!important;font-size:10pt!important}.results-table th,.results-table th *{font-weight:700!important;background:#eee!important;-webkit-print-color-adjust:exact}}.principal-dashboard{padding:1.5rem;min-height:100vh;animation:fadeIn .4s ease-out}.principal-header{background:linear-gradient(135deg,#7c3aed,#6d28d9);padding:2.5rem 2rem;border-radius:var(--radius-lg);color:#fff;margin-bottom:2rem;box-shadow:var(--shadow-active);position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.1)}.principal-header:before{content:"";position:absolute;top:-50%;right:-5%;width:600px;height:600px;background:radial-gradient(circle,#ffffff1a,#fff0 70%);border-radius:50%;pointer-events:none}.principal-header h1{font-size:2.2rem;font-weight:800;margin:0 0 .5rem;letter-spacing:-.02em;text-shadow:0 2px 4px rgba(0,0,0,.1)}.principal-header p{margin:0;opacity:.95;font-size:1.1rem;font-weight:500}.principal-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;margin-bottom:2rem}.principal-card{background:var(--app-card-bg);border-radius:var(--radius-lg);padding:1.5rem;border:1px solid var(--app-border-color);box-shadow:var(--shadow-sm);transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column}.principal-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:#ddd6fe}.kpi-icon-wrapper{width:56px;height:56px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;margin-bottom:1rem;font-size:1.5rem;transition:transform .2s}.principal-card:hover .kpi-icon-wrapper{transform:scale(1.1)}.kpi-purple .kpi-icon-wrapper{background:#f3e8ff;color:#7c3aed}.kpi-green .kpi-icon-wrapper{background:#ecfdf5;color:#10b981}.kpi-label{font-size:.9rem;color:var(--app-text-muted);font-weight:600;margin-bottom:.25rem}.kpi-number{font-size:2rem;font-weight:800;color:var(--app-text-primary);letter-spacing:-.02em}.kpi-trend{font-size:.85rem;margin-top:auto;padding-top:.5rem;display:flex;align-items:center;gap:.25rem;font-weight:500}.trend-neutral{color:#94a3b8}.principal-visuals-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:1.5rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:0;border-bottom:none}.section-title{font-size:1.1rem;font-weight:700;color:var(--app-text-primary);display:flex;align-items:center;gap:.5rem}.chart-container{height:250px;display:flex;align-items:flex-end;justify-content:space-between;padding-top:2rem}.chart-bar-group{display:flex;flex-direction:column;align-items:center;width:8%;height:100%;justify-content:flex-end}.chart-bar{width:100%;border-radius:4px 4px 0 0;transition:all .3s ease}.chart-bar:hover{filter:brightness(1.1);transform:scaleY(1.05)}.chart-label{margin-top:.5rem;font-size:.75rem;color:var(--app-text-muted)}.approval-list{display:flex;flex-direction:column;gap:.75rem}.approval-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#f8fafc;border-radius:var(--radius-md);border:1px solid transparent;transition:background .2s}.approval-item:hover{background:#eff6ff;border-color:#dbeafe}.approval-info h4{margin:0;font-size:.95rem;font-weight:600;color:var(--app-text-primary)}.approval-info p{margin:.25rem 0 0;font-size:.8rem;color:var(--app-text-muted)}.btn-approve{background:#10b981;color:#fff;border:none;padding:.5rem 1rem;border-radius:var(--radius-md);font-size:.85rem;cursor:pointer;font-weight:600;box-shadow:var(--shadow-sm);transition:all .2s}.btn-approve:hover{background:#059669;transform:translateY(-2px);box-shadow:var(--shadow-md)}.owner-dashboard{padding:1.5rem;background-color:#f8fafc;min-height:100vh;font-family:Inter,system-ui,-apple-system,sans-serif}.owner-header{background:linear-gradient(135deg,#064e3b,#10b981);padding:2.5rem 2rem;border-radius:16px;color:#fff;margin-bottom:2rem;box-shadow:0 10px 25px -5px #10b98166;position:relative;overflow:hidden}.owner-header:before{content:"";position:absolute;top:-50%;right:-5%;width:400px;height:400px;background:radial-gradient(circle,#ffffff26,#fff0 70%);border-radius:50%}.owner-header h1{font-size:2.2rem;font-weight:700;margin:0 0 .5rem;letter-spacing:-.02em}.owner-header p{margin:0;opacity:.9;font-size:1.1rem;font-weight:400}.owner-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;margin-bottom:2rem}.owner-card{background:#fff;border-radius:12px;padding:1.5rem;border:1px solid #e2e8f0;box-shadow:0 2px 4px #00000005;transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column}.owner-card:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px #0000000d}.kpi-icon-wrapper{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:1rem;font-size:1.25rem}.kpi-emerald .kpi-icon-wrapper{background:#ecfdf5;color:#10b981}.kpi-blue .kpi-icon-wrapper{background:#eff6ff;color:#3b82f6}.kpi-orange .kpi-icon-wrapper{background:#fff7ed;color:#f97316}.kpi-red .kpi-icon-wrapper{background:#fef2f2;color:#ef4444}.kpi-indigo .kpi-icon-wrapper{background:#e0e7ff;color:#6366f1}.kpi-teal .kpi-icon-wrapper{background:#ccfbf1;color:#14b8a6}.kpi-label{font-size:.9rem;color:#64748b;font-weight:500;margin-bottom:.25rem}.kpi-number{font-size:1.8rem;font-weight:700;color:#1e293b;letter-spacing:-.02em}.kpi-trend{font-size:.8rem;margin-top:auto;padding-top:.5rem;display:flex;align-items:center;gap:.25rem}.trend-up{color:#10b981}.trend-down{color:#ef4444}.trend-neutral{color:#64748b}.owner-visuals-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:1.5rem}@media(max-width:1024px){.grid-col-8,.grid-col-4{grid-column:span 12}}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #f1f5f9}.section-title{font-size:1.1rem;font-weight:600;color:#334155;display:flex;align-items:center;gap:.5rem}.activity-list{display:flex;flex-direction:column;gap:0px}.activity-item{display:flex;gap:1rem;padding:1rem;border-bottom:1px solid #f1f5f9}.activity-item:last-child{border-bottom:none}.activity-icon{width:36px;height:36px;border-radius:50%;background:#f1f5f9;color:#64748b;display:flex;align-items:center;justify-content:center;font-size:.9rem}.activity-details h4{margin:0;font-size:.9rem;color:#334155}.activity-details p{margin:.25rem 0 0;font-size:.8rem;color:#94a3b8}.css-area-chart{height:250px;position:relative;border-left:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;margin-top:1rem}.chart-points{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:space-between;padding:0 1rem}.point-group{display:flex;flex-direction:column;align-items:center;z-index:2}.point-dot{width:10px;height:10px;background:#10b981;border:2px solid white;border-radius:50%;box-shadow:0 2px 4px #0000001a}.point-label{margin-top:8px;font-size:.75rem;color:#64748b}.chart-background{position:absolute;bottom:0;left:0;right:0;height:70%;background:linear-gradient(to top,#10b9811a,#10b98100);clip-path:polygon(0 100%,0 40%,20% 60%,40% 30%,60% 50%,80% 20%,100% 40%,100% 100%);z-index:1}.faculty-dashboard{padding:1.5rem;min-height:100vh;animation:fadeIn .4s ease-out}.faculty-header{background:linear-gradient(135deg,#2563eb,#3b82f6);padding:2.5rem 2rem;border-radius:var(--radius-lg);color:#fff;margin-bottom:2rem;box-shadow:var(--shadow-active);position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.1)}.faculty-header:before{content:"";position:absolute;top:-50%;right:-5%;width:400px;height:400px;background:radial-gradient(circle,#ffffff26,#fff0 70%);border-radius:50%;pointer-events:none}.faculty-header h1{font-size:2.2rem;font-weight:800;margin:0 0 .5rem;letter-spacing:-.02em;text-shadow:0 2px 4px rgba(0,0,0,.1)}.faculty-header p{margin:0;opacity:.95;font-size:1.1rem;font-weight:500}.faculty-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;margin-bottom:2rem}.faculty-kpi-card{background:var(--app-card-bg);border-radius:var(--radius-lg);padding:1.5rem;border:1px solid var(--app-border-color);box-shadow:var(--shadow-sm);display:flex;align-items:center;gap:1.25rem;transition:all .2s cubic-bezier(.4,0,.2,1)}.faculty-kpi-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:#bfdbfe}.faculty-kpi-card:hover .kpi-icon-circle{transform:scale(1.1)}.kpi-blue .kpi-icon-circle{background:#eff6ff;color:#2563eb}.kpi-orange .kpi-icon-circle{background:#fff7ed;color:#f97316}.kpi-green .kpi-icon-circle{background:#f0fdf4;color:#166534}.kpi-purple .kpi-icon-circle{background:#f3e8ff;color:#9333ea}.kpi-pink .kpi-icon-circle{background:#fdf2f8;color:#db2777}.kpi-label{font-size:.9rem;color:var(--app-text-muted);font-weight:600;margin-top:.2rem}.faculty-layout-grid{display:grid;grid-template-columns:2fr 1fr;gap:1.5rem}@media(max-width:1024px){.faculty-layout-grid{grid-template-columns:1fr}}.faculty-section-card{background:var(--app-card-bg);border-radius:var(--radius-lg);padding:1.75rem;border:1px solid var(--app-border-color);box-shadow:var(--shadow-sm);margin-bottom:1.5rem;transition:transform .2s,box-shadow .2s}.faculty-section-card:hover{box-shadow:var(--shadow-md)}.quick-action-btn:hover{background:#eff6ff;border-color:#3b82f6;transform:translateY(-4px);box-shadow:var(--shadow-md)}.quick-action-btn i{font-size:1.75rem;color:#2563eb;background:#dbeafe;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center}.schedule-list{display:flex;flex-direction:column;gap:.75rem}.schedule-item{display:flex;gap:1rem;padding:1rem;border:1px solid #f1f5f9;background:#f8fafc;border-radius:var(--radius-md);transition:all .2s}.schedule-item:hover{background:#eff6ff;border-color:#bfdbfe;transform:translate(4px)}.schedule-time{font-weight:800;color:#2563eb;min-width:80px;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:var(--radius-md);padding:.5rem;box-shadow:var(--shadow-sm);height:fit-content}.schedule-info h4{margin:0;font-size:1rem;font-weight:600;color:var(--app-text-primary)}.schedule-info p{margin:.25rem 0 0;font-size:.85rem;color:var(--app-text-muted)}.announcement-item{padding:1.25rem;border-left:4px solid #f59e0b;background:#fffbeb;border-radius:var(--radius-md);margin-bottom:1rem;box-shadow:var(--shadow-sm);transition:transform .2s}.announcement-item:hover{transform:scale(1.02)}.announcement-item h4{margin:0 0 .5rem;color:#92400e;font-size:1rem;font-weight:700}.announcement-item p{margin:0;color:#b45309;font-size:.9rem;font-weight:500}.admin-team-dashboard{padding:1.5rem;min-height:100vh;animation:fadeIn .4s ease-out}.admin-team-header{background:linear-gradient(135deg,#0d9488,#115e59);padding:2.5rem 2rem;border-radius:var(--radius-lg);color:#fff;margin-bottom:2rem;box-shadow:var(--shadow-active);position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.1)}.admin-team-header:before{content:"";position:absolute;top:-50%;right:-10%;width:600px;height:600px;background:radial-gradient(circle,#ffffff1a,#fff0 70%);border-radius:50%;pointer-events:none}.admin-team-header h1{font-size:2rem;font-weight:800;margin:0 0 .5rem;letter-spacing:-.02em;text-shadow:0 2px 4px rgba(0,0,0,.1)}.admin-team-header p{margin:0;opacity:.95;font-size:1.1rem;font-weight:500}.active-modules-page{padding:2rem;background:var(--bg-secondary);min-height:100vh}.active-modules-page{background:#f8fafc}.header-content h1{font-size:2rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem}.header-subtitle{font-size:1rem;color:var(--text-muted);margin:0}.modules-content{max-width:1400px;margin:0 auto}.modules-info-card{display:flex;gap:1.5rem;padding:1.5rem;background:linear-gradient(135deg,#3b82f61a,#8b5cf61a);border:1px solid rgba(59,130,246,.2);border-radius:12px;margin-bottom:2rem}.info-icon{flex-shrink:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--primary-color);color:#fff;border-radius:12px;font-size:1.5rem}.info-text h3{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.info-text p{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin:0}.modules-section{margin-bottom:2rem}.section-title{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-bottom:1.5rem;display:flex;align-items:center;gap:.75rem}.section-title i{color:var(--primary-color)}.modules-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.module-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;padding:1.5rem;transition:all .3s ease;display:flex;flex-direction:column;gap:1rem}.module-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001a;border-color:var(--primary-color)}.module-card.core-module{border:2px solid var(--primary-color);background:linear-gradient(135deg,#3b82f60d,#3b82f605)}.module-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.5rem}.module-icon-wrapper{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;border:2px solid;flex-shrink:0}.module-icon-wrapper.core{background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));color:#fff;border-color:var(--primary-color)}.module-badge{padding:.35rem .75rem;border-radius:20px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;flex-shrink:0}.core-badge{background:var(--primary-color);color:#fff}.module-body{flex:1}.module-title{font-size:1.15rem;font-weight:700;color:var(--text-primary);margin:0 0 .75rem;word-wrap:break-word;overflow-wrap:break-word}.module-description{font-size:.875rem;color:var(--text-secondary);line-height:1.6;margin:0;word-wrap:break-word;overflow-wrap:break-word}.module-features{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.module-features li{font-size:.8rem;color:var(--text-secondary);display:flex;align-items:flex-start;gap:.5rem;word-wrap:break-word;overflow-wrap:break-word}.module-features li i{color:var(--success-color);font-size:.7rem;margin-top:.25rem;flex-shrink:0}.module-footer{padding-top:1rem;border-top:1px solid var(--border-color)}.module-status{display:inline-flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:600;color:var(--text-muted)}.module-status.active{color:var(--success-color)}.module-status i{font-size:.9rem}.no-modules-card{grid-column:1 / -1;text-align:center;padding:3rem 2rem;background:var(--card-bg);border:2px dashed var(--border-color);border-radius:16px}.no-modules-icon{width:80px;height:80px;margin:0 auto 1.5rem;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);border-radius:50%;color:var(--text-muted);font-size:2rem}.no-modules-card h3{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:0 0 .75rem}.no-modules-card p{font-size:.95rem;color:var(--text-secondary);line-height:1.6;max-width:600px;margin:0 auto}.modules-footer-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-top:2rem}.footer-info-card{display:flex;gap:1rem;padding:1.25rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px}.footer-info-card i{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#3b82f61a;color:var(--primary-color);border-radius:10px;font-size:1.25rem}.footer-info-card h4{font-size:.95rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.footer-info-card p{font-size:.85rem;color:var(--text-secondary);line-height:1.5;margin:0}[data-theme=dark] .active-modules-page{background:#0a0a0a}[data-theme=dark] .page-header h1{color:#fff}[data-theme=dark] .header-subtitle{color:#94a3b8}[data-theme=dark] .modules-info-card{background:#1a1a1a;border-color:#ffffff1a}[data-theme=dark] .info-icon{background:var(--primary-color)}[data-theme=dark] .info-text h3{color:#fff}[data-theme=dark] .info-text p{color:#cbd5e1}[data-theme=dark] .section-title{color:#fff}[data-theme=dark] .module-card{background:#1a1a1a;border-color:#ffffff1a;box-shadow:0 4px 6px -1px #00000080}[data-theme=dark] .module-card:hover{background:#222;box-shadow:0 20px 25px -5px #000c;border-color:#3b82f6}[data-theme=dark] .module-card.core-module{background:#1a1a1a;border-color:#3b82f6}[data-theme=dark] .module-title{color:#fff}[data-theme=dark] .module-description{color:#cbd5e1}[data-theme=dark] .module-features li,[data-theme=dark] .module-status{color:#94a3b8}[data-theme=dark] .module-status.active{color:#22c55e}[data-theme=dark] .no-modules-card{background:#1a1a1a;border-color:#ffffff1a}[data-theme=dark] .no-modules-icon{background:#0f0f0f;color:#64748b}[data-theme=dark] .no-modules-card h3{color:#fff}[data-theme=dark] .no-modules-card p{color:#94a3b8}[data-theme=dark] .footer-info-card{background:#1a1a1a;border-color:#ffffff1a}[data-theme=dark] .footer-info-card i{background:#3b82f626;color:var(--primary-color)}[data-theme=dark] .footer-info-card h4{color:#fff}[data-theme=dark] .footer-info-card p{color:#94a3b8}@media(max-width:768px){.active-modules-page{padding:1rem}.header-content h1{font-size:1.5rem}.modules-grid{grid-template-columns:1fr}.modules-info-card{flex-direction:column;text-align:center}.info-icon{margin:0 auto}.modules-footer-info{grid-template-columns:1fr}}.role-page-content{padding:2rem;background:transparent;margin:2rem;animation:fadeIn .5s ease-out}.role-page-content h2{color:var(--app-text-primary);border-bottom:2px solid var(--app-border-color);padding-bottom:.5rem;margin-bottom:1.5rem}.table-container{overflow-x:auto;border-radius:8px;border:1px solid var(--app-border-color);margin-bottom:1.5rem}.data-table{width:100%;border-collapse:collapse;font-family:Inter,sans-serif;font-size:.95rem}.data-table thead{background-color:var(--app-bg-secondary);border-bottom:2px solid var(--app-border-color)}.data-table th{text-align:left;padding:1rem;font-weight:600;color:var(--app-text-muted);text-transform:uppercase;font-size:.8rem;letter-spacing:.05em}.data-table tbody tr{border-bottom:1px solid var(--app-border-color);transition:background-color .2s}.data-table tbody tr:last-child{border-bottom:none}.data-table tbody tr:hover{background-color:var(--app-bg-secondary)}.data-table td{padding:1rem;color:var(--app-text-primary);vertical-align:middle}.admin-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem;position:relative}.form-label{font-size:.9rem;font-weight:500;color:var(--app-text-primary);margin-bottom:.2rem}.form-control{padding:.75rem 1rem;border:1px solid var(--app-border-color);border-radius:8px;font-size:.95rem;transition:all .2s cubic-bezier(.4,0,.2,1);outline:none;background-color:var(--app-card-bg);color:var(--app-text-primary)}.form-control:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-control::placeholder{color:var(--app-text-muted)}.form-floating{position:relative}.form-floating .form-control{padding-top:1.625rem;padding-bottom:.625rem}.form-floating label{position:absolute;top:0;left:0;height:100%;padding:1rem .75rem;pointer-events:none;border:1px solid transparent;transform-origin:0 0;transition:opacity .1s ease-in-out,transform .1s ease-in-out;color:#64748b}.form-floating .form-control:focus~label,.form-floating .form-control:not(:placeholder-shown)~label{opacity:.65;transform:scale(.85) translateY(-.5rem) translate(.15rem)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.custom-checkbox{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.95rem;color:var(--app-text-primary);-webkit-user-select:none;user-select:none}.custom-checkbox input[type=checkbox]{width:1.15rem;height:1.15rem;accent-color:#2563eb;cursor:pointer}.form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--app-border-color)}.btn-primary{background:#2563eb;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:.5rem}.btn-primary:hover{background:#1d4ed8;transform:translateY(-1px);box-shadow:0 4px 6px -1px #2563eb33}.btn-secondary{background:var(--app-bg-secondary);color:var(--app-text-muted);border:1px solid var(--app-border-color);padding:.75rem 1.5rem;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:.5rem}.btn-secondary:hover{background:var(--app-border-color);color:var(--app-text-primary)}.btn-danger{background:#ef4444;color:#fff;border:none;padding:.6rem 1.2rem;border-radius:8px;cursor:pointer;transition:background .2s}.btn-danger:hover{background:#dc2626}.modal-overlay{position:fixed;inset:0;background-color:#0f172a99;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease-out}.modal-content{background:var(--app-card-bg);padding:0;border-radius:16px;width:90%;max-width:650px;box-shadow:0 25px 50px -12px #00000040;max-height:90vh;overflow-y:auto;position:relative;animation:slideUp .3s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column}.modal-header{padding:1.5rem 2rem;border-bottom:1px solid var(--app-border-color);background:var(--app-card-bg);position:sticky;top:0;z-index:10;display:flex;justify-content:space-between;align-items:center}.modal-header h3{margin:0;color:var(--app-text-primary);font-size:1.4rem;font-weight:600}.modal-body{padding:2rem;overflow-y:auto}.close-btn{background:var(--app-bg-secondary);border:none;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1rem;color:#64748b;cursor:pointer;transition:all .2s}.close-btn:hover{background:#fee2e2;color:#ef4444}.badge{padding:.35rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;display:inline-block;letter-spacing:.025em}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.super-super-admin-dashboard{padding:1.5rem;background-color:#f8fafc;min-height:100vh;font-family:Inter,system-ui,-apple-system,sans-serif}.ssa-header{margin-bottom:2rem;position:relative;overflow:hidden;border-radius:16px;background:linear-gradient(135deg,#0f172a,#1e293b);padding:2.5rem 2rem;color:#fff;box-shadow:0 20px 25px -5px #0f172a4d,0 8px 10px -6px #0f172a33}.ssa-header:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 10% 20%,rgba(99,102,241,.15) 0%,transparent 20%),radial-gradient(circle at 90% 80%,rgba(236,72,153,.15) 0%,transparent 20%);pointer-events:none}.header-content{position:relative;z-index:2}.header-title-row{display:flex;justify-content:space-between;align-items:flex-end}.ssa-header h1{font-size:2.5rem;font-weight:800;letter-spacing:-.025em;margin:0;background:linear-gradient(to right,#fff,#94a3b8);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.ssa-header .subtitle{color:#94a3b8;font-size:1.1rem;margin-top:.5rem;font-weight:400}.last-updated{font-size:.875rem;color:#64748b;display:flex;align-items:center;gap:.5rem;background:#ffffff0d;padding:.5rem 1rem;border-radius:9999px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.ssa-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;margin-bottom:2.5rem}.ssa-kpi-card{background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -2px #0000000d;transition:transform .2s,box-shadow .2s;border:1px solid rgba(241,245,249,1);position:relative;overflow:hidden}.ssa-kpi-card:hover{transform:translateY(-4px);box-shadow:0 10px 15px -3px #0000000d,0 4px 6px -4px #0000000d}.ssa-kpi-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px}.kpi-accent-blue:before{background:#3b82f6}.kpi-accent-green:before{background:#10b981}.kpi-accent-purple:before{background:#8b5cf6}.kpi-accent-orange:before{background:#f59e0b}.kpi-accent-cyan:before{background:#06b6d4}.kpi-accent-pink:before{background:#ec4899}.kpi-accent-indigo:before{background:#6366f1}.ssa-kpi-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.ssa-kpi-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.25rem}.bg-blue-soft{background:#eff6ff;color:#3b82f6}.bg-green-soft{background:#f0fdf4;color:#10b981}.bg-purple-soft{background:#f5f3ff;color:#8b5cf6}.bg-orange-soft{background:#fff7ed;color:#f59e0b}.bg-cyan-soft{background:#ecfeff;color:#06b6d4}.bg-pink-soft{background:#fdf2f8;color:#ec4899}.bg-indigo-soft{background:#eef2ff;color:#6366f1}.bg-red-soft{background:#fef2f2;color:#ef4444}.ssa-kpi-title{color:#64748b;font-size:.875rem;font-weight:500;margin-bottom:.25rem}.ssa-kpi-value{font-size:1.75rem;font-weight:700;color:#1e293b;line-height:1.2}.ssa-kpi-trend{font-size:.75rem;font-weight:600;display:inline-flex;align-items:center;gap:.25rem;margin-top:.5rem;padding:.25rem .5rem;border-radius:9999px}.trend-up{background:#f0fdf4;color:#16a34a}.trend-down{background:#fef2f2;color:#dc2626}.trend-neutral{background:#f8fafc;color:#64748b}.ssa-visuals-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:1.5rem;margin-bottom:2.5rem}.ssa-card{background:#fff;border-radius:16px;padding:1.5rem;border:1px solid #f1f5f9;box-shadow:0 4px 6px -1px #0000000d;display:flex;flex-direction:column}.grid-col-8{grid-column:span 8}.grid-col-4{grid-column:span 4}.grid-col-6{grid-column:span 6}.grid-col-12{grid-column:span 12}@media(max-width:1024px){.grid-col-8,.grid-col-4,.grid-col-6{grid-column:span 12}}.card-title{font-size:1.125rem;font-weight:600;color:#1e293b;display:flex;align-items:center;gap:.75rem}.css-bar-chart{display:flex;align-items:flex-end;justify-content:space-between;height:200px;width:100%;padding-bottom:24px;border-bottom:1px solid #e2e8f0;position:relative}.bar-group{display:flex;flex-direction:column;align-items:center;gap:.5rem;flex:1;height:100%;justify-content:flex-end;position:relative}.bar{width:60%;background:#3b82f6;border-radius:4px 4px 0 0;transition:height .5s ease;position:relative;min-height:4px}.bar:hover{opacity:.9}.bar-label{font-size:.75rem;color:#64748b;position:absolute;bottom:-24px;width:100%;text-align:center}.bar-value{position:absolute;top:-20px;font-size:.7rem;font-weight:600;color:#475569}.module-usage-list{display:flex;flex-direction:column;gap:1.25rem}.module-item{display:flex;align-items:center;gap:1rem}.module-info{flex:1}.module-header-row{display:flex;justify-content:space-between;margin-bottom:.35rem}.module-name{font-size:.875rem;font-weight:600;color:#334155}.module-percent{font-size:.875rem;font-weight:700;color:#334155}.progress-track{width:100%;height:8px;background:#f1f5f9;border-radius:9999px;overflow:hidden}.progress-fill{height:100%;border-radius:9999px;transition:width 1s ease-out}.incident-list{display:flex;flex-direction:column;gap:1rem}.incident-item{display:flex;align-items:center;padding:1rem;border-radius:12px;background:#f8fafc;border:1px solid #e2e8f0;gap:1rem}.incident-severity{width:8px;height:8px;border-radius:50%;flex-shrink:0}.severity-high{background:#ef4444;box-shadow:0 0 0 4px #ef44441a}.severity-med{background:#f59e0b;box-shadow:0 0 0 4px #f59e0b1a}.severity-low{background:#3b82f6;box-shadow:0 0 0 4px #3b82f61a}.incident-content h4{margin:0;font-size:.875rem;font-weight:600;color:#1e293b}.incident-content p{margin:.25rem 0 0;font-size:.75rem;color:#64748b}.incident-action{margin-left:auto}.btn-resolve{padding:.4rem .8rem;font-size:.75rem;font-weight:500;color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:6px;cursor:pointer;transition:all .2s}.btn-resolve:hover{background:#f1f5f9;border-color:#94a3b8}.animate-fade-in{animation:fadeIn .5s ease-out forwards}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.kpi-skeleton{display:block;height:2rem;width:100%;border-radius:6px;background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0,#f1f5f9 75%);background-size:400px 100%;animation:shimmer 1.4s infinite}.view-all-btn{font-size:.8rem;font-weight:500;color:#3b82f6;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;padding:.35rem .75rem;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem;transition:all .2s}.view-all-btn:hover{background:#dbeafe;border-color:#93c5fd}.kpi-accent-red:before{background:#ef4444}.billing-table-container{background:#fff;border-radius:12px;box-shadow:0 4px 6px -1px #0000000d;border:1px solid #e2e8f0;overflow:hidden;margin-top:2rem}.billing-table{width:100%;border-collapse:collapse;font-family:Inter,sans-serif;text-align:left}.billing-table thead{background:#f8fafc;border-bottom:1px solid #e2e8f0}.billing-table th{padding:1rem 1.5rem;font-size:.85rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.billing-table tbody tr{border-bottom:1px solid #f1f5f9;transition:background-color .2s ease}.billing-table tbody tr:last-child{border-bottom:none}.billing-table tbody tr:hover{background-color:#f8fafc}.billing-table td{padding:1rem 1.5rem;font-size:.95rem;color:#334155;vertical-align:middle}.status-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:9999px;font-size:.8rem;font-weight:600}.status-active{background-color:#dcfce7;color:#166534}.status-pending{background-color:#ffedd5;color:#c2410c}.status-suspended{background-color:#fee2e2;color:#991b1b}.status-inactive{background-color:#f1f5f9;color:#475569}.btn-action{padding:.4rem .8rem;font-size:.85rem;font-weight:500;color:#475569;background:#fff;border:1px solid #cbd5e1;border-radius:6px;cursor:pointer;transition:all .2s}.btn-action:hover{background:#f1f5f9;border-color:#94a3b8;color:#1e293b}.billing-page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.billing-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2.5rem}.billing-stat-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 4px 6px -1px #0000000d;border:1px solid #e2e8f0}.billing-stat-label{font-size:.9rem;color:#64748b;font-weight:500;margin-bottom:.5rem}.billing-stat-value{font-size:1.8rem;color:#0f172a;font-weight:700}.general-admin-dashboard{padding:1.5rem;min-height:100vh;animation:fadeIn .4s ease-out}.general-admin-header{background:linear-gradient(135deg,#0d9488,#14b8a6);padding:2.5rem 2rem;border-radius:var(--radius-lg);color:#fff;margin-bottom:2rem;box-shadow:var(--shadow-active);position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.1)}.general-admin-header:before{content:"";position:absolute;top:-50%;right:-10%;width:600px;height:600px;background:radial-gradient(circle,#ffffff1a,#fff0 70%);border-radius:50%;pointer-events:none}.header-content{position:relative;z-index:10;display:flex;justify-content:space-between;align-items:flex-end}.general-admin-header h1{font-size:2rem;font-weight:800;margin:0 0 .5rem;letter-spacing:-.02em;text-shadow:0 2px 4px rgba(0,0,0,.1)}.general-admin-header p{margin:0;opacity:.95;font-size:1.1rem;font-weight:500}.admin-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;margin-bottom:2rem}.admin-kpi-card{background:var(--app-card-bg);border-radius:var(--radius-lg);padding:1.5rem;border:1px solid var(--app-border-color);box-shadow:var(--shadow-sm);display:flex;align-items:center;gap:1.25rem;transition:all .2s cubic-bezier(.4,0,.2,1)}.admin-kpi-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:#ccdbe8}.kpi-icon-circle{width:56px;height:56px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0;transition:transform .2s}.admin-kpi-card:hover .kpi-icon-circle{transform:scale(1.1)}.kpi-teal .kpi-icon-circle{background:#ccfbf1;color:#0d9488}.kpi-blue .kpi-icon-circle{background:#dbeafe;color:#2563eb}.kpi-orange .kpi-icon-circle{background:#ffedd5;color:#ea580c}.kpi-red .kpi-icon-circle{background:#fee2e2;color:#dc2626}.kpi-indigo .kpi-icon-circle{background:#e0e7ff;color:#4f46e5}.kpi-green .kpi-icon-circle{background:#dcfce7;color:#166534}.kpi-details{display:flex;flex-direction:column}.kpi-value{font-size:1.75rem;font-weight:800;color:var(--app-text-primary);line-height:1.2}.kpi-label{font-size:.9rem;color:var(--app-text-muted);font-weight:500;margin-top:.2rem}.admin-layout-grid{display:grid;grid-template-columns:2fr 1fr;gap:1.5rem}@media(max-width:1024px){.admin-layout-grid{grid-template-columns:1fr}}.admin-section-card{background:var(--app-card-bg);border-radius:var(--radius-lg);padding:1.75rem;border:1px solid var(--app-border-color);box-shadow:var(--shadow-sm);margin-bottom:0}.section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:0;border-bottom:none}.section-head h3{margin:0;font-size:1.2rem;color:var(--app-text-primary);font-weight:700;display:flex;align-items:center;gap:.5rem}.quick-actions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1rem}.quick-action-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;border:1px solid var(--app-border-color);border-radius:var(--radius-lg);padding:1.5rem 1rem;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);gap:.75rem;box-shadow:var(--shadow-sm)}.quick-action-btn:hover{background:#f0fdfa;border-color:#0d9488;transform:translateY(-4px);box-shadow:var(--shadow-md)}.quick-action-btn i{font-size:1.75rem;color:#0d9488;background:#ccfbf1;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center}.quick-action-btn span{font-size:.9rem;font-weight:600;color:var(--app-text-primary);text-align:center}.task-list{display:flex;flex-direction:column;gap:.5rem}.task-item{display:flex;align-items:flex-start;gap:1rem;padding:1rem;border:1px solid transparent;border-bottom:1px solid #f1f5f9;border-radius:var(--radius-md);transition:background .2s}.task-item:last-child{border-bottom:none}.task-item:hover{background:#f8fafc}.task-checkbox{margin-top:4px;width:20px;height:20px;cursor:pointer;accent-color:#0d9488}.task-content h4{margin:0;font-size:.95rem;font-weight:600;color:var(--app-text-primary)}.task-content p{margin:.25rem 0 0;font-size:.85rem;color:var(--app-text-muted)}.alert-badge{background:#fee2e2;color:#dc2626;padding:2px 10px;border-radius:20px;font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.academy-structure{padding:2rem;max-width:1400px;margin:0 auto}.academy-header{margin-bottom:2rem}.academy-header h1{font-size:2rem;font-weight:800;color:var(--text-primary);margin-bottom:.5rem}.academy-header p{color:var(--text-secondary);font-size:.95rem}.academy-grid{display:grid;grid-template-columns:350px 1fr;gap:2rem;align-items:start}.academy-sidebar{position:sticky;top:2rem;display:flex;flex-direction:column;gap:1rem;width:250px;flex-shrink:0}.academy-nav-card{background:var(--card-bg);border-radius:16px;padding:1.5rem;border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}.academy-nav-item{padding:1rem;border-radius:12px;display:flex;align-items:center;gap:1rem;cursor:pointer;transition:all .2s;color:var(--text-muted);font-weight:600;margin-bottom:.25rem}.academy-nav-item i{width:20px}.academy-nav-item:hover{background:var(--hover-bg);color:var(--text-primary)}.academy-nav-item.active{background:#3b82f61a;color:#3b82f6}.academy-main{background:var(--card-bg);border-radius:20px;padding:2rem;border:1px solid var(--border-color);min-height:600px;box-shadow:var(--shadow-sm)}.setup-section{background:var(--card-bg);padding:1.5rem;border-radius:12px}.setup-section-title{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin-bottom:1.5rem;display:flex;justify-content:space-between;align-items:center}.setup-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;background:var(--bg-tertiary);padding:1.5rem;border-radius:16px;margin-bottom:2rem;border:1px solid var(--border-color)}.setup-field{display:flex;flex-direction:column;gap:.5rem}.setup-field label{font-size:.85rem;font-weight:700;color:var(--text-secondary)}.setup-field input,.setup-field select,.setup-field textarea{padding:.8rem;border-radius:10px;border:1.5px solid var(--border-color);font-size:.9rem;background:var(--bg-primary);color:var(--text-primary);transition:all .2s ease}.setup-field input:focus,.setup-field select:focus,.setup-field textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(var(--primary-color-rgb),.1)}.setup-field input:disabled,.setup-field select:disabled{opacity:.6;cursor:not-allowed;background:var(--bg-secondary)}.setup-action-bar{grid-column:span 2;display:flex;justify-content:flex-end}.setup-table-container{overflow-x:auto}.setup-table{width:100%;border-collapse:collapse}.setup-table th{text-align:left;padding:1rem;background:var(--bg-tertiary);color:var(--text-secondary);font-size:.85rem;font-weight:700;border-bottom:2px solid var(--border-color)}.setup-table td{padding:1rem;border-bottom:1px solid var(--border-color);font-size:.9rem;color:var(--text-primary)}.setup-table tbody tr:hover{background:var(--hover-bg)}.status-badge{padding:.25rem .6rem;border-radius:6px;font-size:.75rem;font-weight:700}.status-badge.current{background:#22c55e1a;color:#22c55e}.academy-btn{padding:.6rem 1.2rem;border-radius:10px;font-weight:700;cursor:pointer;transition:all .2s;border:none;font-size:.9rem}.academy-btn-primary{background:var(--primary-color);color:#fff;box-shadow:0 2px 8px rgba(var(--primary-color-rgb),.3)}.academy-btn-primary:hover{background:var(--primary-dark);transform:translateY(-1px);box-shadow:0 4px 12px rgba(var(--primary-color-rgb),.4)}.academy-btn-secondary{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color)}.academy-btn-secondary:hover{background:var(--hover-bg);color:var(--text-primary)}.action-icon{background:none;border:none;cursor:pointer;color:var(--text-muted);margin-right:.5rem;padding:.5rem;border-radius:6px;transition:all .2s ease}.action-icon:hover{background:var(--hover-bg)}.action-icon.view:hover{color:#0ea5e9;background:#0ea5e91a}.action-icon.edit:hover{color:#f59e0b;background:#f59e0b1a}.action-icon.delete:hover{color:#ef4444;background:#ef44441a}.view-modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000}.view-modal{background:var(--card-bg);padding:2rem;border-radius:16px;width:400px;max-width:90%;box-shadow:var(--shadow-2xl);border:1px solid var(--border-color)}.view-modal h3{color:var(--text-primary);margin-bottom:1.5rem;font-size:1.25rem}.view-details{margin:1.5rem 0;display:grid;gap:.75rem}.view-row{display:flex;justify-content:space-between;border-bottom:1px solid var(--border-color);padding-bottom:.5rem}.view-row strong{color:var(--text-secondary);text-transform:capitalize;font-size:.875rem}.view-row span{color:var(--text-primary);font-weight:500}.loading-line{position:fixed;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--primary-color),var(--primary-light));animation:loading 1.5s ease-in-out infinite;z-index:9999}@keyframes loading{0%{transform:translate(-100%)}to{transform:translate(100%)}}.empty-state{text-align:center;padding:3rem;color:var(--text-muted)}.empty-state i{font-size:3rem;margin-bottom:1rem;opacity:.5}@media(max-width:1024px){.academy-grid{grid-template-columns:1fr}.academy-sidebar{position:relative;top:0;width:100%}.academy-nav-card{display:flex;flex-wrap:wrap;gap:.5rem}.academy-nav-item{flex:1;min-width:150px;justify-content:center}}@media(max-width:768px){.academy-structure{padding:1rem}.setup-form-grid{grid-template-columns:1fr}.academy-main{padding:1rem}.setup-table{font-size:.85rem}.setup-table th,.setup-table td{padding:.75rem .5rem}}.governance-hub{display:flex;height:calc(100vh - 120px);background:#fdfdfd;margin:-1rem;border-top:1px solid #edf2f7}.governance-sidebar{width:260px;background:#fff;border-right:1px solid #edf2f7;padding:1.5rem 1rem;display:flex;flex-direction:column;gap:.5rem}.governance-nav-item{display:flex;align-items:center;gap:1rem;padding:.85rem 1.25rem;border-radius:12px;color:#64748b;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);border:1px solid transparent}.governance-nav-item i{font-size:1.1rem;width:24px;text-align:center}.governance-nav-item:hover{background:#f8fafc;color:#1e293b}.governance-nav-item.active{background:#eff6ff;color:#2563eb;border-color:#dbeafe;box-shadow:0 4px 6px -1px #2563eb0d}.governance-content{flex:1;overflow-y:auto;padding:2rem;background:#f8fafc}.records-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.records-header h2{font-size:1.75rem;font-weight:800;color:#1e293b;letter-spacing:-.025em}.stats-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fff;padding:1.5rem;border-radius:16px;box-shadow:0 4px 6px -1px #0000000d;border:1px solid #f1f5f9}.stat-label{font-size:.875rem;color:#64748b;font-weight:600}.stat-value{font-size:1.5rem;font-weight:800;color:#1e293b;margin-top:.25rem}.hub-form-container{background:#fff;border-radius:20px;padding:2rem;box-shadow:0 10px 15px -3px #0000001a;margin-bottom:2.5rem;border:1px solid #e2e8f0}.hub-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.form-field{display:flex;flex-direction:column;gap:.5rem}.form-field label{font-size:.875rem;font-weight:700;color:#334155}.form-field input,.form-field select{padding:.75rem 1rem;border-radius:10px;border:1.5px solid #e2e8f0;transition:all .2s;font-size:.95rem}.form-field input:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 4px #3b82f61a}.data-table-container{background:#fff;border-radius:16px;box-shadow:0 4px 6px -1px #0000000d;overflow:hidden;border:1px solid #edf2f7}.hub-table{width:100%;border-collapse:collapse}.hub-table th{background:#f8fafc;padding:1rem 1.5rem;text-align:left;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#64748b;font-weight:700;border-bottom:1px solid #edf2f7}.hub-table td{padding:1.25rem 1.5rem;border-bottom:1px solid #f1f5f9}.user-identity{display:flex;align-items:center;gap:1rem}.avatar-circle{width:40px;height:40px;border-radius:12px;background:#eff6ff;color:#2563eb;display:flex;align-items:center;justify-content:center;font-weight:700}.user-main-info{display:flex;flex-direction:column}.user-full-name{font-weight:700;color:#1e293b}.user-sub-email{font-size:.8rem;color:#64748b}.access-matrix-container{display:grid;grid-template-columns:320px 1fr;gap:2rem;height:100%;align-items:start}.staff-pool{background:#fff;border-radius:20px;padding:1.5rem;border:1px solid #e2e8f0;position:sticky;top:0;display:flex;flex-direction:column}.staff-list-grid{flex:1;overflow-y:auto;max-height:calc(100vh - 300px);padding-right:.5rem}.staff-list-grid::-webkit-scrollbar{width:5px}.staff-list-grid::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:10px}.role-buckets-container{overflow-y:auto;max-height:calc(100vh - 250px);padding-right:1rem}.role-buckets{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.count-pill{background:#f1f5f9;color:#475569;padding:.2rem .6rem;border-radius:8px;font-size:.75rem}.empty-bucket-hint{border:2px dashed #e2e8f0;border-radius:12px;padding:1rem;text-align:center;color:#94a3b8;font-size:.8rem;font-style:italic}.unassign-action-btn{background:none;border:none;cursor:pointer;color:#94a3b8;padding:.25rem;transition:all .2s}.unassign-action-btn:hover{color:#ef4444;transform:scale(1.1)}.wizard-progress{display:flex;gap:.75rem;align-items:center}.wizard-step-indicator{width:28px;height:28px;border-radius:50%;background:#f1f5f9;color:#64748b;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:800;border:2px solid transparent;transition:all .3s cubic-bezier(.4,0,.2,1)}.wizard-step-indicator.active{background:#eff6ff;color:#2563eb;border-color:#2563eb;transform:scale(1.1)}.wizard-step-indicator.complete{background:#22c55e;color:#fff}.wizard-actions{padding-top:1rem;border-top:1px solid #f1f5f9}.role-bucket{background:#fff;border:2px solid #e2e8f0;border-radius:20px;padding:1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1);min-height:180px;display:flex;flex-direction:column}.role-bucket.drag-over{background:#f0f7ff;border-color:#3b82f6;border-style:dashed;transform:translateY(-5px);box-shadow:0 10px 25px -5px #3b82f633}.role-bucket-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:1px solid #f1f5f9}.role-tag{background:#1e293b;color:#fff;padding:.4rem 1rem;border-radius:10px;font-size:.8rem;font-weight:700;letter-spacing:.025em}.bucket-assigned-list{flex:1;display:flex;flex-direction:column;gap:.5rem}.assigned-user-pill{display:flex;align-items:center;justify-content:space-between;padding:.6rem .85rem;background:#f8fafc;border:1px solid #edf2f7;border-radius:10px;font-size:.85rem;font-weight:600;color:#334155}.draggable-user-card{background:#fff;padding:1rem;border-radius:12px;border:1px solid #e2e8f0;margin-bottom:.75rem;cursor:grab;display:flex;align-items:center;gap:.75rem;box-shadow:0 2px 4px #0000000d;transition:transform .2s,box-shadow .2s}.draggable-user-card:hover{transform:translateY(-2px);box-shadow:0 8px 15px -3px #0000001a}.draggable-user-card:active{cursor:grabbing}.access-badge{padding:.35rem .75rem;border-radius:8px;font-size:.7rem;font-weight:800;text-transform:uppercase}.badge-admin{background:#fee2e2;color:#991b1b}.badge-student{background:#dcfce7;color:#166534}.badge-category{background:#f1f5f9;color:#475569}.gov-tabs{display:flex;gap:1rem;margin-bottom:2rem;background:#f1f5f9;padding:.4rem;border-radius:12px;width:fit-content}.gov-tab{padding:.6rem 1.5rem;border-radius:8px;font-weight:600;color:#64748b;cursor:pointer;transition:all .2s}.gov-tab.active{background:#fff;color:#1e293b;box-shadow:0 4px 6px -1px #0000001a}.role-management-page{padding:2rem;min-height:100vh;background:#f8fafc}.page-header-gradient{background:linear-gradient(135deg,#1e293b,#334155);padding:3rem 2rem;border-radius:16px;color:#fff;margin-bottom:2rem;box-shadow:0 10px 25px -5px #0000001a}.page-header-gradient h1{font-size:2.5rem;font-weight:800;margin-bottom:.5rem}.role-builder-container{display:grid;grid-template-columns:350px 1fr 300px;gap:2rem;align-items:start}.roles-list-column{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 4px 6px -1px #0000001a;height:calc(100vh - 350px);overflow-y:auto}.column-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #e2e8f0}.column-header h3{font-weight:700;color:#1e293b}.add-role-btn{background:#2563eb;color:#fff;border:none;width:32px;height:32px;border-radius:8px;cursor:pointer;transition:all .2s}.add-role-btn:hover{background:#1d4ed8;transform:scale(1.1)}.role-nav-item{width:100%;text-align:left;padding:1rem;border-radius:8px;background:transparent;border:1px solid transparent;margin-bottom:.5rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.75rem}.role-nav-item:hover{background:#f1f5f9}.role-nav-item.active{background:#eff6ff;border-color:#3b82f6;color:#2563eb}.role-nav-item i{width:24px;text-align:center}.assignment-workspace{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 4px 6px -1px #0000001a;min-height:calc(100vh - 350px)}.role-info-banner{background:#f8fafc;padding:1.5rem;border-radius:12px;margin-bottom:2rem;border-left:4px solid #3b82f6}.role-info-banner h2{font-size:1.5rem;font-weight:700;color:#1e293b}.drop-zone{border:2px dashed #cbd5e1;border-radius:12px;padding:2rem;min-height:300px;transition:all .3s;display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1rem}.drop-zone.active{background:#f0f9ff;border-color:#3b82f6}.empty-state{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#94a3b8;height:100%;margin-top:2rem}.empty-state i{font-size:3rem;margin-bottom:1rem}.responsibility-card{background:#fff;border:1px solid #e2e8f0;padding:1rem;border-radius:10px;cursor:grab;transition:all .2s;display:flex;flex-direction:column;align-items:center;text-align:center;gap:.5rem;box-shadow:0 2px 4px #0000000d}.responsibility-card:hover{border-color:#3b82f6;transform:translateY(-2px);box-shadow:0 4px 6px #0000001a}.responsibility-card i{font-size:1.25rem;color:#64748b}.assigned-card{background:#f8fafc;border-color:#3b82f6;cursor:default;position:relative}.remove-resp{position:absolute;top:-5px;right:-5px;background:#ef4444;color:#fff;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem;border:none;cursor:pointer;opacity:0;transition:opacity .2s}.assigned-card:hover .remove-resp{opacity:1}.responsibilities-pool-column{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 4px 6px -1px #0000001a;height:calc(100vh - 350px);overflow-y:auto}.category-group{margin-bottom:1.5rem}.category-title{font-size:.75rem;text-transform:uppercase;font-weight:700;color:#94a3b8;margin-bottom:.75rem;display:block}.drawer-items{display:flex;flex-direction:column;gap:.75rem}.sticky-save-bar{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);background:#1e293b;padding:1rem 2rem;border-radius:12px;display:flex;align-items:center;gap:2rem;box-shadow:0 20px 25px -5px #0003;z-index:100;color:#fff}.save-btn{background:#3b82f6;color:#fff;border:none;padding:.5rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.role-modal{background:#fff;padding:2rem;border-radius:16px;width:400px}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600}.form-group input,.form-group textarea{width:100%;padding:.75rem;border:1px solid #e2e8f0;border-radius:8px}.system-badge{background:#e2e8f0;color:#475569;font-size:.65rem;padding:2px 6px;border-radius:4px;text-transform:uppercase;font-weight:700}.delete-role-mini-btn{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:transparent;border:none;color:#94a3b8;padding:5px;cursor:pointer;opacity:0;transition:all .2s}.role-nav-wrapper:hover .delete-role-mini-btn{opacity:1}.delete-role-mini-btn:hover{color:#ef4444}.create-subject-page{padding:2rem;max-width:800px;margin:0 auto}.form-container{background:var(--bg-primary);border-radius:8px;padding:2rem;box-shadow:0 2px 4px #0000001a}.create-subject-form{display:flex;flex-direction:column;gap:1.5rem}.form-group input,.form-group select,.form-group textarea{padding:.75rem;border:1px solid var(--border-color);border-radius:4px;font-size:.9rem;background:var(--bg-primary);color:var(--text-primary);font-family:inherit}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px rgba(var(--primary-color-rgb),.1)}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1rem}@media(max-width:768px){.create-subject-page{padding:1rem}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column}}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px}.loader{width:48px;height:48px;border:5px solid var(--bg-secondary);border-bottom-color:var(--primary-color);border-radius:50%;display:inline-block;box-sizing:border-box;animation:rotation 1s linear infinite;margin-bottom:1rem}.form-group.empty{visibility:hidden}.page-header{margin-bottom:2rem;display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem;flex-wrap:wrap}.header-content{flex:1;min-width:250px}.page-header h1{color:var(--text-primary);margin-bottom:.5rem;font-size:1.75rem;font-weight:600}[data-theme=dark] .page-header h1{color:#f1f5f9}.page-header p{color:var(--text-secondary);font-size:.9rem;margin:0}[data-theme=dark] .page-header p{color:#94a3b8}.filters-section{margin-bottom:2rem;display:flex;gap:1rem;flex-wrap:wrap}.search-box{position:relative;flex:1;min-width:250px;max-width:400px}.search-box i{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-secondary);font-size:14px;pointer-events:none}[data-theme=dark] .search-box i{color:#64748b}.search-box input{width:100%;padding:.75rem .75rem .75rem 2.5rem;border:1px solid var(--border-color);border-radius:8px;font-size:.9rem;background:var(--bg-primary);color:var(--text-primary);transition:all .2s ease}[data-theme=dark] .search-box input{background:#0f0f0f;border-color:#ffffff1a;color:#f1f5f9}[data-theme=dark] .search-box input::placeholder{color:#64748b}[data-theme=dark] .search-box input:focus{background:#0a0a0a;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.content-placeholder{background:var(--bg-primary);border-radius:8px;padding:3rem 2rem;text-align:center;box-shadow:0 2px 4px #0000001a}.content-placeholder p{color:var(--text-secondary);font-size:1rem;margin:0}.form-container{background:var(--bg-primary);border-radius:12px;padding:2rem;box-shadow:0 2px 4px #0000001a;border:1px solid var(--border-color)}[data-theme=dark] .form-container{background:#1a1a1a;border-color:#ffffff1a;box-shadow:0 2px 8px #0000004d}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}[data-theme=dark] .form-group label{color:#f1f5f9}.form-group input,.form-group select,.form-group textarea{padding:.75rem;border:1px solid var(--border-color);border-radius:8px;font-size:.9rem;background:var(--bg-primary);color:var(--text-primary);font-family:inherit;transition:border-color .2s ease,box-shadow .2s ease}[data-theme=dark] .form-group input,[data-theme=dark] .form-group select,[data-theme=dark] .form-group textarea{background:#0f0f0f;border-color:#ffffff1a;color:#f1f5f9}[data-theme=dark] .form-group input::placeholder,[data-theme=dark] .form-group textarea::placeholder{color:#64748b}[data-theme=dark] .form-group input:focus,[data-theme=dark] .form-group select:focus,[data-theme=dark] .form-group textarea:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border-color);flex-wrap:wrap}[data-theme=dark] .form-actions{border-color:#ffffff1a}.btn-primary,.btn-secondary{padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;white-space:nowrap;flex-shrink:0}[data-theme=dark] .btn-primary{background:#6366f1}.btn-primary:hover{background:var(--primary-color-dark);transform:translateY(-1px);box-shadow:0 4px 8px #6366f14d}[data-theme=dark] .btn-primary:hover{background:#4f46e5}[data-theme=dark] .btn-secondary{background:#0f0f0f;border-color:#ffffff1a;color:#94a3b8}.btn-secondary:hover{background:var(--hover-bg);color:var(--text-primary)}[data-theme=dark] .btn-secondary:hover{background:#1a1a1a;color:#f1f5f9}.table-container{background:var(--bg-primary);border-radius:12px;overflow:hidden;box-shadow:0 2px 4px #0000001a;border:1px solid var(--border-color)}[data-theme=dark] .table-container{background:#1a1a1a;border-color:#ffffff1a;box-shadow:0 2px 8px #0000004d}.data-table{width:100%;border-collapse:collapse;min-width:800px}.data-table th{background:var(--bg-secondary);padding:1rem;text-align:left;font-weight:600;color:var(--text-primary);border-bottom:1px solid var(--border-color);font-size:.85rem;text-transform:uppercase;letter-spacing:.5px}[data-theme=dark] .data-table th{background:#0f0f0f;border-color:#ffffff0d;color:#94a3b8}.data-table td{padding:1rem;border-bottom:1px solid var(--border-color);color:var(--text-primary);font-size:.9rem}[data-theme=dark] .data-table td{border-color:#ffffff0d;color:#f1f5f9}.data-table tbody tr:hover{background:var(--hover-bg)}[data-theme=dark] .data-table tbody tr:hover{background:#ffffff05}.data-table tbody tr:last-child td{border-bottom:none}.action-buttons{display:flex;gap:.5rem;justify-content:flex-start}.btn-edit,.btn-view,.btn-delete{width:32px;height:32px;border:none;border-radius:6px;background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;font-size:.875rem}[data-theme=dark] .btn-edit,[data-theme=dark] .btn-view,[data-theme=dark] .btn-delete{background:#ffffff0d;color:#94a3b8}.btn-edit:hover{background:#f59e0b1a;color:#f59e0b}[data-theme=dark] .btn-edit:hover{background:#f59e0b26;color:#fbbf24}.btn-view:hover{background:#3b82f61a;color:#3b82f6}[data-theme=dark] .btn-view:hover{background:#3b82f626;color:#60a5fa}.btn-delete:hover{background:#ef44441a;color:#ef4444}[data-theme=dark] .btn-delete:hover{background:#ef444426;color:#f87171}.status-badge{padding:.375rem .875rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;display:inline-block;white-space:nowrap}.status-badge.active{background:#22c55e26;color:#22c55e}[data-theme=dark] .status-badge.active{background:#22c55e33;color:#4ade80}.status-badge.inactive{background:#ef444426;color:#ef4444}[data-theme=dark] .status-badge.inactive{background:#ef444433;color:#f87171}.status-badge.pending,.status-badge.draft{background:#f59e0b26;color:#f59e0b}[data-theme=dark] .status-badge.pending,[data-theme=dark] .status-badge.draft{background:#f59e0b33;color:#fbbf24}.status-badge.archived{background:#6b728026;color:#6b7280}[data-theme=dark] .status-badge.archived{background:#6b728033;color:#9ca3af}@media(max-width:768px){.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column}.table-container{overflow-x:auto}.data-table{min-width:600px}}[data-theme=dark] .content-placeholder{background:#1a1a1a;border-color:#ffffff1a;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .content-placeholder p{color:#94a3b8}@media(max-width:768px){.page-header{flex-direction:column;align-items:stretch}.header-content{min-width:auto}.btn-primary,.btn-secondary{width:100%}.filters-section{flex-direction:column}.search-box{max-width:none}.form-actions .btn-primary,.form-actions .btn-secondary{width:100%}.data-table{min-width:700px}.action-buttons{flex-wrap:nowrap}}@media(max-width:480px){.page-header h1{font-size:1.5rem}.data-table{min-width:600px}.btn-edit,.btn-view,.btn-delete{width:28px;height:28px;font-size:.75rem}}.filter-bar{display:flex;gap:1rem;margin:1.5rem 0;background:#fff;padding:1rem;border-radius:12px;box-shadow:0 1px 3px #0000000d;flex-wrap:wrap;border:1px solid #e2e8f0}[data-theme=dark] .filter-bar{background:#1a1a1a;border-color:#ffffff1a;box-shadow:0 1px 3px #000c}.filter-search{flex:1 1 250px}.filter-search input{width:100%;padding:.75rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.9rem;background:#fff;color:#1e293b;transition:all .2s}[data-theme=dark] .filter-search input{background:#0c0c0c;border-color:#ffffff1a;color:#e5e5e5}[data-theme=dark] .filter-search input::placeholder{color:#6b7280}.filter-search input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}[data-theme=dark] .filter-search input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea4d}.filter-select-group{flex:0 0 auto;min-width:150px}.filter-select-group select{width:100%;padding:.75rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.9rem;background:#fff;color:#1e293b;cursor:pointer;transition:all .2s}[data-theme=dark] .filter-select-group select{background:#0c0c0c;border-color:#ffffff1a;color:#e5e5e5}.filter-select-group select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}[data-theme=dark] .filter-select-group select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea4d}.btn-clear{padding:.75rem 1.25rem;background:#f1f5f9;border:none;border-radius:8px;cursor:pointer;color:#64748b;font-weight:500;transition:all .2s;white-space:nowrap}[data-theme=dark] .btn-clear{background:#262626;color:#9ca3af}.btn-clear:hover{background:#e2e8f0;color:#475569}[data-theme=dark] .btn-clear:hover{background:#333;color:#d1d5db}.loading-state{text-align:center;padding:3rem 2rem}.loading-state p{color:#64748b;margin-top:1rem;font-size:.9rem}[data-theme=dark] .loading-state p{color:#9ca3af}.loader{width:48px;height:48px;border:4px solid #f1f5f9;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto}.subject-type{font-size:.8rem;color:#64748b;margin-top:.25rem}[data-theme=dark] .subject-type{color:#9ca3af}.program-name{font-size:.8rem;color:#64748b;font-weight:500;margin-top:.25rem}[data-theme=dark] .program-name{color:#9ca3af}.class-info{font-size:.8rem;color:#2563eb;font-weight:600;margin-top:.25rem}[data-theme=dark] .class-info{color:#60a5fa}.empty-state-cell{text-align:center;padding:3rem!important;color:#64748b}[data-theme=dark] .empty-state-cell{color:#9ca3af}.btn-edit-inline{margin-right:.5rem;color:#2563eb!important}[data-theme=dark] .btn-edit-inline{color:#60a5fa!important}.btn-delete-inline{color:#ef4444!important}[data-theme=dark] .btn-delete-inline{color:#f87171!important}.badge{padding:.35rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;display:inline-block;white-space:nowrap}.badge-blue{background:#3b82f626;color:#2563eb}[data-theme=dark] .badge-blue{background:#3b82f633;color:#60a5fa}.badge-green{background:#22c55e26;color:#22c55e}[data-theme=dark] .badge-green{background:#22c55e33;color:#4ade80}.badge-yellow{background:#f59e0b26;color:#f59e0b}[data-theme=dark] .badge-yellow{background:#f59e0b33;color:#fbbf24}.badge-red{background:#ef444426;color:#ef4444}[data-theme=dark] .badge-red{background:#ef444433;color:#f87171}@media(max-width:768px){.filter-bar{flex-direction:column}.filter-search,.filter-select-group{flex:1 1 auto;min-width:100%}.btn-clear{width:100%}}.faculty-allocation{padding:1.5rem;height:100%;display:flex;flex-direction:column;gap:1.5rem;color:#1e293b}[data-theme=dark] .faculty-allocation{color:#e2e8f0}.allocation-header h2{font-size:1.75rem;font-weight:700;color:#0f172a;margin-bottom:.5rem}[data-theme=dark] .allocation-header h2{color:#f1f5f9}.allocation-header p{color:#64748b}[data-theme=dark] .allocation-header p{color:#94a3b8}.allocation-container{display:grid;grid-template-columns:320px 1fr;gap:1.5rem;flex-grow:1;min-height:0}.faculty-sidebar{background:#fff;border-radius:1rem;display:flex;flex-direction:column;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;border:1px solid #e2e8f0;overflow:hidden;height:calc(100vh - 220px);position:sticky;top:1.5rem}[data-theme=dark] .faculty-sidebar{background:#1a1a1a;box-shadow:0 4px 6px -1px #00000080;border-color:#ffffff1a}.sidebar-search{padding:1rem;border-bottom:1px solid #f1f5f9}[data-theme=dark] .sidebar-search{border-bottom-color:#ffffff1a}.sidebar-search input{width:100%;padding:.75rem 1rem;border-radius:.75rem;border:1px solid #e2e8f0;background:#f8fafc;font-size:.875rem;outline:none;transition:all .2s}[data-theme=dark] .sidebar-search input{background:#ffffff0d;border-color:#ffffff1a;color:#f1f5f9}.sidebar-search input:focus{border-color:#3b82f6;background:#fff;box-shadow:0 0 0 4px #3b82f61a}[data-theme=dark] .sidebar-search input:focus{background:#ffffff14;box-shadow:0 0 0 4px #3b82f633}.faculty-list{flex-grow:1;overflow-y:auto;padding:1rem .5rem 1rem 1rem;display:flex;flex-direction:column;gap:.75rem}.faculty-card{display:flex;align-items:center;gap:1rem;padding:.75rem;background:#fff;border:1px solid #f1f5f9;border-radius:.75rem;cursor:grab;transition:all .2s;-webkit-user-select:none;user-select:none}[data-theme=dark] .faculty-card{background:#0f0f0f;border-color:#ffffff0d}.faculty-card:hover{border-color:#3b82f6;transform:translateY(-2px);box-shadow:0 4px 12px -2px #0000000d}[data-theme=dark] .faculty-card:hover{background:#222;box-shadow:0 4px 12px -2px #00000080}.faculty-card:active{cursor:grabbing}.faculty-avatar{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#3b82f6);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.813rem;flex-shrink:0}.faculty-info{flex-grow:1}.faculty-name{font-size:.875rem;font-weight:600;color:#334155}[data-theme=dark] .faculty-name{color:#f1f5f9}.faculty-role{font-size:.75rem;color:#94a3b8}[data-theme=dark] .faculty-role{color:#64748b}.drag-handle{color:#cbd5e1;font-size:1.25rem}[data-theme=dark] .drag-handle{color:#64748b}.filter-toggle-btn{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;border-radius:.75rem;border:1px solid #e2e8f0;background:#fff;color:#475569;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 1px 2px #0000000d}[data-theme=dark] .filter-toggle-btn{background:#1a1a1a;border-color:#ffffff1a;color:#cbd5e1}.filter-toggle-btn:hover{background:#f8fafc;border-color:#cbd5e1;color:#1e293b}[data-theme=dark] .filter-toggle-btn:hover{background:#222;border-color:#fff3;color:#f1f5f9}.filter-toggle-btn.active{background:#eff6ff;border-color:#3b82f6;color:#2563eb}[data-theme=dark] .filter-toggle-btn.active{background:#3b82f626;border-color:#3b82f64d;color:#60a5fa}.filter-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.25rem;padding:1.25rem;background:#fff;border-radius:1rem;border:1px solid #e2e8f0;margin-top:1rem;box-shadow:0 4px 6px -1px #0000000d;animation:slideDown .3s cubic-bezier(.16,1,.3,1)}[data-theme=dark] .filter-bar{background:#1a1a1a;border-color:#ffffff1a;box-shadow:0 4px 6px -1px #00000080}.filter-item{display:flex;flex-direction:column;gap:.5rem}.filter-item label{font-size:.75rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.025em}[data-theme=dark] .filter-item label{color:#94a3b8}.filter-item select{padding:.625rem;border-radius:.5rem;border:1px solid #e2e8f0;background:#f8fafc;font-size:.875rem;color:#334155;outline:none;cursor:pointer;transition:all .2s}[data-theme=dark] .filter-item select{background:#ffffff0d;border-color:#ffffff1a;color:#f1f5f9}.filter-item select:focus{border-color:#3b82f6;background:#fff;box-shadow:0 0 0 3px #3b82f61a}[data-theme=dark] .filter-item select:focus{background:#ffffff14;box-shadow:0 0 0 3px #3b82f633}.reset-filters{align-self:flex-end;padding:.625rem 1rem;border-radius:.5rem;border:1px solid #fca5a5;background:#fef2f2;color:#dc2626;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}[data-theme=dark] .reset-filters{background:#ef444426;border-color:#ef44444d;color:#fca5a5}.reset-filters:hover{background:#fee2e2;color:#b91c1c}[data-theme=dark] .reset-filters:hover{background:#ef444433;color:#ef4444}.allocation-grid-container{flex-grow:1;overflow-y:auto;padding-right:.5rem;min-height:0}.allocation-grid{display:flex;flex-direction:column}.class-allocation-card{background:#fff;border-radius:1rem;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000001a;display:flex;flex-direction:column;overflow:hidden;height:fit-content}[data-theme=dark] .class-allocation-card{background:#1a1a1a;border-color:#ffffff1a;box-shadow:0 1px 3px #00000080}.class-title{padding:1rem 1.25rem;background:#f8fafc;border-bottom:1px solid #f1f5f9}[data-theme=dark] .class-title{background:#0f0f0f;border-bottom-color:#ffffff1a}.class-title h3{font-size:1rem;font-weight:700;color:#1e293b;margin:0}[data-theme=dark] .class-title h3{color:#f1f5f9}.subjects-list{padding:1rem;display:flex;flex-direction:column;gap:2rem}.subject-slot{padding:1rem;border-radius:.75rem;border:2px dashed #e2e8f0;background:#fdfdfd;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;gap:.75rem;position:relative}[data-theme=dark] .subject-slot{background:#0f0f0f;border-color:#ffffff1a}.subject-slot.empty:hover{border-color:#3b82f6;background:#eff6ff}[data-theme=dark] .subject-slot.empty:hover{background:#3b82f61a}.subject-slot.assigned{border-style:solid;border-color:#3b82f6;background:#fff;box-shadow:0 4px 6px -1px #3b82f60d}[data-theme=dark] .subject-slot.assigned{background:#1a1a1a;box-shadow:0 4px 6px -1px #3b82f633}.subject-meta{display:flex;flex-direction:column}.sub-code{font-size:.7rem;font-weight:700;color:#3b82f6;text-transform:uppercase;letter-spacing:.05em}[data-theme=dark] .sub-code{color:#60a5fa}.sub-name{font-size:.938rem;font-weight:600;color:#334155}.slot-assignee{min-height:42px;display:flex;align-items:center}.assignee-pill{background:linear-gradient(135deg,#eff6ff,#e0f2fe);color:#1d4ed8;padding:.35rem .5rem .35rem .35rem;border-radius:2rem;font-size:.813rem;font-weight:600;display:flex;align-items:center;gap:.5rem;border:1px solid #bfdbfe;animation:slideIn .2s ease-out;max-width:100%}.assignee-avatar{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#3b82f6);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:700;flex-shrink:0;letter-spacing:.02em}.assignee-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px;color:#1e40af}.assignee-remove{background:none;border:none;color:#93c5fd;font-size:1.1rem;line-height:1;cursor:pointer;padding:0 .2rem;border-radius:50%;transition:all .15s;flex-shrink:0;display:flex;align-items:center;justify-content:center;width:20px;height:20px}.assignee-remove:hover{background:#fee2e2;color:#dc2626}.drop-hint{color:#94a3b8;font-size:.813rem;font-style:italic;width:100%;text-align:center}[data-theme=dark] .drop-hint{color:#64748b}.department-group-header{font-size:1.5rem;font-weight:700;color:#0f172a;margin-bottom:1.5rem;padding-bottom:.5rem;border-bottom:2px solid #3b82f6;display:inline-block}[data-theme=dark] .department-group-header{color:#f1f5f9}.no-classes-card{padding:2rem;background:#f8fafc;border-radius:8px;border:1px dashed #cbd5e1;text-align:center;color:#64748b}[data-theme=dark] .no-classes-card{background:#0f0f0f;border-color:#ffffff1a;color:#94a3b8}.no-classes-card-subtitle{font-size:.85rem;margin-top:4px}.no-subjects,.no-classes{padding:2rem;text-align:center;color:#94a3b8;font-size:.875rem}[data-theme=dark] .no-subjects,[data-theme=dark] .no-classes{color:#64748b}@keyframes slideIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.faculty-list::-webkit-scrollbar,.allocation-grid-container::-webkit-scrollbar{width:8px}.faculty-list::-webkit-scrollbar-track,.allocation-grid-container::-webkit-scrollbar-track{background:#f8fafc;border-radius:10px}.faculty-list::-webkit-scrollbar-thumb,.allocation-grid-container::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px;border:2px solid #f8fafc}.faculty-list::-webkit-scrollbar-thumb:hover,.allocation-grid-container::-webkit-scrollbar-thumb:hover{background:#94a3b8}.platform-module-container{min-height:100vh}.module-tabs{display:flex;gap:1rem;padding:1rem 1.5rem;background:#fff;border-bottom:1px solid #e2e8f0;margin-bottom:1rem}[data-theme=dark] .module-tabs{background:#1a1a1a;border-bottom-color:#ffffff1a}.module-tab-btn{padding:.6rem 1.2rem;border-radius:.5rem;border:none;background:#eff6ff;color:#2563eb;font-weight:600;cursor:default;transition:all .2s;display:flex;align-items:center;gap:8px}[data-theme=dark] .module-tab-btn{background:#3b82f626;color:#60a5fa}.view-content{padding:0 1.5rem}.blogs-management-page{padding:2rem}.header-content h1{color:var(--text-primary);margin-bottom:.5rem;font-size:1.75rem}.search-box input{width:100%;padding:.75rem 1rem .75rem 2.5rem;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.9rem;background:var(--card-bg);color:var(--text-primary);transition:all .2s ease}.search-box input::placeholder{color:var(--text-muted)}.filter-select{padding:.75rem;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.9rem;background:var(--card-bg);color:var(--text-primary);min-width:150px;cursor:pointer;transition:all .2s ease}.filter-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(var(--primary-color-rgb),.1)}.blogs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.blog-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;transition:all .3s ease;display:flex;flex-direction:column;height:100%}.blog-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px);border-color:var(--border-hover)}.blog-thumbnail{height:180px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--gradient-secondary)}.blog-category-badge{position:absolute;top:.75rem;left:.75rem;background:var(--card-bg);color:var(--text-primary);padding:.375rem .875rem;border-radius:var(--radius-lg);font-size:.75rem;font-weight:600;border:1px solid var(--border-color);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow-sm)}.blog-status-badge{position:absolute;top:.75rem;right:.75rem;color:#fff;padding:.375rem .875rem;border-radius:var(--radius-lg);font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;box-shadow:var(--shadow-sm)}.blog-content{padding:1.5rem;display:flex;flex-direction:column;flex:1}.blog-header h3{color:var(--text-primary);margin-bottom:.75rem;font-size:1.125rem;font-weight:600;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.blog-meta{display:flex;gap:1rem;margin-bottom:1rem;font-size:.8rem;color:var(--text-muted);flex-wrap:wrap}.blog-meta span{display:flex;align-items:center;gap:.375rem}.blog-meta i{font-size:.75rem}.blog-excerpt{color:var(--text-secondary);font-size:.875rem;line-height:1.6;margin-bottom:1rem;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;flex:1}.blog-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem;min-height:28px}.tag{background:var(--bg-tertiary);color:var(--text-secondary);padding:.25rem .625rem;border-radius:var(--radius-md);font-size:.75rem;font-weight:500;border:1px solid var(--border-color);transition:all .2s ease}.tag:hover{background:var(--hover-bg);border-color:var(--border-hover);color:var(--text-primary)}.blog-actions{display:flex;gap:.5rem;flex-wrap:wrap;padding-top:1rem;border-top:1px solid var(--border-color);margin-top:auto}.blog-actions button{padding:.625rem 1rem;border:none;border-radius:var(--radius-md);font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.375rem;flex:1;justify-content:center;min-width:fit-content}.blog-actions button i{font-size:.875rem}.btn-publish{background:#f59e0b1a;color:#f59e0b;border:1px solid rgba(245,158,11,.2)}.btn-publish:hover{background:#f59e0b33;border-color:#f59e0b4d;transform:translateY(-1px)}.btn-feature{background:#a855f71a;color:#a855f7;border:1px solid rgba(168,85,247,.2)}.btn-feature:hover{background:#a855f733;border-color:#a855f74d;transform:translateY(-1px)}.btn-feature.featured{background:linear-gradient(135deg,#a855f7,#9333ea);color:#fff;border:1px solid #a855f7;box-shadow:0 2px 8px #a855f74d}.btn-feature.featured:hover{box-shadow:0 4px 12px #a855f766}.modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}.modal-content{background:var(--card-bg);border-radius:var(--radius-lg);width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-2xl);border:1px solid var(--border-color);animation:slideUp .3s ease}.modal-content::-webkit-scrollbar{width:8px}.modal-content::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:var(--radius-md)}.modal-content::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:var(--radius-md)}.modal-content::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border-color);background:var(--bg-secondary)}.modal-header h2{color:var(--text-primary);margin:0;font-size:1.25rem}.modal-close{background:var(--hover-bg);border:1px solid var(--border-color);font-size:1.25rem;color:var(--text-muted);cursor:pointer;padding:.5rem;border-radius:var(--radius-md);transition:all .2s ease;width:36px;height:36px;display:flex;align-items:center;justify-content:center}.modal-close:hover{background:var(--error-color);color:#fff;border-color:var(--error-color);transform:rotate(90deg)}.create-blog-form{padding:1.5rem}.form-group input,.form-group select,.form-group textarea{padding:.75rem;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.9rem;background:var(--bg-primary);color:var(--text-primary);font-family:inherit;transition:all .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(var(--primary-color-rgb),.1)}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary-color);margin-right:.5rem;cursor:pointer}.checkbox-label:has(input:checked){color:var(--primary-color);font-weight:600}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1rem;border-top:1px solid var(--border-color)}.btn-primary,.btn-secondary{padding:.75rem 1.5rem;border:none;border-radius:var(--radius-md);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.btn-primary{background:var(--primary-color);color:#fff;box-shadow:0 2px 8px rgba(var(--primary-color-rgb),.3)}.btn-primary:hover{background:var(--primary-dark);box-shadow:0 4px 12px rgba(var(--primary-color-rgb),.4);transform:translateY(-1px)}.btn-secondary{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--hover-bg);border-color:var(--border-hover);color:var(--text-primary)}@media(max-width:768px){.blogs-management-page{padding:1rem}.page-header{flex-direction:column;gap:1rem;align-items:stretch}.filters-section{flex-direction:column;align-items:stretch}.search-box{max-width:none}.blogs-grid,.form-row{grid-template-columns:1fr}.blog-actions{justify-content:stretch}.blog-actions button{flex:1}.modal-content{width:95%;max-height:95vh}.featured-badge{font-size:.7rem;padding:.3rem .75rem}}@media(max-width:480px){.blog-thumbnail{height:160px}.blog-category-badge,.blog-status-badge{font-size:.7rem;padding:.3rem .625rem}.blog-header h3{font-size:1rem}.blog-meta{font-size:.75rem}.blog-excerpt{font-size:.8rem}}.tags-input-container{display:flex;flex-wrap:wrap;gap:.5rem;padding:.5rem;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-primary);min-height:45px;transition:all .2s ease}.tags-input-container:focus-within{border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(var(--primary-color-rgb),.1)}.tag-chip{display:flex;align-items:center;background:var(--primary-color);color:#fff;padding:.375rem .625rem;border-radius:var(--radius-md);font-size:.85rem;gap:.5rem;animation:slideIn .2s ease}@keyframes slideIn{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.tag-chip button{background:none;border:none;color:#fff;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;font-size:1.125rem;line-height:1;transition:transform .2s ease}.tag-chip button:hover{transform:scale(1.2)}.tags-input{flex:1;min-width:150px;border:none!important;outline:none!important;padding:.25rem!important;background:transparent!important}.image-upload-container{display:flex;flex-direction:column;gap:1rem}.image-preview{width:100%;max-height:200px;object-fit:cover;border-radius:var(--radius-md);border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}.upload-btn-wrapper{position:relative;overflow:hidden;display:inline-block}.upload-btn-wrapper input[type=file]{padding:.75rem;border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;cursor:pointer;background:var(--bg-primary);color:var(--text-primary);transition:all .2s ease}.upload-btn-wrapper input[type=file]:hover{border-color:var(--primary-color);background:var(--hover-bg)}.upload-btn-wrapper input[type=file]::-webkit-file-upload-button{background:var(--primary-color);color:#fff;border:none;padding:.5rem 1rem;border-radius:var(--radius-md);cursor:pointer;margin-right:1rem;transition:all .2s ease}.upload-btn-wrapper input[type=file]::-webkit-file-upload-button:hover{background:var(--primary-dark)}.jobs-management-page{padding:2rem;background:#f8fafc;min-height:100vh}[data-theme=dark] .jobs-management-page{background:#0c0c0c}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding:1.5rem;background:#fff;border-radius:16px;box-shadow:0 1px 3px #0000000d}[data-theme=dark] .page-header{background:#1a1a1a;box-shadow:0 1px 3px #000c}.filters-section{display:flex;gap:1rem;margin-bottom:2rem;align-items:center;flex-wrap:wrap}.search-box{position:relative;flex:1;min-width:300px}.search-box input{width:100%;padding:.875rem 1rem .875rem 2.75rem;border:1px solid #e2e8f0;border-radius:12px;font-size:.9rem;background:#fff;color:var(--text-primary);transition:all .2s}.filter-select{padding:.875rem 1rem;border:1px solid #e2e8f0;border-radius:12px;font-size:.9rem;background:#fff;color:var(--text-primary);min-width:160px;cursor:pointer;transition:all .2s}.jobs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}@media(max-width:1400px){.jobs-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:900px){.jobs-grid{grid-template-columns:1fr}}.job-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;transition:all .3s ease;display:flex;flex-direction:column;height:100%}.job-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px);border-color:var(--border-hover)}.job-thumbnail{height:180px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--gradient-secondary)}.job-thumbnail img{width:100%;height:100%;object-fit:cover}.job-category-badge{position:absolute;top:.75rem;left:.75rem;background:var(--card-bg);color:var(--text-primary);padding:.375rem .875rem;border-radius:var(--radius-lg);font-size:.75rem;font-weight:600;border:1px solid var(--border-color);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow-sm)}.job-status-badge{position:absolute;top:.75rem;right:.75rem;color:#fff;padding:.375rem .875rem;border-radius:var(--radius-lg);font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;box-shadow:var(--shadow-sm)}.job-content{padding:1.5rem;display:flex;flex-direction:column;flex:1}.job-header h3{color:var(--text-primary);margin-bottom:.75rem;font-size:1.125rem;font-weight:600;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.job-meta{display:flex;gap:1rem;margin-bottom:1rem;font-size:.8rem;color:var(--text-muted);flex-wrap:wrap}.job-meta span{display:flex;align-items:center;gap:.375rem}.job-meta i{font-size:.75rem}.job-meta .company{font-weight:600;color:var(--text-secondary)}.job-details-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:1rem;padding:1rem;background:var(--bg-tertiary);border-radius:var(--radius-md);border:1px solid var(--border-color)}.detail-item{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:var(--text-secondary)}.detail-item i{color:var(--text-muted);font-size:.75rem;width:14px}.detail-item span{font-weight:500}.job-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem;min-height:28px}.job-tags .tag{background:var(--bg-tertiary);color:var(--text-secondary);padding:.25rem .625rem;border-radius:var(--radius-md);font-size:.75rem;font-weight:500;border:1px solid var(--border-color);transition:all .2s ease;display:flex;align-items:center;gap:.25rem}.job-tags .tag:hover{background:var(--hover-bg);border-color:var(--border-hover);color:var(--text-primary)}.job-tags .tag.urgent{background:#ef44441a;color:#ef4444;border-color:#ef444433}.job-tags .tag.remote{background:#10b9811a;color:#10b981;border-color:#10b98133}.job-tags .tag.more{background:var(--bg-secondary);color:var(--text-muted)}.job-actions{display:flex;gap:.5rem;flex-wrap:wrap;padding-top:1rem;border-top:1px solid var(--border-color);margin-top:auto}.job-actions button,.job-actions a{padding:.625rem 1rem;border:none;border-radius:var(--radius-md);font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.375rem;flex:1;justify-content:center;min-width:fit-content;text-decoration:none}.job-actions button i,.job-actions a i{font-size:.875rem}.btn-edit{background:#3b82f61a;color:#3b82f6;border:1px solid rgba(59,130,246,.2)}.btn-edit:hover{background:#3b82f633;border-color:#3b82f64d;transform:translateY(-1px)}.btn-view{background:#22c55e1a;color:#22c55e;border:1px solid rgba(34,197,94,.2)}.btn-view:hover{background:#22c55e33;border-color:#22c55e4d;transform:translateY(-1px)}.btn-toggle{background:#f59e0b1a;color:#f59e0b;border:1px solid rgba(245,158,11,.2)}.btn-toggle:hover{background:#f59e0b33;border-color:#f59e0b4d;transform:translateY(-1px)}.btn-toggle.active{background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.2)}.btn-toggle.active:hover{background:#ef444433;border-color:#ef44444d}.btn-delete{background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.2)}.btn-delete:hover{background:#ef444433;border-color:#ef44444d;transform:translateY(-1px)}@media(max-width:640px){.job-details-grid{grid-template-columns:1fr}}.modal-header h2{color:var(--text-primary);margin:0;font-size:1.5rem;font-weight:700}.create-job-form{padding:1.5rem}.form-group input,.form-group select,.form-group textarea{padding:.875rem;border:1px solid #e2e8f0;border-radius:10px;font-size:.9rem;background:#fff;color:var(--text-primary);font-family:inherit;transition:all .2s}.form-group textarea{resize:vertical;min-height:80px}.checkbox-row{display:flex;gap:2rem;margin-top:1rem}@media(max-width:768px){.jobs-management-page{padding:1rem}.page-header{flex-direction:column;gap:1rem;align-items:stretch}.filters-section{flex-direction:column;align-items:stretch}.search-box{max-width:none}.form-row{grid-template-columns:1fr}.checkbox-row{flex-direction:column;gap:1rem}.job-actions{justify-content:space-between}.job-meta{flex-direction:column;gap:.5rem}}.hierarchy-container{display:flex;height:calc(100vh - 80px);background:#f8fafc;overflow:hidden;position:relative}.hierarchy-canvas{flex:1;overflow:hidden;background-image:radial-gradient(#cbd5e1 1px,transparent 1px);background-size:30px 30px;display:flex;justify-content:center;align-items:flex-start;padding-top:5rem}.config-panel{width:380px;border-left:1px solid #e2e8f0;background:#fff;padding:2rem;box-shadow:-4px 0 15px #0000000d;display:flex;flex-direction:column;gap:2rem;z-index:10}.tree ul{padding-top:50px;position:relative;transition:all .5s;display:flex;justify-content:center}.tree li{text-align:center;list-style-type:none;position:relative;padding:50px 25px 0;transition:all .5s}.tree li:only-child{padding-top:0}.role-card{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;padding:1.25rem 1.75rem;background:#fff;border:1px solid #e2e8f1;border-radius:16px;min-width:180px;box-shadow:0 10px 15px -3px #0000000a,0 4px 6px -2px #00000005;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;z-index:2}.role-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;border-color:#3b82f6}.role-card.selected{border-color:#3b82f6;border-width:2px;box-shadow:0 0 0 4px #3b82f626}.role-icon{width:48px;height:48px;border-radius:14px;background:#f1f5f9;display:flex;align-items:center;justify-content:center;margin-bottom:.75rem;color:#64748b;font-size:1.4rem;transition:all .3s}.role-name{font-weight:700;color:#1e293b;font-size:.95rem;margin-bottom:.25rem}.role-level-badge{font-size:.65rem;padding:.2rem .6rem;border-radius:20px;font-weight:700;text-transform:uppercase;letter-spacing:.025em}.level-1 .role-icon,.level-1 .role-level-badge{background:#fef9c3;color:#ca8a04}.level-2 .role-icon,.level-2 .role-level-badge{background:#dbeafe;color:#2563eb}.level-3 .role-icon,.level-3 .role-level-badge{background:#dcfce7;color:#16a34a}.level-4 .role-icon,.level-4 .role-level-badge{background:#f1f5f9;color:#64748b}.role-actions-mini{display:flex;gap:8px;margin-top:1rem;opacity:0;transition:opacity .2s;width:100%}.role-card:hover .role-actions-mini{opacity:1}.action-btn-mini{flex:1;height:32px;border:1px solid #e2e8f0;background:#fff;color:#64748b;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.action-btn-mini:hover{background:#f8fafc}.action-btn-mini.add-child:hover{color:#3b82f6;border-color:#3b82f6;background:#eff6ff}.action-btn-mini.delete-role:hover{color:#ef4444;border-color:#ef4444;background:#fef2f2}.modal-overlay{position:fixed;inset:0;background:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .2s ease-out}.quick-create-modal{background:#fff;border-radius:20px;width:100%;max-width:450px;box-shadow:0 25px 50px -12px #00000040;overflow:hidden;animation:slideUp .3s cubic-bezier(.34,1.56,.64,1)}.modal-header{padding:1.5rem 2rem;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;align-items:center}.modal-header h3{margin:0;font-size:1.25rem;color:#1e293b;font-weight:700}.close-btn{background:none;border:none;font-size:1.5rem;color:#94a3b8;cursor:pointer}.quick-create-form{padding:2rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:#475569;font-size:.9rem}.form-group input{width:100%;padding:.75rem 1rem;border:2px solid #e2e8f0;border-radius:12px;font-size:1rem;transition:all .2s}.form-group input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 4px #3b82f61a}.modal-actions{display:flex;gap:12px;justify-content:flex-end}.cancel-btn,.confirm-btn{padding:.75rem 1.5rem;border-radius:10px;font-weight:600;cursor:pointer;transition:all .2s}.cancel-btn{background:#f1f5f9;border:none;color:#475569}.confirm-btn{background:#3b82f6;border:none;color:#fff}.confirm-btn:disabled{opacity:.6;cursor:not-allowed}.save-btn{width:100%;padding:1rem;background:#1e293b;color:#fff;border:none;border-radius:12px;font-weight:700;cursor:pointer;transition:all .2s}.save-btn:hover:not(:disabled){background:#0f172a;transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.foundation-anchor{display:inline-flex;align-items:center;gap:1.25rem;padding:1rem 2rem;background:linear-gradient(135deg,#1e293b,#334155);border-radius:100px;box-shadow:0 10px 25px -5px #0f172a33;border:2px solid rgba(255,255,255,.1);margin-bottom:3rem;position:relative;z-index:5}.foundation-anchor .anchor-icon{width:44px;height:44px;background:#ffffff1a;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#94a3b8;font-size:1.25rem}.foundation-anchor .anchor-content{display:flex;flex-direction:column;text-align:left}.foundation-anchor .anchor-title{color:#fff;font-weight:800;font-size:1.1rem;letter-spacing:-.01em}.foundation-anchor .anchor-tag{color:#94a3b8;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}[data-theme=dark] .config-panel{background:#1a1a1a;border-color:#333}[data-theme=dark] .role-card{background:#262626;border-color:#333}[data-theme=dark] .role-name{color:#f8fafc}[data-theme=dark] .quick-create-modal{background:#1a1a1a}[data-theme=dark] .modal-header{border-color:#333}[data-theme=dark] .modal-header h3{color:#f8fafc}[data-theme=dark] .form-group input{background:#262626;border-color:#333;color:#fff}.scope-module-tabs{display:flex;gap:1rem;padding:1rem 1.5rem;background:#fff;border-bottom:1px solid #e2e8f0;margin-bottom:0}.scope-tab-button{padding:.6rem 1.2rem;border-radius:.5rem;border:none;background:#eff6ff;color:#2563eb;font-weight:600;cursor:default;transition:all .2s;display:flex;align-items:center;gap:.5rem}.scope-tab-button i{font-size:1rem}.scope-view-content{padding:0;height:calc(100vh - 140px)}[data-theme=dark] .scope-module-tabs{background:linear-gradient(135deg,#1a1a1a,#2a2a2a);border-bottom:1px solid rgba(255,255,255,.1)}[data-theme=dark] .scope-tab-button{background:#6366f126;color:#818cf8}[data-theme=dark] .scope-tab-button:hover{background:#6366f133}:root{--aptitude-primary: #2563eb;--aptitude-primary-dark: #1d4ed8;--aptitude-bg: #ffffff;--aptitude-card: #ffffff;--aptitude-text: #1e293b;--aptitude-text-light: #64748b;--aptitude-text-secondary: #94a3b8;--aptitude-border: #e2e8f0;--aptitude-border-light: #f1f5f9;--aptitude-surface: #f8fafc;--aptitude-surface-hover: #f1f5f9;--aptitude-accent: #10b981;--aptitude-danger: #ef4444;--aptitude-warning: #f59e0b;--aptitude-success: #22c55e;--aptitude-shadow: rgba(0, 0, 0, .1);--aptitude-shadow-light: rgba(0, 0, 0, .05)}[data-theme=dark]{--aptitude-primary: #3b82f6;--aptitude-primary-dark: #2563eb;--aptitude-bg: #0a0a0a;--aptitude-card: #1a1a1a;--aptitude-text: #f1f5f9;--aptitude-text-light: #94a3b8;--aptitude-text-secondary: #64748b;--aptitude-border: rgba(255, 255, 255, .1);--aptitude-border-light: rgba(255, 255, 255, .05);--aptitude-surface: rgba(255, 255, 255, .02);--aptitude-surface-hover: rgba(255, 255, 255, .05);--aptitude-accent: #34d399;--aptitude-danger: #f87171;--aptitude-warning: #fbbf24;--aptitude-success: #4ade80;--aptitude-shadow: rgba(0, 0, 0, .3);--aptitude-shadow-light: rgba(0, 0, 0, .2)}.aptitude-management{padding:2rem;background:var(--aptitude-bg);min-height:100vh;animation:fadeIn .4s ease-out;transition:background-color .3s ease}.module-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.module-header h1{font-size:1.875rem;color:var(--aptitude-text);font-weight:700;transition:color .3s ease}.module-header p{color:var(--aptitude-text-light);margin-top:.25rem;transition:color .3s ease}.primary-btn{background:var(--aptitude-primary);color:#fff;border:none;padding:.625rem 1.25rem;border-radius:8px;font-weight:500;display:flex;align-items:center;gap:.5rem;cursor:pointer;transition:all .2s}.primary-btn:hover{background:var(--aptitude-primary-dark);transform:translateY(-1px)}.secondary-btn{background:var(--aptitude-card);color:var(--aptitude-text-light);border:1px solid var(--aptitude-border);padding:.625rem 1.25rem;border-radius:8px;font-weight:500;display:flex;align-items:center;gap:.5rem;cursor:pointer;transition:all .2s}.secondary-btn:hover{background:var(--aptitude-surface);border-color:var(--aptitude-text-secondary)}.management-tabs{display:flex;gap:2rem;border-bottom:1px solid var(--aptitude-border);margin-bottom:2rem;background:var(--aptitude-card);padding:0 1rem;border-radius:12px 12px 0 0;transition:all .3s ease}.tab-btn{background:none;border:none;padding:1rem 0;color:var(--aptitude-text-light);font-weight:500;cursor:pointer;position:relative;transition:color .2s}.tab-btn.active{color:var(--aptitude-primary)}.tab-btn.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--aptitude-primary)}.tab-btn i{margin-right:.5rem}.content-management-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:2rem;align-items:start}.form-card{background:var(--aptitude-card);border-radius:12px;border:1px solid var(--aptitude-border);box-shadow:0 1px 3px var(--aptitude-shadow-light);overflow:hidden;transition:all .3s ease}.form-card.full-width{grid-column:1 / -1}.card-header-styled{padding:1.25rem 1.5rem;background:var(--aptitude-surface);border-bottom:1px solid var(--aptitude-border);display:flex;align-items:center;gap:.875rem;transition:background-color .3s ease}.card-header-styled i{color:var(--aptitude-primary);font-size:1.25rem}.card-header-styled h3{font-size:1.125rem;color:var(--aptitude-text);font-weight:600;transition:color .3s ease}.management-form{padding:1.5rem}.form-group-custom{margin-bottom:1.25rem}.form-group-custom label{display:block;font-size:.875rem;font-weight:600;color:var(--aptitude-text-light);margin-bottom:.5rem;transition:color .3s ease}.form-group-custom input,.form-group-custom select,.form-group-custom textarea{width:100%;padding:.75rem;background:var(--aptitude-card);border:1px solid var(--aptitude-border);border-radius:8px;font-size:.9375rem;color:var(--aptitude-text);outline:none;transition:all .2s}.form-group-custom input:focus,.form-group-custom select:focus,.form-group-custom textarea:focus{border-color:var(--aptitude-primary);background:var(--aptitude-card);box-shadow:0 0 0 3px #2563eb14}.form-row-custom{display:grid;grid-template-columns:1fr 1.5fr;gap:1rem}.form-row-three{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.form-actions-inline{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem}.placeholder-view{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:5rem 0;color:var(--aptitude-text-secondary);background:var(--aptitude-surface);border-radius:12px;border:2px dashed var(--aptitude-border);transition:all .3s ease}.placeholder-view i{font-size:3rem;margin-bottom:1rem}.placeholder-view p{font-size:1.125rem;font-weight:500}.video-management-layout{display:flex;flex-direction:column;gap:2rem}.existing-content-card{background:var(--aptitude-card);border-radius:12px;border:1px solid var(--aptitude-border);transition:all .3s ease}.existing-list-placeholder{padding:3rem;text-align:center;color:var(--aptitude-text-secondary);background:var(--aptitude-surface);transition:all .3s ease}.quiz-management-layout{display:flex;flex-direction:column;gap:2rem}.questions-builder-section{margin:2rem 0;display:flex;flex-direction:column;gap:1.5rem}.question-builder-card{background:var(--aptitude-surface);border:1px solid var(--aptitude-border);border-radius:10px;padding:1.5rem;transition:all .3s ease}.qb-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem;border-bottom:1px solid #e2e8f0;padding-bottom:.75rem}.qb-header h4{color:var(--aptitude-text);font-weight:600;transition:color .3s ease}.remove-qb-btn{background:none;border:1px solid var(--aptitude-danger);color:var(--aptitude-danger);padding:.4rem .8rem;border-radius:6px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s}.remove-qb-btn:hover{background:#ef44441a}[data-theme=dark] .remove-qb-btn:hover{background:#f871711a}.add-qb-btn{align-self:flex-start;background:var(--aptitude-card);border:2px dashed var(--aptitude-border);color:var(--aptitude-text-light);padding:1rem 2rem;border-radius:10px;font-weight:600;cursor:pointer;transition:all .2s;width:100%}.add-qb-btn:hover{border-color:var(--aptitude-primary);color:var(--aptitude-primary);background:#2563eb0d}.options-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1rem}.categories-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.category-card{background:var(--aptitude-card);border-radius:12px;padding:1.5rem;border:1px solid var(--aptitude-border);transition:all .3s cubic-bezier(.4,0,.2,1)}.category-card:hover{transform:translateY(-4px);box-shadow:0 10px 15px -3px var(--aptitude-shadow);border-color:var(--aptitude-primary)}.category-card .card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.icon-box{width:48px;height:48px;background:#2563eb1a;color:var(--aptitude-primary);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;transition:all .3s ease}[data-theme=dark] .icon-box{background:#3b82f633}.actions{display:flex;gap:.5rem}.actions button{background:none;border:none;color:var(--aptitude-text-secondary);cursor:pointer;padding:4px;border-radius:4px;transition:all .2s}.actions button:hover{background:var(--aptitude-surface-hover);color:var(--aptitude-text-light)}.category-card h3{font-size:1.125rem;color:var(--aptitude-text);font-weight:600;margin-bottom:.5rem;transition:color .3s ease}.category-card p{font-size:.875rem;color:var(--aptitude-text-light);transition:color .3s ease}.category-card .card-footer{border-top:1px solid var(--aptitude-border-light);margin-top:1.25rem;padding-top:1rem;display:flex;justify-content:space-between}.text-btn{background:none;border:none;color:var(--aptitude-primary);font-size:.875rem;font-weight:600;cursor:pointer;transition:color .3s ease}.text-btn:hover{text-decoration:underline}.add-category-card{background:#f8fafc;border:2px dashed #e2e8f0;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;color:#94a3b8;cursor:pointer;transition:all .2s;min-height:200px}.add-category-card:hover{background:#f1f5f9;border-color:#cbd5e1;color:#64748b}.add-category-card i{font-size:2rem}.filter-bar{display:flex;justify-content:space-between;margin-bottom:1.5rem;gap:1rem}.search-box{position:relative;flex-grow:1;max-width:500px}.search-box i{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#94a3b8}.search-box input{width:100%;padding:.625rem 1rem .625rem 2.75rem;background:var(--aptitude-card);border:1px solid var(--aptitude-border);border-radius:8px;outline:none;transition:border-color .2s;color:var(--aptitude-text)}.search-box input:focus{border-color:var(--aptitude-primary);box-shadow:0 0 0 3px #2563eb1a}.other-filters{display:flex;gap:.75rem}.other-filters select{padding:.625rem 1rem;background:var(--aptitude-card);border:1px solid var(--aptitude-border);border-radius:8px;color:var(--aptitude-text-light);cursor:pointer;transition:all .3s ease}.questions-table-container{background:var(--aptitude-card);border-radius:12px;border:1px solid var(--aptitude-border);overflow:hidden;transition:all .3s ease}.management-table{width:100%;border-collapse:collapse}.table-wrapper-custom{padding:0 1.5rem 1.5rem}.management-table th{background:var(--aptitude-surface);padding:1rem;text-align:left;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--aptitude-text-light);border-bottom:1px solid var(--aptitude-border);transition:all .3s ease}.management-table td{padding:1rem;border-bottom:1px solid var(--aptitude-border-light);color:var(--aptitude-text);transition:all .3s ease}.management-table tr:hover{background:var(--aptitude-surface)}.question-cell{max-width:400px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}.badge{padding:.25rem .625rem;border-radius:9999px;font-size:.75rem;font-weight:500}.badge.beginner{background:#22c55e1a;color:var(--aptitude-success)}.badge.intermediate{background:#f59e0b1a;color:var(--aptitude-warning)}.badge.advanced{background:#ef44441a;color:var(--aptitude-danger)}.icon-btn{background:none;border:none;padding:8px;border-radius:6px;cursor:pointer;color:var(--aptitude-text-light);transition:all .2s}.icon-btn:hover{background:var(--aptitude-surface-hover);color:var(--aptitude-primary)}.icon-btn.delete:hover{background:#ef44441a;color:var(--aptitude-danger)}[data-theme=dark] .icon-btn.delete:hover{background:#f871711a}.actions-cell{display:flex;gap:.5rem}.fa-clock{margin-right:4px;color:#94a3b8}code{background:#f1f5f9;padding:.2rem .4rem;border-radius:4px;color:#475569;font-family:Courier New,Courier,monospace;font-size:.8125rem}.loading-overlay-custom{position:fixed;inset:0;background:#ffffffb3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:9999}.spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #2563eb;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.grouped-content-list{padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem}.topic-group-card{border:1px solid #e2e8f0;border-radius:12px;background:#fff;overflow:hidden}.topic-group-header{background:#f8fafc;padding:1rem 1.5rem;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center}.topic-info{display:flex;align-items:center;gap:1rem}.topic-badge{background:#e0e7ff;color:#4338ca;padding:.2rem .6rem;border-radius:6px;font-size:.75rem;font-weight:600;text-transform:uppercase}.topic-info h4{font-size:1.1rem;color:#1e293b;margin:0}.sections-draggable-list{padding:.75rem;display:flex;flex-direction:column;gap:.5rem}.draggable-section-item{display:flex;align-items:center;padding:.75rem 1rem;background:#fff;border:1px solid #f1f5f9;border-radius:8px;cursor:grab;transition:all .2s}.draggable-section-item:hover{background:#f8fafc;border-color:#cbd5e1;transform:translate(4px)}.draggable-section-item:active{cursor:grabbing;background:#f1f7ff}.drag-handle{color:#94a3b8;margin-right:1.25rem;font-size:.9rem}.section-meta{flex:1;display:flex;align-items:center;gap:1.5rem}.sec-key{font-family:monospace;color:#64748b;font-size:.85rem;background:#f1f5f9;padding:.2rem .4rem;border-radius:4px}.sec-title{color:#334155;font-weight:500}.section-actions{display:flex;gap:.25rem}.icon-btn.sm{padding:6px;font-size:.8rem}.no-sections-hint{padding:1.5rem;text-align:center;color:#94a3b8;font-style:italic;font-size:.9rem}.empty-state-p{text-align:center;padding:3rem;color:#64748b;background:#f8fafc;border-radius:12px;border:2px dashed #e2e8f0}.mini-tag{display:inline-block;background:#f1f5f9;color:#475569;padding:2px 8px;border-radius:4px;font-size:.75rem;margin-right:4px;margin-bottom:4px;border:1px solid #e2e8f0}.admin-video-thumb{width:100px;height:56px;border-radius:8px;overflow:hidden;background:var(--aptitude-surface);display:flex;align-items:center;justify-content:center;position:relative;border:1px solid var(--aptitude-border);transition:all .3s ease}.admin-video-thumb img{width:100%;height:100%;object-fit:cover;z-index:2}.admin-video-thumb i.fallback-icon{position:absolute;font-size:1.5rem;color:var(--aptitude-text-secondary);z-index:1}.admin-video-thumb.broken img{display:none}.search-box i,.fa-clock{color:var(--aptitude-text-secondary)}.topic-group-card{border:1px solid var(--aptitude-border);background:var(--aptitude-card);transition:all .3s ease}.topic-group-header{background:var(--aptitude-surface);border-bottom:1px solid var(--aptitude-border);transition:background-color .3s ease}.topic-badge{background:#2563eb1a;color:var(--aptitude-primary);transition:all .3s ease}[data-theme=dark] .topic-badge{background:#3b82f633}.topic-info h4{color:var(--aptitude-text);transition:color .3s ease}.draggable-section-item{background:var(--aptitude-card);border:1px solid var(--aptitude-border-light);transition:all .2s}.draggable-section-item:hover{background:var(--aptitude-surface);border-color:var(--aptitude-border)}.draggable-section-item:active{background:#2563eb0d}[data-theme=dark] .draggable-section-item:active{background:#3b82f61a}.drag-handle{color:var(--aptitude-text-secondary)}.sec-key{color:var(--aptitude-text-light);background:var(--aptitude-surface);border:1px solid var(--aptitude-border);transition:all .3s ease}.sec-title{color:var(--aptitude-text);transition:color .3s ease}.no-sections-hint{color:var(--aptitude-text-secondary)}.empty-state-p{color:var(--aptitude-text-light);background:var(--aptitude-surface);border:2px dashed var(--aptitude-border);transition:all .3s ease}.mini-tag{background:var(--aptitude-surface);color:var(--aptitude-text-light);border:1px solid var(--aptitude-border);transition:all .3s ease}.admin-video-thumb{background:var(--aptitude-text);border:1px solid var(--aptitude-border);transition:all .3s ease}.add-category-card{background:var(--aptitude-surface);border:2px dashed var(--aptitude-border);color:var(--aptitude-text-secondary);transition:all .2s}.add-category-card:hover{background:var(--aptitude-surface-hover);border-color:var(--aptitude-text-secondary);color:var(--aptitude-text-light)}code{background:var(--aptitude-surface);color:var(--aptitude-text-light);border:1px solid var(--aptitude-border);transition:all .3s ease}.loading-overlay-custom{background:#ffffffb3;transition:background-color .3s ease}[data-theme=dark] .loading-overlay-custom{background:#000000b3}.spinner{border:4px solid var(--aptitude-border);border-top:4px solid var(--aptitude-primary)}@media(max-width:1200px){.content-management-grid{grid-template-columns:1fr;gap:1.5rem}.form-row-three{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.aptitude-management{padding:1.5rem 1rem}.module-header{flex-direction:column;align-items:flex-start;gap:1rem}.management-tabs{gap:1rem;padding:0 .5rem;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;margin:0 -1rem 2rem;border-radius:0}.management-tabs::-webkit-scrollbar{display:none}.tab-btn{white-space:nowrap;flex-shrink:0;padding:1rem .5rem}.form-row-custom,.form-row-three{grid-template-columns:1fr;gap:.75rem}.options-grid,.categories-grid{grid-template-columns:1fr}.filter-bar{flex-direction:column;gap:1rem}.other-filters{justify-content:flex-start;flex-wrap:wrap}.management-table{font-size:.875rem}.management-table th,.management-table td{padding:.75rem .5rem}.question-cell{max-width:200px}.form-card{border-radius:8px}.card-header-styled,.management-form{padding:1rem}}@media(max-width:480px){.aptitude-management{padding:1rem .75rem}.module-header h1{font-size:1.5rem}.form-actions-inline{flex-direction:column;gap:.5rem}.primary-btn,.secondary-btn{width:100%;justify-content:center}.management-table th,.management-table td{padding:.5rem .25rem;font-size:.8rem}.actions-cell{flex-direction:column;gap:.25rem}.icon-btn{padding:6px}}@media(prefers-contrast:high){.form-card,.existing-content-card,.questions-table-container{border-width:2px}.tab-btn.active:after{height:3px}}@media(prefers-reduced-motion:reduce){.aptitude-management,.form-card,.category-card,.draggable-section-item{animation:none;transition:none}.category-card:hover,.draggable-section-item:hover{transform:none}}.empty-materials-message{text-align:center!important;padding:2rem!important;color:var(--aptitude-text-secondary)!important;font-style:italic}.aptitude-premium-dashboard-container{--primary-color: #2563eb;--primary-gradient: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);--secondary-gradient: linear-gradient(135deg, #7c3aed 0%, #6d28d9 100%);--bg-light: #f8fafc;--card-shadow: 0 10px 25px -5px rgba(0, 0, 0, .05);--card-shadow-hover: 0 20px 40px -20px rgba(0, 0, 0, .1);--border-color: #e2e8f0;--text-dark: #0f172a;--text-muted: #64748b;width:100%;min-height:100vh;background:var(--bg-light);font-family:Inter,-apple-system,sans-serif;color:var(--text-dark)}[data-theme=dark] .aptitude-premium-dashboard-container{--bg-light: #0d0d0d;--border-color: rgba(255, 255, 255, .05);--text-dark: #f1f5f9;--text-muted: #94a3b8;background:var(--bg-light)}.aptitude-premium-dashboard-container .overall-dashboard-header{padding:2.5rem 2.5rem 1rem;display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:1.5rem}.aptitude-premium-dashboard-container .overall-dashboard-header-badge{color:var(--primary-color);font-weight:800;text-transform:uppercase;letter-spacing:2px;font-size:.75rem;display:block;margin-bottom:.5rem}.aptitude-premium-dashboard-container .overall-dashboard-header-content h1{font-size:2.5rem;font-weight:900;margin:0;letter-spacing:-.04em}.aptitude-premium-dashboard-container .overall-dashboard-header-content p{color:var(--text-muted);font-size:1.05rem;margin-top:.5rem;max-width:600px}.aptitude-premium-dashboard-container .overall-dashboard-tabs{display:flex;background:#e2e8f0;padding:6px;border-radius:16px;gap:4px}[data-theme=dark] .aptitude-premium-dashboard-container .overall-dashboard-tabs{background:#1a1a1a}.aptitude-premium-dashboard-container .overall-dashboard-tab{padding:10px 24px;border:none;border-radius:12px;cursor:pointer;font-size:.85rem;font-weight:800;background:transparent;color:var(--text-muted);transition:all .3s cubic-bezier(.4,0,.2,1);text-transform:uppercase;letter-spacing:.5px}.aptitude-premium-dashboard-container .overall-dashboard-tab.active{background:#fff;color:var(--primary-color);box-shadow:0 4px 12px #0000000d}[data-theme=dark] .aptitude-premium-dashboard-container .overall-dashboard-tab.active{background:#2a2a2a;color:#60a5fa}.aptitude-premium-dashboard-container .overall-dashboard-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;padding:2.5rem}.aptitude-premium-dashboard-container .overall-dashboard-kpi-card{background:#fff;padding:1.75rem;border-radius:24px;border:1px solid var(--border-color);box-shadow:var(--card-shadow);transition:all .3s ease;display:flex;align-items:center;gap:1.5rem}[data-theme=dark] .aptitude-premium-dashboard-container .overall-dashboard-kpi-card{background:#1a1a1a}.aptitude-premium-dashboard-container .overall-dashboard-kpi-card:hover{transform:translateY(-5px);box-shadow:var(--card-shadow-hover)}.aptitude-premium-dashboard-container .overall-dashboard-kpi-icon{width:60px;height:60px;border-radius:18px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}.aptitude-premium-dashboard-container .overall-dashboard-kpi-icon.blue{background:#2563eb1a;color:#2563eb}.aptitude-premium-dashboard-container .overall-dashboard-kpi-icon.pink{background:#db27771a;color:#db2777}.aptitude-premium-dashboard-container .overall-dashboard-kpi-icon.green{background:#10a34a1a;color:#16a34a}.aptitude-premium-dashboard-container .kpi-value{font-size:1.85rem;font-weight:900;line-height:1.1}.aptitude-premium-dashboard-container .kpi-title{font-size:.8rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px}.aptitude-premium-dashboard-container .dashboard-main-content{display:grid;grid-template-columns:320px 1fr;gap:2.5rem;padding:0 2.5rem 2.5rem}.aptitude-premium-dashboard-container .content-sidebar{background:#fff;border-radius:28px;padding:2rem;border:1px solid var(--border-color);height:fit-content;position:sticky;top:2rem}[data-theme=dark] .aptitude-premium-dashboard-container .content-sidebar{background:#1a1a1a}.aptitude-premium-dashboard-container .nav-item{padding:1rem;border-radius:18px;margin-bottom:.75rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;justify-content:space-between;align-items:center;background:#f8fafc;border:2px solid transparent}[data-theme=dark] .aptitude-premium-dashboard-container .nav-item{background:#111}.aptitude-premium-dashboard-container .nav-item:hover{background:#fff;border-color:var(--primary-color);transform:translate(8px)}.aptitude-premium-dashboard-container .nav-item.active{background:var(--primary-color);color:#fff!important;box-shadow:0 10px 25px -10px var(--primary-color)}.aptitude-premium-dashboard-container .nav-item.active *{color:#fff!important}.aptitude-premium-dashboard-container .nav-item-content{display:flex;align-items:center;gap:1.25rem;overflow:hidden}.aptitude-premium-dashboard-container .cls-avatar{width:44px;height:44px;border-radius:14px;background:#fff;box-shadow:0 4px 8px #0000000d;display:flex;align-items:center;justify-content:center;font-weight:800;color:var(--primary-color);font-size:1.1rem;flex-shrink:0}.aptitude-premium-dashboard-container .nav-item.active .cls-avatar{background:#fff3;color:#fff}.aptitude-premium-dashboard-container .cls-details{display:flex;flex-direction:column;overflow:hidden}.aptitude-premium-dashboard-container .cls-name{font-weight:800;font-size:.95rem;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aptitude-premium-dashboard-container .cls-section-label{opacity:.6;font-weight:700;font-size:.85rem}.aptitude-premium-dashboard-container .cls-hierarchy-info{display:flex;align-items:center;gap:.5rem;margin-top:6px;flex-wrap:wrap}.aptitude-premium-dashboard-container .cls-batch-tag{font-size:.65rem;font-weight:800;color:#059669;background:#0596691a;padding:2px 8px;border-radius:6px;border:1px solid rgba(5,150,105,.1)}.aptitude-premium-dashboard-container .active .cls-batch-tag{color:#fff;background:#fff3;border-color:transparent}.aptitude-premium-dashboard-container .cls-v-tag{font-size:.65rem;font-weight:800;color:#4b5563;background:#f3f4f6;padding:2px 8px;border-radius:6px}[data-theme=dark] .aptitude-premium-dashboard-container .cls-v-tag{background:#2a2a2a;color:#94a3b8}.aptitude-premium-dashboard-container .active .cls-v-tag{color:#fff;background:#ffffff26}.aptitude-premium-dashboard-container .cls-sub-info{display:flex;align-items:center;gap:.75rem;margin-top:6px}.aptitude-premium-dashboard-container .cls-dept-tag{font-size:.7rem;font-weight:800;background:#2563eb1a;color:var(--primary-color);padding:2px 8px;border-radius:6px;text-transform:uppercase}.aptitude-premium-dashboard-container .cls-students-count{font-size:.75rem;font-weight:700;color:var(--text-muted)}.aptitude-premium-dashboard-container .nav-item .arrow-icon{font-size:.9rem;opacity:.4;transition:all .3s}.aptitude-premium-dashboard-container .nav-item:hover .arrow-icon{opacity:1;transform:translate(4px)}.aptitude-premium-dashboard-container .subject-ring-container{position:relative!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;flex-shrink:0!important}.aptitude-premium-dashboard-container .subject-ring-svg{transform:rotate(-90deg)!important;display:block!important;width:100%!important;height:100%!important}.aptitude-premium-dashboard-container .ring-bg,.aptitude-premium-dashboard-container .ring-fill{fill:none!important}.aptitude-premium-dashboard-container .ring-content{position:absolute!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important;width:100%!important;height:100%!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;pointer-events:none!important;text-align:center!important}.aptitude-premium-dashboard-container .ring-percentage{font-weight:900!important;line-height:1!important;font-size:clamp(8px,calc(var(--ring-size, 100px) * .22),32px)!important}.aptitude-premium-dashboard-container .ring-label{font-size:.65rem!important;font-weight:800!important;color:var(--text-dark)!important;margin-top:2px!important;text-transform:uppercase!important;max-width:90%!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.aptitude-premium-dashboard-container .ring-meta{font-size:.6rem!important;opacity:.6!important}.aptitude-premium-dashboard-container .modern-table{width:100%;border-collapse:separate;border-spacing:0 12px}.aptitude-premium-dashboard-container .modern-table th{padding:0 1.5rem .75rem;text-align:left;font-size:.75rem;font-weight:800;color:var(--text-muted);text-transform:uppercase}.aptitude-premium-dashboard-container .modern-table tbody tr{background:#f8fafc;border-radius:18px;box-shadow:0 2px 4px #00000005}[data-theme=dark] .aptitude-premium-dashboard-container .modern-table tbody tr{background:#151515}.aptitude-premium-dashboard-container .modern-table td{padding:1.2rem 1.5rem;vertical-align:middle}.aptitude-premium-dashboard-container .modern-table td:first-child{border-radius:18px 0 0 18px}.aptitude-premium-dashboard-container .modern-table td:last-child{border-radius:0 18px 18px 0}.aptitude-premium-dashboard-container .student-cell{display:flex;align-items:center;gap:1.2rem}.aptitude-premium-dashboard-container .name-stack{display:flex;flex-direction:column}.aptitude-premium-dashboard-container .name-stack .name{font-weight:800;font-size:.95rem}.aptitude-premium-dashboard-container .name-stack .tests-done{font-size:.75rem;color:var(--text-muted);font-weight:600}.aptitude-premium-dashboard-container .info-illustration{background:#fff;border:2px dashed var(--border-color);border-radius:32px;padding:4rem 2rem;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}[data-theme=dark] .aptitude-premium-dashboard-container .info-illustration{background:transparent}.aptitude-premium-dashboard-container .info-illustration i{font-size:5rem;margin-bottom:2rem;opacity:.5;background:var(--primary-gradient);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.aptitude-premium-dashboard-container .animate-fade{animation:fadeIn .4s ease-out forwards}@keyframes fadeIn{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1100px){.aptitude-premium-dashboard-container .dashboard-main-content{grid-template-columns:1fr}.aptitude-premium-dashboard-container .content-sidebar{position:static;width:100%}}.aptitude-premium-dashboard-container .tag{background:#f1f5f9;padding:6px 12px;border-radius:8px;font-size:.75rem;font-weight:700;color:#475569}[data-theme=dark] .aptitude-premium-dashboard-container .tag{background:#2a2a2a;color:#94a3b8}.aptitude-premium-dashboard-container .mono{font-family:monospace;font-size:.85rem;color:var(--text-muted);font-weight:700}.aptitude-premium-dashboard-container .gap-indicator{padding:4px 10px;border-radius:8px;font-weight:800;font-size:.8rem}.aptitude-premium-dashboard-container .gap-indicator.positive{background:#10b9811a;color:#10b981}.aptitude-premium-dashboard-container .gap-indicator.negative{background:#ef44441a;color:#ef4444}.aptitude-premium-dashboard-container .mini-bar{height:6px;background:#e2e8f0;border-radius:3px;overflow:hidden;width:60px;margin-top:4px}.aptitude-premium-dashboard-container .mini-fill{height:100%;border-radius:3px;transition:width .6s ease}.aptitude-premium-dashboard-container .search-box{position:relative;width:280px}.aptitude-premium-dashboard-container .search-box input{width:100%;padding:10px 16px 10px 42px;border-radius:14px;border:2px solid var(--border-color);background:var(--bg-light);font-weight:600;outline:none;color:var(--text-dark)}.aptitude-premium-dashboard-container .search-box i{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--text-muted)}.aptitude-premium-dashboard-container .deep-dive-view{display:flex;flex-direction:column;gap:2rem}.aptitude-premium-dashboard-container .analytics-grid-dd{display:grid;grid-template-columns:1fr 1.2fr;gap:2rem;align-items:flex-start}.aptitude-premium-dashboard-container .dd-stats-row{display:flex;gap:1.5rem;margin-bottom:2.5rem;flex-wrap:wrap}.aptitude-premium-dashboard-container .stat-pill{background:#fff;padding:1.25rem 2rem;border-radius:20px;display:flex;flex-direction:column;min-width:140px;border:1px solid var(--border-color);box-shadow:var(--card-shadow);transition:all .3s ease}[data-theme=dark] .aptitude-premium-dashboard-container .stat-pill{background:#1a1a1a}.aptitude-premium-dashboard-container .stat-pill .p-val{font-size:1.75rem;font-weight:900;line-height:1.1;color:var(--text-dark)}.aptitude-premium-dashboard-container .stat-pill .p-lab{font-size:.75rem;font-weight:800;text-transform:uppercase;color:var(--text-muted);letter-spacing:1px;margin-top:4px}.aptitude-premium-dashboard-container .subject-heatmap{margin-top:2rem}.aptitude-premium-dashboard-container .subject-heatmap h4{font-size:1.1rem;font-weight:800;margin-bottom:1.5rem;color:var(--text-dark)}.aptitude-premium-dashboard-container .heatmap-container{display:flex;flex-direction:column;gap:1.5rem}.aptitude-premium-dashboard-container .heatmap-item{display:flex;flex-direction:column;gap:.6rem}.aptitude-premium-dashboard-container .heatmap-item .h-info{display:flex;justify-content:space-between;align-items:center}.aptitude-premium-dashboard-container .heatmap-item .h-name{font-weight:800;font-size:.95rem}.aptitude-premium-dashboard-container .heatmap-item .h-meta{font-size:.8rem;color:var(--text-muted);font-weight:600}.aptitude-premium-dashboard-container .h-bar-bg{height:10px;background:#f1f5f9;border-radius:5px;overflow:hidden}[data-theme=dark] .aptitude-premium-dashboard-container .h-bar-bg{background:#ffffff0d}.aptitude-premium-dashboard-container .h-bar-fill{height:100%;border-radius:5px;transition:width 1.2s cubic-bezier(.4,0,.2,1)}.aptitude-premium-dashboard-container .mini-table .modern-table td{padding:1rem}.aptitude-premium-dashboard-container .proficiency-dot{width:10px;height:10px;border-radius:50%;display:inline-block;vertical-align:middle;margin-right:10px}.aptitude-premium-dashboard-container .p-text{font-weight:800;font-size:.95rem;vertical-align:middle}.aptitude-premium-dashboard-container .empty-results-state{padding:6rem 2rem;text-align:center;border:3px dashed var(--border-color);border-radius:40px;color:var(--text-muted);margin-top:1rem}.aptitude-premium-dashboard-container .empty-results-state i{font-size:5rem;margin-bottom:2rem;opacity:.3;display:block}.aptitude-premium-dashboard-container .empty-results-state p{font-size:1.1rem;font-weight:600;max-width:400px;margin:0 auto}@media(max-width:1400px){.aptitude-premium-dashboard-container .analytics-grid-dd{grid-template-columns:1fr}}:root{--ent-primary: #6366f1;--ent-primary-dark: #4f46e5;--ent-bg: #f8fafc;--ent-card: #ffffff;--ent-text: #1e293b;--ent-text-light: #64748b;--ent-border: #e2e8f0;--ent-sidebar: #1e293b;--ent-accent: #10b981;--ent-danger: #ef4444;--ent-warning: #f59e0b;--ent-glass: rgba(255, 255, 255, .7)}[data-theme=dark]{--ent-primary: #818cf8;--ent-primary-dark: #6366f1;--ent-bg: #0a0a0a;--ent-card: #1a1a1a;--ent-text: #f1f5f9;--ent-text-light: #94a3b8;--ent-border: rgba(255, 255, 255, .1);--ent-sidebar: #0f0f0f;--ent-accent: #34d399;--ent-danger: #f87171;--ent-warning: #fbbf24;--ent-glass: rgba(0, 0, 0, .7)}.enterprise-top-nav{display:flex;align-items:center;background:var(--ent-card);padding:0 32px;border-bottom:1px solid var(--ent-border);gap:20px;position:sticky;top:0;z-index:50;margin:0;box-shadow:0 2px 4px -1px #0000000d;transition:all .3s ease;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.enterprise-top-nav::-webkit-scrollbar{display:none}[data-theme=dark] .enterprise-top-nav{box-shadow:0 2px 4px -1px #0000004d}.enterprise-top-nav button{padding:18px 0;border:none;background:transparent;color:var(--ent-text-light);font-weight:700;font-size:.875rem;cursor:pointer;border-bottom:3px solid transparent;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;gap:8px;white-space:nowrap;flex-shrink:0;min-width:fit-content}.enterprise-top-nav button:hover{color:var(--ent-primary)}.enterprise-top-nav button.active{color:var(--ent-primary);border-bottom-color:var(--ent-primary)}.enterprise-fee-layout{display:flex;flex-direction:column;height:100vh;background:var(--ent-bg);transition:background-color .3s ease;overflow:hidden}.enterprise-content{flex:1;padding:0;max-width:100%;overflow-y:auto;overflow-x:hidden;box-sizing:border-box}.view-header{margin-bottom:28px;padding:28px 32px 0;display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:16px}.view-header .title{flex:1;min-width:300px}.view-header h1{font-size:2rem;font-weight:800;letter-spacing:-.02em;color:var(--ent-text);margin-bottom:8px;transition:color .3s ease}.view-header p{color:var(--ent-text-light);font-size:1rem;transition:color .3s ease}.dashboard-view,.rules-view,.simulation-view,.apply-view,.collection-view{padding:0 32px 32px;transition:all .3s ease}.dashboard-view .impact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-bottom:28px}.dashboard-view .dashboard-details{margin-top:0}.rules-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:20px}.sim-grid{display:grid;grid-template-columns:320px 1fr;gap:28px;align-items:flex-start}.filter-bar{margin-bottom:20px!important;padding:14px 18px!important}.table-container.shadow{margin-bottom:0}.invoice-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px}.rule-card{background:var(--ent-card);border-radius:24px;padding:28px;border:1px solid var(--ent-border);transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 15px -10px #0000001a;position:relative;overflow:hidden}[data-theme=dark] .rule-card{box-shadow:0 4px 15px -10px #00000080}.rule-card.interactive:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 25px 40px -15px #0000001a;border-color:var(--ent-primary)}[data-theme=dark] .rule-card.interactive:hover{box-shadow:0 25px 40px -15px #0009}.r-badge-row{display:flex;justify-content:space-between;margin-bottom:24px}.scope-badge{padding:6px 14px;border-radius:10px;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.scope-badge.global{background:#e0f2fe;color:#0369a1}[data-theme=dark] .scope-badge.global{background:#0ea5e933;color:#38bdf8}.scope-badge.department{background:#fef3c7;color:#92400e}[data-theme=dark] .scope-badge.department{background:#f59e0b33;color:#fbbf24}.scope-badge.class{background:#f3e8ff;color:#7e22ce}[data-theme=dark] .scope-badge.class{background:#a855f733;color:#c084fc}.status-pill{font-size:.75rem;font-weight:700;display:flex;align-items:center;gap:6px}.status-pill.active{color:var(--ent-accent)}.status-pill.inactive{color:var(--ent-text-light)}.r-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.r-header h4{font-size:1.25rem;font-weight:700;color:var(--ent-text);transition:color .3s ease}.r-amount-tag{font-size:1.5rem;font-weight:800;padding:4px 12px;border-radius:12px}.r-amount-tag.ADD_FEE{color:var(--ent-danger);background:#fef2f2}[data-theme=dark] .r-amount-tag.ADD_FEE{background:#ef444433}.r-amount-tag.DISCOUNT_FIXED{color:var(--ent-accent);background:#f0fdf4}[data-theme=dark] .r-amount-tag.DISCOUNT_FIXED{background:#10b98133}.r-logic-flow{background:#f8fafc;padding:16px;border-radius:16px;display:flex;align-items:center;gap:12px;margin-bottom:24px;border:1px solid #f1f5f9;transition:all .3s ease}[data-theme=dark] .r-logic-flow{background:#ffffff05;border-color:#ffffff0d}.flow-step{flex:1}.flow-step label{display:block;font-size:.65rem;font-weight:800;color:var(--ent-text-light);margin-bottom:4px}.flow-step span{font-weight:700;color:var(--ent-text);font-size:.9rem}.flow-arrow{color:var(--ent-border);font-size:.8rem}.r-footer{display:flex;justify-content:space-between;align-items:center;padding-top:20px;border-top:1px solid var(--ent-border)}.r-desc{font-size:.85rem;color:var(--ent-text-light);max-width:60%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sim-grid{display:grid;grid-template-columns:350px 1fr;gap:28px;align-items:flex-start}.sim-control-card{background:var(--ent-card);border-radius:24px;padding:24px;border:1px solid var(--ent-border);box-shadow:0 4px 15px #00000005;transition:all .3s ease}[data-theme=dark] .sim-control-card{box-shadow:0 4px 15px #0000004d}.control-group{margin-bottom:16px}.control-group label{display:block;font-size:.75rem;font-weight:800;color:var(--ent-text-light);margin-bottom:8px;text-transform:uppercase;letter-spacing:.05em}.sim-select{width:100%;padding:12px;border-radius:12px;border:1px solid var(--ent-border);background:var(--ent-card);color:var(--ent-text);font-weight:600;transition:all .3s ease}.sim-select:focus{border-color:var(--ent-primary);box-shadow:0 0 0 3px #6366f11a;outline:none}.bulk-info-box{background:var(--ent-bg);padding:20px;border-radius:16px;border:1px solid var(--ent-border);transition:all .3s ease}[data-theme=dark] .bulk-info-box{background:#6366f11a;border-color:#6366f133}.bulk-info-box i{color:var(--ent-primary);margin-bottom:10px;display:block}.bulk-info-box p{margin:0;font-size:.85rem;color:var(--ent-text);font-weight:600;transition:color .3s ease}.mode-tabs{display:flex;background:#f1f5f9;padding:6px;border-radius:12px;margin:20px 0;transition:background-color .3s ease}[data-theme=dark] .mode-tabs{background:#ffffff0d}.mode-tabs button{flex:1;padding:10px;border:none;border-radius:8px;font-weight:700;cursor:pointer;font-size:.85rem;background:transparent;color:var(--ent-text-light);transition:all .3s ease}.mode-tabs button.active{background:var(--ent-card);color:var(--ent-primary);box-shadow:0 4px 10px #0000000d}[data-theme=dark] .mode-tabs button.active{box-shadow:0 4px 10px #0000004d}.control-divider{text-align:center;font-size:.7rem;font-weight:800;color:var(--ent-border);margin:24px 0}.search-box{position:relative;background:#f8fafc;padding:14px 20px;border-radius:12px;display:flex;align-items:center;gap:12px;border:1px solid var(--ent-border);transition:all .3s ease}[data-theme=dark] .search-box{background:#ffffff05}.search-box input{background:transparent;border:none;outline:none;width:100%;font-weight:600;color:var(--ent-text);transition:color .3s ease}.search-box input::placeholder{color:var(--ent-text-light)}.search-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--ent-card);border-radius:16px;box-shadow:0 20px 40px -10px #0003;margin-top:10px;z-index:100;border:1px solid var(--ent-border);max-height:250px;overflow-y:auto;transition:all .3s ease}[data-theme=dark] .search-dropdown{box-shadow:0 20px 40px -10px #0009}.search-item{padding:16px 20px;cursor:pointer;border-bottom:1px solid #f8fafc;transition:background-color .3s ease}[data-theme=dark] .search-item{border-bottom-color:#ffffff0d}.search-item:hover{background:#f4f7fb}[data-theme=dark] .search-item:hover{background:#ffffff0d}.search-item .name{font-weight:700;color:var(--ent-text);transition:color .3s ease}.search-item .sub{font-size:.8rem;color:var(--ent-text-light);transition:color .3s ease}.projection-card{margin-top:24px;background:var(--ent-sidebar);color:#fff;border-radius:24px;padding:30px}.proj-stats{display:flex;gap:20px;margin:24px 0}.p-stat{flex:1}.p-stat label{font-size:.7rem;color:#fff9;text-transform:uppercase;font-weight:700}.p-stat span{display:block;font-size:1.5rem;font-weight:800}.proj-total{border-top:1px solid rgba(255,255,255,.1);padding-top:20px}.proj-total .v{font-size:2.25rem;font-weight:800;color:var(--ent-accent)}.skeleton-loading-container{animation:fadeInContent .3s ease-out}.skeleton-loading-container .skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:loading 1.5s infinite}[data-theme=dark] .skeleton-loading-container .skeleton{background:linear-gradient(90deg,#2a2a2a 25%,#3a3a3a,#2a2a2a 75%);background-size:200% 100%}.bulk-metric-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:30px}.metric-card{background:var(--ent-bg);padding:30px;border-radius:24px;border:1px solid var(--ent-border);transition:all .3s ease}.metric-card label{display:block;font-size:.75rem;font-weight:800;color:var(--ent-text-light);margin-bottom:10px;text-transform:uppercase;letter-spacing:.05em}.metric-value{font-size:2rem;font-weight:800;color:var(--ent-text);transition:color .3s ease}.status-note{margin-top:40px;text-align:center;opacity:.6}.status-note i{color:var(--ent-primary);margin-bottom:8px;display:block}.status-note p{font-size:.8rem;margin:0;color:var(--ent-text-light)}.bulk-table-container{margin-top:30px;background:var(--ent-bg);padding:24px;border-radius:24px;border:1px solid var(--ent-border);transition:all .3s ease}.bulk-table-container h4{margin-bottom:16px;color:var(--ent-text);font-weight:700}.bulk-dept-table{width:100%;border-collapse:collapse}.bulk-dept-table thead tr{text-align:left;border-bottom:1px solid var(--ent-border)}.bulk-dept-table th{padding:12px;font-size:.75rem;font-weight:800;color:var(--ent-text-light);text-transform:uppercase}.bulk-dept-table tbody tr{border-bottom:1px solid var(--ent-border);transition:background-color .3s ease}.bulk-dept-table tbody tr:hover{background:#6366f10d}.bulk-dept-table td{padding:12px;color:var(--ent-text)}.bulk-dept-table .dept-name{font-weight:600}.bulk-dept-table .flow-amount{font-weight:800;color:var(--ent-primary)}.sim-main{background:var(--ent-card);border-radius:32px;min-height:600px;border:1px solid var(--ent-border);padding:40px;position:relative;box-shadow:inset 0 2px 4px #00000005;transition:all .3s ease}[data-theme=dark] .sim-main{box-shadow:inset 0 2px 4px #0000004d}.sim-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--ent-text-light)}.sim-profile-card header{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px}.user-info{display:flex;gap:20px;align-items:center}.user-info .avatar{width:60px;height:60px;background:var(--ent-primary);color:#fff;border-radius:20px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:800}.grand-total span{font-size:3rem;font-weight:800;color:var(--ent-primary);display:block}.breakdown-list{margin-top:24px}.breakdown-item{display:flex;justify-content:space-between;padding:20px;background:#f8fafc;border-radius:16px;margin-bottom:12px}.breakdown-item .i-name{font-weight:700;display:flex;align-items:center;gap:12px}.breakdown-item .dot{width:8px;height:8px;border-radius:50%;background:var(--ent-primary)}.table-container.shadow{background:var(--ent-card);border-radius:24px;border:1px solid var(--ent-border);overflow:hidden;box-shadow:0 10px 40px -10px #0000000d;transition:all .3s ease}[data-theme=dark] .table-container.shadow{box-shadow:0 10px 40px -10px #00000080}.ent-table{width:100%;border-collapse:collapse}.ent-table th{background:#f8fafc;padding:20px 30px;text-align:left;font-size:.75rem;font-weight:800;text-transform:uppercase;color:var(--ent-text-light);border-bottom:1px solid var(--ent-border);transition:all .3s ease}[data-theme=dark] .ent-table th{background:#ffffff05}.ent-table td{padding:20px 30px;border-bottom:1px solid #f1f5f9;color:var(--ent-text);transition:all .3s ease}[data-theme=dark] .ent-table td{border-bottom-color:#ffffff0d}.ent-table tr:hover{background:#f9fafb;cursor:pointer}[data-theme=dark] .ent-table tr:hover{background:#ffffff05}.ent-table tr.selected{background:#eff6ff}[data-theme=dark] .ent-table tr.selected{background:#3b82f61a}.u-info .n{display:block;font-weight:700;color:var(--ent-text)}.u-info .e{font-size:.8rem;color:var(--ent-text-light)}.price{font-size:1.1rem;font-weight:800}.tiny-badge{background:var(--ent-bg);padding:4px 8px;border-radius:4px;font-size:.65rem;font-weight:800;margin-right:6px;color:var(--ent-text);border:1px solid var(--ent-border);transition:all .3s ease}.ent-modal-overlay{position:fixed;inset:0;background:#0f172ad9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:1000;transition:all .3s ease}[data-theme=dark] .ent-modal-overlay{background:#000000e6}.ent-modal.builder{background:var(--ent-card);width:100%;max-width:750px;border-radius:32px;overflow:hidden;box-shadow:0 30px 60px -20px #0000004d;transition:all .3s ease}[data-theme=dark] .ent-modal.builder{box-shadow:0 30px 60px -20px #000c}.studio-section{margin-bottom:40px}.studio-section.highlight{background:#f8fafc;padding:30px;border-radius:24px;border:1px solid var(--ent-border);transition:all .3s ease}[data-theme=dark] .studio-section.highlight{background:#ffffff05}.studio-section h3{font-size:.75rem;text-transform:uppercase;font-weight:800;color:var(--ent-primary);margin-bottom:24px;transition:color .3s ease}.logic-builder-ui{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.logic-step label{display:block;font-size:.65rem;font-weight:800;color:var(--ent-text-light);margin-bottom:10px}.logic-step select,.logic-step input{width:100%;padding:14px 18px;border-radius:12px;border:1px solid var(--ent-border);font-weight:600;outline:none;background:var(--ent-card);color:var(--ent-text);transition:all .3s ease}.logic-step select:focus,.logic-step input:focus{border-color:var(--ent-primary);box-shadow:0 0 0 3px #6366f11a}.primary-btn{background:var(--ent-primary);color:#fff;border:none;padding:14px 32px;border-radius:16px;font-weight:800;cursor:pointer;transition:all .3s;display:inline-flex;align-items:center;gap:12px}.primary-btn:hover{background:var(--ent-primary-dark);transform:scale(1.05)}.pulse{animation:pulseGlow 2s infinite}@keyframes pulseGlow{0%{box-shadow:0 0 #6366f166}70%{box-shadow:0 0 0 15px #6366f100}to{box-shadow:0 0 #6366f100}}.fade-in{animation:fadeInScale .4s cubic-bezier(.4,0,.2,1)}@keyframes fadeInScale{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.radar-animation{width:100px;height:100px;background:var(--ent-primary);border-radius:50%;margin-bottom:30px;opacity:.1;position:relative}.radar-animation:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:150%;height:150%;border:2px solid var(--ent-primary);border-radius:50%;animation:radarRipple 2s linear infinite}@keyframes radarRipple{0%{width:0%;height:0%;opacity:1}to{width:300%;height:300%;opacity:0}}.premium-card.chart-card{background:var(--ent-card);padding:30px;border-radius:24px;border:1px solid var(--ent-border);transition:all .3s ease}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.card-header h3{margin:0;color:var(--ent-text);font-weight:700;transition:color .3s ease}.percentage{font-size:1.5rem;font-weight:800;color:var(--ent-primary);transition:color .3s ease}.progress-track{height:30px;background:var(--ent-bg);border-radius:15px;overflow:hidden;margin-top:20px;border:1px solid var(--ent-border);transition:all .3s ease}.progress-fill{height:100%;background:var(--ent-primary);transition:width 1s ease-in-out,background-color .3s ease}.impact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px;margin-bottom:40px}.impact-card{background:var(--ent-card);padding:30px;border-radius:24px;display:flex;align-items:center;gap:24px;position:relative;overflow:hidden;border:1px solid var(--ent-border);transition:all .3s ease}.impact-card:hover{transform:translateY(-5px)}.impact-card .visual{width:60px;height:60px;border-radius:18px;display:flex;align-items:center;justify-content:center;font-size:1.5rem}.impact-card.blue .visual{background:#e0f2fe;color:#0369a1}.impact-card.green .visual{background:#dcfce7;color:#15803d}[data-theme=dark] .impact-card.blue .visual{background:#0ea5e933;color:#38bdf8}[data-theme=dark] .impact-card.green .visual{background:#22c55e33;color:#4ade80}[data-theme=dark] .impact-card.red .visual{background:#ef444433;color:#f87171}.impact-card .content .label{display:block;font-size:.8rem;font-weight:700;color:var(--ent-text-light);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.impact-card .content .value{font-size:1.75rem;font-weight:800;color:var(--ent-text)}.invoice-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px}.invoice-card{background:var(--ent-card);border-radius:20px;padding:24px;border:1px solid var(--ent-border);transition:all .3s ease}.invoice-card.glass{background:#fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.invoice-card:hover{box-shadow:0 10px 25px -10px #0000001a}.invoice-card .card-top{display:flex;justify-content:space-between;margin-bottom:20px}.inv-num{font-size:.75rem;font-weight:800;color:var(--ent-primary);background:var(--ent-bg);padding:4px 10px;border-radius:6px;transition:all .3s ease}[data-theme=dark] .inv-num{background:#6366f133}.status-badge{font-size:.7rem;font-weight:800;padding:4px 8px;border-radius:6px;text-transform:uppercase}.invoice-card .total-val{font-size:2rem;font-weight:800;margin:10px 0;color:var(--ent-text)}.card-footer{border-top:1px solid var(--ent-border);padding-top:20px;margin-top:20px;display:flex;gap:12px}.secondary-btn.small,.primary-btn.small{padding:8px 16px;font-size:.8rem;border-radius:10px}.secondary-btn{background:var(--ent-bg);color:var(--ent-text);border:1px solid var(--ent-border);font-weight:700;cursor:pointer;transition:all .2s}.secondary-btn:hover{background:var(--ent-border);border-color:var(--ent-primary)}.empty-ledger{grid-column:1 / -1;text-align:center;padding:100px 0;color:var(--ent-text-light)}.empty-ledger i{font-size:4rem;margin-bottom:20px;opacity:.2}.modal-header{padding:24px 30px;border-bottom:1px solid var(--ent-border);display:flex;justify-content:space-between;align-items:center;background:var(--ent-card);transition:all .3s ease}.modal-header h2{font-size:1.25rem;font-weight:800;color:var(--ent-text);transition:color .3s ease}.close-x{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--ent-text-light);transition:color .3s ease}.close-x:hover{color:var(--ent-text)}.modal-body{padding:30px;max-height:70vh;overflow-y:auto;background:var(--ent-card);transition:background-color .3s ease}.modal-footer{padding:20px 30px;border-top:1px solid var(--ent-border);display:flex;justify-content:flex-end;background:var(--ent-card);transition:all .3s ease}.bg-paper{background:#f1f5f9}.receipt-paper{box-shadow:0 0 40px #0000001a}.ent-toast{position:fixed;top:40px;right:40px;padding:16px 28px;border-radius:16px;background:var(--ent-card);box-shadow:0 20px 40px -10px #0003;display:flex;align-items:center;gap:12px;z-index:2000;font-weight:700;animation:slideIn .3s cubic-bezier(.4,0,.2,1);transition:all .3s ease}[data-theme=dark] .ent-toast{box-shadow:0 20px 40px -10px #0009}.ent-toast.success{border-left:4px solid var(--ent-accent);color:var(--ent-accent)}.ent-toast.error{border-left:4px solid var(--ent-danger);color:var(--ent-danger)}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.ent-loading-overlay{position:fixed;inset:0;background:#fffc;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1500}.ent-loading-overlay p{margin-top:20px;font-weight:800;color:var(--ent-primary);letter-spacing:.1em;text-transform:uppercase}@media(max-width:1200px){.enterprise-content{padding:32px 20px}.view-header{padding:24px 20px 0}.dashboard-view,.rules-view,.simulation-view,.apply-view,.collection-view{padding:0 20px 28px}.rules-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:18px}.sim-grid{grid-template-columns:300px 1fr;gap:24px}}@media(max-width:768px){.enterprise-top-nav{padding:0 16px;gap:16px}.enterprise-top-nav button{padding:16px 0;font-size:.8rem}.view-header{padding:20px 16px 0;flex-direction:column;align-items:flex-start;gap:12px}.dashboard-view,.rules-view,.simulation-view,.apply-view,.collection-view{padding:0 16px 24px}.view-header h1{font-size:1.75rem}.view-header p{font-size:.95rem}.rules-grid{grid-template-columns:1fr;gap:15px}.rule-card{padding:20px}.sim-grid{grid-template-columns:1fr;gap:20px}.sim-main{padding:20px;min-height:400px}.impact-grid,.invoice-grid{grid-template-columns:1fr;gap:15px}.ent-table th,.ent-table td{padding:12px 8px;font-size:.875rem}.ent-modal.builder{max-width:95vw;margin:20px}.logic-builder-ui{grid-template-columns:1fr;gap:15px}.filter-bar{flex-direction:column!important;align-items:stretch!important;gap:12px!important}.filter-group{width:100%}.filter-group select,.filter-group input{width:100%!important;min-width:unset!important}.filter-clear{margin-top:0!important;align-self:center}.bulk-metric-grid{grid-template-columns:1fr;gap:15px}}@media(max-width:480px){.enterprise-top-nav{padding:0 12px;gap:12px}.enterprise-top-nav button{padding:14px 0;font-size:.75rem;gap:4px}.view-header{padding:16px 12px 0}.dashboard-view,.rules-view,.simulation-view,.apply-view,.collection-view{padding:0 12px 20px}.view-header h1{font-size:1.5rem}.rule-card{padding:16px}.r-logic-flow{flex-direction:column;gap:8px;text-align:center}.flow-arrow{transform:rotate(90deg)}.sim-main{padding:16px}.impact-card{padding:20px;flex-direction:column;text-align:center;gap:15px}.ent-table th,.ent-table td{padding:8px 6px;font-size:.8rem}.card-footer{flex-wrap:wrap;gap:8px}.secondary-btn.small,.primary-btn.small{padding:6px 12px;font-size:.75rem}.filter-bar{padding:12px!important}}.icon-btn{background:transparent;border:1px solid var(--ent-border);border-radius:8px;padding:8px;cursor:pointer;color:var(--ent-text-light);transition:all .3s ease;display:inline-flex;align-items:center;justify-content:center}.icon-btn:hover{background:var(--ent-primary);color:#fff;border-color:var(--ent-primary)}.icon-btn.edit:hover{background:var(--ent-warning);border-color:var(--ent-warning)}.icon-btn.delete:hover{background:var(--ent-danger);border-color:var(--ent-danger)}.filter-bar{background:var(--ent-card)!important;border:1px solid var(--ent-border)!important;border-radius:12px!important;padding:14px 18px!important;margin-bottom:20px!important;display:flex!important;gap:15px!important;align-items:center!important;flex-wrap:wrap!important;box-shadow:0 2px 8px #0000000d!important;transition:all .3s ease}[data-theme=dark] .filter-bar{box-shadow:0 2px 8px #0003!important}.filter-group{display:flex;flex-direction:column;gap:4px}.filter-group label{font-size:.65rem!important;font-weight:800!important;color:var(--ent-text-light)!important;text-transform:uppercase;letter-spacing:.05em}.filter-group select,.filter-group input{background:var(--ent-card)!important;color:var(--ent-text)!important;border:1px solid var(--ent-border)!important;border-radius:6px!important;padding:8px!important;font-weight:600;min-width:120px;transition:all .3s ease}.filter-group select:focus,.filter-group input:focus{border-color:var(--ent-primary)!important;box-shadow:0 0 0 3px #6366f11a!important;outline:none}.filter-clear{margin-top:16px;align-self:flex-end}.status-badge.pending{background:#fef3c7;color:#92400e}[data-theme=dark] .status-badge.pending{background:#f59e0b33;color:#fbbf24}.status-badge.paid{background:#dcfce7;color:#15803d}[data-theme=dark] .status-badge.paid{background:#22c55e33;color:#4ade80}.status-badge.partial{background:#e0f2fe;color:#0369a1}[data-theme=dark] .status-badge.partial{background:#0ea5e933;color:#38bdf8}textarea{background:var(--ent-card)!important;color:var(--ent-text)!important;border:1px solid var(--ent-border)!important;transition:all .3s ease;resize:vertical}textarea:focus{border-color:var(--ent-primary)!important;box-shadow:0 0 0 3px #6366f11a!important}.sim-breakdown{margin-top:40px}.sim-breakdown h4{color:var(--ent-text);font-weight:700;margin-bottom:20px}.breakdown-list{display:flex;flex-direction:column;gap:12px}.breakdown-item{display:flex;justify-content:space-between;align-items:center;padding:20px;background:var(--ent-bg)!important;border-radius:16px;border:1px solid var(--ent-border);transition:all .3s ease}[data-theme=dark] .breakdown-item:hover{box-shadow:0 4px 12px #0000004d}.i-name{font-weight:700;display:flex;align-items:center;gap:12px;color:var(--ent-text)}.dot{width:8px;height:8px;border-radius:50%;background:var(--ent-primary);flex-shrink:0}.i-val{font-weight:800;font-size:1.1rem}.i-val.ADD_FEE{color:var(--ent-danger)}.i-val.DISCOUNT_FIXED{color:var(--ent-accent)}.fallback{text-align:center;color:var(--ent-text-light);padding:40px;margin:0;font-style:italic}.breakdown-item{background:#f8fafc!important;transition:background-color .3s ease}[data-theme=dark] .breakdown-item{background:#ffffff05!important}.bg-paper{background:var(--ent-card)!important;color:var(--ent-text)!important}.sim-empty-state,.empty-ledger{color:var(--ent-text-light)}.projection-card{background:var(--ent-sidebar)!important;transition:background-color .3s ease}.enterprise-top-nav button:disabled{opacity:.7;cursor:not-allowed}.enterprise-top-nav button .fa-spinner{animation:spin 1s linear infinite;font-size:.8rem}.content-loading-overlay{position:absolute;inset:0;background:#f8fafccc;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:10;border-radius:inherit}[data-theme=dark] .content-loading-overlay{background:#0a0a0acc}.content-loading-spinner{width:32px;height:32px;border:3px solid var(--ent-border);border-top:3px solid var(--ent-primary);border-radius:50%;animation:spin 1s linear infinite}.fade-in{animation:fadeInContent .3s ease-out}@keyframes fadeInContent{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.section-loading{position:relative;transition:opacity .3s ease}.section-loading:after{content:"";position:absolute;top:20px;right:20px;width:20px;height:20px;border:2px solid var(--ent-border);border-top:2px solid var(--ent-primary);border-radius:50%;animation:spin 1s linear infinite;z-index:10;background:var(--ent-card);box-shadow:0 2px 8px #0000001a}[data-theme=dark] .section-loading:after{box-shadow:0 2px 8px #0000004d}.skeleton-loading-container .skeleton-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px;margin-bottom:40px}.skeleton-loading-container .skeleton-stat-item{background:var(--ent-card);padding:30px;border-radius:24px;border:1px solid var(--ent-border);display:flex;align-items:center;gap:24px;transition:all .3s ease}.skeleton-loading-container .rules-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:30px}.skeleton-loading-container .invoice-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px}.skeleton-loading-container .sim-grid{display:grid;grid-template-columns:350px 1fr;gap:40px;align-items:flex-start}.skeleton-loading-container .skeleton-card{background:var(--ent-card);border-radius:24px;padding:28px;border:1px solid var(--ent-border);min-height:200px}.skeleton-loading-container .premium-card.chart-card{background:var(--ent-card);padding:30px;border-radius:24px;border:1px solid var(--ent-border);min-height:300px}@media(max-width:768px){.skeleton-loading-container .skeleton-stats,.skeleton-loading-container .rules-grid,.skeleton-loading-container .invoice-grid{grid-template-columns:1fr;gap:15px}.skeleton-loading-container .sim-grid{grid-template-columns:1fr;gap:20px}.skeleton-loading-container .skeleton-card{padding:20px;min-height:150px}}.collection-filters{display:grid;grid-template-columns:repeat(4,1fr) auto;gap:15px;background:var(--ent-card, #ffffff);padding:20px;border-radius:16px;margin-bottom:25px;border:1px solid var(--ent-border)}.collection-filters .filter-group{display:flex;flex-direction:column;gap:8px}.collection-filters .filter-group label{font-size:.7rem;font-weight:800;color:var(--ent-text-light);text-transform:uppercase}.collection-filters .filter-group select,.collection-filters .filter-group input{padding:12px;border-radius:12px;border:1px solid var(--ent-border);width:100%;background:var(--ent-background);color:var(--ent-text)}.collection-filters .filter-clear{align-self:flex-end;margin-bottom:2px}@media(max-width:1024px){.collection-filters{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.collection-filters{grid-template-columns:1fr}}@media print{body *{visibility:hidden}.financial-print-report,.financial-print-report *{visibility:visible}.financial-print-report{position:absolute;left:0;top:0;width:100%;margin:0;padding:0;border:none!important}.print-hide{display:none!important}.print-only-header{display:block!important}.financial-print-report table{border-collapse:collapse;width:100%}.financial-print-report th,.financial-print-report td{border:1px solid #ddd;padding:8px}}:root{--financial-primary: #6366f1;--financial-primary-dark: #4f46e5;--financial-bg: #f8fafc;--financial-card: #ffffff;--financial-text: #1e293b;--financial-text-light: #64748b;--financial-border: #e2e8f0;--financial-accent: #10b981;--financial-shadow: rgba(0, 0, 0, .05)}[data-theme=dark]{--financial-primary: #818cf8;--financial-primary-dark: #6366f1;--financial-bg: #0a0a0a;--financial-card: #1a1a1a;--financial-text: #f1f5f9;--financial-text-light: #94a3b8;--financial-border: rgba(255, 255, 255, .1);--financial-accent: #34d399;--financial-shadow: rgba(0, 0, 0, .3)}.enterprise-financial-reports{padding:40px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--financial-bg);min-height:100vh;transition:background-color .3s ease}.financial-header{margin-bottom:40px;animation:fadeInUp .6s ease-out}.financial-header h1{font-size:2.25rem;font-weight:800;color:var(--financial-text);margin:0 0 12px;letter-spacing:-.02em;transition:color .3s ease}.financial-header p{color:var(--financial-text-light);font-size:1.1rem;margin:0;font-weight:400;line-height:1.6;transition:color .3s ease}.construction-card{background:var(--financial-card);padding:100px 40px;border-radius:24px;border:1px solid var(--financial-border);text-align:center;box-shadow:0 4px 6px -1px var(--financial-shadow);transition:all .3s ease;animation:fadeInScale .8s ease-out .2s both;position:relative;overflow:hidden}.construction-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(99,102,241,.1),transparent);animation:shimmer 3s infinite}.construction-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px -10px var(--financial-shadow)}[data-theme=dark] .construction-card:hover{box-shadow:0 20px 40px -10px #00000080}.construction-icon{font-size:4rem;color:var(--financial-text-light);margin-bottom:20px;transition:all .3s ease;animation:pulse 2s infinite}.construction-card:hover .construction-icon{color:var(--financial-primary);transform:scale(1.1)}.construction-card h2{color:var(--financial-text);margin:0 0 10px;font-size:1.5rem;font-weight:700;transition:color .3s ease}.construction-card p{color:var(--financial-text-light);max-width:500px;margin:0 auto;font-size:1rem;line-height:1.6;transition:color .3s ease}.construction-card p strong{color:var(--financial-primary);font-weight:600;transition:color .3s ease}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes shimmer{0%{left:-100%}to{left:100%}}@media(max-width:768px){.enterprise-financial-reports{padding:24px 20px}.financial-header{margin-bottom:32px;text-align:center}.financial-header h1{font-size:1.875rem}.financial-header p{font-size:1rem}.construction-card{padding:60px 24px;border-radius:20px}.construction-icon{font-size:3rem;margin-bottom:16px}.construction-card h2{font-size:1.25rem;margin-bottom:8px}.construction-card p{font-size:.9rem;max-width:400px}}@media(max-width:480px){.enterprise-financial-reports{padding:20px 16px}.financial-header h1{font-size:1.5rem}.financial-header p{font-size:.95rem}.construction-card{padding:40px 20px;border-radius:16px}.construction-icon{font-size:2.5rem}.construction-card h2{font-size:1.125rem}.construction-card p{font-size:.875rem;max-width:300px}}@media(prefers-contrast:high){.construction-card{border-width:2px}.construction-card p strong{text-decoration:underline}}@media(prefers-reduced-motion:reduce){.construction-card,.financial-header,.construction-icon{animation:none}.construction-card:before{animation:none}.construction-card:hover,.construction-card:hover .construction-icon{transform:none}}.comm-mgmt-container{display:flex;flex-direction:column;min-height:100vh;background:var(--bg-secondary);font-family:var(--font-family);animation:fadeIn .5s ease-out}.comm-mgmt-sidebar{width:100%;height:auto;background:var(--card-bg);border-bottom:1px solid var(--border-color);padding:1rem 2rem;display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:all var(--transition-normal)}.sidebar-header{display:flex;align-items:center;gap:.75rem;font-size:1.25rem;font-weight:800;color:var(--text-primary);margin-bottom:0;padding:0;letter-spacing:-.5px}.sidebar-header i{color:var(--primary-color);font-size:1.5rem;filter:drop-shadow(0 2px 4px rgba(var(--primary-color-rgb),.2))}.sidebar-nav{display:flex;gap:.5rem;align-items:center}.sidebar-nav button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:none;background:transparent;border-radius:var(--radius-lg);color:var(--text-secondary);font-weight:600;font-size:.95rem;cursor:pointer;transition:all var(--transition-normal);position:relative}.sidebar-nav button:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:0;height:3px;background:var(--primary-color);border-radius:3px 3px 0 0;transition:width var(--transition-normal)}.sidebar-nav button:hover{background:var(--hover-bg);color:var(--primary-color);transform:translateY(-1px)}.sidebar-nav button.active{background:rgba(var(--primary-color-rgb),.1);color:var(--primary-color)}.sidebar-nav button.active:after{width:100%}.sidebar-nav button.active i{color:var(--primary-color)}.comm-mgmt-content{flex:1;overflow-y:auto;padding:2rem;max-width:1600px;margin:0 auto;width:100%}.content-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;gap:1rem;flex-wrap:wrap}.content-header-left{flex:1}.content-header h1{font-size:2rem;font-weight:800;color:var(--text-primary);letter-spacing:-.8px;margin-bottom:.5rem}.content-header p{color:var(--text-secondary);font-size:1rem;font-weight:500}.content-header-actions{display:flex;gap:1rem;align-items:center}.search-box{position:relative;min-width:300px}.search-box input{width:100%;padding:.75rem 1rem .75rem 2.75rem;border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--card-bg);color:var(--text-primary);font-size:.95rem;transition:all var(--transition-normal)}.search-box input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(var(--primary-color-rgb),.1)}.add-btn{background:var(--primary-color);color:#fff;border:none;padding:.85rem 1.75rem;border-radius:var(--radius-lg);font-weight:600;font-size:.95rem;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all var(--transition-normal);box-shadow:0 4px 12px rgba(var(--primary-color-rgb),.25)}.add-btn:hover{background:var(--primary-dark);transform:translateY(-2px);box-shadow:0 6px 16px rgba(var(--primary-color-rgb),.35)}.skills-grid,.assessments-grid,.modules-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.item-card,.module-item-card{background:var(--card-bg);padding:2rem;border-radius:var(--radius-xl);border:1px solid var(--border-color);position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;box-shadow:var(--shadow-sm);min-height:420px;max-height:420px;height:420px}.item-card:hover,.module-item-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:rgba(var(--primary-color-rgb),.3)}.card-icon{width:56px;height:56px;background:rgba(var(--primary-color-rgb),.15);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:var(--primary-color);font-size:1.5rem;margin-bottom:1.5rem;transition:all var(--transition-normal);flex-shrink:0}.item-card:hover .card-icon{background:var(--primary-color);color:#fff;transform:rotate(10deg) scale(1.1)}.item-card h3,.module-item-card h3{font-size:1.35rem;font-weight:700;margin-bottom:.75rem;color:var(--text-primary);line-height:1.3;flex-shrink:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;padding-right:80px}.item-card p,.module-item-card p{font-size:.95rem;color:var(--text-secondary);line-height:1.6;margin-bottom:1rem;flex:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.module-header{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1rem;flex-shrink:0}.module-header h3{flex:1;min-width:0;padding-right:0}.order-tag{background:var(--primary-color);color:#fff;font-size:.75rem;font-weight:700;padding:.375rem .75rem;border-radius:var(--radius-md);margin-top:.2rem;box-shadow:0 2px 4px rgba(var(--primary-color-rgb),.3);flex-shrink:0}.meta{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:auto;padding-top:1.5rem;border-top:1px solid var(--border-color)}.meta-pill{background:var(--bg-secondary);padding:.5rem 1rem;border-radius:var(--radius-md);font-size:.85rem;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:.5rem;transition:all var(--transition-normal);border:1px solid var(--border-color)}.meta-pill i{font-size:.9rem;color:var(--primary-color)}.item-card:hover .meta-pill{background:rgba(var(--primary-color-rgb),.1);color:var(--primary-color);border-color:rgba(var(--primary-color-rgb),.3)}.item-card:hover .meta-pill i{color:var(--primary-color)}.actions{position:absolute;top:1.25rem;right:1.25rem;display:flex;gap:.5rem;opacity:1;transform:translateY(0);transition:all var(--transition-normal)}.item-card:hover .actions,.module-item-card:hover .actions{opacity:1;transform:translateY(0)}.actions button{background:var(--bg-secondary);border:1.5px solid var(--border-color);color:var(--text-primary);padding:.5rem;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-size:.95rem;box-shadow:var(--shadow-sm)}.actions button:hover{background:var(--primary-color);color:#fff;border-color:var(--primary-color);transform:scale(1.1);box-shadow:var(--shadow-md)}.actions button.delete-btn{color:var(--error-color)}.actions button.delete-btn:hover{background:var(--error-color);color:#fff;border-color:var(--error-color)}.modal-overlay{background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}.modal{background:var(--card-bg);width:100%;max-width:600px;border-radius:var(--radius-xl);box-shadow:var(--shadow-2xl);position:relative;border:1px solid var(--border-color);animation:slideUp .4s cubic-bezier(.16,1,.3,1);max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.modal.wide-modal{max-width:900px}.modal-header{padding:1.5rem 2rem;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.modal-header h2{font-size:1.5rem;color:var(--text-primary);font-weight:700;margin:0}.modal-close{background:var(--hover-bg);border:1.5px solid var(--border-color);color:var(--text-primary);cursor:pointer;padding:0;border-radius:var(--radius-md);transition:all var(--transition-fast);width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}.modal-close:hover{background:var(--error-color);color:#fff;border-color:var(--error-color);transform:rotate(90deg) scale(1.1)}.modal-body{padding:2rem;overflow-y:auto;flex:1}.modal-body::-webkit-scrollbar{width:8px}.modal-body::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:var(--radius-md)}.modal-body::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:var(--radius-md);transition:background var(--transition-fast)}.modal-body::-webkit-scrollbar-thumb:hover{background:var(--primary-color)}.form-group{margin-bottom:1.75rem}.form-group label{font-size:.95rem;font-weight:600;color:var(--text-primary);margin-bottom:.75rem;display:block}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.875rem 1.25rem;border:1.5px solid var(--border-color);border-radius:var(--radius-lg);background:var(--bg-primary);color:var(--text-primary);font-size:.95rem;transition:all var(--transition-normal);box-shadow:var(--shadow-sm);font-family:inherit}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-muted)}.form-group input:hover,.form-group textarea:hover,.form-group select:hover{background:var(--card-bg);border-color:var(--border-hover)}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{background:var(--card-bg);border-color:var(--primary-color);box-shadow:0 0 0 4px rgba(var(--primary-color-rgb),.1);outline:none}.form-group textarea{min-height:120px;resize:vertical;line-height:1.6}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.75rem}@media(max-width:768px){.form-row{grid-template-columns:1fr}}.modal-footer{padding:1.5rem 2rem;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:1rem;background:var(--bg-secondary);flex-shrink:0}.modal-footer button{padding:.875rem 1.75rem;border-radius:var(--radius-lg);font-weight:600;font-size:.95rem;cursor:pointer;transition:all var(--transition-normal);border:1.5px solid var(--border-color);background:var(--card-bg);color:var(--text-primary);display:flex;align-items:center;gap:.5rem}.modal-footer button:hover{background:var(--hover-bg);transform:translateY(-1px);box-shadow:var(--shadow-md)}.modal-footer .save-btn{background:var(--primary-color);color:#fff;border:none;box-shadow:0 4px 6px rgba(var(--primary-color-rgb),.2)}.modal-footer .save-btn:hover{background:var(--primary-dark);transform:translateY(-2px);box-shadow:0 6px 12px rgba(var(--primary-color-rgb),.3)}.modal-footer .cancel-btn:hover{border-color:var(--error-color);color:var(--error-color)}.question-builder-section{background:#fff;border:1px solid var(--border);border-radius:20px;padding:2rem;margin-top:2rem;box-shadow:0 4px 6px -1px #00000003}.q-input{background:#fff;border:1px solid #e2e8f0}.option-input{background:#f8fafc!important}.comm-table{border-collapse:separate;border-spacing:0;width:100%;background:var(--card-bg);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.comm-table th{background:var(--bg-secondary);padding:1.25rem;color:var(--text-secondary);font-weight:600;font-size:.85rem;border-bottom:2px solid var(--border-color);text-align:left;transition:all var(--transition-normal)}.comm-table td{padding:1.25rem;border-bottom:1px solid var(--border-color);background:var(--card-bg);transition:all var(--transition-normal);color:var(--text-primary)}.comm-table tr:last-child td{border-bottom:none}.comm-table tr:hover td{background:var(--hover-bg)}@keyframes slideDown{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideUp{0%{transform:translateY(20px) scale(.98);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.question-item-card{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-xl);padding:1.5rem;margin-bottom:1.5rem;transition:all var(--transition-normal);display:block}.question-item-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-md)}.q-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.q-header h4{margin:0;color:var(--text-primary);transition:color var(--transition-normal)}.q-input{background:var(--card-bg);border:1px solid var(--border-color);color:var(--text-primary);transition:all var(--transition-normal)}.q-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(var(--primary-color-rgb),.1)}.option-input{background:var(--bg-tertiary)!important;color:var(--text-primary)}.q-header h4{font-size:1.1rem;font-weight:700}.section-builder{margin-top:2rem;padding-top:2rem;border-top:2px dashed #e2e8f0}.section-item-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;padding:1.5rem;margin-bottom:1.5rem}.section-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.flex-2{flex:2}.dynamic-input-row{display:flex;gap:.5rem;margin-bottom:.75rem}.dynamic-input-row input{flex:1}.objective-builder{margin-top:2rem;padding:1.5rem;background:#f8fafc;border-radius:16px;border:1px solid #e2e8f0}.objective-builder h3{font-size:1.1rem;margin-bottom:1rem;color:#334155}.close-btn{width:44px;height:44px;background:#f1f5f9;border-radius:14px;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:all .2s}.close-btn:hover{background:var(--danger);color:#fff;transform:rotate(90deg)}.add-field-btn{background:var(--primary);color:#fff;padding:.75rem 1.5rem;border-radius:12px;border:none;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:.5rem}.section-header-row h3{font-size:1.5rem;font-weight:800}.remove-q-btn{background:transparent;color:#ef4444;border:none;cursor:pointer;font-size:1rem}.options-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.opt-row{display:flex;align-items:center;gap:.5rem}.opt-row input[type=radio]{width:auto;cursor:pointer}.opt-row input[type=text]{flex:1;padding:.6rem;font-size:.9rem}.search-bar{position:relative;display:flex;align-items:center}.search-bar i{position:absolute;left:1.25rem;color:var(--text-secondary)}.search-bar input{padding:.85rem 1rem .85rem 3rem;border:1px solid var(--border);border-radius:12px;width:300px;background:#fff;outline:none;transition:all .3s}.search-bar input:focus{border-color:var(--primary);box-shadow:0 4px 12px #6366f11a}.table-actions{display:flex;gap:.5rem}.edit-btn-sml,.del-btn-sml{width:32px;height:32px;border-radius:8px;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.9rem;transition:all .2s}.edit-btn-sml{background:#eff6ff;color:#2563eb}.del-btn-sml{background:#fef2f2;color:#ef4444}.type-badge{background:#f1f5f9;padding:.35rem .75rem;border-radius:8px;font-size:.75rem;font-weight:700;color:#475569}.empty-msg{grid-column:1 / -1;text-align:center;padding:4rem;background:#fff;border-radius:24px;border:2px dashed var(--border);color:var(--text-secondary);font-weight:500}@media(max-width:1200px){.comm-mgmt-content{padding:1.5rem}.skills-grid,.assessments-grid,.modules-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}}@media(max-width:768px){.comm-mgmt-sidebar{flex-direction:column;align-items:flex-start;gap:1rem;padding:1rem}.sidebar-nav{width:100%;overflow-x:auto;padding-bottom:.5rem}.sidebar-nav button{padding:.625rem 1rem;font-size:.875rem;white-space:nowrap}.comm-mgmt-content{padding:1rem}.content-header{flex-direction:column;align-items:flex-start}.content-header-actions{width:100%;flex-direction:column}.search-box{width:100%;min-width:auto}.add-btn{width:100%;justify-content:center}.skills-grid,.assessments-grid,.modules-grid{grid-template-columns:1fr}.modal{width:95%;max-height:95vh}.modal-header,.modal-body,.modal-footer{padding:1rem}}@media(max-width:480px){.sidebar-header{font-size:1.1rem}.sidebar-header i{font-size:1.25rem}.content-header h1{font-size:1.5rem}.item-card,.module-item-card{padding:1.5rem}.card-icon{width:40px;height:40px;font-size:1rem}}.loading-skeleton{background:linear-gradient(90deg,var(--bg-tertiary) 25%,var(--hover-bg) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:loading 1.5s ease-in-out infinite;border-radius:var(--radius-md)}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.empty-state i{font-size:4rem;margin-bottom:1rem;opacity:.3}.empty-state h3{font-size:1.25rem;color:var(--text-secondary);margin-bottom:.5rem}.empty-state p{color:var(--text-muted)}.table-container{background:var(--card-bg);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.table-wrapper{overflow-x:auto}.table-actions{display:flex;gap:.5rem;justify-content:flex-end}.table-actions button{background:transparent;border:1px solid var(--border-color);color:var(--text-secondary);padding:.5rem;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);width:36px;height:36px;display:flex;align-items:center;justify-content:center}.table-actions button:hover{background:var(--primary-color);color:#fff;border-color:var(--primary-color);transform:scale(1.05)}.table-actions button.delete-btn{color:var(--error-color);border-color:rgba(var(--error-color-rgb),.3)}.table-actions button.delete-btn:hover{background:var(--error-color);color:#fff;border-color:var(--error-color)}.skills-grid .item-card,.assessments-grid .item-card,.modules-grid .module-item-card{min-height:320px}.comm-mgmt-container{display:flex;flex-direction:column;height:100vh;overflow:hidden}.comm-mgmt-content{flex:1;overflow-y:auto;overflow-x:hidden}.ta-module-container{padding:2rem;color:var(--text-primary);min-height:100vh}.ta-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.ta-header h1{font-size:2rem;font-weight:700;margin-bottom:.5rem;background:linear-gradient(135deg,var(--text-primary) 0%,#4285f4 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.ta-header p{color:var(--text-secondary);font-size:1rem}.ta-header-actions{display:flex;align-items:center;gap:1rem}.ta-filter-group{display:flex;gap:1rem}.ta-select{padding:.75rem 1rem;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);font-size:.9rem;cursor:pointer;min-width:150px}.ta-select:focus{outline:none;border-color:#4285f4}.ta-tabs-nav{display:flex;gap:1rem;margin-bottom:2rem;background:var(--bg-secondary);padding:.5rem;border-radius:12px;border:1px solid var(--border-color);width:fit-content}.ta-tab-btn{padding:.75rem 1.5rem;border-radius:8px;border:none;background:transparent;color:var(--text-secondary);font-weight:500;cursor:pointer;display:flex;align-items:center;gap:.75rem;transition:all .2s ease}.ta-tab-btn i{font-size:1rem}.ta-tab-btn:hover{background:#ffffff0d;color:var(--text-primary)}.ta-tab-btn.active{background:#4285f4;color:#fff;box-shadow:0 4px 12px #4285f44d}.ta-view{background:var(--bg-primary);border-radius:16px;border:1px solid var(--border-color);padding:2rem;box-shadow:0 4px 20px #0000000d}.ta-view-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.ta-view-header h2{font-size:1.5rem;font-weight:600}.ta-table-wrapper{overflow-x:auto}.ta-table{width:100%;border-collapse:collapse}.ta-table th{text-align:left;padding:1rem;color:var(--text-secondary);font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--border-color)}.ta-table td{padding:1.25rem 1rem;border-bottom:1px solid var(--border-color);font-size:.95rem}.status-badge{padding:4px 10px;border-radius:20px;font-size:.7rem;font-weight:700;letter-spacing:.02em}.ta-action-link{background:transparent;border:none;color:#4285f4;font-weight:600;cursor:pointer;padding:0}.ta-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.ta-card{background:var(--bg-secondary);border-radius:12px;padding:1.5rem;border:1px solid var(--border-color);transition:transform .2s ease;display:flex;flex-direction:column}.ta-card:hover{transform:translateY(-4px)}.ta-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.ta-card h3{font-size:1.1rem;font-weight:600}.ta-card-meta{color:var(--text-secondary);font-size:.85rem;margin-bottom:.5rem}.ta-card-desc{color:var(--text-secondary);font-size:.85rem;margin-bottom:1.5rem;flex-grow:1}.ta-card-stats{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem}.stat span{display:block;font-size:.75rem;color:var(--text-secondary);margin-bottom:.25rem}.stat strong{font-size:1rem}.ta-btn-outline{background:transparent;border:1px solid #4285f4;color:#4285f4;padding:.75rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease}.ta-btn-outline:hover{background:#4285f4;color:#fff}.ta-btn-primary{background:#4285f4;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;box-shadow:0 4px 12px #4285f44d}.ta-btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);padding:.6rem 1.25rem;border-radius:8px;font-weight:600;cursor:pointer}.ta-modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease-out}.ta-modal{background:var(--bg-primary);border-radius:16px;width:90%;max-width:600px;border:1px solid var(--border-color);box-shadow:0 10px 40px #0003;display:flex;flex-direction:column;max-height:90vh}.ta-modal.wide{max-width:900px}.ta-modal-header{padding:1.5rem;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.ta-modal-header h2{font-size:1.25rem;font-weight:600;margin:0}.ta-modal-header button{background:transparent;border:none;font-size:1.5rem;color:var(--text-secondary);cursor:pointer}.ta-modal-body{padding:1.5rem;overflow-y:auto}.ta-modal-footer{padding:1.5rem;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:1rem}.ta-form-group{margin-bottom:1.25rem}.ta-form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-secondary);font-size:.9rem}.ta-form-group input,.ta-form-group textarea{width:100%;padding:.75rem;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);font-size:.95rem}.ta-form-group textarea{min-height:100px;resize:vertical}.ta-form-group input:focus,.ta-form-group textarea:focus{outline:none;border-color:#4285f4}.ta-row{display:flex;gap:1rem}.ta-row .ta-form-group{flex:1}.ta-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:60vh}.ta-loader{width:48px;height:48px;border:5px solid var(--border-color);border-bottom-color:#4285f4;border-radius:50%;animation:rotation 1s linear infinite;margin-bottom:1rem}.fadeIn{animation:fadeIn .4s ease-out}.ta-empty{grid-column:1 / -1;text-align:center;padding:3rem;color:var(--text-secondary);background:var(--bg-secondary);border-radius:12px;border:1px dashed var(--border-color)}.report-gen-layout{min-height:100vh;background:#f8fafc;padding:0;transition:background-color .3s ease}[data-theme=dark] .report-gen-layout{background:#0a0a0a}.report-gen-header{background:#fff;padding:2rem 2rem 0;border-bottom:1px solid #e2e8f0;margin-bottom:1.5rem;transition:all .3s ease}[data-theme=dark] .report-gen-header{background:#1a1a1a;border-bottom-color:#ffffff1a}.header-info h1{font-size:2.25rem;font-weight:800;color:#1e293b;margin-bottom:.5rem;letter-spacing:-.02em;transition:color .3s ease}.header-info p{color:#64748b;font-size:1.1rem;margin-bottom:2rem;transition:color .3s ease}[data-theme=dark] .header-info p{color:#94a3b8}.report-tabs{display:flex;gap:2rem;overflow-x:auto;padding-bottom:.5rem}.report-tabs button{padding:1.25rem 0;background:transparent;border:none;border-bottom:3px solid transparent;font-weight:700;color:#64748b;cursor:pointer;display:flex;align-items:center;gap:.75rem;transition:all .3s ease;font-size:.95rem;white-space:nowrap;flex-shrink:0}[data-theme=dark] .report-tabs button{color:#94a3b8}.report-tabs button i{font-size:1.1rem}.report-tabs button:hover{color:#6366f1}[data-theme=dark] .report-tabs button:hover{color:#818cf8}.report-tabs button.active{color:#6366f1;border-bottom-color:#6366f1}[data-theme=dark] .report-tabs button.active{color:#818cf8;border-bottom-color:#818cf8}.report-content-area{padding:0 2rem 2rem;max-width:100%;overflow-x:hidden}.report-placeholder{background:#fff;padding:6rem 2.5rem;border-radius:24px;border:1px solid #e2e8f0;text-align:center;box-shadow:0 4px 6px -1px #0000000d;transition:all .3s ease}[data-theme=dark] .report-placeholder{background:#1a1a1a;border-color:#ffffff1a;box-shadow:0 4px 6px -1px #00000080}.placeholder-icon{font-size:4rem;color:#cbd5e1;margin-bottom:1.5rem;transition:color .3s ease}[data-theme=dark] .placeholder-icon{color:#64748b}.report-placeholder h2{color:#1e293b;margin-bottom:.75rem;font-weight:800;transition:color .3s ease}[data-theme=dark] .report-placeholder h2{color:#f1f5f9}.report-placeholder p{color:#64748b;max-width:500px;margin:0 auto;transition:color .3s ease}[data-theme=dark] .report-placeholder p{color:#94a3b8}@media(max-width:1024px){.report-gen-header{padding:1.5rem 1.5rem 0}.report-content-area{padding:0 1.5rem 1.5rem}.header-info h1{font-size:1.875rem}.report-tabs{gap:1.5rem}}@media(max-width:768px){.report-gen-header{padding:1rem 1rem 0}.report-content-area{padding:0 1rem 1rem}.header-info h1{font-size:1.5rem}.header-info p{font-size:1rem}.report-tabs{gap:1rem}.report-tabs button{font-size:.875rem;padding:1rem 0}.report-placeholder{padding:4rem 1.5rem}.placeholder-icon{font-size:3rem}}@media print{.report-gen-layout,.report-content-area,.fade-in{background:#fff!important;margin:0!important;padding:0!important;overflow:visible!important;height:auto!important;width:100%!important;display:block!important;opacity:1!important;visibility:visible!important;animation:none!important;transform:none!important}.report-gen-header,.no-print{display:none!important}}.batch-history-page{padding:2.5rem;min-height:100vh;background:#f8fafc;color:#334155;font-family:Inter,system-ui,-apple-system,sans-serif}.history-container{max-width:1300px;margin:0 auto;animation:fadeIn .5s ease-out}.history-header{background:#fff;padding:2.5rem;border-radius:24px;box-shadow:0 10px 25px -5px #0000000d;margin-bottom:2rem;position:relative;overflow:hidden;border:1px solid rgba(226,232,240,.8)}.header-top{margin-bottom:2rem}.back-btn-minimal{display:flex;align-items:center;gap:.5rem;background:#f1f5f9;border:none;padding:.6rem 1.25rem;border-radius:12px;color:#64748b;font-weight:700;font-size:.85rem;cursor:pointer;transition:all .2s}.back-btn-minimal:hover{background:#e2e8f0;color:#1e293b;transform:translate(-4px)}.header-main{display:flex;justify-content:space-between;align-items:flex-end}.batch-hero{display:flex;align-items:center;gap:2rem}.batch-icon-large{width:80px;height:80px;background:linear-gradient(135deg,#7c3aed,#4f46e5);border-radius:24px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:2.25rem;box-shadow:0 10px 20px -5px #7c3aed66}.batch-text .batch-title{font-size:2.5rem;font-weight:900;letter-spacing:-.025em;color:#0f172a;margin:.5rem 0 0}.batch-meta{display:flex;gap:.75rem}.meta-tag{padding:.4rem 1rem;border-radius:10px;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.meta-tag.department{background:#eff6ff;color:#2563eb}.meta-tag.years{background:#fdf2f8;color:#db2777}.action-btn-premium{background:#0f172a;color:#fff;border:none;padding:.8rem 1.75rem;border-radius:14px;font-weight:700;display:flex;align-items:center;gap:.75rem;cursor:pointer;transition:all .2s;box-shadow:0 4px 12px #0f172a26}.action-btn-premium:hover{background:#1e293b;transform:translateY(-2px);box-shadow:0 8px 20px #0f172a33}.history-tabs-premium{display:flex;gap:.5rem;background:#e2e8f0;padding:.5rem;border-radius:18px;width:fit-content;margin-bottom:2.5rem;border:1px solid #cbd5e1}.history-tabs-premium button{padding:.8rem 1.75rem;border:none;background:transparent;color:#64748b;font-weight:700;font-size:.95rem;border-radius:14px;cursor:pointer;transition:all .3s;display:flex;align-items:center;gap:.75rem}.history-tabs-premium button.active{background:#fff;color:#7c3aed;box-shadow:0 4px 12px #00000014}.history-tabs-premium button i{font-size:1.1rem}.history-content-premium{min-height:500px;position:relative}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:5rem 0;color:#64748b}.spinner{width:40px;height:40px;border:4px solid #f1f5f9;border-top:4px solid #7c3aed;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1.5rem}.timeline-container{display:flex;flex-direction:column;gap:2rem;padding-left:2rem;border-left:3px solid #e2e8f0;margin-left:1rem}.timeline-card{background:#fff;border-radius:24px;padding:2rem;box-shadow:0 4px 20px #00000008;border:1px solid #f1f5f9;position:relative;transition:all .3s}.timeline-card:hover{transform:translate(10px);box-shadow:0 10px 30px #0000000f}.card-indicator{position:absolute;left:-35px;top:2rem;width:24px;height:24px;background:#fff;border:5px solid #7c3aed;border-radius:50%;z-index:2;box-shadow:0 0 0 5px #7c3aed1a}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.action-badge{padding:.5rem 1rem;background:#f5f3ff;color:#7c3aed;border-radius:12px;font-weight:800;font-size:.85rem;display:flex;align-items:center;gap:.6rem}.time-stamp{color:#94a3b8;font-size:.85rem;font-weight:600}.progression-flow{display:flex;align-items:center;gap:2.5rem;background:#f8fafc;padding:1.5rem;border-radius:20px;border:1px dashed #e2e8f0}.flow-step{display:flex;flex-direction:column}.flow-step .label{font-size:.7rem;font-weight:800;color:#94a3b8;margin-bottom:.4rem}.flow-step .value{font-size:1.25rem;font-weight:800;color:#1e293b}.flow-step .sub-value{font-size:.85rem;color:#64748b;margin-top:.2rem}.flow-arrow{font-size:1.5rem;color:#cbd5e1}.note-box{margin-top:1.5rem;padding:1rem 1.5rem;background:#fffbef;border-left:4px solid #f59e0b;color:#854d0e;font-style:italic;border-radius:0 12px 12px 0;font-size:.95rem}.graduate-text{font-size:1.1rem;font-weight:600;color:#059669}.empty-state{background:#fff;padding:5rem;border-radius:30px;text-align:center;color:#94a3b8;border:2px dashed #e2e8f0}.empty-state p{font-size:1.25rem;font-weight:600}.report-table-wrapper{background:#fff;border-radius:24px;padding:1rem;box-shadow:0 4px 15px #0000000d;border:1px solid #f1f5f9}.report-table th{background:#f8fafc;color:#475569;text-transform:uppercase;font-size:.75rem;letter-spacing:.05em;padding:1.25rem}.report-table td{padding:1.25rem;font-weight:500}.report-table tr:hover{background:#f8fafc}::-webkit-scrollbar-track{background:#f1f5f9}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}@media(max-width:1024px){.header-main,.progression-flow{flex-direction:column;align-items:flex-start;gap:1.5rem}.flow-arrow{transform:rotate(90deg);align-self:flex-start;margin-left:1rem}}.bold-text{font-weight:700;color:#1e293b}.subtle-text{color:#64748b;font-size:.85rem}.date-text{color:#94a3b8;font-weight:500;font-size:.85rem}.subject-tag{padding:.4rem 1rem;background:#f1f5f9;color:#475569;border-radius:10px;font-size:.8rem;font-weight:700}.subject-tag.exam{background:#fff1f2;color:#e11d48}.subject-tag.attendance{background:#f0fdf4;color:#16a34a}.type-badge{padding:.2rem .6rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;font-size:.75rem;color:#64748b;margin-left:.5rem;text-transform:uppercase;font-weight:600}.stat-pill{display:inline-block;padding:.4rem 1rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;font-weight:800;font-size:.85rem;color:#1e293b}.stat-pill.gradient{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-color:#cbd5e1}.performance-stat{display:flex;flex-direction:column}.performance-stat .marks{font-weight:800;color:#1e293b;font-size:1rem}.performance-stat .percentage{font-size:.75rem;color:#64748b;font-weight:600}.performance-stat.focus .marks{color:#7c3aed}.btn-action-small{padding:.5rem 1rem;background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;font-size:.85rem;font-weight:700;color:#475569;cursor:pointer;transition:all .2s}.btn-action-small:hover{border-color:#7c3aed;color:#7c3aed;background:#f5f3ff}.detail-view{animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.detail-header{margin-bottom:2rem}.back-link{background:none;border:none;color:#7c3aed;font-weight:800;font-size:.9rem;padding:0;margin-bottom:1rem;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:transform .2s}.back-link:hover{transform:translate(-5px)}.detail-title-box h2{font-size:1.75rem;font-weight:900;color:#0f172a;margin:0}.detail-title-box p{color:#64748b;margin-top:.4rem;font-weight:600}.status-pill{padding:.4rem .8rem;border-radius:8px;font-size:.75rem;font-weight:800;text-transform:uppercase}.status-pill.graded,.status-pill.submitted{background:#ecfdf5;color:#059669}.status-pill.pending{background:#fffbeb;color:#d97706}.grade-badge{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:10px;font-weight:900;font-size:1rem}.grade-badge.a{background:#dcfce7;color:#15803d}.grade-badge.b{background:#dbeafe;color:#1d4ed8}.grade-badge.c{background:#fef9c3;color:#a16207}.grade-badge.f{background:#fee2e2;color:#b91c1c}.grade-badge.n-a{background:#f1f5f9;color:#64748b;font-size:.7rem}.attendance-stat-large{display:flex;flex-direction:column}.attendance-stat-large .value{font-size:1.25rem;font-weight:900}.attendance-stat-large .label{font-size:.7rem;color:#94a3b8;text-transform:uppercase;font-weight:700;margin-top:-2px}.attendance-stat-large.good .value{color:#059669}.attendance-stat-large.warning .value{color:#d97706}.detail-header-flex{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.date-filter-box{display:flex;align-items:center;background:#fff;border:1.5px solid #e2e8f0;padding:.5rem 1rem;border-radius:16px;box-shadow:0 4px 10px #00000005}.filter-item{display:flex;flex-direction:column}.filter-label{font-size:.65rem;font-weight:800;color:#94a3b8;margin-bottom:.2rem}.filter-item input{border:none;padding:0;font-size:.85rem;font-weight:700;color:#1e293b;outline:none;background:transparent}.filter-divider{width:1px;height:30px;background:#e2e8f0;margin:0 1.5rem}.clickable-student{cursor:pointer}.student-profile-mini{display:flex;align-items:center;gap:.8rem}.avatar-sm{width:32px;height:32px;background:#f1f5f9;border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:800;color:#64748b;font-size:.75rem}.student-profile-mini .name{font-weight:700;color:#4f46e5}.percentage-badge{padding:.4rem .8rem;border-radius:10px;font-weight:900;font-size:.85rem}.percentage-badge.success{background:#f0fdf4;color:#16a34a}.percentage-badge.danger{background:#fef2f2;color:#dc2626}.count-present{font-weight:800;color:#059669}.count-absent{font-weight:800;color:#dc2626}.table-filter-bar{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:#f8fafc;border-bottom:1px solid #f1f5f9;gap:2rem}.filter-group{display:flex;align-items:center;gap:1rem;flex:1}.search-input-wrapper{position:relative;flex:1;max-width:350px}.search-input-wrapper i{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#94a3b8;font-size:.9rem}.search-input-wrapper input{width:100%;padding:.6rem 1rem .6rem 2.5rem;background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;font-size:.9rem;font-weight:600;color:#1e293b;outline:none;transition:all .2s}.search-input-wrapper input:focus{border-color:#7c3aed;box-shadow:0 0 0 4px #7c3aed1a}.filter-select{padding:.6rem 1rem;background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;font-size:.85rem;font-weight:700;color:#475569;outline:none;cursor:pointer;transition:all .2s}.filter-select:focus{border-color:#7c3aed}.result-count{font-size:.8rem;font-weight:700;color:#94a3b8;white-space:nowrap}.drill-header{padding:2rem;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;align-items:center;background:#f8fafc}.student-info-large{display:flex;align-items:center;gap:1.5rem}.avatar-lg{width:60px;height:60px;border-radius:18px;background:linear-gradient(135deg,#7c3aed,#6366f1);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:900;box-shadow:0 8px 16px #7c3aed33}.student-text h3{margin:0;font-size:1.5rem;font-weight:900;color:#0f172a}.student-text p{margin:.2rem 0 0;color:#64748b;font-weight:600;font-size:.9rem}.close-btn-round{width:40px;height:40px;border-radius:50%;border:1.5px solid #e2e8f0;background:#fff;color:#64748b;cursor:pointer;transition:all .2s}.close-btn-round:hover{background:#fef2f2;color:#dc2626;border-color:#fecaca;transform:rotate(90deg)}.drill-body{padding:2rem;overflow-y:auto}.drill-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-bottom:3rem}.drill-stat-item{padding:1.5rem;background:#f8fafc;border-radius:20px;border:1px solid #f1f5f9;text-align:center;display:flex;flex-direction:column;gap:.5rem}.drill-stat-item .label{font-size:.75rem;font-weight:800;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em}.drill-stat-item .value{font-size:2rem;font-weight:950;color:#1e293b}.drill-stat-item .value.success{color:#10b981}.drill-stat-item .value.danger{color:#f43f5e}.log-section h4{margin-bottom:1.5rem;color:#1e293b;font-weight:800;font-size:1.1rem;display:flex;align-items:center;gap:.75rem}.log-section h4:after{content:"";flex:1;height:1px;background:#f1f5f9}.session-list{display:flex;flex-direction:column;gap:.75rem}.session-log-card{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#fff;border-radius:16px;border:1px solid #f1f5f9;transition:all .2s}.session-log-card:hover{border-color:#e2e8f0;background:#f8fafc}.session-meta{display:flex;align-items:center;gap:1rem}.status-dot{width:10px;height:10px;border-radius:50%}.status-dot.present{background:#10b981;box-shadow:0 0 8px #10b98166}.status-dot.absent{background:#f43f5e;box-shadow:0 0 8px #f43f5e66}.status-dot.late{background:#f59e0b;box-shadow:0 0 8px #f59e0b66}.session-meta .date{font-weight:700;color:#475569}.status-text{font-size:.75rem;font-weight:900}.status-text.present{color:#10b981}.status-text.absent{color:#f43f5e}.status-text.late{color:#f59e0b}.category-tag{padding:.4rem .8rem;background:#fdf2f8;color:#db2777;border-radius:8px;font-size:.75rem;font-weight:800;text-transform:uppercase}.semester-badge{padding:.3rem .6rem;background:#f1f5f9;color:#475569;border-radius:6px;font-size:.75rem;font-weight:700}.success-stat{display:flex;flex-direction:column}.success-stat .count{color:#059669;font-weight:800}.success-stat .total{font-size:.7rem;color:#94a3b8}.percentage-badge.warning{background:#fffbeb;color:#d97706}.history-tabs-premium button i.fa-brain{color:#ec4899}.history-tabs-premium button i.fa-comments{color:#10b981}.history-tabs-premium button.active i.fa-brain,.history-tabs-premium button.active i.fa-comments{color:inherit}.activity-drawer-overlay{position:fixed;top:0;right:0;width:100vw;height:100vh;background:#0f172a66;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2000;display:flex;justify-content:flex-end;opacity:0;visibility:hidden;transition:all .4s cubic-bezier(.4,0,.2,1)}.activity-drawer-overlay.visible{opacity:1;visibility:visible}.activity-drawer{width:550px;height:100%;background:#f8fafc;box-shadow:-10px 0 50px #00000026;transform:translate(100%);transition:transform .5s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;overflow:hidden}.activity-drawer-overlay.visible .activity-drawer{transform:translate(0)}.drawer-header{background:#fff;padding:2rem;display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid #e2e8f0}.drawer-tag{display:inline-flex;align-items:center;gap:.5rem;background:#f5f3ff;color:#7c3aed;padding:.4rem .8rem;border-radius:10px;font-size:.7rem;font-weight:800;text-transform:uppercase;margin-bottom:.75rem}.drawer-title-group h2{font-size:1.5rem;font-weight:900;color:#0f172a;margin:0}.drawer-title-group p{color:#64748b;margin-top:.25rem;font-size:.9rem;font-weight:600}.close-drawer-btn{width:40px;height:40px;border-radius:12px;border:1.5px solid #e2e8f0;background:#fff;color:#64748b;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.close-drawer-btn:hover{background:#fee2e2;color:#ef4444;border-color:#fca5a5;transform:rotate(90deg)}.drawer-body{flex:1;overflow-y:auto;padding:2rem}.drawer-sections-grid{display:grid;grid-template-columns:1fr;gap:2rem}.section-title{font-size:.85rem;font-weight:800;color:#1e293b;text-transform:uppercase;letter-spacing:.05em;margin-bottom:1.25rem;display:flex;align-items:center;gap:.75rem}.section-title i{color:#7c3aed}.mini-stats-list{display:flex;flex-direction:column;gap:.75rem}.mini-stat-card{background:#fff;padding:1.25rem;border-radius:18px;border:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center;transition:transform .2s}.mini-stat-card:hover{transform:scale(1.02);border-color:#cbd5e1;box-shadow:0 4px 12px #00000008}.mini-stat-card .main{font-weight:700;color:#1e293b;font-size:.95rem;display:flex;flex-direction:column}.mini-stat-card .main .sub{font-size:.75rem;color:#94a3b8;margin-top:.2rem}.mini-stat-card .val{font-weight:800;font-size:1.1rem}.mini-stat-card .val.success{color:#059669}.mini-stat-card .val.warning{color:#d97706}.val-score{font-weight:900;color:#1e293b;font-size:1.1rem}.val-score .max{font-size:.8rem;color:#94a3b8;font-weight:600}.val-multi{display:flex;flex-direction:column;align-items:flex-end}.val-multi .count{font-weight:800;color:#1e293b;font-size:.9rem}.val-multi .avg{font-size:.75rem;color:#7c3aed;font-weight:700}.placement-readiness-flex{display:flex;flex-direction:column;gap:1.5rem;background:#fff;padding:1.5rem;border-radius:20px;border:1.5px dashed #cbd5e1}.readiness-block h6{font-size:.75rem;font-weight:800;color:#64748b;margin-bottom:.75rem;text-transform:uppercase}.tag-cloud{display:flex;flex-wrap:wrap;gap:.5rem}.readiness-tag{padding:.4rem .75rem;background:#fff1f2;color:#e11d48;border-radius:10px;font-size:.8rem;font-weight:700;display:flex;gap:.5rem}.readiness-tag.communication{background:#f0fdf4;color:#16a34a}.readiness-tag .score{opacity:.7;font-weight:900}.empty-sub{padding:1rem;background:#f1f5f9;border-radius:12px;color:#94a3b8;font-size:.8rem;font-style:italic;text-align:center}.btn-drilldown-activity{margin-top:1.5rem;width:100%;padding:.8rem;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:14px;color:#4f46e5;font-weight:800;font-size:.85rem;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.6rem;transition:all .2s}.btn-drilldown-activity:hover{background:#f5f3ff;border-color:#4f46e5;transform:translateY(-2px);box-shadow:0 4px 12px #4f46e51a}.drawer-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:5rem 0;color:#64748b}.premium-loader{width:48px;height:48px;border:4px solid #f1f5f9;border-bottom-color:#4f46e5;border-radius:50%;display:inline-block;box-sizing:border-box;animation:rotation 1s linear infinite;margin-bottom:1.5rem}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(max-width:640px){.activity-drawer{width:100%}}.super-admin-login-container{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden}.login-background{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0}.background-slide{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;background-repeat:no-repeat;opacity:0;transition:opacity 1.5s ease-in-out}.background-slide.active{opacity:1;z-index:1}.background-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#667eead9,#764ba2d9);z-index:2}.gradient-orb{display:none}.super-admin-login-card{position:relative;z-index:10;background:#fffffffa;border-radius:20px;padding:50px;width:100%;max-width:450px;box-shadow:0 20px 60px #0000004d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.login-header{text-align:center;margin-bottom:40px}.logo-section{display:inline-flex;align-items:center;justify-content:center;width:80px;height:80px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;margin-bottom:20px;box-shadow:0 10px 30px #667eea4d}.logo-section i{font-size:36px;color:#fff}.login-header h1{font-size:28px;font-weight:700;color:#2d3748;margin-bottom:8px}.login-header p{font-size:14px;color:#718096}.login-form{margin-bottom:30px}.form-group{margin-bottom:25px}.form-group label{display:block;font-size:14px;font-weight:600;color:#4a5568;margin-bottom:8px}.form-group label i{margin-right:8px;color:#667eea}.form-group input{width:100%;padding:14px 16px;font-size:15px;border:2px solid #e2e8f0;border-radius:10px;transition:all .3s ease;background:#fff}.form-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input:disabled{background:#f7fafc;cursor:not-allowed}.error-message{background:#fee;border:1px solid #fcc;border-radius:10px;padding:12px 16px;margin-bottom:20px;color:#c53030;font-size:14px;display:flex;align-items:center;gap:10px}.error-message i{font-size:16px}.login-button{width:100%;padding:16px;font-size:16px;font-weight:600;color:#fff;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea66}.login-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea80}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{opacity:.7;cursor:not-allowed}.login-button i{margin-right:10px}.login-footer{text-align:center;padding-top:20px;border-top:1px solid #e2e8f0}.login-footer p{font-size:13px;color:#718096}.login-footer i{margin-right:6px;color:#667eea}@media(max-width:768px){.super-admin-login-card{padding:30px;margin:20px}.login-header h1{font-size:24px}.logo-section{width:60px;height:60px}.logo-section i{font-size:28px}}.create-exam-schedule-page{padding:2rem;max-width:1200px;margin:0 auto}.exam-schedule-form{display:flex;flex-direction:column;gap:2rem}.basic-info-section{padding-bottom:2rem;border-bottom:1px solid var(--border-color)}.basic-info-section h3{color:var(--text-primary);margin-bottom:1.5rem;font-size:1.25rem;font-weight:600}.schedule-section{background:var(--bg-secondary);border-radius:8px;padding:2rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.section-header h3{color:var(--text-primary);margin:0;font-size:1.25rem;font-weight:600}.schedule-list{display:flex;flex-direction:column;gap:1rem}.schedule-item-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1.5rem;transition:box-shadow .2s ease}.schedule-item-card:hover{box-shadow:0 4px 8px #0000001a}.schedule-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr 1fr auto;gap:1rem;align-items:end}.btn-remove{padding:.75rem;background:#ef44441a;color:#ef4444;border:none;border-radius:4px;cursor:pointer;transition:all .2s ease;width:40px;height:40px;display:flex;align-items:center;justify-content:center}.btn-remove:hover{background:#ef444433}.empty-state{text-align:center;padding:3rem 2rem;color:var(--text-muted);background:var(--bg-primary);border:2px dashed var(--border-color);border-radius:8px}@media(max-width:1024px){.schedule-row{grid-template-columns:1fr 1fr 1fr auto;gap:.75rem}.schedule-row .form-group:nth-child(n+4){grid-column:1 / -2}}@media(max-width:768px){.create-exam-schedule-page{padding:1rem}.schedule-row{grid-template-columns:1fr;gap:.5rem}.btn-remove{width:100%;height:auto;padding:.5rem;margin-top:1rem}.section-header{flex-direction:column;align-items:stretch;gap:1rem}}.manage-exam-schedule-page{padding:2rem}.content-layout{display:grid;gap:2rem;align-items:flex-start}.side-panel{display:flex;flex-direction:column;gap:1.5rem}.exam-card-simple:hover{border-color:var(--primary-color)!important;box-shadow:0 4px 15px #0000000d;transform:translateY(-2px)}.btn-publish-tiny:hover{background:#16a34a!important}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.filter-controls{display:flex;gap:1rem}.schedules-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:1.5rem}.schedule-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;overflow:hidden;transition:box-shadow .2s ease,transform .2s ease}.schedule-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.card-header{padding:1.5rem;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:flex-start}.exam-info h3{color:var(--text-primary);margin:0 0 .5rem;font-size:1.1rem;font-weight:600;line-height:1.3}.exam-meta{display:flex;flex-direction:column;gap:.25rem}.class-info{color:var(--primary-color);font-weight:500;font-size:.9rem}.academic-year{color:var(--text-muted);font-size:.8rem}.status-badge{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase}.status-badge.success{background:#22c55e1a;color:#22c55e}.status-badge.warning{background:#f59e0b1a;color:#f59e0b}.status-badge.info{background:#3b82f61a;color:#3b82f6}.card-body{padding:1.5rem}.exam-details{display:flex;flex-direction:column;gap:.75rem}.detail-item{display:flex;align-items:center;gap:.75rem;color:var(--text-secondary);font-size:.9rem}.detail-item i{width:16px;color:var(--text-muted)}.card-actions{padding:1rem 1.5rem;background:var(--bg-secondary);display:flex;gap:.5rem;justify-content:flex-end}.btn-action{padding:.5rem;border:none;border-radius:4px;cursor:pointer;transition:all .2s ease;width:36px;height:36px;display:flex;align-items:center;justify-content:center}.btn-view{background:#3b82f61a;color:#3b82f6}.btn-view:hover{background:#3b82f633}.btn-edit{background:#f59e0b1a;color:#f59e0b}.btn-edit:hover{background:#f59e0b33}.btn-publish{background:#22c55e1a;color:#22c55e}.btn-publish:hover{background:#22c55e33}.empty-state{text-align:center;padding:4rem 2rem;color:var(--text-muted)}@media(max-width:768px){.manage-exam-schedule-page{padding:1rem}.page-header{flex-direction:column;gap:1rem;align-items:stretch}.filters-section{flex-direction:column;align-items:stretch}.filter-controls{flex-direction:column}.schedules-grid{grid-template-columns:1fr}.card-header{flex-direction:column;gap:1rem;align-items:stretch}}.loading-spinner-inline{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}[data-theme=dark] .loading-spinner-inline i{color:#6366f1}.create-timetable-page{padding:2rem;max-width:1200px;margin:0 auto}.page-header{margin-bottom:2rem}.page-header h1{color:var(--text-primary);margin-bottom:.5rem}.page-header p{color:var(--text-secondary);font-size:.9rem}.timetable-container{background:var(--bg-primary);border-radius:8px;padding:2rem;box-shadow:0 2px 4px #0000001a}.basic-info{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid var(--border-color)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:500;color:var(--text-primary);font-size:.9rem}.form-group input,.form-group select{padding:.75rem;border:1px solid var(--border-color);border-radius:4px;font-size:.9rem;background:var(--bg-primary);color:var(--text-primary)}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px rgba(var(--primary-color-rgb),.1)}.timetable-builder,.day-selector{margin-bottom:2rem}.day-selector h3{color:var(--text-primary);margin-bottom:1rem}.day-tabs{display:flex;gap:.5rem;flex-wrap:wrap}.day-tab{padding:.5rem 1rem;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);border-radius:4px;cursor:pointer;transition:all .2s ease;font-size:.9rem}.day-tab:hover{background:var(--hover-bg)}.day-tab.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.time-slots-section{background:var(--bg-secondary);border-radius:6px;padding:1.5rem}.section-header h3{color:var(--text-primary);margin:0}.btn-add-slot{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--primary-color);color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .2s ease}.btn-add-slot:hover{background:var(--primary-color-dark)}.time-slots-list{display:flex;flex-direction:column;gap:1rem}.time-slot-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;padding:1rem}.slot-row{display:grid;grid-template-columns:1fr 1fr 1fr 1fr auto;gap:1rem;align-items:end}.btn-remove-slot{padding:.75rem;background:#ef44441a;color:#ef4444;border:none;border-radius:4px;cursor:pointer;transition:all .2s ease;width:40px;height:40px;display:flex;align-items:center;justify-content:center}.btn-remove-slot:hover{background:#ef444433}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border-color)}.btn-primary,.btn-secondary{padding:.75rem 1.5rem;border:none;border-radius:4px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-primary{background:var(--primary-color);color:#fff}.btn-primary:hover{background:var(--primary-color-dark)}.btn-secondary{background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--hover-bg)}@media(max-width:768px){.create-timetable-page{padding:1rem}.slot-row{grid-template-columns:1fr;gap:.5rem}.btn-remove-slot{width:100%;height:auto;padding:.5rem}.form-actions{flex-direction:column}}.create-timetable-type-page{padding:2rem;max-width:900px;margin:0 auto}.timetable-type-form{display:flex;flex-direction:column;gap:2.5rem}.basic-info-section,.timing-section,.working-days-section,.preview-section{background:var(--bg-primary);border-radius:8px;padding:2rem;border:1px solid var(--border-color)}.basic-info-section h3,.timing-section h3,.working-days-section h3,.preview-section h3{color:var(--text-primary);margin-bottom:1.5rem;font-size:1.25rem;font-weight:600;border-bottom:2px solid var(--primary-color);padding-bottom:.5rem}.section-description{color:var(--text-secondary);font-size:.9rem;margin-bottom:1.5rem;margin-top:-.5rem}.checkbox-group{margin-top:1rem}.checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;font-weight:500;color:var(--text-primary)}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary-color)}.days-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.day-checkbox{display:flex;align-items:center;gap:.75rem;padding:1rem;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .2s ease}.day-checkbox:hover{border-color:var(--primary-color);background:var(--primary-color-light)}.day-checkbox input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary-color)}.day-checkbox input[type=checkbox]:checked+.day-label{color:var(--primary-color);font-weight:600}.day-label{font-size:.9rem;color:var(--text-primary);transition:all .2s ease}.preview-section{background:var(--bg-secondary)}.preview-card{display:flex;flex-direction:column;gap:.75rem}.preview-item{display:flex;gap:.5rem;padding:.75rem;background:var(--bg-primary);border-radius:4px;font-size:.9rem}.preview-item strong{color:var(--text-primary);min-width:120px}.preview-item:last-child{color:var(--text-secondary)}.form-group input[type=time]{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.form-group select option{padding:.5rem}@media(max-width:768px){.create-timetable-type-page{padding:1rem}.basic-info-section,.timing-section,.working-days-section,.preview-section{padding:1.5rem}.days-grid{grid-template-columns:1fr}.preview-item{flex-direction:column;gap:.25rem}.preview-item strong{min-width:auto}}.view-student-timetable-page{padding:2rem}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.header-content h1{color:var(--text-primary);margin-bottom:.5rem}.header-actions{display:flex;gap:1rem}.search-section{background:var(--bg-primary);border-radius:8px;padding:2rem;margin-bottom:2rem;box-shadow:0 2px 4px #0000001a}.search-form .form-row{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:1rem;align-items:end}.search-btn{height:fit-content;white-space:nowrap}.timetable-section{background:var(--bg-primary);border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000001a}.timetable-header{padding:2rem;background:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.class-info h2{color:var(--text-primary);margin-bottom:.5rem;font-size:1.5rem}.class-info p{color:var(--text-secondary);margin:0;font-size:.9rem}.timetable-container{padding:2rem;overflow-x:auto}.timetable-wrapper{min-width:800px}.timetable{width:100%;border-collapse:collapse;background:var(--bg-primary);border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.timetable th{background:var(--primary-color);color:#fff;padding:1rem;text-align:center;font-weight:600;font-size:.9rem}.time-column{width:120px;background:var(--primary-color-dark)!important}.day-column{width:calc((100% - 120px) / 6)}.timetable td{padding:1rem;text-align:center;border-bottom:1px solid var(--border-color);border-right:1px solid var(--border-color);vertical-align:middle}.time-cell{background:var(--bg-secondary);font-weight:600;color:var(--text-primary);font-size:.85rem}.subject-cell{background:var(--bg-primary);color:var(--text-primary);font-size:.9rem;position:relative;transition:background-color .2s ease}.subject-cell:hover{background:var(--hover-bg)}.subject-cell:empty:after{content:"-";color:var(--text-muted)}.subject-cell:contains("Lab"){background:#3b82f61a;color:#3b82f6;font-weight:500}.subject-cell:contains("Sports"){background:#22c55e1a;color:#22c55e;font-weight:500}.subject-cell:contains("Library"){background:#a855f71a;color:#a855f7;font-weight:500}.timetable-footer{padding:2rem;background:var(--bg-secondary);border-top:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:flex-start}.legend h4{color:var(--text-primary);margin-bottom:1rem;font-size:1rem}.legend-items{display:flex;flex-direction:column;gap:.5rem}.legend-item{display:flex;align-items:center;gap:.75rem;font-size:.9rem;color:var(--text-secondary)}.legend-color{width:16px;height:16px;border-radius:3px}.legend-color.theory{background:var(--primary-color)}.legend-color.lab{background:#3b82f6}.legend-color.break{background:#f59e0b}.timetable-stats{display:flex;flex-direction:column;gap:.5rem}.stat-item{font-size:.9rem;color:var(--text-secondary)}.stat-item strong{color:var(--text-primary)}.empty-state{text-align:center;padding:4rem 2rem;color:var(--text-muted);background:var(--bg-primary);border-radius:8px;box-shadow:0 2px 4px #0000001a}.empty-state i{font-size:3rem;margin-bottom:1rem;color:var(--text-light)}.empty-state h3{color:var(--text-secondary);margin-bottom:.5rem}.empty-state p{margin:0;font-size:.9rem}@media print{.page-header,.search-section,.header-actions{display:none}.timetable-section{box-shadow:none;border:1px solid #000}.timetable{border:1px solid #000}.timetable th,.timetable td{border:1px solid #000;padding:.5rem}}@media(max-width:768px){.view-student-timetable-page{padding:1rem}.page-header{flex-direction:column;gap:1rem;align-items:stretch}.search-form .form-row{grid-template-columns:1fr;gap:1rem}.timetable-container{padding:1rem}.timetable-footer{flex-direction:column;gap:2rem}}.courses-management-page{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);min-height:100vh;padding:0;max-width:100%;box-sizing:border-box;overflow-x:hidden}[data-theme=dark] .courses-management-page{background:#0c0c0c}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding:1.5rem;background:#fff;border-radius:20px;box-shadow:0 10px 40px #00000014}[data-theme=dark] .page-header{background:#1a1a1a;box-shadow:0 10px 40px #000c}.header-content h1{font-size:2rem;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:.5rem}[data-theme=dark] .header-content h1{background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.header-content p{color:#64748b;font-size:1rem}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1rem 2rem;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .3s ease;box-shadow:0 4px 15px #667eea66}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 25px #667eea80}.module-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;padding:0!important}.tab-button{padding:1rem 2rem;border:none;background:#fff;color:#64748b;border-radius:12px;cursor:pointer;font-weight:600;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;box-shadow:0 2px 8px #0000000d}[data-theme=dark] .tab-button{background:#1a1a1a;color:#9ca3af;box-shadow:0 2px 8px #000c}.tab-button:hover{background:#f1f5f9;transform:translateY(-2px)}[data-theme=dark] .tab-button:hover{background:#262626}.tab-button.active,.tab-button:has(.active){background:linear-gradient(135deg,#667eea,#764ba2)!important;color:#fff!important;box-shadow:0 4px 15px #667eea4d}[data-theme=dark] .tab-button.active,[data-theme=dark] .tab-button:has(.active){background:linear-gradient(135deg,#667eea,#764ba2)!important;box-shadow:0 4px 15px #667eea80}.stat-card{background:#fff;padding:1.5rem;border-radius:16px;display:flex;align-items:center;gap:1rem;box-shadow:0 4px 15px #0000000f;transition:all .3s ease}[data-theme=dark] .stat-card{background:#1a1a1a;box-shadow:0 4px 15px #000c}.stat-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #0000001a}[data-theme=dark] .stat-card:hover{box-shadow:0 8px 25px #000000e6}.stat-icon{width:60px;height:60px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:#fff}.stat-number{font-size:2rem;font-weight:700;color:#1e293b}[data-theme=dark] .stat-number{color:#e5e5e5}.stat-label{color:#64748b;font-size:.875rem;font-weight:500}[data-theme=dark] .stat-label{color:#9ca3af}.filters-section{display:flex;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.search-box{flex:1;min-width:300px;position:relative;display:flex;align-items:center}.search-box i{position:absolute;left:1rem;color:#94a3b8;font-size:1rem}.search-box input{width:100%;padding:1rem 1rem 1rem 3rem;border:2px solid #e2e8f0;border-radius:12px;font-size:1rem;transition:all .3s ease;background:#fff}[data-theme=dark] .search-box input{background:#1a1a1a;border-color:#ffffff1a;color:#e5e5e5}.search-box input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}[data-theme=dark] .search-box input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea4d}.filter-select{padding:1rem 1.5rem;border:2px solid #e2e8f0;border-radius:12px;font-size:1rem;background:#fff;cursor:pointer;transition:all .3s ease;min-width:200px}[data-theme=dark] .filter-select{background:#1a1a1a;border-color:#ffffff1a;color:#e5e5e5}.filter-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}[data-theme=dark] .filter-select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea4d}.categories-section,.videos-section,.certificates-section{padding:0;max-width:100%;box-sizing:border-box;width:100%;overflow-x:auto;overflow-y:visible}.categories-section::-webkit-scrollbar,.videos-section::-webkit-scrollbar,.certificates-section::-webkit-scrollbar{height:8px}.categories-section::-webkit-scrollbar-track,.videos-section::-webkit-scrollbar-track,.certificates-section::-webkit-scrollbar-track{background:#f1f5f9;border-radius:10px}.categories-section::-webkit-scrollbar-thumb,.videos-section::-webkit-scrollbar-thumb,.certificates-section::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:10px}.categories-section::-webkit-scrollbar-thumb:hover,.videos-section::-webkit-scrollbar-thumb:hover,.certificates-section::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#764ba2,#667eea)}.courses-grid{display:flex;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:1.5rem;margin-top:1.5rem;padding:0;box-sizing:border-box;width:100%;min-width:min-content}.course-card{background:#fff;width:400px!important;border-radius:20px;overflow:hidden;box-shadow:0 4px 15px #00000014;transition:all .3s ease;display:flex;flex-direction:column}[data-theme=dark] .course-card{background:#1a1a1a;box-shadow:0 4px 15px #000c}.course-card:hover{transform:translateY(-8px);box-shadow:0 12px 35px #00000026}[data-theme=dark] .course-card:hover{box-shadow:0 12px 35px #000000e6}.course-thumbnail{height:180px;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.course-thumbnail i{font-size:3rem;color:#ffffff4d}.course-thumbnail img{width:100%;height:100%;object-fit:cover}.course-category-badge{position:absolute;top:1rem;left:1rem;background:#fffffff2;color:#667eea;padding:.5rem 1rem;border-radius:20px;font-size:.75rem;font-weight:600;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.course-status-badge{position:absolute;top:1rem;right:1rem;color:#fff;padding:.5rem 1rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:capitalize;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.play-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#0000004d;color:#fff;font-size:3rem;opacity:0;transition:all .3s ease;cursor:pointer}.course-thumbnail:hover .play-overlay{opacity:1;background:#00000080}.course-content{padding:1.5rem;flex:1;display:flex;flex-direction:column}.course-content h3{font-size:1.25rem;font-weight:700;color:#1e293b;margin-bottom:.75rem;line-height:1.4}[data-theme=dark] .course-content h3{color:#e5e5e5}.course-description{color:#64748b;font-size:.875rem;line-height:1.6;margin-bottom:1rem;flex:1}[data-theme=dark] .course-description{color:#9ca3af}.course-meta{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #e2e8f0}[data-theme=dark] .course-meta{border-bottom-color:#ffffff1a}[data-theme=dark] .meta-item{color:#9ca3af}.meta-item i{color:#94a3b8;font-size:.875rem}[data-theme=dark] .meta-item i{color:#9ca3af}.course-stats{display:flex;gap:1rem;margin-bottom:1rem}.stat-item{display:flex;align-items:center;gap:.5rem;color:#64748b;font-size:.875rem}[data-theme=dark] .stat-item{color:#9ca3af}.stat-item i{color:#94a3b8}[data-theme=dark] .stat-item i{color:#9ca3af}.course-actions{display:flex;gap:.75rem;margin-top:auto}.course-actions button,.course-actions a{flex:1;padding:.75rem;border:none;border-radius:10px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.btn-edit{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-edit:hover{transform:translateY(-2px);box-shadow:0 4px 15px #667eea4d}.btn-delete{background:#fef2f2;color:#ef4444}.btn-delete:hover{background:#fee2e2;transform:translateY(-2px)}.btn-view{background:#f0fdf4;color:#22c55e;text-decoration:none}.btn-view:hover{background:#dcfce7;transform:translateY(-2px)}.modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .3s ease}.modal-content{background:#fff;border-radius:24px;width:90%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease}[data-theme=dark] .modal-content{background:#1a1a1a;box-shadow:0 20px 60px #000000e6}@keyframes slideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:2rem;border-bottom:2px solid #f1f5f9}.modal-header h2{font-size:1.5rem;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent}[data-theme=dark] .modal-header h2{background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.modal-close{background:#f1f5f9;border:none;width:40px;height:40px;border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;color:#64748b;font-size:1.25rem}.create-course-form{padding:2rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-weight:600;color:#334155;margin-bottom:.5rem;font-size:.875rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.875rem 1rem;border:2px solid #e2e8f0;border-radius:10px;font-size:1rem;transition:all .3s ease;font-family:inherit}.form-group small{display:block;color:#64748b;font-size:.75rem;margin-top:.25rem}[data-theme=dark] .form-group small{color:#9ca3af}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:1rem;border-top:2px solid #f1f5f9}.btn-secondary{padding:.875rem 1.5rem;background:#f1f5f9;color:#64748b;border:none;border-radius:10px;font-weight:600;cursor:pointer;transition:all .3s ease}.modal-actions .btn-primary{padding:.875rem 1.5rem}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh}.loader{width:60px;height:60px;border:4px solid #f1f5f9;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite}[data-theme=dark] .loader{border-color:#262626;border-top-color:#667eea}.loading-container p{margin-top:1rem;color:#64748b;font-weight:600}[data-theme=dark] .loading-container p{color:#9ca3af}@media(min-width:1400px){.courses-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}}@media(max-width:1200px){.courses-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:1.25rem}}@media(max-width:992px){.page-header{padding:1.25rem}.header-content h1{font-size:1.75rem}.courses-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:1rem}.course-card{border-radius:16px}.filters-section{flex-direction:column}.search-box{min-width:100%}.filter-select{width:100%}}@media(max-width:768px){.courses-management-page{padding:0}.page-header{flex-direction:column;gap:1rem;text-align:center;padding:1rem;margin-bottom:1rem;border-radius:16px}.header-content h1{font-size:1.5rem}.header-content p{font-size:.875rem}.btn-primary{width:100%;justify-content:center}.form-row{grid-template-columns:1fr}.courses-grid{grid-template-columns:1fr!important;gap:1rem;margin-top:1rem}.module-tabs{padding:0!important;gap:.25rem;overflow-x:auto;margin-bottom:1rem;scrollbar-width:thin}.module-tabs::-webkit-scrollbar{height:4px}.tab-button{padding:.75rem 1.25rem;font-size:.875rem;white-space:nowrap;flex-shrink:0}.course-card{border-radius:12px}.course-thumbnail{height:160px!important}.course-content{padding:1.25rem}.course-content h3{font-size:1.1rem}.modal-content{width:95%;max-height:85vh}.modal-header{padding:1.5rem}.modal-header h2{font-size:1.25rem}.create-course-form{padding:1.5rem}.stats-grid{grid-template-columns:1fr}}@media(max-width:480px){.header-content h1{font-size:1.25rem}.page-header{padding:.875rem}.course-content{padding:1rem}.course-meta,.course-actions{flex-direction:column;gap:.5rem}.course-actions button,.course-actions a{width:100%}.modal-content{width:98%;border-radius:16px}.tab-button{padding:.625rem 1rem;font-size:.8125rem}.btn-primary{padding:.875rem 1.5rem;font-size:.9375rem}.form-group label{font-size:.8125rem}.form-group input,.form-group select,.form-group textarea{padding:.75rem;font-size:.9375rem}}.notifications-management-page{padding:2rem;background:#f8fafc;min-height:100vh}[data-theme=dark] .notifications-management-page{background:#0c0c0c}.page-header.premium-card{display:flex;justify-content:space-between;align-items:center;background:#fff;padding:2rem;border-radius:16px;box-shadow:0 1px 3px #0000000d;margin-bottom:2.5rem;border:1px solid #e2e8f0;position:relative;overflow:hidden}[data-theme=dark] .page-header.premium-card{background:#1a1a1a;border-color:#ffffff1a;box-shadow:0 1px 3px #000c}.title-section{display:flex;align-items:center;gap:1.5rem}.title-icon{width:56px;height:56px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;box-shadow:0 4px 12px #667eea4d;flex-shrink:0}.header-content h1{color:var(--text-primary);margin-bottom:.5rem;font-size:1.75rem;font-weight:700}[data-theme=dark] .header-content h1{color:#e5e5e5}.header-content p{color:var(--text-secondary);font-size:.9rem;margin:0}[data-theme=dark] .header-content p{color:#9ca3af}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:var(--bg-primary);border-radius:8px;padding:1.5rem;display:flex;align-items:center;gap:1rem;box-shadow:0 2px 4px #0000001a;border:1px solid var(--border-color)}.stat-icon{width:48px;height:48px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.25rem}.stat-info{display:flex;flex-direction:column}.stat-number{font-size:1.5rem;font-weight:700;color:var(--text-primary)}.stat-label{font-size:.875rem;color:var(--text-secondary)}.quick-actions{display:flex;gap:1rem;flex-wrap:wrap}.quick-action-btn{padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem;color:#fff}.quick-action-btn.urgent{background:linear-gradient(135deg,#ef4444,#dc2626)}.quick-action-btn.announcement{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.quick-action-btn.schedule{background:linear-gradient(135deg,#f59e0b,#d97706)}.quick-action-btn.analytics{background:linear-gradient(135deg,#3b82f6,#2563eb)}.quick-action-btn:hover{transform:translateY(-1px);box-shadow:0 4px 8px #0003}.filters-section{display:flex;gap:1rem;margin-bottom:2rem;align-items:center}.search-box{position:relative;flex:1;max-width:400px}.search-box i{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:var(--text-muted)}.search-box input{width:100%;padding:.75rem 1rem .75rem 2.5rem;border:1px solid var(--border-color);border-radius:4px;font-size:.9rem;background:var(--bg-primary);color:var(--text-primary)}.filter-select{padding:.75rem;border:1px solid var(--border-color);border-radius:4px;font-size:.9rem;background:var(--bg-primary);color:var(--text-primary);min-width:150px}.notifications-list{display:flex;flex-direction:column;gap:1.5rem}.empty-state{text-align:center;padding:3rem;color:#64748b;font-size:1rem;background:#fff;border-radius:12px;border:1px solid #e2e8f0}[data-theme=dark] .empty-state{background:#1a1a1a;border-color:#ffffff1a;color:#9ca3af}.notification-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;transition:all .2s ease;box-shadow:0 1px 3px #0000000d}[data-theme=dark] .notification-card{background:#1a1a1a;border-color:#ffffff1a;box-shadow:0 1px 3px #000c}.notification-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}[data-theme=dark] .notification-card:hover{box-shadow:0 4px 12px #000000e6}.notification-header{padding:1.5rem;border-bottom:1px solid #f1f5f9;display:flex;flex-wrap:wrap;gap:1rem;align-items:center}[data-theme=dark] .notification-header{border-bottom-color:#ffffff0d}.delete-button{background:#ef44441a;color:#ef4444;border:none;border-radius:8px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;margin-left:auto;flex-shrink:0}[data-theme=dark] .delete-button{background:#ef444426;color:#f87171}.delete-button:hover:not(:disabled){background:#ef4444;color:#fff;transform:scale(1.05)}[data-theme=dark] .delete-button:hover:not(:disabled){background:#ef44444d}.delete-button:disabled{opacity:.5;cursor:not-allowed}.notification-badges{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.type-badge,.priority-badge{padding:.4rem .85rem;border-radius:16px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#fff;display:inline-flex;align-items:center;gap:.4rem;line-height:1}.type-badge i,.priority-badge i{font-size:.75rem}.type-badge.info{background:#3b82f6}.type-badge.success{background:#22c55e}.type-badge.warning{background:#f59e0b}.type-badge.error{background:#ef4444}.type-badge.announcement{background:#8b5cf6}.priority-badge.priority-urgent{background:#ef4444;box-shadow:0 0 8px #ef444466;animation:pulse 2s infinite}.priority-badge.priority-high{background:#f59e0b}.priority-badge.priority-medium{background:#3b82f6}.priority-badge.priority-low{background:#6b7280}@keyframes pulse{0%,to{box-shadow:0 0 8px #ef444466}50%{box-shadow:0 0 16px #ef444499}}.notification-meta{display:flex;gap:1rem;flex-wrap:wrap;font-size:.85rem;color:#64748b;align-items:center}[data-theme=dark] .notification-meta{color:#9ca3af}.notification-meta span{display:flex;align-items:center;gap:.4rem}.notification-meta i{font-size:.8rem;color:#94a3b8}[data-theme=dark] .notification-meta i{color:#6b7280}.notification-content{padding:1.5rem}.notification-content h3{color:#1e293b;margin-bottom:.75rem;font-size:1.1rem;font-weight:600;line-height:1.4}[data-theme=dark] .notification-content h3{color:#e5e5e5}.notification-content p{color:#64748b;font-size:.9rem;line-height:1.6;margin:0}[data-theme=dark] .notification-content p{color:#9ca3af}.notification-details{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.detail-item{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--text-secondary)}.detail-item i{width:14px;color:var(--text-muted)}.detail-item.action-required{color:var(--primary-color);font-weight:500}.notification-stats{display:flex;gap:2rem;margin-bottom:1rem;padding:1rem;background:var(--bg-secondary);border-radius:6px}.stat-item{display:flex;flex-direction:column;align-items:center;gap:.25rem}.stat-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;font-weight:600}.stat-value{font-size:1.1rem;font-weight:700;color:var(--primary-color)}.notification-actions{padding:1rem 1.5rem;background:var(--bg-secondary);display:flex;gap:.5rem;flex-wrap:wrap}.notification-actions button{padding:.5rem .75rem;border:none;border-radius:4px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.25rem}.btn-edit{background:#3b82f61a;color:#3b82f6}.btn-edit:hover{background:#3b82f633}.btn-send{background:#22c55e1a;color:#22c55e}.btn-send:hover{background:#22c55e33}.btn-analytics{background:#f59e0b1a;color:#f59e0b}.btn-analytics:hover{background:#f59e0b33}.btn-delete{background:#ef44441a;color:#ef4444}.btn-delete:hover{background:#ef444433}.modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}[data-theme=dark] .modal-overlay{background:#000000e6}.modal-content{background:#fff;border-radius:16px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px #00000026}[data-theme=dark] .modal-content{background:#1a1a1a;box-shadow:0 20px 25px #000000e6}.modal-content.large{max-width:800px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #f1f5f9}[data-theme=dark] .modal-header{border-bottom-color:#ffffff1a}.modal-header h2{color:#1e293b;margin:0;font-size:1.5rem;font-weight:700}[data-theme=dark] .modal-header h2{color:#e5e5e5}.modal-close{background:#f1f5f9;border:none;font-size:1.25rem;color:#64748b;cursor:pointer;padding:.5rem;border-radius:8px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;transition:all .2s}[data-theme=dark] .modal-close{background:#262626;color:#9ca3af}.modal-close:hover{background:#e2e8f0;transform:rotate(90deg)}[data-theme=dark] .modal-close:hover{background:#333}.create-notification-form{padding:1.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.form-group label{font-weight:600;color:#334155;font-size:.875rem}[data-theme=dark] .form-group label{color:#d1d5db}.form-group input,.form-group select,.form-group textarea{padding:.875rem;border:1px solid #e2e8f0;border-radius:10px;font-size:.9rem;background:#fff;color:#1e293b;font-family:inherit;transition:all .2s}[data-theme=dark] .form-group input,[data-theme=dark] .form-group select,[data-theme=dark] .form-group textarea{background:#0c0c0c;border-color:#ffffff1a;color:#e5e5e5}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}[data-theme=dark] .form-group input:focus,[data-theme=dark] .form-group select:focus,[data-theme=dark] .form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea4d}.form-group textarea{resize:vertical;min-height:100px}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1rem;border-top:1px solid #f1f5f9}[data-theme=dark] .modal-actions{border-top-color:#ffffff1a}.btn-primary,.btn-secondary{padding:.875rem 1.5rem;border:none;border-radius:10px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 12px #667eea4d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px #667eea66}.btn-secondary{background:#f1f5f9;color:#64748b}[data-theme=dark] .btn-secondary{background:#262626;color:#9ca3af}.btn-secondary:hover{background:#e2e8f0}[data-theme=dark] .btn-secondary:hover{background:#333}.btn-primary-action{display:flex;align-items:center;gap:.75rem;padding:.85rem 1.75rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:12px;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #667eea4d;pointer-events:auto!important}.btn-primary-action:hover{transform:translateY(-2px);box-shadow:0 6px 16px #667eea66}.btn-primary-action:active{transform:translateY(0)}.btn-icon{width:24px;height:24px;background:#fff3;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:.8rem}@media(max-width:768px){.notifications-management-page{padding:1rem}.page-header{flex-direction:column;gap:1rem;align-items:stretch}.quick-actions{flex-direction:column}.filters-section{flex-direction:column;align-items:stretch}.search-box{max-width:none}.notification-header{flex-direction:column;gap:1rem;align-items:stretch}.notification-details{flex-direction:column;gap:.5rem}.notification-stats{flex-direction:column;gap:1rem}.form-row{grid-template-columns:1fr}.checkbox-row{flex-direction:column;gap:1rem}}.timetable-management-container{padding:2rem;background:#f8fafc;min-height:calc(100vh - 80px)}[data-theme=dark] .timetable-management-container{background:#0a0a0a}.timetable-header.premium-card{background:linear-gradient(135deg,#1e293b,#334155);padding:2rem;border-radius:20px;color:#fff;display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem;box-shadow:0 10px 25px #00000026;margin-bottom:2rem;flex-wrap:wrap}[data-theme=dark] .timetable-header.premium-card{background:linear-gradient(135deg,#1a1a1a,#2a2a2a);border:1px solid rgba(255,255,255,.1)}.header-info{flex:1;min-width:250px}.header-info h1{font-size:1.75rem;margin-bottom:.5rem;display:flex;align-items:center;gap:12px;flex-wrap:wrap}[data-theme=dark] .header-info h1{color:#f1f5f9}.header-info p{opacity:.8;font-size:.95rem;margin:0}[data-theme=dark] .header-info p{color:#cbd5e1;opacity:1}.header-actions{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.class-selector{padding:.75rem 1.25rem;border-radius:12px;border:1px solid rgba(255,255,255,.2);background:#ffffff1a;color:#fff;font-size:.9rem;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-width:200px;white-space:nowrap}[data-theme=dark] .class-selector{background:#ffffff0d;border-color:#ffffff1a}.class-selector option{background:#1e293b;color:#fff}[data-theme=dark] .class-selector option{background:#0f0f0f}.btn-secondary{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2);padding:.75rem 1.25rem;border-radius:12px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .3s ease;white-space:nowrap;font-size:.9rem}[data-theme=dark] .btn-secondary{background:#ffffff0d;border-color:#ffffff1a}.btn-secondary:hover:not(:disabled){background:#fff3;transform:translateY(-2px)}[data-theme=dark] .btn-secondary:hover:not(:disabled){background:#ffffff1a}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-save{background:#6366f1;color:#fff;border:none;padding:.75rem 1.25rem;border-radius:12px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .3s ease;white-space:nowrap;font-size:.9rem}.btn-publish{background:#10b981;color:#fff;border:none;padding:.75rem 1.25rem;border-radius:12px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .3s ease;white-space:nowrap;font-size:.9rem}.btn-publish:hover:not(:disabled){background:#059669;transform:translateY(-2px);box-shadow:0 5px 15px #10b98166}.btn-publish:disabled{opacity:.5;cursor:not-allowed}.btn-attendance-toggle{display:flex;align-items:center;gap:8px;padding:.75rem 1.25rem;border-radius:12px;font-weight:700;font-size:.9rem;cursor:pointer;transition:all .3s ease;white-space:nowrap;border:1px solid rgba(255,255,255,.2)}.btn-attendance-toggle.active{background:#10b98126;color:#34d399;border-color:#10b981}.btn-attendance-toggle.inactive{background:#ef444426;color:#f87171;border-color:#ef4444}.btn-attendance-toggle:hover:not(:disabled){transform:translateY(-2px);background:#ffffff1a}.btn-attendance-toggle:disabled{opacity:.5;cursor:not-allowed}.empty-state{text-align:center;padding:5rem 2rem;background:#fff;border-radius:20px;border:3px dashed #e2e8f0;color:#94a3b8}[data-theme=dark] .empty-state{background:#1a1a1a;border-color:#ffffff1a}.empty-state i{font-size:4rem;margin-bottom:1.5rem;opacity:.3}[data-theme=dark] .empty-state i{color:#fff3}[data-theme=dark] .empty-state h2{color:#f1f5f9}[data-theme=dark] .empty-state p{color:#94a3b8}.timetable-grid-wrapper{background:#fff;border-radius:20px;box-shadow:0 4px 20px #0000000d;overflow:hidden;border:1px solid #e2e8f0}[data-theme=dark] .timetable-grid-wrapper{background:#1a1a1a;border-color:#ffffff1a;box-shadow:0 4px 20px #0000004d}.timetable-grid{display:flex;flex-direction:column}.grid-header{display:flex;background:#f1f5f9;border-bottom:2px solid #e2e8f0}[data-theme=dark] .grid-header{background:#0f0f0f;border-color:#ffffff0d}.day-col,.time-col{flex:1;padding:1.2rem;text-align:center;font-weight:600;color:#475569;font-size:.95rem;text-transform:uppercase;letter-spacing:.05em}[data-theme=dark] .day-col,[data-theme=dark] .time-col{color:#94a3b8}.time-col{flex:0 0 120px;background:#f8fafc;border-right:2px solid #e2e8f0}[data-theme=dark] .time-col{background:#0a0a0a;border-color:#ffffff0d}.grid-row{display:flex;border-bottom:1px solid #f1f5f9}[data-theme=dark] .grid-row{border-color:#ffffff0d}.grid-cell{flex:1;min-height:125px;padding:.5rem;position:relative;cursor:pointer;transition:all .2s ease;border-right:1px solid #f1f5f9;display:flex;align-items:center;justify-content:center}[data-theme=dark] .grid-cell{border-color:#ffffff0d}.grid-cell:hover{background:#f8fafc}[data-theme=dark] .grid-cell:hover{background:#ffffff05}.grid-cell.empty:hover .add-hint{opacity:1;transform:scale(1.1)}.add-hint{opacity:0;color:#cbd5e1;font-size:1.5rem;transition:all .2s ease}[data-theme=dark] .add-hint{color:#64748b}.grid-cell.occupied{background:#f0f9ff;border:1px solid #bae6fd}.grid-cell.slot-subject{background:#f0f9ff;border-left:4px solid #0ea5e9}.grid-cell.slot-break{background:#fff7ed;border-left:4px solid #f97316}.grid-cell.slot-lunch{background:#f0fdf4;border-left:4px solid #22c55e}.grid-cell.occupied:hover{z-index:10;box-shadow:0 5px 15px #00000014;transform:scale(1.02)}.assignment-info{width:100%;height:100%;display:flex;flex-direction:column;gap:4px;padding:8px;position:relative}.sub-code{font-weight:700;color:#0369a1;font-size:.85rem}.sub-name{font-weight:600;color:#1e293b;font-size:.9rem;margin-bottom:4px}.faculty-tag,.room-tag{font-size:.75rem;color:#64748b;display:flex;align-items:center;gap:4px}.slot-time-badge{position:absolute;bottom:5px;right:5px;font-size:.65rem;background:#0000000d;padding:2px 6px;border-radius:4px;font-weight:600;color:#64748b}.break-display{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:8px;color:#9a3412}.slot-lunch .break-display{color:#166534}.break-display i{font-size:1.2rem;opacity:.6}.break-display span:nth-child(2){font-weight:800;font-size:.75rem;letter-spacing:.1em}.type-selector-tab{display:flex;background:#f1f5f9;padding:4px;border-radius:12px;margin-bottom:1.5rem}.type-selector-tab button{flex:1;padding:.6rem;border:none;background:transparent;font-weight:600;color:#64748b;cursor:pointer;border-radius:9px;transition:all .2s}.type-selector-tab button.active{background:#fff;color:#1e293b;box-shadow:0 2px 8px #0000001a}.break-info-tip{background:#eff6ff;padding:1rem;border-radius:12px;color:#1e40af;font-size:.9rem;margin-bottom:1rem;display:flex;gap:10px;align-items:center}.modal-footer{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-top:1px solid #f1f5f9}.footer-right{display:flex;gap:1rem}.btn-danger-outline{background:transparent;color:#ef4444;border:1px solid #fee2e2;padding:.6rem 1rem;border-radius:10px;font-weight:600;cursor:pointer}.btn-danger-outline:hover{background:#fef2f2;border-color:#ef4444}.only-print{display:none}@page{size:A4 landscape;margin:10mm}@media print{*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.no-print,aside,nav,header,.AdminSidebar,.sidebar-container{display:none!important}body{background:#fff!important;padding:0!important;margin:0!important;overflow:visible!important;height:auto!important;width:100%!important;color:#000!important}.timetable-management-container{padding:0!important;margin:0!important;background:#fff!important;height:auto!important;width:100%!important;display:block!important;position:absolute!important;top:0!important;left:0!important}.timetable-grid-wrapper{border:2px solid #000!important;box-shadow:none!important;overflow:visible!important;display:block!important;margin-top:10px!important;width:100%!important}.timetable-grid{display:table!important;width:100%!important;border-collapse:collapse!important}.grid-header{display:table-row!important;background:#f1f5f9!important}.grid-row{display:table-row!important;page-break-inside:avoid!important}.grid-cell,.time-col,.day-col{display:table-cell!important;border:1px solid #333!important;padding:4px!important;vertical-align:middle!important;height:60px!important;background:#fff!important;color:#000!important;overflow:visible!important;font-family:Arial,sans-serif!important}.assignment-info{height:auto!important;width:100%!important;display:block!important;color:#000!important;opacity:1!important;visibility:visible!important;text-align:center!important}.time-col{width:80px!important;font-weight:700!important;text-align:center!important}.day-col{font-weight:700!important;text-align:center!important;background:#f1f5f9!important}.slot-subject{border-left:12px solid #0ea5e9!important;background-color:#f0f9ff!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.slot-break{border-left:12px solid #f97316!important;background-color:#fffaf0!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.slot-lunch{border-left:12px solid #22c55e!important;background-color:#f0fff4!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.print-header{display:block!important;text-align:center!important;margin-bottom:10px!important;padding-bottom:5px!important;border-bottom:2px solid #000!important;visibility:visible!important;opacity:1!important}.print-header h1{display:block!important;font-size:24pt!important;margin:0 0 5px!important;color:#000!important;visibility:visible!important;opacity:1!important}.print-header h2{display:block!important;font-size:20pt!important;margin:0!important;color:#000!important;visibility:visible!important;opacity:1!important}.institution-info{display:block!important;font-size:12pt!important;color:#000!important;margin-top:8px!important;visibility:visible!important;opacity:1!important}.slot-time-badge{font-weight:700!important;color:#333!important;display:block!important;margin-top:2px!important;position:static!important;opacity:1!important;font-size:8pt!important}.sub-code,.sub-name,.faculty-tag{display:block!important;color:#000!important;opacity:1!important;line-height:1.2!important;margin:2px 0!important}.sub-code{font-weight:900!important;font-size:11pt!important}.sub-name{font-weight:700!important;font-size:10pt!important}.faculty-tag{font-weight:600!important;font-size:9pt!important;font-style:italic!important}.break-display{display:block!important;text-align:center!important;padding-top:5px!important}.break-display span{display:block!important;color:#000!important;font-weight:800!important;font-size:10pt!important}.break-display i{display:none!important}}.grid-row .time-col{display:flex;flex-direction:column;justify-content:center}.p-num{font-size:1.2rem;font-weight:800;color:#1e293b}.p-time{font-size:.75rem;color:#94a3b8;font-weight:600}.faculty-auto-display{margin-top:1.5rem;margin-bottom:1.5rem;padding:1rem;background:#f8fafc;border-radius:12px;border:1px solid #e2e8f0}.faculty-auto-display label{display:block;font-size:.85rem;font-weight:600;color:#64748b;margin-bottom:.5rem}.faculty-value{display:flex;align-items:center;gap:10px;font-weight:700;color:#1e293b;font-size:1rem}.faculty-value i{color:#3b82f6;font-size:1.2rem}.faculty-value.error{color:#ef4444;font-size:.9rem;font-weight:600}.faculty-value.error i{color:#ef4444}.period-limit-control{display:flex;align-items:center;gap:10px;background:#ffffff0d;padding:.5rem 1rem;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.period-limit-control label{font-size:.85rem;font-weight:600;color:#fff9;white-space:nowrap}.period-limit-select{background:transparent;border:none;color:#fff;font-weight:700;cursor:pointer;font-size:.95rem;outline:none}.period-limit-select option{background:#1e293b;color:#fff}.btn-save{background:#6366f1;color:#fff;border:none;padding:.8rem 1.5rem;border-radius:12px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .3s ease}.btn-save:hover:not(:disabled){background:#4f46e5;transform:translateY(-2px);box-shadow:0 5px 15px #6366f166}.btn-save:disabled{opacity:.5;cursor:not-allowed}.pulse-animation:not(:disabled){animation:pulse-glow 2s infinite}@keyframes pulse-glow{0%{box-shadow:0 0 #10b98166}70%{box-shadow:0 0 0 10px #10b98100}to{box-shadow:0 0 #10b98100}}.publish-modal{max-width:500px!important}.modal-subtitle{color:#64748b;font-size:.95rem;margin-top:.5rem;margin-bottom:2rem}.role-selection-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1rem}.role-checkbox-card{position:relative;cursor:pointer}.role-checkbox-card input{position:absolute;opacity:0}.role-card-content{display:flex;flex-direction:column;align-items:center;gap:12px;padding:1.5rem;background:#f8fafc;border:2px solid #e2e8f0;border-radius:16px;transition:all .2s ease}.role-card-content i{font-size:2rem;color:#94a3b8}.role-card-content span{font-weight:600;color:#475569}.role-checkbox-card input:checked+.role-card-content{background:#f0fdf4;border-color:#10b981}.role-checkbox-card input:checked+.role-card-content i{color:#10b981}.role-checkbox-card input:checked+.role-card-content span{color:#065f46}[data-theme=dark] .period-limit-control{background:#ffffff08;border-color:#ffffff1a}[data-theme=dark] .period-limit-control label{color:#94a3b8}[data-theme=dark] .period-limit-select{color:#f1f5f9}[data-theme=dark] .period-limit-select option{background:#0f0f0f}[data-theme=dark] .p-num{color:#f1f5f9}[data-theme=dark] .p-time{color:#64748b}[data-theme=dark] .sub-name{color:#f1f5f9}[data-theme=dark] .faculty-tag,[data-theme=dark] .room-tag{color:#94a3b8}[data-theme=dark] .slot-time-badge{background:#ffffff0d;color:#94a3b8}[data-theme=dark] .modal-content{background:#1a1a1a;border:1px solid rgba(255,255,255,.1)}[data-theme=dark] .modal-header{border-color:#ffffff1a}[data-theme=dark] .modal-header h2{color:#f1f5f9}[data-theme=dark] .modal-footer{border-color:#ffffff1a}[data-theme=dark] .type-selector-tab{background:#0f0f0f}[data-theme=dark] .type-selector-tab button{color:#94a3b8}[data-theme=dark] .type-selector-tab button.active{background:#2a2a2a;color:#f1f5f9}[data-theme=dark] .break-info-tip{background:#3b82f61a;color:#60a5fa}[data-theme=dark] .faculty-auto-display{background:#0f0f0f;border-color:#ffffff1a}[data-theme=dark] .faculty-auto-display label{color:#94a3b8}[data-theme=dark] .faculty-value{color:#f1f5f9}[data-theme=dark] .role-card-content{background:#0f0f0f;border-color:#ffffff1a}[data-theme=dark] .role-card-content i{color:#64748b}[data-theme=dark] .role-card-content span{color:#94a3b8}[data-theme=dark] .role-checkbox-card input:checked+.role-card-content{background:#10b9811a;border-color:#10b981}[data-theme=dark] .role-checkbox-card input:checked+.role-card-content i{color:#10b981}[data-theme=dark] .role-checkbox-card input:checked+.role-card-content span{color:#4ade80}@media(max-width:1200px){.header-actions{width:100%;justify-content:flex-start}.class-selector{flex:1;min-width:150px}}@media(max-width:768px){.timetable-management-container{padding:1rem}.timetable-header.premium-card{padding:1.5rem;flex-direction:column;align-items:stretch}.header-info h1{font-size:1.5rem}.header-info p{font-size:.85rem}.header-actions{flex-direction:column;width:100%}.class-selector,.btn-secondary,.btn-save,.btn-publish{width:100%;justify-content:center}.period-limit-control{width:100%;justify-content:space-between}.timetable-grid-wrapper{overflow-x:auto}.grid-cell{min-height:100px;font-size:.85rem}.sub-code{font-size:.75rem}.sub-name{font-size:.8rem}.faculty-tag{font-size:.7rem}.role-selection-grid{grid-template-columns:1fr}}@media(max-width:480px){.header-info h1{font-size:1.25rem}.grid-cell{min-height:80px;padding:.25rem}.time-col{flex:0 0 80px}.p-num{font-size:1rem}.p-time{font-size:.65rem}}.calendar-management-container{padding:2rem;background:#f8fafc;min-height:calc(100vh - 80px)}[data-theme=dark] .calendar-management-container{background:#0a0a0a}.calendar-header.premium-card{background:linear-gradient(135deg,#4f46e5,#7c3aed);padding:2.5rem;border-radius:20px;color:#fff;display:flex;justify-content:space-between;align-items:center;box-shadow:0 10px 25px #4f46e533;margin-bottom:2.5rem}[data-theme=dark] .calendar-header.premium-card{background:linear-gradient(135deg,#1a1a1a,#2a2a2a);box-shadow:0 10px 25px #000c;border:1px solid rgba(255,255,255,.1)}.header-actions{display:flex;align-items:center;gap:1.5rem}.view-toggle{background:#ffffff1a;padding:4px;border-radius:12px;display:flex;border:1px solid rgba(255,255,255,.1)}[data-theme=dark] .view-toggle{background:#ffffff0d}.view-toggle button{background:transparent;border:none;color:#fff;padding:8px 16px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;font-size:.9rem;display:flex;align-items:center;gap:8px}.view-toggle button.active{background:#fff;color:#4f46e5;box-shadow:0 4px 10px #0000001a}[data-theme=dark] .view-toggle button.active{background:#1a1a1a;color:#60a5fa;box-shadow:0 4px 10px #00000080}.btn-add-event{background:#fff;color:#4f46e5;border:none;padding:12px 24px;border-radius:12px;font-weight:700;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:10px}[data-theme=dark] .btn-add-event{background:#ffffff1a;color:#60a5fa;border:1px solid rgba(255,255,255,.1)}.btn-add-event:hover{transform:translateY(-2px);box-shadow:0 5px 15px #0000001a}[data-theme=dark] .btn-add-event:hover{background:#ffffff26;box-shadow:0 5px 15px #00000080}.calendar-view-wrapper{background:#fff;padding:2rem;border-radius:24px;box-shadow:0 4px 20px #0000000d}[data-theme=dark] .calendar-view-wrapper{background:#1a1a1a;box-shadow:0 4px 20px #00000080;border:1px solid rgba(255,255,255,.1)}.calendar-navigation{display:flex;align-items:center;justify-content:center;gap:2rem;margin-bottom:2.5rem}.calendar-navigation h2{font-size:1.8rem;color:#1e293b;min-width:250px;text-align:center;font-weight:800}[data-theme=dark] .calendar-navigation h2{color:#f1f5f9}.nav-btn{background:#f1f5f9;border:none;width:45px;height:45px;border-radius:50%;color:#64748b;cursor:pointer;transition:all .2s}[data-theme=dark] .nav-btn{background:#ffffff0d;color:#94a3b8}.nav-btn:hover{background:#4f46e5;color:#fff}.today-btn{background:#eef2ff;color:#4f46e5;border:1px solid #c7d2fe;padding:8px 16px;border-radius:8px;font-weight:700;cursor:pointer}[data-theme=dark] .today-btn{background:#4f46e526;border-color:#4f46e54d;color:#818cf8}.calendar-grid-container{border:1px solid #e2e8f0;border-radius:16px;overflow:hidden}[data-theme=dark] .calendar-grid-container{border-color:#ffffff1a}.calendar-week-days{display:grid;grid-template-columns:repeat(7,1fr);background:#f8fafc;border-bottom:1px solid #e2e8f0}[data-theme=dark] .calendar-week-days{background:#0f0f0f;border-bottom-color:#ffffff1a}.week-day{padding:1rem;text-align:center;font-weight:700;color:#64748b;text-transform:uppercase;font-size:.75rem;letter-spacing:.1em}[data-theme=dark] .week-day{color:#94a3b8}.calendar-days-grid{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-day{min-height:120px;padding:10px;border-right:1px solid #f1f5f9;border-bottom:1px solid #f1f5f9;cursor:pointer;transition:all .2s;background:#fff}[data-theme=dark] .calendar-day{background:#1a1a1a;border-right-color:#ffffff0d;border-bottom-color:#ffffff0d}.calendar-day:nth-child(7n){border-right:none}.calendar-day:hover{background:#f8fafc}[data-theme=dark] .calendar-day:hover{background:#222}.calendar-day.empty{background:#fdfdfd;cursor:default}[data-theme=dark] .calendar-day.empty{background:#0f0f0f}.calendar-day.today{background:#f0fdf4}[data-theme=dark] .calendar-day.today{background:#10b9811a}.calendar-day.today .day-number{background:#10b981;color:#fff;padding:2px 8px;border-radius:6px}.day-number{font-weight:700;color:#64748b;margin-bottom:10px;display:inline-block}[data-theme=dark] .day-number{color:#94a3b8}.event-markers{display:flex;flex-direction:column;gap:4px}.event-pill{font-size:.7rem;padding:4px 8px;border-radius:6px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.event-pill.holiday{background:#fee2e2;color:#991b1b;border-left:3px solid #ef4444}[data-theme=dark] .event-pill.holiday{background:#ef444426;color:#fca5a5;border-left-color:#ef4444}.event-pill.event{background:#dbeafe;color:#1e40af;border-left:3px solid #3b82f6}[data-theme=dark] .event-pill.event{background:#3b82f626;color:#93c5fd;border-left-color:#3b82f6}.event-pill.restricted{background:#fef3c7;color:#92400e;border-left:3px solid #f59e0b}[data-theme=dark] .event-pill.restricted{background:#f59e0b26;color:#fcd34d;border-left-color:#f59e0b}.event-pill.other{background:#f1f5f9;color:#475569;border-left:3px solid #64748b}[data-theme=dark] .event-pill.other{background:#ffffff0d;color:#cbd5e1;border-left-color:#64748b}.calendar-legend{display:flex;gap:2rem;margin-top:2rem;justify-content:center;padding:1.5rem;background:#f8fafc;border-radius:12px}[data-theme=dark] .calendar-legend{background:#ffffff08}.legend-item{display:flex;align-items:center;gap:10px;font-size:.85rem;font-weight:600;color:#64748b}[data-theme=dark] .legend-item{color:#94a3b8}.dot{width:12px;height:12px;border-radius:50%}.dot.holiday{background:#ef4444}.dot.event{background:#3b82f6}.dot.restricted{background:#f59e0b}.dot.other{background:#64748b}.holidays-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.holiday-cardType{background:#fff;border-radius:18px;border:1px solid #e2e8f0;transition:all .3s ease;overflow:hidden;display:flex;flex-direction:column}[data-theme=dark] .holiday-cardType{background:#1a1a1a;border-color:#ffffff1a}.holiday-cardType:hover{transform:translateY(-5px);box-shadow:0 12px 20px #00000014}[data-theme=dark] .holiday-cardType:hover{box-shadow:0 12px 20px #000c;background:#222}.holiday-cardType.holiday{border-top:5px solid #ef4444}.holiday-cardType.event{border-top:5px solid #3b82f6}.holiday-cardType.restricted{border-top:5px solid #f59e0b}.card-top{padding:1.5rem;display:flex;align-items:center;gap:1.2rem;border-bottom:1px solid #f1f5f9}[data-theme=dark] .card-top{border-bottom-color:#ffffff1a}.date-badge{background:#f1f5f9;padding:10px;border-radius:12px;display:flex;flex-direction:column;align-items:center;min-width:65px}[data-theme=dark] .date-badge{background:#ffffff0d}.date-badge .month{font-size:.75rem;font-weight:800;color:#64748b;text-transform:uppercase}[data-theme=dark] .date-badge .month{color:#94a3b8}.date-badge .day{font-size:1.4rem;font-weight:800;color:#1e293b}[data-theme=dark] .date-badge .day{color:#f1f5f9}.event-info{flex:1}.event-info h3{font-size:1.1rem;color:#1e293b;margin-bottom:.2rem}[data-theme=dark] .event-info h3{color:#f1f5f9}.type-tag{font-size:.65rem;padding:2px 8px;border-radius:20px;background:#f1f5f9;color:#64748b;font-weight:700;letter-spacing:.05em}[data-theme=dark] .type-tag{background:#ffffff1a;color:#94a3b8}.card-actions{display:flex;gap:8px}.card-actions button{background:#f8fafc;border:1px solid #e2e8f0;width:35px;height:35px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#64748b;cursor:pointer;transition:all .2s}[data-theme=dark] .card-actions button{background:#ffffff0d;border-color:#ffffff1a;color:#94a3b8}.card-actions button:hover{background:#4f46e5;color:#fff}.card-actions button.delete:hover{background:#ef4444}.card-body{padding:1.5rem;flex:1}.card-body p{color:#475569;font-size:.95rem;line-height:1.5;margin-bottom:1rem}[data-theme=dark] .card-body p{color:#cbd5e1}.duration{font-size:.85rem;color:#94a3b8;display:flex;align-items:center;gap:8px;font-weight:500}[data-theme=dark] .duration{color:#64748b}.animate-fade-in{animation:fadeIn .4s ease-out}.results-tabs{display:flex;gap:8px;background:var(--card-bg);padding:8px;border-radius:var(--radius-lg);margin-bottom:var(--card-spacing);overflow-x:auto;scrollbar-width:none;border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}.results-tabs::-webkit-scrollbar{display:none}.tab-item{padding:10px 20px;border-radius:var(--radius-md);font-size:.9rem;font-weight:600;color:var(--text-muted);cursor:pointer;transition:all .2s ease;white-space:nowrap;display:flex;align-items:center;gap:8px}.tab-item i{font-size:1rem}.tab-item:hover{background:var(--bg-subtle);color:var(--text-primary)}.tab-item.active{background:var(--primary-color);color:#fff;box-shadow:0 4px 12px #6366f14d}.stats-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.aptitude-results-grid,.lms-results-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--card-spacing)}.aptitude-card{padding:1.25rem;border:1px solid var(--border-color);transition:all .3s ease}.aptitude-card:hover{transform:translateY(-4px);border-color:var(--primary-color);box-shadow:var(--shadow-lg)}.aptitude-card .category-tag{display:inline-block;padding:4px 10px;border-radius:8px;font-size:.75rem;font-weight:700;background:#f1f5f9;color:#475569;margin-bottom:12px}.difficulty-tag{font-size:.7rem;padding:2px 8px;border-radius:6px;margin-left:8px}.difficulty-tag.Easy{background:#dcfce7;color:#166534}.difficulty-tag.Medium{background:#fef3c7;color:#92400e}.difficulty-tag.Hard{background:#fee2e2;color:#991b1b}.lms-result-card{padding:1.5rem;border-left:4px solid var(--primary-color)}.lms-result-card .subject{font-size:.8rem;color:var(--text-muted);font-weight:600;text-transform:uppercase;margin-bottom:4px}.lms-result-card .assignment-title{font-size:1.1rem;font-weight:700;margin-bottom:1rem}.history-timeline{display:flex;flex-direction:column;gap:1.5rem;position:relative;padding-left:20px}.history-timeline:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--border-color)}.timeline-group{position:relative}.timeline-dot{position:absolute;left:-24px;top:6px;width:10px;height:10px;border-radius:50%;background:var(--primary-color);outline:4px solid white}.analytics-summary-card{background:linear-gradient(135deg,#1e293b,#0f172a);color:#fff;padding:2rem;border-radius:var(--radius-xl);margin-bottom:2rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:2rem}.summary-score{text-align:center}.summary-score .val{font-size:3rem;font-weight:800;line-height:1}.summary-score .lbl{font-size:.9rem;opacity:.7;margin-top:8px}.section-header-academic{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.academic-filters{display:flex;gap:12px}.filter-select{padding:8px 16px;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--card-bg);font-size:.85rem;color:var(--text-primary);outline:none}@media(max-width:768px){.results-tabs{padding:6px;margin:0 calc(var(--content-padding-mobile) * -1) var(--card-spacing);border-radius:0;border-left:none;border-right:none}.tab-item{padding:8px 14px;font-size:.85rem}}.classes-page{background:var(--bg-primary, #f5f7fa);min-height:100vh;padding:0;margin:0;transition:background-color .3s ease}.classes-page[data-theme=dark]{background:#1a1a1a}.classes-container{display:flex;height:100vh;max-width:100%;margin:0}.classes-sidebar{width:200px;background:#ffffffb3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-right:1px solid rgba(255,255,255,.3);padding:2rem 0;display:flex;flex-direction:column;transition:all .3s ease;z-index:10}.classes-page[data-theme=dark] .classes-sidebar{background:#14141466;border-right-color:#ffffff0d}.sidebar-options{display:flex;flex-direction:column;gap:.5rem;padding:0 1rem}.sidebar-option{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;background:transparent;border:none;border-radius:12px;border-left:3px solid transparent;cursor:pointer;transition:all .3s ease;font-size:.95rem;font-weight:500;color:var(--text-secondary, #6b7280);text-align:left;position:relative}.classes-page[data-theme=dark] .sidebar-option{color:#9ca3af}.sidebar-option:hover{background:var(--hover-bg, #f3f4f6);color:var(--text-primary, #374151)}.classes-page[data-theme=dark] .sidebar-option:hover{background:#3d3d3d;color:#e5e7eb}.sidebar-option.active{background:var(--hover-bg, #f3f4f6);color:#667eea;border-left-color:#667eea;font-weight:600}.classes-page[data-theme=dark] .sidebar-option.active{background:#3d3d3d;color:#667eea;border-left-color:#667eea}.sidebar-option i{font-size:1.1rem;width:20px;text-align:center}.classes-main{flex:1;padding:0;overflow:hidden;background:var(--bg-primary, #f5f7fa);transition:background-color .3s ease;height:100vh}.classes-page[data-theme=dark] .classes-main{background:#1a1a1a}.classes-content{display:flex;justify-content:center;align-items:stretch;gap:0;height:100%;overflow:hidden;width:100%}.content-full{background:var(--bg-secondary, white);border-radius:0;padding:2rem;box-shadow:none;height:100%;overflow-y:auto;transition:background-color .3s ease,border-color .3s ease;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;width:100%;max-width:1400px;margin:0 auto;scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}.content-full::-webkit-scrollbar{width:6px}.content-full::-webkit-scrollbar-track{background:transparent}.content-full::-webkit-scrollbar-thumb{background-color:#cbd5e1;border-radius:20px;border:2px solid transparent;background-clip:content-box}.content-full::-webkit-scrollbar-thumb:hover{background-color:#94a3b8}.classes-page[data-theme=dark] .content-full{background:#2d2d2d;scrollbar-color:#4b5563 transparent}.classes-page[data-theme=dark] .content-full::-webkit-scrollbar-thumb{background-color:#4b5563}.content-left{background:var(--bg-secondary, white);border-radius:0;padding:2rem;box-shadow:none;border-right:1px solid var(--border-color, #e5e7eb);height:100%;overflow-y:auto;transition:background-color .3s ease,border-color .3s ease;display:flex;flex-direction:column;align-items:center;scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}.content-left::-webkit-scrollbar{width:6px}.content-left::-webkit-scrollbar-track{background:transparent}.content-left::-webkit-scrollbar-thumb{background-color:#cbd5e1;border-radius:20px;border:2px solid transparent;background-clip:content-box}.content-left::-webkit-scrollbar-thumb:hover{background-color:#94a3b8}.classes-page[data-theme=dark] .content-left{background:#2d2d2d;border-right-color:#404040;scrollbar-color:#4b5563 transparent}.classes-page[data-theme=dark] .content-left::-webkit-scrollbar-thumb{background-color:#4b5563}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;width:100%;max-width:900px}.section-header h2{font-size:1.75rem;font-weight:700;color:var(--text-primary, #1f2937);margin:0;transition:color .3s ease}.classes-page[data-theme=dark] .section-header h2{color:#f3f4f6}.live-view{width:100%;display:flex;flex-direction:column;align-items:center}.classes-grid-live{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;width:100%;max-width:900px}.class-card-live{width:100%;border-radius:16px;background:#fff;box-shadow:0 4px 10px #00000026;overflow:hidden;cursor:pointer;transition:box-shadow .3s ease,transform .3s ease;display:flex;flex-direction:column}.class-card-live:hover{box-shadow:0 8px 20px #0003;transform:translateY(-4px)}.class-card-live.is-live{box-shadow:0 4px 15px #667eea4d}.class-card-live.is-live:hover{box-shadow:0 8px 25px #667eea66}.class-card-header-live{min-height:130px;padding:24px;position:relative;display:flex;justify-content:space-between;align-items:flex-start}.class-card-content-live{flex:1;display:flex;flex-direction:column;gap:12px}.class-header-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.class-title-live{font-family:Inter,Google Sans,Roboto,-apple-system,BlinkMacSystemFont,sans-serif;font-size:28px;font-weight:500;line-height:1.2;color:#fff;margin:0;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex:1}.live-badge{display:flex;align-items:center;gap:6px;background:#ffffff40;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600;color:#fff;letter-spacing:.5px;animation:pulse 2s ease-in-out infinite}.live-dot{width:6px;height:6px;border-radius:50%;background:#f44;animation:blink 1.5s ease-in-out infinite}.class-teacher-row-live{display:flex;align-items:center;gap:10px}.teacher-avatar-live{width:32px;height:32px;border-radius:50%;background:#ffffff40;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:16px}.teacher-name-live{font-family:Inter,Google Sans,Roboto,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;font-weight:400;color:#fff;opacity:.9;line-height:1.4;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.class-menu-btn-live{width:24px;height:24px;background:transparent;border:none;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:opacity .2s ease}.class-menu-btn-live:hover{opacity:.8}.class-menu-btn-live svg{display:block}.class-card-footer-live{height:60px;background:#fff;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom-left-radius:16px;border-bottom-right-radius:16px}.join-btn-live{display:flex;align-items:center;justify-content:center;padding:8px 20px;border-radius:8px;border:none;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;font-family:Inter,Google Sans,Roboto,-apple-system,BlinkMacSystemFont,sans-serif}.join-btn-live.active{background:#667eea;color:#fff}.join-btn-live.active:hover{background:#5a67d8;transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.join-btn-live.inactive{background:#e5e7eb;color:#9ca3af;cursor:not-allowed}.join-btn-live:disabled{cursor:not-allowed}.folder-btn-live{width:28px;height:28px;background:transparent;border:none;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;transition:opacity .2s ease;color:#5f6368}.folder-btn-live:hover{opacity:.7}.folder-btn-live svg{display:block}.classes-page[data-theme=dark] .class-card-live,.classes-page[data-theme=dark] .class-card-footer-live{background:#3d3d3d}.classes-page[data-theme=dark] .join-btn-live.inactive{background:#4a4a4a;color:#6b7280}.classes-page[data-theme=dark] .folder-btn-live{color:#9ca3af}@media(max-width:768px){.classes-grid-live{grid-template-columns:1fr;gap:20px}.class-title-live{font-size:24px}.class-card-header-live{min-height:120px;padding:20px}.class-card-footer-live{height:56px;padding:14px 18px}}@media(max-width:480px){.class-title-live{font-size:22px}.teacher-name-live{font-size:13px}.class-card-header-live{min-height:110px;padding:18px}.class-card-footer-live{height:52px;padding:12px 16px}.join-btn-live{padding:6px 16px;font-size:13px}}.content-right{display:flex;flex-direction:column;gap:0;background:var(--bg-secondary, white);transition:background-color .3s ease;height:100%;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}.content-right::-webkit-scrollbar{width:6px}.content-right::-webkit-scrollbar-track{background:transparent}.content-right::-webkit-scrollbar-thumb{background-color:#cbd5e1;border-radius:20px;border:2px solid transparent;background-clip:content-box}.content-right::-webkit-scrollbar-thumb:hover{background-color:#94a3b8}.classes-page[data-theme=dark] .content-right{background:#2d2d2d;scrollbar-color:#4b5563 transparent}.classes-page[data-theme=dark] .content-right::-webkit-scrollbar-thumb{background-color:#4b5563}.calendar-widget{background:var(--bg-secondary, white);border-radius:0;padding:1rem;box-shadow:none;border-bottom:none;transition:background-color .3s ease,border-color .3s ease;width:100%;height:100%;box-sizing:border-box;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column}.classes-page[data-theme=dark] .calendar-widget{background:#2d2d2d;border-bottom-color:#404040}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.calendar-header h3{font-size:1.1rem;font-weight:700;color:var(--text-primary, #1f2937);margin:0;transition:color .3s ease}.classes-page[data-theme=dark] .calendar-header h3{color:#f3f4f6}.calendar-nav{display:flex;gap:.25rem}.calendar-nav button{background:var(--hover-bg, #f3f4f6);border:none;border-radius:8px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary, #6b7280);cursor:pointer;transition:all .2s ease;font-size:.9rem}.classes-page[data-theme=dark] .calendar-nav button{background:#3d3d3d;color:#9ca3af}.calendar-nav button:hover{background:#667eea;color:#fff;transform:scale(1.05)}.calendar-grid{width:100%;flex:1;display:flex;flex-direction:column}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:.5rem;width:100%;box-sizing:border-box}.calendar-days span{text-align:center;font-size:.7rem;font-weight:600;color:var(--text-secondary, #6b7280);padding:.4rem 0;transition:color .3s ease}.classes-page[data-theme=dark] .calendar-days span{color:#9ca3af}.calendar-dates{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;width:100%;box-sizing:border-box;align-content:start}.calendar-date{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:500;border-radius:8px;cursor:pointer;transition:all .2s ease;color:var(--text-primary, #374151);position:relative;max-width:100%}.classes-page[data-theme=dark] .calendar-date{color:#e5e7eb}.calendar-date:hover:not(.empty){background:var(--hover-bg, #f3f4f6);transform:translateY(-1px)}.classes-page[data-theme=dark] .calendar-date:hover:not(.empty){background:#3d3d3d}.calendar-date.today{background:#667eea;color:#fff;font-weight:700;box-shadow:0 2px 8px #667eea4d}.calendar-date.selected{background:#10b981;color:#fff;font-weight:700;box-shadow:0 2px 8px #10b9814d}.calendar-date.empty{cursor:default;opacity:0;pointer-events:none;visibility:hidden}.task-filters{display:flex;gap:.5rem;margin-bottom:2rem}.filter-btn{background:#f3f4f6;border:none;border-radius:8px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;color:#6b7280;cursor:pointer;transition:all .2s ease}.filter-btn:hover{background:#e5e7eb}.task-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem;transition:all .2s ease}@media(max-width:1200px){.classes-content{grid-template-columns:1fr;gap:0}.content-right{order:-1;border-bottom:1px solid var(--border-color, #e5e7eb)}.classes-page[data-theme=dark] .content-right{border-bottom-color:#404040}.content-left{border-right:none}}@media(max-width:768px){.classes-container{flex-direction:column;height:auto}.classes-sidebar{width:100%;padding:1rem 0;border-right:none;border-bottom:1px solid var(--border-color, #e5e7eb)}.classes-page[data-theme=dark] .classes-sidebar{border-bottom-color:#404040}.sidebar-options{flex-direction:row;overflow-x:auto;padding:0 1rem;gap:.5rem;-webkit-overflow-scrolling:touch}.sidebar-options::-webkit-scrollbar{height:4px}.sidebar-options::-webkit-scrollbar-track{background:transparent}.sidebar-options::-webkit-scrollbar-thumb{background:var(--text-tertiary, #d1d5db);border-radius:2px}.sidebar-option{flex-shrink:0;min-width:100px;padding:.75rem 1rem;font-size:.875rem;border-left:none;border-bottom:3px solid transparent}.sidebar-option.active{border-left:none;border-bottom-color:#667eea}.classes-main{padding:0}.content-left{padding:1.5rem 1rem}.section-header{margin-bottom:1.5rem}.section-header h2{font-size:1.5rem}.classes-grid-perfect{grid-template-columns:1fr;gap:1rem}.class-card-perfect{max-width:100%}.class-title-perfect{font-size:24px}.class-card-header-perfect{height:100px;padding:20px}.class-card-footer-perfect{height:56px;padding:14px 18px}.calendar-widget{padding:1rem}.calendar-header h3{font-size:1.125rem}.calendar-days span{font-size:.7rem;padding:.375rem 0}.calendar-date{font-size:.8rem}.upcoming-schedule{padding:1rem}.schedule-header h3{font-size:1.125rem}.schedule-list{max-height:300px}.schedule-item{padding:.875rem}.schedule-content h4{font-size:.9rem}.schedule-meta span{font-size:.75rem}}@media(max-width:480px){.sidebar-option{min-width:90px;padding:.625rem .75rem;font-size:.8rem}.sidebar-option i{font-size:1rem}.content-left{padding:1rem .75rem}.section-header h2{font-size:1.25rem}.classes-grid-perfect{gap:.875rem}.class-title-perfect{font-size:22px}.teacher-name-perfect{font-size:13px}.class-card-header-perfect{height:95px;padding:18px}.class-card-footer-perfect{height:52px;padding:12px 16px}.calendar-widget{padding:.875rem}.calendar-header h3{font-size:1rem}.calendar-nav button{width:32px;height:32px}.calendar-days span{font-size:.65rem}.calendar-date{font-size:.75rem}.upcoming-schedule{padding:.875rem}.schedule-header h3{font-size:1rem}.add-schedule-btn{width:32px;height:32px}.schedule-list{max-height:250px}.schedule-item{padding:.75rem}}.task-view{width:100%}.task-view .add-task-btn{background:#667eea;color:#fff;border:none;border-radius:10px;padding:.75rem 1.5rem;font-weight:600;cursor:pointer;transition:all .2s ease}.task-view .add-task-btn:hover{background:#5a67d8;transform:translateY(-2px)}.task-filters{display:flex;gap:.5rem;margin-bottom:2rem;flex-wrap:wrap}.filter-btn{background:var(--hover-bg, #f3f4f6);border:none;border-radius:8px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;color:var(--text-secondary, #6b7280);cursor:pointer;transition:all .2s ease}.classes-page[data-theme=dark] .filter-btn{background:#3d3d3d;color:#9ca3af}.filter-btn:hover{background:var(--hover-bg-dark, #e5e7eb)}.classes-page[data-theme=dark] .filter-btn:hover{background:#4a4a4a}.filter-btn.active{background:#667eea;color:#fff}.tasks-list{display:flex;flex-direction:column;gap:1rem}.task-card{background:var(--bg-secondary, white);border:1px solid var(--border-color, #e5e7eb);border-radius:12px;padding:1.5rem;transition:all .2s ease;margin-bottom:0}.classes-page[data-theme=dark] .task-card{background:#3d3d3d;border-color:#4a4a4a}.task-card:hover{border-color:#667eea;box-shadow:0 4px 15px #667eea1a}.classes-page[data-theme=dark] .task-card:hover{box-shadow:0 4px 15px #667eea33}.task-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.task-subject{background:#667eea;color:#fff;padding:.25rem .75rem;border-radius:6px;font-size:.75rem;font-weight:600}.task-priority{display:flex;align-items:center;gap:.25rem;font-size:.75rem;font-weight:600;text-transform:uppercase}.task-title{font-size:1.1rem;font-weight:600;color:#1f2937;margin:0 0 1rem}.task-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.task-due-date{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#6b7280}.task-status{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:500;text-transform:capitalize}.task-status.completed{color:#10b981}.task-status.in-progress{color:#f59e0b}.task-status.pending{color:#ef4444}.task-actions{display:flex;gap:.5rem}.task-action-btn{background:#f3f4f6;border:none;border-radius:6px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:#6b7280;cursor:pointer;transition:all .2s ease}.task-action-btn:hover{background:#667eea;color:#fff}.chatroom-view{height:100%;width:100%;display:flex;flex-direction:column}.chat-layout{display:grid;grid-template-columns:320px 1fr;height:calc(100vh - 180px);min-height:600px;border-radius:12px;overflow:hidden;box-shadow:0 4px 15px #0000001a;border:1px solid var(--border-color, #e5e7eb)}.classes-page[data-theme=dark] .chat-layout{border-color:#404040;box-shadow:0 4px 15px #0000004d}.chat-list{background:var(--hover-bg, #f9fafb);border-right:1px solid var(--border-color, #e5e7eb);display:flex;flex-direction:column;overflow:hidden}.classes-page[data-theme=dark] .chat-list{background:#3d3d3d;border-right-color:#4a4a4a}.chat-list-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem;border-bottom:1px solid var(--border-color, #e5e7eb);flex-shrink:0}.classes-page[data-theme=dark] .chat-list-header{border-bottom-color:#4a4a4a}.chat-list-header h3{font-size:1.125rem;font-weight:600;color:var(--text-primary, #1f2937);margin:0}.classes-page[data-theme=dark] .chat-list-header h3{color:#f3f4f6}.new-chat-btn{background:#667eea;border:none;border-radius:8px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;transition:all .2s ease}.new-chat-btn:hover{background:#5a67d8;transform:scale(1.05)}.chat-rooms{overflow-y:auto;flex:1}.chat-rooms::-webkit-scrollbar{width:6px}.chat-rooms::-webkit-scrollbar-track{background:transparent}.chat-rooms::-webkit-scrollbar-thumb{background:var(--text-tertiary, #d1d5db);border-radius:3px}.classes-page[data-theme=dark] .chat-rooms::-webkit-scrollbar-thumb{background:#4a4a4a}.chat-room-item{display:flex;align-items:center;gap:1rem;padding:1.125rem;cursor:pointer;transition:background-color .2s ease;border-bottom:1px solid var(--border-color, #f3f4f6)}.classes-page[data-theme=dark] .chat-room-item{border-bottom-color:#4a4a4a}.chat-room-item:hover{background:var(--hover-bg-dark, #f3f4f6)}.classes-page[data-theme=dark] .chat-room-item:hover{background:#4a4a4a}.chat-room-item.active{background:#667eea;color:#fff}.chat-room-avatar{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:1.125rem;flex-shrink:0}.chat-room-info{flex:1;min-width:0}.chat-room-name{font-weight:600;font-size:.9375rem;margin-bottom:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-room-teacher{font-size:.75rem;opacity:.7;margin-bottom:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-room-last-message{font-size:.75rem;opacity:.8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-room-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.375rem;flex-shrink:0}.chat-room-time{font-size:.6875rem;opacity:.7}.chat-room-unread{background:#ef4444;color:#fff;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:.6875rem;font-weight:600}.chat-messages{background:var(--bg-secondary, white);display:flex;flex-direction:column;overflow:hidden}.classes-page[data-theme=dark] .chat-messages{background:#2d2d2d}.chat-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem;border-bottom:1px solid var(--border-color, #e5e7eb);flex-shrink:0}.classes-page[data-theme=dark] .chat-header{border-bottom-color:#404040}.chat-header-info h3{font-size:1.125rem;font-weight:600;color:var(--text-primary, #1f2937);margin:0 0 .25rem}.classes-page[data-theme=dark] .chat-header-info h3{color:#f3f4f6}.chat-header-info span{font-size:.8125rem;color:var(--text-secondary, #6b7280)}.classes-page[data-theme=dark] .chat-header-info span{color:#9ca3af}.chat-header-actions{display:flex;gap:.5rem}.chat-header-actions button{background:var(--hover-bg, #f3f4f6);border:none;border-radius:8px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary, #6b7280);cursor:pointer;transition:all .2s ease}.classes-page[data-theme=dark] .chat-header-actions button{background:#3d3d3d;color:#9ca3af}.chat-header-actions button:hover{background:#667eea;color:#fff}.messages-container{flex:1;overflow-y:auto;padding:1.25rem;display:flex;flex-direction:column;gap:1.25rem}.messages-container::-webkit-scrollbar{width:6px}.messages-container::-webkit-scrollbar-track{background:transparent}.messages-container::-webkit-scrollbar-thumb{background:var(--text-tertiary, #d1d5db);border-radius:3px}.classes-page[data-theme=dark] .messages-container::-webkit-scrollbar-thumb{background:#4a4a4a}.message{display:flex;gap:.875rem;animation:fadeIn .3s ease}.message.own{flex-direction:row-reverse}.message-avatar{width:36px;height:36px;border-radius:50%;background:#667eea;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:1rem;flex-shrink:0}.message.teacher .message-avatar{background:#10b981}.message.own .message-avatar{background:#f59e0b}.message-content{flex:1;max-width:70%}.message.own .message-content{text-align:right}.message-header{display:flex;gap:.5rem;margin-bottom:.375rem}.message.own .message-header{justify-content:flex-end}.message-sender{font-weight:600;font-size:.8125rem;color:var(--text-primary, #1f2937)}.classes-page[data-theme=dark] .message-sender{color:#f3f4f6}.message-time{font-size:.6875rem;color:var(--text-secondary, #6b7280)}.classes-page[data-theme=dark] .message-time{color:#9ca3af}.message-text{background:var(--hover-bg, #f3f4f6);padding:.875rem 1rem;border-radius:12px;font-size:.9375rem;line-height:1.5;color:var(--text-primary, #1f2937);word-wrap:break-word}.classes-page[data-theme=dark] .message-text{background:#3d3d3d;color:#e5e7eb}.message.own .message-text{background:#667eea;color:#fff}.message-input{display:flex;gap:.75rem;padding:1.25rem;border-top:1px solid var(--border-color, #e5e7eb);flex-shrink:0;background:var(--bg-secondary, white)}.classes-page[data-theme=dark] .message-input{border-top-color:#404040;background:#2d2d2d}.message-input input{flex:1;border:1px solid var(--border-color, #e5e7eb);border-radius:10px;padding:.875rem 1rem;font-size:.9375rem;outline:none;background:var(--bg-secondary, white);color:var(--text-primary, #1f2937);transition:border-color .2s ease}.classes-page[data-theme=dark] .message-input input{background:#3d3d3d;border-color:#4a4a4a;color:#e5e7eb}.message-input input:focus{border-color:#667eea}.message-input input::placeholder{color:var(--text-tertiary, #9ca3af)}.classes-page[data-theme=dark] .message-input input::placeholder{color:#6b7280}.message-input button{background:#667eea;border:none;border-radius:10px;width:48px;height:48px;display:flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;transition:all .2s ease;flex-shrink:0}.message-input button:hover:not(:disabled){background:#5a67d8;transform:scale(1.05)}.message-input button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.chat-layout{grid-template-columns:1fr;height:calc(100vh - 200px)}.chat-list{display:none}.chat-list.mobile-visible{display:flex}.chat-messages{grid-column:1}.message-content{max-width:85%}}@media(max-width:480px){.chat-layout{height:calc(100vh - 180px)}.chat-header,.messages-container,.message-input{padding:1rem}.message-input input{font-size:.875rem;padding:.75rem}.message-input button{width:44px;height:44px}}.score-view{width:100%}.score-view .filter-select{background:var(--bg-secondary, white);border:1px solid var(--border-color, #e5e7eb);border-radius:8px;padding:.5rem 1rem;font-size:.9rem;color:var(--text-primary, #374151);cursor:pointer}.classes-page[data-theme=dark] .score-view .filter-select{background:#3d3d3d;border-color:#4a4a4a;color:#e5e7eb}.performance-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.performance-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1.5rem;border-radius:12px;text-align:center}.performance-card h3{font-size:.9rem;font-weight:600;margin:0 0 1rem;opacity:.9}.performance-score{display:flex;align-items:center;justify-content:center;gap:.5rem}.score-number{font-size:2rem;font-weight:700}.score-grade{font-size:1.5rem;font-weight:700}.performance-subject{display:flex;flex-direction:column;gap:.25rem}.subject-name{font-weight:600}.subject-score{font-size:.9rem;opacity:.9}.subjects-scores{display:flex;flex-direction:column;gap:1.5rem}.subject-score-card{background:var(--bg-secondary, white);border:1px solid var(--border-color, #e5e7eb);border-radius:12px;padding:1.5rem}.classes-page[data-theme=dark] .subject-score-card{background:#3d3d3d;border-color:#4a4a4a}.subject-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.subject-info{display:flex;align-items:center;gap:1rem}.subject-color-indicator{width:4px;height:40px;border-radius:2px}.subject-info h3{font-size:1.2rem;font-weight:600;color:var(--text-primary, #1f2937);margin:0}.classes-page[data-theme=dark] .subject-info h3{color:#f3f4f6}.subject-average{display:flex;align-items:center;gap:.5rem}.average-score{font-size:1.5rem;font-weight:700;color:var(--text-primary, #1f2937)}.classes-page[data-theme=dark] .average-score{color:#f3f4f6}.average-grade{font-size:1.2rem;font-weight:700}.tests-list{display:flex;flex-direction:column;gap:1rem}.test-score-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--hover-bg, #f9fafb);border-radius:8px;flex-wrap:wrap;gap:1rem}.classes-page[data-theme=dark] .test-score-item{background:#4a4a4a}.test-info{display:flex;flex-direction:column;gap:.25rem;flex:1;min-width:150px}.test-name{font-weight:600;color:var(--text-primary, #1f2937)}.classes-page[data-theme=dark] .test-name{color:#f3f4f6}.test-date{font-size:.8rem;color:var(--text-secondary, #6b7280)}.classes-page[data-theme=dark] .test-date{color:#9ca3af}.test-score{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.score-fraction{font-weight:600;color:var(--text-primary, #374151)}.classes-page[data-theme=dark] .score-fraction{color:#e5e7eb}.score-bar{width:100px;height:6px;background:var(--border-color, #e5e7eb);border-radius:3px;overflow:hidden}.classes-page[data-theme=dark] .score-bar{background:#4a4a4a}.score-fill{height:100%;border-radius:3px;transition:width .3s ease}.score-percentage{font-weight:600;color:var(--text-primary, #374151);min-width:40px;text-align:right}.classes-page[data-theme=dark] .score-percentage{color:#e5e7eb}@media(max-width:768px){.performance-overview{grid-template-columns:1fr}.subject-header,.test-score-item{flex-direction:column;align-items:flex-start}.test-score{width:100%;justify-content:space-between}.score-bar{flex:1;min-width:100px}}.test-view{width:100%}.tests-section{margin-bottom:2rem}.section-title{display:flex;align-items:center;gap:.5rem;font-size:1.2rem;font-weight:600;color:var(--text-primary, #1f2937);margin-bottom:1.5rem}.classes-page[data-theme=dark] .section-title{color:#f3f4f6}.tests-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.test-card{background:var(--bg-secondary, white);border:1px solid var(--border-color, #e5e7eb);border-radius:12px;padding:1.5rem;transition:all .2s ease}.classes-page[data-theme=dark] .test-card{background:#3d3d3d;border-color:#4a4a4a}.test-card:hover{border-color:#667eea;box-shadow:0 4px 15px #667eea1a}.classes-page[data-theme=dark] .test-card:hover{box-shadow:0 4px 15px #667eea33}.test-card.upcoming{border-left:4px solid #667eea}.test-card.completed{border-left:4px solid #10b981}.test-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:.5rem}.test-type{display:flex;align-items:center;gap:.5rem;color:#fff;padding:.25rem .75rem;border-radius:6px;font-size:.75rem;font-weight:600}.test-countdown{background:var(--hover-bg, #f3f4f6);color:var(--text-secondary, #6b7280);padding:.25rem .75rem;border-radius:6px;font-size:.75rem;font-weight:600}.classes-page[data-theme=dark] .test-countdown{background:#4a4a4a;color:#9ca3af}.test-countdown.urgent{background:#fef2f2;color:#ef4444}.classes-page[data-theme=dark] .test-countdown.urgent{background:#ef444433}.test-score{padding:.25rem .75rem;border-radius:6px;font-size:.75rem;font-weight:600}.test-score.good{background:#f0fdf4;color:#10b981}.classes-page[data-theme=dark] .test-score.good{background:#10b98133}.test-score.average{background:#fffbeb;color:#f59e0b}.classes-page[data-theme=dark] .test-score.average{background:#f59e0b33}.test-score.poor{background:#fef2f2;color:#ef4444}.classes-page[data-theme=dark] .test-score.poor{background:#ef444433}.test-title{font-size:1.1rem;font-weight:600;color:var(--text-primary, #1f2937);margin:0 0 .5rem}.classes-page[data-theme=dark] .test-title{color:#f3f4f6}.test-subject{font-size:.9rem;color:var(--text-secondary, #6b7280);margin-bottom:1rem}.classes-page[data-theme=dark] .test-subject{color:#9ca3af}.test-details{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.test-detail{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--text-secondary, #6b7280)}.classes-page[data-theme=dark] .test-detail{color:#9ca3af}.test-detail i{width:14px;color:var(--text-tertiary, #9ca3af)}.classes-page[data-theme=dark] .test-detail i{color:#6b7280}.test-topics{margin-bottom:1.5rem}.test-topics h5{font-size:.9rem;font-weight:600;color:var(--text-primary, #374151);margin:0 0 .5rem}.classes-page[data-theme=dark] .test-topics h5{color:#e5e7eb}.topics-list{display:flex;flex-wrap:wrap;gap:.5rem}.topic-tag{background:var(--hover-bg, #f3f4f6);color:var(--text-secondary, #6b7280);padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.classes-page[data-theme=dark] .topic-tag{background:#4a4a4a;color:#9ca3af}.test-actions{display:flex;gap:.5rem;flex-wrap:wrap}.test-action-btn{flex:1;min-width:120px;background:var(--hover-bg, #f3f4f6);border:none;border-radius:6px;padding:.75rem;font-size:.8rem;font-weight:500;color:var(--text-secondary, #6b7280);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.classes-page[data-theme=dark] .test-action-btn{background:#4a4a4a;color:#9ca3af}.test-action-btn:hover{background:var(--hover-bg-dark, #e5e7eb);color:var(--text-primary, #374151)}.classes-page[data-theme=dark] .test-action-btn:hover{background:#5a5a5a;color:#e5e7eb}.test-action-btn.primary{background:#667eea;color:#fff}.test-action-btn.primary:hover{background:#5a67d8}@media(max-width:768px){.tests-grid{grid-template-columns:1fr}.test-actions{flex-direction:column}.test-action-btn{width:100%}}.classes-grid-perfect{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,420px));gap:24px;justify-content:start}.class-card-perfect{width:100%;max-width:420px;border-radius:16px;background:#fff;box-shadow:0 4px 10px #00000026;overflow:hidden;cursor:pointer;transition:box-shadow .3s ease,transform .3s ease;display:flex;flex-direction:column}.class-card-perfect:hover{box-shadow:0 8px 20px #0003;transform:translateY(-4px)}.class-card-header-perfect{height:110px;padding:24px;position:relative;display:flex;justify-content:space-between;align-items:flex-start}.class-card-content-perfect{flex:1;display:flex;flex-direction:column;gap:12px}.class-title-perfect{font-family:Inter,Google Sans,Roboto,-apple-system,BlinkMacSystemFont,sans-serif;font-size:28px;font-weight:500;line-height:1.2;color:#fff;margin:0;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.class-teacher-row-perfect{display:flex;align-items:center;gap:10px}.teacher-avatar-perfect{width:32px;height:32px;border-radius:50%;background:#ffffff40;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:16px}.teacher-name-perfect{font-family:Inter,Google Sans,Roboto,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;font-weight:400;color:#fff;opacity:.9;line-height:1.4;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.class-menu-btn-perfect{width:24px;height:24px;background:transparent;border:none;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:opacity .2s ease}.class-menu-btn-perfect:hover{opacity:.8}.class-menu-btn-perfect svg{display:block}.class-card-footer-perfect{height:60px;background:#fff;padding:16px 20px;display:flex;align-items:center;justify-content:flex-end;border-bottom-left-radius:16px;border-bottom-right-radius:16px}.folder-btn-perfect{width:28px;height:28px;background:transparent;border:none;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;transition:opacity .2s ease}.folder-btn-perfect:hover{opacity:.7}.folder-btn-perfect svg{display:block}@media(max-width:768px){.classes-grid-perfect{grid-template-columns:1fr;gap:20px}.class-card-perfect{max-width:100%}.class-title-perfect{font-size:24px}.class-card-header-perfect{height:100px;padding:20px}.class-card-footer-perfect{height:56px;padding:14px 18px}}@media(max-width:480px){.class-title-perfect{font-size:22px}.teacher-name-perfect{font-size:13px}.class-card-header-perfect{height:95px;padding:18px}.class-card-footer-perfect{height:52px;padding:12px 16px}}.class-card-perfect[data-subject=biology] .class-card-header-perfect{background-color:#4285f4}.class-card-perfect[data-subject=mathematics] .class-card-header-perfect{background-color:#8e63f6}.class-card-perfect[data-subject=english] .class-card-header-perfect{background-color:#34a853}.class-card-perfect *{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}.chatroom-view-v2{width:100%;height:100%;display:flex;flex-direction:column}.chat-container-v2{display:flex;flex-direction:column;height:calc(100vh - 180px);min-height:600px;background:var(--bg-secondary, white);border-radius:0;overflow:hidden}.classes-page[data-theme=dark] .chat-container-v2{background:#2d2d2d}.chat-header-v2{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--border-color, #e5e7eb);background:var(--bg-secondary, white);flex-shrink:0;height:60px}.classes-page[data-theme=dark] .chat-header-v2{background:#2d2d2d;border-bottom-color:#404040}.chat-header-left{display:flex;align-items:center;gap:.75rem}.chat-lock-icon{color:var(--text-secondary, #6b7280);font-size:1rem}.classes-page[data-theme=dark] .chat-lock-icon{color:#9ca3af}.class-selector-dropdown{position:relative}.class-selector-btn{display:flex;align-items:center;gap:.5rem;background:transparent;border:none;padding:.5rem .75rem;border-radius:6px;cursor:pointer;transition:background-color .2s ease}.class-selector-btn:hover{background:var(--hover-bg, #f3f4f6)}.classes-page[data-theme=dark] .class-selector-btn:hover{background:#3d3d3d}.selected-class-name{font-size:1rem;font-weight:600;color:var(--text-primary, #1f2937)}.classes-page[data-theme=dark] .selected-class-name{color:#f3f4f6}.dropdown-icon{font-size:.75rem;color:var(--text-secondary, #6b7280);transition:transform .2s ease}.classes-page[data-theme=dark] .dropdown-icon{color:#9ca3af}.dropdown-icon.open{transform:rotate(180deg)}.class-dropdown-menu{position:absolute;top:calc(100% + .5rem);left:0;background:var(--bg-secondary, white);border:1px solid var(--border-color, #e5e7eb);border-radius:8px;box-shadow:0 4px 12px #00000026;min-width:280px;max-height:400px;overflow-y:auto;z-index:1000;animation:dropdownFadeIn .2s ease}.classes-page[data-theme=dark] .class-dropdown-menu{background:#3d3d3d;border-color:#4a4a4a;box-shadow:0 4px 12px #0006}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.class-dropdown-item{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;cursor:pointer;transition:background-color .2s ease;border-bottom:1px solid var(--border-color, #f3f4f6)}.classes-page[data-theme=dark] .class-dropdown-item{border-bottom-color:#4a4a4a}.class-dropdown-item:last-child{border-bottom:none}.class-dropdown-item:hover{background:var(--hover-bg, #f9fafb)}.classes-page[data-theme=dark] .class-dropdown-item:hover{background:#4a4a4a}.class-dropdown-item.active{background:#667eea1a}.classes-page[data-theme=dark] .class-dropdown-item.active{background:#667eea33}.class-dropdown-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:.875rem;flex-shrink:0}.class-dropdown-info{flex:1;min-width:0}.class-dropdown-name{font-weight:600;font-size:.875rem;color:var(--text-primary, #1f2937);margin-bottom:.125rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.classes-page[data-theme=dark] .class-dropdown-name{color:#f3f4f6}.class-dropdown-teacher{font-size:.75rem;color:var(--text-secondary, #6b7280);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.classes-page[data-theme=dark] .class-dropdown-teacher{color:#9ca3af}.class-dropdown-unread{background:#ef4444;color:#fff;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:.6875rem;font-weight:600;flex-shrink:0}.chat-header-right{display:flex;align-items:center;gap:1rem}.teacher-name-header{font-size:.875rem;color:var(--text-secondary, #6b7280)}.classes-page[data-theme=dark] .teacher-name-header{color:#9ca3af}.chat-menu-btn{background:transparent;border:none;width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary, #6b7280);cursor:pointer;border-radius:6px;transition:all .2s ease}.classes-page[data-theme=dark] .chat-menu-btn{color:#9ca3af}.chat-menu-btn:hover{background:var(--hover-bg, #f3f4f6)}.classes-page[data-theme=dark] .chat-menu-btn:hover{background:#3d3d3d}.messages-area-v2{flex:1;overflow-y:auto;padding:1.5rem;background:var(--bg-secondary, white)}.classes-page[data-theme=dark] .messages-area-v2{background:#2d2d2d}.messages-area-v2::-webkit-scrollbar{width:8px}.messages-area-v2::-webkit-scrollbar-track{background:transparent}.messages-area-v2::-webkit-scrollbar-thumb{background:var(--text-tertiary, #d1d5db);border-radius:4px}.classes-page[data-theme=dark] .messages-area-v2::-webkit-scrollbar-thumb{background:#4a4a4a}.message-group{margin-bottom:1.5rem}.date-divider{display:flex;align-items:center;justify-content:center;margin:1.5rem 0 1rem;position:relative}.date-divider:before,.date-divider:after{content:"";flex:1;height:1px;background:var(--border-color, #e5e7eb)}.classes-page[data-theme=dark] .date-divider:before,.classes-page[data-theme=dark] .date-divider:after{background:#404040}.date-label{padding:0 1rem;font-size:.75rem;font-weight:600;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.5px}.classes-page[data-theme=dark] .date-label{color:#9ca3af}.message-v2{display:flex;gap:.75rem;margin-bottom:1rem;animation:messageFadeIn .3s ease;position:relative}@keyframes messageFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-v2:hover{background:var(--hover-bg, rgba(0, 0, 0, .02));margin-left:-.5rem;margin-right:-.5rem;padding:.25rem .5rem;border-radius:6px}.classes-page[data-theme=dark] .message-v2:hover{background:#ffffff08}.message-v2:hover .message-reply-btn{opacity:1;visibility:visible}.message-reply-btn{position:absolute;top:0;right:0;background:var(--bg-secondary, white);border:1px solid var(--border-color, #e5e7eb);width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary, #6b7280);cursor:pointer;border-radius:6px;transition:all .2s ease;font-size:.875rem;opacity:0;visibility:hidden;box-shadow:0 2px 4px #0000001a}.classes-page[data-theme=dark] .message-reply-btn{background:#3d3d3d;border-color:#4a4a4a}.message-reply-btn:hover{background:var(--primary-color, #667eea);color:#fff;border-color:var(--primary-color, #667eea);transform:scale(1.1)}.message-avatar-v2{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:1rem;flex-shrink:0}.message-content-v2{flex:1;min-width:0}.message-header-v2{display:flex;align-items:baseline;gap:.5rem;margin-bottom:.25rem}.message-sender-v2{font-weight:600;font-size:.9375rem;color:var(--text-primary, #1f2937)}.classes-page[data-theme=dark] .message-sender-v2{color:#f3f4f6}.message-time-v2{font-size:.75rem;color:var(--text-secondary, #6b7280);font-weight:400}.classes-page[data-theme=dark] .message-time-v2{color:#9ca3af}.message-text-v2{font-size:.9375rem;line-height:1.5;color:var(--text-primary, #374151);word-wrap:break-word}.classes-page[data-theme=dark] .message-text-v2{color:#e5e7eb}.message-reply-reference{background:var(--hover-bg, rgba(0, 0, 0, .05));border-left:3px solid var(--primary-color, #667eea);border-radius:6px;padding:.5rem .75rem;margin-bottom:.5rem;cursor:pointer;transition:background .2s ease}.classes-page[data-theme=dark] .message-reply-reference{background:#ffffff0d}.message-reply-reference:hover{background:var(--hover-bg, rgba(0, 0, 0, .08))}.classes-page[data-theme=dark] .message-reply-reference:hover{background:#ffffff14}.reply-reference-sender{font-size:.8125rem;font-weight:600;color:var(--primary-color, #667eea);margin-bottom:.25rem}.reply-reference-text{font-size:.875rem;color:var(--text-secondary, #6b7280);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.classes-page[data-theme=dark] .reply-reference-text{color:#9ca3af}.message-input-v2{padding:1rem 1.5rem 1.25rem;border-top:1px solid var(--border-color, #e5e7eb);background:var(--bg-secondary, white);flex-shrink:0}.classes-page[data-theme=dark] .message-input-v2{border-top-color:#404040;background:#2d2d2d}.reply-preview{display:flex;align-items:center;gap:.75rem;background:var(--hover-bg, #f3f4f6);border-left:3px solid var(--primary-color, #667eea);border-radius:8px;padding:.75rem 1rem;margin-bottom:.75rem;animation:slideDown .2s ease}.classes-page[data-theme=dark] .reply-preview{background:#3d3d3d}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.reply-preview-content{flex:1;min-width:0}.reply-preview-header{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;font-weight:600;color:var(--primary-color, #667eea);margin-bottom:.25rem}.reply-preview-header i{font-size:.75rem}.reply-preview-text{font-size:.875rem;color:var(--text-secondary, #6b7280);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.classes-page[data-theme=dark] .reply-preview-text{color:#9ca3af}.reply-preview-close{background:transparent;border:none;width:28px;height:28px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary, #6b7280);cursor:pointer;border-radius:50%;transition:all .2s ease;flex-shrink:0}.classes-page[data-theme=dark] .reply-preview-close{color:#9ca3af}.reply-preview-close:hover{background:var(--hover-bg-dark, #e5e7eb);color:var(--error-color, #ef4444)}.classes-page[data-theme=dark] .reply-preview-close:hover{background:#4a4a4a}.input-field-wrapper{display:flex;align-items:center;gap:.75rem;background:var(--bg-primary, white);border:2px solid var(--border-color, #e5e7eb);border-radius:24px;padding:.625rem 1rem;transition:all .2s ease;margin-bottom:.75rem}.classes-page[data-theme=dark] .input-field-wrapper{background:#1a1a1a;border-color:#4a4a4a}.input-field-wrapper:focus-within{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.attach-btn{background:transparent;border:none;width:36px;height:36px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary, #6b7280);cursor:pointer;border-radius:50%;transition:all .2s ease;font-size:1.125rem}.classes-page[data-theme=dark] .attach-btn{color:#9ca3af}.attach-btn:hover{background:var(--hover-bg, #f3f4f6);color:var(--primary-color, #667eea)}.classes-page[data-theme=dark] .attach-btn:hover{background:#3d3d3d;color:#667eea}.message-input-field{flex:1;background:transparent;border:none;outline:none;font-size:.9375rem;color:var(--text-primary, #1f2937);padding:.5rem 0;line-height:1.5}.classes-page[data-theme=dark] .message-input-field{color:#e5e7eb}.message-input-field::placeholder{color:var(--text-tertiary, #9ca3af)}.classes-page[data-theme=dark] .message-input-field::placeholder{color:#6b7280}.input-actions{display:flex;align-items:center;gap:.5rem}.input-action-btn{background:transparent;border:none;width:36px;height:36px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary, #6b7280);cursor:pointer;border-radius:50%;transition:all .2s ease;font-size:1.125rem}.classes-page[data-theme=dark] .input-action-btn{color:#9ca3af}.input-action-btn:hover{background:var(--hover-bg, #f3f4f6);color:var(--primary-color, #667eea)}.classes-page[data-theme=dark] .input-action-btn:hover{background:#3d3d3d;color:#667eea}.send-btn-v2{background:#e5e7eb;border:none;width:40px;height:40px;display:flex;align-items:center;justify-content:center;color:#9ca3af;cursor:pointer;border-radius:50%;transition:all .3s cubic-bezier(.4,0,.2,1);font-size:1rem}.classes-page[data-theme=dark] .send-btn-v2{background:#3d3d3d;color:#6b7280}.send-btn-v2.active{background:#667eea;color:#fff;transform:scale(1)}.send-btn-v2.active:hover:not(:disabled){background:#5a67d8;transform:scale(1.1);box-shadow:0 4px 12px #667eea66}.send-btn-v2:disabled{opacity:.5;cursor:not-allowed;transform:scale(1)}@media(max-width:768px){.chat-container-v2{height:calc(100vh - 200px)}.chat-header-v2{padding:.875rem 1rem;height:56px}.selected-class-name{font-size:.9375rem}.teacher-name-header{display:none}.messages-area-v2{padding:1rem}.message-input-v2{padding:.875rem 1rem}}@media(max-width:480px){.chat-container-v2{height:calc(100vh - 180px)}.chat-header-v2{padding:.75rem;height:52px}.selected-class-name{font-size:.875rem}.messages-area-v2{padding:.875rem}.message-v2{margin-bottom:.875rem}.message-avatar-v2{width:36px;height:36px;font-size:.9375rem}.message-sender-v2,.message-text-v2{font-size:.875rem}.message-input-v2{padding:.75rem}.input-toolbar{padding:.375rem;gap:.375rem}.toolbar-btn{width:26px;height:26px;font-size:.8125rem}.message-input-field{font-size:.875rem}.send-btn-v2{width:32px;height:32px}}.section-subtitle{font-size:.875rem;color:var(--text-secondary, #6b7280);font-weight:400;margin-left:.5rem}.classes-page[data-theme=dark] .section-subtitle{color:#9ca3af}.task-assigned-by{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--text-secondary, #6b7280);margin-bottom:1rem;padding:.5rem;background:var(--hover-bg, #f9fafb);border-radius:6px}.classes-page[data-theme=dark] .task-assigned-by{color:#9ca3af;background:#4a4a4a}.task-assigned-by i{color:#667eea}.task-assigned-by strong{color:var(--text-primary, #1f2937)}.classes-page[data-theme=dark] .task-assigned-by strong{color:#f3f4f6}.task-description{font-size:.875rem;color:var(--text-secondary, #6b7280);line-height:1.5;margin-bottom:1rem;padding:.75rem;background:var(--hover-bg, #f9fafb);border-radius:6px;border-left:3px solid #667eea}.classes-page[data-theme=dark] .task-description{color:#9ca3af;background:#4a4a4a}.test-assigned-by{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:var(--text-secondary, #6b7280);margin-bottom:1rem;padding:.5rem .75rem;background:var(--hover-bg, #f9fafb);border-radius:6px}.classes-page[data-theme=dark] .test-assigned-by{color:#9ca3af;background:#4a4a4a}.test-assigned-by i{color:#667eea}.test-assigned-by strong{color:var(--text-primary, #1f2937)}.classes-page[data-theme=dark] .test-assigned-by strong{color:#f3f4f6}.test-instructions{display:flex;align-items:flex-start;gap:.5rem;font-size:.8125rem;color:var(--text-secondary, #6b7280);margin-bottom:1rem;padding:.75rem;background:#fffbeb;border-radius:6px;border-left:3px solid #f59e0b}.classes-page[data-theme=dark] .test-instructions{color:#9ca3af;background:#f59e0b1a}.test-instructions i{color:#f59e0b;margin-top:.125rem;flex-shrink:0}.test-instructions span{flex:1;line-height:1.5}.test-assigned-by-small{font-size:.75rem;color:var(--text-secondary, #6b7280);display:flex;align-items:center;gap:.25rem;margin-top:.25rem}.classes-page[data-theme=dark] .test-assigned-by-small{color:#9ca3af}.test-assigned-by-small i{font-size:.6875rem;color:#667eea}.test-score-item.highlighted{background:#667eea1a;border:2px solid #667eea;animation:highlightPulse 2s ease-in-out}.classes-page[data-theme=dark] .test-score-item.highlighted{background:#667eea33}@keyframes highlightPulse{0%,to{box-shadow:0 0 #667eea66}50%{box-shadow:0 0 0 10px #667eea00}}.task-action-btn.primary{background:#667eea;color:#fff;flex:1;padding:.75rem;justify-content:center}.task-action-btn.primary:hover{background:#5a67d8;color:#fff}.task-actions{display:flex;gap:.5rem;flex-wrap:wrap}@media(max-width:768px){.section-subtitle{display:block;margin-left:0;margin-top:.25rem}.task-description{font-size:.8125rem}.test-instructions{font-size:.75rem}}.tasks-grid-classroom{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;width:100%;max-width:900px;margin:0 auto}.task-card-classroom{width:100%;max-width:420px;border-radius:16px;background:#fff;box-shadow:0 4px 10px #00000026;overflow:hidden;cursor:pointer;transition:box-shadow .3s ease,transform .3s ease;display:flex;flex-direction:column}.classes-page[data-theme=dark] .task-card-classroom{background:#2d2d2d;box-shadow:0 4px 10px #0000004d}.task-card-classroom:hover{box-shadow:0 8px 20px #0003;transform:translateY(-4px)}.classes-page[data-theme=dark] .task-card-classroom:hover{box-shadow:0 8px 20px #0006}.task-card-header-classroom{min-height:160px;padding:20px 24px;position:relative;display:flex;flex-direction:column;justify-content:space-between}.task-header-content{flex:1}.task-header-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.task-subject-title{font-family:Inter,Google Sans,Roboto,-apple-system,BlinkMacSystemFont,sans-serif;font-size:20px;font-weight:600;color:#fff;margin:0;opacity:.95;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.task-menu-btn{width:28px;height:28px;background:#fff3;border:none;border-radius:50%;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;color:#fff;transition:background .2s ease}.task-menu-btn:hover{background:#ffffff4d}.task-menu-btn i{font-size:14px}.task-title-classroom{font-family:Inter,Google Sans,Roboto,-apple-system,BlinkMacSystemFont,sans-serif;font-size:16px;font-weight:500;line-height:1.4;color:#fff;margin-bottom:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.task-teacher-info{display:flex;align-items:center;gap:10px}.task-teacher-avatar{width:32px;height:32px;border-radius:50%;background:#ffffff40;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:14px;flex-shrink:0}.task-teacher-name{font-family:Inter,Google Sans,Roboto,-apple-system,BlinkMacSystemFont,sans-serif;font-size:13px;font-weight:400;color:#fff;opacity:.9;line-height:1.4;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.task-priority-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:20px;font-size:11px;font-weight:700;letter-spacing:.5px;background:#ffffff40;color:#fff;align-self:flex-start;margin-top:8px}.task-priority-badge i{font-size:10px}.task-priority-badge.high{background:#ef4444e6}.task-priority-badge.medium{background:#f59e0be6}.task-priority-badge.low{background:#10b981e6}.task-card-footer-classroom{background:#fff;padding:16px 20px;display:flex;flex-direction:column;gap:12px;border-bottom-left-radius:16px;border-bottom-right-radius:16px}.classes-page[data-theme=dark] .task-card-footer-classroom{background:#3d3d3d}.task-footer-info{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px}.task-due-info{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-secondary, #6b7280);font-weight:500}.classes-page[data-theme=dark] .task-due-info{color:#9ca3af}.task-due-info i{font-size:12px;color:#667eea}.task-status-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600;text-transform:capitalize}.task-status-badge.pending{background:#fef2f2;color:#ef4444}.classes-page[data-theme=dark] .task-status-badge.pending{background:#ef444433}.task-status-badge.in-progress{background:#fffbeb;color:#f59e0b}.classes-page[data-theme=dark] .task-status-badge.in-progress{background:#f59e0b33}.task-status-badge.completed{background:#f0fdf4;color:#10b981}.classes-page[data-theme=dark] .task-status-badge.completed{background:#10b98133}.task-status-badge i{font-size:10px}.task-footer-actions{display:flex;gap:10px}.task-btn-details,.task-btn-submit{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;font-family:Inter,Google Sans,Roboto,-apple-system,BlinkMacSystemFont,sans-serif}.task-btn-details{background:var(--hover-bg, #f3f4f6);color:var(--text-primary, #374151);border:1px solid var(--border-color, #e5e7eb)}.classes-page[data-theme=dark] .task-btn-details{background:#4a4a4a;color:#e5e7eb;border-color:#5a5a5a}.task-btn-details:hover{background:var(--hover-bg-dark, #e5e7eb);transform:translateY(-1px)}.classes-page[data-theme=dark] .task-btn-details:hover{background:#5a5a5a}.task-btn-submit{background:#667eea;color:#fff;border:1px solid #667eea}.task-btn-submit:hover:not(:disabled){background:#5a67d8;border-color:#5a67d8;transform:translateY(-1px)}.task-btn-submit:disabled{background:var(--hover-bg, #e5e7eb);color:var(--text-secondary, #9ca3af);border-color:var(--border-color, #e5e7eb);cursor:not-allowed;opacity:.6}.classes-page[data-theme=dark] .task-btn-submit:disabled{background:#4a4a4a;color:#6b7280;border-color:#5a5a5a}.task-btn-details i,.task-btn-submit i{font-size:13px}@media(max-width:768px){.tasks-grid-classroom{grid-template-columns:1fr;gap:20px}.task-card-classroom{max-width:100%}.task-card-header-classroom{min-height:150px;padding:18px 20px}.task-subject-title{font-size:18px}.task-title-classroom{font-size:15px}.task-card-footer-classroom{padding:14px 18px}.task-footer-actions{gap:8px}.task-btn-details,.task-btn-submit{padding:9px 14px;font-size:13px}}@media(max-width:480px){.task-card-header-classroom{min-height:140px;padding:16px 18px}.task-subject-title{font-size:17px}.task-title-classroom{font-size:14px;margin-bottom:12px}.task-teacher-avatar{width:28px;height:28px;font-size:13px}.task-teacher-name{font-size:12px}.task-card-footer-classroom{padding:12px 16px}.task-due-info{font-size:12px}.task-status-badge{font-size:10px;padding:3px 8px}.task-btn-details,.task-btn-submit{padding:8px 12px;font-size:12px;gap:6px}.task-btn-details i,.task-btn-submit i{font-size:11px}}.tests-grid-classroom{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;width:100%;max-width:900px;margin:0 auto}.test-card-classroom{width:100%;border-radius:16px;background:#fff;box-shadow:0 4px 10px #00000026;overflow:hidden;cursor:pointer;transition:box-shadow .3s ease,transform .3s ease;display:flex;flex-direction:column}.classes-page[data-theme=dark] .test-card-classroom{background:#2d2d2d;box-shadow:0 4px 10px #0000004d}.test-card-classroom:hover{box-shadow:0 8px 20px #0003;transform:translateY(-4px)}.classes-page[data-theme=dark] .test-card-classroom:hover{box-shadow:0 8px 20px #0006}.test-card-header-classroom{min-height:180px;padding:20px 24px;position:relative;display:flex;flex-direction:column;justify-content:space-between}.test-header-content{flex:1}.test-header-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.test-subject-title{font-family:Inter,Google Sans,Roboto,-apple-system,BlinkMacSystemFont,sans-serif;font-size:20px;font-weight:600;color:#fff;margin:0;opacity:.95;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.test-menu-btn{width:28px;height:28px;background:#fff3;border:none;border-radius:50%;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;color:#fff;transition:background .2s ease}.test-menu-btn:hover{background:#ffffff4d}.test-menu-btn i{font-size:14px}.test-type-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:12px;font-size:10px;font-weight:700;letter-spacing:.5px;background:#ffffff40;color:#fff;align-self:flex-start;margin-bottom:10px}.test-type-badge i{font-size:10px}.test-title-classroom{font-family:Inter,Google Sans,Roboto,-apple-system,BlinkMacSystemFont,sans-serif;font-size:16px;font-weight:500;line-height:1.4;color:#fff;margin-bottom:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.test-teacher-info{display:flex;align-items:center;gap:10px}.test-teacher-avatar{width:32px;height:32px;border-radius:50%;background:#ffffff40;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:14px;flex-shrink:0}.test-teacher-name{font-family:Inter,Google Sans,Roboto,-apple-system,BlinkMacSystemFont,sans-serif;font-size:13px;font-weight:400;color:#fff;opacity:.9;line-height:1.4;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.test-countdown-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:20px;font-size:11px;font-weight:700;letter-spacing:.5px;background:#ffffff40;color:#fff;align-self:flex-start;margin-top:8px}.test-countdown-badge.urgent{background:#ef4444e6;animation:pulse 2s infinite}.test-countdown-badge.active{background:#10b981e6}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}.pulse-dot{animation:pulseDot 1.5s infinite}@keyframes pulseDot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.2)}}.test-score-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:700;letter-spacing:.5px;background:#ffffff40;color:#fff;align-self:flex-start;margin-top:8px}.test-score-badge.good{background:#10b981e6}.test-score-badge.average{background:#f59e0be6}.test-score-badge.poor{background:#ef4444e6}.test-card-footer-classroom{background:#fff;padding:16px 20px;display:flex;flex-direction:column;gap:12px;border-bottom-left-radius:16px;border-bottom-right-radius:16px}.classes-page[data-theme=dark] .test-card-footer-classroom{background:#3d3d3d}.test-footer-info{display:flex;flex-direction:column;gap:8px}.test-info-row{display:flex;justify-content:space-between;gap:12px}.test-info-item{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-secondary, #6b7280);font-weight:500;flex:1}.classes-page[data-theme=dark] .test-info-item{color:#9ca3af}.test-info-item i{font-size:11px;color:#667eea;width:14px;text-align:center}.test-score-bar{width:100%;height:6px;background:var(--border-color, #e5e7eb);border-radius:3px;overflow:hidden;margin-top:4px}.classes-page[data-theme=dark] .test-score-bar{background:#4a4a4a}.test-score-fill{height:100%;border-radius:3px;transition:width .3s ease}.test-footer-actions{display:flex;gap:10px}.test-btn-details,.test-btn-attend,.test-btn-results{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;font-family:Inter,Google Sans,Roboto,-apple-system,BlinkMacSystemFont,sans-serif}.test-btn-details{background:var(--hover-bg, #f3f4f6);color:var(--text-primary, #374151);border:1px solid var(--border-color, #e5e7eb)}.classes-page[data-theme=dark] .test-btn-details{background:#4a4a4a;color:#e5e7eb;border-color:#5a5a5a}.test-btn-details:hover{background:var(--hover-bg-dark, #e5e7eb);transform:translateY(-1px)}.classes-page[data-theme=dark] .test-btn-details:hover{background:#5a5a5a}.test-btn-attend{background:#667eea;color:#fff;border:1px solid #667eea}.test-btn-attend.active{background:#10b981;border-color:#10b981;animation:attendPulse 2s infinite}@keyframes attendPulse{0%,to{box-shadow:0 0 #10b98166}50%{box-shadow:0 0 0 8px #10b98100}}.test-btn-attend:hover:not(:disabled){background:#5a67d8;border-color:#5a67d8;transform:translateY(-1px)}.test-btn-attend.active:hover{background:#059669;border-color:#059669}.test-btn-attend:disabled{background:var(--hover-bg, #e5e7eb);color:var(--text-secondary, #9ca3af);border-color:var(--border-color, #e5e7eb);cursor:not-allowed;opacity:.6}.classes-page[data-theme=dark] .test-btn-attend:disabled{background:#4a4a4a;color:#6b7280;border-color:#5a5a5a}.test-btn-results{background:#667eea;color:#fff;border:1px solid #667eea}.test-btn-results:hover{background:#5a67d8;border-color:#5a67d8;transform:translateY(-1px)}.test-btn-details i,.test-btn-attend i,.test-btn-results i{font-size:13px}@media(max-width:768px){.tests-grid-classroom{grid-template-columns:1fr;gap:20px}.test-card-header-classroom{min-height:170px;padding:18px 20px}.test-subject-title{font-size:18px}.test-title-classroom{font-size:15px}.test-card-footer-classroom{padding:14px 18px}.test-footer-actions{gap:8px}.test-btn-details,.test-btn-attend,.test-btn-results{padding:9px 14px;font-size:13px}}@media(max-width:480px){.test-card-header-classroom{min-height:160px;padding:16px 18px}.test-subject-title{font-size:17px}.test-title-classroom{font-size:14px;margin-bottom:12px}.test-teacher-avatar{width:28px;height:28px;font-size:13px}.test-teacher-name{font-size:12px}.test-card-footer-classroom{padding:12px 16px}.test-info-item{font-size:11px}.test-btn-details,.test-btn-attend,.test-btn-results{padding:8px 12px;font-size:12px;gap:6px}.test-btn-details i,.test-btn-attend i,.test-btn-results i{font-size:11px}}.test-view .section-header{display:flex;flex-direction:column;align-items:flex-start;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid var(--border-color, #e5e7eb)}.classes-page[data-theme=dark] .test-view .section-header{border-bottom-color:#404040}.test-view .section-header h2{font-size:1.875rem;font-weight:700;color:var(--text-primary, #1f2937);margin:0 0 .5rem;transition:color .3s ease}.classes-page[data-theme=dark] .test-view .section-header h2{color:#f3f4f6}.test-view .tests-section{margin-bottom:3rem}.test-view .section-title{display:flex;align-items:center;gap:.75rem;font-size:1.25rem;font-weight:600;color:var(--text-primary, #1f2937);margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:2px solid var(--border-color, #e5e7eb);transition:color .3s ease,border-color .3s ease}.classes-page[data-theme=dark] .test-view .section-title{color:#f3f4f6;border-bottom-color:#404040}.test-view .section-title i{font-size:1.125rem;color:#667eea}.task-view .section-header{display:flex;flex-direction:column;align-items:flex-start;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid var(--border-color, #e5e7eb)}.classes-page[data-theme=dark] .task-view .section-header{border-bottom-color:#404040}.task-view .section-header h2{font-size:1.875rem;font-weight:700;color:var(--text-primary, #1f2937);margin:0 0 .5rem;transition:color .3s ease}.classes-page[data-theme=dark] .task-view .section-header h2{color:#f3f4f6}.score-view .section-header{display:flex;flex-direction:column;align-items:flex-start;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid var(--border-color, #e5e7eb)}.classes-page[data-theme=dark] .score-view .section-header{border-bottom-color:#404040}.score-view .section-header h2{font-size:1.875rem;font-weight:700;color:var(--text-primary, #1f2937);margin:0 0 .5rem;transition:color .3s ease}.classes-page[data-theme=dark] .score-view .section-header h2{color:#f3f4f6}@media(max-width:768px){.test-view .section-header h2,.task-view .section-header h2,.score-view .section-header h2{font-size:1.5rem}.test-view .section-title{font-size:1.125rem}.test-view .section-title i{font-size:1rem}}@media(max-width:480px){.test-view .section-header h2,.task-view .section-header h2,.score-view .section-header h2{font-size:1.375rem}.test-view .section-title{font-size:1rem}.test-view .section-title i{font-size:.9375rem}}.classes-content:has(.content-left:only-child){grid-template-columns:1fr}@supports not (selector(:has(*))){.classes-content.no-calendar{grid-template-columns:1fr}}.creation-wizard{max-width:640px;margin:0 auto;padding:var(--spacing-xl, 24px)}.wizard-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-2xl, 32px)}.wizard-progress{display:flex;justify-content:center;gap:var(--spacing-xl, 24px);flex-grow:1}.btn-close{background:transparent;border:none;font-size:1.5rem;color:var(--text-secondary, #6b7280);cursor:pointer;padding:var(--spacing-xs, 4px);line-height:1;border-radius:var(--radius-sm, 4px);transition:var(--transition-fast, .1s ease)}.btn-close:hover{background:var(--bg-secondary, #f3f4f6);color:var(--text-primary, #111827)}.wizard-step{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs, 4px)}.step-number{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem;background:var(--bg-secondary, #f3f4f6);color:var(--text-secondary, #6b7280);transition:var(--transition-normal, .2s ease)}.wizard-step.active .step-number{background:var(--primary-color, #2563eb);color:#fff}.wizard-step.completed .step-number{background:#22c55e;color:#fff}.step-label{font-size:.75rem;color:var(--text-secondary, #6b7280)}.wizard-step.active .step-label{color:var(--primary-color, #2563eb);font-weight:600}.wizard-content h2{font-size:1.5rem;font-weight:700;margin-bottom:var(--spacing-xs, 4px);color:var(--text-primary, #111827)}.wizard-subtitle{color:var(--text-secondary, #6b7280);margin-bottom:var(--spacing-xl, 24px)}.current-class-banner{display:flex;align-items:center;gap:var(--spacing-md, 12px);background:#2563eb0f;border:1px solid rgba(37,99,235,.2);border-radius:var(--radius-md, 8px);padding:var(--spacing-md, 12px) var(--spacing-lg, 16px);margin-bottom:var(--spacing-lg, 16px)}.banner-icon{font-size:1.5rem;flex-shrink:0}.current-class-banner strong{display:block;font-size:.875rem;font-weight:600;color:var(--primary-color, #2563eb)}.current-class-banner p{font-size:.8125rem;color:var(--text-secondary, #6b7280);margin:0}.mode-options{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg, 16px)}@media(max-width:640px){.mode-options{grid-template-columns:1fr}}.mode-card{border:2px solid var(--bg-secondary, #e5e7eb);border-radius:var(--radius-xl, 16px);padding:var(--spacing-xl, 24px);text-align:left;cursor:pointer;background:var(--bg-primary, #fff);transition:var(--transition-normal, .2s ease);position:relative}.mode-card:hover:not(:disabled){border-color:var(--primary-color, #2563eb);box-shadow:var(--shadow-md, 0 4px 6px -1px rgba(0, 0, 0, .1));transform:translateY(-2px)}.mode-card:disabled{opacity:.6;cursor:not-allowed}.mode-icon{font-size:2rem;margin-bottom:var(--spacing-md, 12px)}.mode-card h3{font-size:1.125rem;font-weight:600;margin-bottom:var(--spacing-sm, 8px);color:var(--text-primary, #111827)}.mode-card p{font-size:.875rem;color:var(--text-secondary, #6b7280);line-height:1.5;margin-bottom:var(--spacing-md, 12px)}.mode-badge{display:inline-block;padding:2px 10px;border-radius:9999px;font-size:.75rem;font-weight:600}.mode-badge.available{background:#22c55e1a;color:#16a34a}.mode-badge.coming-soon{background:#f59e0b1a;color:#d97706}.form-group{margin-bottom:var(--spacing-lg, 16px)}.form-group label{display:block;font-weight:600;font-size:.875rem;margin-bottom:var(--spacing-xs, 4px);color:var(--text-primary, #111827)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:var(--spacing-sm, 8px) var(--spacing-md, 12px);border:1.5px solid var(--bg-secondary, #d1d5db);border-radius:var(--radius-md, 8px);font-size:.9375rem;background:var(--bg-primary, #fff);color:var(--text-primary, #111827);transition:var(--transition-fast, .15s ease);box-sizing:border-box}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color, #2563eb);box-shadow:0 0 0 3px #2563eb26}.form-group input.error,.form-group select.error{border-color:#ef4444}.error-text{display:block;color:#ef4444;font-size:.8125rem;margin-top:var(--spacing-xs, 4px)}.error-banner{background:#ef444414;border:1px solid rgba(239,68,68,.2);color:#dc2626;padding:var(--spacing-sm, 8px) var(--spacing-md, 12px);border-radius:var(--radius-md, 8px);margin-bottom:var(--spacing-lg, 16px);font-size:.875rem}.wizard-actions{display:flex;justify-content:flex-end;gap:var(--spacing-md, 12px);margin-top:var(--spacing-xl, 24px)}.btn-primary{padding:var(--spacing-sm, 8px) var(--spacing-xl, 24px);background:var(--primary-color, #2563eb);color:#fff;border:none;border-radius:var(--radius-md, 8px);font-weight:600;font-size:.9375rem;cursor:pointer;transition:var(--transition-fast, .15s ease)}.btn-primary:hover:not(:disabled){background:#1d4ed8}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{padding:var(--spacing-sm, 8px) var(--spacing-xl, 24px);background:transparent;color:var(--text-secondary, #6b7280);border:1.5px solid var(--bg-secondary, #d1d5db);border-radius:var(--radius-md, 8px);font-weight:600;font-size:.9375rem;cursor:pointer;transition:var(--transition-fast, .15s ease)}.btn-secondary:hover:not(:disabled){background:var(--bg-secondary, #f3f4f6)}.selected-class-info{margin-top:var(--spacing-md, 12px);padding:var(--spacing-md, 12px);background:var(--bg-secondary, #f9fafb);border:1px solid var(--border-color, #e5e7eb);border-radius:var(--radius-md, 8px)}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md, 12px)}.info-label{font-size:.6875rem;text-transform:uppercase;letter-spacing:.025em;color:var(--text-secondary, #6b7280);font-weight:700}.info-value{font-size:.875rem;color:var(--text-primary, #111827);font-weight:500}@media(max-width:480px){.info-grid{grid-template-columns:1fr}}.live-class-dashboard{padding:var(--spacing-xl, 24px);max-width:1200px;margin:0 auto}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-2xl, 32px)}.dashboard-header h1{font-size:1.75rem;font-weight:700;color:var(--text-primary, #111827)}.dashboard-subtitle{color:var(--text-secondary, #6b7280);margin-top:var(--spacing-xs, 4px)}.btn-create{display:flex;align-items:center;gap:var(--spacing-sm, 8px);padding:var(--spacing-sm, 10px) var(--spacing-lg, 20px);background:var(--primary-color, #2563eb);color:#fff;border:none;border-radius:var(--radius-lg, 12px);font-weight:600;font-size:.9375rem;cursor:pointer;transition:var(--transition-normal, .2s ease);box-shadow:var(--shadow-md, 0 4px 6px -1px rgba(0, 0, 0, .1))}.btn-create:hover{background:#1d4ed8;transform:translateY(-1px);box-shadow:var(--shadow-lg, 0 10px 15px -3px rgba(0, 0, 0, .1))}.session-section{margin-bottom:var(--spacing-2xl, 32px)}.section-title{font-size:1.125rem;font-weight:600;color:var(--text-primary, #111827);margin-bottom:var(--spacing-lg, 16px);display:flex;align-items:center;gap:var(--spacing-sm, 8px)}.session-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-lg, 16px)}@media(max-width:640px){.session-grid{grid-template-columns:1fr}}.session-card{background:var(--bg-primary, #fff);border:1px solid rgba(0,0,0,.06);border-radius:var(--radius-xl, 16px);padding:var(--spacing-lg, 20px);cursor:pointer;transition:var(--transition-normal, .2s ease);box-shadow:var(--shadow-sm, 0 1px 3px rgba(0, 0, 0, .07))}.session-card:hover{box-shadow:var(--shadow-md, 0 4px 6px -1px rgba(0, 0, 0, .1));transform:translateY(-2px)}.session-card.live-card{border-left:4px solid #ef4444;background:linear-gradient(135deg,#fff 90%,#ef44440a)}.session-card.past-card{opacity:.7}.session-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md, 12px)}.session-card h3{font-size:1.0625rem;font-weight:600;color:var(--text-primary, #111827);margin-bottom:2px}.session-metadata{display:flex;flex-wrap:wrap;gap:var(--spacing-sm, 8px);margin-bottom:var(--spacing-sm, 8px)}.session-subject{font-size:.75rem;font-weight:600;color:var(--primary-color, #2563eb);background:#2563eb14;padding:1px 6px;border-radius:4px}.session-class{font-size:.75rem;color:var(--text-secondary, #6b7280);display:flex;align-items:center}.session-class:before{content:"•";margin-right:var(--spacing-sm, 8px);opacity:.5}.session-description{font-size:.8125rem;color:var(--text-secondary, #6b7280);margin-bottom:var(--spacing-sm, 8px);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.session-time{font-size:.8125rem;color:var(--text-secondary, #6b7280)}.session-mode{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary, #6b7280);font-weight:600}.status-badge{display:inline-block;padding:2px 10px;border-radius:9999px;font-size:.75rem;font-weight:600}.badge-scheduled{background:#3b82f61a;color:#2563eb}.badge-starting{background:#f59e0b1a;color:#d97706}.badge-live{background:#ef44441f;color:#dc2626;animation:pulse-bg 2s ease-in-out infinite}@keyframes pulse-bg{0%,to{opacity:1}50%{opacity:.7}}.badge-ending{background:#f59e0b1a;color:#d97706}.badge-ended{background:#6b72801a;color:#6b7280}.badge-failed{background:#ef444414;color:#ef4444}.live-dot{width:10px;height:10px;background:#ef4444;border-radius:50%;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%{box-shadow:0 0 #ef444466}70%{box-shadow:0 0 0 8px #ef444400}to{box-shadow:0 0 #ef444400}}.session-card-actions{margin-top:var(--spacing-md, 12px);display:flex;justify-content:space-between;align-items:center}.btn-delete-small{background:transparent;border:none;cursor:pointer;font-size:1.1rem;opacity:.5;transition:opacity .2s;padding:4px}.btn-delete-small:hover{opacity:1}.btn-start{padding:var(--spacing-xs, 6px) var(--spacing-lg, 16px);background:var(--primary-color, #2563eb);color:#fff;border:none;border-radius:var(--radius-md, 8px);font-weight:600;font-size:.8125rem;cursor:pointer;transition:var(--transition-fast, .15s ease)}.btn-start:hover{background:#1d4ed8}.btn-go-live{width:100%;padding:var(--spacing-sm, 8px);background:#ef4444;color:#fff;border:none;border-radius:var(--radius-md, 8px);font-weight:600;font-size:.875rem;cursor:pointer;margin-top:var(--spacing-md, 12px);transition:var(--transition-fast, .15s ease)}.btn-go-live:hover{background:#dc2626}.empty-state{text-align:center;padding:var(--spacing-2xl, 48px) var(--spacing-xl, 24px);background:var(--bg-secondary, #f9fafb);border-radius:var(--radius-xl, 16px);border:2px dashed rgba(0,0,0,.08)}.empty-state p{color:var(--text-secondary, #6b7280);margin-bottom:var(--spacing-md, 12px)}.dashboard-loading{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-2xl, 48px);color:var(--text-secondary, #6b7280)}.loading-spinner{width:32px;height:32px;border:3px solid var(--bg-secondary, #e5e7eb);border-top-color:var(--primary-color, #2563eb);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:var(--spacing-md, 12px)}@keyframes spin{to{transform:rotate(360deg)}}.dashboard-error{text-align:center;padding:var(--spacing-xl, 24px);background:#ef44440d;border-radius:var(--radius-lg, 12px);color:#dc2626}.dashboard-error button{margin-top:var(--spacing-md, 12px);padding:var(--spacing-xs, 6px) var(--spacing-lg, 16px);background:#dc2626;color:#fff;border:none;border-radius:var(--radius-md, 8px);cursor:pointer}.streaming-interface{padding:20px;max-width:100%;width:100%;display:flex;flex-direction:column;box-sizing:border-box}.streaming-interface.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;color:var(--text-secondary, #6b7280)}.streaming-top-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg, 16px);padding:var(--spacing-md, 12px) var(--spacing-lg, 16px);background:var(--bg-primary, #fff);border-radius:var(--radius-lg, 12px);box-shadow:var(--shadow-sm, 0 1px 3px rgba(0, 0, 0, .07))}.title-group{display:flex;align-items:center;gap:var(--spacing-md, 12px);flex-wrap:wrap}.streaming-info h2{font-size:1.2rem;font-weight:700;color:var(--text-primary, #111827);margin:0}.subject-tag{font-size:.72rem;font-weight:700;color:var(--primary-color, #2563eb);background:#2563eb1a;padding:3px 9px;border-radius:99px}.class-tag{font-size:.72rem;font-weight:600;color:var(--text-secondary, #6b7280);background:var(--bg-secondary, #f3f4f6);padding:3px 9px;border-radius:99px}.streaming-stats{display:flex;align-items:center;gap:var(--spacing-md, 12px);margin-top:4px;flex-wrap:wrap}.live-indicator{display:flex;align-items:center;gap:5px;color:#ef4444;font-weight:800;font-size:.8rem;letter-spacing:.06em;background:#ef444414;padding:3px 10px;border-radius:99px}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.85)}}.elapsed-time{font-family:SF Mono,Menlo,monospace;font-size:.85rem;color:var(--text-secondary, #6b7280);background:var(--bg-secondary, #f3f4f6);padding:3px 9px;border-radius:var(--radius-sm, 4px)}.participant-count{display:flex;align-items:center;gap:4px;font-size:.82rem;font-weight:600;color:var(--text-secondary, #6b7280);background:var(--bg-secondary, #f3f4f6);padding:3px 9px;border-radius:99px}.btn-start-stream{padding:10px 28px;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;border-radius:var(--radius-lg, 12px);font-weight:700;font-size:.95rem;cursor:pointer;transition:.2s ease;box-shadow:0 4px 16px #ef444459}.btn-start-stream:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px #ef444473}.btn-start-stream:disabled{opacity:.6;cursor:not-allowed}.btn-end-stream{padding:10px 28px;background:var(--bg-primary, #fff);color:#ef4444;border:2px solid #ef4444;border-radius:var(--radius-lg, 12px);font-weight:700;font-size:.95rem;cursor:pointer;transition:.2s ease}.btn-end-stream:hover:not(:disabled){background:#ef44440f}.stream-error-banner{background:#ef444412;border:1px solid rgba(239,68,68,.2);color:#dc2626;padding:10px 14px;border-radius:var(--radius-md, 8px);margin-bottom:var(--spacing-lg, 16px);font-size:.875rem}.streaming-main{flex:1;display:flex;gap:20px;align-items:stretch;min-height:0}.streaming-content-wrapper{flex:1;display:flex;flex-direction:column;gap:12px;min-width:0}.stream-preview-area{flex:1;background:#000;border-radius:16px;overflow:hidden;display:flex;align-items:center;justify-content:center;position:relative}.stream-preview-placeholder{text-align:center;color:#9ca3af;padding:48px}.placeholder-icon{font-size:3.5rem;margin-bottom:12px}.stream-preview-placeholder h3{color:#e5e7eb;font-size:1.25rem;margin-bottom:8px}.stream-preview-placeholder p{font-size:.875rem}.youtube-link{margin-top:12px}.youtube-link a{color:#3b82f6}.media-control-bar{display:flex;justify-content:center;align-items:center;gap:12px;padding:12px 20px;background:var(--bg-primary, #fff);border-radius:14px;box-shadow:0 4px 12px #0000000d;flex-shrink:0}.media-ctrl-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 16px;background:var(--bg-secondary, #f3f4f6);border:none;border-radius:10px;cursor:pointer;color:var(--text-primary, #111827);font-size:.7rem;font-weight:600;transition:all .18s ease;min-width:68px;-webkit-user-select:none;user-select:none}.media-ctrl-btn:hover{background:#e5e7eb;transform:translateY(-1px)}.media-ctrl-btn.ctrl-off{background:#ef44441a;color:#dc2626}.media-ctrl-btn.ctrl-active{background:#2563eb1a;color:#2563eb}.ctrl-icon{display:flex;align-items:center;justify-content:center;position:relative}.ctrl-separator{width:1px;height:36px;background:var(--border-color, #e5e7eb);margin:0 4px}.unread-badge{position:absolute;top:-6px;right:-8px;background:#ef4444;color:#fff;font-size:.6rem;font-weight:700;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center}.chat-panel{width:300px;min-width:280px;background:var(--bg-primary, #fff);border-radius:var(--radius-xl, 16px);box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .09));display:flex;flex-direction:column;overflow:hidden;animation:slideInChat .25s ease}@keyframes slideInChat{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.chat-panel-header{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:1px solid var(--border-color, #e5e7eb);font-weight:700;font-size:.9rem;color:var(--text-primary, #111827);background:var(--bg-secondary, #f9fafb)}.chat-close-btn{background:none;border:none;cursor:pointer;color:var(--text-secondary, #6b7280);font-size:1rem;line-height:1;padding:2px 6px;border-radius:4px}.chat-close-btn:hover{background:var(--bg-secondary, #f3f4f6);color:var(--text-primary, #111827)}.chat-messages{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:8px;scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}.chat-avatar-placeholder{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#6366f1,#a855f7);color:#fff;font-size:.75rem;font-weight:700}.chat-sender-name{font-size:.8rem;font-weight:600;color:var(--text-primary, #111827)}.chat-msg.chat-msg-mine .chat-text{background:linear-gradient(135deg,#3b82f6,#6366f1);color:#fff;border-top-left-radius:14px;border-top-right-radius:4px}.chat-system-text{font-size:.75rem;color:var(--text-secondary, #6b7280);text-align:center;font-style:italic;margin:4px 0}.chat-input-row{display:flex;gap:8px;padding:12px;border-top:1px solid var(--border-color, #e5e7eb);background:var(--bg-secondary, #f9fafb)}.chat-input{flex:1;padding:8px 12px;border:1px solid var(--border-color, #e5e7eb);border-radius:8px;font-size:.85rem;outline:none;background:var(--bg-primary, #fff);color:var(--text-primary, #111827);transition:border-color .18s}.chat-send-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:linear-gradient(135deg,#2563eb,#3b82f6);color:#fff;border:none;border-radius:8px;cursor:pointer;transition:.18s;flex-shrink:0}.chat-send-btn:disabled{opacity:.45;cursor:not-allowed}.session-details-bar{display:flex;gap:20px;padding:12px 20px;background:var(--bg-primary, #fff);border-radius:12px;border:1px solid var(--border-color, #e5e7eb);font-size:.85rem;flex-wrap:wrap;flex-shrink:0}.detail-label{color:var(--text-secondary, #6b7280);margin-right:4px}.detail-value{font-weight:600;color:var(--text-primary, #111827)}.connection-connected{color:#22c55e}.connection-failed,.cam-status-off{color:#ef4444}.participants-list{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:12px}.participant-item{display:flex;align-items:center;gap:12px;padding:8px;border-radius:8px;transition:background-color .2s}.participant-item:hover{background-color:var(--bg-secondary, #f1f5f9)}.participant-info{display:flex;flex-direction:column}.participant-name{font-size:.9rem;font-weight:500;color:var(--text-primary, #111827)}.participant-role{font-size:.75rem;color:var(--text-secondary, #6b7280)}.panel-loading{padding:20px;text-align:center;color:var(--text-secondary, #6b7280);font-size:.85rem}.streaming-side-panels{display:flex;gap:16px;align-items:stretch;flex-shrink:0}.chat-panel{width:340px;flex-shrink:0}@media(max-width:768px){.streaming-main,.streaming-side-panels{flex-direction:column}.chat-panel{width:100%;min-width:unset;height:320px}}.hand-raised-indicator{display:flex;align-items:center;gap:6px;background:#fef3c7;color:#92400e;padding:3px 10px;border-radius:99px;font-size:.8rem;font-weight:700;cursor:pointer;border:1px solid #fde68a;animation:bounce 2s infinite}.hand-raised-indicator:hover{background:#fde68a}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-5px)}60%{transform:translateY(-3px)}}.hand-raised-label{display:inline-flex;align-items:center;gap:4px;color:#92400e;background:#fef3c7;padding:2px 8px;border-radius:4px;font-size:.65rem;font-weight:700;margin-left:8px;vertical-align:middle}.notify-pulse{animation:notifyPulse 1.5s infinite}@keyframes notifyPulse{0%{transform:scale(1);box-shadow:0 0 #f59e0b66}70%{transform:scale(1.05);box-shadow:0 0 0 10px #f59e0b00}to{transform:scale(1);box-shadow:0 0 #f59e0b00}}.audio-request-indicator{display:flex;align-items:center;gap:6px;background:#dcfce7;color:#15803d;padding:3px 10px;border-radius:99px;font-size:.8rem;font-weight:700;cursor:pointer;border:1px solid #bbf7d0;margin-left:8px}.btn-action-mic{margin-left:8px;padding:4px 10px;border-radius:6px;font-size:.7rem;font-weight:700;cursor:pointer;border:none;transition:all .2s}.btn-action-mic.grant{background:#2563eb;color:#fff}.btn-action-mic.grant:hover{background:#1d4ed8}.btn-action-mic.revoke{background:#ef4444;color:#fff}.mic-active-status{display:inline-flex;align-items:center;gap:6px;margin-left:8px}.live-mic-dot{width:6px;height:6px;background:#22c55e;border-radius:50%;animation:blink 1s infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:.3}}.btn-lower-hand{background:none;border:none;color:#92400e;font-weight:700;cursor:pointer;margin-left:4px;padding:0 2px}.student-live-view{padding:var(--spacing-lg, 20px);max-width:1600px;width:100%;margin:0 auto;box-sizing:border-box}.student-live-view.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;color:var(--text-secondary, #6b7280)}.student-live-view h1{font-size:1.5rem;font-weight:700;color:var(--text-primary, #111827);margin-bottom:var(--spacing-xl, 24px)}.student-section{margin-bottom:var(--spacing-2xl, 32px)}.student-section h2{font-size:1.1rem;font-weight:700;color:var(--text-primary, #111827);margin-bottom:var(--spacing-lg, 16px);display:flex;align-items:center;gap:var(--spacing-sm, 8px)}.student-session-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-lg, 16px)}.student-session-card{background:var(--bg-primary, #fff);border:1px solid rgba(0,0,0,.06);border-radius:var(--radius-xl, 16px);padding:var(--spacing-lg, 20px);box-shadow:var(--shadow-sm, 0 1px 3px rgba(0, 0, 0, .07));transition:.2s ease}.student-session-card:hover{box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .1));transform:translateY(-2px)}.student-session-card.live-session{border-left:4px solid #ef4444;background:linear-gradient(135deg,#fff 85%,#ef444408)}.student-session-card h3{font-size:1rem;font-weight:700;color:var(--text-primary, #111827);margin-bottom:4px}.student-card-desc{font-size:.8125rem;color:var(--text-secondary, #6b7280);line-height:1.4;margin-bottom:8px}.student-card-time{font-size:.8125rem;color:var(--text-secondary, #6b7280)}.student-card-status{margin-bottom:8px}.live-badge-student{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;background:#ef44441a;color:#dc2626;border-radius:9999px;font-weight:700;font-size:.72rem;letter-spacing:.05em}.live-dot-sm{width:7px;height:7px;background:#ef4444;border-radius:50%;animation:pulse 1.4s ease-in-out infinite}.live-dot{width:9px;height:9px;background:#ef4444;border-radius:50%;display:inline-block;animation:pulse 1.4s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.8)}}.btn-watch{width:100%;padding:10px;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;border-radius:var(--radius-md, 8px);font-weight:700;font-size:.9375rem;cursor:pointer;margin-top:12px;transition:.15s ease;box-shadow:0 3px 10px #ef444440}.btn-watch:hover{transform:translateY(-1px);box-shadow:0 5px 14px #ef444459}.student-player-container{max-width:100%;width:100%}.student-player-topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;gap:12px}.btn-back{background:none;border:none;color:var(--text-secondary, #6b7280);font-size:.875rem;cursor:pointer;padding:6px 10px;border-radius:8px;transition:.15s;white-space:nowrap}.btn-back:hover{background:var(--bg-secondary, #f3f4f6);color:var(--text-primary, #111827)}.player-header-center{display:flex;align-items:center;gap:10px;flex:1}.player-header-center h2{font-size:1.15rem;font-weight:700;color:var(--text-primary, #111827);margin:0}.btn-info-toggle{background:var(--bg-secondary, #f3f4f6);border:none;border-radius:50%;width:34px;height:34px;font-size:1rem;cursor:pointer;color:var(--text-secondary, #6b7280);display:flex;align-items:center;justify-content:center;transition:.15s;flex-shrink:0}.btn-info-toggle:hover{background:var(--bg-secondary, #e5e7eb);color:var(--text-primary, #111827)}.session-info-drawer{background:var(--bg-secondary, #f9fafb);border-radius:var(--radius-lg, 12px);padding:14px 16px;margin-bottom:12px;border:1px solid rgba(0,0,0,.06);animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}.info-item{display:flex;flex-direction:column;gap:2px}.info-label{font-size:.72rem;font-weight:600;color:var(--text-secondary, #9ca3af);text-transform:uppercase;letter-spacing:.04em}.info-value{font-size:.875rem;font-weight:600;color:var(--text-primary, #111827)}.live-text{color:#ef4444}.student-main-layout{display:flex;gap:var(--spacing-xl, 24px);align-items:stretch;margin-bottom:var(--spacing-lg, 16px);width:100%}.youtube-player-wrapper{flex:1;position:relative;width:100%;padding-bottom:56.25%;background:#0f0f14;border-radius:var(--radius-xl, 16px);overflow:hidden;min-height:200px}.youtube-iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none}.player-placeholder{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#9ca3af;text-align:center}.player-placeholder .placeholder-icon{font-size:3rem;margin-bottom:8px}.player-placeholder h3{color:#e5e7eb;margin-bottom:4px}.self-cam-pip{position:absolute;bottom:16px;right:16px;width:180px;height:135px;border-radius:10px;overflow:hidden;border:2px solid rgba(255,255,255,.3);background:#000;box-shadow:0 4px 16px #00000080;z-index:10;animation:pipIn .25s ease}@keyframes pipIn{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.self-cam-video{width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}.self-cam-close{position:absolute;top:4px;right:4px;background:#0009;color:#fff;border:none;border-radius:50%;width:22px;height:22px;font-size:.65rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.self-cam-close:hover{background:#ef4444cc}.fullscreen-btn-overlay{position:absolute;top:10px;right:10px;background:#0000008c;color:#fff;border:none;border-radius:7px;width:34px;height:34px;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .2s;z-index:5}.youtube-player-wrapper:hover .fullscreen-btn-overlay{opacity:1}.student-chat-panel{width:280px;min-width:260px;background:var(--bg-primary, #fff);border-radius:var(--radius-xl, 16px);box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .09));display:flex;flex-direction:column;height:100%;min-height:350px;overflow:hidden;animation:slideInChat .22s ease}@keyframes slideInChat{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}.chat-panel-header{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-bottom:1px solid var(--border-color, #e5e7eb);font-weight:700;font-size:.85rem;color:var(--text-primary, #111827);background:var(--bg-secondary, #f9fafb)}.chat-close-btn{background:none;border:none;cursor:pointer;color:var(--text-secondary, #6b7280);font-size:.9rem;padding:2px 5px;border-radius:4px}.chat-close-btn:hover{background:var(--bg-secondary, #f3f4f6)}.chat-messages{flex:1;overflow-y:auto;padding:10px;display:flex;flex-direction:column;gap:8px;scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}.chat-msg{display:flex;flex-direction:column;gap:4px;max-width:95%;align-self:flex-start}.chat-msg.chat-msg-mine{align-self:flex-end}.chat-msg.chat-msg-consecutive{margin-top:-6px}.chat-msg.chat-msg-system{align-self:center;max-width:100%}.chat-msg-header{display:flex;align-items:center;gap:8px;margin-bottom:2px}.chat-avatar,.chat-avatar-placeholder{width:24px;height:24px;border-radius:50%;object-fit:cover;flex-shrink:0}.chat-avatar-placeholder{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#10b981,#3b82f6);color:#fff;font-size:.75rem;font-weight:700}.chat-avatar-placeholder.teacher-avatar{background:linear-gradient(135deg,#f59e0b,#ef4444)}.chat-sender-info{display:flex;align-items:baseline;gap:6px}.chat-sender-name{font-size:.8rem;font-weight:600;color:var(--text-primary, #111827);display:flex;align-items:center;gap:6px}.teacher-badge{background:#ef44441a;color:#ef4444;font-size:.6rem;padding:2px 6px;border-radius:4px;font-weight:700}.chat-time{font-size:.65rem;color:var(--text-secondary, #9ca3af)}.chat-msg.chat-msg-mine .chat-sender-info,.chat-msg.chat-msg-mine .chat-msg-header{flex-direction:row-reverse}.chat-text-wrapper{display:flex;flex-direction:column;margin-left:32px}.chat-msg.chat-msg-mine .chat-text-wrapper{margin-left:0;margin-right:32px;align-items:flex-end}.chat-msg.chat-msg-system .chat-text-wrapper{margin-left:0;align-items:center}.chat-text{background:var(--bg-secondary, #f1f5f9);padding:8px 14px;border-radius:4px 14px 14px;font-size:.85rem;color:var(--text-primary, #111827);line-height:1.4;word-break:break-word;margin:0}.chat-msg-mine .chat-text{background:linear-gradient(135deg,#3b82f6,#6366f1);color:#fff;border-top-left-radius:14px;border-top-right-radius:4px}.chat-msg-system .chat-text,.chat-system-text{background:#2563eb12;color:var(--text-secondary, #6b7280);font-size:.75rem;border-radius:8px;text-align:center;font-style:italic;margin:4px 0;padding:4px 10px}.chat-input-row{display:flex;gap:7px;padding:10px;border-top:1px solid var(--border-color, #e5e7eb);background:var(--bg-secondary, #f9fafb)}.chat-input{flex:1;padding:7px 11px;border:1px solid var(--border-color, #e5e7eb);border-radius:8px;font-size:.82rem;outline:none;background:var(--bg-primary, #fff);color:var(--text-primary, #111827);transition:border-color .15s}.chat-input:focus{border-color:var(--primary-color, #2563eb)}.chat-send-btn{display:flex;align-items:center;justify-content:center;width:33px;height:33px;padding:0;background:linear-gradient(135deg,#2563eb,#3b82f6);color:#fff;border:none;border-radius:8px;cursor:pointer;flex-shrink:0;transition:.15s}.chat-send-btn:hover:not(:disabled){transform:scale(1.05)}.chat-send-btn:disabled{opacity:.4;cursor:not-allowed}.student-control-bar{display:flex;justify-content:center;align-items:center;gap:8px;padding:10px 16px;background:var(--bg-primary, #fff);border-radius:var(--radius-lg, 12px);box-shadow:var(--shadow-sm, 0 1px 3px rgba(0, 0, 0, .07));flex-wrap:wrap}.student-ctrl-btn{display:flex;flex-direction:column;align-items:center;gap:3px;padding:9px 14px;background:var(--bg-secondary, #f3f4f6);border:none;border-radius:10px;cursor:pointer;color:var(--text-primary, #111827);font-size:.67rem;font-weight:600;transition:all .17s ease;min-width:64px;-webkit-user-select:none;user-select:none}.student-ctrl-btn:hover{background:#e5e7eb;transform:translateY(-1px)}.student-ctrl-btn.sctrl-active{background:#ef4444;color:#fff;animation:micActive 1.2s infinite}.student-ctrl-btn.sctrl-requested{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.student-ctrl-btn.sctrl-granted{background:#ecfdf5;color:#065f46;border:1px dashed #10b981;box-shadow:0 0 12px #10b98133}.student-ctrl-btn.sctrl-cam-active{background:#2563eb;color:#fff}@keyframes micActive{0%{box-shadow:0 0 #ef444466}70%{box-shadow:0 0 0 10px #ef444400}to{box-shadow:0 0 #ef444400}}.student-ctrl-btn.sctrl-raised{background:#f59e0b;color:#fff;box-shadow:0 4px 10px #f59e0b4d}.hand-wave{animation:wave .8s ease-in-out}@keyframes wave{0%,to{transform:rotate(0)}25%{transform:rotate(-15deg)}75%{transform:rotate(15deg)}}.mic-notice{position:absolute;bottom:110%;left:50%;transform:translate(-50%);background:#22c55e;color:#fff;padding:4px 10px;border-radius:4px;font-size:.7rem;white-space:nowrap;animation:fadeInOut 3s forwards;pointer-events:none;z-index:100}@keyframes fadeInOut{0%{opacity:0;transform:translate(-50%,10px)}10%{opacity:1;transform:translate(-50%)}90%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-10px)}}.student-ctrl-btn.sctrl-raised{background:#f59e0b;color:#fff;box-shadow:0 4px 12px #f59e0b66}.student-ctrl-btn.sctrl-raised:hover{background:#d97706}.student-ctrl-btn.sctrl-leave{background:#ef444414;color:#dc2626}.student-ctrl-btn.sctrl-leave:hover{background:#ef444429}.sctrl-icon{display:flex;align-items:center;justify-content:center;position:relative;font-size:1.1rem}.s-unread-badge{position:absolute;top:-6px;right:-8px;background:#ef4444;color:#fff;font-size:.58rem;font-weight:700;width:15px;height:15px;border-radius:50%;display:flex;align-items:center;justify-content:center}.sctrl-separator{width:1px;height:34px;background:var(--border-color, #e5e7eb);margin:0 4px}@keyframes handWave{0%,to{transform:rotate(0)}25%{transform:rotate(25deg)}75%{transform:rotate(-10deg)}}.hand-wave .sctrl-icon{animation:handWave .7s ease}.student-empty{text-align:center;padding:48px;color:var(--text-secondary, #6b7280);background:var(--bg-secondary, #f9fafb);border-radius:var(--radius-xl, 16px);border:2px dashed rgba(0,0,0,.06)}.student-error{background:#ef44440f;border:1px solid rgba(239,68,68,.15);color:#dc2626;padding:8px 12px;border-radius:var(--radius-md, 8px);margin-bottom:16px;font-size:.875rem}.no-upcoming{color:var(--text-secondary, #6b7280);font-size:.875rem}.subject-tag{font-size:.72rem;font-weight:700;color:var(--primary-color, #2563eb);background:#2563eb1a;padding:3px 9px;border-radius:99px;display:inline-block}@media(max-width:768px){.student-main-layout{flex-direction:column}.student-chat-panel{width:100%;min-width:unset;height:280px}.youtube-player-wrapper{padding-bottom:56.25%}.self-cam-pip{width:120px;height:90px;bottom:10px;right:10px}.student-player-topbar{flex-wrap:wrap}.player-header-center h2{font-size:1rem}}*{margin:0;padding:0;box-sizing:border-box;font-family:Inter,sans-serif;-ms-overflow-style:none;scrollbar-width:none;-webkit-overflow-scrolling:touch}*::-webkit-scrollbar{display:none}.courses-page{min-height:100vh;background:var(--bg-primary);padding-bottom:80px}.courses-hero{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:2rem 1rem 3rem;min-height:auto;position:relative;overflow:hidden}.courses-hero:before{content:"";position:absolute;inset:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="75" cy="75" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="50" cy="10" r="0.5" fill="rgba(255,255,255,0.05)"/></pattern></defs><rect width="100" height="100" fill="url(%23grain)"/></svg>');opacity:.3}.courses-hero .hero-content{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:0;display:flex;align-items:center;justify-content:center;gap:2rem}.courses-hero .hero-text h1{font-size:2rem;font-weight:800;margin-bottom:.75rem;line-height:1.2;color:#fff}.courses-hero .hero-text p{font-size:1rem;margin-bottom:0;opacity:.9;line-height:1.6}.playlists-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.playlist-card{background:var(--card-bg);border-radius:12px;overflow:hidden;box-shadow:var(--shadow-sm);border:1px solid var(--border-color);transition:all .3s ease;cursor:pointer}.playlist-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.playlist-thumbnail{height:180px;background:linear-gradient(135deg,var(--primary-color) 0%,var(--primary-dark) 100%);display:flex;align-items:center;justify-content:center;position:relative}.playlist-thumbnail i{font-size:64px;color:#ffffffe6}.playlist-count{position:absolute;bottom:12px;right:12px;background:#000000b3;color:#fff;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:600}.playlist-info{padding:1.25rem}.playlist-info h3{font-size:16px;font-weight:600;color:var(--text-primary);margin:0 0 8px}.playlist-info p{font-size:14px;color:var(--text-secondary);margin:0;line-height:1.5}.categories-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem}.category-card{background:var(--card-bg);border-radius:12px;padding:2rem;text-align:center;box-shadow:var(--shadow-sm);border:1px solid var(--border-color);transition:all .3s ease;cursor:pointer}.category-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.category-icon{width:80px;height:80px;margin:0 auto 1.25rem;border-radius:50%;background:var(--primary-light);display:flex;align-items:center;justify-content:center;transition:all .3s ease}.category-card:hover .category-icon{background:var(--primary-color);transform:scale(1.1)}.category-icon i{font-size:32px;color:var(--primary-color);transition:all .3s ease}.category-card:hover .category-icon i{color:#fff}.category-card h3{font-size:18px;font-weight:600;color:var(--text-primary);margin:0 0 8px}.category-card p{font-size:14px;color:var(--text-secondary);margin:0;line-height:1.5}@media(max-width:768px){.playlists-grid,.categories-grid{grid-template-columns:1fr}.playlist-thumbnail{height:160px}.playlist-thumbnail i{font-size:48px}.category-icon{width:64px;height:64px}.category-icon i{font-size:28px}}@media(min-width:769px)and (max-width:1024px){.playlists-grid,.categories-grid{grid-template-columns:repeat(2,1fr)}}.course-categories{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))!important;gap:2.5rem;margin-top:2.5rem;width:100%;max-width:100%;padding:0;box-sizing:border-box}.course-card{background:var(--card-bg);border-radius:16px;padding:0;border:1px solid rgba(0,0,0,.08);transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;width:100%;max-width:420px;box-sizing:border-box;display:flex;flex-direction:column;min-height:480px;box-shadow:0 4px 12px #00000014}.course-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #00000026;border-color:var(--primary-color)}.course-image-container{height:200px;border-radius:0;overflow:hidden;margin-bottom:0;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));width:100%;flex-shrink:0;position:relative}.course-image-container:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.3) 100%);pointer-events:none}.cat-img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.course-card:hover .cat-img{transform:scale(1.1)}.course-card h3{margin:0 0 .75rem;color:var(--text-primary);font-size:1.25rem;font-weight:700;line-height:1.3;padding:1.5rem 1.5rem 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.course-card p{color:var(--text-secondary);margin-bottom:1rem;line-height:1.6;font-size:.9rem;flex-grow:1;padding:0 1.5rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.course-highlights{list-style:none;padding:0;margin:0 0 1rem;display:grid;grid-template-columns:repeat(2,1fr);gap:.4rem}.course-highlights li{padding:.35rem .5rem;color:var(--text-primary);background:transparent;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(99,102,241,.3);border-radius:6px;font-size:.7rem;text-align:center;transition:all .2s ease;font-weight:500}.course-highlights li:hover{background:#6366f11a;border-color:#6366f180;transform:translateY(-1px);box-shadow:0 2px 8px #6366f133}.course-btn{width:calc(100% - 3rem);padding:.875rem 1.5rem;background:linear-gradient(135deg,var(--primary-color),#1d4ed8);color:#fff;border:none;border-radius:10px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.95rem;margin:0 1.5rem 1.5rem;box-shadow:0 4px 12px #3b82f64d}.course-btn:hover{background:linear-gradient(135deg,#1d4ed8,var(--primary-color));transform:translateY(-2px);box-shadow:0 6px 20px #3b82f666}.hero-content{text-align:center;padding:3rem 0}.hero-content h1{font-size:3rem;margin-bottom:1rem;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stats{display:flex;justify-content:center;gap:3rem;margin-top:2rem}.stat-item h3{font-size:2rem;color:var(--primary-color);margin:0}.stat-item p{color:var(--text-secondary);margin:.5rem 0 0}.trending-carousel-container{position:relative;padding:1rem 0;max-width:1200px;margin:0 auto}.scroll-btn{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;background:#fff;border:1px solid var(--border-color);color:var(--text-primary);font-size:1.2rem;cursor:pointer;z-index:10;display:flex;align-items:center;justify-content:center;transition:all .3s ease;box-shadow:0 4px 12px #0000001a}.scroll-btn:hover{background:var(--primary-color);color:#fff;transform:translateY(-50%) scale(1.1);box-shadow:0 6px 20px #00000026}.scroll-btn-left{left:-24px}.scroll-btn-right{right:-24px}.trending-carousel{width:100%;overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--primary-color) transparent;padding:.5rem 0}.trending-carousel::-webkit-scrollbar{height:8px}.trending-carousel::-webkit-scrollbar-track{background:#0000000d;border-radius:10px}.trending-carousel::-webkit-scrollbar-thumb{background:var(--primary-color);border-radius:10px}.trending-carousel::-webkit-scrollbar-thumb:hover{background:var(--primary-dark)}.trending-track{display:flex;gap:1.5rem;padding:0 2rem;width:max-content}.essential-card{background:var(--card-bg);border-radius:16px;overflow:hidden;border:1px solid var(--border-color);transition:all .3s ease;min-width:340px;max-width:340px;min-height:580px;flex-shrink:0;box-shadow:0 4px 12px #00000014;display:flex;flex-direction:column;position:relative}.essential-card:hover{transform:translateY(-6px);box-shadow:0 12px 30px #00000026}.course-tag{position:absolute;top:12px;left:12px;z-index:2;background:#000000b3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;padding:.35rem .85rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.course-tag.Foundation{background:linear-gradient(135deg,#10b981,#059669)}.course-tag.Core{background:linear-gradient(135deg,#f59e0b,#d97706)}.course-tag.Advanced{background:linear-gradient(135deg,#ef4444,#dc2626)}.course-tag.Popular{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.course-tag.Trending{background:linear-gradient(135deg,#ec4899,#db2777)}.trending-thumb{width:100%;height:180px;position:relative;overflow:hidden;flex-shrink:0}.trending-thumb:after{content:"";position:absolute;bottom:0;left:0;right:0;height:60%;background:linear-gradient(to top,rgba(0,0,0,.6),transparent);pointer-events:none}.trending-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.essential-card:hover .trending-thumb img{transform:scale(1.05)}.essential-card h3{margin:1rem 0 .75rem;color:var(--text-primary);font-size:1.05rem;font-weight:600;line-height:1.3;padding:0 1.25rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;word-break:break-word;height:2.6rem}.essential-card p{color:var(--text-secondary);margin-bottom:1.25rem;font-size:.85rem;line-height:1.5;padding:0 1.25rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;word-break:break-word;height:3.8rem}.course-meta{display:none}.view-course-btn{width:calc(100% - 2.5rem);margin:0 1.25rem 1.25rem;padding:.75rem 1rem;background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));color:#fff;border:none;border-radius:10px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;margin-top:auto}.view-course-btn:hover{background:linear-gradient(135deg,var(--primary-dark),var(--primary-color));transform:translateY(-2px);box-shadow:0 4px 15px #0003}@media(max-width:768px){.scroll-btn{width:40px;height:40px;font-size:1rem}.scroll-btn-left{left:-20px}.scroll-btn-right{right:-20px}.trending-track{padding:0 1rem}.essential-card{min-width:300px;max-width:300px;min-height:480px}.trending-thumb{height:160px}.essential-card h3{font-size:1rem;padding:0 1rem;margin:.75rem 0 .65rem;line-height:1.3;-webkit-line-clamp:2;height:2.6rem;word-break:break-word}.essential-card p{font-size:.8rem;padding:0 1rem;line-height:1.5;-webkit-line-clamp:3;height:3.6rem;margin-bottom:1rem;word-break:break-word}.view-course-btn{width:calc(100% - 2rem);margin:0 1rem 1rem;padding:.65rem .85rem;font-size:.85rem}}@media(max-width:480px){.scroll-btn{width:36px;height:36px;font-size:.9rem}.scroll-btn-left{left:-18px}.scroll-btn-right{right:-18px}.essential-card{min-width:280px;max-width:280px;min-height:460px}.trending-thumb{height:150px}.essential-card h3{font-size:.95rem;line-height:1.3;-webkit-line-clamp:2;height:2.5rem;margin:.65rem 0 .6rem;word-break:break-word}.essential-card p{font-size:.75rem;line-height:1.4;-webkit-line-clamp:2;height:2.1rem;margin-bottom:1rem;word-break:break-word}}.course-detail-header{display:flex;align-items:center;gap:2rem;padding:2rem 0}.course-icon-large{width:120px;height:120px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:3rem;flex-shrink:0}.course-header-content h1{font-size:3rem;margin:0 0 1rem;color:var(--text-primary)}.course-header-content p{font-size:1.25rem;color:var(--text-secondary);margin-bottom:2rem}.course-stats{display:flex;gap:2rem}.stat{text-align:center}.stat-number{display:block;font-size:2rem;font-weight:700;color:var(--primary-color)}.stat-label{font-size:.9rem;color:var(--text-secondary)}.topics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-top:2rem}.topic-card{background:var(--card-bg);border-radius:12px;padding:1.5rem;border:1px solid var(--border-color);transition:all .3s ease;text-align:center}.topic-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #0000001a}.topic-icon{width:60px;height:60px;background:var(--primary-light);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;color:var(--primary-color);font-size:1.5rem}.topic-card h3{margin:0 0 .5rem;color:var(--text-primary);font-size:1.25rem}.topic-card p{color:var(--text-secondary);font-size:.9rem;margin:0}.content-sections{display:flex;flex-direction:column;gap:3rem}.content-section h3{display:flex;align-items:center;gap:.5rem;margin:0 0 1.5rem;color:var(--text-primary);font-size:1.5rem}.content-section h3 i{color:var(--primary-color)}@media(max-width:768px){.course-detail-header{flex-direction:column;text-align:center}.course-icon-large{width:80px;height:80px;font-size:2rem}.course-header-content h1{font-size:2rem}.course-stats{justify-content:center}.topics-grid{grid-template-columns:1fr}}.courses-hero{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:8rem 0;min-height:500px;position:relative;overflow:hidden}.courses-hero:before{content:"";position:absolute;inset:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="75" cy="75" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="50" cy="10" r="0.5" fill="rgba(255,255,255,0.05)"/></pattern></defs><rect width="100" height="100" fill="url(%23grain)"/></svg>');opacity:.3}.courses-hero .hero-content{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;align-items:center;justify-content:center;gap:4rem}.courses-hero .hero-text{flex:1;text-align:center}.courses-hero .hero-text h1{font-size:4rem;font-weight:800;margin-bottom:1.5rem;line-height:1.2;color:#fff}.courses-hero .hero-text p{font-size:1.25rem;margin-bottom:2rem;opacity:.9;line-height:1.6}.courses-hero .hero-stats{display:flex;gap:3rem}.courses-hero .stat-item{text-align:center}.courses-hero .stat-number{display:block;font-size:2.5rem;font-weight:700;margin-bottom:.5rem;color:#fff}.courses-hero .stat-label{font-size:1rem;opacity:.8;color:#fff}.courses-hero .hero-image{flex:1;max-width:400px;height:300px}@media(max-width:768px){.courses-hero .hero-content{flex-direction:column;text-align:center;gap:2rem}.courses-hero .hero-text h1{font-size:2.5rem}.courses-hero .hero-stats{justify-content:center;gap:2rem}.courses-hero .hero-image{max-width:300px;height:200px}}.hero{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:4rem 0;text-align:center;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="75" cy="75" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="50" cy="10" r="0.5" fill="rgba(255,255,255,0.05)"/></pattern></defs><rect width="100" height="100" fill="url(%23grain)"/></svg>');opacity:.3}.hero-content{position:relative;z-index:1;max-width:800px;margin:0 auto;padding:0 2rem}.hero-content h2{font-size:1.5rem;margin-bottom:1rem;opacity:.9}.hero-content h1{font-size:3.5rem;font-weight:800;margin-bottom:1.5rem;line-height:1.2}.hero-content p{font-size:1.25rem;margin-bottom:2rem;opacity:.9}.explore-btn{background:#fff3;border:2px solid rgba(255,255,255,.3);color:#fff;padding:1rem 2rem;border-radius:50px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.explore-btn:hover{background:#ffffff4d;border-color:#ffffff80;transform:translateY(-2px)}.explore-btn a{color:inherit;text-decoration:none}.stats{display:flex;justify-content:center;gap:3rem;margin-top:3rem}.stat-item h3{font-size:2.5rem;font-weight:700;margin:0;color:#fff}.stat-item p{font-size:1rem;margin:.5rem 0 0;opacity:.8}.course-type-buttons{display:flex;justify-content:center;gap:.75rem;padding:1.5rem 1rem;background:var(--bg-primary);max-width:1200px;margin:0 auto}.type-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:var(--card-bg);border:2px solid var(--border-color);border-radius:12px;color:var(--text-secondary);text-decoration:none;font-weight:500;transition:all .3s ease;font-size:.9rem}.type-btn.active{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.type-btn:hover{border-color:var(--primary-color);color:var(--primary-color);transform:translateY(-2px)}.type-btn.active:hover{color:#fff}.tech-courses{padding:2rem 1rem;background:var(--bg-primary);width:100%;overflow:hidden}.tech-courses .container{max-width:1440px;margin:0 auto;padding:0 2rem;width:100%;box-sizing:border-box}.section-header{text-align:center;margin-bottom:2rem;background:transparent}.section-header h2{font-size:1.75rem;font-weight:700;color:var(--text-primary);margin:0 0 .5rem;background:transparent}.section-header p{font-size:1rem;color:var(--text-secondary);margin:0;background:transparent}.section-header.light h2{color:var(--text-primary)}.essential-courses{padding:2rem 1rem;background:var(--bg-secondary)}.essential-courses .section-header{max-width:1200px;margin:0 auto 2rem}.scroll-container{overflow-x:auto;padding:1rem 0}.scroll-content{display:flex;gap:1.5rem;padding:0 2rem;min-width:max-content}.motto-section{padding:4rem 0;background:var(--bg-primary)}.motto-header{text-align:center;margin-bottom:3rem}.motto-header h2{font-size:2.5rem;font-weight:700;color:var(--text-primary);margin:0 0 1rem}.motto-header p{font-size:1.2rem;color:var(--text-secondary);margin:0}.motto-slider{overflow:hidden;padding:0 2rem}.motto-track{display:flex;gap:2rem;animation:scroll 20s linear infinite}.motto-slide{min-width:300px;background:var(--card-bg);border-radius:16px;padding:2rem;text-align:center;border:1px solid var(--border-color)}.motto-icon{font-size:3rem;color:var(--primary-color);margin-bottom:1rem}.motto-slide h3{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.motto-slide p{color:var(--text-secondary);margin:0;line-height:1.6}@media(max-width:768px){.stats{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin:0 -1rem;padding:0 1rem}.stats::-webkit-scrollbar{display:none}.stats{display:flex!important;gap:1rem;min-width:max-content}.stat-item{min-width:140px;flex-shrink:0}.course-categories{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;scrollbar-width:none!important;margin:0 -1rem!important;padding:0 1rem 1rem!important;gap:1rem!important}.course-categories::-webkit-scrollbar{display:none}.course-card{min-width:280px!important;max-width:280px!important;flex-shrink:0!important}.trending-carousel-container{margin:0 -1rem;padding:0 1rem}.courses-hero .hero-text h1{font-size:1.75rem}.courses-hero .hero-text p{font-size:.9rem}.section-header h2{font-size:1.5rem}.section-header p{font-size:.9rem}.course-type-buttons{flex-direction:row;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin:0 -1rem;padding:1rem}.course-type-buttons::-webkit-scrollbar{display:none}.type-btn{white-space:nowrap;flex-shrink:0;padding:.65rem 1rem}.tech-courses{padding:1.5rem 0}.tech-courses .container{padding:0}.essential-courses{padding:1.5rem 0}}@media(min-width:769px){.course-categories{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))!important;gap:3.5rem!important;row-gap:4rem!important;overflow-x:visible!important;margin:2rem 0!important;padding:0!important;justify-content:center!important}.course-card{min-width:320px!important;max-width:420px!important}}@media(min-width:1440px){.course-categories{grid-template-columns:repeat(auto-fill,minmax(340px,1fr))!important;gap:3.5rem!important}}@media(max-width:600px){.course-card{min-width:260px!important;max-width:260px!important;padding:1rem;min-height:400px}.course-image{height:120px}.course-card h3{font-size:1rem}.course-card p{font-size:.8rem;-webkit-line-clamp:2;line-clamp:2}.course-highlights li{font-size:.7rem;padding:.3rem .4rem}.course-btn{padding:.5rem .6rem;font-size:.8rem}.courses-hero .hero-text h1{font-size:1.5rem}.courses-hero .hero-text p{font-size:.85rem}.section-header h2{font-size:1.35rem}.section-header p{font-size:.85rem}}@media(max-width:768px){.course-categories{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x mandatory!important;-webkit-overflow-scrolling:touch!important;gap:1rem!important;padding:0 1rem 1rem!important;scrollbar-width:thin!important;align-items:stretch!important}.course-categories::-webkit-scrollbar{height:6px}.course-categories::-webkit-scrollbar-track{background:#0000001a;border-radius:10px}.course-categories::-webkit-scrollbar-thumb{background:var(--primary-color);border-radius:10px}.course-card{min-width:280px!important;max-width:280px!important;min-height:360px!important;height:auto!important;flex-shrink:0!important;scroll-snap-align:start!important;padding:.85rem;border:none!important;box-shadow:0 2px 8px #0000001a!important}.course-card h3{font-size:1rem;margin-bottom:.5rem}.course-card p{font-size:.85rem;margin-bottom:.75rem;-webkit-line-clamp:2;line-clamp:2}.course-image{height:120px;margin-bottom:.75rem}.course-highlights{margin-bottom:.75rem}.course-highlights li{padding:.2rem 0;font-size:.75rem}.course-btn{padding:.65rem .75rem;font-size:.85rem;margin-top:.5rem}.tech-courses .container{padding:0;max-width:100%}}@media(max-width:480px){.course-card{min-width:260px!important;max-width:260px!important;min-height:340px!important;height:auto!important;border:none!important}.course-card h3{font-size:.95rem;margin-bottom:.5rem}.course-card p{font-size:.8rem;margin-bottom:.65rem}.course-image{height:120px;margin-bottom:.65rem}.course-highlights{margin-bottom:.65rem}.course-highlights li{padding:.15rem 0;font-size:.7rem}.course-btn{padding:.6rem .7rem;font-size:.8rem;margin-top:.5rem}}.blogs-page{padding-bottom:80px}.blogs-scroll,.categories-scroll{-webkit-overflow-scrolling:touch}.blogs-scroll::-webkit-scrollbar,.categories-scroll::-webkit-scrollbar{display:none}.blogs-grid,.categories-grid-blogs{display:flex;gap:12px;min-width:max-content}.categories-scroll{overflow-x:auto!important;margin:0 calc(var(--content-padding-mobile) * -1)!important;padding:0 var(--content-padding-mobile)!important;scrollbar-width:none!important}.categories-grid-blogs{display:flex!important;gap:12px!important;min-width:max-content!important}.categories-grid-blogs .category-card{min-width:240px!important;max-width:240px!important;flex-shrink:0!important}@media(min-width:640px){.blogs-scroll{overflow-x:visible!important;margin:0!important;padding:0!important}.blogs-grid{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:var(--card-spacing)!important;min-width:auto!important}.blogs-grid>div{min-width:auto!important;max-width:none!important}.categories-scroll{overflow-x:auto!important;margin:0!important;padding:0!important}.categories-grid-blogs{display:flex!important;gap:16px!important}.categories-grid-blogs .category-card{min-width:260px!important;max-width:260px!important}}@media(min-width:1024px){.blogs-grid{grid-template-columns:repeat(3,1fr)!important}.categories-grid-blogs{gap:20px!important}.categories-grid-blogs .category-card{min-width:280px!important;max-width:280px!important}}@media(max-width:480px){.blogs-grid>div{min-width:260px!important;max-width:260px!important}.categories-grid-blogs .category-card{min-width:220px!important;max-width:220px!important}}.certificate-courses-section{padding:60px 0;background:#f8fafc;overflow:hidden}.certificate-courses-section .container{max-width:1400px;margin:0 auto;padding:0}.certificate-courses-section .section-header{text-align:center;margin-bottom:40px;padding:0 20px}.certificate-courses-section .section-header h2{font-size:2.5rem;margin-bottom:1rem;color:#1e293b}.certificate-courses-section .section-header p{color:#64748b;font-size:1.1rem}.certificate-grid{display:flex;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:30px;padding:0 20px 20px;scrollbar-width:thin;scrollbar-color:var(--primary-color) transparent}.certificate-grid::-webkit-scrollbar{height:8px}.certificate-grid::-webkit-scrollbar-track{background:#0000000d;border-radius:10px}.certificate-grid::-webkit-scrollbar-thumb{background:var(--primary-color);border-radius:10px}.certificate-grid::-webkit-scrollbar-thumb:hover{background:var(--primary-dark)}.certificate-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transition:transform .3s ease,box-shadow .3s ease;display:flex;flex-direction:column;min-width:380px;max-width:380px;flex-shrink:0;scroll-snap-align:start}.cert-thumb{height:180px;position:relative;overflow:hidden}.cert-thumb-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#0ea5e9,#2563eb);display:flex;align-items:center;justify-content:center}.cert-level-badge{background:#ffffffe6;color:#0f172a;padding:4px 12px;border-radius:20px;font-size:.8rem;font-weight:600;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.cert-content{padding:24px;flex:1;display:flex;flex-direction:column}.cert-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.cert-provider{color:#2563eb;font-weight:600;font-size:.9rem;display:flex;align-items:center;gap:6px}.cert-duration{color:#64748b;font-size:.9rem}.cert-content h3{font-size:1.25rem;font-weight:700;margin-bottom:12px;color:#1e293b;line-height:1.4}.cert-description{color:#64748b;font-size:.95rem;line-height:1.6;margin-bottom:20px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.cert-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.cert-tag{background:#f1f5f9;color:#475569;font-size:.8rem;padding:4px 10px;border-radius:4px;font-weight:500}.cert-dates{margin-bottom:20px;padding:12px;background:#f8fafc;border-radius:8px;font-size:.85rem;color:#64748b;display:flex;flex-direction:column;gap:6px}.cert-date-item i{color:#94a3b8}.cert-date-item strong{color:#334155}.cert-btn{display:block;text-align:center;background:#2563eb;color:#fff;padding:12px;border-radius:8px;font-weight:600;text-decoration:none;transition:background .2s;border:none;width:100%;cursor:pointer}.cert-btn:hover{background:#1d4ed8}.cert-btn-disabled{background:#e2e8f0;color:#94a3b8;cursor:not-allowed}.cert-btn-disabled:hover{background:#e2e8f0}@media(max-width:768px){.certificate-courses-section{padding:40px 0}.certificate-courses-section .section-header{padding:0 20px;margin-bottom:30px}.certificate-courses-section .section-header h2{font-size:1.75rem}.certificate-courses-section .section-header p{font-size:1rem}.certificate-grid{gap:20px;padding:0 20px 20px}.certificate-grid::-webkit-scrollbar{height:6px}.certificate-card{min-width:320px;max-width:320px}}@media(max-width:480px){.certificate-courses-section{padding:30px 0}.certificate-courses-section .section-header{padding:0 15px;margin-bottom:25px}.certificate-courses-section .section-header h2{font-size:1.5rem}.certificate-courses-section .section-header p{font-size:.9rem}.certificate-grid{padding:0 15px 15px;gap:15px}.certificate-card{min-width:280px;max-width:280px}}@media(max-width:768px){.courses-page .tech-courses,.courses-page .essential-courses{padding-top:.75rem!important;padding-bottom:.75rem!important}.courses-page .courses-hero{padding:3.25rem 0 2.25rem!important;min-height:320px!important}.courses-page .courses-hero .hero-content{padding:0 1rem!important}.courses-page .course-categories{margin-top:.35rem!important}.courses-page .section-header{margin-bottom:4px!important}.courses-page .section-header h2{margin:0!important}.courses-page .section-header p{margin:0!important;color:var(--text-secondary)!important;line-height:1.25!important}.courses-page .section-header.light p{color:var(--text-secondary)!important;opacity:1!important}.courses-page .certificate-courses-section{padding-top:20px!important;padding-bottom:20px!important}.courses-page .certificate-courses-section .section-header{margin-bottom:16px!important}.courses-page .course-type-buttons{max-width:100%!important;margin:0!important;padding:.5rem .75rem!important;overflow-x:visible!important;flex-wrap:nowrap!important;justify-content:stretch!important;gap:.5rem!important}.courses-page .type-btn{flex:1 1 0!important;justify-content:center!important;padding:.75rem!important;font-size:.85rem!important;min-width:0!important;min-height:44px!important;line-height:1.2!important;white-space:nowrap!important}.courses-page .type-btn i{font-size:1rem!important;line-height:1!important}.courses-page .trending-carousel-container{padding-top:.25rem!important;padding-bottom:.25rem!important}.courses-page .trending-carousel{padding-top:0!important;padding-bottom:0!important}.courses-page .essential-courses .section-header{margin-bottom:4px!important;padding-top:0!important;padding-bottom:0!important}.courses-page .essential-card h3{overflow:hidden!important;display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;line-height:1.25!important;height:auto!important;margin-bottom:6px!important}}@media(max-width:480px){.courses-page .section-header{margin-bottom:6px!important}.courses-page .tech-courses,.courses-page .essential-courses{padding-top:.25rem!important;padding-bottom:.5rem!important}.courses-page .course-categories{margin-top:.2rem!important}.courses-page .course-type-buttons{padding:.5rem .75rem!important;flex-direction:column!important;align-items:stretch!important;gap:.5rem!important}.courses-page .type-btn{padding:.8rem .7rem!important;font-size:.84rem!important;width:100%!important}.courses-page .trending-carousel-container{padding-top:.15rem!important;padding-bottom:.15rem!important}}.blog-detail-page{padding:0;max-width:none}.back-navigation{padding:var(--content-padding-mobile);padding-bottom:1rem;animation:slideDown .4s ease-out}.back-link{display:inline-flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:500;color:var(--text-muted);text-decoration:none;transition:all .3s ease;cursor:pointer;animation:fadeInUp .5s ease-out .2s both}.back-link:hover{color:var(--text-primary);text-decoration:none;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:.5rem .75rem;border-radius:8px;border:1px solid rgba(255,255,255,.2)}.back-link i{font-size:.8rem;transition:transform .3s ease}.back-link:hover i{transform:translate(-3px)}.back-link span{position:relative}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.back-link:focus{outline:none;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:.5rem .75rem;border-radius:8px;border:1px solid rgba(255,255,255,.3)}.blog-header-image{position:relative;height:300px;width:100%;overflow:hidden;margin-bottom:2rem}.blog-header-image img{width:100%;height:100%;object-fit:cover}.featured-badge{position:absolute;top:1rem;right:1rem;background:var(--primary-color);color:#fff;padding:.5rem 1rem;border-radius:20px;font-size:.75rem;font-weight:700;display:flex;align-items:center;gap:.25rem;box-shadow:var(--shadow-sm)}.blog-content-wrapper{padding:0 var(--content-padding-mobile);max-width:800px;margin:0 auto}.blog-meta{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.meta-tags{display:flex;flex-wrap:wrap;gap:.75rem}.category-tag,.date-tag,.author-tag{display:flex;align-items:center;gap:.25rem;font-size:.8rem;color:var(--text-muted);padding:.25rem .75rem;background:var(--bg-secondary);border-radius:15px}.category-tag{background:#6366f11a;color:var(--primary-color);font-weight:600}.engagement-stats{display:flex;gap:1rem}.stat{display:flex;align-items:center;gap:.25rem;font-size:.8rem;color:var(--text-muted)}.blog-title{font-size:2rem;font-weight:700;color:var(--text-primary);margin-bottom:1.5rem;line-height:1.3}.blog-summary{background:var(--bg-secondary);padding:1.5rem;border-radius:12px;margin-bottom:2rem;border-left:4px solid var(--primary-color)}.blog-summary p{font-size:1.1rem;color:var(--text-secondary);margin:0;font-style:italic}.blog-content{margin-bottom:2rem}.content-text{font-size:1.05rem;line-height:1.8;color:var(--text-secondary);white-space:pre-line}.content-text p{margin-bottom:1.5rem}.content-text h1,.content-text h2,.content-text h3,.content-text h4,.content-text h5,.content-text h6{color:var(--text-primary);margin-top:2rem;margin-bottom:1rem}.content-text ul,.content-text ol{margin-bottom:1.5rem;padding-left:2rem}.content-text li{margin-bottom:.5rem}.content-text blockquote{border-left:4px solid var(--primary-color);padding-left:1.5rem;margin:2rem 0;font-style:italic;color:var(--text-muted)}.content-text code{background:var(--bg-secondary);padding:.2rem .4rem;border-radius:4px;font-family:Courier New,monospace;font-size:.9rem}.content-text pre{background:var(--bg-secondary);padding:1rem;border-radius:8px;overflow-x:auto;margin:1.5rem 0}.blog-tags{margin-bottom:2rem;padding-top:2rem;border-top:1px solid var(--border-color)}.blog-tags h4{font-size:1.1rem;margin-bottom:1rem;color:var(--text-primary)}.tags-list{display:flex;flex-wrap:wrap;gap:.5rem}.tag{background:var(--bg-secondary);color:var(--text-secondary);padding:.5rem 1rem;border-radius:20px;font-size:.85rem;transition:all .2s ease;cursor:default}.tag:hover{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);transform:translateY(-1px)}.blog-actions{display:flex;gap:1rem;padding:2rem 0;border-top:1px solid var(--border-color);flex-wrap:wrap}.blog-actions .btn{flex:1;min-width:120px;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;border:1px solid var(--border-color);border-radius:8px;background:var(--card-bg);color:var(--text-primary);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease;text-decoration:none}.blog-actions .btn:hover{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);transform:translateY(-2px);box-shadow:0 4px 15px #0000001a}.blog-actions .btn-primary{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.blog-actions .btn-primary:hover{background:#6366f1e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-color:#6366f1cc}.blog-detail-skeleton{padding:var(--content-padding-mobile)}.skeleton-header,.skeleton-line{background:linear-gradient(90deg,var(--bg-secondary) 25%,var(--bg-tertiary) 50%,var(--bg-secondary) 75%);background-size:200% 100%;animation:skeleton-loading 1.5s infinite;border-radius:8px}.skeleton-content{max-width:800px;margin:0 auto}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.error-state{text-align:center;padding:4rem var(--content-padding-mobile);max-width:500px;margin:0 auto}.error-icon{font-size:4rem;color:var(--error-color);margin-bottom:1rem}.error-state h2{font-size:1.5rem;margin-bottom:1rem;color:var(--text-primary)}.error-state p{color:var(--text-muted);margin-bottom:2rem}@media(max-width:768px){.blog-title{font-size:1.5rem}.blog-meta{flex-direction:column;align-items:flex-start;gap:.75rem}.meta-tags{gap:.5rem}.blog-actions{flex-direction:column;gap:.75rem}.blog-actions .btn{flex:none;width:100%}.back-navigation{padding:1rem 1rem .75rem}.back-link{font-size:.85rem}}@media(min-width:769px){.blog-detail-page{padding-bottom:2rem}.blog-header-image{height:400px;border-radius:0 0 20px 20px}.blog-content-wrapper{padding:0 2rem}.back-navigation{padding:2rem 2rem 1.5rem}.blog-title{font-size:2.5rem}.blog-actions .btn{flex:none;min-width:140px}}@media print{.back-navigation,.blog-actions,.engagement-stats{display:none!important}.blog-header-image{height:200px}.blog-content-wrapper{padding:0}.blog-title{font-size:1.8rem}.content-text{font-size:1rem;line-height:1.6}}.course-sub-page{min-height:calc(100vh - 64px);background:var(--bg-primary);display:flex;flex-direction:column;padding-bottom:2rem}.main-container{flex:1;width:100%;max-width:1400px;margin:0 auto;padding:2rem}.course-layout{display:grid;grid-template-columns:1fr 350px;gap:2rem;align-items:start}@media(max-width:1024px){.course-layout{grid-template-columns:1fr}.playlist-sidebar{order:2}}.main-content-area{display:flex;flex-direction:column;gap:1.5rem}.playlist-sidebar{background:var(--card-bg);border-radius:16px;border:1px solid var(--border-color);overflow:hidden;position:sticky;top:100px;max-height:calc(100vh - 120px);display:flex;flex-direction:column}.sidebar-header{padding:1.5rem;border-bottom:1px solid var(--border-color);background:#6366f108}.sidebar-header h3{margin:0;font-size:1.1rem;color:var(--text-primary)}.sidebar-header p{margin:.25rem 0 0;font-size:.85rem;color:var(--text-muted)}.playlist-scroll{overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.75rem}.playlist-item-sidebar{display:flex;gap:1rem;padding:.75rem;border-radius:12px;cursor:pointer;transition:all .2s ease;border:1px solid transparent;background:transparent}.playlist-item-sidebar:hover{background:#6366f10d;border-color:#6366f133}.playlist-item-sidebar.active{background:#6366f11a;border-color:var(--primary-color)}.playlist-thumb{width:120px;height:68px;flex-shrink:0;border-radius:8px;overflow:hidden;position:relative;background:linear-gradient(135deg,#667eea,#764ba2)}.playlist-thumb img{width:100%;height:100%;object-fit:cover;display:block}.playing-overlay{position:absolute;inset:0;background:#6366f166;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.8rem}.playlist-meta h4{font-size:.9rem;margin:0 0 .25rem;line-height:1.3;color:var(--text-primary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.playlist-meta span{font-size:.75rem;color:var(--text-muted)}.course-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.info-card{background:var(--card-bg);padding:1.5rem;border-radius:16px;border:1px solid var(--border-color)}.full-width{grid-column:span 2}@media(max-width:640px){.course-info-grid{grid-template-columns:1fr}.full-width{grid-column:span 1}}.info-card h3{font-size:1.1rem;margin-bottom:1rem;display:flex;align-items:center;gap:.75rem;color:var(--text-primary)}.info-card h3 i{color:var(--primary-color)}.outcomes-list{list-style:none;padding:0;margin:0;display:grid;gap:.75rem}.outcomes-list li{display:flex;gap:.75rem;font-size:.9rem;color:var(--text-secondary);line-height:1.4}.outcomes-list i{color:#10b981;margin-top:3px}.level-badge,.credits-badge{padding:4px 12px;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase}.level-badge{background:#6366f11a;color:var(--primary-color)}.credits-badge{background:#f59e0b1a;color:#d97706}.tags-container{display:flex;flex-wrap:wrap;gap:.5rem}.tag{background:var(--bg-secondary);color:var(--text-secondary);padding:6px 12px;border-radius:6px;font-size:.8rem;border:1px solid var(--border-color)}.description-text{font-size:1rem;line-height:1.6;color:var(--text-secondary)}.video-responsive{position:relative;width:100%;padding-bottom:56.25%;height:0;background:#000;border-radius:12px;overflow:hidden}.video-responsive iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none}.video-error{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#1a1a1a;color:#fff;gap:1rem}.video-error i{font-size:3rem;color:#ef4444}.video-error p{font-size:1rem;color:#9ca3af;margin:0}.course-hero{position:relative;width:100%;min-height:300px;overflow:hidden;margin-bottom:2rem}.course-hero.small{min-height:250px}.hero-background-slider{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0}.hero-slide{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;opacity:0;transition:opacity .5s ease}.hero-slide.active{opacity:1}.hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#667eeae6,#764ba2e6);z-index:1}.hero-content{position:relative;z-index:2;height:100%;display:flex;align-items:center;justify-content:center;padding:2rem}.hero-text-container{max-width:1200px;width:100%;color:#fff}.breadcrumb-nav{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;font-size:.9rem}.breadcrumb-nav button{background:none;border:none;color:#ffffffe6;cursor:pointer;padding:0;font-size:.9rem;transition:color .2s ease}.breadcrumb-nav button:hover{color:#fff;text-decoration:underline}.breadcrumb-nav i{font-size:.7rem;color:#ffffffb3}.breadcrumb-nav span{color:#fff;font-weight:500}.hero-text-container h1{font-size:2.5rem;font-weight:700;margin-bottom:.75rem;color:#fff}.course-description{font-size:1.1rem;opacity:.9;margin:0}.video-player-section{background:var(--card-bg);border-radius:16px;padding:1.5rem;border:1px solid var(--border-color)}.video-main-wrapper{display:flex;flex-direction:column;gap:1.5rem}.video-info h2{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin:0 0 .75rem}.video-meta{display:flex;flex-wrap:wrap;gap:1rem;font-size:.9rem;color:var(--text-secondary);margin-bottom:1rem}.video-meta span{display:flex;align-items:center;gap:.5rem}.video-meta i{color:var(--primary-color)}.content-card{background:var(--card-bg);border-radius:16px;border:1px solid var(--border-color)}.no-courses{background:var(--card-bg);border-radius:16px;padding:4rem 2rem;text-align:center;border:1px solid var(--border-color)}@media(max-width:1024px){.main-container{padding:1.5rem}.hero-text-container h1{font-size:2rem}.course-description{font-size:1rem}.course-sub-page{min-height:calc(100vh - 60px)}}@media(max-width:768px){.main-container{padding:1rem}.course-hero{min-height:200px}.course-hero.small{min-height:180px}.hero-text-container h1{font-size:1.5rem}.course-description{font-size:.9rem}.breadcrumb-nav{font-size:.8rem}.video-player-section{padding:1rem}.video-info h2{font-size:1.25rem}.video-meta{font-size:.85rem}.course-sub-page{min-height:calc(100vh - 56px - var(--bottom-nav-height, 60px));padding-bottom:1rem}}@media(max-width:480px){.hero-content{padding:1rem}.hero-text-container h1{font-size:1.25rem}.course-description{font-size:.85rem}.main-container{padding:.75rem}}.certificate-courses-section{margin-top:3rem;padding:3rem 0;background:var(--bg-secondary);border-radius:16px}.section-header-cert{text-align:center;margin-bottom:2.5rem}.section-header-cert h2{font-size:2rem;font-weight:700;color:var(--text-primary);margin:0 0 .75rem}.section-header-cert p{color:var(--text-secondary);font-size:1.1rem;margin:0}.certificate-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem;padding:0 1.5rem}.certificate-card{background:var(--card-bg);border-radius:16px;overflow:hidden;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transition:transform .3s ease,box-shadow .3s ease;display:flex;flex-direction:column;border:1px solid var(--border-color)}.certificate-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px -4px #00000026}.cert-thumb{height:180px;position:relative;overflow:hidden;background:linear-gradient(135deg,#0ea5e9,#2563eb)}.cert-thumb img{width:100%;height:100%;object-fit:cover}.cert-thumb-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.cert-thumb-placeholder i{font-size:4rem;color:#fff;opacity:.8}.cert-badges{position:absolute;top:12px;right:12px;display:flex;gap:8px}.cert-level-badge{background:#fffffff2;color:var(--text-primary);padding:6px 14px;border-radius:20px;font-size:.8rem;font-weight:600;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.cert-content{padding:1.5rem;flex:1;display:flex;flex-direction:column;gap:1rem}.cert-meta{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem}.cert-provider{color:var(--primary-color);font-weight:600;font-size:.9rem;display:flex;align-items:center;gap:6px}.cert-duration{color:var(--text-secondary);font-size:.9rem;display:flex;align-items:center;gap:6px}.cert-content h3{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin:0;line-height:1.4}.cert-description{color:var(--text-secondary);font-size:.95rem;line-height:1.6;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.cert-tags{display:flex;flex-wrap:wrap;gap:8px}.cert-tag{background:var(--bg-secondary);color:var(--text-secondary);font-size:.8rem;padding:4px 10px;border-radius:6px;font-weight:500;border:1px solid var(--border-color)}.cert-dates{padding:12px;background:var(--bg-secondary);border-radius:8px;font-size:.85rem;color:var(--text-secondary);display:flex;flex-direction:column;gap:8px;border:1px solid var(--border-color)}.cert-date-item{display:flex;align-items:center;gap:8px}.cert-date-item i{color:var(--primary-color);width:16px}.cert-date-item strong{color:var(--text-primary)}.cert-action{margin-top:auto}.cert-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;background:var(--primary-color);color:#fff;padding:12px;border-radius:8px;font-weight:600;text-decoration:none;border:none;cursor:pointer;transition:all .2s ease;font-size:.95rem}.cert-btn:hover{background:var(--primary-dark);color:#fff}.cert-btn-disabled{background:var(--bg-tertiary);color:var(--text-muted);cursor:not-allowed}.cert-btn-disabled:hover{transform:none;background:var(--bg-tertiary)}@media(max-width:1024px){.certificate-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.section-header-cert h2{font-size:1.75rem}}@media(max-width:768px){.certificate-courses-section{margin-top:2rem;padding:2rem 0;overflow:hidden}.certificate-grid{display:flex;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:1.5rem;padding:0 1rem 1rem;scrollbar-width:thin;scrollbar-color:var(--primary-color) transparent}.certificate-grid::-webkit-scrollbar{height:6px}.certificate-grid::-webkit-scrollbar-track{background:#0000001a;border-radius:10px}.certificate-grid::-webkit-scrollbar-thumb{background:var(--primary-color);border-radius:10px}.certificate-card{min-width:320px;max-width:320px;flex-shrink:0;scroll-snap-align:start}.section-header-cert h2{font-size:1.5rem}.section-header-cert p{font-size:1rem}.cert-thumb{height:160px}.cert-content{padding:1.25rem}.cert-content h3{font-size:1.1rem}}@media(max-width:480px){.certificate-courses-section{padding:1.5rem 0}.certificate-grid{padding:0 .75rem 1rem;gap:1rem}.certificate-card{min-width:280px;max-width:280px}.section-header-cert h2{font-size:1.35rem}.section-header-cert p{font-size:.9rem}.cert-thumb{height:140px}.cert-content{padding:1rem}.cert-meta{flex-direction:column;align-items:flex-start}}.aptitude-page{min-height:100vh;background:var(--bg-primary);padding-bottom:80px}.aptitude-hero{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:8rem 0 6rem;min-height:400px;position:relative;overflow:hidden}.aptitude-hero:before{content:"";position:absolute;inset:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="75" cy="75" r="1" fill="rgba(255,255,255,0.1)"/></pattern></defs><rect width="100" height="100" fill="url(%23grain)"/></svg>');opacity:.3}.hero-text h1{font-size:3.5rem;font-weight:800;margin-bottom:1.5rem;line-height:1.1;letter-spacing:-.02em}.hero-text p{font-size:1.25rem;margin-bottom:0;opacity:.95;line-height:1.6;font-weight:400}.hero-stats,.stat-item,.stat-number,.stat-label,.hero-image{display:none}.section-header{text-align:center;margin-bottom:1.5rem;position:relative}.section-header h2{font-size:1.75rem;font-weight:700;color:var(--text-primary);margin:0 0 .5rem}.section-header p{font-size:1rem;color:var(--text-secondary);margin:0}.section-header span[onclick]:hover,.section-header span[onclick]:hover i{transform:translate(2px)}@media(max-width:768px){.section-header>div{flex-direction:column!important;align-items:flex-start!important;gap:1rem}.section-header span[onclick]{align-self:flex-end}}.view-all-btn{margin-top:1.5rem;padding:.875rem 2rem;background:var(--primary-color);color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:.75rem}.categories-section{padding:2rem 1rem;max-width:1200px;margin:0 auto}.cards-scroll-wrapper{position:relative;margin-top:3rem}.modern-cards-container{display:flex;gap:2rem;overflow-x:auto;padding:1rem 0 2rem;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.modern-cards-container::-webkit-scrollbar{display:none}.modern-cards-container{-ms-overflow-style:none;scrollbar-width:none}.scroll-indicator{position:absolute;right:2rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:.5rem;color:var(--text-muted);font-size:.9rem;pointer-events:none;opacity:.7;animation:pulse 2s infinite}.scroll-indicator i{font-size:1rem}@keyframes pulse{0%,to{opacity:.7}50%{opacity:1}}.modern-card{position:relative;min-width:380px;width:380px;height:320px;border-radius:24px;overflow:hidden;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 12px 40px #00000026;flex-shrink:0;background-size:cover;background-position:center;background-repeat:no-repeat}.modern-card:hover{transform:translateY(-12px);box-shadow:0 25px 50px #00000040}.card-overlay{position:absolute;inset:0;background:linear-gradient(135deg,#0006,#0003);z-index:1}.modern-card-content{position:relative;z-index:2;height:100%;padding:2.5rem;display:flex;flex-direction:column;justify-content:space-between;color:#fff}.modern-card .card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem}.modern-card .card-title{font-size:2rem;font-weight:700;color:#fff;margin:0;line-height:1.2;max-width:65%;flex:1}.card-arrow-btn{width:48px;height:48px;border-radius:50%;background:#0000004d;border:1px solid rgba(255,255,255,.2);color:#fff;font-size:1.2rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);flex-shrink:0;margin-left:1rem}.card-arrow-btn:hover{background:#00000080;transform:scale(1.1);border-color:#fff6}.card-arrow-btn.category-done{background:#059669;border-color:#34d399;color:#fff}.card-arrow-btn.category-done:hover{background:#047857;transform:scale(1)}.modern-card .card-description{font-size:1.1rem;color:#ffffffe6;line-height:1.6;margin:0;flex:1;margin-bottom:2rem}.modern-card .card-footer{margin-top:auto}.modern-card .card-stats{display:flex;align-items:center;gap:1rem}.topics-count{background:#ffffff26;padding:.75rem 1.25rem;border-radius:25px;font-size:.9rem;font-weight:600;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}[data-theme=dark] .modern-card{box-shadow:0 12px 40px #00000080}[data-theme=dark] .modern-card:hover{box-shadow:0 25px 50px #000000b3}@media(max-width:768px){.modern-cards-container{gap:1.5rem;padding-left:1rem;padding-right:1rem}.modern-card{min-width:320px;width:320px;height:280px}.modern-card-content{padding:2rem}.modern-card .card-title{font-size:1.6rem;max-width:70%}.card-arrow-btn{width:44px;height:44px;font-size:1.1rem}.modern-card .card-description{font-size:1rem}.scroll-indicator{right:1rem;font-size:.8rem}}@media(max-width:480px){.modern-cards-container{gap:1rem;padding-left:.5rem;padding-right:.5rem}.modern-card{min-width:280px;width:280px;height:260px}.modern-card-content{padding:1.75rem}.modern-card .card-title{font-size:1.4rem}.modern-card .card-description{font-size:.95rem;margin-bottom:1.5rem}.card-arrow-btn{width:40px;height:40px;font-size:1rem}.topics-count{padding:.6rem 1rem;font-size:.85rem}.scroll-indicator{display:none}}.study-materials-section{padding:2rem 1rem;max-width:1200px;margin:0 auto}.materials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem}.material-card{background:var(--card-bg);border-radius:16px;padding:2rem;border:1px solid var(--border-color);transition:all .3s ease;display:flex;align-items:center;gap:1.5rem;box-shadow:var(--shadow-sm)}.material-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--primary-color)}.material-icon{width:60px;height:60px;background:linear-gradient(135deg,#fff5f5,#fed7d7);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#e53e3e;font-size:2rem;flex-shrink:0;position:relative}.material-icon:after{content:"";position:absolute;top:-2px;right:-2px;width:20px;height:20px;background:#3b82f6;border-radius:6px;display:flex;align-items:center;justify-content:center}.material-info{flex:1;min-width:0}.material-info h4{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0 0 .75rem;line-height:1.4}.material-meta{display:flex;align-items:center;gap:1.5rem;font-size:.9rem}.file-type{background:var(--bg-secondary);color:var(--text-secondary);padding:.35rem .75rem;border-radius:6px;font-size:.85rem;font-weight:600;display:inline-flex;align-items:center;gap:.5rem}.file-type:before{content:"";width:8px;height:8px;background:#3b82f6;border-radius:50%}.file-size{color:var(--text-secondary);font-weight:500}.download-btn{background:var(--primary-color);color:#fff;border:none;width:48px;height:48px;border-radius:12px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;font-size:1.25rem;flex-shrink:0;box-shadow:0 4px 12px #3b82f64d}.download-btn:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 6px 20px #3b82f666}.score-circle .circle-progress{fill:none;stroke:url(#gradient);stroke-width:10;stroke-linecap:round;stroke-dasharray:440;transition:stroke-dashoffset 1.5s ease-in-out;filter:drop-shadow(0 0 8px rgba(59,130,246,.4))}.score-value{font-size:2.5rem;font-weight:800;color:var(--primary-color);position:relative;z-index:1;text-shadow:0 2px 8px rgba(59,130,246,.2)}[data-theme=dark] .score-circle .circle-bg{stroke:#1e293b99}[data-theme=dark] .score-value{color:#60a5fa}.stat-item{background:var(--bg-secondary);padding:1rem;border-radius:10px;border:1px solid var(--border-color);display:flex;flex-direction:column;gap:.5rem;text-align:center}.stat-description{font-size:.7rem;color:var(--text-muted);font-weight:400;line-height:1.3}.performance-breakdown{display:flex;flex-direction:column;gap:1.5rem;overflow-y:auto;max-height:350px;padding-right:.5rem;scrollbar-width:none;-ms-overflow-style:none}.performance-breakdown::-webkit-scrollbar{display:none}.performance-item{display:flex;flex-direction:column;gap:.75rem;padding:1rem;background:var(--bg-secondary);border-radius:10px;border:1px solid var(--border-color);transition:all .3s ease;min-height:85px;overflow:visible}[data-theme=dark] .performance-item{background:#1e293b66;border-color:#4755694d}.performance-item:hover{background:var(--hover-bg);border-color:var(--primary-color);transform:translate(4px)}[data-theme=dark] .performance-item:hover{background:#1e293b99}.category-name{font-size:1rem;color:var(--text-primary);font-weight:600;text-transform:capitalize;display:flex;align-items:center;gap:.5rem}.category-name:before{content:"";width:10px;height:10px;border-radius:50%;background:var(--primary-color);flex-shrink:0}.progress-bar{width:100%;height:20px;background:#0000000d;border-radius:10px;overflow:visible;border:1px solid rgba(0,0,0,.08);position:relative;box-shadow:inset 0 2px 4px #00000014;display:block;flex-shrink:0;margin:0}[data-theme=dark] .progress-bar{background:#0000004d;border-color:#ffffff1a;box-shadow:inset 0 2px 4px #0000004d}.progress-fill{height:100%;border-radius:10px;transition:width 1s ease-in-out;position:relative;overflow:hidden;display:block}.progress-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.percentage{font-size:1.05rem;font-weight:700;min-width:55px;text-align:right;transition:color .3s ease}[data-theme=dark] .percentage{color:#60a5fa}.activity-list{display:flex;flex-direction:column;gap:1rem;overflow-y:auto;max-height:350px;padding-right:.5rem;scrollbar-width:none;-ms-overflow-style:none}.activity-list::-webkit-scrollbar{display:none}.activity-item{display:flex;align-items:center;gap:1rem;padding:1.5rem 1.75rem;background:var(--bg-secondary);border-radius:10px;border:1px solid var(--border-color);transition:all .2s ease;min-height:90px}[data-theme=dark] .activity-item{background:#1e293b66;border-color:#4755694d}.activity-item:hover{background:var(--hover-bg);border-color:var(--primary-color);transform:translate(4px)}[data-theme=dark] .activity-item:hover{background:#1e293b99}.activity-icon{width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.activity-icon.warning{background:#fbbf241a;color:#f59e0b}.activity-icon i{font-size:1.25rem}.activity-info h4{font-size:.95rem;font-weight:600;color:var(--text-primary);margin:0 0 .35rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-meta{font-size:.8rem;color:var(--text-muted);margin:0}@media(max-width:768px){.aptitude-hero{padding:6rem 0 4rem;min-height:350px}.hero-content{padding:0 1.5rem}.hero-text h1{font-size:2.5rem}.hero-text p{font-size:1.1rem}.section-header h2{font-size:1.5rem}.section-header p{font-size:.9rem}.materials-grid{display:flex!important;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin:0 -1rem;padding:0 1rem 1rem;gap:1rem}.materials-grid::-webkit-scrollbar{display:none}.material-card{min-width:300px;max-width:300px;flex-shrink:0}.material-card:last-child{margin-right:1rem}.analytics-grid-wrapper{margin:0 -1rem;padding:0 1rem 1rem;overflow-x:auto;-webkit-overflow-scrolling:touch}.analytics-grid{display:flex!important;gap:1rem;scrollbar-width:none}.analytics-grid::-webkit-scrollbar{display:none}.analytics-card{min-width:300px;max-width:300px;flex-shrink:0;min-height:350px;max-height:400px}.analytics-card:last-child{margin-right:1rem}.performance-breakdown,.activity-list{max-height:250px}.scroll-indicator-analytics{display:none!important}.analytics-section .section-header>div{flex-direction:column!important;align-items:flex-start!important}.analytics-section .view-all-btn{width:100%;justify-content:center}}@media(min-width:769px){.materials-grid{display:grid!important;grid-template-columns:repeat(2,1fr)!important;overflow-x:visible!important;margin:0!important;padding:0!important}.material-card{min-width:auto!important;max-width:none!important}.analytics-grid-wrapper{margin:0!important;padding:0!important}.analytics-grid{display:grid!important;grid-template-columns:repeat(2,1fr)!important;overflow-x:visible!important}.analytics-card{min-width:auto!important;max-width:none!important}}@media(min-width:1024px){.materials-grid,.analytics-grid{grid-template-columns:repeat(3,1fr)!important}}@media(max-width:480px){.aptitude-page{padding-bottom:20px}.aptitude-hero{padding:.5rem 0;min-height:auto}.hero-text h1{font-size:1.3rem;margin-bottom:.25rem}.hero-text p{font-size:.75rem;line-height:1.25;margin-bottom:.5rem;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.view-all-btn{margin-top:.25rem;padding:.4rem .8rem;font-size:.75rem;height:32px}.hero-actions{margin-top:.5rem!important}.section-header{margin-bottom:.25rem;padding-bottom:0}.section-header h2{font-size:1.1rem;margin-bottom:0;line-height:1.2}.section-header p{font-size:.7rem;margin-bottom:0;line-height:1.2;margin-top:.1rem;color:var(--text-secondary)}.section-header>div{gap:.25rem!important;margin-bottom:0!important}.section-header span[onclick]{font-size:.75rem!important;margin-top:.25rem}.categories-section,.study-materials-section,.analytics-section,.video-lessons-section{padding:.5rem .5rem .25rem}.cards-scroll-wrapper{margin-top:.25rem}.modern-cards-container{padding-top:0;padding-bottom:.5rem;gap:.5rem;margin-top:0}.modern-card{min-width:200px;width:200px;height:180px;border-radius:12px}.modern-card-content{padding:.75rem}.modern-card .card-title{font-size:1rem;margin-bottom:0;line-height:1.1}.modern-card .card-description{font-size:.7rem;margin-bottom:.4rem;line-height:1.2;-webkit-line-clamp:2;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.card-arrow-btn{width:28px;height:28px;font-size:.8rem;margin-left:.25rem}.topics-count{padding:.25rem .5rem;font-size:.65rem}.video-grid-wrapper{margin-top:.25rem}.video-horizontal-scroll{display:flex;gap:.75rem;overflow-x:auto;padding-bottom:.5rem;scrollbar-width:none;-ms-overflow-style:none}.video-horizontal-scroll::-webkit-scrollbar{display:none}.video-lesson-card{min-width:200px;width:200px;background:var(--card-bg);border-radius:8px;overflow:hidden;box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.video-thumb-container{height:110px;position:relative}.video-thumb-container img{width:100%;height:100%;object-fit:cover}.video-content-body{padding:.5rem}.video-content-body h3{font-size:.85rem;margin:.25rem 0;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v-category-badge{font-size:.6rem;padding:2px 6px;background:#3b82f61a;color:var(--primary-color);border-radius:4px;display:inline-block}.v-description-short,.v-tags-list,.v-instructor,.v-level-badge{display:none}.material-card{min-width:180px;max-width:180px;padding:.5rem;gap:.5rem}.material-icon{width:28px;height:28px;font-size:1rem}.material-info h4{font-size:.8rem;margin-bottom:.1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-type{padding:.1rem .3rem;font-size:.6rem}.download-btn{width:28px;height:28px;font-size:.8rem}.analytics-grid-wrapper{margin-top:.25rem}.analytics-card{min-width:200px;max-width:200px;padding:.5rem}.analytics-header{padding:.5rem;gap:.4rem}.analytics-header h3{font-size:.8rem}.analytics-content{padding:.25rem .5rem;gap:.25rem}.score-circle{width:80px;height:80px}.score-value{font-size:1.2rem}.score-circle .circle-bg,.score-circle .circle-progress{stroke-width:4}.stat-value{font-size:.9rem}.stat-label{font-size:.6rem}.performance-breakdown,.activity-list{max-height:140px;gap:.25rem}.performance-item{padding:.4rem;min-height:auto}}.exam-modal-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease}.exam-modal-content{background:#fff;border-radius:16px;max-width:600px;width:100%;box-shadow:0 20px 40px #00000026;animation:slideUp .2s ease;position:relative;border:1px solid #e2e8f0}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.exam-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid #e2e8f0}.exam-modal-header h2{font-size:1.5rem;font-weight:600;color:#1e293b;margin:0}.modal-close-btn{width:32px;height:32px;border-radius:6px;border:none;background:#f1f5f9;color:#64748b;font-size:1rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.modal-close-btn:hover{background:#e2e8f0;color:#334155}.exam-modal-body{padding:2rem}.form-row{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;position:relative}.form-row:last-child{margin-bottom:0}.form-label{font-size:.95rem;font-weight:600;color:#374151;min-width:80px;padding-top:.75rem}.dropdown-container{flex:1;position:relative}.dropdown-selected{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:#f9fafb;border:1px solid #d1d5db;border-radius:8px;cursor:pointer;transition:all .2s ease}.dropdown-selected:hover{border-color:#9ca3af}.dropdown-selected span{font-size:.95rem;color:#374151;font-weight:500}.dropdown-selected i{color:#6b7280;font-size:.85rem}.topics-container,.difficulty-container{flex:1;position:relative}.selected-topics,.selected-difficulties{display:flex;flex-wrap:wrap;gap:.5rem;padding:.75rem 3rem .75rem 1rem;background:#fff;border:2px solid #3b82f6;border-radius:8px;min-height:48px;align-items:center;position:relative}.topic-tag,.difficulty-tag{display:inline-flex;align-items:center;gap:.5rem;padding:.375rem .75rem;background:#fef3c7;color:#92400e;border-radius:6px;font-size:.85rem;font-weight:500}.remove-tag{background:none;border:none;color:#f59e0b;cursor:pointer;padding:0;font-size:.75rem;transition:color .2s ease}.remove-tag:hover{color:#d97706}.topics-count-inline{color:#6b7280;font-size:.85rem;font-weight:500}.dropdown-arrow{position:absolute;right:1rem;top:50%;transform:translateY(-50%);background:none;border:none;color:#6b7280;cursor:pointer;padding:.25rem;font-size:.85rem}.topics-dropdown,.difficulty-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 10px 25px #0000001a;z-index:1000;max-height:200px;overflow-y:auto;margin-top:.25rem;display:none}.topics-container:hover .topics-dropdown,.difficulty-container:hover .difficulty-dropdown{display:block}.topic-option,.difficulty-option{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;cursor:pointer;transition:background-color .2s ease;font-size:.9rem;color:#374151}.topic-option:hover,.difficulty-option:hover{background:#f3f4f6}.topic-option.selected,.difficulty-option.selected{background:#eff6ff;color:#1d4ed8}.topic-option.completed-disabled{background:#f8fafc;color:#94a3b8;cursor:not-allowed;opacity:.8}.completed-badge-small{background:#ecfdf5;color:#059669;font-size:.7rem;padding:.2rem .5rem;border-radius:4px;font-weight:700;display:flex;align-items:center;gap:.25rem}.topic-option.selected i,.difficulty-option.selected i{color:#3b82f6}.exam-modal-footer{padding:1.5rem 2rem;border-top:1px solid #e2e8f0;display:flex;gap:1rem;justify-content:center;background:#f9fafb;border-radius:0 0 16px 16px}.modal-btn{padding:.875rem 2.5rem;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.modal-btn.primary{background:#ea580c;color:#fff;box-shadow:0 2px 8px #ea580c4d}.modal-btn.primary:hover{background:#dc2626;box-shadow:0 4px 12px #ea580c66}@media(max-width:640px){.exam-modal-content{border-radius:12px;margin:.5rem}.exam-modal-header,.exam-modal-body,.exam-modal-footer{padding:1.25rem}.exam-modal-header h2{font-size:1.35rem}.form-row{flex-direction:column;align-items:stretch;gap:.5rem}.form-label{min-width:auto;padding-top:0}.selected-topics,.selected-difficulties{padding:.75rem 3rem .75rem .75rem}.exam-modal-footer{flex-direction:column;gap:.75rem}.modal-btn{width:100%}}[data-theme=dark] .exam-modal-content{background:#1e293b;border-color:#334155}[data-theme=dark] .exam-modal-header{border-bottom-color:#334155}[data-theme=dark] .exam-modal-header h2{color:#f1f5f9}[data-theme=dark] .modal-close-btn{background:#0f172a;color:#94a3b8}[data-theme=dark] .modal-close-btn:hover{background:#334155;color:#cbd5e1}[data-theme=dark] .form-label{color:#e2e8f0}[data-theme=dark] .dropdown-selected{background:#0f172a;border-color:#475569;color:#e2e8f0}[data-theme=dark] .dropdown-selected:hover{border-color:#64748b}[data-theme=dark] .selected-topics,[data-theme=dark] .selected-difficulties{background:#1e293b;border-color:#3b82f6}[data-theme=dark] .topics-dropdown,[data-theme=dark] .difficulty-dropdown{background:#1e293b;border-color:#475569}[data-theme=dark] .topic-option,[data-theme=dark] .difficulty-option{color:#e2e8f0}[data-theme=dark] .topic-option:hover,[data-theme=dark] .difficulty-option:hover{background:#334155}[data-theme=dark] .topic-option.selected,[data-theme=dark] .difficulty-option.selected{background:#1e3a8a;color:#bfdbfe}[data-theme=dark] .exam-modal-footer{border-top-color:#334155;background:#0f172a}[data-theme=dark] .section-header h2{color:var(--text-primary)}[data-theme=dark] .section-header p{color:var(--text-secondary)}[data-theme=dark] .material-card{background:var(--card-bg);border-color:var(--border-color)}[data-theme=dark] .material-card:hover{border-color:var(--primary-color)}[data-theme=dark] .material-info h4{color:var(--text-primary)}[data-theme=dark] .file-type{background:var(--bg-secondary);color:var(--text-secondary)}[data-theme=dark] .file-size{color:var(--text-secondary)}[data-theme=dark] .download-btn{background:var(--primary-color)}[data-theme=dark] .download-btn:hover{background:var(--primary-dark)}.card-topics-preview{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.topic-link-badge{background:#ffffff1a;padding:.4rem .8rem;border-radius:8px;font-size:.8rem;font-weight:500;border:1px solid rgba(255,255,255,.1);cursor:pointer;transition:all .2s ease}.topic-link-badge:hover{background:#ffffff40;transform:translateY(-2px);border-color:#ffffff4d}.lessons-count{margin-left:auto;font-size:.85rem;opacity:.8}.more-count{font-size:.8rem;opacity:.7;align-self:center}.aptitude-topic-detail{max-width:1400px;margin:0 auto;padding:2rem}.topic-header-nav{margin-bottom:2rem;display:flex;flex-direction:column;gap:1rem}.back-link{background:none;border:none;color:var(--primary-color);font-weight:600;display:flex;align-items:center;gap:.5rem;cursor:pointer;padding:0;width:fit-content}.topic-title-area{display:flex;align-items:center;gap:1.5rem}.topic-category-badge{background:var(--primary-color);color:#fff;padding:.25rem .75rem;border-radius:6px;font-size:.75rem;font-weight:700;text-transform:uppercase}.topic-title-area h1{font-size:2rem;margin:0;color:var(--text-primary)}.topic-content-layout{display:grid;grid-template-columns:1fr 350px;gap:2rem}.topic-main-stage{display:flex;flex-direction:column;gap:2rem}.video-player-container{background:#000;border-radius:16px;overflow:hidden;box-shadow:0 10px 30px #0000001a}.video-details-info{background:var(--card-bg);padding:1.5rem;border:1px solid var(--border-color);border-top:none}.video-details-info h3{margin:0 0 1rem}.video-meta-pills{display:flex;gap:1rem;font-size:.85rem;color:var(--text-secondary)}.html-content-card{background:var(--card-bg);padding:2.5rem;border-radius:16px;border:1px solid var(--border-color);line-height:1.8;color:var(--text-primary)}.topic-sidebar{display:flex;flex-direction:column;gap:2rem}.sidebar-group{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;overflow:hidden}.sidebar-group-header{background:var(--bg-secondary);padding:1rem 1.25rem;font-weight:700;display:flex;align-items:center;gap:.75rem;border-bottom:1px solid var(--border-color)}.sidebar-items-list{display:flex;flex-direction:column}.sidebar-item{padding:1rem 1.25rem;border-bottom:1px solid var(--border-color);cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:1rem}.sidebar-item:last-child{border-bottom:none}.sidebar-item:hover{background:var(--bg-secondary)}.sidebar-item.active{background:var(--primary-light);border-left:4px solid var(--primary-color)}.play-icon{width:32px;height:32px;background:var(--bg-secondary);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--primary-color)}.item-txt{flex:1}.v-title{font-weight:600;font-size:.95rem}.v-meta{font-size:.8rem;color:var(--text-secondary)}.section-dot{width:8px;height:8px;background:var(--border-color);border-radius:50%}.active .section-dot{background:var(--primary-color)}.take-quiz-btn{width:100%;padding:1rem;background:var(--primary-color);color:#fff;border:none;border-radius:12px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.75rem;transition:transform .2s}.take-quiz-btn:hover{transform:translateY(-2px);background:var(--primary-dark)}@media(max-width:1024px){.topic-content-layout{grid-template-columns:1fr}}.video-lessons-section{padding:3rem 1rem;max-width:1200px;margin:0 auto}.video-grid-wrapper{margin-top:2rem;position:relative}.video-horizontal-scroll{display:flex;gap:1.5rem;overflow-x:auto;padding:.5rem .5rem 1.5rem;scroll-behavior:smooth}.video-horizontal-scroll::-webkit-scrollbar{height:6px}.video-horizontal-scroll::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:10px}.video-lesson-card{min-width:300px;width:300px;background:var(--card-bg);border-radius:16px;overflow:hidden;border:1px solid var(--border-color);cursor:pointer;transition:all .3s ease;box-shadow:var(--shadow-sm)}.video-lesson-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg);border-color:var(--primary-color)}.video-thumb-container{position:relative;height:170px;overflow:hidden}.video-thumb-container img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.video-lesson-card:hover .video-thumb-container img{transform:scale(1.1)}.play-button-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:50px;height:50px;background:#3b82f6e6;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.2rem;opacity:0;transition:all .3s ease;z-index:2}.video-lesson-card:hover .play-button-overlay{opacity:1;transform:translate(-50%,-50%) scale(1.1)}.duration-tag{position:absolute;bottom:10px;right:10px;background:#000c;color:#fff;padding:2px 8px;border-radius:4px;font-size:.75rem;font-weight:600}.video-content-body{padding:1.25rem}.v-category-badge{font-size:.65rem;font-weight:700;text-transform:uppercase;color:var(--primary-color);letter-spacing:.05em;margin-bottom:.5rem;display:block}.video-content-body h3{font-size:1.1rem;margin:0 0 1rem;line-height:1.4;color:var(--text-primary);display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;height:3rem}.v-instructor{display:flex;align-items:center;gap:.75rem}.inst-avatar{width:24px;height:24px;background:var(--primary-color);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700}.v-instructor span{font-size:.85rem;color:var(--text-secondary);font-weight:500}.view-all-btn-outline{background:transparent;border:1px solid var(--primary-color);color:var(--primary-color);padding:.6rem 1.2rem;border-radius:8px;font-weight:600;font-size:.9rem;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .2s}.view-all-btn-outline:hover{background:var(--primary-color);color:#fff}.no-data-hint{padding:3rem;text-align:center;width:100%;color:var(--text-muted);font-style:italic;background:var(--bg-secondary);border-radius:12px}[data-theme=dark] .video-lesson-card{background:#1e293b;border-color:#334155}[data-theme=dark] .video-lesson-card:hover{border-color:var(--primary-color);background:#1e293b}[data-theme=dark] .inst-avatar{background:#3b82f6}.v-header-tags{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.v-level-badge{font-size:.65rem;font-weight:700;background:#f0f7ff;color:#2563eb;padding:1px 6px;border-radius:4px}[data-theme=dark] .v-level-badge{background:#2563eb33;color:#60a5fa}.v-description-short{font-size:.8rem;color:var(--text-secondary);line-height:1.4;margin-bottom:.75rem;height:2.2rem;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical}.v-tags-list{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1rem}.v-mini-tag{font-size:.7rem;color:var(--primary-color);background:#3b82f614;padding:2px 6px;border-radius:4px;font-weight:600}[data-theme=dark] .v-mini-tag{background:#3b82f626;color:#60a5fa}@media(max-width:480px){.aptitude-page{padding-bottom:20px!important}.aptitude-hero{padding:.5rem 0!important;min-height:180px!important}.hero-text h1{font-size:1.3rem!important;margin-bottom:.25rem!important}.hero-text p{font-size:.75rem!important;line-height:1.25!important;margin-bottom:.5rem!important}.view-all-btn{margin-top:.25rem!important;padding:.4rem .8rem!important;font-size:.75rem!important;height:32px!important}.hero-actions{margin-top:.25rem!important}.section-header{margin-bottom:.25rem!important;padding-bottom:0!important}.section-header h2{font-size:1.1rem!important;margin-bottom:0!important;line-height:1.2!important}.section-header p{font-size:.7rem!important;margin-bottom:0!important;margin-top:.1rem!important}.section-header>div{gap:.25rem!important;margin-bottom:0!important}.section-header span[onclick]{font-size:.75rem!important;margin-top:.25rem!important}.categories-section,.study-materials-section,.analytics-section,.video-lessons-section{padding:.25rem .5rem!important}.cards-scroll-wrapper{margin-top:.25rem!important}.modern-cards-container{padding-top:0!important;padding-bottom:.5rem!important;gap:.5rem!important;margin-top:0!important}.modern-card{min-width:200px!important;width:200px!important;height:180px!important}.modern-card-content{padding:.75rem!important}.modern-card .card-description{font-size:.7rem!important;margin-bottom:.4rem!important}.video-grid-wrapper{margin-top:.25rem!important}.video-horizontal-scroll{gap:.75rem!important;padding-bottom:.5rem!important}.video-lesson-card{min-width:200px!important;width:200px!important}.video-thumb-container{height:110px!important}.video-content-body{padding:.5rem!important}.video-content-body h3{margin:.25rem 0!important}.material-card{min-width:180px!important;max-width:180px!important;padding:.5rem!important;gap:.5rem!important}.analytics-grid-wrapper{margin-top:.25rem!important}.analytics-card{min-width:200px!important;max-width:200px!important;padding:.5rem!important}.analytics-content{padding:.25rem .5rem!important;gap:.25rem!important}}.video-player-modal-overlay{position:fixed;inset:0;background:#000000eb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:2rem;animation:fadeIn .3s ease-out}.video-player-modal-split{display:grid;grid-template-columns:1fr 380px;width:100%;max-width:1400px;height:85vh;background:var(--card-bg);border-radius:20px;overflow:hidden;box-shadow:0 20px 60px #00000080;animation:slideUp .4s cubic-bezier(.4,0,.2,1)}@media(min-width:1600px){.video-player-modal-split{grid-template-columns:1fr 420px;max-width:1600px}}@media(min-width:1800px){.video-player-modal-split{grid-template-columns:1fr 450px;max-width:1800px}}@keyframes slideUp{0%{opacity:0;transform:translateY(40px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.video-player-left{display:flex;flex-direction:column;background:#000;position:relative}.video-player-header-split{position:absolute;top:0;left:0;right:0;z-index:10;background:linear-gradient(180deg,rgba(0,0,0,.8) 0%,transparent 100%);padding:1.5rem 2rem;display:flex;align-items:flex-start;justify-content:space-between}.video-title-section-split{flex:1;padding-right:1rem}.video-title-section-split h2{margin:0 0 .5rem;font-size:1.25rem;color:#fff;font-weight:700;text-shadow:0 2px 8px rgba(0,0,0,.5)}.video-topic-badge-split{display:inline-block;background:#3b82f6e6;color:#fff;padding:.35rem .85rem;border-radius:20px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 8px #0000004d}.video-close-btn-split{width:40px;height:40px;border-radius:50%;border:none;background:#ef4444e6;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;font-size:1.1rem;flex-shrink:0;box-shadow:0 2px 8px #0000004d}.video-close-btn-split:hover{background:#dc2626;transform:rotate(90deg) scale(1.1)}.video-container-split{flex:1;display:flex;align-items:center;justify-content:center;background:#000}.video-wrapper-split{position:relative;width:100%;height:100%}.video-wrapper-split iframe{position:absolute;top:0;left:0;width:100%;height:100%}.video-instructor-section{background:#000000f2;padding:1.25rem 2rem;display:flex;align-items:center;gap:1rem;border-top:1px solid rgba(255,255,255,.1)}.instructor-avatar-split{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--primary-color),#6366f1);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;flex-shrink:0}.instructor-info-split h4{margin:0 0 .25rem;font-size:1rem;color:#fff;font-weight:600}.level-badge-split{display:inline-block;background:#ffffff1a;color:#fffc;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;border:1px solid rgba(255,255,255,.2)}.video-player-right{display:flex;flex-direction:column;background:var(--card-bg);border-left:1px solid var(--border-color)}.info-header{display:flex;align-items:center;gap:.75rem;padding:1.5rem 2rem;background:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.info-header i{font-size:1.25rem;color:var(--primary-color)}.info-header h3{margin:0;font-size:1rem;color:var(--text-primary);font-weight:700;text-transform:uppercase;letter-spacing:.5px}.info-content{flex:1;overflow-y:auto;padding:2rem;scrollbar-width:none;-ms-overflow-style:none}.info-content::-webkit-scrollbar{display:none}.video-description-text{margin:0;font-size:.95rem;line-height:1.8;color:var(--text-secondary)}.no-content-message{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:var(--text-muted)}.no-content-message i{font-size:3rem;margin-bottom:1rem;opacity:.2}.no-content-message p{margin:0;font-size:.95rem;line-height:1.6}[data-theme=dark] .video-player-modal-split{background:#1e293b}[data-theme=dark] .video-player-right{background:#1e293b;border-left-color:#334155}[data-theme=dark] .info-header{background:#0f172a;border-bottom-color:#334155}@media(max-width:1200px){.video-player-modal-split{grid-template-columns:1fr 340px;max-width:95%}.info-content{padding:1.5rem}}@media(max-width:1024px){.video-player-modal-split{grid-template-columns:1fr;grid-template-rows:1fr auto;max-height:95vh}.video-player-right{border-left:none;border-top:1px solid var(--border-color);max-height:40vh}.video-player-header-split{position:relative;background:#000000f2}.info-header{padding:1.25rem 1.5rem}.info-content{padding:1.5rem}}@media(max-width:768px){.video-player-modal-overlay{padding:1rem}.video-player-modal-split{border-radius:16px;height:90vh}.video-player-header-split{padding:1rem 1.25rem}.video-title-section-split h2{font-size:1.1rem}.video-instructor-section{padding:1rem 1.25rem}.info-content{padding:1.5rem}.info-tab{font-size:.8rem;padding:.875rem .5rem}}@media(max-width:480px){.video-player-modal-overlay{padding:.5rem}.video-player-modal-split{border-radius:12px;height:95vh}.video-player-header-split{padding:.875rem 1rem}.video-title-section-split h2{font-size:1rem}.video-topic-badge-split{font-size:.65rem;padding:.25rem .65rem}.video-close-btn-split{width:36px;height:36px;font-size:1rem}.instructor-avatar-split{width:40px;height:40px;font-size:1rem}.info-content{padding:1rem}.info-header{padding:1rem 1.25rem}.info-header i{font-size:1.1rem}.info-header h3{font-size:.9rem}.video-description-text{font-size:.9rem;line-height:1.7}}@media(max-width:480px){.video-player-modal-overlay{padding:.5rem}.video-player-modal-split{border-radius:12px;height:95vh}.video-player-header-split{padding:.875rem 1rem}.video-title-section-split h2{font-size:1rem}.video-topic-badge-split{font-size:.65rem;padding:.25rem .65rem}.video-close-btn-split{width:36px;height:36px;font-size:1rem}.instructor-avatar-split{width:40px;height:40px;font-size:1rem}.info-content,.info-header{padding:1rem}.info-header i{font-size:1rem}.info-header h3,.video-description-text{font-size:.85rem}.no-content-message{padding:3rem 1.5rem}.no-content-message i{font-size:2.5rem}.no-content-message p{font-size:.85rem}}@media(min-width:1400px)and (max-width:1599px){.video-player-modal-split{max-width:90%}}@media(min-width:1200px)and (max-width:1399px){.video-player-modal-split{max-width:92%;grid-template-columns:1fr 360px}}.aptitude-explorer{display:flex;flex-direction:column;height:calc(100vh - 64px);background:var(--bg-primary);overflow:hidden;position:relative}.explorer-top-bar{background:var(--card-bg);border-bottom:1px solid var(--border-color);padding:0 2rem;height:60px;display:flex;align-items:center;justify-content:space-between;z-index:100;box-shadow:0 2px 10px #0000000d;flex-shrink:0}.explorer-categories{display:flex;height:100%}.category-tab{background:none;border:none;padding:0 1.5rem;display:flex;align-items:center;gap:.75rem;color:var(--text-secondary);font-weight:600;font-size:.9rem;cursor:pointer;position:relative;transition:all .2s;border-bottom:3px solid transparent}.category-tab:hover{color:var(--text-primary);background:#3b82f60d}.category-tab.active{color:var(--primary-color);background:#3b82f614}.category-tab.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--primary-color);border-radius:3px 3px 0 0}.top-bar-divider{width:1px;height:30px;background:var(--border-color);margin:0 1.5rem}.video-mode-btn{background:var(--bg-secondary);border:1px solid var(--border-color);padding:.6rem 1.25rem;border-radius:10px;display:flex;align-items:center;gap:.75rem;font-weight:700;color:var(--text-primary);cursor:pointer;transition:all .2s}.video-mode-btn i{color:#ef4444;font-size:1.1rem}.video-mode-btn.active{background:#ef4444;color:#fff;border-color:#ef4444}.video-mode-btn.active i{color:#fff}.explorer-layout{display:grid;grid-template-columns:320px 1fr;flex:1;overflow:hidden}.explorer-layout:has(.explorer-main.full-width){grid-template-columns:1fr}.explorer-sidebar{background:var(--card-bg);border-right:1px solid var(--border-color);display:flex;flex-direction:column;position:relative}.mobile-sidebar-toggle{display:none;position:fixed;bottom:80px;right:1rem;z-index:999;background:var(--primary-color);color:#fff;border:none;border-radius:50px;padding:.875rem 1.5rem;box-shadow:0 4px 12px #3b82f666;cursor:pointer;font-weight:700;font-size:.9rem;gap:.5rem;align-items:center;transition:all .3s ease}.mobile-sidebar-toggle:active{transform:scale(.95)}.mobile-sidebar-toggle i{font-size:1rem}.mobile-sidebar-overlay{position:fixed;inset:0;background:#00000080;z-index:1001;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease;pointer-events:none}.mobile-sidebar-overlay.active{opacity:1;visibility:visible;pointer-events:auto}.sidebar-header-label{padding:1.5rem 1.5rem .5rem;font-size:.75rem;font-weight:800;color:var(--text-muted);letter-spacing:.1em}.sidebar-scroll{flex:1;overflow-y:auto;padding:.5rem 0;scrollbar-width:none;-ms-overflow-style:none}.sidebar-scroll::-webkit-scrollbar{display:none}.topic-container{margin-bottom:.125rem}.topic-header{display:flex;align-items:center;padding:.75rem 1rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);border-left:3px solid transparent;position:relative;border-radius:8px;margin:0 .5rem}.topic-header:hover{background:#3b82f60d;transform:translate(2px)}.topic-header.active{background:linear-gradient(135deg,#3b82f614,#6366f10d);border-left-color:var(--primary-color);color:var(--primary-color);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 2px 8px #3b82f61a;border:1px solid rgba(59,130,246,.15);border-left:3px solid var(--primary-color)}.drop-icon-wrapper{width:24px;height:24px;display:flex;align-items:center;justify-content:center;margin-right:.5rem;border-radius:4px;transition:background .2s}.drop-icon-wrapper:hover{background:#0000000d}.drop-icon{font-size:.75rem;opacity:.6}.topic-title-text{font-weight:600;font-size:.95rem;flex:1}.section-dropdown-list{background:var(--bg-secondary);padding:.25rem 0}.section-row{padding:.6rem 1.5rem .6rem 2.75rem;display:flex;align-items:center;gap:.75rem;font-size:.875rem;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);border-radius:6px;margin:.125rem .5rem;position:relative}.section-row:hover{color:var(--primary-color);background:#3b82f60d;transform:translate(4px)}.section-row.active{color:var(--primary-color);font-weight:700;background:linear-gradient(135deg,#3b82f61f,#6366f114);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(59,130,246,.2);box-shadow:0 2px 6px #3b82f61f;transform:translate(4px)}.section-row.active:before{content:"";position:absolute;left:-.5rem;top:50%;transform:translateY(-50%);width:3px;height:60%;background:linear-gradient(180deg,var(--primary-color),#1d4ed8);border-radius:0 2px 2px 0;box-shadow:0 2px 4px #3b82f64d}.section-row i{font-size:.8rem;opacity:.5}.explorer-main{flex:1;overflow-y:auto;overflow-x:hidden;padding:3rem;background:var(--bg-secondary);scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.explorer-main::-webkit-scrollbar{display:none}.explorer-main.full-width{padding:2rem 4rem;max-width:100%}.html-document-mode{background:var(--card-bg);padding:4rem;border-radius:24px;box-shadow:var(--shadow-md);border:1px solid var(--border-color);max-width:900px;margin:0 auto}.doc-header{margin-bottom:3rem}.breadcrumb{font-size:.75rem;font-weight:700;color:var(--primary-color);text-transform:uppercase;letter-spacing:1px;margin-bottom:.5rem;display:block}.doc-header h1{font-size:2.5rem;color:var(--text-primary);margin:0}.doc-body{font-size:1.125rem;line-height:1.8;color:var(--text-primary)}.doc-footer{margin-top:5rem;padding-top:2rem;border-top:1px solid var(--border-color);display:flex;justify-content:center}.video-library-grid-view{max-width:100%;margin:0 auto}.library-intro{margin-bottom:3rem}.library-intro h2{font-size:2rem;margin-bottom:.5rem}.yt-style-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem}.youtube-style-card{cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);border-radius:12px;overflow:hidden}.youtube-style-card:hover{transform:translateY(-8px);box-shadow:0 12px 24px #00000026}.youtube-style-card:active{transform:translateY(-4px)}.yt-card-thumb{position:relative;border-radius:12px;overflow:hidden;aspect-ratio:16 / 9;background:#000}.yt-card-thumb img{width:100%;height:100%;object-fit:cover}.yt-card-duration{position:absolute;bottom:8px;right:8px;background:#000c;color:#fff;padding:2px 6px;border-radius:4px;font-size:.7rem;font-weight:600}.yt-card-play-overlay{position:absolute;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;color:#fff;font-size:3rem;opacity:0;transition:all .3s ease}.youtube-style-card:hover .yt-card-play-overlay{opacity:1;background:#0009}.yt-card-play-overlay i{filter:drop-shadow(0 4px 8px rgba(0,0,0,.5));transition:transform .3s ease}.youtube-style-card:hover .yt-card-play-overlay i{transform:scale(1.1)}.yt-card-details{display:flex;gap:1rem;padding:1rem 0}.yt-card-avatar{width:36px;height:36px;background:var(--primary-color);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0}.yt-card-text h3{font-size:1rem;margin:0 0 .4rem;line-height:1.4;font-weight:600;color:var(--text-primary);display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.yt-card-meta{font-size:.85rem;color:var(--text-secondary);margin:0 0 .5rem}.yt-card-tag{background:var(--bg-secondary);color:var(--text-muted);padding:.2rem .6rem;border-radius:4px;font-size:.7rem;font-weight:700;text-transform:uppercase}.empty-explorer-state{height:50vh;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-muted)}.empty-explorer-state i{font-size:4rem;margin-bottom:1.5rem;opacity:.2}.no-videos-hint{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6rem 2rem;text-align:center;color:var(--text-muted)}.no-videos-hint:before{content:"";font-family:"Font Awesome 6 Free";font-weight:900;font-size:5rem;display:block;margin-bottom:1.5rem;opacity:.15;color:var(--text-muted)}.no-videos-hint{font-size:1.1rem;font-weight:500;line-height:1.6}.empty-sidebar-hint{padding:2rem 1.5rem;text-align:center;color:var(--text-muted);font-size:.9rem;line-height:1.6}.empty-sidebar-hint:before{content:"";font-family:"Font Awesome 6 Free";font-weight:400;font-size:3rem;display:block;margin-bottom:1rem;opacity:.15;color:var(--text-muted)}[data-theme=dark] .topic-header.active{background:linear-gradient(135deg,#3b82f626,#6366f11a);border-color:#3b82f64d;color:#60a5fa;box-shadow:0 2px 8px #3b82f633}[data-theme=dark] .section-row.active{background:linear-gradient(135deg,#3b82f62e,#6366f11f);border-color:#3b82f64d;color:#60a5fa;box-shadow:0 2px 6px #3b82f626}[data-theme=dark] .section-row.active:before{background:linear-gradient(180deg,#60a5fa,#3b82f6)}[data-theme=dark] .video-mode-btn:not(.active){background:#1e293b}.yt-description-short{font-size:.8rem;color:var(--text-secondary);margin:.5rem 0;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.yt-card-tags{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.yt-mini-tag{background:#3b82f61a;color:var(--primary-color);padding:1px 6px;border-radius:4px;font-size:.7rem;font-weight:600}[data-theme=dark] .yt-mini-tag{background:#3b82f633;color:#60a5fa}.explorer-view-toggles{display:flex;gap:.5rem;background:var(--bg-secondary);padding:.35rem;border-radius:12px;border:1px solid var(--border-color)}.view-toggle-btn{background:none;border:none;padding:.5rem 1rem;border-radius:8px;display:flex;align-items:center;gap:.6rem;font-size:.85rem;font-weight:700;color:var(--text-secondary);cursor:pointer;transition:all .2s}.view-toggle-btn.active{background:var(--card-bg);color:var(--primary-color);box-shadow:var(--shadow-sm)}.view-toggle-btn i{font-size:1rem;opacity:.7}.view-toggle-btn.active i{opacity:1}.explorer-resources-view{max-width:1200px;margin:0 auto}.resources-grid-explorer{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;margin-top:2rem}.resource-explorer-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;padding:1.25rem;display:flex;align-items:center;gap:1.25rem;transition:all .2s;box-shadow:var(--shadow-sm)}.resource-explorer-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:var(--primary-color)}.res-icon{width:48px;height:48px;background:var(--bg-secondary);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:#ef4444}.res-details{flex:1}.res-details h4{margin:0 0 .25rem;font-size:1rem;color:var(--text-primary)}.res-topic{font-size:.75rem;color:var(--text-muted);font-weight:600}.res-download-btn{background:var(--primary-color);color:#fff;padding:.5rem 1rem;border-radius:8px;display:flex;align-items:center;gap:.5rem;font-size:.8rem;font-weight:700;text-decoration:none;transition:opacity .2s}.res-download-btn:hover{opacity:.9}[data-theme=dark] .resource-explorer-card{background:#1e293b}[data-theme=dark] .view-toggle-btn.active{background:#0f172a}@media(max-width:1024px){[data-theme=dark] .explorer-sidebar{background:#0a0a0a;border-right-color:#1a1a1a}[data-theme=dark] .sidebar-header-label{color:#6b7280}[data-theme=dark] .topic-header{color:#d1d5db}[data-theme=dark] .topic-header:hover{background:#ffffff0d}[data-theme=dark] .topic-header.active{background:linear-gradient(135deg,#3b82f633,#6366f126);border-color:#3b82f666;color:#60a5fa}[data-theme=dark] .section-dropdown-list{background:#000}[data-theme=dark] .section-row{color:#9ca3af}[data-theme=dark] .section-row:hover{background:#3b82f61a;color:#60a5fa}[data-theme=dark] .section-row.active{background:linear-gradient(135deg,#3b82f640,#6366f12e);border-color:#3b82f666;color:#60a5fa}[data-theme=dark] .section-row.active:before{background:linear-gradient(180deg,#60a5fa,#3b82f6)}[data-theme=dark] .empty-sidebar-hint{color:#6b7280}}@media(max-width:1600px){.yt-style-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}}@media(max-width:1200px){.explorer-main.full-width{padding:2rem 3rem}.yt-style-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.5rem}}@media(max-width:768px){.explorer-main.full-width{padding:1.5rem}.yt-style-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem}.library-intro h2{font-size:1.5rem}}@media(max-width:480px){.explorer-main.full-width{padding:1rem}.yt-style-grid{grid-template-columns:1fr;gap:1rem}}@media(max-width:1024px){.aptitude-explorer{height:calc(100vh - 56px);overflow:hidden}.explorer-top-bar{padding:0;height:auto;min-height:auto;flex-direction:column;align-items:stretch}.explorer-categories{width:100%;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;padding:.5rem 0;order:2}.explorer-categories::-webkit-scrollbar{display:none}.category-tab{padding:.75rem 1.25rem;font-size:1.1rem;white-space:nowrap;flex-direction:column;gap:.35rem;min-width:80px;justify-content:center;border-bottom:none}.category-tab span{font-size:.7rem;font-weight:600}.category-tab.active:after{display:none}.category-tab.active{background:#3b82f61f;border-radius:8px;margin:0 .25rem}.top-bar-divider{display:none}.explorer-view-toggles{width:100%;padding:.5rem 1rem;gap:.5rem;order:1;border-bottom:1px solid var(--border-color)}.view-toggle-btn{flex:1;padding:.65rem;font-size:1rem;gap:.5rem;border-radius:8px;justify-content:center}.view-toggle-btn span{font-size:.8rem}.view-toggle-btn.active{background:var(--primary-color);color:#fff}.explorer-layout{grid-template-columns:1fr;position:relative;flex:1;overflow:hidden}.mobile-sidebar-toggle{display:flex}.explorer-sidebar{position:fixed;top:0;left:-100%;width:320px;max-width:85vw;height:100vh;z-index:1002;transition:left .3s ease;box-shadow:4px 0 12px #00000026;background:var(--card-bg)}.explorer-sidebar.mobile-open{left:0}.explorer-main{padding:1rem;height:100%;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.explorer-main.full-width{padding:1rem}}@media(max-width:768px){.aptitude-explorer{height:calc(100vh - 52px);overflow:hidden}.explorer-top-bar{padding:0}.explorer-categories{padding:.5rem;gap:.25rem}.category-tab{padding:.65rem 1rem;font-size:1.25rem;min-width:70px}.category-tab span{font-size:.65rem}.explorer-view-toggles{padding:.5rem .75rem;gap:.4rem}.view-toggle-btn{padding:.6rem .5rem;font-size:1.1rem}.view-toggle-btn span{font-size:.75rem}.explorer-main{padding:.875rem;overflow-y:auto;overflow-x:hidden}.explorer-main.full-width{padding:.875rem}.html-document-mode{padding:1.5rem 1rem;border-radius:12px}.doc-header h1{font-size:1.5rem}.doc-body{font-size:.95rem}.library-intro h2{font-size:1.35rem}.library-intro p{font-size:.85rem}.yt-style-grid{gap:1rem}.yt-card-details{padding:.65rem 0}.yt-card-avatar{width:30px;height:30px;font-size:.85rem}.yt-card-text h3{font-size:.9rem}.yt-card-meta{font-size:.75rem}.practice-cta{width:100%;justify-content:center}}@media(max-width:480px){.aptitude-explorer{height:calc(100vh - 48px);overflow:hidden}.explorer-top-bar{padding:0}.explorer-categories{padding:.4rem;gap:.2rem}.category-tab{padding:.6rem .85rem;font-size:1.15rem;min-width:65px}.category-tab span{font-size:.6rem}.explorer-view-toggles{padding:.4rem .6rem;gap:.35rem}.view-toggle-btn{padding:.55rem .4rem;font-size:1rem}.view-toggle-btn span{font-size:.7rem}.explorer-main{padding:.75rem;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.explorer-main.full-width{padding:.75rem}.html-document-mode{padding:1.25rem .875rem;border-radius:10px}.doc-header{margin-bottom:1.5rem}.breadcrumb{font-size:.65rem}.doc-header h1{font-size:1.35rem}.doc-body{font-size:.9rem;line-height:1.65}.doc-footer{margin-top:2.5rem;padding-top:1.25rem}.practice-cta{width:100%;padding:.8rem 1.25rem;font-size:.85rem}.library-intro{margin-bottom:1.25rem}.library-intro h2{font-size:1.15rem;margin-bottom:.3rem}.library-intro p{font-size:.8rem}.yt-style-grid{gap:.875rem}.yt-card-thumb{border-radius:8px}.yt-card-duration{font-size:.6rem;padding:2px 4px}.yt-card-play-overlay{font-size:2.25rem}.yt-card-details{gap:.65rem;padding:.6rem 0}.yt-card-avatar{width:26px;height:26px;font-size:.75rem}.yt-card-text h3{font-size:.85rem;-webkit-line-clamp:2}.yt-card-meta{font-size:.7rem;margin-bottom:.3rem}.yt-description-short{font-size:.7rem;margin:.3rem 0}.yt-card-tags{gap:.25rem}.yt-mini-tag{font-size:.6rem;padding:1px 4px}.yt-card-tag{font-size:.6rem;padding:.125rem .4rem}.empty-explorer-state{height:35vh;padding:1.5rem .875rem}.empty-explorer-state i{font-size:2.5rem;margin-bottom:.875rem}.empty-explorer-state h2{font-size:1rem}.empty-explorer-state p{font-size:.8rem}.no-videos-hint{padding:3rem 1.25rem;font-size:.9rem}.no-videos-hint:before{font-size:3.5rem;margin-bottom:.875rem}}@media(max-width:768px)and (orientation:landscape){.aptitude-explorer{height:100vh}.explorer-top-bar{height:48px;min-height:48px}.explorer-categories{padding:.25rem 0}.category-tab{padding:.5rem .75rem}.explorer-view-toggles{margin:.25rem 0}.view-toggle-btn{padding:.4rem .6rem}.explorer-main{padding:1rem}.html-document-mode{padding:1.5rem}}@media(hover:none)and (pointer:coarse){.category-tab,.view-toggle-btn{min-height:44px;touch-action:manipulation}.youtube-style-card{touch-action:manipulation}.practice-cta{min-height:48px;touch-action:manipulation}.topic-header,.section-row{min-height:44px;touch-action:manipulation}}.assessment-page{background:var(--bg-secondary);font-family:var(--font-family);width:100%;min-height:100vh;display:flex;flex-direction:column;padding-bottom:80px}.assessment-header{background:var(--card-bg);color:var(--text-primary);padding:1rem;display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow-sm);border-bottom:1px solid var(--border-color);z-index:10;min-height:60px;box-sizing:border-box;flex-shrink:0;position:sticky;top:0}.header-left{display:flex;align-items:center;gap:1rem;flex:1}.back-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);width:10%;min-width:32px;max-width:50px;height:32px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition-fast);font-size:.9rem;flex-shrink:0}.back-btn:hover{background:var(--hover-bg);border-color:var(--primary-color);color:var(--primary-color)}.header-info{flex:1;min-width:0}.header-info h1{font-size:1.1rem;font-weight:600;margin:0;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-meta{display:none}.header-right{display:flex;gap:.5rem;flex-shrink:0}.header-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);padding:.5rem .85rem;border-radius:var(--radius-md);display:flex;align-items:center;gap:.4rem;cursor:pointer;transition:var(--transition-fast);font-size:.85rem;font-weight:500;white-space:nowrap}.header-btn:hover{background:var(--hover-bg);border-color:var(--primary-color);color:var(--text-primary)}.header-btn i{font-size:.85rem}.assessment-contents{display:flex;flex-direction:row;gap:1.5rem;max-width:1400px;margin:0 auto;align-items:flex-start;padding:1.5rem 1rem;width:100%;box-sizing:border-box;flex:1;min-height:0}.question-section{flex:1;min-width:0;padding:0;background:transparent;display:flex;flex-direction:column;height:calc(100vh - 160px);overflow-y:auto}.question-section::-webkit-scrollbar{width:6px}.question-section::-webkit-scrollbar-track{background:transparent}.question-section::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:10px}.question-section::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.question-card{background:var(--card-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden;border:1px solid var(--border-color);height:fit-content;width:100%;max-width:100%}.question-header{background:var(--bg-tertiary);color:var(--text-primary);padding:1.5rem 2rem;border-bottom:1px solid var(--border-color)}.question-header h2{font-size:var(--font-size-2xl);font-weight:600;margin:0;color:var(--text-primary)}.question-body{padding:2rem;background:var(--card-bg)}.question-text{font-size:var(--font-size-lg);color:var(--text-primary);margin-bottom:1.5rem;line-height:1.6;font-weight:500}.question-image-container{display:flex;justify-content:center;margin-bottom:2rem;padding:1rem;background:var(--bg-tertiary);border-radius:var(--radius-md);border:1px solid var(--border-color)}.question-image{max-width:100%;max-height:400px;object-fit:contain}.formula{font-family:Courier New,monospace;background:var(--primary-color);padding:.5rem 1rem;border-radius:var(--radius-md);font-weight:700;color:#fff;border:1px solid var(--primary-color);display:inline-block;margin:0 .25rem}.options-list{display:flex;flex-direction:column;gap:1.25rem}.option-item{display:flex;align-items:center;gap:1rem;padding:1.25rem 1.5rem;background:var(--bg-tertiary);border:2px solid var(--border-color);border-radius:var(--radius-lg);cursor:pointer;transition:var(--transition-fast);position:relative}.option-item:hover{background:var(--hover-bg);border-color:var(--primary-color)}.option-item.selected{background:var(--hover-bg);border-color:var(--primary-color);box-shadow:0 0 0 2px #3b82f633}.option-radio{width:28px;height:28px;border:2px solid var(--border-color);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:var(--transition-fast);background:var(--card-bg)}.option-item.selected .option-radio{border-color:var(--primary-color);background:var(--primary-color)}.radio-dot{width:10px;height:10px;background:#fff;border-radius:50%}.option-text{font-size:var(--font-size-base);color:var(--text-primary);font-weight:500}.question-actions{display:flex;justify-content:space-between;align-items:center;padding:.5rem 1.2rem;border-top:1px solid var(--border-color);gap:1rem;background:var(--card-bg);flex-wrap:wrap}.assessment-page .action-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:var(--transition-fast);white-space:nowrap;min-width:auto;text-transform:capitalize;border:2px solid transparent;flex:0 0 auto;max-width:fit-content}.assessment-page .action-btn.secondary{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border-color)}.assessment-page .action-btn.secondary:hover:not(:disabled){background:var(--hover-bg);color:var(--primary-color);border-color:var(--primary-color);transform:translateY(-1px)}.assessment-page .action-btn.show-answer{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border-color);flex:0 0 auto}.assessment-page .action-btn.show-answer:hover:not(:disabled){background:var(--hover-bg);color:var(--primary-color);border-color:var(--primary-color);transform:translateY(-1px)}.assessment-page .action-btn.primary{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.assessment-page .action-btn.primary:hover:not(:disabled){background:var(--primary-dark);border-color:var(--primary-dark);transform:translateY(-1px);box-shadow:0 4px 12px #2563eb4d}.assessment-page .action-btn:disabled{opacity:.4;cursor:not-allowed;background:var(--bg-tertiary);border-color:var(--border-color);color:var(--text-muted)}.assessment-page .action-btn i{font-size:.9rem}.assessment-sidebar{width:380px;flex-shrink:0;padding:0;display:flex;flex-direction:column;gap:1.5rem;background:transparent;border-left:none;position:sticky;top:2rem;max-height:calc(100vh - 120px);overflow-y:auto}.sidebar-card{background:var(--card-bg);border-radius:var(--radius-lg);padding:1.75rem;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.sidebar-card h3{font-size:var(--font-size-xl);font-weight:600;color:var(--text-primary);margin:0 0 1rem}.info-card{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;position:relative;overflow:hidden;border:none}.current-status{margin-bottom:1rem;font-size:var(--font-size-sm);color:var(--text-secondary);font-weight:500}.current-status span{color:var(--primary-color);font-size:var(--font-size-lg);font-weight:700;margin-left:.5rem}.info-card:before{content:"";position:absolute;top:-30px;right:-30px;width:150px;height:150px;background:radial-gradient(circle,rgba(255,255,255,.2) 0%,transparent 70%);border-radius:50%}.info-card h3{color:#fff;position:relative;z-index:1;font-size:var(--font-size-xl);margin-bottom:.75rem}.info-card p{margin:0;line-height:1.6;opacity:.95;font-size:var(--font-size-sm);position:relative;z-index:1}.questions-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:.625rem;margin-bottom:1.5rem}.question-number{width:100%;aspect-ratio:1;border:2px solid var(--border-color);background:var(--bg-primary);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:var(--transition-fast);color:var(--text-muted);display:flex;align-items:center;justify-content:center}.question-number:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--primary-color);color:var(--text-primary)}.question-number.correct{background:var(--success-color);border-color:var(--success-color);color:#fff}.question-number.incorrect{background:var(--error-color);border-color:var(--error-color);color:#fff}.question-number.active{background:var(--primary-color);border-color:var(--primary-color);color:#fff;box-shadow:0 0 0 2px #3b82f64d;transform:scale(1.02)}.question-number.unanswered{background:var(--bg-tertiary);border-color:var(--border-color);color:var(--text-muted)}.legend{display:grid;grid-template-columns:repeat(2,1fr);gap:.875rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.legend-item{display:flex;align-items:center;gap:.625rem;font-size:var(--font-size-xs);color:var(--text-secondary);font-weight:500}.legend-dot{width:16px;height:16px;border-radius:var(--radius-sm);flex-shrink:0}.legend-dot.correct{background:var(--success-color)}.legend-dot.incorrect{background:var(--error-color)}.legend-dot.active{background:var(--primary-color)}.legend-dot.unanswered{background:var(--bg-tertiary);border:1px solid var(--border-color)}[data-theme=dark] .assessment-page{background:#111827}[data-theme=dark] .assessment-header,[data-theme=dark] .question-card,[data-theme=dark] .question-body,[data-theme=dark] .question-actions,[data-theme=dark] .sidebar-card,[data-theme=dark] .option-radio{background:#1f2937;border-color:#374151}[data-theme=dark] .question-header,[data-theme=dark] .option-item,[data-theme=dark] .question-image-container,[data-theme=dark] .back-btn,[data-theme=dark] .header-btn,[data-theme=dark] .meta-badge,[data-theme=dark] .action-btn.secondary,[data-theme=dark] .action-btn.show-answer{background:#111827;border-color:#374151}[data-theme=dark] .question-number.unanswered{background:#1f2937;border-color:#374151;color:#9ca3af}[data-theme=dark] .question-text,[data-theme=dark] .option-text,[data-theme=dark] .header-info h1,[data-theme=dark] .question-header h2,[data-theme=dark] .sidebar-card h3{color:#f9fafb}[data-theme=dark] .option-item:hover,[data-theme=dark] .option-item.selected{background:#2d3748}[data-theme=dark] .option-item.selected{border-color:var(--primary-color)}[data-theme=dark] .back-btn:hover,[data-theme=dark] .header-btn:hover{background:#2d3748}@media(max-width:1200px){.assessment-sidebar{width:320px}.questions-grid{grid-template-columns:repeat(5,1fr)}.assessment-contents{padding:1.5rem 1rem}}@media(max-width:968px){.assessment-header{padding:.75rem;min-height:56px}.header-left{gap:.75rem}.back-btn{width:10%;min-width:30px;max-width:45px;height:30px;font-size:.85rem}.header-info h1{font-size:1rem}.header-right{gap:.5rem}.header-btn{padding:.45rem .75rem;font-size:.8rem}.assessment-contents{flex-direction:column;padding:1rem;gap:1.5rem;overflow-y:auto;height:auto}.question-section{width:100%;order:1;height:auto;min-height:auto;overflow-y:visible}.assessment-sidebar{width:100%;position:static;max-height:none;order:2}.questions-grid{grid-template-columns:repeat(8,1fr)}.legend{grid-template-columns:repeat(4,1fr)}}@media(max-width:640px){.assessment-header{padding:.65rem;min-height:52px}.header-left{gap:.65rem}.back-btn{width:10%;min-width:28px;max-width:40px;height:28px;font-size:.8rem}.header-info h1{font-size:.95rem}.header-right{gap:.4rem}.header-btn{padding:.4rem .65rem;font-size:.75rem;gap:.3rem}.header-btn i{font-size:.75rem}.assessment-contents{padding:.75rem;gap:1rem}.question-card{border-radius:var(--radius-md)}.question-header{padding:.875rem 1rem}.question-header h2{font-size:var(--font-size-base)}.question-body{padding:1rem}.question-text{font-size:var(--font-size-sm);margin-bottom:1rem}.question-image-container{padding:.75rem;margin-bottom:1.25rem}.question-image{max-height:250px}.formula{font-size:var(--font-size-xs);padding:.4rem .7rem}.options-list{gap:.75rem}.option-item{padding:.875rem 1rem}.option-radio{width:22px;height:22px}.radio-dot{width:7px;height:7px}.option-text{font-size:var(--font-size-sm)}.question-actions{flex-direction:row;flex-wrap:wrap;gap:.6rem;justify-content:space-between}.assessment-page .action-btn{padding:.65rem 1rem;font-size:var(--font-size-xs);min-width:auto;flex:0 1 auto}.assessment-page .action-btn.show-answer{flex:0 0 auto;max-width:fit-content;order:3}.assessment-sidebar{gap:1rem}.sidebar-card{padding:1rem;border-radius:var(--radius-md)}.sidebar-card h3{font-size:var(--font-size-sm);margin-bottom:.65rem}.info-card p{font-size:.7rem}.current-status{font-size:.7rem;margin-bottom:.65rem}.questions-grid{grid-template-columns:repeat(6,1fr);gap:.45rem}.question-number{font-size:.7rem}.legend{grid-template-columns:repeat(2,1fr);gap:.45rem;padding-top:.875rem}.legend-item{font-size:.65rem;gap:.35rem}.legend-dot{width:11px;height:11px}}@media(max-width:480px){.assessment-header{padding:.6rem;min-height:50px}.header-left{gap:.6rem}.back-btn{width:10%;min-width:26px;max-width:38px;height:26px;font-size:.75rem}.header-info h1{font-size:.9rem}.header-btn{padding:.35rem .6rem;font-size:.7rem;gap:.25rem}.header-btn i{font-size:.7rem}.assessment-contents{padding:.5rem;gap:.75rem}.question-card{border-radius:var(--radius-sm)}.question-header{padding:.75rem .875rem}.question-header h2{font-size:var(--font-size-sm)}.question-body{padding:.875rem}.question-text{font-size:.8rem;margin-bottom:.875rem}.question-image-container{padding:.5rem;margin-bottom:.875rem}.question-image{max-height:200px}.options-list{gap:.65rem}.option-item{padding:.75rem .875rem;gap:.65rem}.option-radio{width:20px;height:20px}.radio-dot{width:6px;height:6px}.option-text{font-size:.8rem}.question-actions{gap:.5rem}.assessment-page .action-btn{padding:.6rem .875rem;font-size:.7rem;gap:.35rem}.assessment-page .action-btn i{font-size:.7rem}.sidebar-card{padding:.875rem}.sidebar-card h3{font-size:.8rem;margin-bottom:.5rem}.info-card p,.current-status{font-size:.65rem}.questions-grid{grid-template-columns:repeat(5,1fr);gap:.4rem}.question-number{font-size:.65rem}.legend{gap:.4rem}.legend-item{font-size:.6rem;gap:.3rem}.legend-dot{width:10px;height:10px}}@media(max-width:360px){.assessment-header{padding:.55rem;min-height:48px}.back-btn{width:10%;min-width:24px;max-width:35px;height:24px;font-size:.7rem}.header-info h1{font-size:.85rem}.header-btn{padding:.3rem .5rem;font-size:.65rem}.assessment-contents{padding:.4rem}.question-header{padding:.65rem .75rem}.question-header h2{font-size:.8rem}.question-body{padding:.75rem}.option-item{padding:.65rem .75rem}.assessment-page .action-btn{padding:.55rem .75rem;font-size:.65rem}.questions-grid{grid-template-columns:repeat(5,1fr);gap:.35rem}.question-number{font-size:.6rem}}.results-page{min-height:100vh;background:#f5f7fa;padding:2rem}.results-header{margin-bottom:2rem;display:flex;align-items:center;gap:1.5rem}.results-page .back-btn{display:inline-flex;align-items:center;gap:.75rem;padding:.75rem 1.5rem;background:#fff;border:2px solid #e2e8f0;border-radius:10px;color:#4a5568;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap;flex-shrink:0;width:auto;height:auto}.results-page .back-btn:hover{background:#f7fafc;border-color:#cbd5e0;color:#2d3748;transform:translate(-4px)}.results-page .back-btn i{font-size:1rem}.results-header h1{font-size:2rem;font-weight:700;color:#2d3748;margin:0}.results-filters{background:#fff;border-radius:16px;padding:1.5rem;margin-bottom:2rem;box-shadow:0 2px 10px #0000000d}.filter-controls{display:flex;gap:1.5rem;align-items:flex-end;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:.5rem;flex:1;min-width:200px}.filter-group label{font-size:.9rem;font-weight:500;color:#4a5568}.filter-select,.filter-date{padding:.75rem 1rem;border:2px solid #e2e8f0;border-radius:8px;font-size:.95rem;color:#2d3748;background:#fff;transition:all .3s ease}.filter-select:focus,.filter-date:focus{outline:none;border-color:#ff6b6b}.clear-filter-btn{padding:.75rem 1.5rem;background:#fff;border:2px solid #e2e8f0;border-radius:8px;color:#ff6b6b;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap}.clear-filter-btn:hover{background:#fff5f5;border-color:#ff6b6b}.results-table-container{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 2px 10px #0000000d}.results-table{width:100%;border-collapse:collapse}.results-table thead{background:#f7fafc}.results-table th{padding:1.25rem 1.5rem;text-align:left;font-size:.85rem;font-weight:600;color:#718096;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e2e8f0}.results-table tbody tr{border-bottom:1px solid #e2e8f0;transition:all .3s ease}.results-table tbody tr:hover{background:#f7fafc}.results-table tbody tr:last-child{border-bottom:none}.results-table td{padding:1.25rem 1.5rem;vertical-align:middle}.name-value{font-size:1.1rem;color:#2d3748;font-weight:600;display:block;margin-bottom:.25rem}.category-tag{display:inline-block;padding:.25rem .75rem;background:#edf2f7;color:#4a5568;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase}.loading-state,.empty-state{padding:4rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:1.5rem}.loading-state i,.empty-state i{font-size:3rem;color:#e2e8f0}.spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #4299e1;border-radius:50%;animation:spin 1s linear infinite}.cell-value{font-size:.95rem;color:#2d3748;font-weight:500;display:block}.score-value{color:#4299e1;font-weight:600}.percentage-value{color:#48bb78;font-weight:600}.view-details-btn{padding:.625rem 1.5rem;background:#fff;border:2px solid #e2e8f0;border-radius:8px;color:#4a5568;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease;white-space:nowrap}.view-details-btn:hover{background:#f7fafc;border-color:#cbd5e0;color:#2d3748}.primary-btn{padding:.875rem 2rem;background:#4299e1;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.primary-btn:hover{background:#3182ce;transform:translateY(-2px);box-shadow:0 4px 12px #4299e14d}.modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:#fff;border-radius:20px;max-width:700px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:2rem;border-bottom:2px solid #e2e8f0}.modal-header h2{font-size:1.75rem;font-weight:700;color:#2d3748;margin:0}.modal-close-btn{width:40px;height:40px;border-radius:50%;border:none;background:#f7fafc;color:#4a5568;font-size:1.25rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.modal-close-btn:hover{background:#e2e8f0;color:#2d3748;transform:rotate(90deg)}.modal-body{padding:2rem}.detail-section{margin-bottom:2rem;text-align:center}.detail-section h3{font-size:1.5rem;font-weight:700;color:#2d3748;margin:0 0 .5rem}.detail-subtitle{font-size:.95rem;color:#718096;margin:0}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:2rem}.detail-card{background:#f7fafc;border-radius:12px;padding:1.25rem;display:flex;align-items:center;gap:1rem;transition:all .3s ease}.detail-card:hover{background:#edf2f7;transform:translateY(-2px)}.detail-card.highlight{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.detail-card.highlight .detail-icon{background:#fff3;color:#fff}.detail-card.highlight .detail-label,.detail-card.highlight .detail-value{color:#fff}.detail-icon{width:50px;height:50px;background:#fff;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:#667eea;flex-shrink:0}.detail-info{display:flex;flex-direction:column;gap:.25rem;flex:1}.detail-label{font-size:.85rem;color:#718096;font-weight:500}.detail-value{font-size:1.1rem;color:#2d3748;font-weight:700}.performance-breakdown-section{margin-bottom:2rem}.performance-breakdown-section h4{font-size:1.25rem;font-weight:700;color:#2d3748;margin:0 0 1rem}.breakdown-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.breakdown-item{background:#f7fafc;border-radius:12px;padding:1.25rem;display:flex;flex-direction:column;align-items:center;gap:.5rem;text-align:center;transition:all .3s ease}.breakdown-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.breakdown-item i{font-size:2rem;margin-bottom:.5rem}.breakdown-item.correct{border:2px solid #48bb78}.breakdown-item.correct i{color:#48bb78}.breakdown-item.incorrect{border:2px solid #f56565}.breakdown-item.incorrect i{color:#f56565}.breakdown-item.unattempted{border:2px solid #ed8936}.breakdown-item.unattempted i{color:#ed8936}.breakdown-item.total{border:2px solid #4299e1}.breakdown-item.total i{color:#4299e1}.breakdown-label{font-size:.9rem;color:#718096;font-weight:500}.breakdown-value{font-size:1.75rem;color:#2d3748;font-weight:700}.accuracy-section{background:linear-gradient(135deg,#f7fafc,#edf2f7);border-radius:12px;padding:1.5rem}.accuracy-label{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;font-size:1rem;font-weight:600;color:#2d3748}.accuracy-label i{color:#667eea;font-size:1.25rem}.accuracy-bar{height:12px;background:#e2e8f0;border-radius:6px;overflow:hidden;margin-bottom:.75rem}.accuracy-fill{height:100%;background:linear-gradient(90deg,#48bb78,#38a169);border-radius:6px;transition:width .5s ease}.accuracy-value{display:block;text-align:right;font-size:1.25rem;font-weight:700;color:#48bb78}.modal-footer{padding:1.5rem 2rem;border-top:2px solid #e2e8f0;display:flex;gap:1rem;justify-content:flex-end}.modal-action-btn{padding:.875rem 2rem;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:.75rem}.modal-action-btn.secondary{background:#f7fafc;color:#4a5568;border:2px solid #e2e8f0}.modal-action-btn.secondary:hover{background:#edf2f7;border-color:#cbd5e0}.modal-action-btn.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.modal-action-btn.primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}@media(max-width:1200px){.results-table th:nth-child(2),.results-table td:nth-child(2){display:none}}@media(max-width:968px){.results-page{padding:1rem}.results-header{flex-direction:column;align-items:flex-start;gap:1rem}.back-btn{width:100%;justify-content:center}.filter-controls{flex-direction:column;align-items:stretch}.filter-group{min-width:100%}.clear-filter-btn{width:100%}.results-table-container{overflow-x:auto}.results-table{min-width:800px}.detail-grid,.breakdown-grid{grid-template-columns:1fr}.modal-footer{flex-direction:column}.modal-action-btn{width:100%;justify-content:center}}@media(max-width:640px){.results-header h1{font-size:1.5rem}.back-btn{padding:.625rem 1.25rem;font-size:.9rem}.results-filters,.results-table th,.results-table td{padding:1rem}.view-details-btn{padding:.5rem 1rem;font-size:.85rem}.modal-header,.modal-body,.modal-footer{padding:1.5rem}.modal-header h2{font-size:1.5rem}.detail-section h3{font-size:1.25rem}.breakdown-value{font-size:1.5rem}}@media(max-width:480px){.results-page{padding:1rem .5rem}.results-header{gap:.75rem;margin-bottom:1.5rem}.results-header h1{font-size:1.25rem}.back-btn{padding:.5rem 1rem;font-size:.8rem}.results-filters{padding:.75rem;margin-bottom:1.5rem}.filter-select,.filter-date{padding:.6rem .75rem;font-size:.85rem}.clear-filter-btn{padding:.6rem 1rem;font-size:.85rem}.results-table th,.results-table td{padding:.75rem;font-size:.85rem}.name-value{font-size:.95rem}.category-tag{font-size:.65rem;padding:.2rem .5rem}.view-details-btn{padding:.4rem .75rem;font-size:.8rem}.modal-overlay{padding:.5rem}.modal-content{border-radius:12px}.modal-header,.modal-body,.modal-footer{padding:1rem}.modal-header h2{font-size:1.1rem}.modal-close-btn{width:32px;height:32px;font-size:1rem}.detail-section{margin-bottom:1.5rem}.detail-section h3{font-size:1.1rem}.detail-card{padding:1rem;gap:.75rem}.detail-icon{width:40px;height:40px;font-size:1.25rem}.detail-value{font-size:1rem}.breakdown-item{padding:1rem}.breakdown-value{font-size:1.25rem}.breakdown-label{font-size:.8rem}.accuracy-section{padding:1rem}.accuracy-value{font-size:1rem}.modal-action-btn{padding:.75rem 1rem;font-size:.9rem}}[data-theme=dark] .results-page{background:#0f172a}[data-theme=dark] .results-header h1{color:#f9fafb}[data-theme=dark] .results-filters,[data-theme=dark] .results-table-container{background:#1e293b}[data-theme=dark] .back-btn{background:#1e293b;border-color:#334155;color:#d1d5db}[data-theme=dark] .back-btn:hover{background:#334155;color:#f9fafb}[data-theme=dark] .filter-select,[data-theme=dark] .filter-date{background:#0f172a;border-color:#334155;color:#f9fafb}[data-theme=dark] .clear-filter-btn{background:#0f172a;border-color:#334155;color:#ff6b6b}[data-theme=dark] .clear-filter-btn:hover{background:#334155}[data-theme=dark] .results-table thead{background:#0f172a}[data-theme=dark] .results-table th{color:#9ca3af;border-bottom-color:#334155}[data-theme=dark] .results-table tbody tr{border-bottom-color:#334155}[data-theme=dark] .results-table tbody tr:hover{background:#334155}[data-theme=dark] .name-value,[data-theme=dark] .cell-value{color:#f9fafb}[data-theme=dark] .view-details-btn{background:#0f172a;border-color:#334155;color:#d1d5db}[data-theme=dark] .view-details-btn:hover{background:#334155;color:#f9fafb}[data-theme=dark] .modal-overlay{background:#000c}[data-theme=dark] .modal-content{background:#1e293b}[data-theme=dark] .modal-header{border-bottom-color:#334155}[data-theme=dark] .modal-header h2{color:#f9fafb}[data-theme=dark] .modal-close-btn{background:#0f172a;color:#d1d5db}[data-theme=dark] .modal-close-btn:hover{background:#334155;color:#f9fafb}[data-theme=dark] .detail-section h3{color:#f9fafb}[data-theme=dark] .detail-subtitle{color:#9ca3af}[data-theme=dark] .detail-card{background:#0f172a}[data-theme=dark] .detail-card:hover,[data-theme=dark] .detail-icon{background:#334155}[data-theme=dark] .detail-label{color:#9ca3af}[data-theme=dark] .detail-value,[data-theme=dark] .performance-breakdown-section h4{color:#f9fafb}[data-theme=dark] .breakdown-item{background:#0f172a}[data-theme=dark] .breakdown-label{color:#9ca3af}[data-theme=dark] .breakdown-value{color:#f9fafb}[data-theme=dark] .accuracy-section{background:linear-gradient(135deg,#0f172a,#1e293b)}[data-theme=dark] .accuracy-label{color:#f9fafb}[data-theme=dark] .accuracy-bar{background:#334155}[data-theme=dark] .modal-footer{border-top-color:#334155}[data-theme=dark] .modal-action-btn.secondary{background:#0f172a;border-color:#334155;color:#d1d5db}[data-theme=dark] .modal-action-btn.secondary:hover{background:#334155;color:#f9fafb}.communication-page{min-height:100vh;background:var(--bg-primary)}.comm-loading{display:flex;align-items:center;justify-content:center;height:100vh;background:#f8fafc;color:#6366f1;font-weight:700;font-size:1.25rem}.communication-hero{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:8rem 0 6rem;position:relative;overflow:hidden;min-height:400px}.communication-hero:before{content:"";position:absolute;inset:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="75" cy="75" r="1" fill="rgba(255,255,255,0.1)"/></pattern></defs><rect width="100" height="100" fill="url(%23grain)"/></svg>');opacity:.3}.hero-text{text-align:center;max-width:800px}.hero-text h1{font-size:4rem;font-weight:900;margin-bottom:1.5rem;line-height:1.1;letter-spacing:-.04em;text-shadow:0 10px 30px rgba(0,0,0,.3)}.hero-text p{font-size:1.4rem;opacity:.95;line-height:1.6;font-weight:500;max-width:700px;margin:0 auto}.skills-overview-section{max-width:1400px;margin:0 auto;padding:4rem 2rem}.skills-grid{display:flex;gap:1.5rem;overflow-x:auto;scroll-behavior:smooth;padding:1rem 2rem 2rem;scrollbar-width:none;-ms-overflow-style:none;max-width:1200px;margin:0 auto;box-sizing:border-box}.skills-grid::-webkit-scrollbar{display:none}.skill-card{background:var(--card-bg);border-radius:16px;padding:1.5rem;border:1px solid var(--border-color);transition:all .3s cubic-bezier(.25,.46,.45,.94);cursor:pointer;position:relative;min-width:320px;max-width:320px;height:480px;flex-shrink:0;box-shadow:var(--shadow-sm);overflow:visible;display:flex;flex-direction:column}.skill-card:hover,.skill-card.active{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--primary-color);background:var(--card-bg)}.skill-card.active{background:var(--bg-tertiary);border-color:var(--primary-color)}.skill-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;position:relative;z-index:1;min-height:50px}.skill-icon{width:50px;height:50px;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:14px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.25rem;box-shadow:0 4px 15px #3b82f64d;border:1px solid rgba(255,255,255,.2);flex-shrink:0}.skill-header h3{font-size:1.15rem;font-weight:700;color:var(--text-primary);margin:0;line-height:1.3;height:2.99rem;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.skill-description{color:var(--text-secondary);margin-bottom:1rem;line-height:1.5;font-size:.875rem;position:relative;z-index:1;height:2.625rem;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.target-audience-note{font-size:.75rem;color:#6366f1;background:#f5f7ff;padding:.5rem .75rem;border-radius:8px;margin-bottom:1rem;font-weight:500;display:flex;align-items:center;gap:.4rem;border:1px dashed rgba(99,102,241,.3);position:relative;z-index:1;min-height:32px}.skill-details{margin-bottom:1rem;position:relative;z-index:1;flex:1;display:flex;flex-direction:column}.skill-meta{display:flex;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap;min-height:28px}.level-badge,.duration-badge{padding:.35rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;border:1px solid rgba(59,130,246,.2)}.level-badge{background:var(--primary-color-light);color:var(--primary-dark)}.duration-badge{color:var(--text-secondary)}.prereq-note{font-size:.75rem;color:#ef4444;background:#fef2f2;padding:.5rem .75rem;border-radius:8px;margin-bottom:.875rem;font-weight:600;display:flex;align-items:center;gap:.4rem;border:1px solid rgba(239,68,68,.1)}.modules-list h4{font-size:.9rem;font-weight:700;color:var(--text-primary);margin:0 0 .625rem}.modules-list ul{list-style:none;padding:0;margin:0}.modules-list li{color:var(--text-secondary);position:relative;padding:.375rem 0 .375rem 1rem;font-size:.8rem;font-weight:500;height:1.5rem;display:-webkit-box;-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.modules-list li:before{content:"✦";position:absolute;left:0;color:#3b82f6;font-weight:700;font-size:.75rem}.start-learning-btn{width:100%;background:linear-gradient(135deg,#4f46e5,#4338ca);color:#fff;border:none;padding:.75rem 1.25rem;border-radius:10px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:0 4px 12px #4f46e533;border:1px solid rgba(255,255,255,.1);position:relative;z-index:1;overflow:hidden;margin-top:auto;height:42px}.start-learning-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.start-learning-btn:hover:before{left:100%}.start-learning-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #3b82f666}.learning-resources-section{max-width:1200px;margin:0 auto;padding:4rem 2rem}.video-courses-scroll{overflow-x:auto;padding:0 0 1rem;margin:0 -2rem;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.video-courses-scroll::-webkit-scrollbar{display:none}.video-courses-container{display:flex;gap:2rem;padding:0 2rem;min-width:max-content}.video-course-card{background:var(--bg-primary);border-radius:12px;overflow:hidden;border:1px solid var(--border-color);transition:all .3s ease;min-width:280px;max-width:280px;flex-shrink:0}.video-course-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #0000001a}.course-thumbnail{position:relative;height:160px;overflow:hidden;background:#f1f5f9}.thumbnail-img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.video-course-card:hover .thumbnail-img{transform:scale(1.1)}.course-duration{position:absolute;bottom:.75rem;right:.75rem;background:#0f172ae6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;padding:.35rem .75rem;border-radius:8px;font-size:.8rem;font-weight:700;display:flex;align-items:center;gap:.35rem;z-index:2;border:1px solid rgba(255,255,255,.1)}.course-info{padding:1rem}.course-info h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem;line-height:1.4}.course-instructor{font-size:.85rem;color:var(--text-secondary);margin-bottom:.75rem}.course-meta{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;font-size:.75rem;flex-wrap:wrap}.course-rating{display:flex;align-items:center;gap:.25rem;color:#fbbf24}.course-level{background:var(--primary-color-light);color:var(--primary-dark);padding:.25rem .5rem;border-radius:12px;font-weight:500}.course-language{background:#f1f5f9;color:#475569;padding:.25rem .5rem;border-radius:12px;font-weight:500}.watch-course-btn{width:100%;background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;border:none;padding:.65rem 1rem;border-radius:8px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.watch-course-btn:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);transform:translateY(-2px)}.ai-practice-section{padding:5rem 0;background:var(--bg-secondary);position:relative;overflow:hidden}.ai-practice-container{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:0 2rem}.ai-practice-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.ai-badge{display:inline-flex;align-items:center;gap:.5rem;background:var(--primary-color-light);color:var(--primary-color);padding:.5rem 1rem;border-radius:20px;font-size:.9rem;font-weight:500;margin-bottom:1.5rem;border:1px solid var(--primary-color)}.ai-badge i{color:var(--primary-color)}.ai-practice-text h2{font-size:3rem;font-weight:800;color:var(--text-primary);margin:0 0 1.5rem;line-height:1.2}.ai-practice-text p{font-size:1.2rem;color:var(--text-secondary);margin-bottom:2.5rem;line-height:1.6}.ai-cta-buttons{display:flex;gap:1rem}.primary-cta-btn,.secondary-cta-btn{padding:1rem 2rem;border-radius:12px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;border:none}.primary-cta-btn{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;box-shadow:0 4px 15px #3b82f64d}.primary-cta-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #3b82f666}.secondary-cta-btn{background:transparent;color:var(--primary-color);border:1px solid var(--primary-color)}.secondary-cta-btn:hover{background:var(--primary-color);color:#fff;transform:translateY(-2px)}.ai-practice-visual{position:relative;display:flex;justify-content:center;align-items:center}.communication-images{position:relative;width:100%;max-width:450px;height:400px}.comm-image{position:absolute;border-radius:20px;overflow:hidden;box-shadow:0 10px 30px #00000026;transition:all .3s ease}.comm-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.comm-image:hover img{transform:scale(1.05)}.comm-image-1{width:200px;height:200px;top:0;left:0;z-index:3}.comm-image-2{width:180px;height:180px;top:50px;right:0;z-index:2}.comm-image-3{width:160px;height:160px;bottom:0;left:50%;transform:translate(-50%);z-index:1}.assessments-section{padding:4rem 0;background:var(--bg-secondary)}.assessments-section .section-header{max-width:1200px;margin:0 auto 3rem;padding:0 2rem;text-align:center}.assessments-grid{display:flex;gap:2rem;overflow-x:auto;scroll-behavior:smooth;padding:1rem 2rem 2rem;scrollbar-width:none;-ms-overflow-style:none;max-width:1200px;margin:0 auto;box-sizing:border-box}.assessments-grid::-webkit-scrollbar{display:none}.assessment-card{background:var(--card-bg);border-radius:16px;border:1px solid var(--border-color);transition:all .3s ease;overflow:hidden;min-width:300px;max-width:300px;flex-shrink:0;display:flex;flex-direction:column;height:auto}.assessment-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #0000001f}.assessment-cover{position:relative;height:160px;overflow:hidden;flex-shrink:0}.assessment-cover img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.assessment-card:hover .assessment-cover img{transform:scale(1.05)}.assessment-overlay{position:absolute;inset:0;background:linear-gradient(135deg,#3b82f6cc,#1d4ed8e6);display:flex;align-items:center;justify-content:center;opacity:0;transition:all .3s ease}.assessment-card:hover .assessment-overlay{opacity:1}.assessment-overlay .assessment-icon{width:60px;height:60px;background:#fff3;border-radius:50%;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid rgba(255,255,255,.3)}.assessment-overlay .assessment-icon i{font-size:1.5rem;color:#fff}.assessment-content{padding:1.25rem;text-align:center;flex:1;display:flex;flex-direction:column;gap:.75rem;width:100%;box-sizing:border-box}.assessment-content h3{font-size:1.05rem;font-weight:700;color:var(--text-primary);line-height:1.3;margin:0;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.assessment-content p{color:var(--text-secondary);line-height:1.5;font-size:.85rem;margin:0;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.assessment-card p{color:var(--text-secondary);line-height:1.6}.assessment-meta-row{display:flex;justify-content:center;gap:.75rem;flex-wrap:wrap}.meta-item{display:flex;align-items:center;gap:.35rem;font-size:.75rem;color:var(--text-secondary);font-weight:500}.meta-item i{font-size:.85rem;color:var(--primary-color)}.passing-score-row{font-size:.8rem;color:var(--text-secondary);font-weight:500;padding:.5rem .75rem;background:var(--bg-secondary);border-radius:8px}.take-assessment-btn{width:100%;background:var(--primary-color);color:#fff;border:none;padding:.65rem 1rem;border-radius:8px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:auto}.take-assessment-btn:hover{background:var(--primary-dark);transform:translateY(-2px)}@media(max-width:768px){.communication-hero{padding:6rem 0 4rem;min-height:350px}.hero-content{padding:0 1.5rem}.hero-text h1{font-size:2.5rem}.hero-text p{font-size:1.1rem}.skills-overview-section{padding-left:1rem;padding-right:1rem}.skills-grid{padding-left:1rem;margin-left:-1rem;margin-right:-1rem}.skill-card{min-width:280px;max-width:280px;padding:1.25rem;height:460px}.skill-card:first-child{margin-left:1rem}.skill-card:last-child{margin-right:1rem}.skill-header h3{font-size:1.1rem;height:2.86rem}.skill-description{height:2.4rem}.skill-icon{width:45px;height:45px;font-size:1.1rem}.resources-container,.assessments-grid{padding-left:1rem;margin-left:-1rem;margin-right:-1rem}.assessment-card{min-width:260px;max-width:260px;height:auto}.assessment-card:first-child{margin-left:1rem}.assessment-card:last-child{margin-right:1rem}.assessment-cover{height:140px}.assessment-content{padding:1rem}.assessment-content h3{font-size:1rem}.assessment-content p{font-size:.8rem}.video-courses-scroll{margin:0 auto;padding:0 1rem 1rem}.video-courses-container{padding:0}.video-course-card{min-width:260px;max-width:260px}.ai-practice-content{grid-template-columns:1fr;gap:2rem;text-align:center}.ai-practice-text h2{font-size:2.5rem}.ai-cta-buttons{justify-content:center;flex-wrap:wrap}.communication-images{max-width:350px;height:300px}.comm-image-1{width:150px;height:150px}.comm-image-2{width:130px;height:130px}.comm-image-3{width:110px;height:110px}}@media(max-width:480px){.communication-hero{padding:.5rem 0 .25rem;min-height:auto}.hero-text h1{font-size:1.3rem;margin-bottom:.25rem}.hero-text p{font-size:.75rem;margin-bottom:.5rem;line-height:1.25}.communication-hero,.learning-resources-section{padding-left:.5rem;padding-right:.5rem}.skills-overview-section{padding:.25rem .5rem}.skills-grid{padding-left:.5rem;margin-left:-.5rem;margin-right:-.5rem}.skill-card{min-width:200px;max-width:200px;padding:.6rem;height:280px}.skill-card:first-child{margin-left:.5rem}.skill-card:last-child{margin-right:.5rem}.skill-header{gap:.3rem;margin-bottom:.3rem}.skill-header h3{font-size:.85rem;height:2rem}.skill-description{height:auto;font-size:.65rem;margin-bottom:.3rem}.skill-icon{width:28px;height:28px;font-size:.9rem}.assessments-section .section-header{padding:0 .5rem;margin-bottom:.25rem}.section-header h2{font-size:1.1rem;margin-bottom:0;line-height:1.2}.section-header p{font-size:.7rem;margin-top:.1rem;margin-bottom:0}.assessments-grid{padding-left:.5rem;margin-left:-.5rem;margin-right:-.5rem}.assessment-card{min-width:180px;max-width:180px;height:auto;padding:0}.assessment-card:first-child{margin-left:.5rem}.assessment-card:last-child{margin-right:.5rem}.assessment-cover{height:80px}.assessment-content{padding:.5rem;gap:.25rem}.assessment-content h3{font-size:.8rem}.assessment-content p{font-size:.6rem}.detail-item{font-size:.65rem;padding:.15rem 0}.video-courses-scroll,.assessments-scroll{margin:0 auto;padding:0 .5rem .25rem}.video-courses-container,.assessments-container{padding:0;gap:.5rem}.video-course-card{min-width:180px;max-width:180px}.ai-practice-section{padding:.75rem 0}.ai-practice-container{padding:0 1rem}.ai-practice-text h2{font-size:1.1rem;margin-bottom:.25rem}.ai-practice-text p{font-size:.75rem;margin-bottom:.5rem}.ai-cta-buttons{flex-direction:column;gap:.3rem}.primary-cta-btn,.secondary-cta-btn{width:100%;justify-content:center;padding:.4rem .8rem;font-size:.75rem;height:32px}.communication-images{max-width:180px;height:150px;margin-top:.75rem}.comm-image-1{width:70px;height:70px}.comm-image-2{width:60px;height:60px}.comm-image-3{width:40px;height:40px}.analytics-section{padding:.25rem .5rem}.analytics-card{min-width:200px;max-width:200px;padding:.5rem;min-height:auto;max-height:none}.analytics-header{padding:.5rem}.analytics-content{padding:.25rem .5rem;min-height:auto;gap:.25rem}.score-circle{width:80px;height:80px}.score-value{font-size:1.2rem}.score-circle .circle-bg,.score-circle .circle-progress{stroke-width:4}.score-description{font-size:.6rem;max-width:100%}.stat-value{font-size:.9rem}}.video-modal-overlay{position:fixed;inset:0;background:#000000e6;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:6rem 2rem 2rem;animation:modalFadeIn .3s ease-out}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.video-modal-clean{position:relative;max-width:70vw;max-height:70vh;width:100%;aspect-ratio:16/9;animation:modalSlideUp .4s ease-out}@keyframes modalSlideUp{0%{transform:translateY(30px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.video-close-btn{position:absolute;top:-60px;right:0;width:40px;height:40px;border:none;background:#ffffffe6;border-radius:50%;color:#374151;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.video-close-btn:hover{background:#fff;transform:scale(1.1)}.video-close-btn i{font-size:1rem}.video-player{width:100%;height:100%;border-radius:12px;overflow:hidden;box-shadow:0 25px 50px #00000080}.video-player iframe{width:100%;height:100%;border:none}@media(max-width:768px){.video-modal-overlay{padding:5rem 1rem 1rem}.video-modal-clean{max-width:85vw;max-height:60vh}.video-close-btn{top:-55px;width:36px;height:36px}.video-close-btn i{font-size:.9rem}.video-player{border-radius:8px}}@media(max-width:480px){.video-modal-overlay{padding:4rem .5rem .5rem}.video-modal-clean{max-width:90vw;max-height:50vh}.video-close-btn{top:-50px;width:32px;height:32px}.video-close-btn i{font-size:.8rem}}.assessment-meta-row{display:flex;flex-wrap:wrap;gap:1rem;margin:1.5rem 0;padding:1rem;background:#f8fafc;border-radius:12px;border:1px solid #eef2ff}.meta-item{display:flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:600;color:#475569}.meta-item i{color:#6366f1;font-size:.9rem}.detail-item{display:flex;justify-content:space-between;align-items:center;margin-top:1rem;padding-top:1rem;border-top:1px dashed #e2e8f0}.detail-item .label{font-size:.9rem;font-weight:700;color:#64748b}.detail-item .value{font-size:.95rem;font-weight:800;color:#1e293b}.no-results-placeholder{text-align:center;background:#fff;padding:3rem;border-radius:20px;border:1px dashed #e2e8f0;display:flex;flex-direction:column;align-items:center;justify-content:center;grid-column:1 / -1;width:100%}.placeholder-icon{width:64px;height:64px;background:#f1f5f9;color:#94a3b8;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;margin:0 auto 1rem}.no-results-placeholder h3{color:#1e293b;font-size:1.25rem;font-weight:700;margin-bottom:.5rem}.no-results-placeholder p{color:#64748b;font-size:.95rem;margin:0}.analytics-section{padding:2rem 1rem;background:var(--bg-secondary)}.analytics-section .section-header{max-width:1200px;margin:0 auto 1.5rem;padding:0}.analytics-grid-wrapper{position:relative;max-width:1200px;margin:0 auto}.analytics-grid{padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:1.5rem}.analytics-card{background:var(--card-bg);border-radius:16px;padding:0;border:1px solid var(--border-color);display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--shadow-sm);transition:all .3s ease}.analytics-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.analytics-header{display:flex;align-items:center;gap:.75rem;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color);background:var(--bg-secondary)}.analytics-icon-wrapper{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,#3b82f61a,#6366f11a);color:var(--primary-color);display:flex;align-items:center;justify-content:center;flex-shrink:0}.analytics-icon-wrapper i{font-size:1.1rem}.analytics-header-text{flex:1;min-width:0}.analytics-header h3{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 .25rem;line-height:1.2}.analytics-header-description{font-size:.7rem;color:var(--text-muted);margin:0;line-height:1.3;font-weight:400}.analytics-content{padding:1.5rem;display:flex;flex-direction:column;gap:1rem;min-height:400px}.no-data-analytics{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1rem;text-align:center;color:var(--text-muted);flex:1;min-height:350px}.no-data-analytics i{font-size:2.5rem;opacity:.2;margin-bottom:1rem}.no-data-analytics p{font-size:.9rem;margin:0 0 1rem}.start-test-btn{background:var(--primary-color);color:#fff;border:none;padding:.625rem 1.25rem;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:.5rem}.start-test-btn:hover{background:var(--primary-dark);transform:translateY(-2px)}.score-circle-wrapper{display:flex;flex-direction:column;align-items:center;padding:1rem 0;position:relative;gap:.75rem}.score-circle{width:160px;height:160px;position:relative;display:flex;align-items:center;justify-content:center}.score-description{font-size:.8rem;color:var(--text-muted);text-align:center;margin:0;max-width:200px;line-height:1.4}.score-circle svg{position:absolute;top:0;left:0;width:100%;height:100%;transform:rotate(-90deg)}.score-circle .circle-bg{fill:none;stroke:var(--bg-secondary);stroke-width:10}.score-circle .circle-progress{fill:none;stroke:url(#gradient-comm);stroke-width:10;stroke-linecap:round;stroke-dasharray:440;transition:stroke-dashoffset 1.5s ease-in-out;filter:drop-shadow(0 0 8px rgba(59,130,246,.4))}.score-circle .circle-progress.animated{animation:progressAnimation 1.5s ease-in-out}@keyframes progressAnimation{0%{stroke-dashoffset:440}}.score-value{font-size:2.5rem;font-weight:700;color:var(--text-primary);position:relative;z-index:1}.analytics-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.stat-item{background:var(--bg-secondary);padding:1rem;border-radius:12px;border:1px solid var(--border-color);display:flex;flex-direction:column;gap:.25rem}.stat-label{font-size:.75rem;color:var(--text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:1.75rem;font-weight:700;color:var(--text-primary);line-height:1}.stat-description{font-size:.7rem;color:var(--text-muted);margin-top:.25rem}.performance-breakdown{display:flex;flex-direction:column;gap:1.25rem}.performance-item{display:flex;flex-direction:column;gap:.5rem}.performance-header{display:flex;justify-content:space-between;align-items:center}.category-name{font-size:.85rem;font-weight:600;color:var(--text-primary)}.percentage{font-size:.9rem;font-weight:700}.progress-bar{height:8px;background:var(--bg-secondary);border-radius:10px;overflow:hidden;position:relative}.progress-fill{height:100%;border-radius:10px;transition:width 1s ease-in-out;position:relative}.activity-list{display:flex;flex-direction:column;gap:1rem}.activity-item{display:flex;align-items:flex-start;gap:1rem;padding:1rem;background:var(--bg-secondary);border-radius:12px;border:1px solid var(--border-color);transition:all .3s ease}.activity-item:hover{background:var(--bg-tertiary);border-color:var(--primary-color)}.activity-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:1.2rem}.activity-icon.success{background:#22c55e1a;color:#22c55e}.activity-icon.warning{background:#f59e0b1a;color:#f59e0b}.activity-info{flex:1;min-width:0}.activity-info h4{font-size:.9rem;font-weight:600;color:var(--text-primary);margin:0 0 .25rem;line-height:1.3}.activity-meta{font-size:.75rem;color:var(--text-muted);margin:0}.view-all-btn{background:var(--primary-color);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:.5rem}.view-all-btn:hover{background:var(--primary-dark);transform:translateY(-2px);box-shadow:0 4px 12px #3b82f64d}.view-all-btn i{transition:transform .3s ease}.view-all-btn:hover i{transform:translate(4px)}@media(max-width:768px){.analytics-grid-wrapper{margin:0 -1rem;padding:0 1rem 1rem;overflow-x:auto;scrollbar-width:none}.analytics-grid-wrapper::-webkit-scrollbar{display:none}.analytics-grid{display:flex!important;gap:1rem;padding-bottom:1rem}.analytics-card{min-width:300px;max-width:300px;flex-shrink:0}.analytics-card:last-child{margin-right:1rem}.analytics-section .section-header>div{flex-direction:column!important;align-items:flex-start!important}.analytics-section .view-all-btn{width:100%;justify-content:center}.score-circle{width:140px;height:140px}.score-value{font-size:2rem}.analytics-stats{grid-template-columns:1fr}}@media(min-width:769px)and (max-width:1024px){.analytics-grid-wrapper{margin:0!important;padding:0!important}.analytics-grid{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:1.5rem}.analytics-card{min-width:auto!important;max-width:none!important}}@media(min-width:1025px){.analytics-grid{grid-template-columns:repeat(3,1fr)!important}}@media(max-width:480px){.communication-hero{padding:.5rem 0!important;min-height:180px!important}.hero-text h1{font-size:1.3rem!important;margin-bottom:.25rem!important}.hero-text p{font-size:.75rem!important;margin-bottom:.5rem!important;line-height:1.25!important}.communication-hero,.learning-resources-section{padding-left:.5rem!important;padding-right:.5rem!important}.skills-overview-section{padding:.25rem .5rem!important}.skills-grid{padding-left:.5rem!important;margin-left:-.5rem!important;margin-right:-.5rem!important}.skill-card{min-width:200px!important;max-width:200px!important;padding:.6rem!important;height:280px!important}.skill-header{gap:.3rem!important;margin-bottom:.3rem!important}.skill-header h3{font-size:.85rem!important;height:2rem!important}.skill-description{height:auto!important;font-size:.65rem!important;margin-bottom:.3rem!important}.skill-icon{width:28px!important;height:28px!important;font-size:.9rem!important}.assessments-section .section-header{padding:0 .5rem!important;margin-bottom:.25rem!important}.section-header h2{font-size:1.1rem!important;margin-bottom:0!important;line-height:1.2!important}.section-header p{font-size:.7rem!important;margin-top:.1rem!important;margin-bottom:0!important}.assessments-grid{padding-left:.5rem!important;margin-left:-.5rem!important;margin-right:-.5rem!important}.assessment-card{min-width:180px!important;max-width:180px!important;height:auto!important;padding:0!important}.assessment-cover{height:80px!important}.assessment-content{padding:.5rem!important;gap:.25rem!important}.video-courses-container,.assessments-container{padding:0!important;gap:.5rem!important}.video-course-card{min-width:180px!important;max-width:180px!important}.ai-practice-section{padding:.75rem 0!important}.ai-practice-container{padding:0 1rem!important}.ai-practice-text h2{font-size:1.1rem!important;margin-bottom:.25rem!important}.ai-practice-text p{font-size:.75rem!important;margin-bottom:.5rem!important}.ai-cta-buttons{gap:.3rem!important}.primary-cta-btn,.secondary-cta-btn{padding:.4rem .8rem!important;font-size:.75rem!important;height:32px!important}.communication-images{max-width:180px!important;height:150px!important;margin-top:.75rem!important}.analytics-section{padding:.25rem .5rem!important}.analytics-card{min-width:200px!important;max-width:200px!important;padding:.5rem!important}.analytics-header{padding:.5rem!important}.analytics-content{padding:.25rem .5rem!important;gap:.25rem!important}.score-circle{width:80px!important;height:80px!important}.score-value{font-size:1.2rem!important}.score-circle .circle-bg,.score-circle .circle-progress{stroke-width:4!important}.stat-value{font-size:.9rem!important}section{padding:.25rem 0!important}}.assessment-page{min-height:100vh;background:var(--bg-primary);overflow:hidden;padding:0;position:relative}.split-assessment{display:flex;flex-direction:column;height:100vh;background:var(--bg-primary)}.split-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 2rem;background:var(--bg-primary);border-bottom:1px solid var(--border-color);height:70px;flex-shrink:0}.split-back-btn{width:40px;height:40px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;border-radius:8px}.split-back-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.split-progress{flex:1;max-width:400px;margin:0 2rem}.progress-text{font-size:.875rem;color:var(--text-secondary);margin-bottom:.5rem;display:block;text-align:center}.progress-bar-thin{height:4px;background:var(--bg-tertiary);border-radius:2px;overflow:hidden}.progress-fill-thin{height:100%;background:linear-gradient(90deg,#6366f1,#8b5cf6);border-radius:2px;transition:width .3s ease}.split-timer{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:8px;color:#dc2626;font-weight:600;font-size:.875rem}.split-timer i{font-size:.875rem}.split-container{display:flex;flex:1;overflow:hidden}.split-left{flex:1;display:flex;flex-direction:column;padding:3rem;overflow-y:auto;background:var(--bg-primary)}.question-section{flex:1}.split-question-text{font-size:1.75rem;font-weight:600;color:var(--text-primary);margin:0 0 2.5rem;line-height:1.4}.question-number-inline{color:#6366f1;font-weight:700;margin-right:.5rem}.split-options{display:flex;flex-direction:column;gap:1rem}.split-option{display:flex;align-items:center;gap:1rem;padding:1.25rem 1.5rem;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:12px;cursor:pointer;transition:all .2s ease;text-align:left;position:relative}.split-option:hover{border-color:#6366f1;background:var(--bg-tertiary)}.split-option.selected{border-color:#6366f1;background:#6366f11a;box-shadow:0 4px 12px #6366f126}.option-box{width:48px;height:48px;background:var(--bg-primary);border:2px solid var(--border-color);border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s ease}.split-option.selected .option-box{background:#6366f1;border-color:#6366f1}.option-letter{font-weight:700;font-size:1.125rem;color:var(--text-secondary)}.split-option.selected .option-letter{color:#fff}.option-text{flex:1;font-size:1.0625rem;color:var(--text-primary);line-height:1.5;font-weight:500}.split-option.selected .option-text{color:var(--text-primary);font-weight:600}.option-check{color:#10b981;font-size:1.25rem;animation:checkBounce .3s ease}@keyframes checkBounce{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.split-navigation-bottom{padding:1.5rem 2rem;background:var(--bg-primary);border-top:1px solid var(--border-color);flex-shrink:0}.split-continue-btn,.split-submit-btn{width:100%;max-width:500px;margin:0 auto;display:block;padding:1rem 2rem;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:12px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #6366f14d}.split-continue-btn:hover:not(:disabled),.split-submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #6366f166}.split-continue-btn:disabled,.split-submit-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.split-submit-btn{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 12px #10b9814d}.split-submit-btn:hover:not(:disabled){box-shadow:0 8px 20px #10b98166}.split-right{width:45%;background:var(--bg-secondary);display:flex;align-items:center;justify-content:center;padding:2rem;position:relative;overflow:hidden}.split-right:before{content:"";position:absolute;inset:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="50" cy="50" r="1" fill="rgba(99,102,241,0.1)"/></svg>');background-size:20px 20px;opacity:.5}.image-container{position:relative;z-index:1;width:100%;height:100%;display:flex;align-items:center;justify-content:center;border-radius:20px;overflow:hidden;box-shadow:0 20px 40px #0000001a;background:var(--card-bg)}.feedback-image{width:100%;height:100%;object-fit:contain;transition:transform .3s ease}.image-container:hover .feedback-image{transform:scale(1.02)}@media(max-width:1024px){.split-left{padding:2rem 1.5rem}.split-right{width:40%;padding:1.5rem}.split-question-text{font-size:1.5rem}.split-navigation-bottom{padding:1.25rem 1.5rem}}@media(max-width:768px){.split-header{padding:.875rem 1rem;height:60px}.split-progress{margin:0 1rem;max-width:250px}.progress-text{font-size:.75rem}.split-timer{padding:.375rem .75rem;font-size:.75rem}.split-container{flex-direction:row}.split-left{flex:1;padding:1.5rem 1rem}.split-right{width:35%;min-height:auto;padding:1rem}.split-question-text{font-size:1.25rem;margin-bottom:1.75rem}.question-number-inline{font-size:1.25rem}.split-option{padding:.875rem;gap:.75rem}.option-box{width:36px;height:36px}.option-letter{font-size:.9375rem}.option-text{font-size:.875rem}.split-navigation-bottom{padding:1rem}.split-continue-btn,.split-submit-btn{padding:.875rem 1.5rem;font-size:.9375rem;max-width:100%}}@media(max-width:640px){.split-header{padding:.75rem;flex-wrap:wrap;height:auto;gap:.5rem}.split-progress{order:3;width:100%;margin:.5rem 0 0;max-width:100%}.split-back-btn{width:36px;height:36px}.split-container{flex-direction:column}.split-left{padding:1rem;min-height:auto;flex:1}.split-right{width:100%;min-height:300px;padding:1.5rem;flex-shrink:0}.split-question-text{font-size:1.125rem;margin-bottom:1.5rem}.question-number-inline{font-size:1.125rem}.split-option{padding:.75rem}.option-box{width:32px;height:32px}.option-letter{font-size:.875rem}.option-text{font-size:.8125rem}.split-navigation-bottom{padding:.875rem}.split-continue-btn,.split-submit-btn{padding:.75rem 1.25rem;font-size:.875rem}}@media(max-width:768px)and (orientation:landscape){.split-container{flex-direction:row}.split-left{flex:1;min-height:auto}.split-right{width:40%;min-height:auto}.split-question-text{font-size:1.125rem;margin-bottom:1.25rem}.split-option{padding:.625rem}}.assessment-intro{min-height:100vh;display:flex;flex-direction:column;padding:1rem 2rem 2rem;max-width:1200px;margin:0 auto;overflow-y:auto}.intro-header{position:sticky;top:0;background:#f8fafcf2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1rem 0;margin-bottom:1rem;z-index:10}.back-btn{display:inline-flex;align-items:center;gap:.75rem;padding:.875rem 1.75rem;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:12px;color:#fff;text-decoration:none;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #3b82f64d;position:relative;overflow:hidden}.back-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.back-btn:hover:before{left:100%}.back-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #3b82f666}.back-btn:active{transform:translateY(0)}.back-btn i{font-size:1rem}.intro-content{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;padding:1rem 2rem;overflow-y:auto;max-height:calc(100vh - 120px)}.assessment-cover-image{width:200px;height:200px;border-radius:20px;overflow:hidden;margin-bottom:1.5rem;box-shadow:0 15px 30px #00000026;border:3px solid white}.assessment-cover-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.assessment-cover-image:hover img{transform:scale(1.05)}.intro-content h1{font-size:2.5rem;font-weight:700;color:#1e293b;margin:0 0 1rem;background:linear-gradient(135deg,#1e293b,#3b82f6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.assessment-description{font-size:1.1rem;color:#64748b;margin:0 0 1.5rem;max-width:600px;line-height:1.6}.assessment-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;width:100%;max-width:600px}.detail-card{background:#ffffffe6;padding:1.5rem;border-radius:16px;border:1px solid rgba(59,130,246,.1);display:flex;align-items:center;gap:1rem;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.detail-card:hover{transform:translateY(-3px);box-shadow:0 15px 30px #0000001a;border-color:#3b82f6}.detail-card i{font-size:1.5rem;color:#3b82f6;width:50px;height:50px;background:#3b82f61a;border-radius:12px;display:flex;align-items:center;justify-content:center}.detail-card h3{font-size:1.25rem;font-weight:700;color:#1e293b;margin:0}.detail-card p{font-size:.85rem;color:#64748b;margin:0}.assessment-instructions{background:#ffffffe6;padding:1.25rem;border-radius:16px;border:1px solid rgba(59,130,246,.1);margin-bottom:1.5rem;max-width:600px;width:100%;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.assessment-instructions h3{display:flex;align-items:center;gap:.5rem;font-size:1.1rem;font-weight:600;color:#1e293b;margin:0 0 1rem}.assessment-instructions h3 i{color:#3b82f6}.assessment-instructions ul{list-style:none;padding:0;margin:0}.assessment-instructions li{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:.75rem;color:#64748b;line-height:1.6;font-size:.9rem}.assessment-instructions li:before{content:"✓";color:#10b981;font-weight:700;flex-shrink:0;margin-top:.1rem}.start-assessment-btn{display:inline-flex;align-items:center;gap:.75rem;padding:1rem 2.5rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:15px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 10px 25px #10b9814d;margin-top:1rem}.start-assessment-btn:hover{transform:translateY(-3px);box-shadow:0 15px 35px #10b98166}.start-assessment-btn i{font-size:1.2rem}.assessment-header{position:sticky;top:0;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid rgba(229,231,235,.8);padding:1.5rem 2rem;z-index:100}.header-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.header-top h2{font-size:1.5rem;font-weight:600;color:#1e293b;margin:0;flex:1;text-align:center}.timer{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:12px;color:#dc2626;font-weight:600;font-size:1rem}.timer i{font-size:1.1rem}.progress-container{display:flex;align-items:center;gap:1rem}.progress-bar{flex:1;height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#1d4ed8);border-radius:4px;transition:width .3s ease}.progress-text{font-size:.9rem;font-weight:500;color:#64748b;white-space:nowrap}.question-container{padding:2rem;max-width:1000px;margin:0 auto;min-height:calc(100vh - 200px);display:flex;flex-direction:column}.question-card{background:#fff;border-radius:20px;padding:3rem;box-shadow:0 10px 30px #00000014;border:1px solid #f1f5f9;flex:1;display:flex;flex-direction:column;overflow:scroll}.question-text{font-size:1.75rem;font-weight:600;color:#1e293b;margin:0 0 2.5rem;line-height:1.4}.options-list{display:flex;flex-direction:column;gap:1rem;flex:1}.option-btn{display:flex;align-items:center;gap:1rem;padding:1.5rem;background:#f8fafc;border:2px solid #e2e8f0;border-radius:15px;cursor:pointer;transition:all .3s ease;text-align:left;position:relative;overflow:hidden}.option-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(59,130,246,.1),transparent);transition:left .5s ease}.option-btn:hover:before{left:100%}.option-btn:hover{border-color:#3b82f6;background:#3b82f60d;transform:translate(5px)}.option-btn.selected{border-color:#3b82f6;background:#3b82f61a;box-shadow:0 5px 15px #3b82f633}.option-letter{width:40px;height:40px;background:#e2e8f0;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;color:#64748b;flex-shrink:0;transition:all .3s ease}.option-btn.selected .option-letter{background:#3b82f6;color:#fff}.option-text{flex:1;font-size:1.1rem;color:#374151;line-height:1.5}.option-check{opacity:0;color:#10b981;font-size:1.2rem;transition:all .3s ease}.option-btn.selected .option-check{opacity:1}.navigation-controls{display:flex;justify-content:space-between;align-items:center;margin-top:2rem;padding:2rem 3rem;background:#fff;border-radius:20px;box-shadow:0 10px 30px #00000014}.nav-btn{display:flex;align-items:center;gap:.5rem;padding:.875rem 1.5rem;border:2px solid #e2e8f0;border-radius:12px;background:#fff;color:#64748b;font-weight:500;cursor:pointer;transition:all .3s ease}.nav-btn:hover:not(:disabled){border-color:#3b82f6;color:#3b82f6;transform:translateY(-2px)}.nav-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.submit-btn{display:flex;align-items:center;gap:.5rem;padding:.875rem 2rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 5px 15px #10b9814d}.submit-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #10b98166}.results-container{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center;background:var(--bg-primary)}.results-header{margin-bottom:3rem}.score-circle{width:200px;height:200px;border:8px solid var(--border-color);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 2rem;position:relative;background:var(--card-bg);box-shadow:0 20px 40px #0000001a}[data-theme=dark] .score-circle{box-shadow:0 20px 40px #0000004d}[data-theme=dark] .result-stat{box-shadow:0 5px 15px #0003}.score-number{font-size:3rem;font-weight:700;color:var(--text-primary)}.results-header h1{font-size:2.5rem;font-weight:700;color:var(--text-primary);margin:0 0 1rem}.score-message{font-size:1.25rem;color:var(--text-secondary);margin:0;max-width:500px}.results-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;margin-bottom:3rem;width:100%;max-width:600px}.result-stat{background:var(--card-bg);padding:2rem;border-radius:15px;box-shadow:0 5px 15px #00000014;border:1px solid var(--border-color)}.result-stat h3{font-size:1rem;font-weight:600;color:var(--text-secondary);margin:0 0 .5rem;text-transform:uppercase;letter-spacing:.05em}.result-stat p{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin:0}.results-actions{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center}.retake-btn,.continue-btn{display:flex;align-items:center;gap:.5rem;padding:1rem 2rem;border:none;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none}.retake-btn{background:#ef44441a;color:#dc2626;border:2px solid rgba(239,68,68,.2)}.retake-btn:hover{background:#ef444433;transform:translateY(-2px)}.continue-btn{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;box-shadow:0 5px 15px #3b82f64d}.continue-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #3b82f666}@media(max-width:768px){.results-container{padding:1.5rem}.score-circle{width:150px;height:150px;border-width:6px}.score-number{font-size:2.5rem}.results-header h1{font-size:2rem}.score-message{font-size:1.1rem}.results-details{grid-template-columns:1fr;gap:1.5rem;margin-bottom:2rem}.result-stat{padding:1.5rem}.results-actions{flex-direction:column;width:100%;max-width:300px}.retake-btn,.continue-btn{width:100%;justify-content:center}}@media(max-width:480px){.results-container{padding:1rem}.score-circle{width:120px;height:120px;border-width:4px}.score-number{font-size:2rem}.results-header h1{font-size:1.75rem}.score-message{font-size:1rem}.result-stat{padding:1.25rem}.result-stat h3{font-size:.9rem}.result-stat p{font-size:1.25rem}}.clean-instruction-modal{background:var(--card-bg);border-radius:16px;box-shadow:0 25px 50px #00000040;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;animation:modalSlideIn .4s ease-out;position:relative;z-index:1001;border:1px solid var(--border-color)}.clean-modal-header{padding:2rem 2rem 1rem;text-align:center;position:relative;border-bottom:1px solid var(--border-color)}.modal-close-btn{position:absolute;top:1rem;right:1rem;width:32px;height:32px;border:none;background:var(--bg-tertiary);border-radius:8px;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.modal-close-btn:hover{background:var(--bg-secondary);color:var(--text-primary)}.clean-modal-header h2{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.clean-modal-header p{color:var(--text-secondary);margin:0;font-size:.95rem}.clean-modal-content{padding:2rem}.clean-instruction-list{display:flex;flex-direction:column;gap:1rem}.clean-instruction-item{display:flex;align-items:flex-start;gap:1rem;padding:1rem;background:var(--bg-tertiary);border-radius:8px;border:1px solid var(--border-color);transition:all .2s ease}.clean-instruction-item:hover{background:var(--hover-bg);border-color:var(--border-color)}.clean-instruction-icon{width:36px;height:36px;background:#3b82f6;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.clean-instruction-icon i{font-size:.9rem;color:#fff}.clean-instruction-text h4{font-size:.95rem;font-weight:600;color:var(--text-primary);margin:0 0 .25rem}.clean-instruction-text p{font-size:.85rem;color:var(--text-secondary);margin:0;line-height:1.5}.clean-modal-actions{display:flex;gap:.75rem;padding:1.5rem 2rem 2rem;justify-content:flex-end;border-top:1px solid var(--border-color)}.clean-cancel-btn{padding:.75rem 1.5rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);font-weight:500;cursor:pointer;transition:all .2s ease;font-size:.9rem}.clean-cancel-btn:hover{background:var(--bg-tertiary);border-color:var(--border-color);color:var(--text-primary)}.clean-start-btn{padding:.75rem 1.5rem;background:#3b82f6;border:none;border-radius:8px;color:#fff;font-weight:500;cursor:pointer;transition:all .2s ease;font-size:.9rem}.clean-start-btn:hover{background:#2563eb;transform:translateY(-1px)}.loading-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-primary)}.loading-content{text-align:center;padding:3rem;background:var(--card-bg);border-radius:20px;box-shadow:0 20px 40px #0000001a;max-width:400px;width:100%;border:1px solid var(--border-color)}.loading-spinner{position:relative;width:80px;height:80px;margin:0 auto 2rem}.spinner-ring{position:absolute;width:100%;height:100%;border:4px solid transparent;border-radius:50%;animation:spin 1.5s linear infinite}.spinner-ring:nth-child(1){border-top-color:#3b82f6;animation-delay:0s}.spinner-ring:nth-child(2){border-right-color:#10b981;animation-delay:-.5s}.spinner-ring:nth-child(3){border-bottom-color:#f59e0b;animation-delay:-1s}.loading-content h2{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.loading-content p{color:var(--text-secondary);margin:0 0 2rem}.loading-progress{text-align:center}.progress-bar{width:100%;height:6px;background:var(--bg-tertiary);border-radius:3px;overflow:hidden;margin-bottom:.5rem}.progress-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#10b981);border-radius:3px;animation:progressFill 2s ease-in-out}@keyframes progressFill{0%{width:0%}50%{width:60%}to{width:100%}}.progress-text{font-size:.85rem;color:var(--text-secondary)}.assessment-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem;padding:1.5rem;background:#3b82f60d;border-radius:12px;border:1px solid rgba(59,130,246,.1)}.overview-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:#fff;border-radius:10px;border:1px solid rgba(59,130,246,.1);transition:all .3s ease}.overview-item:hover{transform:translateY(-2px);box-shadow:0 5px 15px #3b82f626}.overview-icon{width:50px;height:50px;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.overview-icon i{font-size:1.25rem;color:#fff}.overview-text h4{font-size:1rem;font-weight:600;color:#1e293b;margin:0 0 .25rem}.overview-text p{font-size:.85rem;color:#64748b;margin:0}@media(max-width:768px){.instruction-modal{margin:1rem;max-width:calc(100vw - 2rem);max-height:calc(100vh - 2rem)}.assessment-overview{grid-template-columns:1fr;gap:.75rem;padding:1rem}.overview-item{padding:.75rem;flex-direction:column;text-align:center;gap:.5rem}.overview-icon{width:40px;height:40px;margin:0 auto}.overview-icon i{font-size:1rem}.modal-header{padding:1.5rem 1.5rem 1rem}.modal-icon{width:60px;height:60px}.modal-icon i,.modal-header h2{font-size:1.5rem}.modal-content{padding:1.5rem}.instruction-grid{grid-template-columns:1fr;gap:1rem}.instruction-item{padding:1rem;flex-direction:column;text-align:center;gap:.75rem}.instruction-icon{width:40px;height:40px;margin:0 auto}.instruction-icon i{font-size:1rem}.modal-actions{padding:1rem 1.5rem 1.5rem;flex-direction:column}.cancel-modal-btn,.begin-assessment-btn{width:100%;justify-content:center}}@media(max-width:480px){.instruction-modal{margin:.5rem;max-width:calc(100vw - 1rem);border-radius:15px}.modal-header{padding:1rem}.modal-header h2{font-size:1.25rem}.modal-content{padding:1rem}.instruction-item{padding:.75rem}.instruction-text h4{font-size:.9rem}.instruction-text p{font-size:.8rem}.modal-warning{padding:.75rem 1rem}.modal-warning p{font-size:.8rem}.modal-actions{padding:1rem;gap:.75rem}.cancel-modal-btn,.begin-assessment-btn{padding:.75rem 1.25rem;font-size:.9rem}}.instruction-modal-overlay{animation:overlayFadeIn .4s cubic-bezier(.4,0,.2,1)}@keyframes overlayFadeIn{0%{opacity:0;backdrop-filter:blur(0px);-webkit-backdrop-filter:blur(0px)}to{opacity:1;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}}.instruction-modal{animation:modalSlideUp .5s cubic-bezier(.34,1.56,.64,1)}@keyframes modalSlideUp{0%{transform:translateY(100px) scale(.8);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.instruction-item{position:relative;overflow:hidden}.instruction-item:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(59,130,246,.1),transparent);transition:left .6s ease}.instruction-item:hover:before{left:100%}.modal-actions button{position:relative;overflow:hidden}.modal-actions button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.modal-actions button:hover:before{left:100%}.cancel-modal-btn:focus,.begin-assessment-btn:focus{outline:2px solid #3b82f6;outline-offset:2px}.instruction-modal-overlay{z-index:9999}@media(max-width:768px){.assessment-intro{padding:.5rem 1rem 1rem;min-height:100vh}.intro-header{padding:.75rem 0;margin-bottom:.5rem}.intro-content{padding:.5rem 1rem;max-height:calc(100vh - 100px);overflow-y:auto;justify-content:flex-start}.intro-content h1{font-size:2rem;margin-bottom:.75rem}.assessment-description{font-size:1rem;margin-bottom:1.5rem}.assessment-details{grid-template-columns:1fr;gap:1rem}.detail-card{padding:1.25rem}.detail-card i{width:40px;height:40px;font-size:1.25rem}.detail-card h3{font-size:1.1rem}.assessment-instructions{padding:1.25rem;margin-bottom:1.5rem}.start-assessment-btn{padding:.875rem 2rem;font-size:1rem;width:100%;justify-content:center}.question-container,.assessment-header{padding:1rem}.header-top{flex-direction:column;gap:1rem;align-items:stretch}.header-top h2{text-align:left;font-size:1.25rem}.question-card{padding:2rem}.question-text{font-size:1.5rem}.option-btn{padding:1rem}.option-text{font-size:1rem}.navigation-controls{padding:1.5rem;flex-direction:column;gap:1rem}.nav-btn,.submit-btn{width:100%;justify-content:center}.results-details{grid-template-columns:1fr}.results-actions{flex-direction:column;width:100%}.retake-btn,.continue-btn{width:100%;justify-content:center}}@media(max-width:480px){.assessment-intro{padding:.25rem .5rem .5rem}.intro-content{padding:.25rem .5rem}.assessment-cover-image{width:150px;height:150px}.intro-content h1{font-size:1.75rem}.assessment-description{font-size:.95rem}.detail-card{padding:1rem;flex-direction:column;text-align:center;gap:.75rem}.assessment-instructions{padding:1rem}.start-assessment-btn{padding:.75rem 1.5rem;font-size:.95rem}.score-circle{width:150px;height:150px}.score-number,.results-header h1{font-size:2rem}}.assessment-page{scroll-behavior:smooth;height:100vh;overflow-y:auto}.intro-content{scrollbar-width:thin;scrollbar-color:#cbd5e1 #f1f5f9}.intro-content::-webkit-scrollbar{width:6px}.intro-content::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.intro-content::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.intro-content::-webkit-scrollbar-thumb:hover{background:#94a3b8}.instruction-modal-overlay{position:fixed;inset:0;background:#000000bf;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem;animation:modalFadeIn .3s ease-out}@keyframes modalFadeIn{0%{opacity:0;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}to{opacity:1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}}.instruction-modal{background:#fff;border-radius:20px;box-shadow:0 25px 50px #00000040;max-width:700px;width:100%;max-height:90vh;overflow-y:auto;animation:modalSlideIn .4s ease-out;border:1px solid rgba(255,255,255,.2)}@keyframes modalSlideIn{0%{transform:translateY(-50px) scale(.9);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.modal-header{text-align:center;padding:2rem 2rem 1rem;border-bottom:1px solid #f1f5f9}.modal-icon{width:80px;height:80px;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;box-shadow:0 10px 25px #3b82f64d}.modal-icon i{font-size:2rem;color:#fff}.modal-header h2{font-size:1.75rem;font-weight:700;color:#1e293b;margin:0 0 .5rem}.modal-header p{color:#64748b;margin:0;font-size:1rem}.modal-content{padding:2rem}.instruction-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-bottom:2rem}.instruction-item{display:flex;align-items:flex-start;gap:1rem;padding:1.5rem;background:#f8fafc;border-radius:12px;border:1px solid #e2e8f0;transition:all .3s ease}.instruction-item:hover{background:#f1f5f9;border-color:#3b82f6;transform:translateY(-2px)}.instruction-icon{width:50px;height:50px;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.instruction-icon i{font-size:1.25rem;color:#fff}.instruction-text h4{font-size:1rem;font-weight:600;color:#1e293b;margin:0 0 .5rem}.instruction-text p{font-size:.9rem;color:#64748b;margin:0;line-height:1.5}.modal-warning{display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:12px;margin-bottom:1rem}.modal-warning i{color:#dc2626;font-size:1.1rem;flex-shrink:0}.modal-warning p{color:#dc2626;margin:0;font-size:.9rem;font-weight:500}.modal-actions{display:flex;gap:1rem;padding:1.5rem 2rem 2rem;justify-content:center}.cancel-modal-btn{display:flex;align-items:center;gap:.5rem;padding:.875rem 1.5rem;background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;color:#64748b;font-weight:600;cursor:pointer;transition:all .3s ease}.cancel-modal-btn:hover{background:#f1f5f9;border-color:#cbd5e1;color:#475569}.begin-assessment-btn{display:flex;align-items:center;gap:.75rem;padding:.875rem 2rem;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:12px;color:#fff;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 5px 15px #10b9814d}.begin-assessment-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #10b98166}.begin-assessment-btn i{font-size:1rem}.assessment-page{scroll-behavior:smooth}.assessment-page::-webkit-scrollbar{width:8px}.assessment-page::-webkit-scrollbar-track{background:#f1f5f9}.assessment-page::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.assessment-page::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media(max-width:768px){.clean-instruction-modal{margin:1rem;max-width:calc(100vw - 2rem);max-height:calc(100vh - 2rem)}.clean-modal-header{padding:1.5rem 1.5rem 1rem}.clean-modal-header h2{font-size:1.25rem}.clean-modal-content{padding:1.5rem}.clean-instruction-item{padding:.875rem;gap:.75rem}.clean-instruction-icon{width:32px;height:32px}.clean-instruction-icon i{font-size:.8rem}.clean-instruction-text h4{font-size:.9rem}.clean-instruction-text p{font-size:.8rem}.clean-modal-actions{padding:1rem 1.5rem 1.5rem;flex-direction:column}.clean-cancel-btn,.clean-start-btn{width:100%;justify-content:center}.loading-content{margin:1rem;padding:2rem}.loading-spinner{width:60px;height:60px}.loading-content h2{font-size:1.25rem}}@media(max-width:480px){.clean-instruction-modal{margin:.5rem;border-radius:8px}.clean-modal-header{padding:1rem}.clean-modal-header h2{font-size:1.1rem}.clean-modal-content{padding:1rem}.clean-instruction-item{padding:.75rem}.clean-instruction-text h4{font-size:.85rem}.clean-instruction-text p{font-size:.75rem}.clean-modal-actions{padding:1rem;gap:.5rem}.loading-content{margin:.5rem;padding:1.5rem}.loading-spinner{width:50px;height:50px}.loading-content h2{font-size:1.1rem}.loading-content p{font-size:.9rem}}.confirm-dialog-overlay{position:fixed;inset:0;background:#0009;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem;animation:overlayFadeIn .2s ease-out}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.confirm-dialog{background:var(--card-bg);border-radius:16px;box-shadow:0 20px 40px #0000004d;max-width:450px;width:100%;animation:dialogSlideIn .3s cubic-bezier(.34,1.56,.64,1);border:1px solid var(--border-color);overflow:hidden}@keyframes dialogSlideIn{0%{transform:translateY(-30px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.confirm-dialog-icon{width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:2rem auto 1rem;font-size:1.5rem}.confirm-dialog-icon.warning{background:#f59e0b26;color:#f59e0b}.confirm-dialog-icon.danger{background:#ef444426;color:#ef4444}.confirm-dialog-icon.info{background:#3b82f626;color:#3b82f6}.confirm-dialog-content{text-align:center;padding:0 2rem 1.5rem}.confirm-dialog-title{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:0 0 .75rem}.confirm-dialog-message{font-size:.95rem;color:var(--text-secondary);margin:0;line-height:1.5}.confirm-dialog-actions{display:flex;gap:.75rem;padding:1.5rem 2rem 2rem;border-top:1px solid var(--border-color)}.confirm-dialog-btn{flex:1;padding:.75rem 1.5rem;border:none;border-radius:10px;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.cancel-btn{background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-color)}.cancel-btn:hover{background:var(--bg-tertiary);color:var(--text-primary);transform:translateY(-1px)}.confirm-btn{color:#fff;box-shadow:0 4px 12px #00000026}.confirm-btn.warning{background:linear-gradient(135deg,#f59e0b,#d97706)}.confirm-btn.warning:hover{background:linear-gradient(135deg,#d97706,#b45309);transform:translateY(-1px);box-shadow:0 6px 16px #f59e0b4d}.confirm-btn.danger{background:linear-gradient(135deg,#ef4444,#dc2626)}.confirm-btn.danger:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-1px);box-shadow:0 6px 16px #ef44444d}.confirm-btn.info{background:linear-gradient(135deg,#3b82f6,#2563eb)}.confirm-btn.info:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-1px);box-shadow:0 6px 16px #3b82f64d}@media(max-width:640px){.confirm-dialog{max-width:calc(100vw - 2rem);margin:1rem}.confirm-dialog-icon{width:50px;height:50px;font-size:1.25rem;margin:1.5rem auto .75rem}.confirm-dialog-content{padding:0 1.5rem 1rem}.confirm-dialog-title{font-size:1.1rem}.confirm-dialog-message{font-size:.9rem}.confirm-dialog-actions{padding:1rem 1.5rem 1.5rem;flex-direction:column}.confirm-dialog-btn{width:100%;padding:.875rem 1.25rem}}[data-theme=dark] .confirm-dialog{box-shadow:0 20px 40px #0009}.confirm-dialog-btn:focus{outline:2px solid var(--text-primary);outline-offset:2px}.confirm-dialog-icon i{animation:iconPulse .5s ease-out}@keyframes iconPulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.modules-page{min-height:100vh;background:var(--bg-secondary);padding:2rem 0}.modules-container{max-width:1200px;margin:0 auto;padding:0 1rem}.comm-loading{display:flex;justify-content:center;align-items:center;min-height:400px;font-size:1.25rem;color:var(--text-secondary);font-weight:600;letter-spacing:.05em}.modules-header{display:flex;align-items:flex-start;gap:1.5rem;margin-bottom:3rem;background:var(--card-bg);padding:2rem;border-radius:16px;box-shadow:0 4px 20px #00000014;border:1px solid var(--border-color)}.back-button{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:var(--bg-tertiary);border:none;border-radius:12px;cursor:pointer;color:var(--text-secondary);font-size:1.2rem;transition:all .3s ease;flex-shrink:0}.skill-info{display:flex;align-items:center;gap:1.5rem;flex:1}.skill-icon{width:80px;height:80px;border-radius:20px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:2rem;flex-shrink:0}.skill-details h1{margin:0 0 .5rem;font-size:2.5rem;font-weight:700;color:var(--text-primary)}.skill-details p{margin:0 0 1rem;font-size:1.1rem;color:var(--text-secondary);line-height:1.6}.skill-stats{display:flex;gap:2rem}.stat{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--text-secondary);font-weight:500}.stat i{color:var(--text-light)}.learning-path{margin-bottom:3rem}.learning-path h2{margin:0 0 2rem;font-size:2rem;font-weight:700;color:var(--text-primary);text-align:center}.modules-timeline{display:flex;flex-direction:column;gap:0;position:relative}.module-item{display:flex;gap:2rem;align-items:flex-start;position:relative;margin-bottom:2rem}.module-item:last-child{margin-bottom:0}.module-connector{display:flex;flex-direction:column;align-items:center;flex-shrink:0;position:relative;z-index:2}.module-number{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem;box-shadow:0 4px 12px #3b82f64d;border:4px solid var(--card-bg)}.connector-line{width:3px;height:calc(100% + 2rem);background:linear-gradient(to bottom,#3b82f6,var(--border-color));position:absolute;top:48px;left:50%;transform:translate(-50%);z-index:1}.empty-modules{text-align:center;padding:4rem 2rem;background:var(--card-bg);border-radius:16px;border:2px dashed var(--border-color);color:var(--text-secondary);display:flex;flex-direction:column;align-items:center;gap:1rem}.empty-modules i{font-size:3rem;opacity:.3}.module-card{flex:1;background:var(--card-bg);border-radius:16px;box-shadow:0 4px 20px #00000014;transition:all .3s ease;border:1px solid var(--border-color);overflow:hidden}.module-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #0000001f}.module-cover{position:relative;height:200px;overflow:hidden}.module-cover img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.module-card:hover .module-cover img{transform:scale(1.05)}.module-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,#0000001a,#0006);display:flex;align-items:flex-end;padding:1rem}.module-badges{display:flex;gap:.5rem;margin-left:auto}.module-content{padding:2rem}.module-header{margin-bottom:1rem}.module-header h3{margin:0;font-size:1.5rem;font-weight:600;color:var(--text-primary)}.level-badge{padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.duration-badge{padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:500;background:#ffffffe6;color:var(--text-primary);display:flex;align-items:center;gap:.25rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}[data-theme=dark] .duration-badge{background:#0009;color:var(--text-primary)}.module-description{margin:0 0 1.5rem;color:var(--text-secondary);line-height:1.6;font-size:1rem}.module-actions{display:flex;justify-content:space-between;align-items:center}.start-module-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;text-decoration:none;border-radius:12px;font-weight:600;transition:all .3s ease;box-shadow:0 4px 12px #3b82f64d}.start-module-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #3b82f666}.completed-badge{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#dcfce7;color:#166534;border-radius:20px;font-size:.9rem;font-weight:600}.progress-summary{background:var(--card-bg);padding:2rem;border-radius:16px;box-shadow:0 4px 20px #00000014;border:1px solid var(--border-color)}.progress-summary h3{margin:0 0 1.5rem;font-size:1.5rem;font-weight:600;color:var(--text-primary);text-align:center}.progress-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:2rem}.progress-item{text-align:center}.progress-circle{width:80px;height:80px;border-radius:50%;background:conic-gradient(#3b82f6 0deg,var(--border-color) 0deg);display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;position:relative}.progress-circle:before{content:"";width:60px;height:60px;border-radius:50%;background:var(--card-bg);position:absolute}.progress-circle span{position:relative;z-index:1;font-weight:700;color:var(--text-primary)}.progress-number{font-size:2.5rem;font-weight:700;color:#3b82f6;margin-bottom:.5rem}.progress-item p{margin:0;color:var(--text-secondary);font-weight:500}.error-message{text-align:center;padding:4rem 2rem;background:var(--card-bg);border-radius:16px;box-shadow:0 4px 20px #00000014;border:1px solid var(--border-color)}.error-message h2{margin:0 0 1rem;color:var(--text-primary);font-size:2rem}.error-message p{margin:0 0 2rem;color:var(--text-secondary);font-size:1.25rem}.back-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#3b82f6;color:#fff;text-decoration:none;border-radius:12px;font-weight:600;transition:all .3s ease}@media(max-width:768px){.modules-page{padding:1rem 0}.modules-container{padding:0 .5rem}.modules-header{flex-direction:column;gap:1rem;padding:1.5rem}.skill-info{flex-direction:column;text-align:center;gap:1rem}.skill-details h1{font-size:2rem}.skill-stats{justify-content:center;gap:1rem}.module-item{gap:1rem}.module-cover{height:150px}.module-content{padding:1.5rem}.module-header h3{font-size:1.25rem}.module-actions{flex-direction:column;gap:1rem;align-items:stretch}.progress-stats{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem}.progress-circle{width:60px;height:60px}.progress-circle:before{width:45px;height:45px}.progress-number{font-size:2rem}.connector-line{height:calc(100% + 1rem)}}@media(max-width:480px){.skill-details h1{font-size:1.75rem}.learning-path h2{font-size:1.5rem}.module-header h3{font-size:1.1rem}.module-number{width:40px;height:40px;font-size:1rem}.module-cover{height:120px}.module-content{padding:1rem}.module-overlay{padding:.75rem}.module-badges{flex-direction:column;gap:.25rem}.connector-line{width:2px;top:40px}}[data-theme=dark] .modules-header,[data-theme=dark] .module-card{box-shadow:0 4px 20px #0003}[data-theme=dark] .module-card:hover{box-shadow:0 8px 30px #0000004d}[data-theme=dark] .progress-summary,[data-theme=dark] .error-message{box-shadow:0 4px 20px #0003}.module-detail-page{min-height:100vh;background:var(--bg-secondary);padding:1rem 0}.module-container{max-width:1400px;margin:0 auto;padding:0 1rem}.module-header{display:flex;align-items:center;gap:1.5rem;margin-bottom:2rem;background:var(--card-bg);padding:1.5rem 2rem;border-radius:12px;box-shadow:0 2px 10px #00000014;border:1px solid var(--border-color)}.back-button{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:var(--bg-tertiary);border:none;border-radius:10px;cursor:pointer;color:var(--text-secondary);font-size:1.1rem;transition:all .3s ease;flex-shrink:0}.back-button:hover{background:var(--hover-bg);color:var(--text-primary);transform:translate(-2px)}.module-info h1{margin:0 0 .5rem;font-size:2rem;font-weight:700;color:var(--text-primary)}.module-meta{display:flex;gap:1rem;align-items:center}.level-badge{padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600;color:#fff}.duration-badge{padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:500;background:var(--bg-tertiary);color:var(--text-secondary);display:flex;align-items:center;gap:.25rem}.progress-section{margin-bottom:2rem;background:var(--card-bg);padding:1.5rem 2rem;border-radius:12px;box-shadow:0 2px 10px #00000014;border:1px solid var(--border-color)}.progress-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;font-size:.9rem;color:var(--text-secondary);font-weight:500;flex-wrap:wrap;gap:1rem}.mobile-nav-buttons{display:none;gap:.5rem}.objectives-link,.sections-link{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;font-size:.85rem;font-weight:500;transition:all .3s ease}.objectives-link:hover,.sections-link:hover{background:var(--hover-bg);color:var(--primary-color)}.objectives-link i,.sections-link i{font-size:.8rem}.progress-bar{width:100%;height:8px;background:var(--bg-tertiary);border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#1d4ed8);border-radius:4px;transition:width .5s ease}.module-layout{display:grid;grid-template-columns:300px 1fr;gap:2rem;align-items:start}.module-sidebar{background:var(--card-bg);padding:2rem;border-radius:12px;box-shadow:0 2px 10px #00000014;border:1px solid var(--border-color);position:sticky;top:2rem}.module-sidebar h3{margin:0 0 1rem;font-size:1.1rem;font-weight:600;color:var(--text-primary);padding-bottom:.5rem;border-bottom:2px solid var(--border-color)}.module-sidebar h3:not(:first-child){margin-top:2rem}.objectives-list{list-style:none;padding:0;margin:0}.objectives-list li{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:.75rem;font-size:.9rem;color:var(--text-secondary);line-height:1.5}.objectives-list i{color:#10b981;margin-top:.1rem;flex-shrink:0}.sections-list{display:flex;flex-direction:column;gap:.5rem}.section-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .3s ease;text-align:left;width:100%}.section-item:hover{background:var(--bg-tertiary);border-color:var(--border-color)}.section-item.active{background:#3b82f61a;border-color:#3b82f6}.section-item.completed{background:#10b9811a;border-color:#10b981}.section-number{width:24px;height:24px;border-radius:50%;background:var(--bg-tertiary);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:600;flex-shrink:0}.section-item.active .section-number{background:#3b82f6;color:#fff}.section-item.completed .section-number{background:#10b981;color:#fff}.section-info{flex:1;min-width:0}.section-title{display:block;font-size:.9rem;font-weight:500;color:var(--text-primary);margin-bottom:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.section-type{font-size:.75rem;color:var(--text-secondary);text-transform:capitalize}.completion-check{color:#10b981;font-size:.9rem}.module-content{background:var(--card-bg);border-radius:12px;box-shadow:0 2px 10px #00000014;border:1px solid var(--border-color);overflow:hidden}.content-header{padding:2rem 2rem 1rem;border-bottom:1px solid var(--border-color)}.content-header h2{margin:0 0 1rem;font-size:1.75rem;font-weight:600;color:var(--text-primary)}.content-meta{display:flex;gap:1rem;align-items:center}.content-type,.content-duration{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--text-secondary);font-weight:500}.content-type i{color:#3b82f6}.content-body{padding:2rem;min-height:400px}.text-content p{margin:0 0 1.5rem;line-height:1.7;color:var(--text-primary);font-size:1rem}.text-content p:last-child{margin-bottom:0}.video-content{text-align:center}.video-placeholder{background:linear-gradient(135deg,var(--bg-dark),#334155);color:#fff;padding:4rem 2rem;border-radius:12px;margin-bottom:2rem}[data-theme=dark] .video-placeholder{background:linear-gradient(135deg,#1e293b,#334155)}.video-placeholder i{font-size:4rem;margin-bottom:1rem;opacity:.8}.video-placeholder p{font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.video-placeholder span{font-size:.9rem;opacity:.8}.quiz-content{text-align:center}.quiz-placeholder{background:linear-gradient(135deg,#7c3aed,#a855f7);color:#fff;padding:4rem 2rem;border-radius:12px;margin-bottom:2rem}.quiz-placeholder i{font-size:4rem;margin-bottom:1rem;opacity:.8}.quiz-placeholder p{font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.quiz-placeholder span{font-size:.9rem;opacity:.8}.exercise-content{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:12px;padding:2rem}.exercise-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem;font-size:1.1rem;font-weight:600;color:var(--text-primary)}.exercise-header i{color:#f59e0b;font-size:1.25rem}.exercise-text p{margin:0 0 1rem;line-height:1.6;color:var(--text-primary)}.exercise-text p:last-child{margin-bottom:0}.content-actions{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-top:1px solid var(--border-color);background:var(--bg-secondary)}.nav-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;font-weight:500;transition:all .3s ease}.nav-btn:hover:not(:disabled){background:var(--hover-bg);color:var(--text-primary)}.nav-btn:disabled{opacity:.5;cursor:not-allowed}.complete-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 2rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:all .3s ease}.complete-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}.complete-btn:disabled{background:var(--text-light);cursor:not-allowed;transform:none;box-shadow:none}.error-message{text-align:center;padding:4rem 2rem;background:var(--card-bg);border-radius:12px;box-shadow:0 2px 10px #00000014;border:1px solid var(--border-color)}.error-message h2{margin:0 0 1rem;color:var(--text-primary)}.error-message p{margin:0 0 2rem;color:var(--text-secondary)}.back-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#3b82f6;color:#fff;text-decoration:none;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.back-btn:hover{background:#1d4ed8;transform:translateY(-2px)}@media(max-width:1024px){.module-layout{grid-template-columns:1fr;gap:1.5rem}.module-sidebar{position:static;order:2}.module-content{order:1}.mobile-nav-buttons{display:flex}.module-sidebar h3:first-child,.module-sidebar .objectives-list,.module-sidebar h3:nth-child(2),.module-sidebar .sections-list{display:none}.module-sidebar{display:none}}@media(max-width:768px){.module-container{padding:0 .5rem}.module-header{padding:1rem 1.5rem;flex-direction:column;align-items:flex-start;gap:1rem}.module-info h1{font-size:1.5rem}.progress-section{padding:1rem 1.5rem}.progress-info{flex-direction:column;align-items:flex-start;gap:.75rem}.mobile-nav-buttons{align-self:flex-end}.content-header{padding:1.5rem 1.5rem 1rem}.content-header h2{font-size:1.5rem}.content-body{padding:1.5rem}.content-actions{padding:1rem 1.5rem;flex-direction:column;gap:1rem}.nav-btn,.complete-btn{width:100%;justify-content:center}.video-placeholder,.quiz-placeholder{padding:3rem 1.5rem}.video-placeholder i,.quiz-placeholder i{font-size:3rem}.objectives-sidebar{width:100%;max-width:320px;top:var(--header-height-tablet);height:calc(100vh - var(--header-height-tablet))}.sidebar-tabs{flex-direction:row;gap:.5rem}.sidebar-tab{flex:1;padding:.4rem .8rem;font-size:.8rem;justify-content:center}}@media(max-width:480px){.module-detail-page{padding:.5rem 0}.content-meta{flex-direction:column;align-items:flex-start;gap:.5rem}.exercise-content{padding:1.5rem}.objectives-sidebar{width:100vw;max-width:none;top:var(--header-height-mobile);height:calc(100vh - var(--header-height-mobile))}.mobile-nav-buttons{width:100%;justify-content:space-between}.objectives-link,.sections-link{flex:1;justify-content:center}.sidebar-tabs{width:100%;gap:.25rem}.sidebar-tab{flex:1;justify-content:center;padding:.5rem;font-size:.75rem}.sidebar-header-title{font-size:1rem}.objectives-sidebar-header{padding:.75rem 1rem}}[data-theme=dark] .module-header,[data-theme=dark] .progress-section,[data-theme=dark] .module-sidebar,[data-theme=dark] .module-content,[data-theme=dark] .error-message{box-shadow:0 2px 10px #0003}.objectives-overlay{position:fixed;inset:0;background:#00000080;z-index:998;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.objectives-sidebar{position:fixed;top:var(--header-height-desktop);right:0;width:320px;height:calc(100vh - var(--header-height-desktop));background:var(--card-bg);border-left:1px solid var(--border-color);z-index:999;display:flex;flex-direction:column;animation:slideInRight .3s ease-out;box-shadow:-4px 0 20px #0000001a}[data-theme=dark] .objectives-sidebar{box-shadow:-4px 0 20px #0000004d}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.objectives-sidebar-header{display:flex;flex-direction:column;gap:1rem;padding:1rem 1.5rem;border-bottom:1px solid var(--border-color);background:var(--bg-secondary)}.sidebar-header-top{display:flex;justify-content:space-between;align-items:center}.sidebar-header-title{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0}.sidebar-tabs{display:flex;gap:.5rem;width:100%}.sidebar-tab{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;font-size:.85rem;font-weight:500;transition:all .3s ease}.sidebar-tab:hover{background:var(--hover-bg);color:var(--text-primary)}.sidebar-tab.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.sidebar-tab i{font-size:.8rem}.objectives-sidebar-header h3{margin:0;font-size:1.1rem;font-weight:600;color:var(--text-primary)}.close-objectives-btn{width:32px;height:32px;border:none;background:var(--bg-tertiary);border-radius:8px;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.close-objectives-btn:hover{background:var(--hover-bg);color:var(--text-primary)}.objectives-sidebar-content{flex:1;padding:1.5rem;overflow-y:auto}.objectives-sidebar .objectives-list{list-style:none;padding:0;margin:0}.objectives-sidebar .objectives-list li{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:1rem;font-size:.95rem;color:var(--text-secondary);line-height:1.6;padding:.75rem;background:var(--bg-secondary);border-radius:8px;border:1px solid var(--border-color)}.objectives-sidebar .objectives-list li:last-child{margin-bottom:0}.objectives-sidebar .objectives-list i{color:#10b981;margin-top:.1rem;flex-shrink:0}.objectives-sidebar .sections-list{display:flex;flex-direction:column;gap:.5rem}.objectives-sidebar .section-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .3s ease;text-align:left;width:100%}.objectives-sidebar .section-item:hover{background:var(--bg-tertiary);border-color:var(--border-color)}.objectives-sidebar .section-item.active{background:#3b82f61a;border-color:#3b82f6}.objectives-sidebar .section-item.completed{background:#10b9811a;border-color:#10b981}.objectives-sidebar .section-number{width:24px;height:24px;border-radius:50%;background:var(--bg-tertiary);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:600;flex-shrink:0}.objectives-sidebar .section-item.active .section-number{background:#3b82f6;color:#fff}.objectives-sidebar .section-item.completed .section-number{background:#10b981;color:#fff}.objectives-sidebar .section-info{flex:1;min-width:0}.objectives-sidebar .section-title{display:block;font-size:.9rem;font-weight:500;color:var(--text-primary);margin-bottom:.25rem;line-height:1.3}.objectives-sidebar .section-type{font-size:.75rem;color:var(--text-secondary);text-transform:capitalize}.objectives-sidebar .completion-check{color:#10b981;font-size:.9rem}.jobs-page{min-height:100vh;background:var(--bg-primary)}.jobs-hero{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:8rem 0 6rem;position:relative;overflow:hidden;min-height:400px}.jobs-hero:before{content:"";position:absolute;inset:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="75" cy="75" r="1" fill="rgba(255,255,255,0.1)"/></pattern></defs><rect width="100" height="100" fill="url(%23grain)"/></svg>');opacity:.3}.hero-text h1{font-size:3.5rem;font-weight:800;margin-bottom:1.5rem;line-height:1.1;color:#fff!important;text-shadow:0 2px 4px rgba(0,0,0,.3);letter-spacing:-.02em}.hero-text p{font-size:1.25rem;margin-bottom:2rem;opacity:.95;line-height:1.6;color:#fff!important;text-shadow:0 1px 2px rgba(0,0,0,.3);font-weight:400}.hero-actions{display:flex;gap:1rem;justify-content:center;align-items:center;flex-wrap:wrap}.btn{border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;text-decoration:none;white-space:nowrap;padding:1rem 2rem;font-size:1rem}.btn-primary{background:#10b981;color:#fff}.btn-primary:hover{background:#059669;transform:translateY(-2px)}.btn-outline{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-outline:hover{background:#fff3;border-color:#ffffff80;transform:translateY(-2px)}@media(max-width:768px){.jobs-hero{padding:6rem 0 4rem;min-height:350px}.hero-content{padding:0 1.5rem}.hero-text h1{font-size:2.5rem}.hero-text p{font-size:1.1rem;margin-bottom:1.5rem}.hero-actions{flex-direction:column;gap:.75rem;width:100%}.btn{width:100%;max-width:280px;padding:.875rem 1.5rem;font-size:.95rem}}@media(max-width:480px){.jobs-hero{padding:.5rem 0 .25rem;min-height:auto}.hero-text h1{font-size:1.3rem;margin-bottom:.25rem}.hero-text p{font-size:.75rem;margin-bottom:.5rem;line-height:1.25}.btn{padding:.4rem .8rem;font-size:.75rem;width:100%;justify-content:center;height:32px}.hero-actions{gap:.25rem;margin-top:.25rem!important}.section-header{margin-bottom:.25rem}.section-header h2{font-size:1.1rem;margin-bottom:0;line-height:1.2}.section-header p{font-size:.7rem;margin-top:.1rem;margin-bottom:0}.featured-jobs-section,.top-companies-section,.job-banner-section{padding:.5rem 0 .25rem}.featured-job-card{min-width:200px;max-width:200px;height:auto;min-height:200px;padding:.5rem}.company-logo-item{margin:0 .25rem;min-width:50px}.company-logo-wrapper{width:36px;height:36px}.banner-content h2{font-size:1rem}.banner-content p{font-size:.75rem;margin-bottom:.5rem}.banner-slider{height:180px}}.jobs-hero:before{content:"";position:absolute;inset:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="75" cy="75" r="1" fill="rgba(255,255,255,0.1)"/></pattern></defs><rect width="100" height="100" fill="url(%23grain)"/></svg>');opacity:.3}.hero-content{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;align-items:center;justify-content:center}.hero-text{text-align:center;max-width:900px}.hero-text h1{font-size:2.5rem;font-weight:800;margin-bottom:1rem;line-height:1.2}.hero-text p{font-size:1.1rem;margin-bottom:0;opacity:.9;line-height:1.6}.job-search-bar{display:flex;background:#fff;border-radius:12px;padding:.5rem;margin-bottom:2rem;box-shadow:0 10px 30px #0003}.search-input-group,.location-input-group{flex:1;display:flex;align-items:center;padding:0 1rem;border-right:1px solid #e5e7eb}.location-input-group{border-right:none}.search-input-group i,.location-input-group i{color:#6b7280;margin-right:.75rem}.search-input-group input,.location-input-group input{border:none;outline:none;flex:1;padding:1rem 0;font-size:1rem;color:#374151}.search-input-group input::placeholder,.location-input-group input::placeholder{color:#9ca3af}.search-btn{background:var(--primary-color);color:#fff;border:none;padding:1rem 2rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem}.search-btn:hover{background:var(--primary-dark);transform:translateY(-2px)}.hero-stats{display:flex;gap:2rem}.stat-number{display:block;font-size:2.5rem;font-weight:700;color:#fff}.stat-label{font-size:.9rem;opacity:.8}.hero-image{height:350px;border-radius:12px;overflow:hidden}.section-header h2{font-size:2.5rem;font-weight:700;color:var(--text-primary);margin:0 0 1rem}.section-header p{font-size:1.2rem;color:var(--text-secondary);margin:0}.featured-jobs-section{padding:4rem 0;background:var(--bg-primary)}.section-container{max-width:1200px;margin:0 auto;padding:0 2rem}.section-header{text-align:center;margin-bottom:3rem}.header-text h2{font-size:2rem;font-weight:700;color:var(--text-primary);margin:0 0 .5rem}.header-text p{color:var(--text-secondary);margin:0;font-size:1rem}.featured-jobs-slider{overflow:hidden;margin-bottom:3rem;position:relative}.featured-jobs-slider:before,.featured-jobs-slider:after{content:"";position:absolute;top:0;width:100px;height:100%;z-index:2;pointer-events:none}.featured-jobs-slider:before{left:0;background:linear-gradient(to right,var(--bg-primary),transparent)}.featured-jobs-slider:after{right:0;background:linear-gradient(to left,var(--bg-primary),transparent)}.featured-jobs-track{display:flex;gap:2rem;animation:slide-jobs 25s linear infinite;width:fit-content}@keyframes slide-jobs{0%{transform:translate(0)}to{transform:translate(calc(-1920px - 10rem))}}.featured-jobs-slider:hover .featured-jobs-track{animation-play-state:paused}.featured-job-card{min-width:300px;max-width:300px;background:var(--card-bg);border-radius:16px;padding:1.25rem;border:1px solid var(--border-color);transition:all .3s ease;cursor:pointer;position:relative;overflow:hidden;flex-shrink:0;display:flex;flex-direction:column;height:300px}.featured-job-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#667eea0d,#764ba20d);opacity:0;transition:opacity .3s ease}.featured-job-card:hover:before{opacity:1}.featured-job-card:hover{box-shadow:0 20px 40px #0000001a;border-color:var(--primary-color);transform:translateY(-4px)}.job-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;position:relative;z-index:1;flex-shrink:0}.company-info{display:flex;gap:1rem;flex:1}.company-logo{width:50px;height:50px;border-radius:8px;overflow:hidden;flex-shrink:0}.company-details h3{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0 0 .25rem;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;word-break:break-word}.company-details p{font-size:.9rem;color:var(--text-secondary);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.urgent-badge{background:linear-gradient(135deg,#ff6b6b,#ee5a24);color:#fff;padding:.25rem .75rem;border-radius:12px;display:flex;align-items:center;gap:.25rem;font-size:.75rem;font-weight:600;flex-shrink:0}.job-card-content{margin-bottom:1rem;position:relative;z-index:1;flex:1;min-height:0;overflow:hidden}.job-meta{display:flex;flex-direction:column;gap:.5rem}.meta-item{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--text-secondary);line-height:1.2}.meta-item i{width:16px;color:var(--primary-color)}.job-card-footer{display:flex;gap:.75rem;align-items:center;position:relative;z-index:1;margin-top:auto;flex-shrink:0;padding-top:.5rem}.apply-btn{background:var(--primary-color);color:#fff;border:none;padding:.65rem 1.25rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;flex:1;justify-content:center;font-size:.9rem;white-space:nowrap}.apply-btn:hover{background:var(--primary-dark);transform:translateY(-2px)}.featured-job-card .details-btn{background:var(--bg-primary);color:var(--text-secondary);border:1px solid var(--border-color);padding:.75rem;border-radius:8px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;width:45px;height:45px}.featured-job-card .details-btn:hover{background:var(--primary-light);color:var(--primary-color);border-color:var(--primary-color)}.section-footer{text-align:center}.top-companies-section{max-width:1200px;margin:0 auto;padding:4rem 2rem;overflow:hidden}.companies-ticker{overflow:hidden;position:relative;background:var(--card-bg);border-radius:16px;padding:2rem 0;border:1px solid var(--border-color)}.companies-ticker:before,.companies-ticker:after{content:"";position:absolute;top:0;width:100px;height:100%;z-index:2;pointer-events:none}.companies-ticker:before{left:0;background:linear-gradient(to right,var(--card-bg),transparent)}.companies-ticker:after{right:0;background:linear-gradient(to left,var(--card-bg),transparent)}.companies-track{display:flex;animation:scroll 30s linear infinite;width:fit-content}@keyframes scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.company-logo-item{display:flex;flex-direction:column;align-items:center;margin:0 3rem;min-width:120px;flex-shrink:0}.company-logo-wrapper{width:80px;height:80px;border-radius:12px;overflow:hidden;margin-bottom:1rem;transition:all .3s ease;border:2px solid var(--border-color)}.company-logo-item:hover .company-logo-wrapper{transform:scale(1.1);border-color:var(--primary-color);box-shadow:0 8px 25px #0000001a}.company-logo-item .company-name{font-size:.9rem;font-weight:600;color:var(--text-primary);text-align:center;transition:all .3s ease}.company-logo-item:hover .company-name{color:var(--primary-color)}.companies-ticker:hover .companies-track{animation-play-state:paused}.job-banner-section{padding:4rem 0;background:var(--bg-primary)}.banner-slider{position:relative;height:400px;max-width:1200px;margin:0 auto;border-radius:20px;overflow:hidden;box-shadow:0 20px 40px #0000001a}.banner-slide{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;background-repeat:no-repeat;opacity:0;transition:opacity 1s ease-in-out;display:flex;align-items:center;justify-content:center}.banner-slide.active{opacity:1}.banner-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#0009,#0000004d)}.banner-content{position:relative;z-index:2;text-align:center;color:#fff!important;max-width:600px;padding:0 2rem}.banner-content h2{font-size:3rem;font-weight:700;margin-bottom:1rem;line-height:1.2;text-shadow:0 2px 4px rgba(0,0,0,.3);color:#fff!important}.banner-content p{font-size:1.2rem;margin-bottom:2rem;opacity:.9;line-height:1.6;text-shadow:0 1px 2px rgba(0,0,0,.3);color:#fff!important}.banner-btn{background:linear-gradient(135deg,#10b981,#059669);color:#fff!important;border:none;padding:1rem 2rem;border-radius:50px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:.5rem;box-shadow:0 4px 15px #10b9814d}.banner-btn:hover{transform:translateY(-3px);box-shadow:0 8px 25px #10b98166}.banner-indicators{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);display:flex;gap:1rem;z-index:3}.indicator{width:12px;height:12px;border-radius:50%;background:#ffffff80;cursor:pointer;transition:all .3s ease}.indicator.active{background:#fff!important;transform:scale(1.2)}.indicator:hover{background:#fffc}@media(max-width:768px){.job-banner-section{padding:2rem 1rem}.banner-slider{height:300px;border-radius:15px}.banner-content h2{font-size:2rem}.banner-content p{font-size:1rem;margin-bottom:1.5rem}.banner-btn{padding:.8rem 1.5rem;font-size:1rem}}@media(max-width:480px){.banner-slider{height:250px;border-radius:10px}.banner-content{padding:0 1rem}.banner-content h2{font-size:1.5rem}.banner-content p{font-size:.9rem}.banner-btn{padding:.7rem 1.2rem;font-size:.9rem}.banner-indicators{bottom:1rem}.indicator{width:10px;height:10px}}.application-tracking-section{padding:4rem 0;background:var(--bg-secondary)}.application-tracking-section .section-header{max-width:1200px;margin:0 auto 3rem;padding:0 2rem}.tracking-dashboard{max-width:1200px;margin:0 auto;padding:0 2rem;display:grid;grid-template-columns:1fr 1fr;gap:3rem}.tracking-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.stat-card{background:var(--card-bg);border-radius:12px;padding:1.5rem;border:1px solid var(--border-color);display:flex;align-items:center;gap:1rem}.stat-icon{width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.25rem}.stat-icon.applied{background:#3b82f6}.stat-icon.in-review{background:#f59e0b}.stat-icon.interview{background:#8b5cf6}.stat-icon.offer{background:#10b981}.stat-info .stat-number{display:block;font-size:1.5rem;font-weight:700;color:var(--text-primary)}.stat-info .stat-label{font-size:.9rem;color:var(--text-secondary)}.recent-applications{background:var(--card-bg);border-radius:16px;padding:2rem;border:1px solid var(--border-color)}.recent-applications h3{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:0 0 1.5rem}.applications-list{display:flex;flex-direction:column;gap:1rem}.application-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--bg-primary);border-radius:8px}.application-info h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 .25rem}.application-date{font-size:.8rem;color:var(--text-secondary)}.status-badge{padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:500;color:#fff}.status-badge.in-review{background:#f59e0b}.status-badge.interview{background:#8b5cf6}.status-badge.offer{background:#10b981}@media(max-width:768px){.hero-content{grid-template-columns:1fr;text-align:center}.hero-text h1{font-size:2.5rem}.job-search-bar{flex-direction:column;gap:.5rem}.search-input-group,.location-input-group{border-right:none;border-bottom:1px solid #e5e7eb}.location-input-group{border-bottom:none}.hero-stats{justify-content:center}.search-content{grid-template-columns:1fr;gap:2rem}.filters-sidebar{position:static;order:2}.search-main-content{order:1}.main-search-bar{flex-direction:column;gap:.5rem}.search-input-wrapper,.location-input-wrapper{border-right:none;border-bottom:1px solid var(--border-color)}.location-input-wrapper{border-bottom:none}.find-jobs-btn{width:100%;margin-top:.5rem}.section-header{text-align:center;margin-bottom:2rem}.header-text h2{font-size:1.5rem}.featured-jobs-slider:before,.featured-jobs-slider:after{width:50px}.featured-jobs-track{gap:1.5rem;animation-duration:30s}.featured-job-card{min-width:280px;max-width:280px;display:flex;flex-direction:column;height:270px}.job-card-header{flex-direction:column;gap:1rem;align-items:flex-start;margin-bottom:1rem}.job-card-content{flex:1;margin-bottom:1rem}.job-card-footer{margin-top:auto;display:flex;flex-direction:row;gap:.75rem;align-items:center;justify-content:space-between}.apply-btn{flex:1;padding:.75rem 1rem;font-size:.9rem}.featured-job-card .details-btn{width:45px;height:45px;flex-shrink:0;padding:0;display:flex;align-items:center;justify-content:center}.urgent-badge{align-self:flex-end}.companies-ticker{padding:1.5rem 0}.company-logo-item{margin:0 2rem;min-width:100px}.company-logo-wrapper{width:70px;height:70px}.company-logo-item .company-name{font-size:.85rem}.resources-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.jobs-hero,.top-companies-section,.career-resources-section,.featured-jobs-section{padding-left:1rem;padding-right:1rem}.search-container{padding:0 1rem}.filters-sidebar,.search-results-section{padding:1.5rem}.popular-job-card,.search-result-card{padding:1.25rem}.section-container{padding:0 1rem}.header-text h2{font-size:1.25rem}.featured-jobs-slider:before,.featured-jobs-slider:after{width:30px}.featured-jobs-track{gap:1rem;animation-duration:35s}.featured-job-card{min-width:260px;padding:1.25rem;display:flex;flex-direction:column;height:320px}.job-card-footer{margin-top:auto;display:flex;flex-direction:row;gap:.75rem;align-items:center;justify-content:space-between}.apply-btn{flex:1;padding:.75rem 1rem;font-size:.85rem}.featured-job-card .details-btn{width:40px;height:40px;flex-shrink:0;padding:0;display:flex;align-items:center;justify-content:center}.companies-ticker{padding:1rem 0}.companies-ticker:before,.companies-ticker:after{width:50px}.company-logo-item{margin:0 1.5rem;min-width:80px}.company-logo-wrapper{width:60px;height:60px}.company-logo-item .company-name{font-size:.8rem}.companies-track{animation-duration:25s}}.job-search-section{padding:4rem 0;background:var(--bg-primary)}.search-container{max-width:1200px;margin:0 auto;padding:0 2rem}.main-search-bar{display:flex;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;padding:.5rem;margin-bottom:3rem;box-shadow:0 4px 20px #0000001a}.search-input-wrapper,.location-input-wrapper{flex:1;display:flex;align-items:center;padding:0 1rem;border-right:1px solid var(--border-color);position:relative;transition:all .3s ease}.search-input-wrapper{padding-left:1.5rem}.search-input-wrapper:focus-within,.location-input-wrapper:focus-within{background:transparent}.location-input-wrapper{border-right:none}.search-icon,.location-icon{color:#6b7280;margin-right:1rem;font-size:1rem;flex-shrink:0;width:16px;text-align:center}.main-search-input,.location-search-input{border:none;outline:none;flex:1;padding:1rem 0;font-size:1rem;color:var(--text-primary);background:transparent}.main-search-input{padding-left:0}.location-search-input{padding-left:.5rem}.main-search-input:focus,.location-search-input:focus{outline:none;box-shadow:none}.main-search-input::placeholder,.location-search-input::placeholder{color:var(--text-secondary)}.find-jobs-btn{background:#10b981;color:#fff;border:none;padding:1rem 2rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap}.find-jobs-btn:hover{background:#059669;transform:translateY(-2px)}.search-content{display:grid;grid-template-columns:280px 1fr;gap:3rem}.filters-sidebar{background:var(--card-bg);border-radius:16px;padding:2rem;border:1px solid var(--border-color);max-height:calc(100vh - 5rem);overflow-y:auto;position:sticky;top:2rem}.filters-sidebar::-webkit-scrollbar{width:6px}.filters-sidebar::-webkit-scrollbar-track{background:transparent}.filters-sidebar::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.filters-sidebar::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.filter-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.filter-header h3{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:0}.reset-btn{background:none;border:none;color:var(--text-secondary);font-size:1rem;cursor:pointer;transition:all .3s ease;padding:.5rem;border-radius:4px}.reset-btn:hover{color:var(--primary-color);background:var(--primary-light)}.filter-group{margin-bottom:2rem}.filter-group h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.checkbox-group{display:flex;flex-direction:column;gap:.75rem}.checkbox-label{display:flex;align-items:center;cursor:pointer;font-size:.9rem;color:var(--text-primary)}.checkbox-label input[type=checkbox]{display:none}.checkbox-custom{width:18px;height:18px;border:2px solid var(--border-color);border-radius:4px;margin-right:.75rem;position:relative;transition:all .3s ease}.checkbox-label input[type=checkbox]:checked+.checkbox-custom{background:var(--text-primary);border-color:var(--text-primary)}.checkbox-label input[type=checkbox]:checked+.checkbox-custom:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:12px;font-weight:700}.job-results-section{margin-top:0}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.results-header h2{font-size:1.8rem;font-weight:600;color:var(--text-primary);margin:0}.sort-dropdown{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary);font-size:.9rem;position:relative}.sort-dropdown select{border:1px solid var(--border-color);background:var(--card-bg);color:var(--text-primary);font-weight:500;cursor:pointer;outline:none;padding:.5rem 2rem .5rem .75rem;border-radius:8px;font-size:.9rem;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .5rem center;background-size:1rem;transition:all .3s ease}.sort-dropdown select:hover{border-color:var(--primary-color)}.sort-dropdown select:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #10b9811a}.sort-dropdown i{display:none}.job-cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.job-card{border-radius:20px;padding:1.5rem;position:relative;transition:all .3s ease;cursor:pointer;border:1px solid rgba(255,255,255,.2);min-height:280px;display:flex;flex-direction:column}.job-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px #00000026}.orange-card{background:linear-gradient(135deg,#fed7aa,#fdba74);color:#7c2d12}.green-card{background:linear-gradient(135deg,#bbf7d0,#86efac);color:#14532d}.purple-card{background:linear-gradient(135deg,#e9d5ff,#d8b4fe);color:#581c87}.blue-card{background:linear-gradient(135deg,#bfdbfe,#93c5fd);color:#1e3a8a}.pink-card{background:linear-gradient(135deg,#fce7f3,#f9a8d4);color:#831843}.gray-card{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);color:#374151}.job-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.job-date{font-size:.85rem;font-weight:500;opacity:.8}.bookmark-btn{background:none;border:none;font-size:1.1rem;cursor:pointer;opacity:.6;transition:all .3s ease;padding:.25rem}.bookmark-btn:hover,.bookmark-btn.active{opacity:1;transform:scale(1.1)}.company-info{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.company-details{flex:1}.company-name{font-size:.9rem;font-weight:500;opacity:.8;margin-bottom:.5rem}.company-logo{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.2rem;color:#fff;flex-shrink:0}.amazon-logo{background:#232f3e}.google-logo{background:#4285f4}.dribbble-logo{background:#ea4c89}.twitter-logo{background:#1da1f2}.airbnb-logo{background:#ff5a5f}.apple-logo{background:#000}.job-title{font-size:1.3rem;font-weight:600;margin:0 0 1.5rem;line-height:1.3}.job-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.tag{background:#fff6;padding:.3rem .8rem;border-radius:15px;font-size:.75rem;font-weight:500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.job-type{font-size:.85rem;font-weight:500;margin-bottom:1.5rem;opacity:.8;background:#fff6;padding:.3rem .8rem;border-radius:15px;display:inline-block;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.job-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:1rem}.job-footer-left{display:flex;flex-direction:column}.salary{font-size:1.2rem;font-weight:700;margin-bottom:.25rem}.location{font-size:.8rem;opacity:.7}.job-card .details-btn{background:#000c;color:#fff;border:none;padding:.8rem 1.5rem;border-radius:50px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #0003;width:auto;height:auto}.job-card .details-btn:hover{background:#000000e6;transform:translateY(-2px);box-shadow:0 6px 20px #0000004d}@media(max-width:1024px){.search-content{grid-template-columns:250px 1fr;gap:2rem}.job-cards-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.search-content{grid-template-columns:1fr;gap:2rem}.filters-sidebar{position:static;order:2}.job-results-section{order:1}.main-search-bar{flex-direction:column;gap:.5rem}.search-input-wrapper,.location-input-wrapper{border-right:none;border-bottom:1px solid var(--border-color)}.location-input-wrapper{border-bottom:none}.find-jobs-btn{width:100%;margin-top:.5rem}.results-header{flex-direction:column;gap:1rem;align-items:flex-start}.job-cards-grid{grid-template-columns:1fr}.job-card{padding:1.5rem;min-height:280px}}@media(max-width:480px){.search-container{padding:0 1rem}.job-card{padding:1.25rem;min-height:260px}.results-header h2{font-size:1.5rem}.filters-sidebar{padding:1.5rem}.job-title{font-size:1.2rem}.company-logo{width:40px;height:40px}}.job-description{margin-bottom:1rem}.job-description p{color:var(--text-secondary);line-height:1.6;margin:0}.no-results p,.job-description p{color:var(--text-secondary);line-height:1.6;margin:0}.result-footer{display:flex;justify-content:space-between;align-items:center}.detail-hiring-btn{background:none;border:none;color:#10b981;font-weight:500;cursor:pointer;transition:all .3s ease}.detail-hiring-btn:hover{color:#059669;text-decoration:underline}.posted-time{font-size:.8rem;color:var(--text-secondary)}.no-results{text-align:center;padding:3rem 2rem}.no-results-content{max-width:300px;margin:0 auto}.no-results-icon{font-size:3rem;color:var(--text-secondary);margin-bottom:1rem}.no-results h4{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.no-results p{color:var(--text-secondary);line-height:1.6;margin:0}@media(max-width:1024px){.search-content{grid-template-columns:250px 1fr;gap:2rem}.popular-jobs-grid{grid-template-columns:1fr}}@media(max-width:768px){.search-content{grid-template-columns:1fr;gap:2rem}.filters-sidebar{position:static;order:2}.search-main-content{order:1}.main-search-bar{flex-direction:column;gap:.5rem}.search-input-wrapper,.location-input-wrapper{border-right:none;border-bottom:1px solid var(--border-color)}.location-input-wrapper{border-bottom:none}.find-jobs-btn{width:100%;margin-top:.5rem}.result-header{flex-direction:column;gap:1rem}.job-badges{align-self:flex-start}.result-footer{flex-direction:column;gap:1rem;align-items:flex-start}}@media(max-width:480px){.search-container{padding:0 1rem}.filters-sidebar,.search-results-section{padding:1.5rem}.popular-job-card,.search-result-card{padding:1.25rem}.filter-group{margin-bottom:1.5rem}}.job-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:flex-start;justify-content:center;z-index:9999;padding:6rem 2rem 2rem;overflow-y:auto}.job-modal{background:var(--card-bg);border-radius:16px;max-width:500px;width:100%;max-height:calc(100vh - 8rem);overflow-y:auto;box-shadow:0 10px 30px #0003;border:1px solid var(--border-color);position:relative;margin-top:2rem;scrollbar-width:none;-ms-overflow-style:none}.job-modal::-webkit-scrollbar{display:none}.job-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:2rem 2rem 1rem;border-bottom:1px solid var(--border-color)}.job-modal-title h2{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin:0 0 .5rem;line-height:1.3}.job-modal-title p{color:var(--text-secondary);margin:0;font-size:1rem;font-weight:500}.job-modal-close{background:none;border:none;font-size:1.5rem;color:var(--text-secondary);cursor:pointer;padding:.5rem;border-radius:8px;transition:all .3s ease}.job-modal-close:hover{background:var(--bg-secondary);color:var(--text-primary)}.job-modal-content{padding:2rem}.job-modal-info{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.job-modal-info-row{display:flex;align-items:center;gap:1rem;padding:.75rem 0}.job-modal-info-row i{width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:#3b82f6;font-size:1.1rem}.job-modal-info-row span{color:var(--text-primary);font-size:1rem;font-weight:500}.job-modal-tags{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.modal-tag{background:#3b82f6;color:#fff;padding:.4rem .8rem;border-radius:20px;font-size:.8rem;font-weight:500}.job-modal-description,.job-modal-requirements,.job-modal-benefits{margin-bottom:2rem}.job-modal-description h3,.job-modal-requirements h3,.job-modal-benefits h3{font-size:1.2rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.job-modal-description p{color:var(--text-secondary);line-height:1.6;margin:0;font-size:.95rem}.job-modal-requirements ul,.job-modal-benefits ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.job-modal-requirements li,.job-modal-benefits li{color:var(--text-secondary);line-height:1.5;padding-left:1.5rem;position:relative;font-size:.9rem}.job-modal-requirements li:before{content:"✓";position:absolute;left:0;color:#10b981;font-weight:700;font-size:1rem}.job-modal-benefits li:before{content:"•";position:absolute;left:0;color:#3b82f6;font-weight:700;font-size:1.2rem}.job-modal-footer{display:flex;gap:1rem;padding:1.5rem 2rem 2rem;border-top:1px solid var(--border-color)}.job-modal-apply-btn{background:#3b82f6;color:#fff;border:none;padding:1rem 2rem;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;width:100%;justify-content:center;font-size:1rem}.job-modal-apply-btn:hover{background:#2563eb;transform:translateY(-1px)}.job-modal-save-btn{background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-color);padding:1rem;border-radius:12px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;width:50px;height:50px;font-size:1.1rem}.job-modal-save-btn:hover{background:var(--primary-light);color:var(--primary-color);border-color:var(--primary-color)}@media(max-width:768px){.job-modal-overlay{padding:5rem 1rem 1rem}.job-modal{border-radius:12px;max-height:calc(100vh - 6rem);margin-top:1rem}.job-modal-header{padding:1.5rem 1.5rem 1rem}.job-modal-title h2{font-size:1.3rem}.job-modal-content{padding:1.5rem}.job-modal-footer{padding:1rem 1.5rem 1.5rem;flex-direction:column;gap:1rem}.job-modal-save-btn{width:100%;height:50px}}@media(max-width:480px){.job-modal-overlay{padding:4rem .5rem .5rem}.job-modal{border-radius:10px;margin-top:.5rem}.job-modal-header{padding:1rem 1rem .5rem}.job-modal-title h2{font-size:1.2rem}.job-modal-title p{font-size:.9rem}.job-modal-content,.job-modal-footer{padding:1rem}.job-modal-apply-btn{padding:.9rem 1.5rem;font-size:.95rem}}.mobile-filter-bar{display:none;justify-content:space-between;align-items:center;padding:1rem 0;margin-bottom:1.5rem;border-bottom:1px solid var(--border-color)}.mobile-filter-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:25px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;font-size:.9rem;box-shadow:0 2px 8px #3b82f64d}.mobile-filter-btn:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-1px);box-shadow:0 4px 12px #3b82f666}.results-count{font-size:.9rem;color:var(--text-secondary);font-weight:500}.job-results-grid-mobile{display:none;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:2rem}.job-card-mobile{background:var(--card-bg);border-radius:16px;padding:1.25rem;border:1px solid var(--border-color);transition:all .3s ease;cursor:pointer;position:relative;overflow:hidden;min-height:280px;display:flex;flex-direction:column}.job-card-mobile:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000001a;border-color:var(--primary-color)}.job-card-header-mobile{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.job-date-mobile{font-size:.75rem;color:var(--text-secondary);font-weight:500}.bookmark-btn-mobile{background:none;border:none;font-size:1rem;cursor:pointer;opacity:.6;transition:all .3s ease;padding:.25rem;color:var(--text-secondary)}.bookmark-btn-mobile:hover,.bookmark-btn-mobile.active{opacity:1;transform:scale(1.1);color:#fbbf24}.company-info-mobile{display:flex;gap:.75rem;margin-bottom:1rem;align-items:flex-start}.company-logo-mobile{width:35px;height:35px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem;color:#fff;flex-shrink:0}.company-details-mobile{flex:1;min-width:0}.company-name-mobile{font-size:.8rem;color:var(--text-secondary);font-weight:500;margin-bottom:.25rem}.job-title-mobile{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0;line-height:1.3;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.job-meta-mobile{margin-bottom:1rem}.salary-mobile{font-size:1.1rem;font-weight:700;color:var(--text-primary);margin-bottom:.25rem}.location-mobile{font-size:.8rem;color:var(--text-secondary);display:flex;align-items:center;gap:.25rem}.location-mobile:before{content:"📍";font-size:.7rem}.job-tags-mobile{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1rem}.tag-mobile{background:var(--bg-secondary);color:var(--text-secondary);padding:.25rem .6rem;border-radius:12px;font-size:.7rem;font-weight:500;border:1px solid var(--border-color)}.job-card-footer-mobile{display:flex;gap:.75rem;align-items:center;margin-top:auto}.apply-btn-mobile{background:var(--primary-color);color:#fff;border:none;padding:.75rem 1rem;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.85rem;flex:1}.apply-btn-mobile:hover{background:var(--primary-dark);transform:translateY(-1px)}.details-btn-mobile{background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-color);padding:.75rem;border-radius:12px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;width:45px;height:45px;flex-shrink:0}.details-btn-mobile:hover{background:var(--primary-light);color:var(--primary-color);border-color:var(--primary-color)}.filter-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:flex-end;justify-content:center;z-index:9999;padding:0;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.filter-modal{background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px 20px 0 0;width:100%;max-height:80vh;overflow-y:auto;box-shadow:0 -10px 30px #0003;animation:slideUp .3s ease-out;color:var(--text-primary);border-top:2px solid rgba(59,130,246,.3)}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.filter-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 1.5rem 1rem;border-bottom:1px solid rgba(59,130,246,.1);background:linear-gradient(135deg,#3b82f60d,#93c5fd0d)}.filter-modal-header h3{font-size:1.3rem;font-weight:700;color:var(--text-primary);margin:0}.filter-close-btn{background:#3b82f61a;border:none;color:#3b82f6;font-size:1.2rem;cursor:pointer;padding:.5rem;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.filter-close-btn:hover{background:#3b82f633;transform:scale(1.05)}.filter-modal-content{padding:1.5rem}.filter-search{margin-bottom:2rem}.filter-search .search-input-wrapper{background:#fffc;border:1px solid rgba(59,130,246,.2);border-radius:12px;padding:.75rem 1rem;display:flex;align-items:center;gap:.75rem;transition:all .3s ease}.filter-search .search-input-wrapper:focus-within{border-color:#3b82f6;background:#fff;box-shadow:0 0 0 3px #3b82f61a}.filter-search .search-input-wrapper i{color:#3b82f6;opacity:.7}.filter-search-input{border:none;outline:none;flex:1;background:transparent;color:var(--text-primary);font-size:1rem}.filter-search-input::placeholder{color:var(--text-secondary)}.filter-categories{margin-bottom:2rem}.filter-categories h4{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.category-options{display:flex;flex-direction:column;gap:.75rem}.category-option{display:flex;align-items:center;cursor:pointer;font-size:.95rem;color:var(--text-primary);padding:.5rem 0;transition:all .3s ease}.category-option:hover{color:#3b82f6}.category-option input[type=radio]{display:none}.radio-custom{width:18px;height:18px;border:2px solid rgba(59,130,246,.4);border-radius:50%;margin-right:.75rem;position:relative;transition:all .3s ease}.category-option input[type=radio]:checked+.radio-custom{border-color:#3b82f6;background:#3b82f6}.category-option input[type=radio]:checked+.radio-custom:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:8px;height:8px;background:#fff;border-radius:50%}.count{margin-left:auto;font-size:.8rem;color:var(--text-secondary);font-weight:500}.filter-salary-range{margin-bottom:2rem}.filter-salary-range h4{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.salary-inputs{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.salary-input-group{display:flex;flex-direction:column;gap:.5rem}.salary-input-group label{font-size:.9rem;color:var(--text-primary);font-weight:500}.salary-input{background:#fffc;border:1px solid rgba(59,130,246,.2);border-radius:8px;padding:.75rem;color:var(--text-primary);font-size:.95rem;outline:none;transition:all .3s ease}.salary-input:focus{border-color:#3b82f6;background:#fff;box-shadow:0 0 0 3px #3b82f61a}.salary-input::placeholder{color:var(--text-secondary)}.filter-job-type{margin-bottom:2rem}.filter-job-type h4{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.job-type-options{display:flex;flex-direction:column;gap:.75rem}.job-type-option{display:flex;align-items:center;cursor:pointer;font-size:.95rem;color:var(--text-primary);padding:.5rem 0;transition:all .3s ease}.job-type-option:hover{color:#3b82f6}.job-type-option input[type=checkbox]{display:none}.job-type-option .checkbox-custom{width:18px;height:18px;border:2px solid rgba(59,130,246,.4);border-radius:4px;margin-right:.75rem;position:relative;transition:all .3s ease}.job-type-option input[type=checkbox]:checked+.checkbox-custom{background:#3b82f6;border-color:#3b82f6}.job-type-option input[type=checkbox]:checked+.checkbox-custom:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:12px;font-weight:700}.filter-sort{margin-bottom:2rem}.filter-sort h4{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.sort-select{width:100%;background:#fffc;border:1px solid rgba(59,130,246,.2);border-radius:8px;padding:.75rem 2.5rem .75rem .75rem;color:var(--text-primary);font-size:.95rem;outline:none;cursor:pointer;transition:all .3s ease;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233b82f6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .75rem center;background-size:1rem}.sort-select:focus{border-color:#3b82f6;background:#fff;box-shadow:0 0 0 3px #3b82f61a}.sort-select option{background:#fff;color:var(--text-primary);padding:.75rem}.filter-modal-footer{padding:1rem 1.5rem 1.5rem;border-top:1px solid rgba(59,130,246,.1);background:linear-gradient(135deg,#3b82f605,#93c5fd05)}.apply-filters-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;padding:1rem 2rem;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;font-size:1rem;box-shadow:0 4px 12px #3b82f64d}.apply-filters-btn:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-2px);box-shadow:0 6px 16px #3b82f666}@media(min-width:769px){.search-content.desktop-only{display:grid!important;grid-template-columns:320px 1fr;gap:3rem}.filters-sidebar-desktop{background:var(--card-bg);border-radius:16px;padding:2rem;border:1px solid var(--border-color);height:fit-content;position:sticky;top:2rem}.filter-header-desktop{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.filter-header-desktop h3{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:0}.reset-btn-desktop{background:none;border:none;color:var(--text-secondary);font-size:1rem;cursor:pointer;transition:all .3s ease;padding:.5rem;border-radius:4px}.reset-btn-desktop:hover{color:var(--primary-color);background:var(--primary-light)}.filter-search-desktop{margin-bottom:2rem}.search-input-wrapper-desktop{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:.75rem 1rem;display:flex;align-items:center;gap:.75rem;transition:all .3s ease}.search-input-wrapper-desktop:focus-within{border-color:var(--primary-color);box-shadow:0 0 0 3px #10b9811a}.search-input-wrapper-desktop i{color:var(--text-secondary)}.filter-search-input-desktop{border:none;outline:none;flex:1;background:transparent;color:var(--text-primary);font-size:1rem}.filter-search-input-desktop::placeholder{color:var(--text-secondary)}.filter-categories-desktop{margin-bottom:2rem}.filter-categories-desktop h4{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.category-options-desktop{display:flex;flex-direction:column;gap:.75rem}.category-option-desktop{display:flex;align-items:center;cursor:pointer;font-size:.95rem;color:var(--text-primary);padding:.5rem 0;transition:all .3s ease}.category-option-desktop:hover{color:var(--primary-color)}.category-option-desktop input[type=radio]{display:none}.radio-custom-desktop{width:18px;height:18px;border:2px solid var(--border-color);border-radius:50%;margin-right:.75rem;position:relative;transition:all .3s ease}.category-option-desktop input[type=radio]:checked+.radio-custom-desktop{border-color:var(--primary-color);background:var(--primary-color)}.category-option-desktop input[type=radio]:checked+.radio-custom-desktop:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:8px;height:8px;background:#fff;border-radius:50%}.count-desktop{margin-left:auto;font-size:.8rem;color:var(--text-secondary);font-weight:500}.filter-salary-range-desktop{margin-bottom:2rem}.filter-salary-range-desktop h4{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.salary-inputs-desktop{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.salary-input-group-desktop{display:flex;flex-direction:column;gap:.5rem}.salary-input-group-desktop label{font-size:.9rem;color:var(--text-primary);font-weight:500}.salary-input-desktop{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:.75rem;color:var(--text-primary);font-size:.95rem;outline:none;transition:all .3s ease}.salary-input-desktop:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #10b9811a}.salary-input-desktop::placeholder{color:var(--text-secondary)}.filter-job-type-desktop{margin-bottom:2rem}.filter-job-type-desktop h4{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.job-type-options-desktop{display:flex;flex-direction:column;gap:.75rem}.job-type-option-desktop{display:flex;align-items:center;cursor:pointer;font-size:.95rem;color:var(--text-primary);padding:.5rem 0;transition:all .3s ease}.job-type-option-desktop:hover{color:var(--primary-color)}.job-type-option-desktop input[type=checkbox]{display:none}.job-type-option-desktop .checkbox-custom-desktop{width:18px;height:18px;border:2px solid var(--border-color);border-radius:4px;margin-right:.75rem;position:relative;transition:all .3s ease}.job-type-option-desktop input[type=checkbox]:checked+.checkbox-custom-desktop{background:var(--primary-color);border-color:var(--primary-color)}.job-type-option-desktop input[type=checkbox]:checked+.checkbox-custom-desktop:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:12px;font-weight:700}.filter-sort-desktop{margin-bottom:1rem}.filter-sort-desktop h4{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.sort-select-desktop{width:100%;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:.75rem;color:var(--text-primary);font-size:.95rem;outline:none;cursor:pointer;transition:all .3s ease}.sort-select-desktop:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #10b9811a}.results-count-desktop{font-size:.9rem;color:var(--text-secondary);font-weight:500}.job-results-section{margin-top:0}.job-cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.job-card-mobile{min-height:320px;padding:1.5rem}.company-logo-mobile{width:45px;height:45px;font-size:1rem}.job-title-mobile{font-size:1.1rem}.salary-mobile{font-size:1.2rem}.apply-btn-mobile{padding:.8rem 1.2rem;font-size:.9rem}.details-btn-mobile{width:50px;height:50px}.mobile-filter-bar,.job-results-grid-mobile{display:none!important}}@media(min-width:1025px){.search-content.desktop-only{grid-template-columns:320px 1fr;gap:3rem}.job-cards-grid{grid-template-columns:repeat(3,1fr);gap:2rem}.job-card-mobile{min-height:340px;padding:1.75rem}}@media(max-width:768px){.desktop-only{display:none!important}.mobile-filter-bar{display:flex!important}.job-results-grid-mobile{display:grid!important}.main-search-bar{margin-bottom:1.5rem}.search-content{display:block!important;grid-template-columns:none!important}.search-content.desktop-only{display:none!important}.filter-modal,.filter-modal-content{overflow-x:hidden}.sort-select{max-width:100%;font-size:.9rem}.sort-select option{font-size:.9rem}}@media(max-width:480px){.job-results-grid-mobile{grid-template-columns:repeat(2,1fr);gap:.75rem}.job-card-mobile{padding:1rem;min-height:280px}.company-logo-mobile{width:30px;height:30px;font-size:.75rem}.job-title-mobile{font-size:.9rem;line-height:1.2}.salary-mobile{font-size:.95rem}.apply-btn-mobile{padding:.6rem .8rem;font-size:.8rem}.details-btn-mobile{width:40px;height:40px;padding:.6rem}.filter-modal-content{padding:1rem}.filter-modal-header{padding:1rem 1rem .5rem}.filter-modal-footer{padding:1rem}}.popular-jobs-section{padding:4rem 0;background:var(--bg-primary)}.popular-jobs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;margin-top:2rem}.popular-job-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;padding:1.5rem;display:flex;align-items:center;gap:1.5rem;transition:all .3s ease;position:relative;overflow:hidden}.popular-job-card:hover{transform:translateY(-5px);box-shadow:0 12px 30px #0000001a;border-color:var(--primary-color)}.popular-job-icon{width:60px;height:60px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}.popular-job-info{flex:1}.popular-job-info h3{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0 0 .25rem}.popular-job-info p{font-size:.9rem;color:var(--text-secondary);margin:0}.popular-job-action .category-btn{background:var(--primary-light);color:var(--primary-color);border:none;padding:.5rem 1rem;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .3s ease}.popular-job-card:hover .category-btn{background:var(--primary-color);color:#fff}@media(max-width:768px){.popular-jobs-grid{grid-template-columns:1fr}}@media(max-width:480px){.jobs-hero{padding:.5rem 0!important;min-height:180px!important}.hero-text h1{font-size:1.3rem!important;margin-bottom:.25rem!important}.hero-text p{font-size:.75rem!important;margin-bottom:.5rem!important;line-height:1.25!important}.btn{padding:.4rem .8rem!important;font-size:.75rem!important;width:100%!important;justify-content:center!important;height:32px!important}.hero-actions{gap:.25rem!important;margin-top:.25rem!important}.section-header{margin-bottom:.25rem!important}.section-header h2{font-size:1.1rem!important;margin-bottom:0!important;line-height:1.2!important}.section-header p{font-size:.7rem!important;margin-top:.1rem!important;margin-bottom:0!important}.featured-jobs-section,.top-companies-section,.job-banner-section{padding:.25rem 0!important}section{padding:.25rem 0!important}.featured-job-card{min-width:200px!important;max-width:200px!important;height:auto!important;min-height:200px!important;padding:.5rem!important}.company-logo-item{margin:0 .25rem!important;min-width:50px!important}.company-logo-wrapper{width:36px!important;height:36px!important}.banner-content h2{font-size:1rem!important}.banner-content p{font-size:.75rem!important;margin-bottom:.5rem!important}.banner-slider{height:180px!important}}:root{--primary-color: #2563eb;--primary-color-rgb: 37, 99, 235;--primary-dark: #1d4ed8;--primary-light: #3b82f6;--primary-color-light: #dbeafe;--secondary-color: #1e40af;--accent-color: #60a5fa;--text-primary: #1f2937;--text-secondary: #4b5563;--text-muted: #6b7280;--text-light: #9ca3af;--text-white: #ffffff;--bg-primary: #ffffff;--bg-secondary: #f9fafb;--bg-tertiary: #f3f4f6;--bg-dark: #111827;--card-bg: #ffffff;--section-bg: #f9fafb;--hover-bg: #f3f4f6;--border-color: #e5e7eb;--border-hover: #d1d5db;--success-color: #10b981;--success-color-rgb: 16, 185, 129;--warning-color: #f59e0b;--warning-color-rgb: 245, 158, 11;--error-color: #ef4444;--error-color-rgb: 239, 68, 68;--info-color: #3b82f6;--gradient-primary: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-secondary: linear-gradient(135deg, #2563eb 0%, #3b82f6 100%);--spacing-xs: .2rem;--spacing-sm: .4rem;--spacing-md: .8rem;--spacing-lg: 1.2rem;--spacing-xl: 1.6rem;--spacing-2xl: 2.4rem;--spacing-3xl: 3.2rem;--spacing-4xl: 4rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 20px;--radius-full: 50%;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--transition-fast: .15s ease;--transition-normal: .3s ease;--transition-slow: .5s ease;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", sans-serif;--font-size-xs: .65rem;--font-size-sm: .75rem;--font-size-base: .85rem;--font-size-lg: .95rem;--font-size-xl: 1.05rem;--font-size-2xl: 1.15rem;--font-size-3xl: 1.35rem;--font-size-4xl: 1.55rem;--font-size-5xl: 1.8rem;--container-max-width: 1400px;--header-height-mobile: 48px;--header-height-tablet: 52px;--header-height-desktop: 56px;--sidebar-width-mobile: 240px;--sidebar-width-tablet: 220px;--sidebar-width-desktop: 240px;--sidebar-width-collapsed: 64px;--bottom-nav-height: 60px;--content-padding-mobile: 12px;--content-padding-tablet: 16px;--content-padding-desktop: 24px;--card-spacing: 16px}[data-theme=dark]{--primary-color: #3b82f6;--primary-color-rgb: 59, 130, 246;--primary-dark: #2563eb;--primary-light: #60a5fa;--primary-color-light: #1e3a8a;--secondary-color: #3b82f6;--accent-color: #60a5fa;--text-primary: #e5e5e5;--text-secondary: #d1d5db;--text-muted: #9ca3af;--text-light: #6b7280;--text-white: #ffffff;--bg-primary: #0c0c0c;--bg-secondary: #1a1a1a;--bg-tertiary: #262626;--bg-dark: #000000;--card-bg: #1a1a1a;--section-bg: #0c0c0c;--hover-bg: #262626;--border-color: rgba(255, 255, 255, .1);--border-hover: rgba(255, 255, 255, .2);--success-color: #10b981;--success-color-rgb: 16, 185, 129;--warning-color: #f59e0b;--warning-color-rgb: 245, 158, 11;--error-color: #ef4444;--error-color-rgb: 239, 68, 68;--info-color: #3b82f6;--gradient-primary: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-secondary: linear-gradient(135deg, #3b82f6 0%, #60a5fa 100%);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .5);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .6), 0 2px 4px -1px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .7), 0 4px 6px -2px rgba(0, 0, 0, .5);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .8), 0 10px 10px -5px rgba(0, 0, 0, .6);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .9)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;font-size:13px}@media(min-width:768px){html{font-size:13.5px}}@media(min-width:1024px){html{font-size:14px}}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:1.5;color:var(--text-primary);background-color:var(--bg-secondary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden;-webkit-text-size-adjust:100%;transition:background-color var(--transition-normal),color var(--transition-normal);overscroll-behavior:none;touch-action:pan-y}@media(min-width:768px){body{line-height:1.6}}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;color:var(--text-primary);margin-bottom:var(--spacing-sm)}h1{font-size:var(--font-size-5xl)}h2{font-size:var(--font-size-4xl)}h3{font-size:var(--font-size-3xl)}h4{font-size:var(--font-size-2xl)}h5{font-size:var(--font-size-xl)}h6{font-size:var(--font-size-lg)}@media(min-width:768px){h1{font-size:2.25rem}h2{font-size:2rem}h3{font-size:1.75rem}h4{font-size:1.5rem}h5{font-size:1.25rem}h6{font-size:1.125rem}}@media(min-width:1024px){h1{font-size:3rem}h2{font-size:2.5rem}h3{font-size:2rem}h4{font-size:1.75rem}h5{font-size:1.5rem}h6{font-size:1.25rem}}p{margin-bottom:var(--spacing-md);color:var(--text-secondary)}a{color:var(--primary-color);text-decoration:none;transition:color var(--transition-normal)}a:hover{color:var(--primary-dark)}ul,ol{margin-bottom:var(--spacing-md)}li{margin-bottom:var(--spacing-xs)}img{max-width:100%;height:auto;display:block}*:focus{outline:2px solid var(--primary-color);outline-offset:2px}::selection{background-color:var(--primary-color);color:var(--text-white)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-tertiary)}::-webkit-scrollbar-thumb{background:var(--text-light);border-radius:var(--radius-md)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}*{scrollbar-width:thin;scrollbar-color:var(--text-light) var(--bg-tertiary)}.dashboard-layout *{transition:margin-left .3s cubic-bezier(.4,0,.2,1)}@supports (backdrop-filter: blur(20px)){.header{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}}@supports not (backdrop-filter: blur(20px)){.header{background:#fffffffa}}.dashboard-layout:focus-within{outline:none}button{font-family:inherit;cursor:pointer;border:none;background:none;transition:all .2s ease}button:disabled{opacity:.5;cursor:not-allowed}.loading{opacity:.6;pointer-events:none}.loading *{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.desktop-only{display:none}.mobile-only{display:block}@media(min-width:768px){.desktop-only{display:block}.mobile-only{display:none}}@media(prefers-contrast:high){:root{--text-primary: #000000;--text-secondary: #000000;--bg-primary: #ffffff;--bg-secondary: #ffffff;--primary-color: #0000ff}}@media print{.admin-header,.admin-sidebar,.admin-tabs-header,.header,.sidebar,.footer,.no-print,.global-loader-wrapper,.modal-overlay,.fab,.quick-actions,.theme-toggle-container,.period-limit-control,.timetable-header{display:none!important}html,body,#root,.app-content,.dashboard-layout,.layout-container,.main-content,.content-wrapper,.admin-layout,.admin-main-content,.admin-content-area,.timetable-management-container{display:block!important;height:auto!important;min-height:0!important;overflow:visible!important;position:static!important;margin:0!important;padding:0!important;width:100%!important;background:#fff!important;opacity:1!important;visibility:visible!important;transform:none!important;box-shadow:none!important}.timetable-management-container *{color:#000!important;visibility:visible!important;opacity:1!important;display:block}.timetable-grid{display:table!important}.grid-header,.grid-row{display:table-row!important}.grid-cell,.time-col,.day-col{display:table-cell!important}.admin-main-content,.main-content,.content-wrapper{margin:0!important;padding:0!important;top:0!important;left:0!important}}.fas,.far,.fab,.fal,.fad,.fa{font-family:"Font Awesome 6 Free","Font Awesome 6 Pro",FontAwesome!important;font-weight:900!important;font-style:normal!important;display:inline-block!important;text-rendering:auto!important;-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale!important}i[class*=fa-]{font-family:"Font Awesome 6 Free"!important;font-weight:900!important;display:inline-block!important}@font-face{font-family:FontAwesome;src:url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/webfonts/fa-solid-900.woff2) format("woff2");font-weight:900;font-style:normal}.container{width:100%;max-width:var(--container-max-width);margin:0 auto;padding:0 1rem}@media(min-width:768px){.container{padding:0 1.5rem}}@media(min-width:1024px){.container{padding:0 2rem}}.mobile-only{display:block!important}.tablet-only,.desktop-only{display:none!important}@media(min-width:768px){.mobile-only{display:none!important}.tablet-only{display:block!important}}@media(min-width:1024px){.tablet-only{display:none!important}.desktop-only{display:block!important}}@media(max-width:767px){button,.btn,a[role=button],input[type=button],input[type=submit]{min-height:44px;min-width:44px}}@media(max-width:767px){input[type=text],input[type=email],input[type=password],input[type=search],textarea,select{font-size:16px}}@supports (padding: max(0px)){.safe-area-inset-top{padding-top:max(1rem,env(safe-area-inset-top))}.safe-area-inset-bottom{padding-bottom:max(1rem,env(safe-area-inset-bottom))}.safe-area-inset-left{padding-left:max(1rem,env(safe-area-inset-left))}.safe-area-inset-right{padding-right:max(1rem,env(safe-area-inset-right))}}@media(max-width:767px){*:focus{outline:3px solid var(--primary-color);outline-offset:2px}}.scroll-smooth{-webkit-overflow-scrolling:touch;scroll-behavior:smooth}@media(max-width:767px){.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none;overflow-y:auto}.hide-scrollbar::-webkit-scrollbar{display:none}}.app-page{width:100%;min-height:100%;display:flex;flex-direction:column;gap:var(--card-spacing)}.app-card{background:var(--card-bg);border-radius:var(--radius-lg);padding:16px;box-shadow:var(--shadow-sm);border:1px solid var(--border-color);transition:all .3s ease}.app-card:hover{box-shadow:var(--shadow-md)}.app-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border-color)}.app-card-title{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin:0}.app-card-body{color:var(--text-secondary);line-height:1.6}.app-section{margin-bottom:var(--card-spacing)}.app-section-title{font-size:.875rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:12px;padding-left:4px}.fab{position:fixed;bottom:calc(var(--bottom-nav-height) + 16px);right:16px;width:56px;height:56px;border-radius:50%;background:var(--primary-color);color:#fff;border:none;box-shadow:0 4px 12px #3b82f666;display:flex;align-items:center;justify-content:center;font-size:1.5rem;cursor:pointer;transition:all .3s ease;z-index:999}.fab:hover{transform:scale(1.1);box-shadow:0 6px 16px #3b82f680}.fab:active{transform:scale(.95)}@media(min-width:768px){.fab{bottom:24px;right:24px}}.app-list{list-style:none;padding:0;margin:0}.app-list-item{display:flex;align-items:center;gap:12px;padding:12px;background:var(--card-bg);border-radius:var(--radius-md);margin-bottom:8px;border:1px solid var(--border-color);transition:all .2s ease;cursor:pointer}.app-list-item:hover{background:var(--hover-bg);transform:translate(4px)}.app-list-item:active{transform:scale(.98)}.app-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;background:var(--bg-tertiary);border-radius:16px;font-size:.8rem;font-weight:500;color:var(--text-secondary);border:1px solid var(--border-color)}.app-chip.primary{background:#3b82f61a;color:var(--primary-color);border-color:#3b82f633}.app-chip.success{background:#10b9811a;color:var(--success-color);border-color:#10b98133}.app-chip.warning{background:#f59e0b1a;color:var(--warning-color);border-color:#f59e0b33}.app-chip.error{background:#ef44441a;color:var(--error-color);border-color:#ef444433}.app-divider{height:1px;background:var(--border-color);margin:16px 0}.app-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center;color:var(--text-muted)}.app-empty-state i{font-size:3rem;margin-bottom:16px;opacity:.5}.app-empty-state h3{font-size:1.125rem;font-weight:600;color:var(--text-secondary);margin-bottom:8px}.app-empty-state p{font-size:.9rem;color:var(--text-muted)}.app-grid{display:grid;gap:var(--card-spacing);grid-template-columns:1fr}@media(min-width:640px){.app-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.app-grid{grid-template-columns:repeat(3,1fr)}}@media(min-width:1280px){.app-grid{grid-template-columns:repeat(4,1fr)}}.app-stat-card{background:var(--card-bg);border-radius:var(--radius-lg);padding:20px;border:1px solid var(--border-color);transition:all .3s ease}.app-stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.app-stat-value{font-size:2rem;font-weight:700;color:var(--text-primary);margin-bottom:4px}.app-stat-label{font-size:.875rem;color:var(--text-muted);font-weight:500}.app-stat-change{display:inline-flex;align-items:center;gap:4px;font-size:.8rem;font-weight:600;margin-top:8px}.app-stat-change.positive{color:var(--success-color)}.app-stat-change.negative{color:var(--error-color)}.pull-to-refresh{position:absolute;top:-60px;left:50%;transform:translate(-50%);width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:top .3s ease}.pull-to-refresh.active{top:10px}.pull-to-refresh i{font-size:1.5rem;color:var(--primary-color);animation:spin 1s linear infinite}.app-tabs{display:flex;gap:4px;background:var(--bg-tertiary);padding:4px;border-radius:var(--radius-lg);margin-bottom:16px}.app-tab{flex:1;padding:10px 16px;background:transparent;border:none;border-radius:var(--radius-md);font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.app-tab.active{background:var(--card-bg);color:var(--primary-color);box-shadow:var(--shadow-sm)}.app-tab:hover:not(.active){background:#00000008}.page-transition-enter{opacity:0;transform:translateY(20px)}.page-transition-enter-active{opacity:1;transform:translateY(0);transition:opacity .3s ease,transform .3s ease}.page-transition-exit{opacity:1}.page-transition-exit-active{opacity:0;transition:opacity .2s ease}@media(prefers-reduced-motion:reduce){.fab,.app-card,.app-list-item,.app-stat-card,.page-transition-enter-active,.page-transition-exit-active{transition:none}}.courses-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.courses-scroll::-webkit-scrollbar{display:none}.courses-grid{display:flex;gap:12px;min-width:max-content}@media(min-width:768px){.courses-scroll{overflow-x:visible!important;margin:0!important;padding:0!important}.courses-scroll .courses-grid{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:var(--card-spacing)!important;min-width:auto!important}.courses-scroll .courses-grid>div{min-width:auto!important;max-width:none!important}}@media(min-width:1024px){.courses-scroll .courses-grid{grid-template-columns:repeat(3,1fr)!important}}@media(min-width:1280px){.courses-scroll .courses-grid{grid-template-columns:repeat(4,1fr)!important}}.blog-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.blog-scroll::-webkit-scrollbar{display:none}.blog-grid{display:flex;gap:12px;min-width:max-content}@media(min-width:768px){.blog-scroll{overflow-x:visible!important;margin:0!important;padding:0!important}.blog-scroll .blog-grid{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:var(--card-spacing)!important;min-width:auto!important}.blog-scroll .blog-grid>div{min-width:auto!important;max-width:none!important}}@media(min-width:1024px){.blog-scroll .blog-grid{grid-template-columns:repeat(3,1fr)!important}}@media(min-width:1280px){.blog-scroll .blog-grid{grid-template-columns:repeat(3,1fr)!important}}.fade-in{animation:fadeIn .4s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.container{max-width:var(--container-max-width);margin:0 auto;padding:0}.btn{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--radius-md);text-decoration:none;font-weight:600;font-size:var(--font-size-base);transition:all var(--transition-normal);border:2px solid transparent;cursor:pointer;text-align:center;white-space:nowrap}.btn-primary{background:var(--primary-color);color:var(--text-white);border-color:var(--primary-color)}.btn-primary:hover{background:var(--primary-dark);border-color:var(--primary-dark);transform:translateY(-2px);box-shadow:0 10px 25px #2563eb4d}.btn-secondary{background:transparent;color:var(--text-white);border-color:#ffffff4d}.btn-secondary:hover{background:#ffffff1a;border-color:#ffffff80}.btn-outline{background:transparent;color:var(--primary-color);border-color:var(--primary-color)}.btn-outline:hover{background:var(--primary-color);color:var(--text-white)}.btn-ghost{background:transparent;color:var(--text-secondary);border-color:transparent}.btn-ghost:hover{background:var(--bg-tertiary);color:var(--text-primary)}.card{background:var(--bg-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);transition:all var(--transition-normal);border:2px solid transparent;overflow:hidden}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl)}.card-header{padding:var(--spacing-xl);border-bottom:1px solid var(--bg-tertiary)}.card-body{padding:var(--spacing-xl)}.card-footer{padding:var(--spacing-xl);border-top:1px solid var(--bg-tertiary);background:var(--bg-secondary)}.grid{display:grid;gap:var(--spacing-xl)}.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.grid-auto-fit{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-auto-fill{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.gap-xs{gap:var(--spacing-xs)}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.gap-xl{gap:var(--spacing-xl)}.gap-2xl{gap:var(--spacing-2xl)}.m-0{margin:0}.m-auto{margin:auto}.mt-0{margin-top:0}.mb-0{margin-bottom:0}.ml-0{margin-left:0}.mr-0{margin-right:0}.mt-sm{margin-top:var(--spacing-sm)}.mb-sm{margin-bottom:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mb-md{margin-bottom:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mb-lg{margin-bottom:var(--spacing-lg)}.mt-xl{margin-top:var(--spacing-xl)}.mb-xl{margin-bottom:var(--spacing-xl)}.p-0{padding:0}.pt-0{padding-top:0}.pb-0{padding-bottom:0}.pl-0{padding-left:0}.pr-0{padding-right:0}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.p-xl{padding:var(--spacing-xl)}.p-2xl{padding:var(--spacing-2xl)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.text-3xl{font-size:var(--font-size-3xl)}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.text-white{color:var(--text-white)}.bg-primary{background-color:var(--bg-primary)}.bg-secondary{background-color:var(--bg-secondary)}.bg-tertiary{background-color:var(--bg-tertiary)}.border{border:1px solid var(--bg-tertiary)}.border-t{border-top:1px solid var(--bg-tertiary)}.border-b{border-bottom:1px solid var(--bg-tertiary)}.border-l{border-left:1px solid var(--bg-tertiary)}.border-r{border-right:1px solid var(--bg-tertiary)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:var(--radius-full)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.shadow-2xl{box-shadow:var(--shadow-2xl)}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.block{display:block}.inline{display:inline}.inline-block{display:inline-block}.hidden{display:none}.h-full{height:100%}.min-h-screen{min-height:100vh}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.transition{transition:all var(--transition-normal)}.transition-fast{transition:all var(--transition-fast)}.transition-slow{transition:all var(--transition-slow)}.hover-lift:hover{transform:translateY(-4px)}.hover-scale:hover{transform:scale(1.05)}.hover-shadow:hover{box-shadow:var(--shadow-xl)}.trending-scroll{overflow-x:auto;padding-bottom:var(--spacing-md)}.trending-content{display:flex;gap:var(--spacing-xl);min-width:max-content;padding:0 var(--spacing-md)}.trending-card{min-width:300px;background:var(--bg-secondary);padding:var(--spacing-xl);border-radius:var(--radius-xl);border:2px solid transparent;transition:all var(--transition-normal)}.trending-card:hover{background:var(--bg-primary);border-color:var(--primary-color);transform:translateY(-4px);box-shadow:var(--shadow-xl)}.course-tag{display:inline-block;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-2xl);font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-md)}.course-tag.beginner{background:#dcfce7;color:#166534}.course-tag.foundation{background:#fef3c7;color:#92400e}.course-tag.core{background:#e0e7ff;color:#3730a3}.course-tag.advanced{background:#fce7f3;color:#be185d}.course-meta{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.course-meta span{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--text-muted);font-size:var(--font-size-sm)}.course-meta i{color:var(--primary-color)}.course-rating{display:flex;align-items:center;gap:var(--spacing-sm)}.stars{display:flex;gap:.2rem}.stars i{color:#d1d5db;font-size:var(--font-size-sm)}.stars i.filled{color:#fbbf24}.course-rating span{font-weight:600;color:var(--text-primary)}.mission-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-xl)}.mission-card{background:var(--bg-primary);padding:var(--spacing-2xl) var(--spacing-xl);border-radius:var(--radius-xl);text-align:center;box-shadow:var(--shadow-md);transition:all var(--transition-normal)}.mission-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl)}.mission-icon{width:80px;height:80px;background:var(--gradient-primary);border-radius:var(--radius-2xl);display:flex;align-items:center;justify-content:center;color:var(--text-white);font-size:var(--font-size-3xl);margin:0 auto var(--spacing-lg)}.mission-card h3{font-size:var(--font-size-2xl);font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-md)}.mission-card p{color:var(--text-muted);line-height:1.6}.trending-scroll::-webkit-scrollbar{height:8px}.trending-scroll::-webkit-scrollbar-track{background:#f1f5f9;border-radius:var(--radius-sm)}.trending-scroll::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:var(--radius-sm)}.trending-scroll::-webkit-scrollbar-thumb:hover{background:#94a3b8}.feature-list{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-top:var(--spacing-md)}.feature-tag{background:#fff3;color:var(--text-white);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-2xl);font-size:var(--font-size-xs);font-weight:500}.activity-timeline{display:flex;flex-direction:column;gap:var(--spacing-lg)}.activity-item{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-lg);transition:all var(--transition-normal)}.activity-item:hover{background:var(--bg-tertiary);transform:translate(4px)}.activity-icon{width:40px;height:40px;background:var(--primary-color);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:var(--text-white);font-size:var(--font-size-sm);flex-shrink:0}.activity-content h4{font-size:var(--font-size-base);font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.activity-content p{font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--spacing-xs)}.activity-time{font-size:var(--font-size-xs);color:var(--text-muted);font-style:italic}.quick-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.action-btn{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-lg);background:var(--bg-secondary);border:2px solid transparent;border-radius:var(--radius-lg);text-decoration:none;color:var(--text-secondary);transition:all var(--transition-normal)}.action-btn:hover{background:var(--primary-color);color:var(--text-white);border-color:var(--primary-color);transform:translateY(-2px)}.action-btn i{font-size:var(--font-size-xl)}.action-btn span{font-size:var(--font-size-sm);font-weight:500}.calendar-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-lg)}.calendar-card{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-lg);background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:all var(--transition-normal)}.calendar-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.calendar-date{display:flex;flex-direction:column;align-items:center;justify-content:center;width:60px;height:60px;background:var(--primary-color);color:var(--text-white);border-radius:var(--radius-lg);flex-shrink:0}.calendar-date .date{font-size:var(--font-size-xl);font-weight:700;line-height:1}.calendar-date .month{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em}.calendar-content h4{font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.calendar-content p{font-size:var(--font-size-sm);color:var(--text-secondary)}.companies-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-lg)}.company-card{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-xl);background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:all var(--transition-normal);text-align:center}.company-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl)}.company-logo{width:60px;height:60px;background:var(--bg-secondary);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-2xl);margin-bottom:var(--spacing-md)}.company-info h3{font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-sm)}.company-details{display:flex;flex-direction:column;gap:var(--spacing-xs)}.company-details .package{font-size:var(--font-size-sm);font-weight:600;color:var(--success-color)}.company-details .positions{font-size:var(--font-size-xs);color:var(--text-muted)}.events-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:var(--spacing-lg)}.event-card{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-lg);background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:all var(--transition-normal)}.event-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.event-icon{width:50px;height:50px;background:var(--primary-color);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:var(--text-white);font-size:var(--font-size-lg);flex-shrink:0}.event-content{flex:1}.event-type{display:inline-block;background:var(--bg-secondary);color:var(--primary-color);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-2xl);font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-sm)}.event-content h3{font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.event-company{font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--spacing-sm)}.event-details{display:flex;flex-wrap:wrap;gap:var(--spacing-md)}.event-details span{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--text-muted)}.event-details i{color:var(--primary-color)}.event-action{flex-shrink:0}.success-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-xl)}.success-card{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid rgba(255,255,255,.2);border-radius:var(--radius-xl);padding:var(--spacing-xl);text-align:center;transition:all var(--transition-normal)}.success-card:hover{transform:translateY(-4px);background:#ffffff26;border-color:#ffffff4d}.success-avatar{width:80px;height:80px;background:#fff3;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-3xl);margin:0 auto var(--spacing-lg)}.success-content h3{font-size:var(--font-size-xl);font-weight:600;color:var(--text-white);margin-bottom:var(--spacing-md)}.success-details{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg)}.success-details .company{font-size:var(--font-size-lg);font-weight:600;color:var(--text-white)}.success-details .role{font-size:var(--font-size-sm);color:#fffc}.success-details .package{font-size:var(--font-size-lg);font-weight:700;color:#fbbf24}.success-card blockquote{font-size:var(--font-size-sm);font-style:italic;color:#ffffffe6;line-height:1.6;margin:0}@media(max-width:768px){.quick-actions,.calendar-grid{grid-template-columns:1fr}.companies-grid{grid-template-columns:repeat(2,1fr)}.events-grid{grid-template-columns:1fr}.event-card{flex-direction:column;text-align:center}.success-grid{grid-template-columns:1fr}}@media(max-width:480px){.companies-grid{grid-template-columns:1fr}.activity-item,.calendar-card{flex-direction:column;text-align:center}}.attendance-circle{position:relative;width:150px;height:150px;margin:0 auto}.circle-progress{width:150px;height:150px;border-radius:50%;background:conic-gradient(var(--primary-color) 0deg,var(--primary-color) calc(var(--progress, 0%) * 3.6deg),var(--bg-tertiary) calc(var(--progress, 0%) * 3.6deg),var(--bg-tertiary) 360deg);display:flex;align-items:center;justify-content:center;position:relative}.circle-progress:before{content:"";position:absolute;width:120px;height:120px;background:var(--bg-primary);border-radius:50%}.circle-progress .percentage{position:relative;z-index:1;font-size:var(--font-size-2xl);font-weight:700;color:var(--text-primary)}.attendance-status{display:flex;flex-direction:column;gap:var(--spacing-lg)}.status-items{display:flex;flex-direction:column;gap:var(--spacing-md)}.status-item{display:flex;align-items:center;gap:var(--spacing-md)}.status-indicator{width:12px;height:12px;border-radius:50%}.attendance-badge{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-2xl);font-weight:600;font-size:var(--font-size-sm)}.attendance-bar{width:100%;height:8px;background:var(--bg-tertiary);border-radius:var(--radius-sm);overflow:hidden}.attendance-fill{height:100%;background:linear-gradient(90deg,var(--success-color),var(--primary-color));border-radius:var(--radius-sm);transition:width var(--transition-normal)}.attendance-timeline{display:flex;flex-direction:column;gap:var(--spacing-lg)}.timeline-item{display:flex;align-items:flex-start;gap:var(--spacing-lg);padding:var(--spacing-lg);background:var(--bg-secondary);border-radius:var(--radius-lg);transition:all var(--transition-normal)}.timeline-item:hover{background:var(--bg-tertiary);transform:translate(4px)}.timeline-marker{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-white);font-size:var(--font-size-sm);flex-shrink:0}.timeline-marker.present{background:var(--success-color)}.timeline-marker.absent{background:var(--error-color)}.timeline-content{flex:1}.status-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-2xl);font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase}.status-badge.present{background:var(--success-light);color:var(--success-color)}.status-badge.absent{background:var(--error-light);color:var(--error-color)}.text-success-color{color:#10b981}.text-warning-color{color:#f59e0b}.text-error-color{color:#ef4444}.text-info-color{color:#3b82f6}.text-primary-color{color:var(--primary-color)}.bg-success-light{background:#10b9811a}.bg-warning-light{background:#f59e0b1a}.bg-error-light{background:#ef44441a}.bg-info-light{background:#3b82f61a}.bg-primary-light{background:#2563eb1a}.bg-success-color{background:#10b981}.bg-warning-color{background:#f59e0b}.bg-error-color{background:#ef4444}.job-search-header{display:flex;flex-direction:column;gap:var(--spacing-lg);margin-bottom:var(--spacing-2xl)}.search-bar{display:flex;align-items:center;background:var(--bg-primary);border-radius:var(--radius-lg);padding:var(--spacing-sm);box-shadow:var(--shadow-md)}.search-input{flex:1;border:none;background:transparent;font-size:var(--font-size-base);color:var(--text-primary);outline:none}.search-input::placeholder{color:var(--text-muted)}.search-btn{padding:var(--spacing-md);background:var(--primary-color);color:var(--text-white);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal)}.search-btn:hover{background:var(--primary-dark)}.job-filters{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.filter-select{padding:var(--spacing-md);border:2px solid var(--bg-tertiary);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-normal)}.filter-select:hover,.filter-select:focus{border-color:var(--primary-color);outline:none}.jobs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:var(--spacing-xl)}.job-card{background:var(--bg-primary);border-radius:var(--radius-xl);padding:var(--spacing-xl);box-shadow:var(--shadow-md);transition:all var(--transition-normal);border:2px solid transparent}.job-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl);border-color:var(--primary-color)}.job-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-lg)}.company-info{display:flex;align-items:center;gap:var(--spacing-md)}.company-logo{width:50px;height:50px;background:var(--bg-secondary);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xl)}.company-info h3{font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.company-name{font-size:var(--font-size-sm);color:var(--text-secondary)}.job-meta{display:flex;gap:var(--spacing-sm)}.job-type{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-2xl);font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase}.job-details{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.detail-row{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--text-secondary)}.detail-row i{color:var(--primary-color);width:16px}.job-description{margin-bottom:var(--spacing-lg)}.job-description p{color:var(--text-secondary);line-height:1.6}.job-skills h4{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-sm)}.skills-list{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg)}.skill-tag{background:var(--bg-secondary);color:var(--primary-color);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-2xl);font-size:var(--font-size-xs);font-weight:500}.job-timeline{display:flex;justify-content:space-between;margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md)}.timeline-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.timeline-label{font-size:var(--font-size-xs);color:var(--text-muted);font-weight:500}.deadline{color:var(--error-color);font-weight:600}.job-actions{display:flex;gap:var(--spacing-md)}.flex-1{flex:1}.applications-list{display:flex;flex-direction:column;gap:var(--spacing-xl)}.application-card{background:var(--bg-primary);border-radius:var(--radius-xl);padding:var(--spacing-xl);box-shadow:var(--shadow-md);transition:all var(--transition-normal)}.application-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.application-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-lg)}.application-info h3{font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.application-info .company{font-size:var(--font-size-base);color:var(--text-secondary);margin-bottom:var(--spacing-xs)}.applied-date{font-size:var(--font-size-sm);color:var(--text-muted)}.application-progress{margin-bottom:var(--spacing-lg)}.progress-steps{display:flex;justify-content:space-between;position:relative;margin-bottom:var(--spacing-lg)}.progress-steps:before{content:"";position:absolute;top:20px;left:0;right:0;height:2px;background:var(--bg-tertiary);z-index:1}.step{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);position:relative;z-index:2}.step i{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);transition:all var(--transition-normal)}.step.completed i{background:var(--success-color);color:var(--text-white)}.step.active i{background:var(--primary-color);color:var(--text-white)}.step.pending i{background:var(--bg-tertiary);color:var(--text-muted)}.step span{font-size:var(--font-size-xs);color:var(--text-secondary);font-weight:500}.next-step h4{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-sm)}.next-step p{color:var(--text-secondary)}.drives-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:var(--spacing-xl)}.drive-card{background:var(--bg-primary);border-radius:var(--radius-xl);padding:var(--spacing-xl);box-shadow:var(--shadow-md);transition:all var(--transition-normal)}.drive-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl)}.drive-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.drive-header h3{font-size:var(--font-size-xl);font-weight:600;color:var(--text-primary)}.drive-date{display:flex;flex-direction:column;align-items:center;background:var(--primary-color);color:var(--text-white);padding:var(--spacing-md);border-radius:var(--radius-lg);min-width:60px}.drive-date .date{font-size:var(--font-size-xl);font-weight:700;line-height:1}.drive-date .month{font-size:var(--font-size-xs);text-transform:uppercase}.drive-details{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.positions-offered h4,.eligibility h4{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-sm)}.positions-list{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg)}.position-tag{background:var(--primary-light);color:var(--primary-color);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-2xl);font-size:var(--font-size-xs);font-weight:500}.eligibility p{color:var(--text-secondary);font-size:var(--font-size-sm);margin-bottom:var(--spacing-lg)}.w-full{width:100%}@media(max-width:768px){.job-search-header{gap:var(--spacing-md)}.job-filters,.jobs-grid,.job-details{grid-template-columns:1fr}.job-actions{flex-direction:column}.progress-steps{flex-direction:column;gap:var(--spacing-lg)}.progress-steps:before{display:none}.drives-grid{grid-template-columns:1fr}}.quick-access-card{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-xl);background:var(--bg-primary);border-radius:var(--radius-xl);text-decoration:none;color:inherit;box-shadow:var(--shadow-md);transition:all var(--transition-normal);border:2px solid transparent;position:relative;overflow:hidden}.quick-access-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--primary-color);transform:scaleX(0);transition:transform var(--transition-normal)}.quick-access-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl);border-color:var(--primary-color)}.quick-access-card:hover:before{transform:scaleX(1)}.quick-access-card.blue{--accent-color: #3b82f6}.quick-access-card.green{--accent-color: #10b981}.quick-access-card.purple{--accent-color: #8b5cf6}.quick-access-card.blue:before{background:#3b82f6}.quick-access-card.green:before{background:#10b981}.quick-access-card.purple:before{background:#8b5cf6}.quick-access-card .card-icon{width:60px;height:60px;background:var(--bg-secondary);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-2xl);color:var(--primary-color);flex-shrink:0;transition:all var(--transition-normal)}.quick-access-card:hover .card-icon{background:var(--primary-color);color:var(--text-white);transform:scale(1.1)}.quick-access-card .card-content{flex:1}.quick-access-card .card-content h3{font-size:var(--font-size-xl);font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-sm)}.quick-access-card .card-content p{color:var(--text-secondary);margin-bottom:var(--spacing-md);line-height:1.5}.quick-access-card .card-arrow{width:40px;height:40px;background:var(--bg-secondary);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:var(--text-muted);transition:all var(--transition-normal);flex-shrink:0}.quick-access-card:hover .card-arrow{background:var(--primary-color);color:var(--text-white);transform:translate(4px)}.page-placeholder{display:flex;align-items:center;justify-content:center;min-height:60vh;font-size:var(--font-size-xl);color:var(--text-muted);text-align:center}@media(max-width:768px){.quick-access-grid{grid-template-columns:1fr}.quick-access-card{flex-direction:column;text-align:center;gap:var(--spacing-md)}.quick-access-card .card-arrow{transform:rotate(90deg)}.quick-access-card:hover .card-arrow{transform:rotate(90deg) translate(4px)}}.page-content{padding:0;width:100%;height:100%}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid #e2e8f0}.header-content h1{font-size:2rem;font-weight:700;color:#1e293b;margin-bottom:.5rem}.header-content p{color:#64748b;font-size:1rem;margin:0}.header-actions{display:flex;gap:.75rem}.content-section{margin-bottom:3rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.section-header h2{font-size:1.5rem;font-weight:600;color:#1e293b;margin:0}.filters{display:flex;gap:.75rem}.filter-select{padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:6px;background:#fff;font-size:.875rem;color:#374151;cursor:pointer;transition:all .2s ease}.filter-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.materials-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.material-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem;transition:all .2s ease;box-shadow:0 1px 3px #0000001a}.material-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026;border-color:#3b82f6}.material-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.material-icon{width:40px;height:40px;background:#fef2f2;color:#dc2626;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1.25rem}.material-type{background:#f1f5f9;color:#475569;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600}.material-content h3{font-size:1.125rem;font-weight:600;color:#1e293b;margin-bottom:.5rem;line-height:1.4}.material-subject{color:#64748b;font-size:.875rem;margin-bottom:1rem}.material-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.tag{background:#eff6ff;color:#1d4ed8;padding:.25rem .5rem;border-radius:6px;font-size:.75rem;font-weight:500}.material-meta{display:flex;flex-direction:column;gap:.25rem;margin-bottom:1.5rem}.meta-item{display:flex;align-items:center;gap:.5rem;color:#64748b;font-size:.875rem}.meta-item i{width:14px;text-align:center;color:#94a3b8}.material-actions{display:flex;gap:.75rem}.recent-materials{display:flex;flex-direction:column;gap:.75rem}.material-list-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:#fff;border:1px solid #e2e8f0;border-radius:8px;transition:all .2s ease}.material-list-item:hover{background:#f8fafc;border-color:#cbd5e1}.item-icon{width:40px;height:40px;background:#fef3c7;color:#d97706;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1.125rem;flex-shrink:0}.item-content{flex:1}.item-content h4{font-size:1rem;font-weight:600;color:#1e293b;margin-bottom:.25rem}.item-content p{color:#64748b;font-size:.875rem;margin:0}.item-actions{display:flex;gap:.5rem}.btn-icon{width:36px;height:36px;background:#f1f5f9;color:#475569;border:none;border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.btn-icon:hover{background:#e2e8f0;color:#334155}@media(max-width:768px){.page-content{padding:0}.page-header,.section-header{flex-direction:column;gap:1rem;align-items:stretch}.filters{flex-direction:column}.materials-grid{grid-template-columns:1fr}.material-actions{flex-direction:column}.material-list-item{flex-direction:column;align-items:flex-start;gap:.75rem}.item-actions{align-self:stretch;justify-content:flex-end}}.auth-loading{position:fixed;top:0;left:0;width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);z-index:9999}.loading-spinner{text-align:center;color:var(--text-secondary)}.loading-spinner i{font-size:2rem;color:var(--primary-color);margin-bottom:var(--spacing-md);animation:spin 1s linear infinite}.loading-spinner p{font-size:var(--font-size-lg);font-weight:500;margin:0}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:root{--app-bg-secondary: #f0f4f8;--app-primary: #3b82f6;--app-primary-dark: #1d4ed8;--app-text-primary: #1f2937;--app-text-muted: #6b7280;--app-card-bg: #ffffff;--app-border-color: #e5e7eb;--radius-lg: 12px;--radius-md: 8px;--radius-sm: 6px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-active: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--gradient-primary: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);--gradient-dark: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);--gradient-glass: linear-gradient(145deg, rgba(255, 255, 255, .95) 0%, rgba(255, 255, 255, .85) 100%)}[data-theme=dark]{--app-bg-secondary: #0a0a0a;--app-card-bg: #1a1a1a;--app-primary: #60a5fa;--app-primary-dark: #3b82f6;--app-text-primary: #f1f5f9;--app-text-muted: #94a3b8;--app-border-color: rgba(255, 255, 255, .1);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .8);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .8), 0 2px 4px -1px rgba(0, 0, 0, .6);--gradient-dark: linear-gradient(135deg, #0a0a0a 0%, #000000 100%);--gradient-glass: linear-gradient(145deg, rgba(26, 26, 26, .95) 0%, rgba(10, 10, 10, .85) 100%)}.admin-layout{background-color:var(--app-bg-secondary)!important;font-family:Inter,system-ui,-apple-system,sans-serif!important;font-size:.75rem!important}.admin-sidebar{background:var(--gradient-dark)!important;border-right:1px solid rgba(255,255,255,.1);box-shadow:4px 0 24px #00000026!important}.admin-sidebar .sidebar-item{border-radius:0 24px 24px 0!important;margin-right:.75rem!important;margin-bottom:.1rem!important;padding:.6rem 1rem!important;transition:all .2s cubic-bezier(.4,0,.2,1)!important}.admin-sidebar .sidebar-item.active{background:#3b82f626!important;color:#60a5fa!important;box-shadow:inset 4px 0 #3b82f6}.admin-sidebar .sidebar-item.active:before{display:none}.role-page-content{background:transparent!important;box-shadow:none!important;padding:0!important;margin:0!important}.role-page-header{background:var(--app-card-bg);margin-bottom:1rem;padding:.75rem 1.25rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;justify-content:space-between;align-items:center;border:1px solid var(--app-border-color)}.role-page-header h2{font-size:1.1rem;font-weight:700;background:var(--gradient-dark);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;border-bottom:none!important;padding-bottom:0!important;margin-bottom:0!important}.admin-card{background:var(--app-card-bg)!important;border-radius:var(--radius-lg)!important;border:1px solid var(--app-border-color)!important;box-shadow:var(--shadow-sm)!important;padding:.75rem!important;transition:transform .2s,box-shadow .2s}.admin-card:hover{box-shadow:var(--shadow-md)!important}.admin-card h3{font-size:.9rem!important;font-weight:600!important;color:var(--app-text-primary)!important;margin-bottom:.75rem!important;display:flex;align-items:center;gap:.5rem}.btn-primary{background:var(--gradient-primary)!important;border-radius:var(--radius-md)!important;box-shadow:0 4px 6px -1px #3b82f64d!important;font-weight:600!important;letter-spacing:.01em!important;font-size:.75rem!important;padding:.35rem .75rem!important}.btn-primary:active{transform:scale(.98)}.btn-secondary{background:#fff!important;border:1px solid var(--app-border-color)!important;color:var(--app-text-primary)!important;border-radius:var(--radius-md)!important;font-weight:500!important}.btn-secondary:hover{background:#f9fafb!important;border-color:#d1d5db!important}.table-container,.admin-table-container{border:1px solid var(--app-border-color)!important;border-radius:var(--radius-lg)!important;box-shadow:none!important;background:#fff;overflow:hidden}.data-table th,.admin-table th{background:#f8fafc!important;color:#64748b!important;font-weight:600!important;text-transform:uppercase!important;font-size:.6rem!important;letter-spacing:.05em!important;padding:.5rem .75rem!important;border-bottom:1px solid var(--app-border-color)!important}.data-table td,.admin-table td{padding:.5rem .75rem!important;border-bottom:1px solid #f1f5f9!important;color:#334155!important;font-size:.75rem!important}.data-table tbody tr:last-child td,.admin-table tbody tr:last-child td{border-bottom:none!important}.data-table tr:hover,.admin-table tr:hover{background-color:#f8fafc!important}.quick-actions-grid{gap:1.25rem!important}.quick-action-btn{background:#fff!important;border-radius:var(--radius-lg)!important;border:1px solid var(--app-border-color)!important;box-shadow:var(--shadow-sm)!important;transition:all .2s cubic-bezier(.4,0,.2,1)!important}.quick-action-btn:hover{background:#fff!important;border-color:var(--app-primary)!important;box-shadow:var(--shadow-lg)!important;transform:translateY(-3px)!important}.quick-action-btn i{font-size:1.75rem!important;margin-bottom:.5rem;background:#eff6ff;width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:var(--app-primary)!important}.form-control{border-radius:var(--radius-sm)!important;border:1px solid #d1d5db!important;padding:.5rem .75rem!important;background:#f9fafb!important}.form-control:focus{background:#fff!important;border-color:var(--app-primary)!important;box-shadow:0 0 0 3px #3b82f61a!important}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}.admin-sidebar{width:200px;height:100vh;background:linear-gradient(135deg,#0a0a0a,#000);display:flex!important;flex-direction:column!important;position:fixed;left:0;top:0;bottom:0;z-index:100;overflow:hidden;box-shadow:4px 0 24px #00000080;transition:transform .3s ease;border-right:1px solid rgba(255,255,255,.1)}[data-theme=dark] .admin-sidebar{background:linear-gradient(135deg,#0a0a0a,#000);border-right:1px solid rgba(255,255,255,.1)}.sidebar-header{padding:1rem;background:linear-gradient(to bottom,rgba(255,255,255,.05),transparent);border-bottom:1px solid rgba(255,255,255,.05);flex-shrink:0}[data-theme=dark] .sidebar-header{background:linear-gradient(to bottom,rgba(255,255,255,.02),transparent);border-bottom:1px solid rgba(255,255,255,.05)}.sidebar-logo{display:flex;align-items:center;gap:1rem}.logo-icon{width:36px;height:36px;background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.25rem;box-shadow:0 4px 12px #3b82f64d}[data-theme=dark] .logo-icon{background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 4px 12px #3b82f666}.sidebar-logo-img{width:32px;height:32px;object-fit:contain;border-radius:8px;background:#fff;padding:4px;box-shadow:0 4px 12px #0000001a}.logo-text{display:flex;flex-direction:column}.logo-title{font-size:1.2rem;font-weight:800;color:#fff;line-height:1.1;letter-spacing:.02em}.logo-subtitle{font-size:.7rem;color:#94a3b8;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.sidebar-user-info{display:flex;align-items:center;padding:.75rem 1rem;border-bottom:1px solid rgba(255,255,255,.05);background:#0003;margin:.75rem;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.05);flex-shrink:0}[data-theme=dark] .sidebar-user-info{background:#0000004d;border-color:#ffffff0d}.user-avatar{width:32px;height:32px;background:linear-gradient(135deg,#ef4444,#b91c1c);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.95rem;font-weight:600;margin-right:1rem;box-shadow:0 2px 8px #ef44444d}.user-details{flex:1;display:flex;flex-direction:column}.user-name{font-size:.95rem;font-weight:600;color:#f1f5f9;line-height:1.2}.user-role{font-size:.7rem;color:#cbd5e1;margin-top:1px}.user-status{display:flex;align-items:center}.status-indicator{width:8px;height:8px;border-radius:50%;background:#10b981;box-shadow:0 0 0 2px #10b98133}.status-indicator.online{background:#10b981;box-shadow:0 0 #10b981b3;animation:pulse-green 2s infinite}@keyframes pulse-green{0%{transform:scale(.95);box-shadow:0 0 #10b981b3}70%{transform:scale(1);box-shadow:0 0 0 6px #10b98100}to{transform:scale(.95);box-shadow:0 0 #10b98100}}.sidebar-nav{flex:1 1 auto;min-height:0;padding:0;overflow-y:auto}.nav-section{padding:.5rem 0 1.5rem}.nav-section-title{display:block;padding:.75rem 1.5rem;font-size:.7rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.08em}.sidebar-item{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.5rem;color:#94a3b8;text-decoration:none;border:none;background:transparent;width:100%;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-size:.8rem;font-weight:500;position:relative;border-radius:0 24px 24px 0;margin-right:1.25rem}.sidebar-item-skeleton{display:flex;align-items:center;gap:1rem;padding:.9rem 1.5rem;margin-right:1.5rem;animation:pulse 1.5s ease-in-out infinite}.skeleton-icon{width:20px;height:20px;background:#ffffff1a;border-radius:4px}.skeleton-text{flex:1;height:16px;background:#ffffff1a;border-radius:4px;max-width:120px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}[data-theme=dark] .skeleton-icon,[data-theme=dark] .skeleton-text{background:#ffffff14}.sidebar-item:hover{background:#ffffff0d;color:#f1f5f9;padding-left:1.75rem;transform:translate(2px)}.sidebar-item.active:hover{background:linear-gradient(90deg,#3b82f640,#3b82f626);transform:translate(4px)}.sidebar-item.active{background:linear-gradient(90deg,#3b82f633,#3b82f61a);color:#60a5fa;font-weight:600;box-shadow:inset 4px 0 #3b82f6,0 0 20px #3b82f61a;border-left:4px solid #3b82f6;transform:translate(4px);animation:subtle-pulse 3s ease-in-out infinite}@keyframes subtle-pulse{0%,to{box-shadow:inset 4px 0 #3b82f6,0 0 20px #3b82f61a}50%{box-shadow:inset 4px 0 #3b82f6,0 0 25px #3b82f626}}.sidebar-item.active i{color:#60a5fa;transform:scale(1.1)}.sidebar-label{transition:all .3s cubic-bezier(.4,0,.2,1)}.sidebar-item.active .sidebar-label{color:#f1f5f9}.sidebar-item-content{display:flex;align-items:center;gap:1rem;flex:1}.sidebar-item-content i{width:20px;font-size:1rem;text-align:center;transition:all .3s cubic-bezier(.4,0,.2,1)}.nav-arrow{font-size:.75rem;opacity:.5;transition:transform .2s}.sidebar-item:hover .nav-arrow{opacity:1;transform:translate(3px)}.sidebar-nav::-webkit-scrollbar{width:6px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-nav::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:#ffffff40}[data-theme=dark] .sidebar-nav::-webkit-scrollbar-thumb{background:#fff3}[data-theme=dark] .sidebar-nav::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.sidebar-dropdown{margin:0}.sidebar-dropdown-toggle{position:relative}.dropdown-arrow{font-size:.75rem;opacity:.5;transition:all .3s cubic-bezier(.4,0,.2,1)}.dropdown-arrow.open{transform:rotate(180deg);opacity:1}.sidebar-dropdown-toggle:hover .dropdown-arrow{opacity:1}.sidebar-dropdown-content{overflow:hidden;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:500px}}.sidebar-dropdown-item{padding-left:3rem!important;font-size:.85rem;background:#0003;margin-right:1.5rem;border-radius:0 20px 20px 0}[data-theme=dark] .sidebar-dropdown-item{background:#0000004d}.sidebar-dropdown-item:hover{background:#ffffff14;padding-left:3.25rem!important}.sidebar-dropdown-item.active{background:linear-gradient(90deg,#3b82f626,#3b82f614);border-left:3px solid #3b82f6;box-shadow:inset 3px 0 #3b82f6,0 0 15px #3b82f614}.sidebar-dropdown-item.active:hover{background:linear-gradient(90deg,#3b82f633,#3b82f61a)}.sidebar-dropdown-item .sidebar-item-content i{font-size:.9rem}@media(max-width:1024px){.admin-sidebar{width:200px;z-index:1000}}@media(max-width:768px){.admin-sidebar{transform:translate(-100%);box-shadow:none;z-index:1050;width:280px}.admin-sidebar.mobile-open{transform:translate(0);box-shadow:10px 0 30px #00000080}}.admin-sidebar-overlay{display:none}@media(max-width:768px){.admin-sidebar-overlay{display:block;position:fixed;inset:0;background:#0000008c;z-index:1040;animation:fadeInOverlay .25s ease}}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}.admin-header{height:52px;background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--app-border-color);position:fixed;top:0;left:200px;right:0;z-index:90;display:flex;align-items:center;transition:all .3s ease;box-shadow:var(--shadow-sm)}[data-theme=dark] .admin-header{background:#0a0a0af2;border-bottom:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-content{display:flex;align-items:center;justify-content:space-between;width:100%;padding:0 1.5rem;height:100%;gap:1rem}.header-actions{display:flex;align-items:center;gap:1rem;margin-left:auto;height:100%;flex-shrink:0}.theme-toggle-container,.notification-dropdowns,.profile-dropdown{display:flex;align-items:center;height:100%}.quick-actions{display:flex;align-items:center;gap:.75rem}.quick-action-btn{width:36px;height:36px;border:none;border-radius:50%;background:var(--app-card-bg);color:var(--app-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;margin:0;border:1px solid var(--app-border-color);box-shadow:var(--shadow-sm);transition:all .2s ease}.quick-action-btn i{font-size:1.1rem}.quick-action-btn:hover{background:#eff6ff;color:#2563eb;transform:translateY(-2px);box-shadow:0 4px 6px #0000000d;border-color:#dbeafe}.theme-toggle-container{position:relative}.theme-toggle-button{background:none;border:none;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center}.theme-toggle-track{width:48px;height:26px;background:#f1f5f9;border-radius:99px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);border:1px solid var(--app-border-color);overflow:hidden;background:var(--app-bg-secondary)}[data-theme=dark] .theme-toggle-track{background:#1a1a1a;border-color:#fff3}.theme-toggle-thumb{width:18px;height:18px;background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;transition:all .3s cubic-bezier(.34,1.56,.64,1);display:flex;align-items:center;justify-content:center;box-shadow:0 2px 5px #0000001a;z-index:2}.theme-toggle-thumb i{font-size:11px;color:#f59e0b;transition:all .3s ease}.theme-toggle-thumb.dark{transform:translate(24px);background:#0a0a0a;border:1px solid rgba(255,255,255,.2)}.theme-toggle-thumb.dark i{color:#fcd34d}.notification-btn{width:36px;height:36px;border:none;border-radius:50%;background:var(--app-card-bg);color:var(--app-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;position:relative;transition:all .2s ease;border:1px solid var(--app-border-color);box-shadow:var(--shadow-sm);padding:0}.notification-btn i{font-size:1.1rem}.notification-btn:hover{background:#fff7ed;color:#f97316;border-color:#ffedd5;transform:translateY(-2px)}.notification-badge{position:absolute;top:-2px;right:-2px;background:#ef4444;color:#fff;font-size:.65rem;font-weight:700;padding:.1rem .35rem;border-radius:10px;box-shadow:0 2px 4px #ef44444d;border:2px solid white}.notification-panel{position:absolute;top:calc(100% + 15px);right:-10px;width:380px;background:var(--app-card-bg);border:1px solid var(--app-border-color);border-radius:16px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;z-index:1001;overflow:hidden;animation:slideDownFade .2s cubic-bezier(.16,1,.3,1)}@keyframes slideDownFade{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.notification-header{padding:1.25rem;background:var(--app-bg-secondary);border-bottom:1px solid var(--app-border-color)}.notification-header h3{font-size:1rem;font-weight:700;color:var(--app-text-primary);margin:0}.mark-all-read{font-size:.75rem;color:#2563eb;background:none;border:none;cursor:pointer;padding:.25rem .5rem;border-radius:4px;font-weight:600}.mark-all-read:hover{background:#eff6ff}.notification-list{max-height:350px;overflow-y:auto}.notification-item{display:flex;align-items:flex-start;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid var(--app-border-color);transition:background .2s;position:relative}.notification-item:hover{background:var(--app-bg-secondary)}.notification-item.unread{background:#3b82f60d;border-left:3px solid #3b82f6}[data-theme=dark] .notification-item.unread{background:#3b82f61a;border-left:3px solid #3b82f6}.notification-badge{animation:pulse-badge 2s infinite}@keyframes pulse-badge{0%{transform:scale(1)}50%{transform:scale(1.1);box-shadow:0 0 10px #ef444499}to{transform:scale(1)}}.notification-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.notification-icon.urgent{background:#fee2e2;color:#ef4444}.notification-icon.warning{background:#ffedd5;color:#f97316}.notification-icon.info{background:#eff6ff;color:#3b82f6}.notification-content{flex:1}.notification-title{font-size:.9rem;font-weight:600;color:var(--app-text-primary);margin-bottom:.25rem}.notification-message{font-size:.75rem;color:var(--app-text-muted);line-height:1.3;margin-bottom:.2rem}.notification-time{font-size:.7rem;color:#94a3b8}.notification-footer{padding:.75rem 1.25rem;border-top:1px solid var(--app-border-color);text-align:center}.view-all-notifications{color:#2563eb;font-size:.85rem;font-weight:600;background:none;border:none;cursor:pointer}.profile-btn{display:flex;align-items:center;gap:.625rem;padding:.3rem .4rem .3rem .3rem;border:1px solid var(--app-border-color);border-radius:99px;background:var(--app-card-bg);cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-sm)}.profile-btn:hover{background:var(--app-bg-secondary);border-color:var(--app-border-color);box-shadow:var(--shadow-md)}.profile-avatar{width:32px;height:32px;background:linear-gradient(135deg,#4f46e5,#4338ca);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 2px 5px #4f46e54d}.profile-info{text-align:left;margin-right:.5rem}.profile-name{font-size:.9rem;font-weight:600;color:var(--app-text-primary)}.profile-role{font-size:.75rem;color:#64748b}.profile-chevron{font-size:.75rem;color:#94a3b8;margin-left:.25rem;margin-right:.5rem}.profile-panel{position:absolute;top:calc(100% + 15px);right:0;width:280px;background:var(--app-card-bg);border:1px solid var(--app-border-color);border-radius:16px;box-shadow:0 20px 25px -5px #0000001a;z-index:1001;overflow:hidden;animation:slideDownFade .2s cubic-bezier(.16,1,.3,1)}.profile-panel-header{display:flex;align-items:center;gap:1rem;padding:1.5rem;border-bottom:1px solid var(--app-border-color);background:var(--app-bg-secondary)}.profile-panel-avatar{width:48px;height:48px;background:var(--app-card-bg);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#4f46e5;font-size:1.25rem;box-shadow:0 2px 5px #0000000d}.profile-panel-info{flex:1}.profile-panel-name{font-size:1rem;font-weight:700;color:var(--app-text-primary);margin-bottom:.25rem}.profile-panel-email{font-size:.75rem;color:var(--app-text-muted)}.profile-panel-menu{padding:.75rem}.profile-menu-item{display:flex;align-items:center;gap:1rem;width:100%;padding:.75rem 1rem;background:none;border:none;color:var(--app-text-muted);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;text-align:left;border-radius:8px}.profile-menu-item:hover{background:var(--app-bg-secondary);color:var(--app-text-primary)}.profile-menu-item i{width:20px;text-align:center}.profile-menu-item.logout{color:#ef4444}.profile-menu-item.logout:hover{background:#fef2f2}.profile-menu-divider{height:1px;background:var(--app-border-color);margin:.5rem 0}.mobile-menu-btn{display:none;align-items:center;justify-content:center;width:40px;height:40px;border:none;border-radius:10px;background:var(--app-bg-secondary);color:var(--app-text-muted);cursor:pointer;font-size:1.1rem;flex-shrink:0;transition:all .2s ease;border:1px solid var(--app-border-color)}.mobile-menu-btn:hover{background:#eff6ff;color:#2563eb;border-color:#dbeafe}[data-theme=dark] .mobile-menu-btn{background:#1a1a1a;border-color:#ffffff1a;color:#94a3b8}[data-theme=dark] .mobile-menu-btn:hover{background:#3b82f626;color:#60a5fa;border-color:#3b82f64d}@media(max-width:1024px){.admin-header{left:200px}.header-content{padding:0 1.25rem;gap:.625rem}.profile-info,.profile-chevron{display:none}.profile-btn{padding:.35rem;background:none;border:none;box-shadow:none}}@media(max-width:900px){.header-content{padding:0 1rem;gap:.5rem}.header-actions{gap:.625rem}}@media(max-width:768px){.admin-header{left:0;right:0;width:100%}.header-content{padding:0 .75rem;gap:.5rem}.header-actions{gap:.5rem}.theme-toggle-track{width:44px;height:24px}.theme-toggle-thumb{width:17px;height:17px;top:2.5px;left:2.5px}.theme-toggle-thumb.dark{transform:translate(20px)}.notification-btn,.mobile-menu-btn{width:38px;height:38px;font-size:1rem}.mobile-menu-btn{display:flex}.quick-actions{display:none}.notification-panel,.profile-panel{width:calc(100vw - 2rem);max-width:360px;right:-8px}}@media(max-width:480px){.header-content{padding:0 .75rem;gap:.375rem}.header-actions{gap:.375rem}.theme-toggle-track{width:44px;height:24px}.theme-toggle-thumb{width:17px;height:17px}.theme-toggle-thumb.dark{transform:translate(20px)}.notification-btn,.mobile-menu-btn{width:36px;height:36px;font-size:1rem}.notification-panel,.profile-panel{width:calc(100vw - 1.5rem);right:-.75rem}}.admin-layout{display:flex;height:100vh;overflow:hidden;background:var(--app-bg-secondary);transition:background-color .2s ease;font-family:Inter,system-ui,-apple-system,sans-serif}.admin-main-content{flex:1;margin-left:200px;display:flex;flex-direction:column;height:100vh;overflow:hidden;padding-top:52px}.admin-main-content.with-tabs{padding-top:92px}.admin-content-area{flex:1;overflow-y:auto;overflow-x:hidden;padding:1rem;background:transparent;transition:background-color .2s ease}@media(max-width:1024px){.admin-main-content{margin-left:200px}.admin-tabs-header{left:200px}}@media(max-width:768px){.admin-main-content{margin-left:0;width:100%}.admin-tabs-header{left:0}.admin-content-area{padding:1rem}}@media(max-width:480px){.admin-content-area{padding:.75rem}}@media print{.admin-header,.admin-sidebar,.admin-tabs-header,.no-print{display:none!important}.admin-layout,.admin-main-content,.admin-content-area{margin-left:0!important;padding-top:0!important;overflow:visible!important;height:auto!important;display:block!important}}.page,.page-content{min-height:100vh;padding:0}.page-placeholder{display:flex;align-items:center;justify-content:center;min-height:60vh;font-size:var(--font-size-xl);color:var(--text-muted);background:var(--bg-primary);margin:var(--spacing-xl);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.hero{position:relative;min-height:80vh;max-height:80vh;display:flex;align-items:center;background:var(--gradient-primary);color:var(--text-white);overflow:hidden}.hero[style*=backgroundImage]{background-attachment:fixed}.hero-compact{min-height:400px;padding:4rem 0}.hero-compact .container{position:relative;z-index:2;text-align:center}.hero-compact h1{font-size:3rem;font-weight:800;margin-bottom:1rem;color:#fff;text-shadow:2px 2px 8px rgba(0,0,0,.5)}.hero-compact p{font-size:1.25rem;margin-bottom:2rem;color:#fff;text-shadow:1px 1px 4px rgba(0,0,0,.5);max-width:800px;margin-left:auto;margin-right:auto}.hero-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.hero-actions .btn{padding:.75rem 1.25rem;font-size:.95rem;font-weight:600;box-shadow:0 4px 12px #0000004d;transition:all .3s ease;min-width:180px;max-width:260px;flex:1;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.hero-actions .btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0006}.hero-background{position:absolute;inset:0;opacity:.1}.hero-particles{position:absolute;width:100%;height:100%;background-image:radial-gradient(circle at 20% 80%,rgba(255,255,255,.1) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(255,255,255,.1) 0%,transparent 50%),radial-gradient(circle at 40% 40%,rgba(255,255,255,.05) 0%,transparent 50%);animation:float 20s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(180deg)}}.hero-content{position:relative;z-index:2;max-width:var(--container-max-width);margin:0 auto;padding:0 var(--spacing-xl);text-align:center}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-4xl);align-items:center}.hero-text h1{font-size:var(--font-size-5xl);font-weight:800;margin-bottom:var(--spacing-md);line-height:1.1}.hero-text h2{font-size:var(--font-size-2xl);font-weight:400;margin-bottom:var(--spacing-lg);opacity:.9}.hero-text p{font-size:var(--font-size-lg);line-height:1.6;margin-bottom:var(--spacing-2xl);opacity:.8}.hero-buttons{display:flex;justify-content:center;gap:var(--spacing-md);flex-wrap:wrap}.hero-stats{display:flex;justify-content:center;gap:var(--spacing-2xl);margin-bottom:var(--spacing-2xl)}.hero-illustration{width:300px;height:300px;background:#ffffff1a;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid rgba(255,255,255,.2);margin:0 auto}.hero-illustration i{font-size:8rem;opacity:.8}.section{padding:var(--spacing-4xl) 0}.section-primary{background:var(--bg-primary)}.section-secondary{background:var(--bg-secondary)}.section-gradient{background:var(--gradient-primary);color:var(--text-white)}.section-header{text-align:center;margin-bottom:var(--spacing-2xl)}.section-header h2{font-size:var(--font-size-4xl);font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-md)}.section-header p{font-size:var(--font-size-lg);color:var(--text-secondary)}.section-gradient .section-header h2,.section-gradient .section-header p{color:var(--text-white)}.quick-access-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:var(--spacing-xl)}.quick-access-card{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-xl);background:var(--bg-primary);border-radius:var(--radius-xl);text-decoration:none;color:inherit;box-shadow:var(--shadow-md);border:2px solid transparent;transition:all var(--transition-normal);position:relative;overflow:hidden}.quick-access-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--card-color),var(--card-color-light))}.quick-access-card.purple{--card-color: #8b5cf6;--card-color-light: #a78bfa}.quick-access-card.blue{--card-color: #3b82f6;--card-color-light: #60a5fa}.quick-access-card.green{--card-color: #10b981;--card-color-light: #34d399}.quick-access-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl);border-color:var(--card-color)}.card-icon{width:60px;height:60px;background:linear-gradient(135deg,var(--card-color),var(--card-color-light));border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:var(--text-white);font-size:var(--font-size-2xl)}.card-content h3{font-size:var(--font-size-2xl);font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-sm)}.card-content p{color:var(--text-muted);line-height:1.5}.card-arrow{margin-left:auto;color:var(--card-color);font-size:var(--font-size-lg);transition:transform var(--transition-normal)}.quick-access-card:hover .card-arrow{transform:translate(4px)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-xl)}.stat-card{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-xl);background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.stat-icon{width:50px;height:50px;background:var(--gradient-primary);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:var(--text-white);font-size:var(--font-size-lg)}.stat-content h3{font-size:var(--font-size-3xl);font-weight:800;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.stat-content p{color:var(--text-muted);font-weight:500}.stat-item{text-align:center}.stat-item h3{font-size:var(--font-size-4xl);font-weight:800;margin-bottom:var(--spacing-sm)}.stat-item p{font-size:var(--font-size-base);opacity:.8}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-xl)}.feature-card{text-align:center;padding:var(--spacing-2xl) var(--spacing-lg);background:var(--bg-secondary);border-radius:var(--radius-xl);transition:all var(--transition-normal)}.feature-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl);background:var(--bg-primary)}.feature-icon{width:80px;height:80px;background:var(--gradient-primary);border-radius:var(--radius-2xl);display:flex;align-items:center;justify-content:center;color:var(--text-white);font-size:var(--font-size-3xl);margin:0 auto var(--spacing-lg)}.feature-card h3{font-size:var(--font-size-2xl);font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-md)}.feature-card p{color:var(--text-muted);line-height:1.6}.course-categories{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:var(--spacing-xl)}.course-card{background:var(--bg-primary);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-md);transition:all var(--transition-normal);border:2px solid transparent}.course-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-xl);border-color:var(--primary-color)}.course-image{position:relative;height:200px;overflow:hidden}.course-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-normal)}.course-card:hover .course-image img{transform:scale(1.05)}.course-overlay{position:absolute;inset:0;background:linear-gradient(135deg,#2563ebcc,#3b82f699);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--transition-normal)}.course-card:hover .course-overlay{opacity:1}.course-overlay .card-icon{width:80px;height:80px;background:#fff3;border-radius:var(--radius-2xl);display:flex;align-items:center;justify-content:center;color:var(--text-white);font-size:var(--font-size-3xl);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid rgba(255,255,255,.3)}.course-content{padding:var(--spacing-xl)}.course-content h3{font-size:var(--font-size-2xl);font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-md)}.course-content p{color:var(--text-muted);line-height:1.6;margin-bottom:var(--spacing-lg)}.course-highlights{list-style:none;margin:0 0 var(--spacing-xl) 0;padding:0;display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.course-highlights li{background:#eff6ff;color:var(--primary-color);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-2xl);font-size:var(--font-size-sm);font-weight:500}.course-btn{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);background:var(--primary-color);color:var(--text-white);text-decoration:none;border-radius:var(--radius-md);font-weight:600;transition:all var(--transition-normal)}.course-btn:hover{background:var(--primary-dark);transform:translateY(-2px)}@media(max-width:768px){.hero-grid{grid-template-columns:1fr;gap:var(--spacing-xl);text-align:center}.hero-text h1{font-size:var(--font-size-4xl)}.hero-text h2{font-size:var(--font-size-xl)}.hero-illustration{width:200px;height:200px}.hero-illustration i{font-size:5rem}.hero-stats{flex-direction:column;gap:var(--spacing-lg)}.quick-access-grid{grid-template-columns:1fr}.quick-access-card{flex-direction:column;text-align:center}.card-arrow{margin-left:0;margin-top:var(--spacing-md)}.stats-grid{grid-template-columns:repeat(2,1fr)}.features-grid,.course-categories{grid-template-columns:1fr}.section-header h2{font-size:var(--font-size-3xl)}.hero-compact{min-height:300px;padding:3rem 1rem;background-attachment:scroll!important}.hero-compact h1{font-size:2rem}.hero-compact p{font-size:1rem}.hero-actions{flex-direction:column;gap:.75rem}.hero-actions .btn{width:100%;max-width:300px}}@media(max-width:480px){.stats-grid{grid-template-columns:1fr}.stat-card{flex-direction:column;text-align:center}.hero-buttons{flex-direction:column;align-items:center}.course-card{margin:0 var(--spacing-md)}.hero-compact{min-height:250px;padding:2rem 1rem}.hero-compact h1{font-size:1.75rem}.hero-compact p{font-size:.9rem}.hero-actions .btn{padding:.75rem 1.5rem;font-size:.9rem}}.hero-home{background-color:#667eea;background-image:url(/src/assets/images/home\ image.jpg);background-size:cover;background-position:center;background-repeat:no-repeat;color:#fff;padding:4rem 2rem;min-height:70vh;display:flex;align-items:center;position:relative;margin-top:0}.hero-overlay{position:absolute;inset:0;background:#00000080;z-index:1}.hero-content-wrapper{max-width:1200px;margin:0 auto;position:relative;z-index:2}.hero-text h1{font-size:3.5rem;font-weight:800;line-height:1.1;margin-bottom:1rem;background:linear-gradient(135deg,#fff,#e0e7ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:1.125rem;margin-bottom:1rem;color:#e0e7ff;font-weight:500}.hero-description{font-size:1.125rem;line-height:1.6;margin-bottom:2rem;color:#ffffffe6}.hero-buttons{display:flex;gap:1rem;flex-wrap:wrap}.preview-cards-scroll{overflow-x:auto;padding-bottom:1rem}.preview-cards-container{display:flex;gap:1.5rem;min-width:max-content;padding:0 .5rem}.preview-card{background:var(--bg-primary);border-radius:var(--radius-xl);padding:1.5rem;box-shadow:var(--shadow-md);border:1px solid var(--bg-tertiary);transition:all .3s ease;min-width:320px;max-width:320px;flex-shrink:0}.preview-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl)}.preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--bg-tertiary)}.preview-header h3{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:0}.preview-link{display:flex;align-items:center;gap:.5rem;color:var(--primary-color);text-decoration:none;font-size:.875rem;font-weight:500;transition:all .3s ease}.preview-link:hover{color:var(--primary-dark);transform:translate(4px)}.notification-count{background:var(--primary-color);color:#fff;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600}.preview-content{display:flex;flex-direction:column;gap:1rem}.skeleton-chart{height:120px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200px 100%;animation:skeleton-loading 1.5s infinite;border-radius:8px}.materials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.material-category{background:var(--bg-primary);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-sm);border:1px solid var(--bg-tertiary)}.material-category h3{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin-bottom:1rem;padding-bottom:.75rem;border-bottom:2px solid var(--primary-color)}.material-list{display:flex;flex-direction:column;gap:.75rem}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-bottom:3rem}.achievement-card{background:var(--bg-primary);border:1px solid var(--bg-tertiary);border-radius:var(--radius-xl);padding:1.5rem;text-align:center;transition:all .3s ease;box-shadow:var(--shadow-md)}.achievement-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl)}.achievement-rank{font-size:3rem;margin-bottom:1rem}.achievement-content{display:flex;flex-direction:column;gap:1rem}.achievement-stats{display:flex;justify-content:space-around}.leaderboard-preview{background:var(--bg-primary);border:1px solid var(--bg-tertiary);border-radius:var(--radius-xl);padding:2rem;box-shadow:var(--shadow-md)}.leaderboard-preview h3{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin-bottom:1.5rem;text-align:center}.leaderboard-list{display:flex;flex-direction:column;gap:.75rem}.section-footer{display:flex;justify-content:center;margin-top:2rem}@media(max-width:768px){.hero-home{padding:2rem 1rem;min-height:60vh}.hero-content-wrapper{text-align:center}.hero-text h1{font-size:2.5rem}.hero-buttons{justify-content:center}.preview-card{min-width:280px;max-width:280px}.materials-grid,.achievements-grid{grid-template-columns:1fr}}@media(max-width:480px){.hero-text h1{font-size:2rem}.hero-buttons{flex-direction:column;align-items:center}.preview-card{min-width:260px;max-width:260px}.preview-header{flex-direction:column;gap:.75rem;align-items:flex-start}}.page-home{padding-top:0!important}.page-home .hero-home{margin-top:0}.preview-cards-scroll::-webkit-scrollbar{height:8px}.preview-cards-scroll::-webkit-scrollbar-track{background:var(--bg-tertiary);border-radius:var(--radius-sm)}.preview-cards-scroll::-webkit-scrollbar-thumb{background:var(--primary-color);border-radius:var(--radius-sm)}.preview-cards-scroll::-webkit-scrollbar-thumb:hover{background:var(--primary-dark)}[data-theme=dark] .page,[data-theme=dark] .section{background:#0c0c0c}[data-theme=dark] .section-primary{background:#1a1a1a}[data-theme=dark] .section-secondary{background:#0c0c0c}[data-theme=dark] .section-header h2{color:#e5e5e5}[data-theme=dark] .section-header p{color:#9ca3af}[data-theme=dark] .card,[data-theme=dark] .stat-card,[data-theme=dark] .preview-card,[data-theme=dark] .analytics-card,[data-theme=dark] .performance-card{background:#1a1a1a;border-color:#ffffff1a}[data-theme=dark] .card:hover,[data-theme=dark] .stat-card:hover,[data-theme=dark] .preview-card:hover{border-color:#fff3;box-shadow:0 8px 24px #0009}[data-theme=dark] .stat-card h3,[data-theme=dark] .card h3,[data-theme=dark] .preview-card h3{color:#e5e5e5}[data-theme=dark] .stat-card p,[data-theme=dark] .card p,[data-theme=dark] .preview-card p{color:#9ca3af}[data-theme=dark] .stat-icon{background:#3b82f626;color:#60a5fa}[data-theme=dark] .btn{color:#e5e5e5}[data-theme=dark] .btn-primary{background:#3b82f6;color:#fff}[data-theme=dark] .btn-primary:hover{background:#2563eb}[data-theme=dark] .btn-outline{border-color:#fff3;color:#d1d5db;background:transparent}[data-theme=dark] .btn-outline:hover{background:#262626;border-color:#ffffff4d;color:#e5e5e5}[data-theme=dark] .table-container{background:#1a1a1a;border-color:#ffffff1a}[data-theme=dark] table{color:#d1d5db}[data-theme=dark] table thead{background:#0c0c0c;color:#e5e5e5}[data-theme=dark] table tbody tr{border-bottom-color:#ffffff1a}[data-theme=dark] table tbody tr:hover{background:#262626}[data-theme=dark] .badge{background:#262626;color:#d1d5db}[data-theme=dark] .badge.success{background:#10b98133;color:#10b981}[data-theme=dark] .badge.warning{background:#f59e0b33;color:#f59e0b}[data-theme=dark] .badge.error{background:#ef444433;color:#ef4444}[data-theme=dark] .badge.info{background:#3b82f633;color:#60a5fa}[data-theme=dark] input,[data-theme=dark] textarea,[data-theme=dark] select{background:#0c0c0c;border-color:#ffffff1a;color:#e5e5e5}[data-theme=dark] input:focus,[data-theme=dark] textarea:focus,[data-theme=dark] select:focus{border-color:#3b82f6;background:#1a1a1a}[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder{color:#6b7280}[data-theme=dark] .preview-header{border-bottom-color:#ffffff1a}[data-theme=dark] .analytics-header h3,[data-theme=dark] .performance-header{color:#e5e5e5}[data-theme=dark] .activity-item{border-bottom-color:#ffffff1a}[data-theme=dark] .activity-content h4{color:#e5e5e5}[data-theme=dark] .activity-content p{color:#9ca3af}@viewport{width:device-width;initial-scale:1;maximum-scale:5;user-scalable:yes}@media(max-width:767px){*{will-change:auto}.preview-card,.sidebar-link,.btn{transform:translateZ(0)}.preview-cards-scroll,.courses-scroll{transform:translateZ(0);-webkit-overflow-scrolling:touch}.header,.modern-sidebar,.btn,.preview-link{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}*{-webkit-tap-highlight-color:rgba(59,130,246,.2)}.btn,.sidebar-link,.preview-link,.notification-bell,.profile-icon{position:relative}.btn:after,.sidebar-link:after,.preview-link:after{content:"";position:absolute;inset:-8px;z-index:-1}}@supports (-webkit-touch-callout: none){.header{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}input,textarea,select{font-size:16px!important}}@media screen and (-webkit-min-device-pixel-ratio:1)and (max-width:767px){.header{transform:translateZ(0)}.content-wrapper{overflow-x:hidden;overflow-y:auto}}@media(max-width:767px)and (-webkit-min-device-pixel-ratio:2){.logo-link,.sidebar-title h3,.hero-text h1{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.preview-card,.material-category,.achievement-card{border-width:.5px}}@media(max-width:767px)and (orientation:landscape){.hero-home{min-height:50vh;padding:1.5rem 1rem}.hero-text h1{font-size:1.5rem}.section{padding:1.5rem 0}.preview-card{min-width:240px;max-width:240px}}@media(max-width:359px){.container{padding:0 .5rem}.hero-home{padding:1rem .5rem}.hero-text h1{font-size:1.5rem}.preview-card{min-width:240px;max-width:240px;padding:.875rem}.section-header h2{font-size:1.25rem}.nav-right{gap:.125rem}.sidebar-toggle,.notification-bell,.profile-icon{width:28px;height:28px;font-size:.8rem}}@media(max-width:767px){*:focus-visible{outline:3px solid var(--primary-color);outline-offset:3px}.preview-link,.footer-links a,.contact-item{font-weight:500}.hero-subtitle,.section-header p{color:#fffffff2}}@media(max-width:767px){.preview-card,.material-category,.achievement-card{background:#fff;border-color:#e5e7eb;color:#1f2937}.section-secondary{background:#fff}}@media print{.mobile-only,.tablet-only{display:none!important}.preview-cards-container{display:block!important}.preview-card{break-inside:avoid;margin-bottom:1rem}}@media(prefers-reduced-motion:reduce)and (max-width:767px){.preview-cards-scroll{scroll-behavior:auto}.preview-card,.btn,.sidebar-link{transition:none;transform:none}.skeleton-chart{animation:none;background:#f0f0f0}}@media(prefers-reduced-data:reduce){.hero-home{background-image:none;background:linear-gradient(135deg,#667eea,#764ba2)}.skeleton-chart{animation:none;background:#f0f0f0}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(hover:none)and (pointer:coarse){.preview-card:hover,.btn:hover,.sidebar-link:hover{transform:none;box-shadow:inherit}.preview-card:active{transform:scale(.98)}.btn:active{transform:scale(.95)}}@media(max-width:767px){.header{z-index:10100}.mobile-sidebar-overlay{z-index:29000}.modern-sidebar.mobile{z-index:30000}}@media(max-width:767px){.dashboard-layout,.content-wrapper,.preview-cards-scroll,.courses-scroll{-webkit-overflow-scrolling:touch}body{overscroll-behavior:contain}.preview-card,.header,.modern-sidebar{contain:layout style}}@media(max-width:767px){.header{z-index:10100}.mobile-nav-overlay{z-index:29000}.mobile-nav-menu{z-index:30000}body.mobile-nav-open{overflow:hidden;position:fixed;width:100%}}@media(max-width:767px){.mobile-nav-main-link{position:relative}.mobile-nav-main-link.active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#3b82f6}.mobile-nav-sub-link:active{transform:scale(.98)}}@media(max-width:767px){.mobile-nav-toggle,.sidebar-toggle{min-height:44px;min-width:44px}.mobile-nav-main-link,.mobile-nav-sub-link{min-height:48px}}
