body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.navbar{background:#0a0a23!important;color:#fff;padding:14px 28px;position:relative;z-index:1000}.logo-link{align-items:center;display:flex;text-decoration:none}.logo-img{height:42px;margin-right:12px;width:auto}.logo-text{color:#fff;font-family:Montserrat,sans-serif;font-size:36px;font-weight:900;letter-spacing:1px;line-height:1}.nav-links{display:flex;gap:22px;list-style:none}.nav-links li a{color:#fff;font-size:16px;font-weight:500;position:relative;text-decoration:none;transition:color .3s ease}.nav-links li a:hover{color:#9b59b6}.nav-links li a:after{background-color:#9b59b6;bottom:-4px;content:"";height:2px;left:0;position:absolute;transition:width .3s ease;width:0}.nav-links li a:hover:after{width:100%}.auth-buttons{display:flex;gap:12px}.btn{border:1px solid #fff;color:#fff!important;font-size:15px;font-weight:500;padding:8px 16px;text-decoration:none;transition:background .3s,color .3s}.btn:hover{background:#fff;color:#0a0a23!important}.signup{background:#9b59b6;border:none;color:#fff!important}.signup:hover{background:#8e44ad;color:#fff!important}.hamburger{color:#fff;cursor:pointer;display:none;font-size:28px;-webkit-user-select:none;user-select:none}.mobile-menu{background:#0a0a23!important;border-top:1px solid #fff3;display:none;flex-direction:column;gap:18px;left:0;padding:20px;position:absolute;right:0;top:60px;z-index:999}.mobile-menu.active{display:flex}.mobile-menu ul{display:flex;flex-direction:column;gap:14px;list-style:none}.mobile-menu a{color:#fff;font-size:18px;font-weight:500;text-decoration:none}.mobile-menu a:hover{color:#9b59b6}.mobile-auth{display:flex;flex-direction:column;gap:10px;margin-top:16px}.mobile-auth .btn{color:#fff!important}.mobile-auth .signup{background:#9b59b6;border:none;color:#fff!important}.mobile-auth .signup:hover{background:#8e44ad;color:#fff!important}@media (max-width:768px){.auth-buttons,.nav-links{display:none}.hamburger{display:block}}.home-container{background:linear-gradient(to bottom right,#1e0033,#2a004d,#0d0b2c);color:#fff;font-family:Segoe UI,sans-serif;min-height:100vh}.navbar{background:#0a0e1a;justify-content:space-between;padding:18px 50px}.logo,.navbar{align-items:center;display:flex}.logo{gap:8px}.logo-box{background:#7c3aed;border-radius:6px;color:#fff;font-size:14px;font-weight:700;padding:4px 8px}.logo-text{font-size:20px;font-weight:600}.nav-links a{color:#ccc;font-weight:500;margin:0 16px;text-decoration:none}.nav-links a:hover{color:#a78bfa}.btn-launch{background:#9333ea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:500;padding:10px 22px;transition:.3s}.btn-launch:hover{background:#7e22ce}.hero-section{align-items:center;display:flex;flex-wrap:wrap;justify-content:space-between;padding:80px 50px}.hero-text{max-width:550px}.hero-text h1{font-size:48px;font-weight:800;line-height:1.2;margin:-20px 0 20px}.hero-text .description{color:#aaa;font-size:16px;line-height:1.6;margin-bottom:24px}.hero-buttons{display:flex;gap:16px}.hero-image{align-items:center;display:flex;flex:1 1;justify-content:flex-end;padding-right:80px}.hero-image img{animation:float 4s ease-in-out infinite;height:auto;max-width:480px;width:100%}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-12px)}to{transform:translateY(0)}}.features-section{background:#0000004d;border-top:1px solid #ffffff1a;padding:80px 50px;text-align:center}.features-section h2{font-size:2rem;font-weight:700}.features-section p{color:#cbd5e1;font-size:16px;margin-top:10px}.features-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-top:40px}.feature-card{background:#1e293be6;border-radius:14px;padding:24px;transition:transform .3s ease,box-shadow .3s ease}.feature-card:hover{box-shadow:0 8px 18px #00000080;transform:translateY(-6px)}.feature-icon{color:#a78bfa;display:block;font-size:2rem;margin-bottom:14px}.feature-card h3{font-size:20px;font-weight:600;margin-bottom:10px}.feature-card p{color:#aaa;font-size:15px;line-height:1.5}@media (max-width:900px){.hero-section{align-items:center;flex-direction:column;text-align:center}.hero-text{margin-bottom:40px}.hero-image{justify-content:center;margin-top:20px;padding-right:0}}@media (max-width:600px){.hero-text h1{font-size:36px}.hero-image img{max-width:320px}}body{background:#f5f6fa;color:#2c3e50;font-family:Inter,Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0;padding:0}.dashboard{display:flex;height:100vh;overflow:hidden}.sidebar{transition:all .3s ease-in-out}.sidebar h2{color:#fff;font-size:22px;font-weight:700;letter-spacing:1px;margin-bottom:30px;text-align:center}.sidebar ul{flex-grow:1;list-style:none;margin:0;padding:0}.sidebar ul li{align-items:center;background:#1e1e3f;border-radius:8px;cursor:pointer;display:flex;font-size:15px;font-weight:500;gap:10px;margin:10px 0;padding:14px 16px;transition:all .3s ease}.sidebar ul li:hover{background:#6c5ce7;transform:translateX(6px)}.sidebar ul li.active{background:#9b59b6;box-shadow:inset 0 0 6px #fff3;font-weight:600}.sidebar ul li.disabled{background:#2e2e4f;color:#aaa;cursor:not-allowed;pointer-events:none}.main-content{background:#f4f4f9;flex:1 1;overflow-y:auto;padding:40px;transition:background .3s}.main-content h2{border-bottom:3px solid #9b59b6;color:#0a0a23;display:inline-block;font-size:26px;font-weight:700;margin-bottom:25px;padding-bottom:8px}.main-content>div{animation:fadeIn .3s ease-in-out;background:#fff;border-radius:12px;box-shadow:0 4px 12px #00000014;padding:25px}.main-content input,.main-content select{border:1px solid #ccc;border-radius:8px;display:block;font-size:15px;margin-bottom:18px;padding:12px 14px;transition:border .3s,box-shadow .3s;width:320px}.main-content input:focus,.main-content select:focus{border:1px solid #9b59b6;box-shadow:0 0 6px #9b59b666;outline:none}.main-content button{background:#9b59b6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;margin-right:14px;margin-top:10px;padding:12px 22px;transition:all .3s ease}.main-content button:hover{background:#8e44ad;box-shadow:0 3px 8px #0003;transform:translateY(-2px)}.main-content button.secondary{background:#3498db}.main-content button.secondary:hover{background:#2980b9}.main-content ul{margin:20px 0;padding-left:20px}.main-content ul li{font-size:15px;line-height:1.6;margin:6px 0;padding-left:10px;position:relative}.main-content ul li:before{color:#9b59b6;content:"•";font-weight:700;left:-10px;position:absolute}@media (max-width:900px){.dashboard{flex-direction:column}.sidebar{flex-direction:row;justify-content:space-around;padding:15px;width:100%}.sidebar h2{display:none}.sidebar ul{display:flex;gap:10px}.sidebar ul li{flex:1 1;text-align:center}.main-content{padding:20px}}.welcome-section{margin-top:20px;text-align:center}.welcome-section h2{margin-bottom:40px}.welcome-image{border-radius:12px;box-shadow:0 4px 12px #00000026;display:block;height:auto;margin:0 auto;max-width:800px;width:100%}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.admin-dashboard{display:flex;height:100vh;overflow:hidden}.sidebar{background:linear-gradient(180deg,#0a0a23,#1b1b3a);box-shadow:3px 0 8px #0003;color:#fff;display:flex;flex-direction:column;padding:25px 20px;width:260px}.content{background:#f4f4f9;flex:1 1;overflow-y:auto;padding:40px}.college-section{background:#f8f9fb;display:flex;justify-content:center;min-height:100vh;padding:30px}.welcome-container{align-items:center;display:flex;flex-direction:column;margin:0 auto;max-width:800px;text-align:center;width:100%}.welcome-text{margin-bottom:20px}.welcome-text h2{color:#333;font-size:28px;font-weight:700;margin-bottom:10px}.welcome-text p{color:#555;font-size:18px;line-height:1.6}.welcome-text strong{color:#5a3cff}.welcome-image img{border:none;box-shadow:none;height:auto;max-width:80%;outline:none}.departments-table{background:#f9f9f9;border-collapse:collapse;margin-top:10px;width:100%}.departments-table td,.departments-table th{border:1px solid #ddd;padding:10px;text-align:center}.departments-table th{background:#f4f4f4;font-weight:700}.btn-edit{background:#4da6ff;margin-right:5px}.btn-delete,.btn-edit{border:none;border-radius:5px;color:#fff;cursor:pointer;padding:6px 12px}.btn-delete{background:#ff4d4d}.btn-save{margin-right:5px}.btn-cancel,.btn-save{border:none;border-radius:5px;cursor:pointer;padding:6px 12px}button:hover{opacity:.9}.courses-section{padding:20px}.departments-grid{display:flex;flex-wrap:wrap;gap:12px;margin:15px 0}.dept-card{background:#f5f5f5;border:1px solid #ccc;border-radius:8px;cursor:pointer;padding:12px 18px;transition:.2s}.dept-card:hover{background:#ddd}.dept-card.active{background:#4cafef;border-color:#4cafef;color:#fff}.course-form{margin-top:20px}.course-form input{display:block;margin:8px 0;padding:8px;width:250px}.course-form button{background:#4cafef;border:none;border-radius:6px;color:#fff;cursor:pointer;margin-top:10px;padding:8px 12px;transition:.2s}.course-form button:hover{background:#3a9dd6}.course-table{border-collapse:collapse;margin-top:20px;width:100%}.course-table td,.course-table th{border:1px solid #ddd;padding:8px;text-align:center}.course-table th{background:#f2f2f2}.users-section{background:#f7f7fb;border-radius:12px;box-shadow:0 2px 8px #0000000d;margin:20px;padding:20px}h2{align-items:center;color:#333;display:flex;font-size:1.4rem;gap:8px;margin-bottom:10px}.form-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.form-row input,.form-row select{border:1px solid #ddd;border-radius:6px;font-size:14px;min-width:150px;outline:none;padding:8px 12px}.form-row input:focus,.form-row select:focus{border-color:#4a90e2;box-shadow:0 0 4px #4a90e24d}.form-row button{background:#4a90e2;border:none;border-radius:6px;color:#fff;cursor:pointer;padding:8px 16px;transition:background .2s ease}.form-row button:hover{background:#357abd}.users-table{background:#fff;border-collapse:collapse;border-radius:8px;box-shadow:0 2px 6px #0000000d;margin-bottom:30px;overflow:hidden;width:100%}.users-table td,.users-table th{border:1px solid #eee;color:#333;font-size:14px;padding:12px 15px;text-align:left}.users-table th{background:#f5f5f5;font-weight:600}.users-table td{background:#fff}.users-table tr:nth-child(2n) td{background:#fafafa}.users-table button{border:none;border-radius:6px;cursor:pointer;font-size:13px;margin:0 4px;padding:6px 10px;transition:all .2s ease}.users-table button:hover{opacity:.9}.users-table button:first-child{background:#4caf50;color:#fff}.users-table button:nth-child(2){background:#f44336;color:#fff}.users-table button:nth-child(3){background:#ff9800;color:#fff}.eye-btn{background:none;border:none;cursor:pointer;font-size:14px;margin-left:5px}.timetable-section{font-family:Arial,sans-serif;margin:20px}.course-buttons,.dept-buttons{display:flex;flex-wrap:wrap;gap:10px;margin:15px 0}.course-btn,.dept-btn{background:#f8f8f8;border:1px solid #ccc;border-radius:8px;cursor:pointer;font-size:14px;padding:10px 20px;transition:all .3s}.course-btn:hover,.dept-btn:hover{background:#e0e0e0}.course-btn.active,.dept-btn.active{background:#4a90e2;border-color:#4a90e2;color:#fff}.timetable-table{border-collapse:collapse;margin-top:15px;width:100%}.timetable-table td,.timetable-table th{border:1px solid #ccc;padding:10px;text-align:center;vertical-align:middle}.day-cell{background:#f4f6f9;font-weight:700}.period-header{border-radius:6px;cursor:pointer;padding:6px;transition:background .2s}.period-header:hover{background:#eef3ff}.period-label{font-weight:700}.period-time{color:#555;font-size:12px}.period-hint{color:#999;font-size:10px}.timetable-cell{cursor:pointer;transition:background .2s}.timetable-cell:hover{background:#f9f9f9}.empty-cell{color:#bbb;font-style:italic}.modal-overlay{background:#00000073;inset:0;z-index:9999}.modal{border-radius:10px;box-shadow:0 5px 15px #00000040;padding:20px;width:400px}.modal h3{margin-top:0}.modal label{display:block;font-size:13px;font-weight:700;margin-top:10px}.modal input{border:1px solid #ccc;border-radius:6px;font-size:14px;margin-top:4px;padding:8px;width:100%}.modal-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;margin-top:16px}.btn{border:none;border-radius:6px;cursor:pointer;font-size:14px;padding:8px 14px}.btn-save{background:#28a745;color:#fff}.btn-cancel{background:#6c757d;color:#fff}.btn-danger{background:#dc3545;color:#fff}.delete-confirm-text{align-self:center;color:#d9534f;font-size:12px;margin-right:auto}.overview-container{font-family:Segoe UI,sans-serif;padding:20px}.page-title{color:#2c3e50;font-size:22px;font-weight:700;margin-bottom:15px}.section-title{color:#34495e;font-size:18px;font-weight:600;margin:10px 0}.course-list,.subject-list{list-style:none;padding:0}.course-item,.subject-item{background:#f4f6f9;border-radius:6px;color:#2c3e50;cursor:pointer;margin:5px 0;padding:8px;transition:background .2s}.course-item:hover,.subject-item:hover{background:#e3ebfa;color:#1a73e8}.back-btn{background:none;border:none;color:#555;cursor:pointer;display:inline-block;font-size:14px;margin-bottom:12px}.back-btn:hover{color:#1a73e8;text-decoration:underline}.styled-table{border-collapse:collapse;border-radius:8px;box-shadow:0 2px 6px #0000001a;font-size:14px;margin:20px 0;overflow:hidden;width:100%}.styled-table td,.styled-table th{border:1px solid #ddd;padding:10px 12px;text-align:center}.styled-table th{background-color:#4a90e2;color:#fff;font-weight:600}.styled-table tr:nth-child(2n){background-color:#f9f9f9}.styled-table tr:hover{background-color:#eef3ff}.status-present{color:#28a745;font-weight:700}.status-absent{color:#dc3545;font-weight:700}.export-buttons{display:flex;gap:12px;margin-top:15px}.btn-excel,.btn-pdf{border:none;border-radius:6px;cursor:pointer;font-size:14px;padding:10px 16px;transition:all .2s}.btn-excel{background:#28a745;color:#fff}.btn-excel:hover{background:#218838}.btn-pdf{background:#dc3545;color:#fff}.btn-pdf:hover{background:#c82333}.admin-login-page{align-items:center;background:linear-gradient(135deg,#1a0033,#3b0066 50%,indigo);color:#fff;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:20px}.admin-login-page h2{font-size:2rem;font-weight:700;margin-bottom:20px;text-align:center}.admin-login-page input{background:#2e1a1a;border:none;border-radius:8px;color:#fff;font-size:1rem;margin:10px 0;max-width:350px;outline:none;padding:12px 15px;transition:all .3s ease;width:100%}.admin-login-page input::placeholder{color:#bbb}.admin-login-page input:focus{background:#3d2323;box-shadow:0 0 6px #8a2be2b3}.admin-login-page button{background:#6a0dad;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;margin-top:15px;max-width:350px;padding:12px 15px;transition:all .3s ease;width:100%}.admin-login-page button:hover{background:#6a0dad;box-shadow:0 4px 12px #0000004d;transform:translateY(-2px)}.login-container{background:linear-gradient(135deg,#001f3f,#036)}.login-container input{background:#2e3b4e}.login-container input:focus{background:#3a4a66;box-shadow:0 0 6px #1e90ffb3}.login-container button{background:#0056b3}.login-container button:hover{background:#007bff}.dashboard.faculty{background:linear-gradient(135deg,#1a0033,#3b0066 50%,indigo);color:#fff;display:flex;flex-direction:column;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;min-height:100vh;padding:30px}.faculty-layout{display:flex;gap:30px;margin-top:20px}.faculty-menu{background:#fff;border-radius:12px;box-shadow:0 3px 8px #0000001a;color:#000;flex-shrink:0;list-style:none;padding:20px;width:220px}.faculty-menu li{border-bottom:1px solid #eee;color:#000;cursor:pointer;font-size:1rem;font-weight:500;padding:12px 8px;transition:all .2s ease-in-out}.faculty-menu li:hover{background-color:#f1f6fb;border-radius:6px;color:#3f72af}.logout-btn{background:#3f72af;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:15px;padding:10px;transition:background .2s;width:100%}.logout-btn:hover{background:#2c5aa0}.faculty-content{display:flex;flex:1 1;flex-direction:column;gap:20px}.timetable-card{box-shadow:0 3px 8px #0000001a;color:#000;overflow-x:auto;padding:20px;width:100%}.timetable-card h2{border-bottom:2px solid #e4ebf5;color:#3f72af;font-size:1.4rem;font-weight:600;padding-bottom:6px}.timetable-card table{color:#000;font-size:.95rem;table-layout:fixed;text-align:center}.timetable-card td,.timetable-card th{word-wrap:break-word;border:1px solid #e0e6ed;padding:12px 10px;white-space:normal}.timetable-card th{background:#f1f6fb;color:#333}.timetable-card td{background:#fff}.clickable-cell{cursor:pointer;transition:background .2s}.clickable-cell:hover{background:#eaf3fc}.qr-section{background:#fff;border-radius:12px;box-shadow:0 3px 8px #0000001a;color:#000;padding:20px;text-align:center;width:100%}.qr-section h3{color:#3f72af;font-size:1.2rem;font-weight:600;margin-bottom:15px}.qr-section p{color:#444;font-size:.95rem;margin:5px 0}.qr-modal-overlay{align-items:center;background:#0009;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.qr-modal{animation:fadeInScale .3s ease-in-out;background:#fff;border-radius:12px;box-shadow:0 6px 15px #0003;color:#000;max-width:90%;padding:25px;text-align:center;width:350px}.qr-modal h3{color:#3f72af;font-size:1.3rem;font-weight:600;margin-bottom:15px}.qr-modal p{color:#444;font-size:.95rem;margin:8px 0}.qr-modal button{background:#3f72af;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;margin-top:15px;padding:8px 16px;transition:background .2s}.qr-modal button:hover{background:#2c5aa0}@keyframes fadeInScale{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.faculty-content .attendance-card,.faculty-content .timetable-card{background:#fff;border-radius:14px;box-shadow:0 6px 20px #0000001f;box-sizing:border-box;color:#222;padding:22px;width:100%}.faculty-content .attendance-card h2,.faculty-content .timetable-card h2{border-bottom:2px solid #f1f1f6;color:indigo;font-size:1.4rem;font-weight:700;margin:0 0 14px;padding-bottom:8px}.attendance-card ul{grid-gap:12px;display:grid;gap:12px}.attendance-card li{background:#fafafa;border:1px solid #eee;border-radius:10px;color:#333;cursor:pointer;font-weight:600;padding:12px 14px;transition:all .18s ease}.attendance-card li:hover{background:#f3f8ff;box-shadow:0 4px 12px #0000000d;transform:translateX(4px)}.attendance-card table{background:#fff;border-radius:8px;margin-top:10px;overflow:hidden}.attendance-card td,.attendance-card th{border:1px solid #f0f0f0;font-size:.95rem;padding:10px 12px;text-align:center}.attendance-card th{background:#f6f2fb;font-weight:700}.attendance-card tbody tr:nth-child(2n) td{background:#fafafa}.login-container{align-items:center;background:linear-gradient(135deg,#1a0033,#2a004f);color:#fff;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:20px}.login-container h2{font-size:2rem;font-weight:700;margin-bottom:20px;text-align:center}.login-container input{background:#2e2e3e;border:none;border-radius:8px;color:#fff;font-size:1rem;margin:10px 0;max-width:320px;outline:none;padding:12px 15px;transition:all .3s ease;width:100%}.login-container input::placeholder{color:#bbb}.login-container input:focus{background:#3a3a4f;box-shadow:0 0 6px #8a2be2b3}.login-container button{background:#6a0dad;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;margin-top:15px;max-width:320px;padding:12px 15px;transition:all .3s ease;width:100%}.login-container button:hover{background:#8a2be2;box-shadow:0 4px 12px #0000004d;transform:translateY(-2px)}.student-dashboard{background:linear-gradient(135deg,#1a0033,#3b0066 50%,indigo);color:#fff;min-height:100vh;padding:20px}.student-dashboard h1{color:#fff;font-size:28px;margin-bottom:10px}.student-dashboard p{color:#ddd;margin-bottom:20px}.student-layout{display:flex;flex-wrap:wrap;gap:20px;margin-top:20px}.student-sidebar{background:#fff;border-radius:12px;box-shadow:0 4px 15px #0003;display:flex;flex-direction:column;gap:15px;padding:20px;width:220px}.student-sidebar button{background:#f3f0ff;border:none;border-radius:8px;color:indigo;cursor:pointer;font-weight:500;padding:12px;text-align:left;transition:all .3s ease}.student-sidebar button:hover{background:indigo;color:#fff;transform:translateX(4px)}.logout-btn{background:#ff4d4d!important;color:#fff!important;font-weight:700;text-align:center!important}.timetable-card{background:#fff;border-radius:12px;box-shadow:0 4px 15px #0003;flex:1 1;min-width:500px;padding:25px}.timetable-card h2{color:indigo;margin-bottom:15px}.timetable-card table{border-collapse:collapse;width:100%}.timetable-card th{background:#f3f0ff;color:indigo;font-weight:600;padding:12px}.timetable-card td{border:1px solid #eee;color:#333;font-size:14px;padding:12px;text-align:center}.timetable-card tr:nth-child(2n) td{background:#fafafa}.attendance-card{flex:1 1;min-width:500px}.attendance-card ul{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0}.attendance-card li button{background:#f9f9f9;border:none;border-radius:8px;color:indigo;cursor:pointer;font-weight:500;padding:12px;text-align:left;transition:all .3s ease;width:100%}.attendance-card li button:hover{background:indigo;color:#fff}.attendance-card td,.attendance-card th{padding:10px}.modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.modal{animation:popupFade .3s ease-in-out;background:#fff;border-radius:16px;box-shadow:0 8px 24px #0003;max-width:95%;padding:30px;position:relative;text-align:center;width:450px}@keyframes popupFade{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.close-btn{align-items:center;background:#3f72af;border:none;border-radius:50%;box-shadow:0 4px 8px #0003;color:#fff;cursor:pointer;display:flex;font-size:18px;font-weight:700;height:38px;justify-content:center;left:50%;position:absolute;top:-20px;transform:translateX(-50%);transition:background .2s ease,transform .2s ease;width:38px}.close-btn:hover{background:#2c5aa0;transform:translateX(-50%) scale(1.1)}.modal h2{color:#3f72af;font-size:1.4rem;font-weight:600;margin-bottom:15px}.scanner-box{background:#000;border:2px solid #3f72af;border-radius:12px;height:320px;margin:0 auto;overflow:hidden;width:320px}.scanner-box video{border-radius:12px;height:100%!important;object-fit:cover;width:100%!important}.subjects-card{flex:1 1;min-width:500px}.subjects-card li{margin-bottom:0}.subjects-card{background:#fff;border-radius:12px;box-shadow:0 4px 15px #0003;flex:2 1;margin-top:20px;max-width:900px;min-width:1300px;padding:25px}.subjects-card h3{border-bottom:2px solid #f1f1f6;color:indigo;font-size:1.4rem;font-weight:700;margin:0 0 14px;padding-bottom:8px}.subjects-card ul{display:flex;flex-direction:column;gap:12px;list-style:none;margin:0;padding:0}.subjects-card li{margin:0}.subjects-card button{background:#f8f9ff;border:1px solid #e0e0ff;border-radius:8px;color:indigo;cursor:pointer;font-size:15px;font-weight:500;padding:12px 15px;text-align:left;transition:all .2s ease;width:100%}.subjects-card button:hover{background:indigo;color:#fff}.attendance-card{background:#fff;border-radius:12px;box-shadow:0 4px 15px #0003;flex:2 1;margin-top:20px;max-width:1000px;min-width:700px;padding:25px}.attendance-card h3{align-items:center;color:indigo;display:flex;font-size:1.3rem;font-weight:1300;gap:8px;margin-bottom:15px}.attendance-card table{border-collapse:collapse;margin-top:15px;width:100%}.attendance-card th{background:#f3f0ff;color:indigo;font-weight:600;padding:12px;text-align:center}.attendance-card td{border:1px solid #eee;color:#333;font-size:14px;padding:12px;text-align:center}.attendance-card tr:nth-child(2n) td{background:#fafafa}
/*# sourceMappingURL=main.d52775e2.css.map*/