.notification-container{position:fixed;top:20px;right:20px;z-index:9999;max-width:400px;width:100%}.notification{background:white;border-radius:8px;box-shadow:0 4px 12px #00000026;margin-bottom:10px;padding:16px;border-left:4px solid;animation:slideIn .3s ease-out;position:relative;overflow:hidden}.notification.success{border-left-color:#28a745;background-color:#f8fff9}.notification.error{border-left-color:#dc3545;background-color:#fff8f8}.notification.warning{border-left-color:#ffc107;background-color:#fffdf5}.notification.info{border-left-color:#17a2b8;background-color:#f8fdff}.notification-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.notification-title{font-weight:600;font-size:14px;margin:0;color:#333}.notification-close{background:none;border:none;font-size:18px;cursor:pointer;color:#666;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s}.notification-close:hover{background-color:#0000001a}.notification-message{font-size:13px;color:#555;margin:0;line-height:1.4}.notification-progress{position:absolute;bottom:0;left:0;height:3px;background-color:#0000001a;animation:progress linear}.notification.success .notification-progress{background-color:#28a745}.notification.error .notification-progress{background-color:#dc3545}.notification.warning .notification-progress{background-color:#ffc107}.notification.info .notification-progress{background-color:#17a2b8}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOut{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}@keyframes progress{0%{width:100%}to{width:0%}}.notification.slide-out{animation:slideOut .3s ease-in forwards}@media (max-width: 768px){.notification-container{top:10px;right:10px;left:10px;max-width:none}.notification{margin-bottom:8px;padding:12px}.notification-title{font-size:13px}.notification-message{font-size:12px}}@media (prefers-color-scheme: dark){.notification{background:#2d3748;color:#e2e8f0}.notification-title{color:#f7fafc}.notification-message{color:#cbd5e0}.notification-close{color:#a0aec0}.notification-close:hover{background-color:#ffffff1a}}.loading-spinner{display:inline-block;width:40px;height:40px;border:3px solid #f3f3f3;border-top:3px solid #667eea;border-radius:50%;animation:spin 1s linear infinite}.loading-spinner.small{width:20px;height:20px;border-width:2px}.loading-spinner.large{width:60px;height:60px;border-width:4px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;min-height:100px}.loading-container.fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#ffffffe6;z-index:9999;min-height:100vh}.loading-text{margin-top:12px;color:#6b7280;font-size:.875rem;font-weight:500}.skeleton-loader{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:loading 1.5s infinite;border-radius:4px}.skeleton-loader.text{height:16px;margin-bottom:8px}.skeleton-loader.text.large{height:20px}.skeleton-loader.text.small{height:12px}.skeleton-loader.avatar{width:40px;height:40px;border-radius:50%}.skeleton-loader.card{height:120px;margin-bottom:16px}.skeleton-loader.button{height:36px;width:100px;border-radius:6px}@keyframes loading{0%{background-position:-200% 0}to{background-position:200% 0}}.loading-button{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;border:none;border-radius:6px;background-color:#667eea;color:#fff;font-weight:500;cursor:pointer;transition:all .2s}.loading-button:hover:not(:disabled){background-color:#5a67d8;transform:translateY(-1px)}.loading-button:disabled{opacity:.7;cursor:not-allowed;transform:none}.loading-button .button-spinner{width:16px;height:16px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite;margin-right:8px}.loading-button.loading .button-text{opacity:.7}.pulse-loader{display:inline-block;width:40px;height:40px;background-color:#667eea;border-radius:50%;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%{transform:scale(0);opacity:1}to{transform:scale(1);opacity:0}}.dots-loader{display:inline-block;position:relative;width:80px;height:80px}.dots-loader div{position:absolute;top:33px;width:13px;height:13px;border-radius:50%;background:#667eea;animation-timing-function:cubic-bezier(0,1,1,0)}.dots-loader div:nth-child(1){left:8px;animation:dots1 .6s infinite}.dots-loader div:nth-child(2){left:8px;animation:dots2 .6s infinite}.dots-loader div:nth-child(3){left:32px;animation:dots2 .6s infinite}.dots-loader div:nth-child(4){left:56px;animation:dots3 .6s infinite}@keyframes dots1{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes dots3{0%{transform:scale(1)}to{transform:scale(0)}}@keyframes dots2{0%{transform:translate(0)}to{transform:translate(24px)}}.progress-bar{width:100%;height:4px;background-color:#e5e7eb;border-radius:2px;overflow:hidden}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:2px;transition:width .3s ease}.progress-bar.indeterminate .progress-bar-fill{width:30%;animation:indeterminate 2s infinite linear}@keyframes indeterminate{0%{transform:translate(-100%)}to{transform:translate(400%)}}@media (prefers-color-scheme: dark){.loading-spinner{border-color:#4b5563;border-top-color:#667eea}.loading-container.fullscreen{background-color:#1f2937e6}.loading-text{color:#d1d5db}.skeleton-loader{background:linear-gradient(90deg,#374151 25%,#4b5563 50%,#374151 75%);background-size:200% 100%}.progress-bar{background-color:#374151}}@media (max-width: 768px){.loading-container{padding:16px}.loading-spinner.large{width:50px;height:50px}.dots-loader{width:60px;height:60px}}.global-loading-indicator{position:fixed;top:0;left:0;right:0;z-index:10000;height:3px;background-color:transparent;pointer-events:none}.global-loading-bar{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);width:0%;transition:width .3s ease;box-shadow:0 0 10px #667eea80}.global-loading-indicator.loading .global-loading-bar{animation:globalProgress 2s infinite}@keyframes globalProgress{0%{width:0%;opacity:1}50%{width:70%;opacity:1}to{width:100%;opacity:0}}.global-loading-indicator.complete .global-loading-bar{width:100%;opacity:0;transition:opacity .3s ease}.global-loading-counter{position:fixed;top:10px;right:10px;background:rgba(0,0,0,.8);color:#fff;padding:4px 8px;border-radius:4px;font-size:12px;z-index:10001;display:none}.global-loading-counter.show{display:block}.global-loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#fffc;display:flex;align-items:center;justify-content:center;z-index:9999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.global-loading-overlay .loading-content{text-align:center;padding:20px;background:white;border-radius:8px;box-shadow:0 4px 12px #0000001a}.global-loading-overlay .loading-message{margin-top:12px;color:#6b7280;font-size:14px}@media (prefers-color-scheme: dark){.global-loading-overlay{background-color:#1f2937cc}.global-loading-overlay .loading-content{background:#1f2937;color:#f9fafb}.global-loading-overlay .loading-message{color:#d1d5db}}.top-header{background-color:#1a237e;color:#fff;padding:8px 0}.top-header-container{display:flex;justify-content:space-between;align-items:center}.contact-info{display:flex;gap:20px}.contact-info a{color:#fff;text-decoration:none;font-size:.9rem;display:flex;align-items:center;gap:5px}.social-icons a{color:#fff;font-size:.9rem;transition:opacity .3s ease}.social-icons a:hover{opacity:.8}.navbar{background-color:#fff;height:80px;position:sticky;top:0;z-index:999;box-shadow:0 2px 10px #0000001a}.navbar-container{display:flex;justify-content:space-between;align-items:center;height:100%}.logo-container{display:flex;flex-direction:column}.navbar-logo{text-decoration:none;display:flex;flex-direction:column}.navbar-logo h1{font-size:1.5rem;font-weight:700;color:#1a237e;margin:0}.navbar-logo p{font-size:.8rem;color:#555;margin:0}.nav-menu{display:flex;align-items:center;list-style:none;gap:1.5rem;margin:0}.nav-link{color:#333;text-decoration:none;font-size:.95rem;font-weight:500;transition:all .3s ease;padding:5px 0;position:relative}.nav-link:hover,.nav-link.active{color:#1a237e}.nav-link:hover:after,.nav-link.active:after{content:"";position:absolute;width:100%;height:2px;background-color:#1a237e;bottom:0;left:0}.login-dropdown{position:relative}.login-button{background-color:#1a237e;color:#fff;padding:8px 20px;border-radius:4px;text-decoration:none;font-weight:500;transition:background-color .3s ease;display:flex;align-items:center;gap:6px;border:none;cursor:pointer}.login-button svg{transition:transform .2s ease}.login-button.open svg{transform:rotate(180deg)}.login-button:hover{background-color:#0d1757}.login-dropdown-content{position:absolute;top:100%;right:0;background-color:#fff;min-width:230px;box-shadow:0 10px 24px #0000001f;border-radius:6px;z-index:1000;margin-top:8px;overflow:hidden;border:1px solid #eaeaea}.login-dropdown-content:before{content:"";position:absolute;top:-8px;right:18px;width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-bottom:8px solid white;filter:drop-shadow(0 -1px 0 #eaeaea)}.login-dropdown-content .login-item{border-bottom:1px solid #f1f1f1}.login-dropdown-content .login-item:last-child{border-bottom:none}.login-dropdown-content .login-item-header{color:#333;padding:14px 16px;display:flex;align-items:center;gap:10px;transition:background-color .2s ease,color .2s ease;font-weight:500;cursor:pointer}.login-dropdown-content .login-item-icon svg{color:#1a237e}.login-dropdown-content .login-item-text{flex-grow:1}.login-dropdown-content .login-item-arrow svg{font-size:.8rem;color:#777;transition:transform .2s ease}.login-dropdown-content .login-item.active .login-item-arrow svg{transform:rotate(90deg)}.login-dropdown-content .login-item-header:hover{background-color:#f6f7fb;color:#1a237e}.login-dropdown-content .submenu{background-color:#f8f9fc;border-top:1px solid #f1f1f1}.login-dropdown-content .submenu a{color:#333;padding:12px 16px 12px 45px;text-decoration:none;display:flex;align-items:center;gap:10px;transition:background-color .2s ease,color .2s ease;border-bottom:1px solid #f1f1f1;font-weight:400;font-size:.9rem}.login-dropdown-content .submenu a:last-child{border-bottom:none}.login-dropdown-content .submenu a svg{color:#1a237e;font-size:.9rem}.login-dropdown-content .submenu a:hover{background-color:#eef0f7;color:#1a237e}.menu-icon{display:none;font-size:1.8rem;cursor:pointer;color:#1a237e}@media screen and (max-width: 960px){.contact-info{gap:10px}.contact-info a{font-size:.8rem}.menu-icon{display:block}.nav-menu{display:flex;flex-direction:column;width:100%;height:90vh;position:absolute;top:80px;left:-100%;opacity:1;transition:all .5s ease;padding:2rem;gap:2rem;background-color:#fff}.nav-menu.active{left:0;opacity:1;transition:all .5s ease;z-index:1}.nav-item{width:100%;display:flex;justify-content:center;align-items:center}.nav-link{text-align:center;width:100%;display:table;padding:1rem;font-size:1.2rem}.login-item{margin-top:10px}}@media screen and (max-width: 768px){.top-header-container{flex-direction:column;gap:5px}.social-icons{margin-top:5px}}.footer{background-color:#032867;color:#fff;padding-top:60px}.footer-container{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.footer-column{margin-bottom:30px}.footer-logo h2{font-size:24px;margin-bottom:15px}.footer-logo span{color:var(--primary-color)}.footer-column p{margin-bottom:20px;color:#ccc;line-height:1.6}.social-icons{display:flex;gap:15px}.social-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background-color:#ffffff1a;color:#fff;transition:all .3s ease}.social-icon:hover{background-color:var(--primary-color)}.footer-column h3{font-size:18px;margin-bottom:20px;position:relative;padding-bottom:10px}.footer-column h3:after{content:"";position:absolute;left:0;bottom:0;width:50px;height:2px;background-color:var(--primary-color)}.footer-links li{margin-bottom:10px}.footer-links a{color:#ccc;transition:all .3s ease}.footer-links a:hover{color:var(--primary-color);padding-left:5px}.contact-info li{display:flex;align-items:center;margin-bottom:15px;color:#ccc}.contact-info li svg{margin-right:10px;color:var(--primary-color)}.footer-bottom{background-color:#111;padding:20px 0;margin-top:40px;text-align:center}.footer-bottom p{color:#ccc}@media screen and (max-width: 992px){.footer-container{grid-template-columns:repeat(2,1fr);gap:30px}}@media screen and (max-width: 576px){.footer-container{grid-template-columns:1fr;text-align:center}.footer-column{margin-bottom:40px}}.back-to-top{position:fixed;bottom:30px;right:30px;width:50px;height:50px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;box-shadow:0 4px 15px #667eea4d;transition:all .3s ease;z-index:1000;opacity:.9}.back-to-top:hover{transform:translateY(-3px);box-shadow:0 6px 20px #667eea66;opacity:1}.back-to-top:active{transform:translateY(-1px)}@media screen and (max-width: 768px){.back-to-top{bottom:20px;right:20px;width:45px;height:45px;font-size:16px}}@media screen and (max-width: 480px){.back-to-top{bottom:15px;right:15px;width:40px;height:40px;font-size:14px}}.hero{height:500px;background-image:url(https://images.unsplash.com/photo-1523050854058-8df90110c9f1?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=crop&w=1470&q=80);background-size:cover;background-position:center;position:relative}.hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#efecec0e;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center}.hero-container{width:100%}.hero-content{max-width:700px;text-align:center;margin:0 auto;color:#fff}.hero-content h1{font-size:48px;font-weight:700;margin-bottom:5px;color:#fff}.hero-content h2{font-size:24px;font-weight:500;margin-bottom:15px;color:#fff}.hero-content p{font-size:18px;margin-bottom:30px;color:#fff}.upload-background{margin-top:20px}.upload-btn{background-color:#fff3;color:#fff;border:2px solid white;padding:10px 20px;border-radius:4px;cursor:pointer;display:flex;align-items:center;gap:8px;margin:0 auto;transition:all .3s ease}.upload-btn:hover{background-color:#ffffff4d}.hero-buttons{display:flex;gap:20px;justify-content:center}.btn-primary{background-color:#fff;color:#1a237e;padding:12px 24px;border-radius:4px;font-weight:600;text-decoration:none;transition:all .3s ease}.btn-primary:hover{background-color:#f5f5f5}.btn-outline{background-color:transparent;color:#fff;padding:12px 24px;border:2px solid white;border-radius:4px;font-weight:600;text-decoration:none;transition:all .3s ease}.btn-outline:hover{background-color:#ffffff1a}.features-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:50px}.feature-card{background-color:#fff;padding:30px;border-radius:10px;box-shadow:0 5px 15px #0000000d;text-align:center;transition:all .3s ease}.feature-card:hover{transform:translateY(-10px);box-shadow:0 15px 30px #0000001a}.feature-icon{font-size:40px;color:var(--primary-color);margin-bottom:20px}.feature-card h3{font-size:20px;font-weight:600;margin-bottom:15px}.feature-card p{color:var(--light-text)}.courses-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:50px}.course-card{background-color:#fff;border-radius:10px;overflow:hidden;box-shadow:0 5px 15px #0000000d;transition:all .3s ease}.course-card:hover{transform:translateY(-10px);box-shadow:0 15px 30px #0000001a}.course-image img{width:100%;height:200px;object-fit:cover}.course-content{padding:20px}.course-content h3{font-size:20px;font-weight:600;margin-bottom:10px}.course-content p{color:var(--light-text);margin-bottom:20px}.courses-cta{text-align:center;margin-top:50px}.facilities{background-color:#f5f5f5;padding:60px 0}.facilities-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:50px}.facility-card{background-color:#fff;border-radius:10px;overflow:hidden;box-shadow:0 5px 15px #0000000d;transition:all .3s ease}.facility-card:hover{transform:translateY(-10px);box-shadow:0 15px 30px #0000001a}.facility-image img{width:100%;height:200px;object-fit:cover}.facility-content{padding:20px}.facility-content h3{font-size:20px;font-weight:600;margin-bottom:10px}.facility-content p{color:var(--light-text);margin-bottom:15px}@media (max-width: 768px){.facilities-grid{grid-template-columns:1fr}}.cta-section{background-color:var(--primary-color);padding:80px 0;text-align:center;color:#fff}.cta-container h2{font-size:36px;font-weight:700;margin-bottom:20px}.cta-container p{font-size:18px;margin-bottom:30px;opacity:.9}.cta-container .btn{background-color:#fff;color:var(--primary-color)}.cta-container .btn:hover{background-color:#ffffffe6}@media screen and (max-width: 992px){.hero-container{grid-template-columns:1fr}.hero-image{order:-1}.features-grid,.courses-grid,.testimonials-grid{grid-template-columns:repeat(2,1fr)}}@media screen and (max-width: 768px){.hero-content h1{font-size:36px}.courses-grid,.testimonials-grid{grid-template-columns:1fr}}@media screen and (max-width: 576px){.features-grid{grid-template-columns:1fr}.hero-buttons{flex-direction:column}}.about-hero{background-color:var(--primary-color);color:#fff;padding:100px 0;text-align:center}.about-hero h1{font-size:48px;font-weight:700;margin-bottom:20px}.about-hero p{font-size:18px;opacity:.9}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.about-image img{width:100%;border-radius:10px;box-shadow:0 10px 30px #0000001a}.about-text h2{font-size:32px;font-weight:700;margin-bottom:20px;color:var(--text-color)}.about-text p{margin-bottom:15px;color:var(--light-text);line-height:1.8}.mission-vision-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.mission-box,.vision-box{background-color:#fff;padding:40px;border-radius:10px;box-shadow:0 5px 15px #0000000d}.mission-box h2,.vision-box h2{font-size:28px;font-weight:700;margin-bottom:20px;color:var(--text-color)}.mission-box p,.vision-box p{margin-bottom:20px;color:var(--light-text)}.mission-list,.vision-list{list-style:none}.mission-list li,.vision-list li{display:flex;align-items:center;margin-bottom:10px;color:var(--text-color)}.mission-list li svg,.vision-list li svg{color:var(--primary-color);margin-right:10px}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:50px}.team-member{background-color:#fff;border-radius:10px;overflow:hidden;box-shadow:0 5px 15px #0000000d;text-align:center;transition:all .3s ease}.team-member:hover{transform:translateY(-10px);box-shadow:0 15px 30px #0000001a}.team-member img{width:100%;height:300px;object-fit:contain;object-position:center;background-color:#f8f9fa}.team-member h3{font-size:22px;font-weight:600;margin:20px 0 5px}.member-position{color:var(--primary-color);font-weight:500;margin-bottom:15px}.team-member p{padding:0 20px 20px;color:var(--light-text)}.stats-section{background-color:var(--primary-color);padding:80px 0;color:#fff}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;text-align:center}.stat-item h3{font-size:48px;font-weight:700;margin-bottom:10px}.stat-item p{font-size:18px;opacity:.9}@media screen and (max-width: 992px){.about-grid,.mission-vision-grid{grid-template-columns:1fr}.team-grid{grid-template-columns:repeat(2,1fr)}.stats-grid{grid-template-columns:repeat(2,1fr);gap:40px}}@media screen and (max-width: 768px){.about-hero h1{font-size:36px}.team-grid{grid-template-columns:1fr}}.contact-hero{background-color:var(--primary-color);color:#fff;padding:100px 0;text-align:center}.contact-hero h1{font-size:48px;font-weight:700;margin-bottom:20px}.contact-hero p{font-size:18px;opacity:.9}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px}.contact-form-container h2,.contact-details h2{font-size:28px;font-weight:700;margin-bottom:20px}.contact-details p{margin-bottom:30px;color:var(--light-text)}.contact-form{background-color:#fff;padding:30px;border-radius:10px;box-shadow:0 5px 15px #0000000d}.form-group label{display:block;margin-bottom:8px;font-weight:500}.form-group input,.form-group textarea{width:100%;padding:12px 15px;border:1px solid var(--border-color);border-radius:5px;font-size:16px;transition:all .3s ease}.form-group input:focus,.form-group textarea:focus{border-color:var(--primary-color);outline:none;box-shadow:0 0 0 2px #0071f333}.contact-item{display:flex;margin-bottom:30px}.contact-icon{font-size:24px;color:var(--primary-color);margin-right:20px;display:flex;align-items:center;justify-content:center;width:50px;height:50px;background-color:#0071f31a;border-radius:50%}.contact-text h3{font-size:20px;font-weight:600;margin-bottom:5px}.contact-text p{margin-bottom:5px;color:var(--light-text)}.map-section{margin-top:80px}.map-container{width:100%;height:400px}.map-placeholder{width:100%;height:100%;background-color:#f5f5f5;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.map-placeholder h3{font-size:24px;margin-bottom:10px}.map-placeholder p{color:var(--light-text)}@media screen and (max-width: 992px){.contact-grid{grid-template-columns:1fr}.contact-details{order:-1}}@media screen and (max-width: 768px){.contact-hero h1{font-size:36px}}.academic-hero{background-color:#1a237e;color:#fff;padding:60px 0;text-align:center}.academic-hero h1{font-size:42px;margin-bottom:15px}.academic-hero p{font-size:18px;max-width:700px;margin:0 auto}.academic-content{padding:60px 0}.academic-tabs{display:flex;justify-content:center;gap:15px;margin-bottom:40px}.academic-tabs button,.academic-tabs a.tab-link{background-color:#f5f5f5;border:none;padding:12px 24px;border-radius:4px;font-size:16px;font-weight:500;color:#333;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .3s ease;text-decoration:none}.academic-tabs button:hover,.academic-tabs a.tab-link:hover{background-color:#e0e0e0}.academic-tabs button.active,.academic-tabs a.tab-link.active{background-color:#1a237e;color:#fff}.academic-tab-content{background-color:#fff;border-radius:8px;padding:30px;box-shadow:0 4px 12px #0000000d}.academic-tab-content h2{font-size:28px;margin-bottom:15px;color:#1a237e}.academic-tab-content>div>p{font-size:16px;color:#555;margin-bottom:30px}.sessions-list{display:flex;flex-direction:column;gap:20px}.session-card{background-color:#f9f9f9;border-radius:8px;padding:20px;box-shadow:0 2px 8px #0000000d}.session-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.session-header h3{font-size:22px;color:#1a237e}.session-dates{display:flex;align-items:center;gap:8px;color:#555}.session-highlights h4{font-size:18px;margin-bottom:10px;color:#333}.session-highlights ul{padding-left:20px}.session-highlights li{margin-bottom:8px;color:#555}.departments-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.department-card{background-color:#f9f9f9;border-radius:8px;padding:20px;box-shadow:0 2px 8px #0000000d}.department-card h3{font-size:20px;color:#1a237e;margin-bottom:10px}.department-head{margin-bottom:15px;color:#555}.department-subjects h4{font-size:16px;margin-bottom:10px;color:#333}.department-subjects ul{padding-left:20px}.department-subjects li{margin-bottom:5px;color:#555}.documents-list{display:flex;flex-direction:column;gap:15px}.document-item{display:flex;justify-content:space-between;align-items:center;background-color:#f9f9f9;border-radius:8px;padding:15px 20px;box-shadow:0 2px 8px #0000000d}.document-info h3{font-size:18px;color:#1a237e;margin-bottom:5px}.document-info p{font-size:14px;color:#777;margin:0}.download-btn{background-color:#1a237e;color:#fff;border:none;border-radius:4px;padding:8px 16px;font-size:14px;cursor:pointer;display:flex;align-items:center;gap:8px;transition:background-color .3s ease}.download-btn:hover{background-color:#0d1757}@media screen and (max-width: 768px){.academic-tabs{flex-direction:column;gap:10px}.session-header{flex-direction:column;align-items:flex-start;gap:10px}.departments-grid{grid-template-columns:1fr}.document-item{flex-direction:column;align-items:flex-start;gap:15px}.download-btn{align-self:flex-start}}.academic-tabs .tab-link,.academic-tabs .tab-link.active{background-color:#f5f5f5;border:none;padding:12px 24px;border-radius:4px;font-size:16px;font-weight:500;color:#333;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .3s ease;text-decoration:none}.academic-tabs .tab-link:hover{background-color:#e0e0e0}.academic-tabs .tab-link.active{background-color:#1a237e;color:#fff}.updates-actions{display:flex;justify-content:flex-end;margin-bottom:16px}.primary-btn{background-color:#1a237e;color:#fff;border:none;border-radius:4px;padding:8px 14px;cursor:pointer;display:inline-flex;align-items:center;gap:8px}.secondary-btn{background-color:#eee;color:#333;border:none;border-radius:4px;padding:8px 14px;cursor:pointer}.primary-btn:hover{background-color:#0d1757}.updates-list{display:flex;flex-direction:column;gap:16px}.update-card{background:#f9f9f9;border-radius:8px;padding:16px;box-shadow:0 2px 8px #0000000d}.update-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}.update-header h3{color:#1a237e;margin:0}.update-meta{display:flex;gap:10px;font-size:12px;color:#666}.update-description{color:#555;margin-top:8px}.update-actions{display:flex;gap:8px;margin-top:12px}.edit-btn,.delete-btn{border:none;background:transparent;cursor:pointer;color:#555}.edit-btn:hover{color:#1a237e}.delete-btn:hover{color:#d63031}.update-form-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.4);display:flex;align-items:center;justify-content:center;z-index:1000}.update-form{background:#fff;width:95%;max-width:720px;border-radius:8px;padding:20px;box-shadow:0 4px 12px #0003}.update-form h2{margin:0 0 12px;color:#1a237e}.form-group{margin-bottom:12px;display:flex;flex-direction:column}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.form-group label{font-size:14px;color:#333;margin-bottom:4px}.form-group input,.form-group select,.form-group textarea{border:1px solid #ddd;border-radius:4px;padding:8px;font-size:14px}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.error-text{color:#d63031}@media (max-width: 768px){.update-form{width:96%;padding:16px}.update-header{flex-direction:column;gap:6px}}.admissions-hero{background:linear-gradient(rgba(0,32,96,.8),rgba(0,32,96,.8)),url(/School_BBD/images/campus.svg);background-size:cover;background-position:center;color:#fff;padding:80px 0;text-align:center}.admissions-hero h1{font-size:3rem;margin-bottom:1rem}.admissions-hero p{font-size:1.2rem;max-width:600px;margin:0 auto}.admissions-content{padding:60px 0;background:#fafafa}.admissions-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start}.admissions-info h2,.admissions-form-container h2{color:#002060;margin-bottom:1.5rem}.admission-steps{margin:30px 0}.step{display:flex;margin-bottom:20px;align-items:flex-start}.step-number{background-color:#002060;color:#fff;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;margin-right:15px;flex-shrink:0}.step-content h3{color:#002060;margin-bottom:5px}.download-section{background-color:#f7f9fc;padding:20px;border-radius:12px;margin-top:30px;border:1px solid #e6eaf2}.download-btn{background-color:#002060;color:#fff;border:none;padding:10px 20px;border-radius:4px;display:flex;align-items:center;gap:10px;cursor:pointer;margin-top:15px;transition:background-color .3s}.download-btn:hover{background-color:#001540}.admissions-form-container{background-color:#fff;border-radius:12px;box-shadow:0 8px 24px #00000014;padding:28px;border:1px solid #eef2f7}.admissions-form{display:flex;flex-direction:column;gap:15px}.form-group input,.form-group select,.form-group textarea{padding:12px 14px;border:1px solid #d7dbe3;border-radius:8px;font-size:1rem;background:#fff;transition:border-color .2s,box-shadow .2s}.form-group textarea{min-height:110px;resize:vertical}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#6f8ad8;box-shadow:0 0 0 3px #6f8ad833}.form-group input::placeholder,.form-group textarea::placeholder{color:#9aa3b2}.file-upload{border:2px dashed #cfd6e5;padding:22px;text-align:center;border-radius:10px;cursor:pointer;position:relative;background:#fafcff}.file-upload input{opacity:0;position:absolute;top:0;left:0;width:100%;height:100%;cursor:pointer}.upload-icon{font-size:22px;color:#002060;margin-bottom:8px}.submit-btn{background-color:#002060;color:#fff;border:none;padding:12px 20px;border-radius:10px;font-size:1rem;cursor:pointer;transition:transform .08s ease,background-color .2s ease;width:100%}.submit-btn:hover{background-color:#001540;transform:translateY(-1px)}.form-success{text-align:center;padding:30px 0}.form-success h2{color:#4caf50;margin-bottom:15px}.form-success p{margin-bottom:20px}.btn-primary{background-color:#002060;color:#fff;border:none;padding:10px 18px;border-radius:10px;cursor:pointer;transition:transform .08s ease,background-color .2s ease}.btn-primary:hover{background-color:#001540;transform:translateY(-1px)}.otp-verification-container{background:#fff;border:1px solid #eef2f7;border-radius:12px;padding:24px;box-shadow:0 8px 24px #0000000f}.verification-header{text-align:center;margin-bottom:16px}.security-icon{color:#002060;font-size:28px;margin-bottom:8px}.contact-verification-form{display:flex;flex-direction:column;gap:20px}.verification-step{background:#fafcff;border:1px solid #eef2f7;border-radius:10px;padding:16px}.step-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.step-icon{color:#002060}.input-group,.otp-input-group{display:flex;gap:10px}.input-group input,.otp-input-group input{flex:1}.send-otp-btn,.verify-otp-btn,.proceed-btn{background:#002060;color:#fff;border:none;padding:10px 14px;border-radius:10px;cursor:pointer;transition:transform .08s ease,background-color .2s ease}.send-otp-btn:hover,.verify-otp-btn:hover,.proceed-btn:hover{background:#001540;transform:translateY(-1px)}.optional-label{color:#6f7c91;font-weight:500}.proceed-section{border-top:1px dashed #e3e7ef;margin-top:12px;padding-top:12px}.proceed-info{color:#4b5565;margin-bottom:8px}.verified-header{background:#fafcff;border:1px solid #eef2f7;border-radius:10px;padding:16px;margin-bottom:16px}.verified-icon{color:#4caf50}@media (max-width: 768px){.admissions-grid,.form-row{grid-template-columns:1fr}.admissions-hero h1{font-size:2.5rem}.input-group,.otp-input-group{flex-direction:column}}.fee-payment-hero{background:linear-gradient(rgba(0,32,96,.8),rgba(0,32,96,.8)),url(/School_BBD/images/campus.svg);background-size:cover;background-position:center;color:#fff;padding:80px 0;text-align:center}.fee-payment-hero h1{font-size:3rem;margin-bottom:1rem}.fee-payment-hero p{font-size:1.2rem;max-width:600px;margin:0 auto}.fee-payment-content{padding:60px 0}.fee-payment-container{display:grid;grid-template-columns:1fr 1fr;gap:40px}.fee-info h2,.payment-form-container h2{color:#002060;margin-bottom:1.5rem}.fee-structure{margin-top:30px;background-color:#f5f5f5;padding:20px;border-radius:8px}.fee-structure h3{color:#002060;margin-bottom:15px}.fee-table{width:100%;border-collapse:collapse}.fee-table th,.fee-table td{padding:12px;text-align:left;border-bottom:1px solid #ddd}.fee-table th{background-color:#002060;color:#fff}.fee-table tr:nth-child(2n){background-color:#f9f9f9}.payment-form-container{background-color:#fff;border-radius:8px;box-shadow:0 0 20px #0000001a;padding:30px}.payment-form{display:flex;flex-direction:column;gap:30px}.form-section{border-bottom:1px solid #eee;padding-bottom:20px}.form-section h3{color:#002060;margin-bottom:15px}.form-group{display:flex;flex-direction:column;margin-bottom:15px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-group label{margin-bottom:5px;font-weight:500;color:#333}.form-group input,.form-group select{padding:10px;border:1px solid #ddd;border-radius:4px;font-size:1rem}.payment-tabs{display:flex;border-bottom:1px solid #ddd;margin-bottom:20px}.payment-tab{display:flex;flex-direction:column;align-items:center;padding:15px;cursor:pointer;opacity:.7;transition:all .3s}.payment-tab.active{opacity:1;border-bottom:3px solid #002060}.payment-tab svg{font-size:24px;margin-bottom:5px;color:#002060}.payment-tab-content{padding:20px 0}.upi-apps{margin-top:20px}.upi-app-icons{display:flex;gap:20px;margin-top:10px}.upi-app{display:flex;flex-direction:column;align-items:center;cursor:pointer}.upi-app img{width:50px;height:50px;object-fit:contain}.upi-app span{margin-top:5px;font-size:.9rem}.form-actions{margin-top:20px}.pay-now-btn{background-color:#002060;color:#fff;border:none;padding:12px 24px;border-radius:4px;font-size:1rem;cursor:pointer;transition:background-color .3s;width:100%}.pay-now-btn:hover{background-color:#001540}.payment-success{max-width:700px;margin:0 auto;text-align:center}.success-icon{background-color:#4caf50;color:#fff;width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;margin:0 auto 20px}.payment-success h2{color:#4caf50;margin-bottom:15px}.receipt{background-color:#fff;border-radius:8px;box-shadow:0 0 20px #0000001a;padding:30px;margin-top:30px;text-align:left}.receipt h3{color:#002060;margin-bottom:20px;text-align:center}.receipt-details{display:flex;flex-direction:column;gap:10px}.receipt-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #eee}.receipt-row:last-child{border-bottom:none}.status-paid{color:#4caf50;font-weight:700}.receipt-actions{display:flex;gap:15px;margin-top:30px;justify-content:center}.download-receipt-btn,.make-another-payment-btn{padding:10px 20px;border-radius:4px;cursor:pointer;transition:background-color .3s;display:flex;align-items:center;gap:8px}.download-receipt-btn{background-color:#002060;color:#fff;border:none}.download-receipt-btn:hover{background-color:#001540}.make-another-payment-btn{background-color:#fff;color:#002060;border:1px solid #002060}.make-another-payment-btn:hover{background-color:#f5f5f5}@media (max-width: 768px){.fee-payment-container,.form-row{grid-template-columns:1fr}.fee-payment-hero h1{font-size:2.5rem}.receipt-actions{flex-direction:column}}.gallery-page{min-height:100vh}.gallery-hero{height:60vh;background:linear-gradient(135deg,rgba(0,123,255,.9),rgba(40,167,69,.9)),url(https://images.unsplash.com/photo-1523050854058-8df90110c9f1?ixlib=rb-4.0.3&auto=format&fit=crop&w=2070&q=80) center/cover;display:flex;align-items:center;justify-content:center;position:relative;color:#fff;text-align:center}.hero-overlay{background:rgba(0,0,0,.3);width:100%;height:100%;display:flex;align-items:center;justify-content:center}.gallery-hero h1{font-size:3.5rem;font-weight:700;margin-bottom:1rem;text-shadow:2px 2px 4px rgba(0,0,0,.3)}.gallery-hero p{font-size:1.3rem;font-weight:300;max-width:600px;margin:0 auto;text-shadow:1px 1px 2px rgba(0,0,0,.3)}.gallery-content{padding:4rem 0;background:#f8f9fa}.category-filter{display:flex;justify-content:center;flex-wrap:wrap;gap:1rem;margin-bottom:3rem}.filter-btn{padding:.75rem 1.5rem;border:2px solid #007bff;background:white;color:#007bff;border-radius:25px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.95rem}.filter-btn:hover{background:#007bff;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #007bff4d}.filter-btn.active{background:#007bff;color:#fff;box-shadow:0 4px 12px #007bff4d}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.gallery-item{cursor:pointer;border-radius:12px;overflow:hidden;box-shadow:0 4px 15px #0000001a;transition:all .3s ease;background:white}.gallery-item:hover{transform:translateY(-8px);box-shadow:0 8px 25px #00000026}.image-container{position:relative;height:250px;overflow:hidden}.image-container img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.gallery-item:hover .image-container img{transform:scale(1.05)}.image-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.7) 100%);display:flex;align-items:flex-end;justify-content:space-between;padding:1.5rem;opacity:0;transition:opacity .3s ease;color:#fff}.gallery-item:hover .image-overlay{opacity:1}.image-info h3{font-size:1.2rem;font-weight:600;margin-bottom:.25rem}.image-info p{font-size:.9rem;opacity:.9}.expand-icon{font-size:1.2rem;opacity:.8}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.9);display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.modal-content{position:relative;max-width:90vw;max-height:90vh;background:white;border-radius:12px;overflow:hidden;box-shadow:0 20px 60px #0000004d}.modal-close{position:absolute;top:1rem;right:1rem;background:rgba(0,0,0,.7);color:#fff;border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:1001;transition:background .3s ease}.modal-close:hover{background:rgba(0,0,0,.9)}.modal-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(0,0,0,.7);color:#fff;border:none;border-radius:50%;width:50px;height:50px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:1001;transition:background .3s ease;font-size:1.2rem}.modal-nav:hover{background:rgba(0,0,0,.9)}.modal-nav.prev{left:1rem}.modal-nav.next{right:1rem}.modal-image{max-height:70vh;overflow:hidden}.modal-image img{width:100%;height:100%;object-fit:contain}.modal-info{padding:2rem;text-align:center}.modal-info h3{font-size:1.5rem;font-weight:600;margin-bottom:.5rem;color:#333}.modal-category{color:#007bff;font-weight:600;margin-bottom:1rem;text-transform:uppercase;font-size:.9rem;letter-spacing:1px}.modal-description{color:#666;line-height:1.6;max-width:500px;margin:0 auto}@media (max-width: 768px){.gallery-hero h1{font-size:2.5rem}.gallery-hero p{font-size:1.1rem;padding:0 1rem}.gallery-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;padding:0 1rem}.category-filter{padding:0 1rem;gap:.5rem}.filter-btn{padding:.6rem 1.2rem;font-size:.9rem}.modal-content{margin:1rem;max-width:calc(100vw - 2rem);max-height:calc(100vh - 2rem)}.modal-nav{width:40px;height:40px;font-size:1rem}.modal-nav.prev{left:.5rem}.modal-nav.next{right:.5rem}.modal-info{padding:1.5rem}.modal-info h3{font-size:1.3rem}}@media (max-width: 480px){.gallery-hero{height:50vh}.gallery-hero h1{font-size:2rem}.gallery-hero p{font-size:1rem}.gallery-grid{grid-template-columns:1fr;gap:1rem}.image-container{height:200px}.category-filter{flex-direction:column;align-items:center}.filter-btn{width:200px;text-align:center}}.admin-dashboard{padding:20px;background-color:#f8f9fa;min-height:100vh}.dashboard-header{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;padding:30px;border-radius:10px;margin-bottom:30px;box-shadow:0 4px 15px #0000001a}.dashboard-header h1{margin:0 0 10px;font-size:2.5rem;font-weight:600}.dashboard-header p{margin:0;opacity:.9;font-size:1.1rem}.stat-card{background:white;padding:25px;border-radius:10px;box-shadow:0 2px 10px #0000001a;display:flex;align-items:center;transition:transform .3s ease,box-shadow .3s ease}.stat-card:hover{transform:translateY(-5px);box-shadow:0 5px 20px #00000026}.stat-icon.students{background:linear-gradient(135deg,#4facfe 0%,#00f2fe 100%)}.stat-icon.faculty{background:linear-gradient(135deg,#43e97b 0%,#38f9d7 100%)}.stat-icon.courses{background:linear-gradient(135deg,#fa709a 0%,#fee140 100%)}.stat-icon.revenue{background:linear-gradient(135deg,#a8edea 0%,#fed6e3 100%)}.dashboard-section{background:white;padding:25px;border-radius:10px;box-shadow:0 2px 10px #0000001a}.section-header{display:flex;justify-content:between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #f0f0f0}.section-header .btn{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;padding:8px 16px;border-radius:5px;text-decoration:none;font-size:.9rem;transition:transform .2s ease}.action-btn{display:flex;align-items:center;padding:15px;background:white;border:2px solid #e9ecef;border-radius:8px;text-decoration:none;color:#333;transition:all .3s ease}.action-btn:hover{border-color:#667eea;background:#f8f9ff;transform:translateY(-2px)}.action-btn .icon{margin-right:10px;font-size:1.2rem;color:#667eea}.recent-activities{max-height:400px;overflow-y:auto}.activity-item{display:flex;align-items:center;padding:15px 0;border-bottom:1px solid #f0f0f0}.activity-item:last-child{border-bottom:none}.activity-icon{width:40px;height:40px;border-radius:50%;background:#f8f9fa;display:flex;align-items:center;justify-content:center;margin-right:15px;color:#667eea}.activity-content{flex:1}.activity-content p{margin:0 0 5px;color:#333;font-size:.9rem}.activity-content small{color:#666;font-size:.8rem}.notifications-panel{background:white;border-radius:10px;box-shadow:0 2px 10px #0000001a;padding:20px}.notification-item{padding:15px;border-left:4px solid #667eea;background:#f8f9ff;margin-bottom:15px;border-radius:0 5px 5px 0}.charts-container{display:grid;grid-template-columns:1fr 1fr;gap:20px}.chart-card{background:white;padding:20px;border-radius:10px;box-shadow:0 2px 10px #0000001a}.chart-card h3{margin:0 0 20px;color:#333;font-size:1.2rem}@media (max-width: 1200px){.dashboard-content,.charts-container{grid-template-columns:1fr}}@media (max-width: 768px){.admin-dashboard{padding:10px}.dashboard-header{padding:20px}.dashboard-header h1{font-size:2rem}.dashboard-stats,.quick-actions{grid-template-columns:1fr}}.student-form-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.student-form-container{background:white;border-radius:12px;box-shadow:0 20px 40px #0000001a;width:100%;max-width:900px;max-height:90vh;overflow-y:auto;animation:slideIn .3s ease-out}.student-form-header{display:flex;justify-content:space-between;align-items:center;padding:24px 32px;border-bottom:1px solid #e5e7eb;background:linear-gradient(135deg,#10b981 0%,#059669 100%);color:#fff;border-radius:12px 12px 0 0}.student-form-header h2{margin:0;font-size:1.5rem;font-weight:600}.student-form{padding:32px}.form-section{margin-bottom:32px}.form-section h3{color:#374151;font-size:1.125rem;font-weight:600;margin-bottom:20px;padding-bottom:8px;border-bottom:2px solid #e5e7eb}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#10b981;background-color:#fff;box-shadow:0 0 0 3px #10b9811a}.btn-submit{background:linear-gradient(135deg,#10b981 0%,#059669 100%);color:#fff;box-shadow:0 4px 12px #10b9814d}.btn-submit:hover{transform:translateY(-1px);box-shadow:0 6px 16px #10b98166}@media (max-width: 768px){.student-form-overlay{padding:10px}.student-form-container{max-height:95vh}.student-form-header{padding:20px 24px}.student-form{padding:24px}.form-row{grid-template-columns:1fr;gap:16px;margin-bottom:16px}.form-section{margin-bottom:24px}.form-actions{flex-direction:column-reverse;gap:12px}.btn-cancel,.btn-submit{width:100%;padding:14px 24px}}@media (max-width: 480px){.student-form-header{padding:16px 20px}.student-form-header h2{font-size:1.25rem}.student-form{padding:20px}.form-section h3{font-size:1rem}}@media (prefers-color-scheme: dark){.student-form-container{background:#1f2937;color:#f9fafb}.student-form-header{border-bottom-color:#374151}.form-section h3{color:#e5e7eb;border-bottom-color:#374151}.form-group label{color:#e5e7eb}.form-group input,.form-group select,.form-group textarea{background-color:#374151;border-color:#4b5563;color:#f9fafb}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background-color:#4b5563;border-color:#10b981}.form-actions{border-top-color:#374151}.btn-cancel{background-color:#374151;color:#e5e7eb;border-color:#4b5563}.btn-cancel:hover{background-color:#4b5563;border-color:#6b7280}}.manage-students{padding:20px;background:#f8f9fa;min-height:100vh}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;background:white;padding:20px;border-radius:12px;box-shadow:0 2px 4px #0000001a}.header h1{color:#2c3e50;margin:0;font-size:28px;font-weight:600}.header-actions{display:flex;gap:12px;align-items:center}.add-btn,.import-btn,.refresh-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;border:none;border-radius:8px;cursor:pointer;font-weight:500;transition:all .2s ease;text-decoration:none}.add-btn{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff}.add-btn:hover{background:linear-gradient(135deg,#0056b3,#004085);transform:translateY(-1px)}.import-btn{background:linear-gradient(135deg,#28a745,#1e7e34);color:#fff}.import-btn:hover{background:linear-gradient(135deg,#1e7e34,#155724);transform:translateY(-1px)}.refresh-btn{background:linear-gradient(135deg,#6c757d,#545b62);color:#fff;padding:10px 12px}.refresh-btn:hover{background:linear-gradient(135deg,#545b62,#495057);transform:translateY(-1px)}.search-section{margin-bottom:20px}.search-input-group{position:relative;max-width:400px}.search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#6c757d;z-index:1}.search-loading{position:absolute;right:12px;top:50%;transform:translateY(-50%)}.search-input{width:100%;padding:12px 40px;border:2px solid #e9ecef;border-radius:8px;font-size:14px;transition:all .2s ease;background:white}.search-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.search-input:disabled{background-color:#f8f9fa;cursor:not-allowed}.students-table-container{background:white;border-radius:12px;overflow:hidden;box-shadow:0 4px 6px #0000001a}.students-table{width:100%;border-collapse:collapse}.students-table th,.students-table td{padding:16px;text-align:left;border-bottom:1px solid #f1f3f4}.students-table th{background:linear-gradient(135deg,#f8f9fa,#e9ecef);font-weight:600;color:#2c3e50;font-size:14px;text-transform:uppercase;letter-spacing:.5px}.students-table tbody tr{transition:background-color .2s ease}.students-table tbody tr:hover{background-color:#f8f9fa}.status{padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status.active{background:linear-gradient(135deg,#d4edda,#c3e6cb);color:#155724}.status.inactive{background:linear-gradient(135deg,#f8d7da,#f5c6cb);color:#721c24}.actions{display:flex;gap:8px}.view-btn,.edit-btn,.delete-btn{padding:8px 10px;border:none;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.view-btn{background:linear-gradient(135deg,#17a2b8,#138496);color:#fff}.view-btn:hover{background:linear-gradient(135deg,#138496,#117a8b);transform:translateY(-1px)}.edit-btn{background:linear-gradient(135deg,#ffc107,#e0a800);color:#212529}.edit-btn:hover{background:linear-gradient(135deg,#e0a800,#d39e00);transform:translateY(-1px)}.delete-btn{background:linear-gradient(135deg,#dc3545,#c82333);color:#fff}.delete-btn:hover{background:linear-gradient(135deg,#c82333,#bd2130);transform:translateY(-1px)}.error-row,.empty-row{text-align:center;padding:60px 20px}.error-content,.empty-content{display:flex;flex-direction:column;align-items:center;gap:16px}.error-content p{color:#dc3545;margin:0;font-weight:500;font-size:16px}.empty-content p{color:#6c757d;margin:0;font-size:16px}.clear-search-btn{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease}.clear-search-btn:hover{background:linear-gradient(135deg,#0056b3,#004085);transform:translateY(-1px)}.pagination{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:20px;padding:20px;background:white;border-radius:12px;box-shadow:0 2px 4px #0000001a}.pagination-btn{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff;border:none;padding:10px 16px;border-radius:8px;cursor:pointer;font-weight:500;transition:all .2s ease;min-width:80px}.pagination-btn:hover:not(:disabled){background:linear-gradient(135deg,#2980b9,#21618c);transform:translateY(-1px)}.pagination-btn:disabled{background:#bdc3c7;cursor:not-allowed;transform:none}.pagination-info{display:flex;flex-direction:column;align-items:center;gap:4px;font-weight:500;color:#2c3e50}.total-records{font-size:12px;color:#6c757d;font-weight:400}.loading{text-align:center;padding:60px;color:#6c757d;font-size:16px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.delete-modal{background:white;border-radius:16px;padding:0;max-width:450px;width:90%;box-shadow:0 20px 40px #0000004d;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #f1f3f4;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:16px 16px 0 0}.modal-header h3{margin:0;color:#2c3e50;font-size:20px;font-weight:600}.close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:#6c757d;padding:8px;border-radius:50%;transition:all .2s ease;width:40px;height:40px;display:flex;align-items:center;justify-content:center}.close-btn:hover{background:#f8f9fa;color:#dc3545}.modal-body{padding:32px 24px;text-align:center}.warning-icon{font-size:64px;margin-bottom:20px;animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.modal-body p{margin:12px 0;color:#2c3e50;font-size:16px;line-height:1.5}.warning-text{font-size:14px!important;color:#6c757d!important;font-style:italic}.modal-actions{display:flex;gap:12px;padding:24px;border-top:1px solid #f1f3f4;justify-content:flex-end;background:#fafbfc;border-radius:0 0 16px 16px}.cancel-btn{background:linear-gradient(135deg,#6c757d,#545b62);color:#fff;border:none;padding:12px 24px;border-radius:8px;cursor:pointer;font-weight:500;transition:all .2s ease}.cancel-btn:hover{background:linear-gradient(135deg,#545b62,#495057);transform:translateY(-1px)}.confirm-delete-btn{background:linear-gradient(135deg,#dc3545,#c82333);color:#fff;border:none;padding:12px 24px;border-radius:8px;cursor:pointer;font-weight:500;transition:all .2s ease}.confirm-delete-btn:hover{background:linear-gradient(135deg,#c82333,#bd2130);transform:translateY(-1px)}@media (max-width: 768px){.manage-students{padding:10px}.header{flex-direction:column;gap:16px;align-items:stretch}.header-actions{justify-content:center;flex-wrap:wrap}.students-table-container{overflow-x:auto}.students-table{min-width:600px}.pagination{flex-direction:column;gap:12px}.modal-actions{flex-direction:column}.cancel-btn,.confirm-delete-btn{width:100%}}.faculty-form-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.faculty-form-container{background:white;border-radius:12px;box-shadow:0 20px 40px #0000001a;width:100%;max-width:800px;max-height:90vh;overflow-y:auto;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.faculty-form-header{display:flex;justify-content:space-between;align-items:center;padding:24px 32px;border-bottom:1px solid #e5e7eb;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border-radius:12px 12px 0 0}.faculty-form-header h2{margin:0;font-size:1.5rem;font-weight:600}.close-btn{background:none;border:none;color:#fff;font-size:24px;cursor:pointer;padding:4px 8px;border-radius:4px;transition:background-color .2s}.close-btn:hover{background-color:#ffffff1a}.faculty-form{padding:32px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px}.form-group.full-width{grid-column:1 / -1}.form-group label{font-weight:500;color:#374151;margin-bottom:8px;font-size:.875rem}.form-group input,.form-group select,.form-group textarea{padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:.875rem;transition:all .2s;background-color:#fafafa}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#667eea;background-color:#fff;box-shadow:0 0 0 3px #667eea1a}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:#ef4444;background-color:#fef2f2}.error-message{color:#ef4444;font-size:.75rem;margin-top:4px;font-weight:500}.form-actions{display:flex;justify-content:flex-end;gap:16px;margin-top:32px;padding-top:24px;border-top:1px solid #e5e7eb}.btn-cancel,.btn-submit{padding:12px 24px;border-radius:8px;font-weight:500;font-size:.875rem;cursor:pointer;transition:all .2s;border:none}.btn-cancel{background-color:#f3f4f6;color:#374151;border:2px solid #e5e7eb}.btn-cancel:hover{background-color:#e5e7eb;border-color:#d1d5db}.btn-submit{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;box-shadow:0 4px 12px #667eea4d}.btn-submit:hover{transform:translateY(-1px);box-shadow:0 6px 16px #667eea66}.btn-submit:active{transform:translateY(0)}@media (max-width: 768px){.faculty-form-overlay{padding:10px}.faculty-form-container{max-height:95vh}.faculty-form-header{padding:20px 24px}.faculty-form{padding:24px}.form-row{grid-template-columns:1fr;gap:16px;margin-bottom:16px}.form-actions{flex-direction:column-reverse;gap:12px}.btn-cancel,.btn-submit{width:100%;padding:14px 24px}}@media (max-width: 480px){.faculty-form-header{padding:16px 20px}.faculty-form-header h2{font-size:1.25rem}.faculty-form{padding:20px}}@media (prefers-color-scheme: dark){.faculty-form-container{background:#1f2937;color:#f9fafb}.faculty-form-header{border-bottom-color:#374151}.form-group label{color:#e5e7eb}.form-group input,.form-group select,.form-group textarea{background-color:#374151;border-color:#4b5563;color:#f9fafb}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background-color:#4b5563;border-color:#667eea}.form-actions{border-top-color:#374151}.btn-cancel{background-color:#374151;color:#e5e7eb;border-color:#4b5563}.btn-cancel:hover{background-color:#4b5563;border-color:#6b7280}}.manage-faculty{padding:20px;background-color:#f8f9fa;min-height:100vh}.page-header{background:linear-gradient(135deg,#43e97b 0%,#38f9d7 100%);color:#fff;padding:30px;border-radius:10px;margin-bottom:30px;box-shadow:0 4px 15px #0000001a}.page-header h1{margin:0 0 10px;font-size:2.5rem;font-weight:600}.page-header p{margin:0;opacity:.9;font-size:1.1rem}.faculty-controls{background:white;padding:25px;border-radius:10px;box-shadow:0 2px 10px #0000001a;margin-bottom:30px}.controls-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px}.search-filter-group{display:flex;gap:15px;flex:1;max-width:600px}.search-box{position:relative;flex:1}.search-box input{width:100%;padding:12px 40px 12px 15px;border:2px solid #e9ecef;border-radius:8px;font-size:1rem;transition:border-color .3s ease}.search-box input:focus{outline:none;border-color:#43e97b}.search-box .search-icon{position:absolute;right:15px;top:50%;transform:translateY(-50%);color:#6c757d}.filter-select{padding:12px 15px;border:2px solid #e9ecef;border-radius:8px;font-size:1rem;background:white;cursor:pointer;transition:border-color .3s ease}.filter-select:focus{outline:none;border-color:#43e97b}.action-buttons{display:flex;gap:10px}.btn{padding:12px 20px;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:8px;transition:all .3s ease}.btn-primary{background:linear-gradient(135deg,#43e97b 0%,#38f9d7 100%);color:#fff}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 5px 15px #43e97b4d}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover{background:#5a6268;transform:translateY(-2px)}.faculty-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.stat-card{background:white;padding:20px;border-radius:10px;box-shadow:0 2px 10px #0000001a;text-align:center;transition:transform .3s ease}.stat-card:hover{transform:translateY(-5px)}.stat-card .icon{font-size:2rem;color:#43e97b;margin-bottom:10px}.stat-card h3{margin:0 0 5px;font-size:2rem;font-weight:700;color:#333}.stat-card p{margin:0;color:#666;font-size:.9rem}.faculty-table-container{background:white;border-radius:10px;box-shadow:0 2px 10px #0000001a;overflow:hidden}.table-header{padding:20px 25px;border-bottom:2px solid #f0f0f0;display:flex;justify-content:space-between;align-items:center}.table-header h2{margin:0;color:#333;font-size:1.5rem}.faculty-table{width:100%;border-collapse:collapse}.faculty-table th,.faculty-table td{padding:15px;text-align:left;border-bottom:1px solid #f0f0f0}.faculty-table th{background:#f8f9fa;font-weight:600;color:#333;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.faculty-table tbody tr{transition:background-color .3s ease}.faculty-table tbody tr:hover{background:#f8f9ff}.faculty-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#43e97b 0%,#38f9d7 100%);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;margin-right:10px}.faculty-info{display:flex;align-items:center}.faculty-details h4{margin:0 0 5px;color:#333;font-size:1rem}.faculty-details p{margin:0;color:#666;font-size:.8rem}.status-badge{padding:5px 12px;border-radius:20px;font-size:.8rem;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.status-active{background:#d4edda;color:#155724}.status-inactive{background:#f8d7da;color:#721c24}.status-pending{background:#fff3cd;color:#856404}.action-buttons-table{display:flex;gap:8px}.btn-sm{padding:6px 12px;font-size:.8rem;border-radius:5px}.btn-info{background:#17a2b8;color:#fff}.btn-info:hover{background:#138496}.btn-warning{background:#ffc107;color:#212529}.btn-warning:hover{background:#e0a800}.btn-danger{background:#dc3545;color:#fff}.btn-danger:hover{background:#c82333}.pagination{display:flex;justify-content:center;align-items:center;padding:20px;gap:10px}.pagination button{padding:8px 12px;border:1px solid #dee2e6;background:white;color:#333;border-radius:5px;cursor:pointer;transition:all .3s ease}.pagination button:hover,.pagination button.active{background:#43e97b;color:#fff;border-color:#43e97b}.pagination button:disabled{opacity:.5;cursor:not-allowed}.empty-state{text-align:center;padding:60px 20px;color:#666}.empty-state .icon{font-size:4rem;color:#dee2e6;margin-bottom:20px}.empty-state h3{margin:0 0 10px;color:#333}.empty-state p{margin:0;font-size:1.1rem}.loading-spinner{display:flex;justify-content:center;align-items:center;padding:60px}@media (max-width: 1200px){.controls-row{flex-direction:column;align-items:stretch}.search-filter-group{max-width:none}}@media (max-width: 768px){.manage-faculty{padding:10px}.page-header{padding:20px}.page-header h1{font-size:2rem}.faculty-controls{padding:15px}.search-filter-group{flex-direction:column}.faculty-stats{grid-template-columns:1fr}.faculty-table{font-size:.8rem}.faculty-table th,.faculty-table td{padding:10px 8px}.action-buttons-table{flex-direction:column;gap:5px}}.schedule-manager{padding:2rem;max-width:1400px;margin:0 auto}.schedule-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.schedule-header h2{color:var(--primary-color, #2c3e50);margin:0;font-size:2rem;font-weight:600}.header-actions{display:flex;align-items:center;gap:1rem}.view-modes{display:flex;background:#f8f9fa;border-radius:8px;padding:.25rem;border:1px solid #e1e8ed}.view-btn{padding:.5rem 1rem;border:none;background:transparent;border-radius:6px;cursor:pointer;font-weight:500;transition:all .3s ease;color:#666}.view-btn.active{background:var(--primary-color, #3498db);color:#fff}.view-btn:hover:not(.active){background:#e9ecef}.schedule-filters{display:flex;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.filter-group{flex:1;min-width:200px}.filter-select{width:100%;padding:.75rem;border:2px solid #e1e8ed;border-radius:8px;font-size:1rem;transition:all .3s ease}.filter-select:focus{outline:none;border-color:var(--primary-color, #3498db);box-shadow:0 0 0 3px #3498db1a}.week-view{background:white;border-radius:12px;overflow:hidden;box-shadow:0 4px 6px #0000001a;border:1px solid #e1e8ed}.week-header{display:grid;grid-template-columns:80px repeat(6,1fr);background:#f8f9fa;border-bottom:2px solid #e1e8ed}.time-column,.day-column{padding:1rem;font-weight:600;text-align:center;color:var(--primary-color, #2c3e50);border-right:1px solid #e1e8ed}.time-column{background:#e9ecef}.week-body{max-height:600px;overflow-y:auto}.time-row{display:grid;grid-template-columns:80px repeat(6,1fr);min-height:40px;border-bottom:1px solid #f1f3f4}.time-cell{padding:.5rem;font-size:.85rem;color:#666;background:#f8f9fa;border-right:1px solid #e1e8ed;display:flex;align-items:center;justify-content:center}.schedule-cell{border-right:1px solid #e1e8ed;position:relative;min-height:40px}.schedule-item{position:absolute;left:2px;right:2px;top:2px;padding:.5rem;border-radius:6px;cursor:pointer;font-size:.8rem;line-height:1.2;transition:all .3s ease;overflow:hidden}.schedule-item:hover{transform:scale(1.02);z-index:10;box-shadow:0 4px 12px #00000026}.schedule-item.regular{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff}.schedule-item.exam{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff}.schedule-item.event{background:linear-gradient(135deg,#f39c12,#e67e22);color:#fff}.schedule-title{font-weight:600;margin-bottom:.25rem}.schedule-class,.schedule-teacher,.schedule-room{font-size:.7rem;opacity:.9;margin-bottom:.1rem}.list-view{display:flex;flex-direction:column;gap:2rem}.day-section{background:white;border-radius:12px;padding:1.5rem;box-shadow:0 4px 6px #0000001a;border:1px solid #e1e8ed}.day-title{color:var(--primary-color, #2c3e50);margin:0 0 1rem;font-size:1.5rem;font-weight:600;padding-bottom:.5rem;border-bottom:2px solid #e1e8ed}.no-schedules{color:#666;font-style:italic;text-align:center;padding:2rem}.schedules-list{display:flex;flex-direction:column;gap:1rem}.schedule-card{display:flex;align-items:center;gap:1rem;padding:1rem;border-radius:8px;border-left:4px solid;transition:all .3s ease}.schedule-card:hover{transform:translate(4px);box-shadow:0 4px 12px #0000001a}.schedule-card.regular{background:#f8f9ff;border-left-color:#3498db}.schedule-card.exam{background:#fff8f8;border-left-color:#e74c3c}.schedule-card.event{background:#fffaf8;border-left-color:#f39c12}.schedule-time{font-weight:600;color:var(--primary-color, #2c3e50);min-width:120px;font-size:1.1rem}.schedule-info{flex:1}.schedule-info h4{margin:0 0 .5rem;color:var(--primary-color, #2c3e50);font-size:1.2rem}.schedule-info p{margin:.25rem 0;color:#555;font-size:.95rem}.schedule-actions{display:flex;gap:.5rem}.btn-edit,.btn-delete{padding:.5rem 1rem;border:none;border-radius:6px;font-size:.9rem;cursor:pointer;transition:all .3s ease;font-weight:500}.btn-edit{background:#3498db;color:#fff}.btn-edit:hover{background:#2980b9}.btn-delete{background:#e74c3c;color:#fff}.btn-delete:hover{background:#c0392b}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.schedule-form-modal{background:white;border-radius:12px;width:100%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;position:relative;z-index:1001}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e1e8ed;background:#f8f9fa;border-radius:12px 12px 0 0}.modal-header h3{margin:0;color:var(--primary-color, #2c3e50);font-size:1.5rem;font-weight:600}.close-btn{background:none;border:none;font-size:2rem;cursor:pointer;color:#666;padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease}.close-btn:hover{background:#e74c3c;color:#fff}.schedule-form{padding:2rem}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem}.form-group{display:flex;flex-direction:column}.form-group label{margin-bottom:.5rem;font-weight:600;color:#2c3e50;font-size:.95rem}.form-group input,.form-group select,.form-group textarea{padding:.75rem;border:2px solid #e1e8ed;border-radius:8px;font-size:1rem;transition:all .3s ease;font-family:inherit;cursor:pointer}.form-group select{position:relative;z-index:1002;appearance:auto;-webkit-appearance:auto;-moz-appearance:auto;pointer-events:auto}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color, #3498db);box-shadow:0 0 0 3px #3498db1a}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:1rem;color:#555;font-weight:500}.checkbox-label input[type=checkbox]{width:auto;margin:0}.form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e1e8ed}.btn{padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;min-width:120px}.btn-primary:hover:not(:disabled){background:#2980b9;transform:translateY(-1px)}.btn-secondary{background:#95a5a6;color:#fff}.btn-secondary:hover{background:#7f8c8d}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.loading-message{text-align:center;padding:3rem;color:#666;font-size:1.1rem}@media (prefers-color-scheme: dark){.schedule-manager{background:#1a1a1a;color:#e1e1e1}.week-view,.day-section{background:#2d2d2d;border-color:#404040;color:#e1e1e1}.week-header,.time-cell{background:#1a1a1a;border-color:#404040}.schedule-form-modal{background:#2d2d2d;color:#e1e1e1}.modal-header,.view-modes{background:#1a1a1a;border-color:#404040}.form-group input,.form-group select,.form-group textarea,.filter-select{background:#1a1a1a;border-color:#404040;color:#e1e1e1}.schedule-card.regular{background:#1a2332}.schedule-card.exam{background:#321a1a}.schedule-card.event{background:#322a1a}.form-actions{border-color:#404040}}@media (max-width: 768px){.schedule-manager{padding:1rem}.schedule-header{flex-direction:column;align-items:stretch}.header-actions{justify-content:space-between}.schedule-filters{flex-direction:column}.week-view{overflow-x:auto}.week-header,.time-row{min-width:600px}.schedule-form-modal{margin:0;border-radius:0;max-height:100vh}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column}.btn{width:100%}.schedule-card{flex-direction:column;align-items:stretch;gap:.5rem}.schedule-time{min-width:auto}.schedule-actions{justify-content:space-between}.btn-edit,.btn-delete{flex:1}}@media (max-width: 480px){.view-modes{width:100%}.view-btn{flex:1;text-align:center}.schedule-item{font-size:.7rem}.schedule-title{font-size:.75rem}.schedule-class,.schedule-teacher,.schedule-room{font-size:.65rem}}.faculty-assignment{padding:20px;max-width:1400px;margin:0 auto;background:var(--bg-primary, #0f0f10);min-height:100vh;color-scheme:dark}.assignment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid var(--border-color, #e1e5e9)}.assignment-header h2{color:var(--text-primary, #2c3e50);font-size:2rem;font-weight:600;margin:0}.header-actions{display:flex;gap:20px;align-items:center}.view-modes{display:flex;gap:10px;background:var(--bg-secondary, #f8f9fa);padding:4px;border-radius:8px;border:1px solid var(--border-color, #e1e5e9)}.view-btn{padding:8px 16px;border:none;background:transparent;color:var(--text-secondary, #6c757d);border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s ease}.view-btn:hover{background:var(--bg-primary, #ffffff);color:var(--text-primary, #2c3e50)}.view-btn.active{background:var(--primary-color, #3498db);color:#fff;box-shadow:0 2px 4px #3498db33}.assignment-filters{display:flex;gap:20px;margin-bottom:30px;padding:20px;background:var(--bg-secondary, #f8f9fa);border-radius:12px;border:1px solid var(--border-color, #e1e5e9)}.filter-group{flex:1;max-width:300px}.filter-select{width:100%;padding:12px 16px;border:1px solid var(--border-color, #e1e5e9);border-radius:8px;background:#1a1a1b;color:#e6e6e6;font-size:14px;transition:all .2s ease}.filter-select:focus{outline:none;border-color:#2d7dd2;box-shadow:0 0 0 2px #2d7dd240}.filter-select option{background-color:#1f1f20;color:#f0f0f0}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.assignment-form-modal{background:var(--bg-primary, #ffffff);border-radius:16px;width:100%;max-width:800px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 40px #0000001a}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 30px;border-bottom:1px solid var(--border-color, #e1e5e9)}.modal-header h3{color:var(--text-primary, #2c3e50);font-size:1.5rem;font-weight:600;margin:0}.close-btn{background:none;border:none;font-size:24px;color:var(--text-secondary, #6c757d);cursor:pointer;padding:5px;border-radius:50%;width:35px;height:35px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.close-btn:hover{background:var(--bg-secondary, #f8f9fa);color:var(--text-primary, #2c3e50)}.assignment-form{padding:30px}.form-row{display:flex;gap:20px;margin-bottom:20px}.form-group{flex:1}.form-group label{display:block;margin-bottom:8px;color:var(--text-primary, #2c3e50);font-weight:500;font-size:14px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 16px;border:1px solid var(--border-color, #e1e5e9);border-radius:8px;background:#1a1a1b;color:#e6e6e6;font-size:14px;transition:all .2s ease;box-sizing:border-box}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#2d7dd2;box-shadow:0 0 0 2px #2d7dd240}.form-group textarea{resize:vertical;min-height:80px}.form-actions{display:flex;gap:15px;justify-content:flex-end;margin-top:30px;padding-top:20px;border-top:1px solid var(--border-color, #e1e5e9)}.btn{padding:12px 24px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--primary-color, #3498db);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-hover, #2980b9);transform:translateY(-1px);box-shadow:0 4px 12px #3498db4d}.btn-secondary{background:var(--bg-secondary, #f8f9fa);color:var(--text-secondary, #6c757d);border:1px solid var(--border-color, #e1e5e9)}.btn-secondary:hover{background:var(--bg-primary, #ffffff);color:var(--text-primary, #2c3e50);border-color:var(--text-secondary, #6c757d)}.btn-edit{background:var(--warning-color, #f39c12);color:#fff;padding:8px 16px;font-size:12px}.btn-edit:hover{background:var(--warning-hover, #e67e22)}.btn-delete{background:var(--danger-color, #e74c3c);color:#fff;padding:8px 16px;font-size:12px}.btn-delete:hover{background:var(--danger-hover, #c0392b)}.btn-complete{background:var(--success-color, #27ae60);color:#fff;padding:8px 16px;font-size:12px}.btn-complete:hover{background:#1e8e4c}.btn-complete.disabled,.btn-complete:disabled{opacity:.6;cursor:default;background:#2c6f49}.assignments-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:20px}.assignment-card{background:var(--bg-primary, #ffffff);border:1px solid var(--border-color, #e1e5e9);border-radius:12px;padding:20px;transition:all .2s ease;position:relative;overflow:hidden}.assignment-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--primary-color, #3498db)}.assignment-card.primary:before{background:var(--primary-color, #3498db)}.assignment-card.secondary:before{background:var(--warning-color, #f39c12)}.assignment-card.substitute:before{background:var(--info-color, #17a2b8)}.assignment-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000001a;border-color:var(--primary-color, #3498db)}.assignment-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px}.assignment-card .assignment-header h3{color:var(--text-primary, #2c3e50);font-size:1.1rem;font-weight:600;margin:0;line-height:1.3}.assignment-actions{display:flex;gap:8px}.assignment-details p{margin:8px 0;color:var(--text-secondary, #6c757d);font-size:14px;line-height:1.4}.assignment-details strong{color:var(--text-primary, #2c3e50);font-weight:500}.faculty-workload-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.faculty-workload-card{background:var(--bg-primary, #ffffff);border:1px solid var(--border-color, #e1e5e9);border-radius:12px;padding:20px;transition:all .2s ease}.faculty-workload-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000001a;border-color:var(--primary-color, #3498db)}.faculty-fields{display:block}.faculty-fields p{margin:4px 0;line-height:1.4}.field-label{color:var(--text-primary, #eaeaea);font-weight:600}.field-value{color:var(--text-secondary, #c0c0c0)}.faculty-info strong{color:var(--text-primary, #2c3e50);font-weight:500}.workload-info{margin:15px 0}.workload-bar{width:100%;height:8px;background:var(--bg-secondary, #f8f9fa);border-radius:4px;overflow:hidden;margin-bottom:8px}.workload-fill{height:100%;transition:width .3s ease;border-radius:4px}.workload-text{font-size:14px;color:var(--text-secondary, #6c757d);margin:0;text-align:center}.faculty-assignments{margin-top:15px;padding-top:15px;border-top:1px solid var(--border-color, #e1e5e9)}.faculty-assignments h4{color:var(--text-primary, #2c3e50);font-size:14px;font-weight:600;margin:0 0 10px}.mini-assignment{background:var(--bg-secondary, #f8f9fa);padding:8px 12px;border-radius:6px;margin-bottom:5px;font-size:12px;color:var(--text-secondary, #6c757d)}.loading-message{text-align:center;padding:60px 20px;color:var(--text-secondary, #6c757d);font-size:16px}.no-assignments{text-align:center;padding:60px 20px;color:var(--text-secondary, #6c757d);font-size:16px;background:var(--bg-secondary, #f8f9fa);border-radius:12px;border:2px dashed var(--border-color, #e1e5e9)}@media (max-width: 768px){.faculty-assignment{padding:15px}.assignment-header{flex-direction:column;gap:20px;align-items:stretch}.header-actions{flex-direction:column;gap:15px}.view-modes{justify-content:center}.assignment-filters,.form-row{flex-direction:column;gap:15px}.assignments-grid,.faculty-workload-grid{grid-template-columns:1fr}.assignment-form-modal{margin:10px;max-height:calc(100vh - 20px)}.assignment-form{padding:20px}.form-actions{flex-direction:column}.assignment-card .assignment-header{flex-direction:column;gap:10px;align-items:stretch}.assignment-actions{justify-content:flex-end}}@media (max-width: 480px){.assignment-header h2{font-size:1.5rem}.modal-header{padding:20px}.modal-header h3{font-size:1.3rem}.assignment-form{padding:15px}.btn{padding:10px 20px;font-size:13px}}@media (prefers-color-scheme: dark){.faculty-assignment{--bg-primary: #1a1a1a;--bg-secondary: #2d2d2d;--text-primary: #ffffff;--text-secondary: #b0b0b0;--border-color: #404040;--primary-color: #4a9eff;--primary-hover: #357abd;--warning-color: #ffa726;--warning-hover: #ff9800;--danger-color: #ef5350;--danger-hover: #e53935;--info-color: #26c6da}}.assignment-form-modal::-webkit-scrollbar{width:6px}.assignment-form-modal::-webkit-scrollbar-track{background:var(--bg-secondary, #f8f9fa)}.assignment-form-modal::-webkit-scrollbar-thumb{background:var(--border-color, #e1e5e9);border-radius:3px}.assignment-form-modal::-webkit-scrollbar-thumb:hover{background:var(--text-secondary, #6c757d)}.enroll-container{padding:16px}.enroll-title{font-size:28px;font-weight:700;margin-bottom:12px}.metrics{display:grid;grid-template-columns:repeat(3,minmax(160px,1fr));gap:12px;margin:12px 0 16px}.metric{background:#f7f8fb;border:1px solid #e6e8ef;border-radius:8px;padding:12px}.metric-label{font-size:12px;color:#6b7280}.metric-value{display:block;font-size:20px;font-weight:600;color:#111827}.filters{display:flex;gap:12px;align-items:center;margin-bottom:12px}.search-input{padding:8px 10px;border:1px solid #d1d5db;border-radius:6px;min-width:240px}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.course-card{border:1px solid #e5e7eb;border-radius:8px;padding:12px;background:#fff;box-shadow:0 1px 2px #0000000a}.card-header{display:flex;justify-content:space-between;align-items:center}.card-sub{color:#4b5563;font-size:13px;margin-top:4px}.card-actions{display:flex;gap:8px;margin-top:8px}.card-actions button{padding:8px 12px;border-radius:6px;border:1px solid #d1d5db;background:#f9fafb;cursor:pointer}.card-actions button.secondary{background:#fff}.status-badge{font-size:12px;font-weight:600;padding:4px 8px;border-radius:999px;border:1px solid #d1d5db}.status-badge.active{color:#065f46;background:#ecfdf5;border-color:#6ee7b7}.status-badge.inactive{color:#7c2d12;background:#fff7ed;border-color:#fdba74}.status-badge.submitted{color:#1f2937;background:#f3f4f6}.status-badge.approved{color:#064e3b;background:#d1fae5;border-color:#34d399}.modal{border:1px solid #e5e7eb;border-radius:8px;padding:12px;background:#fff}.admin-grades-page{padding:24px}.page-title{font-size:24px;font-weight:700;margin:8px 0 12px}.muted{color:#6b7280;margin-top:-4px}.section-card{background:#ffffff;border:1px solid #e5e7eb;border-radius:12px;padding:16px;box-shadow:0 2px 6px #0000000f;margin-bottom:24px}.section-title{font-size:18px;font-weight:600}.info-text{color:#374151;margin:6px 0 12px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.grid-span-2{grid-column:1 / span 2}.checkbox-row{display:flex;align-items:center;gap:8px}label span{display:block;font-size:12px;color:#6b7280;margin-bottom:6px}input,select{padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;background:#f9fafb}input:focus,select:focus{outline:none;border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa40;background:#fff}.btn{padding:10px 16px;border-radius:8px;border:1px solid transparent;cursor:pointer;font-weight:600}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:#f3f4f6;color:#111827;border-color:#e5e7eb}.btn-secondary:hover{background:#e5e7eb}.recent-grades{margin-top:32px}.list-header{display:flex;align-items:center;justify-content:space-between}.table-wrap{overflow-x:auto;margin-top:12px}.grades-table{width:100%;border-collapse:collapse}.grades-table thead th{text-align:left;padding:10px;border-bottom:2px solid #e5e7eb;background:#f9fafb;color:#374151;font-weight:600}.grades-table tbody td{padding:10px;border-bottom:1px solid #f1f5f9}.grades-table tbody tr:hover{background:#f9fafb}.empty{padding:12px;color:#6b7280}.badge{display:inline-block;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700}.badge-success{background:#ecfdf5;color:#065f46;border:1px solid #6ee7b7}.badge-neutral{background:#f3f4f6;color:#374151;border:1px solid #d1d5db}.badge-grade{background:#e3f2fd;color:#1e3a8a;border:1px solid #93c5fd}.badge-muted{background:#f3f4f6;color:#6b7280;border:1px solid #d1d5db}.fee-management{min-height:100vh;background:#f7f8fa;padding:24px}.container{max-width:1120px;margin:0 auto}.page-header{margin-bottom:24px;border-bottom:2px solid #eef0f4;padding-bottom:12px}.page-title{margin:0 0 6px;font-size:2rem;font-weight:700;color:#222}.page-subtitle{margin:0;color:#666;font-size:.95rem}.tabs{margin-bottom:24px}.tabs-nav{display:flex;gap:24px;border-bottom:1px solid #e5e7eb}.tab{padding:10px 4px;font-size:.95rem;font-weight:600;color:#6b7280;border-bottom:2px solid transparent;background:transparent;cursor:pointer}.tab:hover{color:#374151}.tab.active{color:#2563eb;border-color:#2563eb}.sections{display:flex;flex-direction:column;gap:24px}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.stat-card{display:flex;align-items:center;gap:16px;background:#fff;border:1px solid #e9ecef;border-radius:10px;box-shadow:0 2px 10px #0000000f;padding:20px}.stat-icon{width:44px;height:44px;border-radius:50%;display:grid;place-items:center}.stat-icon .icon{width:24px;height:24px}.stat-icon--green{background:#e9f7ef}.stat-icon--red{background:#fdecec}.stat-icon--blue{background:#eaf2fd}.stat-content{display:flex;flex-direction:column}.stat-label{color:#6b7280;font-size:.9rem;font-weight:600;margin:0}.stat-value{color:#111827;font-size:1.4rem;font-weight:700;margin:2px 0 0}.actions{display:flex;gap:12px}.btn{display:inline-flex;align-items:center;gap:8px;border:none;border-radius:8px;padding:10px 14px;font-weight:600;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.btn:hover{transform:translateY(-1px);box-shadow:0 3px 10px #00000014}.btn-primary{background:#2563eb;color:#fff}.btn-success{background:#16a34a;color:#fff}.btn-secondary{background:#e5e7eb;color:#374151}.loader{display:grid;place-items:center;height:16rem}.spinner{width:48px;height:48px;border:4px solid #e5e7eb;border-top-color:#2563eb;border-radius:50%;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.fee-management table{width:100%;border-collapse:collapse}.fee-management thead{background:#f8fafc}.fee-management th{text-align:left;font-size:.78rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;padding:12px 16px;border-bottom:1px solid #e5e7eb}.fee-management td{padding:12px 16px;font-size:.92rem;color:#111827;border-bottom:1px solid #eef0f4}.fee-management tbody tr:hover{background:#f9fafb}.fee-management .overflow-x-auto{overflow-x:auto}.fee-management .section-block{background:#fff;border:1px solid #e9ecef;border-radius:10px;box-shadow:0 2px 10px #0000000f;overflow:hidden}.fee-management input[type=text],.fee-management input[type=number],.fee-management select{width:100%;border:1px solid #d1d5db;border-radius:8px;padding:10px 12px;font-size:.95rem;outline:none;transition:box-shadow .15s ease,border-color .15s ease}.fee-management input[type=text]:focus,.fee-management input[type=number]:focus,.fee-management select:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb33}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(55,65,81,.5);display:flex;align-items:flex-start;justify-content:center;padding:60px 16px;z-index:50}.modal-card{width:100%;max-width:800px;max-height:85vh;display:flex;flex-direction:column;background:#fff;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 8px 30px #0000002e;padding:20px}.modal-content{margin-top:8px;overflow-y:auto}.modal-title{margin:0 0 16px;font-size:1.25rem;font-weight:700;color:#111827}.modal-card label{display:block;margin:0 0 8px;font-size:.9rem;font-weight:600;color:#374151}.modal-card .space-y-4>*+*{margin-top:16px}.modal-card input,.modal-card select{width:100%}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.components-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.component-item{display:flex;justify-content:space-between;align-items:center;background:#f9fafb;border:1px solid #eef0f4;border-radius:8px;padding:10px 12px}.component-name{color:#374151;font-weight:600}.component-amount{color:#111827}@media (max-width: 1024px){.stats-grid{grid-template-columns:1fr 1fr}}@media (max-width: 640px){.fee-management{padding:16px}.stats-grid{grid-template-columns:1fr}.tabs-nav{gap:12px}.page-title{font-size:1.7rem}}.modal-header{display:flex;align-items:center;justify-content:space-between}.modal-close{border:none;background:transparent;color:#6b7280;font-size:20px;line-height:1;cursor:pointer}.modal-close:hover{color:#111827}.admin-login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);padding:20px}.admin-login-card{background:white;padding:40px;border-radius:10px;box-shadow:0 15px 35px #0000001a;width:100%;max-width:400px}.admin-login-header{text-align:center;margin-bottom:30px}.admin-login-header h2{color:#333;margin-bottom:10px;font-size:28px}.admin-login-header p{color:#666;font-size:16px}.admin-login-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:600;color:#333;font-size:14px}.form-group input{padding:12px;border:2px solid #e1e5e9;border-radius:6px;font-size:16px;transition:border-color .3s ease}.form-group input:focus{outline:none;border-color:#667eea}.login-btn{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;padding:14px;border-radius:6px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s ease}.login-btn:hover{transform:translateY(-2px)}.error-message{background:#f8d7da;color:#721c24;padding:12px;border-radius:6px;font-size:14px;text-align:center}.faculty-dashboard{padding:20px;background-color:#f8f9fa;min-height:100vh}.dashboard-header{background:linear-gradient(135deg,#4facfe 0%,#00f2fe 100%);color:#fff;padding:30px;border-radius:15px;margin-bottom:30px;box-shadow:0 8px 25px #4facfe33}.faculty-avatar{width:80px;height:80px;border-radius:50%;background:rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;font-size:2rem;color:#fff;font-weight:600}.stat-icon.classes{background:linear-gradient(135deg,#4facfe 0%,#00f2fe 100%)}.stat-icon.students{background:linear-gradient(135deg,#43e97b 0%,#38f9d7 100%)}.stat-icon.assignments{background:linear-gradient(135deg,#fa709a 0%,#fee140 100%)}.stat-icon.attendance{background:linear-gradient(135deg,#a8edea 0%,#fed6e3 100%)}.section-header .btn{background:linear-gradient(135deg,#4facfe 0%,#00f2fe 100%);color:#fff;border:none;padding:8px 16px;border-radius:8px;text-decoration:none;font-size:.9rem;transition:transform .2s ease}.action-card:hover{border-color:#4facfe;background:#f8fcff;transform:translateY(-3px);box-shadow:0 5px 15px #4facfe1a}.action-card .icon{margin-right:15px;font-size:1.5rem;color:#4facfe}.today-schedule{max-height:400px;overflow-y:auto}.schedule-item{display:flex;align-items:center;padding:15px 0;border-bottom:1px solid #f0f0f0;transition:background-color .3s ease}.schedule-item:last-child{border-bottom:none}.schedule-item:hover{background:#f8fcff;margin:0 -25px;padding:15px 25px;border-radius:8px}.schedule-time{width:80px;text-align:center;background:linear-gradient(135deg,#4facfe 0%,#00f2fe 100%);color:#fff;padding:10px;border-radius:8px;margin-right:15px;font-size:.8rem;font-weight:600}.schedule-details{flex:1}.schedule-details h4{margin:0 0 5px;color:#333;font-size:1rem}.schedule-details p{margin:0;color:#666;font-size:.8rem}.schedule-status{padding:5px 12px;border-radius:20px;font-size:.7rem;font-weight:600;text-transform:uppercase}.status-upcoming{background:#fff3cd;color:#856404}.status-ongoing{background:#d4edda;color:#155724}.status-completed{background:#f8d7da;color:#721c24}.recent-assignments{max-height:350px;overflow-y:auto}.assignment-item:hover{border-color:#4facfe;background:#f8fcff}.assignment-icon{width:40px;height:40px;border-radius:8px;background:linear-gradient(135deg,#4facfe 0%,#00f2fe 100%);display:flex;align-items:center;justify-content:center;margin-right:15px;color:#fff;font-size:1rem}.assignment-stats{text-align:right;color:#666;font-size:.8rem}.submissions-count{font-weight:600;color:#4facfe}.class-performance{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}.performance-card{background:#f8fcff;padding:20px;border-radius:10px;border-left:4px solid #4facfe;text-align:center}.performance-card h4{margin:0 0 10px;color:#333;font-size:1rem}.performance-score{font-size:2rem;font-weight:700;color:#4facfe;margin-bottom:5px}.performance-label{color:#666;font-size:.8rem}.calendar-nav button:hover{background:#4facfe;color:#fff;border-color:#4facfe}.calendar-day:hover{background:#f8fcff}.calendar-day.today{background:#4facfe;color:#fff}.calendar-day.has-class{background:#fff3cd;color:#856404}.notification-item{padding:15px;border-left:4px solid #4facfe;background:#f8fcff;margin-bottom:15px;border-radius:0 8px 8px 0}@media (max-width: 1200px){.dashboard-content{grid-template-columns:1fr}.header-content{flex-direction:column;text-align:center;gap:20px}.class-performance{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.faculty-dashboard{padding:10px}.dashboard-header{padding:20px}.welcome-section h1{font-size:2rem}.dashboard-stats,.quick-actions,.class-performance{grid-template-columns:1fr}.stat-card{flex-direction:column;text-align:center}.stat-icon{margin-right:0;margin-bottom:15px}.schedule-item{flex-direction:column;align-items:flex-start;gap:10px}.schedule-time{width:auto;margin-right:0}}.attendance-page{padding:32px 16px;max-width:1200px;margin:0 auto}.attendance-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:16px}.attendance-header h1{margin:0 0 4px;color:#1a237e}.attendance-header p{margin:0;color:#666}.summary{display:flex;gap:8px}.summary-chip{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-size:.9rem;border:1px solid #ddd;background:#fafafa}.summary-chip.present{color:#1b5e20;background:#e8f5e9;border-color:#c8e6c9}.summary-chip.absent{color:#b71c1c;background:#ffebee;border-color:#ffcdd2}.summary-chip.total{color:#1a237e;background:#e3f2fd;border-color:#bbdefb}.attendance-toolbar{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;align-items:end;background:#fff;border:1px solid #e0e0e0;border-radius:12px;padding:16px;margin-bottom:12px;box-shadow:0 1px 2px #0000000a}.field{display:flex;flex-direction:column;gap:6px}.field.grow{grid-column:span 2}.field label{font-weight:600;color:#333}.field input,.field select{padding:8px 10px;border:1px solid #ddd;border-radius:8px}.date-input{display:flex;align-items:center;gap:8px}.date-input input{flex:1}.actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.btn{padding:8px 12px;border-radius:8px;background:#f5f5f5;border:1px solid #ddd;color:#333;cursor:pointer}.btn:hover{background:#eee}.btn.primary{background:#1a237e;color:#fff;border-color:#1a237e}.btn.primary:hover{background:#121a5d}.inline-message{margin:12px 0;padding:10px 12px;border-radius:8px;background:#e3f2fd;color:#1a237e}.inline-message.error{background:#ffebee;color:#b71c1c}.inline-message.info{background:#e3f2fd;color:#1a237e}.table-wrapper{overflow-x:auto;border:1px solid #eee;border-radius:12px}.attendance-table{width:100%;border-collapse:collapse}.attendance-table thead th{position:sticky;top:0;background:#f8f9fa;text-align:left;padding:10px;border-bottom:1px solid #e0e0e0}.attendance-table tbody td{padding:10px;border-bottom:1px solid #f0f0f0}.attendance-table tbody tr:hover{background:#fafafa}.attendance-table tbody tr.selected{background:#eef4ff}.status-present{color:#1b5e20}.status-absent{color:#b71c1c}.toggle-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;border:1px solid #ddd;cursor:pointer}.toggle-btn.present{background:#e8f5e9;color:#1b5e20;border-color:#c8e6c9}.toggle-btn.absent{background:#ffebee;color:#b71c1c;border-color:#ffcdd2}.secondary-actions{margin-top:16px}.secondary-actions .kbd-tip{color:#666;margin-left:8px}.records{margin-top:24px}.records h2{margin:0 0 10px}.muted{color:#666}.error{color:#b71c1c}@media (max-width: 680px){.attendance-toolbar{grid-template-columns:1fr}.field.grow{grid-column:auto}.actions{justify-content:stretch}.btn{width:100%}.toggle-btn{width:100%;justify-content:center}.attendance-table tbody td{padding:12px 8px}.summary{flex-wrap:wrap}}.faculty-login-page{min-height:100vh;background:linear-gradient(135deg,#4facfe 0%,#00f2fe 100%);display:flex;align-items:center;justify-content:center;padding:20px}.login-icon{background:linear-gradient(135deg,#4facfe 0%,#00f2fe 100%);color:#fff;width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;margin:0 auto 20px}.input-icon{margin-right:8px;color:#4facfe}.form-group input:focus{outline:none;border-color:#4facfe}.password-toggle:hover{color:#4facfe}.login-btn{width:100%;background:linear-gradient(135deg,#4facfe 0%,#00f2fe 100%);color:#fff;border:none;padding:15px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s ease;margin-bottom:20px}@media (max-width: 768px){.faculty-login-page{padding:10px}.login-card{padding:30px 20px}.login-icon{width:60px;height:60px;font-size:1.5rem}.login-header h2{font-size:1.5rem}}.student-dashboard{padding:20px;background-color:#f8f9fa;min-height:100vh}.dashboard-header{background:linear-gradient(135deg,#fa709a 0%,#fee140 100%);color:#fff;padding:30px;border-radius:15px;margin-bottom:30px;box-shadow:0 8px 25px #fa709a33}.header-content{display:flex;justify-content:space-between;align-items:center}.welcome-section h1{margin:0 0 10px;font-size:2.5rem;font-weight:600}.welcome-section p{margin:0;opacity:.9;font-size:1.1rem}.student-avatar{width:80px;height:80px;border-radius:50%;background:rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;font-size:2rem;color:#fff;font-weight:600}.dashboard-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:30px}.stat-card{background:white;padding:25px;border-radius:12px;box-shadow:0 4px 15px #0000001a;display:flex;align-items:center;transition:all .3s ease}.stat-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #00000026}.stat-icon{width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:#fff;margin-right:20px}.stat-icon.courses{background:linear-gradient(135deg,#4facfe 0%,#00f2fe 100%)}.stat-icon.assignments{background:linear-gradient(135deg,#43e97b 0%,#38f9d7 100%)}.stat-icon.attendance{background:linear-gradient(135deg,#fa709a 0%,#fee140 100%)}.stat-icon.gpa{background:linear-gradient(135deg,#a8edea 0%,#fed6e3 100%)}.stat-content h3{margin:0 0 5px;font-size:2rem;font-weight:700;color:#333}.stat-content p{margin:0;color:#666;font-size:.9rem}.dashboard-content{display:grid;grid-template-columns:2fr 1fr;gap:30px}.main-content{display:flex;flex-direction:column;gap:30px}.sidebar-content{display:flex;flex-direction:column;gap:20px}.dashboard-section{background:white;padding:25px;border-radius:12px;box-shadow:0 4px 15px #0000001a}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #f0f0f0}.section-header h2{margin:0;color:#333;font-size:1.5rem}.section-header .btn{background:linear-gradient(135deg,#fa709a 0%,#fee140 100%);color:#fff;border:none;padding:8px 16px;border-radius:8px;text-decoration:none;font-size:.9rem;transition:transform .2s ease}.section-header .btn:hover{transform:translateY(-2px)}.quick-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}.action-card{display:flex;align-items:center;padding:20px;background:white;border:2px solid #f0f0f0;border-radius:10px;text-decoration:none;color:#333;transition:all .3s ease}.action-card:hover{border-color:#fa709a;background:#fff8fb;transform:translateY(-3px);box-shadow:0 5px 15px #fa709a1a}.action-card .icon{margin-right:15px;font-size:1.5rem;color:#fa709a}.action-card h3{margin:0 0 5px;font-size:1rem;font-weight:600}.action-card p{margin:0;font-size:.8rem;color:#666}.recent-courses{max-height:400px;overflow-y:auto}.course-item{display:flex;align-items:center;padding:15px 0;border-bottom:1px solid #f0f0f0;transition:background-color .3s ease}.course-item:last-child{border-bottom:none}.course-item:hover{background:#f8f9ff;margin:0 -25px;padding:15px 25px;border-radius:8px}.course-icon{width:50px;height:50px;border-radius:10px;background:linear-gradient(135deg,#fa709a 0%,#fee140 100%);display:flex;align-items:center;justify-content:center;margin-right:15px;color:#fff;font-size:1.2rem}.course-details{flex:1}.course-details h4{margin:0 0 5px;color:#333;font-size:1rem}.course-details p{margin:0;color:#666;font-size:.8rem}.course-progress{text-align:right}.progress-circle{width:40px;height:40px;border-radius:50%;background:conic-gradient(#fa709a 0deg,#fa709a calc(var(--progress) * 3.6deg),#f0f0f0 calc(var(--progress) * 3.6deg));display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:600;color:#333;position:relative}.progress-circle:before{content:"";position:absolute;width:30px;height:30px;border-radius:50%;background:white}.progress-circle span{position:relative;z-index:1}.upcoming-assignments{max-height:350px;overflow-y:auto}.assignment-item{display:flex;align-items:center;padding:15px;border:1px solid #f0f0f0;border-radius:8px;margin-bottom:15px;transition:all .3s ease}.assignment-item:last-child{margin-bottom:0}.assignment-item:hover{border-color:#fa709a;background:#fff8fb}.assignment-priority{width:4px;height:50px;border-radius:2px;margin-right:15px}.priority-high{background:#dc3545}.priority-medium{background:#ffc107}.priority-low{background:#28a745}.assignment-details{flex:1}.assignment-details h4{margin:0 0 5px;color:#333;font-size:.9rem}.assignment-details p{margin:0;color:#666;font-size:.8rem}.assignment-due{text-align:right;color:#666;font-size:.8rem}.due-date{font-weight:600;color:#fa709a}.calendar-widget{background:white;border-radius:12px;box-shadow:0 4px 15px #0000001a;padding:20px}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.calendar-header h3{margin:0;color:#333}.calendar-nav{display:flex;gap:10px}.calendar-nav button{background:none;border:1px solid #dee2e6;border-radius:5px;padding:5px 10px;cursor:pointer;color:#666;transition:all .3s ease}.calendar-nav button:hover{background:#fa709a;color:#fff;border-color:#fa709a}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.calendar-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:5px;font-size:.8rem;cursor:pointer;transition:all .3s ease}.calendar-day:hover{background:#f8f9ff}.calendar-day.today{background:#fa709a;color:#fff}.calendar-day.has-event{background:#fff3cd;color:#856404}.notifications-panel{background:white;border-radius:12px;box-shadow:0 4px 15px #0000001a;padding:20px}.notification-item{padding:15px;border-left:4px solid #fa709a;background:#fff8fb;margin-bottom:15px;border-radius:0 8px 8px 0}.notification-item:last-child{margin-bottom:0}.notification-item h4{margin:0 0 5px;color:#333;font-size:.9rem}.notification-item p{margin:0;color:#666;font-size:.8rem}.notification-time{color:#999;font-size:.7rem;margin-top:5px}@media (max-width: 1200px){.dashboard-content{grid-template-columns:1fr}.header-content{flex-direction:column;text-align:center;gap:20px}}@media (max-width: 768px){.student-dashboard{padding:10px}.dashboard-header{padding:20px}.welcome-section h1{font-size:2rem}.dashboard-stats,.quick-actions{grid-template-columns:1fr}.stat-card{flex-direction:column;text-align:center}.stat-icon{margin-right:0;margin-bottom:15px}}.student-login-page{min-height:100vh;background:linear-gradient(135deg,#fa709a 0%,#fee140 100%);display:flex;align-items:center;justify-content:center;padding:20px}.login-container{width:100%;max-width:450px}.login-card{background:white;border-radius:15px;box-shadow:0 20px 40px #0000001a;padding:40px;text-align:center}.login-header{margin-bottom:30px}.login-icon{background:linear-gradient(135deg,#fa709a 0%,#fee140 100%);color:#fff;width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;margin:0 auto 20px}.login-header h2{color:#333;margin-bottom:10px;font-size:1.8rem}.login-header p{color:#666;margin:0}.login-form{text-align:left}.form-group{margin-bottom:20px}.form-group label{display:flex;align-items:center;margin-bottom:8px;color:#333;font-weight:500}.input-icon{margin-right:8px;color:#fa709a}.form-group input{width:100%;padding:12px 15px;border:2px solid #e1e5e9;border-radius:8px;font-size:1rem;transition:border-color .3s ease;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#fa709a}.password-input-container{position:relative}.password-toggle{position:absolute;right:15px;top:50%;transform:translateY(-50%);background:none;border:none;color:#666;cursor:pointer;font-size:1rem;padding:0}.password-toggle:hover{color:#fa709a}.error-message{background-color:#fee;color:#c33;padding:12px;border-radius:6px;margin-bottom:20px;font-size:.9rem;text-align:center}.login-btn{width:100%;background:linear-gradient(135deg,#fa709a 0%,#fee140 100%);color:#fff;border:none;padding:15px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s ease;margin-bottom:20px}.login-btn:hover:not(:disabled){transform:translateY(-2px)}.login-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}@media (max-width: 768px){.student-login-page{padding:10px}.login-card{padding:30px 20px}.login-icon{width:60px;height:60px;font-size:1.5rem}.login-header h2{font-size:1.5rem}}.app{display:flex;flex-direction:column;min-height:100vh}main{flex:1}.skip-link{position:absolute;top:-40px;left:8px;background:#1a73e8;color:#fff;padding:8px 12px;border-radius:6px;font-weight:600;text-decoration:none;z-index:1000}.skip-link:focus{top:8px}.breadcrumbs{background:#f7f7f9;border-bottom:1px solid #e5e5ea}.breadcrumbs-list{max-width:1100px;margin:0 auto;padding:8px 16px;list-style:none;display:flex;flex-wrap:wrap;gap:8px}.breadcrumbs-item{color:#555}.breadcrumbs-item+.breadcrumbs-item:before{content:"/";margin:0 6px;color:#aaa}.breadcrumbs a{color:#1a73e8;text-decoration:none}.breadcrumbs a:hover{text-decoration:underline}.breadcrumbs-current{font-weight:600;color:#222}@media (max-width: 640px){.breadcrumbs-list{padding:6px 12px}}.context-nav{background:#ffffff;border-bottom:1px solid #e5e5ea}.context-nav-inner{max-width:1100px;margin:0 auto;padding:8px 16px;display:flex;gap:12px;flex-wrap:wrap}.context-link{color:#444;text-decoration:none;padding:6px 10px;border-radius:6px}.context-link:hover{background:#f1f5fb}.context-link.active{background:#e8f0fe;color:#1a73e8;font-weight:600}@media (max-width: 640px){.context-nav-inner{padding:6px 12px}}:root{--primary-color: #1a4b84;--secondary-color: #e63946;--text-color: #2b2d42;--light-text: #6c757d;--background-color: #fff;--light-background: #f8f9fa;--accent-color: #ffc107;--border-color: #dee2e6;--success-color: #28a745;--error-color: #dc3545;--dark-blue: #0d2b4b;--light-blue: #8ecae6;--gray-blue: #457b9d}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Poppins,sans-serif;color:var(--text-color);background-color:var(--background-color);line-height:1.6}a{text-decoration:none;color:inherit}ul{list-style:none}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 20px}@media screen and (max-width: 768px){.container{padding:0 15px}}@media screen and (max-width: 480px){.container{padding:0 10px}}@media (hover: none) and (pointer: coarse){.btn,button,a{min-height:44px;min-width:44px}}html,body{overflow-x:hidden;width:100%}.btn{display:inline-block;padding:10px 25px;border-radius:5px;font-weight:500;cursor:pointer;transition:all .3s ease;border:none;font-size:16px}.btn-primary{background-color:var(--primary-color);color:#fff}.btn-primary:hover{background-color:#0062d3}.btn-secondary{background-color:var(--secondary-color);color:#fff}.btn-secondary:hover{background-color:#e66000}.btn-outline{background-color:transparent;border:2px solid var(--primary-color);color:var(--primary-color)}.btn-outline:hover{background-color:var(--primary-color);color:#fff}.section{padding:80px 0}.section-title{font-size:36px;font-weight:700;margin-bottom:20px;text-align:center}.section-subtitle{font-size:18px;color:var(--light-text);margin-bottom:40px;text-align:center}@media (max-width: 768px){.section{padding:60px 0}.section-title{font-size:28px}.section-subtitle{font-size:16px}}
