@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css);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;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.admin-login-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh}.login-box{background:#fff;border-radius:10px;box-shadow:0 10px 25px #0003;max-width:400px;padding:2rem;width:100%}.login-box h2{color:#333;margin-bottom:1.5rem;text-align:center}.form-group{margin-bottom:1rem}.form-group label{color:#555;font-weight:500}.form-group input,.password-input{border:2px solid #ddd;border-radius:5px;font-size:1rem;padding:.75rem;transition:border-color .3s;width:100%}.password-input:focus{border-color:#667eea;outline:none}.login-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:1rem;padding:.75rem;transition:transform .2s;width:100%}.login-btn:hover{transform:translateY(-2px)}.login-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.error-message{background:#fdf2f2;border-radius:5px;padding:.5rem;text-align:center}.back-to-staff{border-top:1px solid #eee;margin-top:1.5rem;padding-top:1rem;text-align:center}.back-to-staff a{color:#667eea;font-size:.9rem;text-decoration:none;transition:color .3s}.back-to-staff a:hover{color:#764ba2;text-decoration:underline}@media (max-width:480px){.login-box{margin:1rem;padding:1.5rem}.login-box h2{font-size:1.5rem}}

/*!
 * Toastify js 1.12.0
 * https://github.com/apvarun/toastify-js
 * @license MIT licensed
 *
 * Copyright (C) 2018 Varun A P
 */.toastify{background:linear-gradient(135deg,#73a5ff,#5477f5);border-radius:2px;box-shadow:0 3px 6px -1px #0000001f,0 10px 36px -4px #4d60e84d;color:#fff;cursor:pointer;display:inline-block;max-width:calc(50% - 20px);opacity:0;padding:12px 20px;position:fixed;text-decoration:none;transition:all .4s cubic-bezier(.215,.61,.355,1);z-index:2147483647}.toastify.on{opacity:1}.toast-close{background:#0000;border:0;color:#fff;cursor:pointer;font-family:inherit;font-size:1em;opacity:.4;padding:0 5px}.toastify-right{right:15px}.toastify-left{left:15px}.toastify-top{top:-150px}.toastify-bottom{bottom:-150px}.toastify-rounded{border-radius:25px}.toastify-avatar{border-radius:2px;height:1.5em;margin:-7px 5px;width:1.5em}.toastify-center{left:0;margin-left:auto;margin-right:auto;max-width:-webkit-fit-content;max-width:fit-content;max-width:-moz-fit-content;right:0}@media only screen and (max-width:360px){.toastify-left,.toastify-right{left:0;margin-left:auto;margin-right:auto;max-width:-webkit-fit-content;max-width:fit-content;right:0}}.final-schedule-container{background:#fff;border:2px solid #27ae60;border-radius:10px;box-shadow:0 2px 10px #0000001a;margin-top:2rem;padding:1.5rem}.schedule-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.export-png-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:transform .2s}.export-png-btn:hover{transform:translateY(-2px)}.final-schedule-container h3{color:#27ae60;font-size:1.2rem;margin:0}.no-data{padding:2rem}.final-table-wrapper{overflow-x:hidden}.final-schedule-table{border-collapse:collapse;table-layout:fixed;width:100%}.final-schedule-table td,.final-schedule-table th{border:1px solid #333;text-align:center;vertical-align:middle}.final-schedule-table .employee-col{background:#27ae60;color:#fff;font-weight:700;padding:.75rem;width:15%}.final-schedule-table .employee-name{background:#e8f5e9;color:#2e7d32;font-weight:700;padding:.5rem;text-align:left}.final-schedule-table .date-col{background:#2e7d32;color:#fff;font-weight:700;padding:.5rem;width:12.14%}.final-schedule-table .date-col div{font-size:.9rem}.final-schedule-table .date-col small{display:block;font-size:.8rem;opacity:.8}.final-schedule-table .shift-col{background:#43a047;color:#fff;font-weight:700;padding:.5rem;width:4.05%}.final-schedule-table .shift-cell{background:#fafafa;font-size:1.1rem;font-weight:700;height:35px;width:4.05%}.final-schedule-table .shift-cell.active{background:#c8e6c9;color:#2e7d32}.time-schedule-container{background:#fff;border:2px solid #3498db;border-radius:10px;box-shadow:0 2px 10px #0000001a;margin-top:1.5rem;padding:1rem}.time-schedule .shift-cell{font-size:.65rem;min-width:70px;padding:.4rem;text-align:center;white-space:pre-line}.time-schedule .shift-cell.active{background:#e3f2fd;color:#1976d2;font-weight:600}.final-schedule-table .checkbox-cell input[type=checkbox]{accent-color:#2e7d32;cursor:pointer;height:16px;width:16px}.final-schedule-table .checkbox-cell input[type=checkbox]:checked{accent-color:#2e7d32}@media (max-width:768px){.final-schedule-container{border-radius:8px;margin-top:1rem;padding:.75rem}.schedule-header{align-items:stretch;flex-direction:column;gap:.5rem}.final-schedule-container h3{font-size:.9rem;text-align:center}.export-png-btn{font-size:.75rem;padding:.35rem .7rem}.final-table-wrapper{margin:0;overflow-x:hidden;padding:0}.final-schedule-table{font-size:.65rem;table-layout:fixed;width:100%}.final-schedule-table .employee-col{padding:.3rem;width:20%}.final-schedule-table .employee-name{font-size:.65rem;padding:.25rem}.final-schedule-table .date-col{font-size:.65rem;padding:.25rem;width:11.43%}.final-schedule-table .date-col div{font-size:.65rem}.final-schedule-table .date-col small{font-size:.55rem}.final-schedule-table .shift-col{padding:.2rem;width:3.81%}.final-schedule-table .shift-cell{font-size:.8rem;height:20px;width:3.81%}.time-schedule-container{margin-top:1rem;padding:.75rem}.time-schedule .shift-cell{font-size:.5rem;min-width:45px;padding:.25rem}.final-schedule-table .checkbox-cell input[type=checkbox]{height:12px;width:12px}.no-data{font-size:.8rem;padding:1rem}}@media (max-width:480px){.final-schedule-container{border-radius:6px;margin-top:.75rem;padding:.5rem}.schedule-header{align-items:stretch;flex-direction:column;gap:.4rem}.final-schedule-container h3{font-size:.8rem;text-align:center}.export-png-btn{font-size:.65rem;padding:.3rem .5rem}.final-table-wrapper{margin:0;overflow-x:hidden;padding:0}.final-schedule-table{font-size:.55rem;table-layout:fixed;width:100%}.final-schedule-table .employee-col{font-size:.55rem;padding:.2rem;width:25%}.final-schedule-table .employee-name{font-size:.55rem;padding:.2rem}.final-schedule-table .date-col{font-size:.55rem;padding:.2rem;width:10.71%}.final-schedule-table .date-col div{font-size:.55rem}.final-schedule-table .date-col small{font-size:.45rem}.final-schedule-table .shift-col{font-size:.55rem;padding:.15rem;width:3.57%}.final-schedule-table .shift-cell{font-size:.7rem;height:16px;width:3.57%}.time-schedule-container{margin-top:.75rem;padding:.5rem}.time-schedule .shift-cell{font-size:.45rem;min-width:35px;padding:.2rem}.final-schedule-table .checkbox-cell input[type=checkbox]{height:10px;width:10px}.no-data{font-size:.7rem;padding:.75rem}}.admin-page{background:#f5f5f5}.admin-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1rem 2rem}.admin-header h1{font-size:1.5rem}.header-actions{align-items:center;flex-wrap:wrap;gap:.75rem}.allocation-btn{background:#ffffffe6;border:1px solid #ffffffe6;border-radius:8px;box-shadow:0 2px 8px #0000001a;color:#667eea;cursor:pointer;font-weight:600;padding:.5rem 1rem;transition:all .3s ease}.allocation-btn:hover{background:#fff;box-shadow:0 4px 12px #0003;transform:translateY(-1px)}.logout-btn{background:#fff3;border:1px solid #fff;border-radius:5px;color:#fff;cursor:pointer;padding:.5rem 1rem;transition:background .3s}.logout-btn:hover{background:#ffffff4d}.view-mode-toggle-btn{background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:8px;box-shadow:0 4px 12px #6366f14d;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:.6rem 1.2rem;transition:all .3s ease;white-space:nowrap}.view-mode-toggle-btn:hover{background:linear-gradient(135deg,#4f46e5,#7c3aed);box-shadow:0 6px 20px #6366f166;transform:translateY(-2px)}.view-mode-toggle-btn:active{transform:translateY(0)}.admin-content{grid-gap:2rem;align-items:start;display:grid;gap:2rem;grid-template-columns:3fr 7fr;margin:2rem auto;max-width:1400px;padding:2rem}.registrations-section,.settings-section{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;box-sizing:border-box;padding:1.5rem;width:100%}.registrations-section{overflow:hidden}.registrations-section h2,.settings-section h2{border-bottom:2px solid #667eea;color:#333;margin-bottom:1rem;padding-bottom:.5rem}.registrations-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.registrations-header h2{border-bottom:2px solid #667eea;margin:0;padding-bottom:.5rem}.admin-header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.refresh-registrations-btn{background:linear-gradient(135deg,#3498db,#2980b9);border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:.85rem;padding:.4rem .8rem;transition:transform .2s}.refresh-registrations-btn:hover{transform:translateY(-2px)}.refresh-registrations-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.setting-group{margin-bottom:1.5rem}.setting-group label{color:#555;display:block;font-weight:500;margin-bottom:.5rem}.date-range-row{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.setting-group input[type=date]{background:#fff;border:2px solid #e0e0e0;border-radius:8px;box-sizing:border-box;cursor:pointer;font-size:.95rem;max-width:260px;padding:.6rem;transition:all .3s ease;width:100%}.setting-group input[type=date]:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.setting-group input[type=date]:hover{border-color:#667eea}.date-range-display{display:inline-block;font-weight:500;position:relative}.date-range-row input[type=date]{border:2px solid #ddd;border-radius:8px;flex:0 0 auto;font-size:.95rem;max-width:45%;padding:.6rem .75rem;transition:border-color .3s;width:140px}.date-range-row input[type=date]:focus{border-color:#667eea;outline:none}.date-separator{color:#667eea;font-size:1rem;font-weight:600;white-space:nowrap}.setting-group input[type=checkbox]{margin-right:.5rem}.toggle-label{align-items:center;cursor:pointer;display:flex;justify-content:space-between}.toggle-switch{background:#ccc;border-radius:13px;cursor:pointer;height:26px;position:relative;transition:background .3s;width:50px}.toggle-switch.active{background:linear-gradient(135deg,#4caf50,#45a049)}.toggle-slider{background:#fff;border-radius:50%;box-shadow:0 2px 4px #0003;height:22px;left:2px;position:absolute;top:2px;transition:transform .3s;width:22px}.toggle-switch.active .toggle-slider{transform:translateX(24px)}.employee-input{display:flex;gap:.5rem;margin-bottom:1rem}.employee-input input{border:2px solid #ddd;border-radius:5px;flex:1 1;padding:.5rem}.employee-input button{background:#667eea;border:none;border-radius:5px;color:#fff;cursor:pointer;padding:.5rem 1rem}.employee-list{display:flex;flex-wrap:wrap;gap:.4rem;max-height:200px;overflow-y:auto}.employee-item{align-items:center;background:#f7f8fc;border:1px solid #e0e4f0;border-radius:6px;display:inline-flex;gap:.35rem;margin:0;padding:.25rem .55rem}.employee-item span{color:#2c3e50;font-size:.85rem;order:1;text-align:left}.employee-item button{background:#fff;border:1px solid #e0e4f0;border-radius:4px;color:#e74c3c;cursor:pointer;font-size:.8rem;line-height:1;margin-left:.2rem;order:2;padding:.1rem .25rem}.generate-btn,.save-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:1rem;padding:.75rem;transition:transform .2s;width:100%}.generate-btn:hover,.save-btn:hover{transform:translateY(-2px)}.save-btn.disabled,.save-btn:disabled{background:#ccc;cursor:not-allowed;opacity:.5}.history-btn{background:linear-gradient(135deg,#ff6b6b,#ee5a24);border:none;border-radius:5px;color:#fff;cursor:pointer;display:block;font-size:.9rem;margin-top:.5rem;padding:.6rem;text-align:center;text-decoration:none;transition:transform .2s;width:100%}.history-btn:hover{transform:translateY(-2px)}.refresh-btn{background:linear-gradient(135deg,#3498db,#2980b9);border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:1rem;margin-bottom:1rem;padding:.75rem;transition:transform .2s;width:100%}.generate-btn{background:linear-gradient(135deg,#27ae60,#2ecc71);margin-bottom:1rem}.refresh-btn:hover{transform:translateY(-2px)}.registration-history-btn{background:#9b59b6;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:.9rem;margin-top:.5rem;padding:.6rem;transition:background .2s;width:100%}.registration-history-btn:hover{background:#8e44ad}.email-manager-btn{background:linear-gradient(135deg,#0089d8,#d14836);border:none;border-radius:5px;box-shadow:0 4px 12px #ea43354d;color:#fff;cursor:pointer;display:block;font-size:.9rem;margin-top:.5rem;padding:.6rem;text-align:center;text-decoration:none;transition:transform .2s,box-shadow .2s;width:100%}.email-manager-btn:hover{box-shadow:0 6px 20px #ea433566;transform:translateY(-2px)}.email-manager-btn:active{transform:translateY(0)}.registrations-list{max-height:400px;overflow-y:auto}.registration-item{align-items:flex-start;background:linear-gradient(135deg,#4a90e2,#357abd);border:1px solid #357abd;border-radius:8px;box-shadow:0 4px 15px #4a90e24d;display:flex;gap:.5rem;justify-content:space-between;padding:.75rem;transition:all .3s}.employee-header,.registration-item{margin-bottom:.5rem}.employee-header h4{color:#fff;font-size:1.05rem;font-weight:700;line-height:1.3;margin:0}.registration-actions{display:flex;flex-shrink:0;gap:.5rem}.delete-registration-btn{background:#e74c3c;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:.8rem;padding:.4rem .8rem;transition:background .2s ease,transform .1s ease}.delete-registration-btn:hover{background:#c0392b;transform:translateY(-1px)}.delete-registration-btn:active{transform:translateY(0)}.registration-item.approved{background:#fff;border:1px solid #e0e0e0}.registration-item.approved .registration-info h4,.registration-item.approved .registration-info p{color:#333}.registration-item.approved .shift-badge{background:#eef2ff;color:#3b4cca}.registration-info h4{color:#333;font-size:.95rem;margin:0 0 .25rem}.registration-info p{color:#666;font-size:.85rem;margin:0 0 .25rem}.shifts-detail{display:flex;flex-wrap:wrap;gap:.25rem;max-width:300px}.shift-badge{background:#fffffff2;border:1px solid #ffffff4d;border-radius:6px;box-shadow:0 1px 3px #0000001a;color:#2c5aa0;font-size:.7rem;font-weight:600;padding:.2rem .5rem;white-space:nowrap}.shift-badge.shift-A{background:#4caf50e6;border:1px solid #4caf50b3;color:#fff}.shift-badge.shift-B{background:#ff9800e6;border:1px solid #ff9800b3;color:#fff}.shift-badge.shift-C{background:#e91e63e6;border:1px solid #e91e63b3;color:#fff}.approve-btn{background:linear-gradient(135deg,#4caf50,#45a049);border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:.85rem;padding:.4rem .8rem;transition:transform .2s}.approve-btn:hover{transform:translateY(-2px)}.approve-btn:disabled{background:#9e9e9e;cursor:not-allowed;transform:none}.delete-btn{border:none;border-radius:5px;cursor:pointer;font-size:.85rem;padding:.4rem .8rem;transition:transform .2s}.delete-btn:hover{transform:translateY(-2px)}@media (max-width:768px){.admin-content{align-items:stretch;box-sizing:border-box;gap:1rem;grid-template-columns:1fr;padding:1rem;width:100%}.employee-input input{width:100%}.employee-input button{padding:.6rem;width:100%}.employee-list{max-height:150px}.employee-item{font-size:.9rem;padding:.4rem}.employee-item span{flex:1 1;order:1;text-align:left}.employee-item button{font-size:.8rem;margin-left:.5rem;order:2;padding:.2rem .4rem}.admin-header{flex-direction:column;gap:.5rem;padding:1rem;text-align:center}.admin-header h1{font-size:1.2rem}.registrations-section,.settings-section{padding:1rem}.registrations-section h2,.settings-section h2{font-size:1rem}.registrations-header{gap:.75rem}.registration-item,.registrations-header{align-items:stretch;flex-direction:column}.registration-item{gap:.5rem;padding:.6rem}.registration-info h4{font-size:.9rem}.registration-info p{font-size:.75rem}.shifts-detail{max-width:100%}.registration-actions{flex-direction:row;justify-content:stretch}.approve-btn,.delete-btn,.refresh-registrations-btn{flex:1 1;font-size:.75rem;padding:.4rem}.employee-input{flex-direction:column;gap:.5rem}.employee-input input{margin-right:0}.date-range-row{flex-wrap:wrap;gap:.5rem}.date-range-row input[type=date]{flex:1 1 40%;font-size:.9rem;min-width:120px;padding:.5rem}.setting-group input[type=date]{border:2px solid #ddd;border-radius:5px;box-sizing:border-box;font-size:.9rem;padding:.6rem;width:100%}.date-separator,.toggle-label{font-size:.9rem}.generate-btn,.refresh-btn,.save-btn{font-size:.9rem;padding:.6rem}}@media (max-width:480px){.admin-header{padding:.75rem}.admin-header h1{font-size:1rem}.logout-btn{font-size:.8rem;padding:.4rem .8rem}.admin-content{align-items:stretch;box-sizing:border-box;padding:.5rem;width:100%}.registrations-section,.settings-section{border-radius:8px;padding:.75rem}.registrations-section h2,.settings-section h2{font-size:.9rem}.registration-item{padding:.5rem}.registration-info h4{font-size:.85rem}.registration-info p{font-size:.7rem}.approve-btn,.delete-btn,.delete-registration-btn,.refresh-registrations-btn{font-size:.85rem;padding:.45rem .7rem}.divider{border-radius:999px;border-top:1px dashed #e0e0e0;height:0;margin:1rem 0}.shift-badge{font-size:.55rem;padding:.1rem .25rem}.setting-group label{font-size:.85rem}.employee-item{font-size:.8rem;padding:.3rem}.employee-item span{flex:1 1;order:1;text-align:left}.employee-item button{border-radius:6px;font-size:.9rem;margin-left:.4rem;order:2;padding:.45rem .6rem}.date-range-row input[type=date]{flex:1 1 35%;font-size:.8rem;min-width:100px;padding:.4rem}.setting-group input[type=date]{border:2px solid #ddd;border-radius:5px;box-sizing:border-box;font-size:.8rem;padding:.5rem;width:100%}.date-separator{font-size:.8rem}}.reminder-btn{background:linear-gradient(135deg,#f39c12,#e67e22);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:.8rem 1.5rem;transition:all .3s ease;width:100%}.reminder-btn:hover:not(:disabled){box-shadow:0 5px 15px #f39c124d;transform:translateY(-2px)}.reminder-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.auto-allocate-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:5px;box-shadow:0 2px 8px #667eea4d;color:#fff;cursor:pointer;font-size:.85rem;padding:.4rem .8rem;transition:all .3s ease}.auto-allocate-btn:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.auto-allocate-btn:disabled{background:#6c757d;box-shadow:none;cursor:not-allowed;transform:none}.save-schedule-btn{background:linear-gradient(135deg,#28a745,#20c997);border:none;border-radius:5px;box-shadow:0 2px 8px #28a7454d;color:#fff;cursor:pointer;font-size:.85rem;padding:.4rem .8rem;transition:all .3s ease}.save-schedule-btn:hover:not(:disabled){box-shadow:0 4px 12px #28a74566;transform:translateY(-2px)}.save-schedule-btn:disabled{background:#6c757d;box-shadow:none;cursor:not-allowed;transform:none}.shift-warning-card{background:#fff3cd;border:1px solid #ffeeba;border-radius:10px;box-shadow:0 4px 12px #00000014;margin:1.5rem 2rem 0;padding:1rem 1.2rem}.shift-warning-card h2{color:#856404;font-size:1.1rem;margin:0 0 .4rem}.shift-warning-summary{color:#856404;font-size:.9rem;margin:0 0 .6rem}.shift-warning-list{display:flex;flex-wrap:wrap;gap:.4rem;list-style:none;margin:0;padding:0}.shift-warning-list li{align-items:center;background:#fff;border:1px solid #ffe8a1;border-radius:999px;color:#856404;display:inline-flex;font-size:.8rem;gap:.4rem;padding:.25rem .7rem}.warning-date,.warning-shift{font-weight:600}.warning-text{opacity:.9}.clear-all-btn{background:linear-gradient(135deg,#dc3545,#c82333);border:none;border-radius:5px;box-shadow:0 2px 8px #dc35454d;color:#fff;cursor:pointer;font-size:.85rem;font-weight:600;padding:.4rem .8rem;transition:all .3s ease}.clear-all-btn:hover:not(:disabled){background:linear-gradient(135deg,#c82333,#a71e2a);box-shadow:0 4px 12px #dc354566;transform:translateY(-2px)}.clear-all-btn:active{transform:translateY(0)}.clear-all-btn:disabled{background:#6c757d;box-shadow:none;cursor:not-allowed;transform:none}.staff-page{background:linear-gradient(135deg,#74b9ff,#0984e3);min-height:100vh;overflow-x:hidden}.error-container,.loading{align-items:center;color:#fff;display:flex;flex-direction:column;justify-content:center;min-height:100vh;text-align:center}.error-container h2{font-size:2rem;margin-bottom:1rem}.staff-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:2rem;text-align:center}.header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px}.admin-login-btn{background:#fff3;border:2px solid #fff;border-radius:5px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .3s}.admin-login-btn:hover{background:#ffffff4d;transform:translateY(-2px)}.admin-login-link{background:#ffffff1a;border:1px solid #ffffff4d;border-radius:4px;color:#fff;cursor:pointer;display:inline-block;font-size:.8rem;margin-top:1rem;padding:.4rem .8rem;text-decoration:none;transition:all .3s}.admin-login-link:hover{background:#fff3;border-color:#ffffff80}.staff-header h1{font-size:2rem;margin:0 0 .5rem}.staff-header p{margin:0;opacity:.9}.staff-content{align-items:center;display:flex;flex-direction:column;margin:2rem auto;max-width:1200px;padding:0 1rem}.staff-footer{color:#fffc;font-size:.8rem;margin-bottom:1rem;text-align:center}.registration-form{background:#fff;border-radius:15px;box-shadow:0 10px 30px #0003;max-width:1100px;padding:2rem;width:100%}.form-group{margin-bottom:2rem}.form-group label{color:#333;display:block;font-weight:600;margin-bottom:.5rem}.employee-select{background:#fff;border:2px solid #ddd;border-radius:8px;cursor:pointer;font-size:1rem;padding:.75rem;transition:border-color .3s;width:100%}.employee-select:focus{border-color:#0984e3;outline:none}.filter-select{background:#fff;border:2px solid #ddd;border-radius:8px;cursor:pointer;font-size:1rem;padding:.75rem;transition:border-color .3s;width:100%}.filter-select:focus{border-color:#0984e3;outline:none}.shifts-table{margin-bottom:2rem}.shifts-table h3{color:#333;margin-bottom:1rem;text-align:center}.shifts-table table{border-collapse:collapse;margin-bottom:1rem;width:100%}.shifts-table td,.shifts-table th{border:1px solid #ddd;padding:1rem;text-align:center}.shifts-table th{background:#f8f9fa;color:#333;font-weight:600}.shifts-table td:first-child{font-weight:500;text-align:left}.shifts-table td:first-child small{color:#666;display:block;font-weight:400}.checkbox-cell{position:relative}.checkbox-cell input[type=checkbox],.checkbox-cell label{cursor:pointer;height:20px;width:20px}.checkbox-cell label{display:block}.selected-shifts{background:#f8f9fa;border-radius:8px;margin-bottom:2rem;max-height:120px;overflow-y:auto;padding:1rem}.selected-shifts h4{color:#333;margin:0 0 1rem}.shifts-list{align-items:flex-start;display:flex;flex-wrap:wrap;gap:.5rem}.shifts-list:after{content:"";flex-basis:100%}.shift-badge{background:#0984e3;border-radius:20px;box-sizing:border-box;color:#fff;flex-basis:calc(33.333% - 0.34rem);font-size:.9rem;padding:.5rem 1rem;text-align:center}.submit-btn{background:linear-gradient(135deg,#00b894,#00a085);font-size:1.1rem;margin-bottom:1rem;padding:1rem}.submit-btn,.test-toast-btn{border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;transition:transform .2s,box-shadow .2s;width:100%}.test-toast-btn{background:linear-gradient(135deg,#6c5ce7,#5f3dc4);font-size:1rem;padding:.8rem}.submit-btn:hover{box-shadow:0 5px 15px #00b8944d;transform:translateY(-2px)}.test-toast-btn:hover{box-shadow:0 5px 15px #6c5ce74d;transform:translateY(-2px)}.error-message{background:#fff5f5;border:1px solid #e74c3c;border-radius:8px;color:#e74c3c;margin-bottom:1rem;padding:1rem}.success-message{background:#f0fff4;border:1px solid #27ae60;border-radius:8px;color:#27ae60;margin-bottom:1rem;padding:1rem}.date-range-banner{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:15px;box-shadow:0 10px 30px #667eea66;display:flex;gap:1.5rem;justify-content:center;margin:0 auto 2rem;max-width:-webkit-fit-content;max-width:fit-content;padding:1.5rem 2rem}.date-range-icon{animation:pulse 2s infinite;font-size:3rem}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.date-range-content{align-items:center;display:flex;flex-direction:column;gap:.5rem}.date-range-label{color:#ffffffe6;font-size:1.1rem;font-weight:500;letter-spacing:2px;text-transform:uppercase}.date-range-dates{align-items:center;color:#fff;display:flex;flex-wrap:wrap;font-size:1.8rem;font-weight:700;gap:.75rem;justify-content:center;max-width:100%}.date-range-separator{color:gold;font-size:2rem;font-weight:700}.shift-times-info{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:8px;display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem;padding:.5rem}.shift-time-item{align-items:center;display:flex;flex-direction:row;gap:.25rem;justify-content:space-between}.shift-label{color:#ffffffe6;font-size:.8rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.shift-time{background:#ffffff26;border:1px solid #fff3;border-radius:4px;color:#fff;font-size:.7rem;font-weight:500;padding:.2rem .4rem}@media (max-width:768px){.staff-header{padding:1rem}.header-content{flex-direction:column;gap:.75rem;text-align:center}.admin-login-btn{font-size:.75rem;padding:.4rem .8rem}.staff-header h1{font-size:1.3rem}.staff-header p{font-size:.8rem}.staff-content{margin:.75rem auto;padding:0 .5rem}.registration-form{border-radius:10px;padding:1rem}.form-group{margin-bottom:1rem}.form-group label{font-size:.85rem}.employee-select,.filter-select{font-size:.85rem;padding:.5rem}.shifts-table h3{font-size:.9rem}.shifts-table{margin:0 -.5rem;overflow-x:auto;padding:0 .5rem}.shifts-table table{font-size:.7rem;min-width:350px}.shifts-table td,.shifts-table th{padding:.3rem}.shifts-table td:first-child{font-size:.7rem;min-width:60px}.shifts-table td:first-child small{font-size:.6rem}.checkbox-cell input[type=checkbox],.checkbox-cell label{height:14px;width:14px}.selected-shifts{margin-bottom:1rem;padding:.6rem}.selected-shifts h4{font-size:.85rem;margin-bottom:.5rem}.shifts-list{background:#f8f9fa;border:1px solid #e9ecef;border-radius:5px;display:flex;flex-wrap:wrap;gap:.3rem;max-height:80px;overflow-y:auto;padding:.25rem}.shift-badge{font-size:.65rem;padding:.25rem .5rem}.submit-btn{font-size:.95rem;padding:.7rem}.error-message,.success-message{font-size:.8rem;padding:.6rem}.date-range-banner{box-sizing:border-box;flex-direction:column;gap:.75rem;margin:0 auto 1rem;max-width:100%;padding:.9rem 1rem}.date-range-icon{font-size:2.5rem}.date-range-label{font-size:.9rem;letter-spacing:1px}.date-range-dates{flex-direction:row;flex-wrap:wrap;font-size:1.2rem;gap:.4rem}.date-range-separator{font-size:1.5rem}.shift-times-info{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.5rem;padding:.4rem}.shift-time-item{background:#ffffff1a;border-radius:6px;flex-direction:row;gap:.5rem;justify-content:space-between;padding:.3rem}.shift-label{font-size:.75rem}.shift-time{font-size:.65rem}}@media (max-width:480px){.staff-header{padding:.75rem}.staff-header h1{font-size:1.1rem}.staff-header p{font-size:.7rem}.admin-login-btn{font-size:.7rem;padding:.35rem .6rem}.staff-content{margin:.5rem auto;padding:0 .25rem}.registration-form{border-radius:8px;padding:.75rem}.form-group{margin-bottom:.75rem}.form-group label{font-size:.8rem}.employee-select,.filter-select{font-size:.8rem;padding:.4rem}.shifts-table h3{font-size:.8rem;margin-bottom:.5rem}.shifts-table{margin:0 -.25rem;overflow-x:auto;padding:0 .25rem}.shifts-table table{font-size:.6rem;min-width:300px}.shifts-table td,.shifts-table th{padding:.25rem}.shifts-table td:first-child{font-size:.6rem;min-width:50px}.shifts-table td:first-child small{font-size:.5rem}.checkbox-cell input[type=checkbox],.checkbox-cell label{height:12px;width:12px}.selected-shifts{margin-bottom:.75rem;padding:.5rem}.selected-shifts h4{font-size:.75rem}.shifts-list{background:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;display:flex;flex-wrap:wrap;gap:.25rem;max-height:60px;overflow-y:auto;padding:.2rem}.shift-badge{font-size:.55rem;padding:.2rem .4rem}.submit-btn{font-size:.85rem;padding:.6rem}.error-message,.success-message{font-size:.75rem;padding:.5rem}.date-range-banner{box-sizing:border-box;gap:.4rem;margin:0 auto .8rem;max-width:100%;padding:.6rem .75rem}.date-range-icon{font-size:2rem}.date-range-label{font-size:.75rem}.date-range-dates{flex-direction:row;flex-wrap:wrap;font-size:.9rem;justify-content:center;text-align:center}.date-range-separator{font-size:1.2rem}.shift-times-info{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.4rem;padding:.3rem}.shift-time-item{background:#ffffff1a;border-radius:4px;flex-direction:row;gap:.5rem;justify-content:space-between;padding:.25rem}.shift-label{font-size:.7rem}.shift-time{font-size:.6rem}}.schedule-history-page{background:#f5f5f5;min-height:100vh;padding:2rem}.history-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:10px;color:#fff;display:flex;justify-content:space-between;margin-bottom:2rem;padding:1.5rem}.history-header h1{font-size:1.5rem;margin:0}.back-btn{background:#fff3;border:1px solid #fff;border-radius:5px;padding:.5rem 1rem;text-decoration:none;transition:background .3s}.back-btn:hover{background:#ffffff4d}.history-content{margin:0 auto;max-width:1200px}.history-item{background:#fff;border-left:4px solid #667eea;border-radius:10px;box-shadow:0 2px 10px #0000001a;margin-bottom:1.5rem;padding:1.5rem}.history-item-header{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:.5rem}.history-date{color:#333;font-size:1.1rem;font-weight:600}.history-actions{display:flex;gap:.5rem}.delete-btn,.export-btn,.send-schedule-btn{border:none;border-radius:5px;cursor:pointer;font-size:.85rem;padding:.4rem .8rem;transition:transform .2s}.export-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.delete-btn{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff}.send-schedule-btn{background:linear-gradient(135deg,#27ae60,#2ecc71);color:#fff}.delete-btn:hover,.export-btn:hover,.send-schedule-btn:hover{transform:translateY(-2px)}.send-schedule-btn:disabled{background:#95a5a6;cursor:not-allowed;transform:none}.history-schedule{margin-top:1rem}.loading{padding:2rem}.no-data{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;color:#888;padding:3rem;text-align:center}@media (max-width:768px){.schedule-history-page{padding:1rem}.history-header{flex-direction:column;gap:1rem;text-align:center}.history-item-header{align-items:stretch;flex-direction:column;gap:.5rem}.history-actions{justify-content:stretch}.delete-btn,.export-btn{flex:1 1}}@media (max-width:480px){.history-header h1{font-size:1.2rem}.history-item{padding:1rem}.history-date{font-size:1rem}}.allocation-manager{margin:0 auto;max-width:1200px;padding:2rem}.allocation-header{align-items:center;border-bottom:2px solid #e9ecef;display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem}.allocation-header h1{color:#2c3e50;font-size:2rem;margin:0}.back-btn{background:#6c757d;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;padding:.75rem 1.5rem;transition:all .3s ease}.back-btn:hover{background:#5a6268;transform:translateY(-2px)}.allocation-content{display:flex;flex-direction:column;gap:2rem}.info-section,.limits-section,.overload-section,.result-section,.stats-section{background:#fff;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 2px 10px #0000001a;padding:1.5rem}.info-section h3,.limits-section h3,.overload-section h3,.result-section h3,.stats-section h3{color:#2c3e50;font-size:1.25rem;margin:0 0 1rem}.info-text{color:#495057;font-size:1rem;line-height:1.6;margin:0}.limits-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.limit-item{align-items:center;display:flex;gap:.75rem}.limit-item label{color:#495057;font-weight:600;min-width:100px}.limit-item input{border:2px solid #e9ecef;border-radius:6px;font-size:1rem;padding:.5rem;text-align:center;width:80px}.limit-item input:focus{border-color:#007bff;outline:none}.overload-list{display:flex;flex-direction:column;gap:.5rem}.overload-item{align-items:center;background:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;color:#856404;display:flex;justify-content:space-between;padding:.75rem}.overload-count{color:#dc3545;font-weight:600}.result-stats,.stats-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stat-item{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;display:flex;justify-content:space-between;padding:.75rem}.stat-item label{color:#495057;font-weight:600}.stat-item span{color:#007bff;font-size:1.1rem;font-weight:700}.shift-distribution{border-top:1px solid #e9ecef;margin-top:1rem;padding-top:1rem}.shift-distribution h4{color:#2c3e50;font-size:1rem;margin:0 0 .75rem}.distribution-item{align-items:center;background:#f8f9fa;border-radius:4px;display:flex;justify-content:space-between;margin-bottom:.5rem;padding:.5rem}.distribution-item span:first-child{color:#495057;font-weight:600}.distribution-item span:last-child{color:#28a745;font-weight:700}.actions{display:flex;justify-content:center;padding:1rem 0}.allocate-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 4px 15px #667eea66;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:1rem 2rem;transition:all .3s ease}.allocate-btn:hover:not(:disabled){box-shadow:0 6px 20px #667eea80;transform:translateY(-3px)}.allocate-btn:disabled{background:#6c757d;box-shadow:none;cursor:not-allowed;transform:none}.loading{color:#6c757d;padding:3rem;text-align:center}@media (max-width:768px){.allocation-manager{padding:1rem}.allocation-header{flex-direction:column;gap:1rem;text-align:center}.allocation-header h1{font-size:1.5rem}.limits-grid,.result-stats,.stats-grid{grid-template-columns:1fr}.limit-item{align-items:flex-start;flex-direction:column;gap:.5rem}.limit-item input{width:100%}}@media (max-width:480px){.allocation-manager{padding:.75rem}.limits-section,.overload-section,.result-section,.stats-section{padding:1rem}.allocate-btn{font-size:1rem;padding:.75rem 1.5rem}}.admin-page{background:linear-gradient(135deg,#667eea,#764ba2);box-sizing:border-box;min-height:100vh;overflow-x:hidden;padding:20px;width:100%}.admin-header{align-items:center;background:#fff;border-radius:12px;box-shadow:0 10px 25px #0000001a;color:#2d3748;display:flex;justify-content:space-between;margin-bottom:2rem;padding:1.5rem 2rem}.admin-header h1{color:#1f2937;font-size:1.8rem;font-weight:700;margin:0}.btn-back{align-items:center;background:#4f46e5;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-weight:500;gap:8px;padding:.6rem 1.2rem;transition:all .3s ease}.btn-back:hover{background:#4338ca;transform:translateY(-2px)}.admin-content{max-width:1000px}.admin-content,.email-manager-section{box-sizing:border-box;margin:0 auto;width:100%}.email-manager-section{background:#fff;border-radius:16px;box-shadow:0 10px 25px #0000001a;overflow:hidden}.section-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;padding:2rem}.section-header h2{color:#1f2937;font-size:1.5rem;margin:0}.header-actions{display:flex;gap:12px}.auto-fill-btn,.clear-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-weight:500;gap:8px;padding:.5rem 1rem;transition:all .2s}.auto-fill-btn{background:#e0e7ff;color:#4f46e5}.auto-fill-btn:not(:disabled):hover{background:#c7d2fe}.clear-btn{background:#fee2e2;color:#dc2626}.clear-btn:hover:not(:disabled){background:#fecaca}.email-list{padding:2rem}.email-table{background:#fff;border-collapse:initial;border-radius:12px;border-spacing:0;box-shadow:0 4px 12px #0000000d;overflow:hidden;width:100%}.email-table thead{background:linear-gradient(135deg,#f8fafc,#f1f5f9)}.email-table th{border-bottom:2px solid #e5e7eb;color:#374151;font-size:.875rem;font-weight:600;letter-spacing:.05em;padding:1rem 1.5rem;text-align:left;text-transform:uppercase}.email-table tbody tr{border-bottom:1px solid #f3f4f6;transition:all .2s ease}.email-table tbody tr:hover{background:#f9fafb;transform:translateX(4px)}.email-table tbody tr:last-child{border-bottom:none}.email-table td{padding:1.25rem 1.5rem;vertical-align:middle}.email-table td:nth-child(2){min-width:400px;width:auto}.employee-info{align-items:center;display:flex;gap:1rem}.employee-avatar{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:20px;height:48px;justify-content:center;width:48px}.employee-name{color:#1f2937}.employee-name-mdb{color:#1f2937;font-size:1rem}.email-input-mdb{max-width:100%!important;width:100%!important}.email-manager-section .email-list .email-table .email-input-wrapper{display:block!important;max-width:500px;min-width:300px;position:relative;width:100%}.email-manager-section .email-list .email-table .email-input-wrapper i{color:#9ca3af;font-size:16px;left:12px;position:absolute;top:50%;transform:translateY(-50%);z-index:1}.email-manager-section .email-list .email-table .email-input-wrapper .email-input{background:#fff!important;border:2px solid #e5e7eb!important;border-radius:8px!important;display:block!important;font-size:.95rem!important;line-height:1.5!important;min-height:44px!important;opacity:1!important;padding:.75rem 1rem .75rem 40px!important;transition:all .2s ease!important;visibility:visible!important;width:100%!important}.email-manager-section .email-list .email-table .email-input-wrapper .email-input:focus{border-color:#4f46e5!important;box-shadow:0 0 0 3px #4f46e51a!important;outline:none}.email-manager-section .email-list .email-table .email-input-wrapper .email-input:hover{border-color:#d1d5db!important}.action-buttons{background:#f8fafc;border-top:1px solid #e5e7eb;display:flex;gap:1rem;justify-content:center;padding:2rem}.btn-save,.btn-test{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;justify-content:center;min-width:140px;padding:.875rem 2rem;transition:all .2s}.btn-save{background:linear-gradient(135deg,#4f46e5,#7c3aed);box-shadow:0 4px 12px #4f46e54d;color:#fff}.btn-save:hover:not(:disabled){box-shadow:0 6px 20px #4f46e566;transform:translateY(-2px)}.btn-test{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 4px 12px #f59e0b4d;color:#fff}.btn-test:hover:not(:disabled){box-shadow:0 6px 20px #f59e0b66;transform:translateY(-2px)}.btn-save:disabled,.btn-test:disabled{cursor:not-allowed;opacity:.6;transform:none}@media (max-width:768px){.admin-page{padding:10px}.admin-header{flex-direction:column;gap:1rem;padding:1rem;text-align:center}.admin-header h1{font-size:1.4rem}.section-header{align-items:stretch;flex-direction:column;gap:1rem;padding:1rem}.section-header h2{font-size:1.2rem;text-align:center}.header-actions{flex-wrap:wrap;justify-content:center}.email-list{box-sizing:border-box;padding:.5rem;width:100%}.email-table{display:block;font-size:.9rem;overflow-x:hidden;width:100%}.email-table thead{display:none}.email-table tbody,.email-table td,.email-table tr{display:block;width:100%}.email-table tr{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:.75rem;padding:.75rem}.email-table td,.email-table tr{box-sizing:border-box;width:100%}.email-table td{border:none;padding:.4rem 0 .4rem 65px;position:relative}.email-table td:before{color:#6b7280;content:attr(data-label);font-size:.75rem;font-weight:600;left:0;position:absolute;text-transform:uppercase;width:60px}.email-table td:first-child:before{content:"NV"}.email-table td:nth-child(2):before{content:"Email"}.employee-info{padding:0}.employee-avatar{font-size:16px;height:40px;width:40px}.employee-name{font-size:.9rem}.email-manager-section .email-list .email-table .email-input-wrapper{box-sizing:border-box;max-width:100%;min-width:100%;width:100%}.email-manager-section .email-list .email-table .email-input-wrapper .email-input{box-sizing:border-box!important;font-size:.85rem!important;min-height:38px!important;padding:.5rem 1rem .5rem 35px!important;width:100%!important}.action-buttons{flex-direction:column;padding:1rem}.btn-save,.btn-test{justify-content:center;width:100%}.container-fluid{padding:.5rem!important}.table-responsive{overflow-x:auto!important}.email-input-mdb{flex:1 1!important;min-width:0!important}.email-input-mdb .form-control{font-size:.875rem!important;min-width:0!important;width:100%!important}.table td{padding:.5rem!important;vertical-align:middle!important}.table td:first-child{max-width:200px!important;min-width:150px!important;width:200px!important}.table td:nth-child(2){min-width:250px!important;width:auto!important}.table th:first-child{max-width:200px!important;min-width:150px!important;width:200px!important}}@media (max-width:480px){.admin-header{padding:.8rem}.admin-header h1{font-size:1.2rem}.table td{padding:.25rem!important;padding-left:60px}.email-table td:before{font-size:.75rem;width:50px}.employee-avatar{font-size:14px;height:36px;width:36px}.employee-name{font-size:.85rem}.email-manager-section .email-list .email-table .email-input-wrapper .email-input{font-size:.8rem!important;min-height:34px!important;padding:.4rem .75rem .4rem 30px!important}.email-table tr{margin-bottom:.75rem;padding:.75rem}.email-input-mdb .form-control{font-size:.8rem!important;padding:.375rem .75rem!important}}.registration-history-container{background:linear-gradient(135deg,#e3f2fd,#bbdefb 50%,#90caf9);min-height:100vh;padding:2rem 0}.week-selector{margin:0 auto;max-width:400px}.week-info{background:#2196f326;border:2px solid #2196f34d;border-radius:10px;box-shadow:0 4px 15px #2196f31a;margin-bottom:2rem;padding:1.5rem}.employee-registration-card{background:#fff;border:1px solid #90caf9;border-radius:12px;box-shadow:0 2px 8px #2196f31a;height:100%;transition:transform .2s,box-shadow .2s}.employee-registration-card:hover{border-color:#2196f3;box-shadow:0 8px 25px #2196f333;transform:translateY(-3px)}.employee-name{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border-bottom:3px solid #e3f2fd;border-radius:8px 8px 0 0;color:#1976d2;font-size:1rem;font-weight:600;margin:-1rem -1rem 1rem;padding:1rem;text-align:center}.shifts-list{max-height:300px;overflow-y:auto;padding:0 .5rem}.shift-item{align-items:center;background:linear-gradient(135deg,#fff,#f5f5f5);border-left:5px solid #2196f3;border-radius:10px;box-shadow:0 2px 8px #2196f31a;display:flex;justify-content:space-between;margin-bottom:.75rem;padding:.75rem;transition:transform .2s}.shift-item:hover{box-shadow:0 4px 12px #2196f326;transform:translateX(3px)}.shift-date{color:#424242;font-size:.85rem;font-weight:600}.shift-type{border-radius:20px;box-shadow:0 2px 5px #2196f34d;font-size:.75rem;font-weight:600;padding:.4rem .8rem}.shift-type.shift-A{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff}.shift-type.shift-B{background:linear-gradient(135deg,#ff9800,#f57c00);color:#fff}.shift-type.shift-C{background:linear-gradient(135deg,#f44336,#d32f2f);color:#fff}.no-shifts{background:linear-gradient(135deg,#fce4ec,#f8bbd9);border:2px dashed #f06292;border-radius:10px;color:#c2185b;font-style:italic;margin:0;padding:1.5rem;text-align:center}.schedule-table-wrapper{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;overflow-x:auto;padding:1rem}.schedule-matrix{border-collapse:collapse;font-family:monospace;min-width:800px;width:100%}.schedule-matrix td,.schedule-matrix th{border:1px solid #333;text-align:center;vertical-align:middle}.employee-col{background:#2c3e50;color:#fff;font-weight:700;left:0;padding:.75rem;position:-webkit-sticky;position:sticky;z-index:10}.date-col{background:#34495e;color:#fff;min-width:60px;padding:.5rem}.date-col div{font-size:.9rem;font-weight:700}.date-col small{display:block;font-size:.7rem;opacity:.8}.shift-col{background:#7f8c8d;color:#fff;font-size:.8rem;font-weight:700;min-width:30px;padding:.4rem}.employee-name{background:#ecf0f1;border-right:2px solid #333;font-weight:700;left:0;min-width:120px;padding:.75rem;position:-webkit-sticky;position:sticky;text-align:left;z-index:5}.shift-cell{background:#fff;color:#27ae60;font-size:1.2rem;font-weight:700;min-width:30px;padding:.5rem}.shift-cell:hover{background:#f0f0f0}@media (max-width:768px){.schedule-table-wrapper{padding:.5rem}.schedule-matrix{font-size:.8rem;min-width:600px}.schedule-matrix td,.schedule-matrix th{min-width:25px;padding:.3rem}.employee-name{min-width:80px}.date-col div,.employee-name{font-size:.8rem}.date-col small{font-size:.6rem}.shift-col{font-size:.7rem;padding:.3rem}.shift-cell{font-size:1rem;padding:.3rem}}.statistics-section{background:#fff;border-radius:15px;box-shadow:0 8px 30px #2196f31a;margin-bottom:2rem;padding:2rem}.stat-card{background:linear-gradient(135deg,#fff,#f8f9fa);border:none;border-radius:10px;box-shadow:0 4px 15px #2196f314;transition:transform .2s,box-shadow .2s}.stat-card:hover{box-shadow:0 8px 25px #2196f326;transform:translateY(-3px)}.stat-number{color:#1976d2;font-size:2rem;font-weight:700;margin:0}.stat-label{color:#666;font-size:.9rem;font-weight:500;margin:0}.shift-distribution{background:#2196f30d;border-radius:8px;padding:1rem;text-align:center}.shift-badge-stat{border-radius:20px;font-size:.9rem;font-weight:600;padding:.5rem 1rem}.search-filter-section{background:#fff;border-radius:10px;box-shadow:0 4px 15px #2196f314;margin-bottom:2rem;padding:1.5rem}.search-input{border:2px solid #e3f2fd;border-radius:8px;transition:border-color .3s}.search-input:focus{border-color:#2196f3;box-shadow:0 0 0 3px #2196f31a}.reset-btn{border-radius:8px;font-weight:500;transition:all .2s}.reset-btn:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-1px)}@media (max-width:768px){.registration-history-container{background:linear-gradient(135deg,#e3f2fd,#90caf9);padding:1rem 0}.week-selector{max-width:100%}.statistics-section{padding:1rem}.stat-number{font-size:1.5rem}.search-filter-section,.shift-item{padding:1rem}.shift-item{flex-direction:column;gap:.5rem;text-align:center}.shifts-list{max-height:250px}.employee-name{font-size:.9rem}.shift-distribution{padding:.75rem}.shift-badge-stat{font-size:.8rem;padding:.3rem .6rem}}*{box-sizing:border-box;margin:0;padding:0}body{background-color:#f5f5f5;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6}.App{min-height:100vh}button{cursor:pointer;transition:all .3s ease}button:hover{opacity:.9}input:focus{outline:none}table{border-collapse:collapse;width:100%}.error{color:#e74c3c}.success{color:#27ae60}.loading{align-items:center;color:#666;display:flex;font-size:1.2rem;justify-content:center;min-height:200px}@media (max-width:768px){body{font-size:14px}.loading{font-size:1rem;min-height:150px}}@media (max-width:480px){body{font-size:13px}.loading{font-size:.9rem;min-height:120px}}
/*# sourceMappingURL=main.bbe9296e.css.map*/