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}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}body{background:#f4f4f9;font-family:Arial,sans-serif;margin:0;padding:0}.login-container{align-items:center;background:#f4f4f9;display:flex;height:100vh;justify-content:center}.login-form{background:#fff;border-radius:8px;box-shadow:0 4px 8px #0003;padding:2rem;text-align:center;width:300px}.login-form h2{color:#333;margin-bottom:1rem}.login-form input{border:1px solid #ccc;border-radius:4px;box-sizing:border-box;margin:.5rem 0;padding:.5rem;width:100%}.login-form input:disabled{background-color:#f0f0f0;cursor:not-allowed}.login-form button[type=submit]{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;margin-top:.5rem;padding:.5rem 1rem;transition:background .3s ease;width:100%}.login-form button[type=submit]:hover:not(:disabled){background:#0056b3}.login-form button[type=submit]:disabled{background:#ccc;cursor:not-allowed}.error{margin-top:10px}.password-container{margin:.5rem 0;position:relative}.password-container input{padding-right:2.5rem;width:100%}.toggle-password{background:none;border:none;color:#666;cursor:pointer;font-size:1.2rem;padding:0;position:absolute;right:.5rem;top:50%;transform:translateY(-50%)}.toggle-password:disabled{color:#aaa;cursor:not-allowed}.toggle-password:focus:not(:disabled),.toggle-password:hover:not(:disabled){color:#333}.toggle-password:focus{outline:none}.loading-container{align-items:center;color:#34495e;display:flex;flex-direction:column;height:50vh;justify-content:center}.spinner{animation:spin 1s linear infinite;border:4px solid #34495e;border-radius:50%;border-top-color:#007bff;height:40px;margin-bottom:10px;width:40px}.loading-container p{font-size:1.1rem;margin:0}.dashboard-container{background:linear-gradient(135deg,#f4f4f9,#e9ecef);border-radius:12px;box-shadow:0 4px 12px #0000000d;font-family:Arial,sans-serif;margin:30px auto;max-width:1100px;padding:30px}.welcome-banner{animation:fadeIn 1s ease-in;background:linear-gradient(90deg,#2c3e50,#34495e);border-radius:10px;color:#fff;margin-bottom:30px;padding:20px;text-align:center}.welcome-banner h1{font-size:2.2rem;font-weight:600;margin:0}.welcome-banner p{font-size:1.1rem;margin:5px 0 0;opacity:.9}.dashboard-error{background-color:#fce4e4;border-radius:8px;color:#e74c3c;margin-bottom:20px;padding:10px;text-align:center}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:40px}.stat-card{background:#fff;border-radius:10px;box-shadow:0 4px 8px #0000001a;cursor:pointer;padding:20px;text-align:center;transition:transform .3s ease,box-shadow .3s ease}.stat-card:hover{box-shadow:0 6px 14px #00000026;transform:translateY(-5px)}.stat-card.invigilators{background:linear-gradient(135deg,#007bff,#3498db)}.stat-card.exams{background:linear-gradient(135deg,#2ecc71,#27ae60)}.stat-card.halls{background:linear-gradient(135deg,#f39c12,#e67e22)}.stat-card.duties{background:linear-gradient(135deg,#9b59b6,#8e44ad)}.stat-icon{font-size:2.5rem}.stat-card h3,.stat-icon{color:#fff;margin-bottom:10px}.stat-card h3{font-size:1.2rem}.stat-number{color:#fff;font-size:2.5rem;font-weight:700}.upcoming-duties{background:#fff;border-radius:10px;box-shadow:0 4px 8px #0000001a;padding:20px}.upcoming-duties h2{color:#2c3e50;font-size:1.8rem;margin-bottom:20px;text-align:center}.duties-list{display:flex;flex-direction:column;gap:15px;max-height:400px;overflow-y:auto}.duty-card{align-items:center;background:#f9f9f9;border-radius:8px;box-shadow:0 2px 4px #0000000d;display:flex;padding:15px;transition:background .3s ease}.duty-card:hover{background:#ecf0f1}.duty-date{border-right:2px solid #ddd;flex:0 0 200px;padding-right:15px;text-align:center}.duty-date span{color:#2c3e50;display:block;font-weight:700}.duty-time{color:#34495e;font-size:.9rem;margin-top:5px}.duty-details{flex:1 1;padding-left:15px}.duty-details p{color:#34495e;margin:5px 0}.duty-details strong{color:#2c3e50}.no-duties{color:#34495e;font-style:italic;padding:20px;text-align:center}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.admin-home-container{padding:2rem;text-align:center}.admin-home-container h1{color:#2c3e50}.admin-home-container p{color:#34495e;font-size:1.2rem}.timetable-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin:20px auto;max-width:800px;padding:20px;position:relative}.timetable-container h2{color:#2c3e50;margin-bottom:20px;text-align:center}.timetable-container .error{color:red;margin-bottom:15px;text-align:center}.form-group{margin-bottom:20px}.form-group label{color:#34495e;display:block;font-weight:700;margin-bottom:5px}.form-group input[type=file]{border:1px solid #ccc;border-radius:4px;box-sizing:border-box;padding:8px;width:100%}.form-group input:disabled{background-color:#f0f0f0;cursor:not-allowed}.form-group p{color:#555;margin:5px 0 0;text-align:left}.data-preview p{color:#34495e;font-size:1.2rem;text-align:center}.timetable-table-wrapper{margin:0 auto;width:80%}.timetable-table td,.timetable-table th{max-width:150px}.hall-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin:20px auto;max-width:800px;padding:20px;position:relative}.hall-container h2{color:#2c3e50;margin-bottom:20px;text-align:center}.hall-container p{color:#34495e;margin-bottom:15px;text-align:center}.hall-container .error{color:red;margin-bottom:15px;text-align:center}.edit-button,.save-button{border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:8px 16px}.edit-button:hover{background-color:#e67e22}.hall-container form{display:flex;flex-direction:column}.hall-container .form-group{margin-bottom:20px}.hall-container .form-group label{color:#34495e;display:block;font-weight:700;margin-bottom:5px}.hall-container .form-group input[type=file]{border:1px solid #ccc;border-radius:4px;box-sizing:border-box;padding:8px;width:100%}.hall-container .form-group input:disabled{background-color:#f0f0f0;cursor:not-allowed}.hall-container .form-group p{color:#555;margin:5px 0 0;text-align:left}.date-list{list-style:none;padding:0}.date-item{align-items:center;display:flex;margin-bottom:20px;position:relative}.hall-count{background-color:#f4f4f9;border-radius:50%;color:#2c3e50;display:inline-block;font-size:12px;margin-right:10px;padding:5px;text-align:center;width:30px}.date-name{color:#2c3e50;cursor:pointer;font-size:14px;font-weight:700}.date-name:hover{text-decoration:underline}.hall-table-wrapper{border:1px solid #ccc;margin-top:10px;max-height:250px;overflow-x:auto;overflow-y:auto;width:100%}.hall-table{border-collapse:collapse;font-size:12px;max-width:100%;width:100%}.hall-table td,.hall-table th{border:1px solid #ccc;max-width:120px;overflow:hidden;padding:4px 6px;text-align:center;text-overflow:ellipsis;white-space:nowrap}.hall-table th{background-color:#f4f4f9;color:#2c3e50;font-size:12px;position:sticky;top:0;z-index:1}.assign-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin:20px auto;max-width:800px;padding:20px;position:relative;text-align:center}.assign-container h2{color:#2c3e50;margin-bottom:20px}.assign-container .error{color:red;margin-bottom:15px}.button-group{gap:10px;justify-content:center;margin-bottom:20px}.assign-button{background-color:#007bff;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:14px;padding:10px 20px}.assign-button:disabled{background-color:#ccc;cursor:not-allowed}.clear-button{background-color:#dc3545;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:14px;padding:10px 20px}.clear-button:disabled{background-color:#ccc;cursor:not-allowed}.assigned-duties{margin-top:20px}.date-section{margin-bottom:30px}.date-section h3{color:#2c3e50;font-size:16px;margin-bottom:15px}.duties-table-wrapper{border:1px solid #ccc;margin:0 auto;max-height:250px;overflow-x:auto;overflow-y:auto;width:100%}.duties-table{border-collapse:collapse;font-size:12px;max-width:100%;width:100%}.duties-table td,.duties-table th{border:1px solid #ccc;max-width:120px;overflow:hidden;padding:4px 6px;text-align:center;text-overflow:ellipsis;white-space:nowrap}.duties-table th{background-color:#f4f4f9;color:#2c3e50;font-size:12px;position:sticky;top:0;z-index:1}.date-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.date-header h3{color:#2c3e50;font-size:16px;margin:0}.download-button{background-color:#28a745;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:background-color .3s ease}.download-button:hover{background-color:#218838}.download-button:disabled{background-color:#ccc;cursor:not-allowed}.logout-container{align-items:center;background:#f4f4f9;display:flex;flex-direction:column;height:100vh;justify-content:center}.logout-container h2{color:#2c3e50;margin-bottom:1rem}.logout-container p{color:#34495e;font-size:1.1rem;margin-bottom:2rem}.button-group{display:flex;gap:1rem}.cancel-button,.confirm-button{border:none;border-radius:4px;cursor:pointer;font-size:1rem;padding:.5rem 1rem;transition:background .3s ease}.confirm-button{background:#dc3545;color:#fff}.confirm-button:hover:not(:disabled){background:#c82333}.confirm-button:disabled{background:#ccc;cursor:not-allowed}.cancel-button{background:#6c757d;color:#fff}.cancel-button:hover:not(:disabled){background:#5a6268}.cancel-button:disabled{background:#ccc;cursor:not-allowed}.error-container{color:#333;padding:20px;text-align:center}.error-container h1{color:#ff4d4f;font-size:6rem;margin:0}.error-container h2{font-size:2rem;margin:1rem 0}.error-container p{color:#777}.error-home-link{background-color:#007bff;border-radius:4px;color:#fff;display:inline-block;margin-top:1.5rem;padding:10px 20px;text-decoration:none}.error-home-link:hover{background-color:#0056b3}.admin-layout{display:flex}.sidebar{background-color:#2c3e50;box-shadow:2px 0 5px #0000001a;color:#fff;height:100vh;left:0;padding-top:20px;position:fixed;top:0;width:250px;z-index:2}.sidebar ul{list-style:none;padding:0}.sidebar ul li{padding:15px}.sidebar ul li a{color:#fff;display:block;text-decoration:none;transition:background-color .3s ease,border-left .3s ease,padding-left .3s ease}.sidebar ul li a.active,.sidebar ul li a:hover{background-color:#34495e;border-radius:4px}.sidebar ul li a.active{align-items:center;border-left:4px solid #fff;display:flex;height:40px;justify-content:flex-start;padding-left:11px;transition:background-color .3s ease,border-left .3s ease,padding-left .3s ease}.main-content{margin-left:250px;padding:20px;width:calc(100% - 250px)}h1{margin-left:25px}.master-timetable-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin:20px auto;max-width:800px;padding:20px;position:relative;z-index:1}.master-timetable-container h2{color:#2c3e50;margin-bottom:20px;text-align:center}.master-timetable-container p{color:#34495e;margin-bottom:15px;text-align:center}.master-timetable-container .error{color:red;margin-bottom:15px;text-align:center}.edit-section{margin-bottom:20px;text-align:right}.add-button,.edit-button,.save-button{border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:8px 16px}.edit-button{background-color:#f39c12;color:#fff}.edit-button:hover:not(:disabled){background-color:#e67e22}.add-button{background-color:#007bff;color:#fff;margin-bottom:10px;margin-right:10px}.add-button:hover:not(:disabled){background-color:#0056b3}.add-button:disabled{background-color:#ccc;cursor:not-allowed}.save-button{background-color:#2c3e50;color:#fff}.save-button:hover:not(:disabled){background-color:#34495e}.save-button:disabled{background-color:#ccc;cursor:not-allowed}.master-timetable-container form{display:flex;flex-direction:column}.master-timetable-container .form-group{margin-bottom:20px}.master-timetable-container .form-group label{color:#34495e;display:block;font-weight:700;margin-bottom:5px}.master-timetable-container .form-group input[type=file]{border:1px solid #ccc;border-radius:4px;box-sizing:border-box;padding:8px;width:100%}.master-timetable-container .form-group input:disabled{background-color:#f0f0f0;cursor:not-allowed}.master-timetable-container .form-group p{color:#555;margin:5px 0 0;text-align:left}.data-preview{margin-top:30px}.data-preview h3{color:#2c3e50;margin-bottom:20px;text-align:center}.department-list{list-style:none;padding:0}.department-item{align-items:center;display:flex;margin-bottom:20px;position:relative}.timetable-count{background-color:#f4f4f9;border-radius:50%;color:#2c3e50;display:inline-block;font-size:12px;margin-right:10px;padding:5px;text-align:center;width:30px}.department-name{color:#2c3e50;cursor:pointer;font-size:14px;font-weight:700}.department-name:hover{text-decoration:underline}.timetable-table-wrapper{border:1px solid #ccc;margin-left:10px;margin-top:10px;max-height:250px;overflow-x:auto;overflow-y:auto;width:100%}.timetable-table{border-collapse:collapse;font-size:12px;max-width:100%;width:100%}.timetable-table td,.timetable-table th{border:1px solid #ccc;max-width:100px;overflow:hidden;padding:4px 6px;text-align:center;text-overflow:ellipsis;white-space:nowrap}.timetable-table th{background-color:#f4f4f9;color:#2c3e50;font-size:12px;position:sticky;top:0;z-index:1}.view-duty-count-container{font-family:Arial,sans-serif;margin:0 auto;max-width:1200px;padding:20px}.view-duty-count-container h2{color:#2c3e50;margin-bottom:20px;text-align:center}.error{color:red;margin-bottom:20px;text-align:center}.department-sections{display:flex;flex-direction:column;gap:20px}.department-section{background-color:#f9f9f9;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:15px}.department-section h3{color:#34495e;margin-bottom:10px}.duty-count-table-wrapper{max-height:400px;overflow-y:auto}.duty-count-table{background-color:#fff;border-collapse:collapse;width:100%}.duty-count-table td,.duty-count-table th{border-bottom:1px solid #ddd;padding:10px;text-align:left}.duty-count-table th{background-color:#ecf0f1;color:#2c3e50;position:sticky;top:0;z-index:1}.duty-count-table tr:hover{background-color:#f1f1f1}.duty-count-table td{color:#424a4a}
/*# sourceMappingURL=main.d9a02a29.css.map*/