:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;color:#ffffffde;background-color:#1e1e1e;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;padding:0;min-width:320px;min-height:100vh;background:#1e1e1e}#root{min-height:100vh}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 20% 80%,rgba(120,119,198,.1) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(255,119,198,.1) 0%,transparent 50%),linear-gradient(135deg,#1e1e1e,#2d2d2d);padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;position:relative;overflow:hidden}.login-container:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(45deg,transparent,transparent 2px,rgba(255,255,255,.01) 2px,rgba(255,255,255,.01) 4px);pointer-events:none}.notification.warning{background:#8a6a24;color:#ffd43b;border:1px solid #ffd43b}.login-form{background:linear-gradient(145deg,#2a2a2a,#1e1e1e);padding:40px;border-radius:16px;box-shadow:0 8px 32px #0006,inset 0 1px #ffffff1a,inset 0 -1px #00000080;width:100%;max-width:400px;border:1px solid #404040;position:relative;overflow:hidden;min-height:420px;display:flex;flex-direction:column;justify-content:center}.login-form:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent)}.login-form:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(45deg,transparent 40%,rgba(255,255,255,.02) 50%,transparent 60%);pointer-events:none}.logo-container{text-align:center;margin-bottom:30px}.company-logo{max-width:150px;height:auto;border-radius:12px;box-shadow:0 4px 8px #0000004d,inset 0 1px #ffffff1a,0 1px #ffffff0d;border:1px solid rgba(255,255,255,.1);position:relative;overflow:hidden}.company-logo:after{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);animation:logoShine 3s ease-in-out infinite}@keyframes logoShine{0%{left:-100%}50%{left:100%}to{left:100%}}.input-group{margin-bottom:20px}.input-group label{display:block;margin-bottom:8px;color:#e0e0e0;font-weight:500;font-size:14px}.input-group input{width:100%;padding:12px 16px;border:2px solid #404040;border-radius:10px;background:linear-gradient(145deg,#1a1a1a,#0f0f0f);color:#fff;font-size:16px;transition:all .3s ease;box-sizing:border-box;box-shadow:inset 0 2px 4px #0009,inset 0 -1px #ffffff1a,0 1px #ffffff0d;position:relative}.input-group input:focus{outline:none;border-color:#06c;box-shadow:inset 0 2px 4px #0009,inset 0 -1px #ffffff1a,0 0 0 3px #0066cc1a,0 1px #ffffff0d,0 0 15px #0066cc4d;background:linear-gradient(145deg,#1f1f1f,#141414)}.input-group input::placeholder{color:#888}.login-button{width:100%;padding:14px;background:linear-gradient(145deg,#1a1a1a,#000);color:#fff;border:2px solid #333333;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:10px;box-shadow:inset 0 1px #ffffff1a,inset 0 -1px #000c,0 4px 8px #0000004d,0 1px #ffffff0d;position:relative;overflow:hidden;min-height:50px;display:flex;align-items:center;justify-content:center}.login-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transition:left .5s ease}.login-button:hover:not(:disabled){background:linear-gradient(145deg,#2a2a2a,#111);border-color:#555;box-shadow:inset 0 1px #ffffff26,inset 0 -1px #000c,0 6px 16px #0006,0 1px #ffffff1a}.login-button:hover:not(:disabled):before{left:100%}.login-button:active{box-shadow:inset 0 2px 4px #000c,inset 0 -1px #ffffff0d;background:linear-gradient(145deg,#0a0a0a,#000)}.login-button:disabled{background:linear-gradient(145deg,#333,#1a1a1a);border-color:#2a2a2a;cursor:not-allowed;box-shadow:inset 0 1px #ffffff0d,inset 0 -1px #0009,0 2px 4px #0003;opacity:.7}.login-button:disabled:before{display:none}@media(max-width:480px){.login-container{padding:10px}.login-form{padding:30px 20px}.company-logo{max-width:120px}}.login-button:disabled:after{content:"";width:16px;height:16px;margin-left:8px;border:2px solid transparent;border-top:2px solid #ffffff;border-radius:50%;display:inline-block;animation:spin 1s linear infinite}.sidebar{width:280px;background:linear-gradient(180deg,#2a2a2a,#1e1e1e);border-right:1px solid #404040;display:flex;flex-direction:column;transition:width .3s ease;position:relative;box-shadow:2px 0 10px #0000004d;height:100vh;overflow:visible}.sidebar.collapsed{width:70px}.sidebar-header{padding:20px 15px;border-bottom:1px solid #404040;display:flex;align-items:center;justify-content:space-between;min-height:80px}.logo-section{flex:1}.sidebar-logo{height:40px;width:auto;border-radius:6px}.toggle-btn{background:#333;border:1px solid #555555;color:#e0e0e0;width:32px;height:32px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.toggle-btn:hover{background:#404040;border-color:#666}.sidebar-nav{flex:1;padding:10px 0;overflow-y:auto;overflow-x:visible;max-height:calc(100vh - 180px);position:relative}.sidebar-nav::-webkit-scrollbar{width:6px}.sidebar-nav::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}.sidebar-nav::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:3px}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:#ffffff80}.menu-item{position:relative;margin-bottom:4px;z-index:1}.menu-item:hover{z-index:1001}.menu-link{display:flex;align-items:center;padding:12px 20px;color:#b0b0b0;text-decoration:none;transition:all .2s ease;border-radius:0;position:relative;cursor:pointer}.menu-link.no-click{cursor:default}.menu-link:hover{background:linear-gradient(90deg,rgba(255,255,255,.05),transparent);color:#e0e0e0}.menu-item.active .menu-link{background:linear-gradient(90deg,rgba(0,102,204,.2),transparent);color:#06c;border-right:3px solid #0066cc}.menu-arrow{margin-left:auto;font-size:12px;transition:transform .2s ease}.menu-item:hover .menu-arrow{transform:rotate(90deg)}@keyframes fadeInSubmenu{0%{opacity:0;transform:translate(-10px) scale(.95)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.menu-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;margin-right:12px;font-size:16px}.sidebar.collapsed .menu-icon{margin-right:0}.menu-text{font-size:14px;font-weight:500;white-space:nowrap}.submenu{position:absolute;left:100%;top:0;background:linear-gradient(145deg,#3a3a3a,#2e2e2e);border:1px solid #555555;border-radius:8px;box-shadow:4px 0 16px #0006;z-index:9999;min-width:220px;padding:0;visibility:hidden;opacity:0;transform:translate(-10px);transition:all .2s ease;pointer-events:auto;margin-left:5px}.submenu.collapsed{left:70px}.submenu-header{padding:12px 16px;background:#0066cc1a;border-bottom:1px solid #555555;font-size:12px;font-weight:600;color:#06c;text-transform:uppercase;letter-spacing:.5px}.submenu-item{display:flex;align-items:center;padding:12px 16px;color:#b0b0b0;text-decoration:none;transition:all .2s ease;font-size:13px;border-bottom:1px solid rgba(255,255,255,.05)}.submenu-item:last-child{border-bottom:none;border-radius:0 0 8px 8px}.submenu-item:hover{background:#ffffff1a;color:#e0e0e0;padding-left:20px}.submenu-item.active{background:#06c3;color:#06c;border-left:3px solid #0066cc}.submenu-icon{width:16px;height:16px;margin-right:10px;font-size:12px;display:flex;align-items:center;justify-content:center}.menu-tooltip{position:absolute;left:70px;top:50%;transform:translateY(-50%);background:linear-gradient(145deg,#3a3a3a,#2e2e2e);border:1px solid #555555;border-radius:8px;padding:8px 12px;box-shadow:4px 0 16px #0006;z-index:1000;white-space:nowrap;font-size:13px;color:#e0e0e0;opacity:0;pointer-events:none;transition:opacity .2s ease}.menu-item:hover .menu-tooltip{opacity:1;pointer-events:auto}.tooltip-submenu{margin-top:8px;border-top:1px solid #555555;padding-top:8px}.tooltip-submenu-item{display:block;padding:4px 0;color:#b0b0b0;text-decoration:none;font-size:12px;transition:color .2s ease}.tooltip-submenu-item:hover{color:#06c}.sidebar-footer{border-top:1px solid #404040;padding:15px}.user-profile{display:flex;align-items:center;margin-bottom:12px;padding:8px;border-radius:8px;background:#ffffff05}.user-avatar{width:40px;height:40px;border-radius:50%;margin-right:12px;overflow:hidden;border:2px solid #404040}.sidebar.collapsed .user-avatar{margin-right:0}.user-image{width:100%;height:100%;object-fit:cover}.user-initials{width:100%;height:100%;background:linear-gradient(145deg,#06c,#049);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600}.user-info{flex:1}.user-name{color:#e0e0e0;font-size:14px;font-weight:500;display:block}.logout-btn{width:100%;background:linear-gradient(145deg,#4d1f1f,#3a1515);border:1px solid #666666;color:#ff6b6b;padding:10px 12px;border-radius:8px;cursor:pointer;font-size:13px;font-weight:500;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.logout-btn:hover{background:linear-gradient(145deg,#5d2f2f,#4a2525);border-color:#777}.sidebar.collapsed .logout-btn span{display:none}.sidebar.collapsed .logout-btn{padding:10px}@media(max-width:768px){.sidebar{width:70px}.sidebar.collapsed{width:0;overflow:hidden}}.home-container{display:flex;min-height:100vh;background:linear-gradient(135deg,#1e1e1e,#2d2d2d);overflow:visible;position:relative}.main-content{flex:1;padding:20px;margin-left:0;transition:margin-left .3s ease}.welcome-section{background:linear-gradient(145deg,#2a2a2a,#1e1e1e);padding:40px;border-radius:16px;box-shadow:0 8px 32px #0006,inset 0 1px #ffffff1a;border:1px solid #404040;max-width:800px}.welcome-section h1{color:#e0e0e0;font-size:2rem;margin-bottom:16px;font-weight:600}.welcome-section p{color:#b0b0b0;font-size:1.1rem;line-height:1.5;margin-bottom:0}.loading-screen{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;color:#e0e0e0}.loading-spinner{width:40px;height:40px;border:3px solid #404040;border-top:3px solid #0066cc;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-message{background:#4d1f1f;color:#ff6b6b;padding:12px 16px;border-radius:8px;border:1px solid #ff6b6b;margin-top:16px;font-size:14px}@media(max-width:768px){.main-content{padding:15px}.welcome-section{padding:25px}.welcome-section h1{font-size:1.5rem}}.page-container{padding:20px;max-width:1200px;margin:0 auto}.page-header{margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid #404040}.page-header h1{color:#e0e0e0;font-size:2rem;font-weight:600;margin:0 0 8px}.page-header p{color:#b0b0b0;font-size:1.1rem;margin:0;line-height:1.4}.page-content{display:grid;gap:20px}.content-card{background:linear-gradient(145deg,#2a2a2a,#1e1e1e);padding:30px;border-radius:12px;box-shadow:0 4px 16px #0000004d,inset 0 1px #ffffff1a;border:1px solid #404040}.content-card h3{color:#e0e0e0;font-size:1.3rem;font-weight:600;margin:0 0 12px}.content-card p{color:#b0b0b0;line-height:1.5;margin:0 0 20px}.placeholder{background:#ffffff05;border:2px dashed #404040;border-radius:8px;padding:40px;text-align:center;color:#888;font-style:italic}.placeholder span{font-size:1.1rem}@media(max-width:768px){.page-container{padding:15px}.page-header h1{font-size:1.5rem}.content-card{padding:20px}}.date-input-wrapper{position:relative;display:inline-block;width:100%}.calendar-dropdown{position:absolute;top:100%;left:0;z-index:1000;background:#2a2a2a;border:1px solid #444;border-radius:8px;padding:15px;box-shadow:0 4px 12px #0000004d;margin-top:5px;min-width:280px}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.calendar-header button{background:#3a3a3a;border:1px solid #555;color:#fff;padding:5px 12px;border-radius:4px;cursor:pointer;font-size:16px;transition:background .2s}.calendar-header button:hover{background:#4a4a4a}.calendar-header span{color:#fff;font-weight:600;font-size:14px}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin-bottom:8px}.calendar-weekdays div{text-align:center;color:#4a9eff;font-size:12px;font-weight:600;padding:5px}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.calendar-day{text-align:center;padding:8px;cursor:pointer;border-radius:4px;color:#fff;font-size:13px;transition:background .2s}.calendar-day:not(.empty):hover{background:#3a3a3a}.calendar-day.empty{cursor:default}.calendar-day.selected{background:#4a9eff;color:#fff;font-weight:600}.calendar-day.selected:hover{background:#3a8ee6}.employee-container{padding:20px;background:linear-gradient(135deg,#1e1e1e,#2d2d2d);min-height:100vh;color:#e0e0e0;position:relative}.employee-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:15px;border-bottom:1px solid #404040}.employee-header h1{color:#e0e0e0;font-size:2rem;font-weight:600;margin:0}.btn-primary{background:linear-gradient(145deg,#06c,#049);border:1px solid #0077dd;color:#fff;padding:12px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s ease}.btn-primary:hover{background:linear-gradient(145deg,#07d,#05a);transform:translateY(-1px);box-shadow:0 4px 12px #0066cc4d}.employee-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:15px;background:linear-gradient(145deg,#2a2a2a,#1e1e1e);border-radius:8px;border:1px solid #404040}.employee-info span{color:#b0b0b0;font-weight:500}.btn-clear-filters{padding:8px 16px;background:linear-gradient(145deg,#333,#2a2a2a);border:1px solid #555555;color:#e0e0e0;border-radius:6px;cursor:pointer;font-size:12px;transition:all .2s ease}.btn-clear-filters:hover{background:linear-gradient(145deg,#404040,#333);border-color:#666}.employee-table-container{background:linear-gradient(145deg,#2a2a2a,#1e1e1e);border-radius:12px;border:1px solid #404040;overflow:hidden;box-shadow:0 4px 20px #0000004d}.employee-table{width:100%;border-collapse:collapse}.employee-table th{background:linear-gradient(145deg,#333,#2a2a2a);color:#e0e0e0;font-weight:600;padding:15px 12px;text-align:left;border-bottom:1px solid #555555;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.employee-table td{padding:15px 12px;border-bottom:1px solid rgba(255,255,255,.05);font-size:14px;color:#b0b0b0}.employee-table tr:hover{background:#ffffff05}.employee-table tr.inactive-row{opacity:.6;background:#ff00000d}.employee-name{align-items:center;gap:10px}.employee-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;border:2px solid #555555}.employee-initials{width:32px;height:32px;border-radius:50%;background:linear-gradient(145deg,#06c,#049);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;border:2px solid #555555}.no-picture{color:#888;font-style:italic;font-size:12px}.no-data{text-align:center;padding:40px 20px;color:#888;font-style:italic}.loading-screen{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:300px;color:#e0e0e0}.loading-screen p{margin-top:15px;font-size:16px}.error-message{background:linear-gradient(145deg,#4d1f1f,#3a1515);color:#ff6b6b;padding:15px 20px;border-radius:8px;border:1px solid #ff6b6b;margin-bottom:20px;font-size:14px;display:flex;align-items:center;gap:10px}.modal-content{background:linear-gradient(145deg,#2a2a2a,#1e1e1e);border:1px solid #404040;border-radius:12px;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #00000080}.modal-header h2{color:#e0e0e0;margin:0;font-size:1.5rem;font-weight:600}.modal-close{background:transparent;border:none;color:#b0b0b0;font-size:18px;cursor:pointer;padding:8px;border-radius:6px;transition:all .2s ease}.modal-close:hover{background:#ffffff1a;color:#e0e0e0}.employee-form{padding:24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:24px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{color:#e0e0e0;font-size:14px;font-weight:500}.form-group input{padding:12px 16px;background:#333;border:1px solid #555555;border-radius:8px;color:#e0e0e0;font-size:14px;transition:all .2s ease}.form-group input:focus{outline:none;border-color:#06c;background:#3a3a3a;box-shadow:0 0 0 3px #0066cc1a}.form-group input::placeholder{color:#888}.form-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:20px;border-top:1px solid #404040}.btn-secondary{background:linear-gradient(145deg,#333,#2a2a2a);border:1px solid #555555;color:#e0e0e0;padding:12px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s ease}.btn-secondary:hover{background:linear-gradient(145deg,#404040,#333);border-color:#666}@media(max-width:768px){.employee-container{padding:15px}.employee-header{flex-direction:column;gap:15px;align-items:stretch}.employee-filters{flex-direction:column;gap:15px}.search-box{max-width:none}.employee-table-container{overflow-x:auto}.employee-table{min-width:800px}.action-buttons{flex-wrap:wrap}.modal-content{width:95%;margin:10px}.form-grid{grid-template-columns:1fr;gap:16px}.form-actions{flex-direction:column-reverse}.modal-header{padding:16px 20px}.employee-form{padding:20px}}.detail-modal-container{background:linear-gradient(145deg,#2a2a2a,#1e1e1e);border:1px solid #404040;border-radius:12px;width:90%;max-width:1200px;height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000080}.detail-modal-body{display:flex;flex:1;overflow:hidden}.tab-navigation{display:flex;flex-direction:column;gap:8px;padding:20px;background:linear-gradient(145deg,#1e1e1e,#2a2a2a);border-right:1px solid #404040;min-width:200px}.tab-button{padding:12px 16px;background:transparent;border:1px solid #404040;border-radius:8px;color:#b0b0b0;font-size:14px;font-weight:500;cursor:pointer;text-align:left;transition:all .2s ease}.tab-button:hover{background:#ffffff0d;color:#e0e0e0;border-color:#555}.tab-button.active{background:linear-gradient(145deg,#06c,#049);color:#fff;border-color:#07d;font-weight:600}.tab-content{flex:1;padding:24px;overflow-y:auto;background:linear-gradient(145deg,#2a2a2a,#1e1e1e)}.profile-tab{display:flex;flex-direction:column;gap:24px}.profile-actions{display:flex;gap:12px;justify-content:flex-end}.profile-info{display:grid;grid-template-columns:1fr 1fr;gap:20px}.info-group{display:flex;flex-direction:column;gap:8px;padding:16px;background:#ffffff05;border-radius:8px;border:1px solid #404040}.info-group label{color:#888;font-size:12px;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.info-group span{color:#e0e0e0;font-size:14px;font-weight:500}.info-group input,.info-group select,.info-group textarea{padding:10px 12px;background:#333;border:1px solid #555555;border-radius:6px;color:#e0e0e0;font-size:14px;transition:all .2s ease}.info-group input:focus,.info-group select:focus,.info-group textarea:focus{outline:none;border-color:#06c;background:#3a3a3a;box-shadow:0 0 0 3px #0066cc1a}.locations-tab{display:flex;flex-direction:column;gap:24px}.locations-assigned h3,.locations-available h3{color:#e0e0e0;font-size:16px;font-weight:600;margin-bottom:16px}.locations-available-add{display:flex;align-items:center;width:100%;gap:10px;margin-top:20px}.location-list{display:flex;flex-direction:column;gap:12px}.location-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#ffffff05;border:1px solid #404040;border-radius:8px;transition:all .2s ease}.location-item:hover{background:#ffffff0a;border-color:#555}.location-item span{color:#e0e0e0;font-size:14px;font-weight:500;width:40%}.location-select{width:30%;padding:12px 16px;background:#333;border:1px solid #555555;border-radius:8px;color:#e0e0e0;font-size:14px;cursor:pointer;transition:all .2s ease;margin:0 15px 0 0}.location-select:focus{outline:none;border-color:#06c;background:#3a3a3a;box-shadow:0 0 0 3px #0066cc1a}.shifts-tab{display:flex;flex-direction:column;gap:24px}.shifts-actions{display:flex;justify-content:flex-end}.manual-entry-form,.dayoff-form{padding:20px;background:#ffffff05;border:1px solid #404040;border-radius:8px;margin-bottom:24px}.manual-entry-form h3,.dayoff-form h3,.manual-entries-list h3,.dayoffs-list h3{color:#e0e0e0;font-size:16px;font-weight:600;margin-bottom:16px}.data-table{width:100%;border-collapse:collapse;background:#ffffff05;border-radius:8px;overflow:hidden;border:1px solid #404040}.data-table th{background:linear-gradient(145deg,#333,#2a2a2a);color:#e0e0e0;font-weight:600;padding:12px 16px;text-align:left;border-bottom:1px solid #555555;font-size:12px;text-transform:uppercase;letter-spacing:.5px}.data-table td{padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.05);font-size:14px;color:#b0b0b0}.data-table tr:hover{background:#ffffff05}.dayoffs-tab{display:flex;flex-direction:column;gap:24px}.dayoffs-actions{display:flex;justify-content:flex-end}.loading-container{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:60px 20px;color:#e0e0e0}.loading-container p{margin-top:16px;font-size:14px;color:#888}.btn-success{background:linear-gradient(145deg,#22c55e,#16a34a);border:1px solid #15803d;color:#fff;padding:12px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s ease}.btn-success:hover{background:linear-gradient(145deg,#16a34a,#15803d);transform:translateY(-1px);box-shadow:0 4px 12px #22c55e4d}@media(max-width:768px){.detail-modal-container{width:95%;max-height:95vh}.detail-modal-body{flex-direction:column}.tab-navigation{flex-direction:row;border-right:none;border-bottom:1px solid #404040;min-width:auto;overflow-x:auto;padding:16px}.tab-button{white-space:nowrap;min-width:120px}.profile-info{grid-template-columns:1fr}.tab-content{padding:20px}}input[type=date]{position:relative;color:#e0e0e0}input[type=date]::-webkit-calendar-picker-indicator{filter:invert(.8);cursor:pointer}input[type=date]::-webkit-datetime-edit{color:#e0e0e0}input[type=date]::-webkit-datetime-edit-fields-wrapper{color:#e0e0e0}input[type=date]::-webkit-datetime-edit-text{color:#e0e0e0;padding:0 .3em}input[type=date]::-webkit-datetime-edit-month-field,input[type=date]::-webkit-datetime-edit-day-field,input[type=date]::-webkit-datetime-edit-year-field{color:#e0e0e0}input[type=date]:not(:focus):not(:valid):before{content:attr(placeholder);color:#999;margin-right:.5em}input[type=date]:focus:before,input[type=date]:valid:before{content:""!important}.location-container{padding:20px;background:linear-gradient(135deg,#1e1e1e,#2a2a2a);min-height:100vh;color:#e0e0e0;position:relative}.location-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #404040}.location-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:15px;background:linear-gradient(145deg,#2a2a2a,#1e1e1e);border-radius:8px;border:1px solid #404040}.location-info span{color:#b0b0b0;font-weight:500}.location-table-container{background:linear-gradient(145deg,#2a2a2a,#1e1e1e);border-radius:12px;border:1px solid #404040;overflow:hidden;box-shadow:0 4px 20px #0000004d}.location-table{width:100%;border-collapse:collapse}.location-table th{background:linear-gradient(145deg,#333,#2a2a2a);color:#e0e0e0;font-weight:600;padding:15px 12px;text-align:left;border-bottom:1px solid #555555;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.location-table td{padding:15px 12px;border-bottom:1px solid rgba(255,255,255,.05);font-size:14px;color:#b0b0b0}.location-table tr:hover{background:#ffffff05}.location-table tr.inactive-row{opacity:.6;background:#ff00000d}.location-form{padding:24px}@media(max-width:768px){.location-container{padding:15px}.location-header{flex-direction:column;align-items:stretch;gap:20px}.location-info{flex-direction:column;align-items:stretch;gap:10px}.table-container{overflow-x:auto}.location-table{min-width:700px}.action-buttons{flex-wrap:wrap}.form-grid{grid-template-columns:1fr;gap:15px}.form-actions{flex-direction:column}.modal-content{width:95%;margin:10px}.modal-header{padding:15px 20px}.location-form{padding:20px}.modal-header{flex-direction:column;align-items:stretch;gap:15px}}@media(max-width:480px){.header-content h1{font-size:24px}.location-table th,.location-table td{padding:10px 8px;font-size:13px}.btn-icon{width:32px;height:32px;font-size:12px}.filter-input,.filter-select{font-size:11px;padding:6px 8px}}.config-modal{max-width:900px;width:90vw;max-height:85vh}.config-actions{margin-bottom:20px;display:flex;justify-content:flex-end}.config-form-compact{background:#2a2a2a;border-radius:8px;padding:15px;margin-bottom:20px;border:1px solid #404040}.inline-form{margin:0}.inline-inputs{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.shift-select{flex:2;min-width:200px;padding:10px 12px;border:1px solid #404040;border-radius:6px;background:#1e1e1e;color:#e0e0e0;font-size:14px}.employee-input{flex:0 0 120px;padding:10px 12px;border:1px solid #404040;border-radius:6px;background:#1e1e1e;color:#e0e0e0;font-size:14px;text-align:center}.shift-select:focus,.employee-input:focus{outline:none;border-color:#4ade80;box-shadow:0 0 0 2px #4ade8033}.btn-add{padding:10px 16px;background:#4ade80;color:#1a1a1a;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s ease;font-size:14px}.btn-add:hover{background:#22c55e;transform:translateY(-1px)}.btn-cancel{padding:10px 16px;background:#6b7280;color:#e0e0e0;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s ease;font-size:14px}.btn-cancel:hover{background:#4b5563;transform:translateY(-1px)}.config-form{background:#2a2a2a;border-radius:8px;padding:20px;margin-bottom:20px;border:1px solid #404040}.config-form h3{margin:0 0 20px;color:#e0e0e0;font-size:18px;display:flex;align-items:center;gap:10px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.config-form .form-group{display:flex;flex-direction:column}.config-form .form-group label{margin-bottom:8px;color:#b0b0b0;font-weight:500}.config-form select,.config-form input{padding:12px;border:1px solid #404040;border-radius:6px;background:#1e1e1e;color:#e0e0e0;font-size:14px}.config-form select:focus,.config-form input:focus{outline:none;border-color:#4ade80;box-shadow:0 0 0 2px #4ade8033}.form-actions{display:flex;gap:10px;justify-content:flex-end}.config-table-container{overflow-x:auto;border-radius:8px;border:1px solid #404040}.config-table{width:100%;border-collapse:collapse;background:#2a2a2a;color:#e0e0e0}.config-table th{background:#333;padding:15px 12px;text-align:left;font-weight:600;color:#4ade80;border-bottom:2px solid #404040;font-size:14px}.config-table td{padding:15px 12px;border-bottom:1px solid #404040;vertical-align:middle}.config-table tr:hover{background:#333}.config-table .inactive-row{opacity:.6}.config-table .no-data{text-align:center;padding:40px 20px;color:gray}.config-table .no-data p{margin:0;font-size:16px}.employee-count{background:#4ade80;color:#1a1a1a;padding:4px 12px;border-radius:16px;font-weight:600;font-size:13px}.btn-settings{background:#4ade80;color:#1a1a1a}.btn-settings:hover{background:#22c55e;transform:translateY(-2px)}@media(max-width:768px){.config-modal{width:95vw;max-height:95vh}.inline-inputs{flex-direction:column;align-items:stretch}.shift-select,.employee-input{flex:1;min-width:auto}.btn-add,.btn-cancel{padding:12px 16px}.config-table th,.config-table td{padding:8px 6px;font-size:12px}.config-actions{justify-content:center}}.btn-users{background:#8b5cf6;color:#fff}.btn-users:hover{background:#7c3aed;transform:translateY(-2px)}.large-modal{max-width:900px;width:90vw}.employees-section{margin-bottom:30px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:10px;border-bottom:1px solid #404040}.section-header h3{color:#e0e0e0;margin:0;font-size:18px}.employees-table-container{background:#2a2a2a;border-radius:8px;overflow:hidden;border:1px solid #404040}.employees-table{width:100%;border-collapse:collapse;background:transparent}.employees-table th{background:#333;color:#e0e0e0;padding:15px 12px;text-align:left;font-weight:600;border-bottom:1px solid #404040}.employees-table td{padding:15px 12px;border-bottom:1px solid #404040;color:#e0e0e0}.employees-table tr:last-child td{border-bottom:none}.employees-table tr:hover{background:#353535}.employee-avatar{width:35px;height:35px;border-radius:50%;object-fit:cover;border:2px solid #4ade80}.employee-initials{width:35px;height:35px;border-radius:50%;background:#4ade80;color:#1a1a1a;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px}.work-percentage{font-weight:600;color:#4ade80;background:#1a4d1a;padding:4px 8px;border-radius:4px;font-size:14px}.employee-form-section{background:#2a2a2a;border-radius:8px;padding:20px;border:1px solid #404040}.employee-form{display:flex;flex-direction:column;gap:20px}.employee-form .form-group{display:flex;flex-direction:column;gap:8px}.employee-form label{color:#e0e0e0;font-weight:600;font-size:14px}.employee-form select,.employee-form input{padding:12px;border:1px solid #404040;border-radius:6px;background:#1a1a1a;color:#e0e0e0;font-size:14px;transition:border-color .3s ease}.employee-form select:focus,.employee-form input:focus{outline:none;border-color:#4ade80;box-shadow:0 0 0 2px #4ade8033}.employee-form select:disabled,.employee-form input:disabled{background:#333;color:#888;cursor:not-allowed}.no-data{text-align:center;color:#888;font-style:italic;padding:30px}@media(max-width:768px){.large-modal{width:95vw;max-height:95vh}.section-header{flex-direction:column;gap:15px;align-items:stretch}.employees-table th,.employees-table td{padding:10px 8px;font-size:12px}.employee-info{gap:8px}.employee-avatar,.employee-initials{width:30px;height:30px;font-size:10px}}.color-input-container{display:flex;gap:10px;align-items:center}.color-picker{width:50px;height:40px;border:1px solid #404040;border-radius:6px;background:transparent;cursor:pointer;padding:0}.color-picker::-webkit-color-swatch-wrapper{padding:0;border:none;border-radius:4px}.color-picker::-webkit-color-swatch{border:none;border-radius:4px}.color-text{flex:1;padding:10px 12px;border:1px solid #404040;border-radius:6px;background:#1a1a1a;color:#e0e0e0;font-size:14px;font-family:monospace;text-transform:uppercase;transition:border-color .3s ease}.color-text:focus{outline:none;border-color:#4ade80;box-shadow:0 0 0 2px #4ade8033}.form-group input:disabled{background:#333;color:#888;cursor:not-allowed;opacity:.7}.shift-container{padding:20px;background:linear-gradient(135deg,#1e1e1e,#2a2a2a);min-height:100vh;color:#e0e0e0;position:relative}.notification{position:fixed;top:20px;right:20px;padding:16px 20px;border-radius:8px;box-shadow:0 4px 16px #0006;z-index:1000;max-width:400px;display:flex;align-items:center;justify-content:space-between;animation:slideIn .3s ease-out;font-weight:500}.notification-close{background:none;border:none;color:inherit;font-size:20px;font-weight:700;cursor:pointer;margin-left:12px;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;opacity:.7;transition:opacity .2s ease}.notification-close:hover{opacity:1}.shift-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #404040}.header-content h1{margin:0;font-size:28px;font-weight:600;color:#fff;display:flex;align-items:center;gap:12px}.loading-container p{font-size:18px;color:#b0b0b0}.shift-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:15px;background:linear-gradient(145deg,#2a2a2a,#1e1e1e);border-radius:8px;border:1px solid #404040}.shift-info span{color:#b0b0b0;font-weight:500}.btn-clear-filters{background:linear-gradient(145deg,#6c757d,#5a6268);color:#fff;border:1px solid #5a6268;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s ease}.btn-clear-filters:hover{background:linear-gradient(145deg,#5a6268,#495057);transform:translateY(-1px)}.shift-table-container{background:linear-gradient(145deg,#2a2a2a,#1e1e1e);border-radius:12px;border:1px solid #404040;overflow:hidden;box-shadow:0 4px 20px #0000004d}.shift-table{width:100%;border-collapse:collapse}.shift-table th{background:linear-gradient(145deg,#333,#2a2a2a);color:#e0e0e0;font-weight:600;padding:15px 12px;text-align:left;border-bottom:1px solid #555555;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.shift-table td{padding:15px 12px;border-bottom:1px solid rgba(255,255,255,.05);font-size:14px;color:#b0b0b0}.shift-table tr:hover{background:#ffffff05}.shift-table tr.inactive-row{opacity:.6;background:#ff00000d}.filter-row{background:linear-gradient(145deg,#2a2a2a,#1e1e1e)!important}.filter-row td{padding:8px 12px!important;border-bottom:2px solid #555555!important}.filter-input{width:100%;padding:6px 8px;background:#333;border:1px solid #555555;border-radius:4px;color:#e0e0e0;font-size:12px;transition:all .2s ease}.filter-input:focus{outline:none;border-color:#06c;background:#3a3a3a;box-shadow:0 0 0 2px #0066cc1a}.filter-input::placeholder{color:#888;font-size:11px}.filter-row .filter-select{width:100%;padding:6px 8px;background:#333;border:1px solid #555555;border-radius:4px;color:#e0e0e0;font-size:12px;cursor:pointer}.filter-row .filter-select:focus{outline:none;border-color:#06c;box-shadow:0 0 0 2px #0066cc1a}.status-badge{padding:4px 12px;border-radius:20px;font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.status-badge.active{background:linear-gradient(145deg,#1a4d1a,#0d330d);color:#4ade80;border:1px solid #22c55e}.status-badge.inactive{background:linear-gradient(145deg,#4d1a1a,#330d0d);color:#f87171;border:1px solid #ef4444}.btn-icon{width:32px;height:32px;border:1px solid #555555;border-radius:6px;background:#333;color:#b0b0b0;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;transition:all .2s ease}.btn-icon:hover{background:#404040;border-color:#666}.btn-view:hover{color:#3b82f6;border-color:#3b82f6}.btn-edit:hover{color:#eab308;border-color:#eab308}.btn-enable:hover{color:#22c55e;border-color:#22c55e}.btn-disable:hover{color:#f97316;border-color:#f97316}.btn-delete:hover{color:#ef4444;border-color:#ef4444}.btn-settings:hover{color:#06af69;border-color:#06af69}.btn-primary{background:linear-gradient(145deg,#4a9eff,#06c);color:#fff;border:1px solid #0066cc;padding:12px 24px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s ease;text-decoration:none}.btn-primary:hover{background:linear-gradient(145deg,#06c,#0052a3);transform:translateY(-2px);box-shadow:0 6px 20px #4a9eff4d}.btn-secondary{background:linear-gradient(145deg,#6c757d,#545b62);color:#fff;border:1px solid #545b62;padding:12px 24px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s ease}.btn-secondary:hover{background:linear-gradient(145deg,#545b62,#495057);border-color:#495057}.btn-danger{background:linear-gradient(145deg,#dc3545,#c82333);color:#fff;border:1px solid #bd2130;padding:12px 24px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s ease}.btn-danger:hover{background:linear-gradient(145deg,#c82333,#bd2130);border-color:#a71e2a;transform:translateY(-1px);box-shadow:0 4px 12px #dc35454d}.btn-danger:disabled:hover{transform:none;box-shadow:none}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-primary:disabled:hover{transform:none;box-shadow:none}.modal-overlay{position:fixed;inset:0;background:#000c;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:linear-gradient(145deg,#2a2a2a,#1e1e1e);border:1px solid #404040;border-radius:12px;max-width:600px;width:90%;max-height:80vh;overflow:auto;box-shadow:0 20px 60px #00000080}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #404040}.modal-header h2{margin:0;color:#fff;font-size:20px;font-weight:600}.modal-close{background:none;border:none;color:#b0b0b0;font-size:20px;cursor:pointer;padding:4px;border-radius:4px;transition:all .2s ease}.modal-close:hover{color:#fff;background:#ffffff1a}.shift-form{padding:24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:30px}.form-group{display:flex;flex-direction:column}.form-group label{margin-bottom:8px;color:#e0e0e0;font-weight:500;font-size:14px}.form-group input,.form-group select,.form-group textarea{padding:12px 16px;border:1px solid #555555;border-radius:8px;background:#1e1e1e;color:#e0e0e0;font-size:14px;transition:all .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#4a9eff;box-shadow:0 0 0 3px #4a9eff1a}.form-group input::placeholder,.form-group textarea::placeholder{color:#888}.radio-group{display:flex;gap:20px;margin-top:8px}.radio-label{display:flex;align-items:center;gap:8px;color:#e0e0e0;font-size:14px;cursor:pointer}.radio-label input[type=radio]{margin:0;padding:0;width:auto;height:auto;background:transparent;border:none;box-shadow:none;cursor:pointer}.radio-label:hover{color:#fff}.form-group input[type=time]{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:14px;cursor:pointer;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.form-group input[type=time]::-webkit-datetime-edit-ampm-field{display:none}.form-group input[type=time]::-webkit-datetime-edit-hour-field,.form-group input[type=time]::-webkit-datetime-edit-minute-field{color:#e0e0e0}.form-group input[type=time]::-webkit-datetime-edit-text{color:#b0b0b0}.form-group input[type=time]{width:100%}.form-group input[type=time]::-webkit-calendar-picker-indicator{background-color:#4a9eff;border-radius:4px;cursor:pointer}@media(max-width:768px){.shift-container{padding:15px}.shift-header{flex-direction:column;align-items:stretch;gap:20px}.shift-info{flex-direction:column;align-items:stretch;gap:10px}.table-container{overflow-x:auto}.shift-table{min-width:700px}.action-buttons{flex-wrap:wrap}.form-grid{grid-template-columns:1fr;gap:15px}.form-actions{flex-direction:column}.modal-content{width:95%;margin:10px}.modal-header{padding:15px 20px}.shift-form{padding:20px}.modal-header{flex-direction:column;align-items:stretch;gap:15px}}@media(max-width:480px){.header-content h1{font-size:24px}.shift-table th,.shift-table td{padding:10px 8px;font-size:13px}.btn-icon{width:32px;height:32px;font-size:12px}.filter-input,.filter-select{font-size:11px;padding:6px 8px}}.role-container{padding:20px;background:linear-gradient(135deg,#1e1e1e,#2a2a2a);min-height:100vh;color:#e0e0e0}.role-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;flex-wrap:wrap;gap:20px}.role-info{background:#2a2a2a;border-radius:8px;padding:15px 20px;margin-bottom:20px;display:flex;justify-content:space-between;align-items:center;border:1px solid #404040}.role-info span{color:#e0e0e0;font-weight:600}.btn-clear-filters{background:#6366f1;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-weight:600;transition:all .3s ease}.btn-clear-filters:hover{background:#4f46e5;transform:translateY(-2px)}.role-table-container{background:#2a2a2a;border-radius:12px;overflow:hidden;border:1px solid #404040;box-shadow:0 4px 16px #0000004d}.role-table{width:100%;border-collapse:collapse}.role-table thead tr:first-child{background:#1a1a1a}.role-table th{padding:15px 20px;text-align:left;font-weight:600;color:#4ade80;border-bottom:2px solid #404040}.role-table td{padding:15px 20px;border-bottom:1px solid #404040;color:#e0e0e0}.role-table tbody tr{transition:background-color .2s ease}.role-table tbody tr:hover{background:#333}.role-table tbody tr.inactive-row{opacity:.6;background:#252525}.filter-row td{padding:10px 20px;background:#1a1a1a;border-bottom:2px solid #404040}.filter-input,.filter-select{width:100%;padding:8px 12px;border:1px solid #404040;border-radius:6px;background:#2a2a2a;color:#e0e0e0;font-size:14px}.filter-input:focus,.filter-select:focus{outline:none;border-color:#4ade80;box-shadow:0 0 0 2px #4ade8033}.status-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;display:inline-block}.status-badge.active{background:#065f46;color:#10b981}.status-badge.inactive{background:#7f1d1d;color:#f87171}.participant-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;display:inline-block}.participant-badge.yes{background:#1e3a8a;color:#60a5fa}.participant-badge.no{background:#374151;color:#9ca3af}.btn-icon{background:none;border:none;padding:8px 12px;border-radius:6px;cursor:pointer;transition:all .3s ease;color:#e0e0e0;font-size:16px}.btn-icon:hover{transform:translateY(-2px)}.btn-view{background:#1e3a8a}.btn-view:hover{background:#1e40af}.btn-edit{background:#4f46e5}.btn-edit:hover{background:#4338ca}.btn-enable{background:#065f46}.btn-enable:hover{background:#047857}.btn-disable{background:#7f1d1d}.btn-disable:hover{background:#991b1b}.btn-delete{background:#dc2626}.btn-delete:hover{background:#b91c1c}.btn-hard-delete{background:#92400e}.btn-hard-delete:hover{background:#78350f}.btn-primary{background:#4ade80;color:#1a1a1a;border:none;padding:12px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px;font-size:16px}.btn-primary:hover:not(:disabled){background:#22c55e;transform:translateY(-2px);box-shadow:0 4px 12px #4ade804d}.btn-secondary{background:#6366f1;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-danger{background:#dc2626;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-danger:hover:not(:disabled){background:#b91c1c;transform:translateY(-2px)}.modal-content{background:#2a2a2a;border-radius:12px;border:1px solid #404040;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #00000080}.modal-header h2{margin:0;color:#e0e0e0;font-size:20px}.modal-close{background:none;border:none;color:#e0e0e0;font-size:20px;cursor:pointer;padding:5px;transition:color .3s ease}.modal-close:hover{color:#ff6b6b}.role-form{padding:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.form-group.full-width{grid-column:1 / -1}.form-group input[type=text],.form-group input[type=number],.form-group input[type=time],.form-group select{padding:10px 12px;border:1px solid #404040;border-radius:6px;background:#1a1a1a;color:#e0e0e0;font-size:14px}.form-group input:focus,.form-group select:focus{outline:none;border-color:#4ade80;box-shadow:0 0 0 2px #4ade8033}.checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;padding:12px;background:#1a1a1a;border:1px solid #404040;border-radius:6px;transition:all .2s ease}.checkbox-label:hover{border-color:#4ade80;background:#252525}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#4ade80}.checkbox-label span{color:#e0e0e0;font-weight:500}.form-actions{display:flex;gap:15px;justify-content:flex-end;padding-top:20px;border-top:1px solid #404040}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;color:#4ade80}.loading-container p{margin-top:20px;font-size:18px;color:#e0e0e0}@media(max-width:768px){.role-container{padding:15px}.role-header{flex-direction:column;align-items:flex-start}.role-info{flex-direction:column;align-items:flex-start;gap:10px}.form-grid{grid-template-columns:1fr}.role-table-container{overflow-x:auto}.action-buttons{flex-wrap:wrap}}.dayoff-container{padding:20px;background:linear-gradient(135deg,#1e1e1e,#2a2a2a);min-height:100vh;color:#e0e0e0;position:relative}.dayoff-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px;gap:20px}.header-content h1{margin:0 0 8px;font-size:32px;font-weight:700;color:#e0e0e0;display:flex;align-items:center;gap:12px}.header-content p{margin:0;color:#b0b0b0;font-size:16px}.tab-navigation{display:flex;background:#1e1e1e;border-radius:12px;padding:6px;margin-bottom:25px;border:1px solid #404040;box-shadow:0 2px 8px #0003}.tab-button{padding:14px 24px;border:none;background:transparent;color:#b0b0b0;cursor:pointer;border-radius:8px;font-weight:600;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:10px;font-size:15px}.tab-button:hover{color:#e0e0e0;background:#4ade801a;transform:translateY(-1px)}.tab-button.active{background:#4ade80;color:#1a1a1a;box-shadow:0 4px 12px #4ade804d;transform:translateY(-2px)}.filter-controls{display:flex;gap:20px;margin-bottom:25px;padding:20px;background:#2a2a2a;border-radius:12px;border:1px solid #404040;flex-wrap:wrap;align-items:end}.filter-group{display:flex;flex-direction:column;gap:8px;min-width:150px}.filter-group label{color:#b0b0b0;font-weight:500;font-size:14px}.filter-group select,.filter-group input[type=date]{padding:10px 12px;border:1px solid #404040;border-radius:6px;background:#1e1e1e;color:#e0e0e0;font-size:14px}.filter-group select:focus,.filter-group input:focus{outline:none;border-color:#4ade80;box-shadow:0 0 0 2px #4ade8033}.dayoff-table-container{overflow-x:auto;border-radius:12px;border:1px solid #404040;background:#2a2a2a}.dayoff-table{width:100%;border-collapse:collapse;color:#e0e0e0}.dayoff-table th{background:#333;padding:18px 15px;text-align:left;font-weight:600;color:#4ade80;border-bottom:2px solid #404040;font-size:14px}.dayoff-table td{padding:15px;border-bottom:1px solid #404040;vertical-align:middle}.dayoff-table tr:hover{background:#333}.dayoff-table .no-data{text-align:center;padding:40px 20px;color:gray}.dayoff-table .no-data p{margin:0;font-size:16px}.employee-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;border:2px solid #4ade80}.employee-details{display:flex;flex-direction:column;gap:2px}.employee-name{font-weight:600;color:#e0e0e0}.employee-id{font-size:12px;color:gray}.request-date{background:#4ade80;color:#1a1a1a;padding:6px 12px;border-radius:16px;font-weight:600;font-size:13px}.created-date{color:#b0b0b0;font-size:13px}.action-buttons{display:flex;gap:8px}.btn-icon{width:36px;height:36px;border:none;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all .2s ease}.btn-view{background:#1e40af;color:#dbeafe}.btn-view:hover{background:#1d4ed8;transform:translateY(-2px)}.btn-edit{background:#d97706;color:#fef3c7}.btn-edit:hover{background:#f59e0b;transform:translateY(-2px)}.btn-delete{background:#dc2626;color:#fecaca}.btn-delete:hover{background:#ef4444;transform:translateY(-2px)}.btn-primary{background:#4ade80;color:#1a1a1a;border:none;padding:12px 20px;border-radius:8px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s ease;font-size:14px}.btn-secondary{background:#6b7280;color:#e0e0e0;border:none;padding:12px 20px;border-radius:8px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s ease;font-size:14px}.btn-secondary:hover{background:#4b5563;transform:translateY(-2px)}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-container{background:#2a2a2a;border-radius:12px;border:1px solid #404040;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-header{padding:20px 24px;border-bottom:1px solid #404040;display:flex;justify-content:space-between;align-items:center}.modal-header h2{margin:0;color:#e0e0e0;font-size:20px;display:flex;align-items:center;gap:10px}.btn-close{background:none;border:none;color:gray;font-size:20px;cursor:pointer;padding:8px;border-radius:6px;transition:all .2s ease}.btn-close:hover{background:#404040;color:#e0e0e0}.modal-body{padding:24px}.dayoff-form{display:flex;flex-direction:column;gap:20px}.form-group label{color:#b0b0b0;font-weight:500;font-size:14px}.form-group select,.form-group input{padding:12px;border:1px solid #404040;border-radius:6px;background:#1e1e1e;color:#e0e0e0;font-size:14px}.form-group select:focus,.form-group input:focus{outline:none;border-color:#4ade80;box-shadow:0 0 0 2px #4ade8033}.form-group select:disabled,.form-group input:disabled{opacity:.6;cursor:not-allowed}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.validation-error{background:#4d1f1f;border:1px solid #ff6b6b;border-radius:8px;padding:16px;margin:16px 0}.validation-error p{margin:0 0 12px;color:#ff6b6b;font-weight:500}.existing-requests{margin-top:12px}.existing-requests strong{color:#ff6b6b;display:block;margin-bottom:8px}.existing-requests ul{margin:0;padding-left:20px;color:#fcc}.existing-requests li{margin-bottom:4px}.validation-modal{max-width:600px}.validation-content{text-align:center}.validation-message{font-size:18px;color:#ff6b6b;margin-bottom:24px;font-weight:500;line-height:1.5}.validation-question{font-size:16px;color:#e0e0e0;margin-top:20px;font-weight:500}.conflicts-section{margin-bottom:20px}.conflicts-table{margin:20px 0;background:#1e1e1e;border-radius:8px;border:1px solid #404040;overflow:hidden}.validation-table{width:100%;border-collapse:collapse}.validation-table th{background:#333;color:#4ade80;padding:12px 15px;text-align:left;font-weight:600;border-bottom:2px solid #404040}.validation-table td{padding:12px 15px;border-bottom:1px solid #404040;color:#e0e0e0}.validation-table tr:last-child td{border-bottom:none}.validation-table tr:hover{background:#2a2a2a}.employee-cell{padding:8px 15px!important}.employee-info{display:flex;align-items:center;gap:12px}.employee-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;border:2px solid #4ade80}.employee-initials{width:32px;height:32px;border-radius:50%;background:#4ade80;color:#1a1a1a;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px}.employee-name{color:#e0e0e0;font-weight:500}.existing-requests-list{background:#4d1f1f;border:1px solid #ff6b6b;border-radius:8px;padding:20px;margin:24px 0;text-align:left}.existing-requests-list h4{margin:0 0 16px;color:#ff6b6b;font-size:16px}.existing-requests-list ul{margin:0;padding:0;list-style:none}.existing-request-item{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #ff6b6b33}.existing-request-item:last-child{border-bottom:none}.existing-request-item strong{color:#fcc;font-size:15px}.existing-request-item span{color:#f999;font-size:13px}.validation-actions{margin-top:24px;display:flex;gap:16px;justify-content:center}.validation-actions .btn-primary,.validation-actions .btn-secondary{min-width:120px;padding:14px 24px;font-size:15px;font-weight:600}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:20px}.loading-container p{color:#b0b0b0;font-size:16px;margin:0}.notification{position:fixed;top:20px;right:20px;padding:16px 20px;border-radius:8px;box-shadow:0 4px 16px #0006;z-index:1001;max-width:400px;font-weight:500;animation:slideIn .3s ease-out}.delete-details{background:#2a2a2a;border-radius:8px;padding:20px;margin:20px 0;border:1px solid #404040}.delete-details .employee-info{display:flex;align-items:center;gap:15px}.delete-details .employee-details{display:flex;flex-direction:column;gap:5px}.delete-details .employee-name{font-weight:600;font-size:16px;color:#e0e0e0}.delete-details .request-date{font-size:14px;color:#b0b0b0}@media(max-width:768px){.dayoff-header{flex-direction:column;align-items:stretch;gap:15px}.tab-navigation{margin-bottom:20px}.tab-button{padding:12px 16px;font-size:14px;gap:8px}.filter-controls{flex-direction:column;gap:15px}.filter-group{min-width:auto}.dayoff-table th,.dayoff-table td{padding:12px 8px;font-size:13px}.employee-info{flex-direction:column;align-items:flex-start;gap:8px}.employee-avatar{width:32px;height:32px}.action-buttons{gap:4px}.btn-icon{width:32px;height:32px;font-size:12px}.modal-container{margin:10px;max-height:calc(100vh - 20px)}.modal-header{padding:15px 20px}.modal-body{padding:20px}.form-actions{flex-direction:column}.validation-actions{flex-direction:column;gap:12px}.validation-actions .btn-primary,.validation-actions .btn-secondary{min-width:auto;width:100%}}@media(max-width:480px){.header-content h1{font-size:24px}.dayoff-table th,.dayoff-table td{padding:10px 6px;font-size:12px}.employee-name{font-size:14px}.employee-id{font-size:11px}.request-date{padding:4px 8px;font-size:12px}}.scheduler-container{padding:20px;background:linear-gradient(135deg,#1e1e1e,#2a2a2a);min-height:100vh;color:#e0e0e0;position:relative}.scheduler-header{margin-bottom:30px}.header-content h1{color:#e0e0e0;font-size:28px;margin-bottom:8px;display:flex;align-items:center;gap:12px}.header-content p{color:#b0b0b0;font-size:16px;margin:0}.control-panel{background:#2a2a2a;border-radius:12px;padding:20px;margin-bottom:5px;border:1px solid #404040}.control-group{display:flex;align-items:center;gap:15px;flex-wrap:nowrap;overflow-x:auto}.control-group label{color:#e0e0e0;font-weight:600;white-space:nowrap}.month-input-group,.half-selector{display:flex;align-items:center;gap:10px;white-space:nowrap}.radio-group{display:flex;gap:10px}.radio-label{display:flex;align-items:center;gap:5px;margin:0;white-space:nowrap}.selected-period{white-space:nowrap;color:#e0e0e0}@media(max-width:1200px){.control-group{flex-wrap:wrap;overflow-x:visible}}@media(max-width:768px){.control-group{flex-direction:column;align-items:flex-start;gap:10px}.month-input-group,.half-selector,.selected-period{width:100%}.radio-group{flex-wrap:wrap}}.month-input-group label{color:#e0e0e0;font-weight:600;min-width:auto}.month-input-group select{padding:10px 12px;border:1px solid #404040;border-radius:6px;background:#1a1a1a;color:#e0e0e0;font-size:14px;min-width:200px;cursor:pointer}.month-input-group select:focus{outline:none;border-color:#4ade80;box-shadow:0 0 0 2px #4ade8033}.half-selector{display:contents;flex-direction:column;gap:10px}.half-selector>label{color:#e0e0e0;font-weight:600;min-width:auto}.half-selector .radio-group{display:flex;gap:20px}.half-selector .radio-label{display:flex;align-items:center;gap:8px;cursor:pointer;padding:8px 12px;background:#1a1a1a;border:1px solid #404040;border-radius:6px;transition:all .2s ease;min-width:auto}.half-selector .radio-label:hover{border-color:#4ade80;background:#252525}.half-selector .radio-label input[type=radio]{width:16px;height:16px;cursor:pointer;accent-color:#4ade80}.half-selector .radio-label span{color:#e0e0e0;font-weight:500}.date-input-group{display:flex;align-items:center;gap:10px}.date-input-group label{color:#e0e0e0;font-weight:600;min-width:auto}.selected-period{width:100%;padding:12px;background:#1a1a1a;border:1px solid #4ade80;border-radius:6px;color:#e0e0e0;font-size:14px}.selected-period strong{color:#4ade80;margin-right:8px}.control-group input[type=date]{padding:10px 12px;border:1px solid #404040;border-radius:6px;background:#1a1a1a;color:#e0e0e0;font-size:14px;min-width:150px}.control-group input[type=date]:focus{outline:none;border-color:#4ade80;box-shadow:0 0 0 2px #4ade8033}.btn-primary{background:#4ade80;color:#1a1a1a;border:none;padding:10px 20px;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px}.btn-primary:hover:not(:disabled){background:#22c55e;transform:translateY(-2px)}.btn-primary:disabled{background:#374151;color:#6b7280;cursor:not-allowed;transform:none}.btn-secondary{background:#6366f1;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px}.btn-secondary:hover:not(:disabled){background:#4f46e5;transform:translateY(-2px)}.btn-secondary:disabled{background:#374151;color:#6b7280;cursor:not-allowed;transform:none}.btn-danger{background:#ef4444;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px}.btn-danger:hover:not(:disabled){background:#dc2626;transform:translateY(-2px)}.btn-danger:disabled{background:#374151;color:#6b7280;cursor:not-allowed;transform:none}.schedule-info{background:#2a2a2a;border-radius:12px;padding:10px;margin-bottom:5px;border:1px solid #404040;display:flex;flex-wrap:wrap;gap:20px}.info-item{display:flex;align-items:center;gap:8px;color:#e0e0e0}.info-item strong{color:#4ade80}.info-item.warnings{color:#fbbf24}.info-item.warnings svg{color:#f59e0b}.schedule-table-container{background:#2a2a2a;border-radius:12px;overflow:hidden;border:1px solid #404040;overflow-x:auto}.location-schedule-section{margin-bottom:0;overflow:visible}.location-schedule-section:last-child{margin-bottom:0}.location-header{padding:0 20px;display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid rgba(0,0,0,.2);margin-bottom:0!important}.location-header h3{margin:0;color:#1a1a1a;font-size:18px;font-weight:700}.location-header .location-stats{color:#1a1a1a;font-size:14px;font-weight:600}.location-table-wrapper{overflow-x:auto;overflow-y:visible}.employee-schedule-table{width:100%;border-collapse:collapse;min-width:800px;overflow:visible}.employee-schedule-table tbody{overflow:visible}.employee-schedule-table th{background:#1a1a1a;color:#e0e0e0;padding:12px 8px;text-align:center;font-weight:600;border:1px solid #404040;font-size:13px}.employee-schedule-table th.employee-column{text-align:left;width:210px;min-width:210px;max-width:210px;position:sticky;left:0;z-index:15;color:#000}.employee-schedule-table th.date-column{min-width:80px;font-size:12px;color:#000}.employee-schedule-table td{padding:8px;border:1px solid #404040;text-align:center;vertical-align:middle;min-height:60px;background:#2a2a2a}.employee-name-cell{color:#000;font-weight:600;text-align:left!important;position:sticky;left:0;z-index:10;border-right:2px solid #404040!important;contain:layout style;padding-left:15px!important;width:200px;min-width:200px;max-width:200px}.employee-name-cell.missing-employee{background:#7f1d1d!important;color:#fca5a5!important;font-style:italic;border-right:2px solid #dc2626!important}.employee-name-cell.all-ok-employee{background:#7fa399!important;color:#fff!important;font-style:normal;border-right:2px solid #5a8279!important}.employee-name-wrapper{display:flex;align-items:center;gap:8px;justify-content:space-between;width:100%;position:relative;z-index:1000;isolation:isolate}.employee-info-icon{position:relative;display:inline-flex;align-items:center;color:#000;font-size:14px;cursor:help;opacity:.6;transition:opacity .2s;z-index:50}.employee-info-icon:hover{opacity:1}.employee-info-icon.warning{color:#f59e0b;opacity:1}.employee-info-tooltip{position:absolute;left:100%;top:50%;transform:translateY(-50%);margin-left:5px;background-color:#1a1a1a;color:#e0e0e0;border-radius:6px;font-size:12px;font-weight:400;white-space:nowrap;box-shadow:0 4px 12px #00000080;z-index:99999;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;pointer-events:none;border:1px solid #404040;padding:8px 12px}.employee-info-icon:hover .employee-info-tooltip{opacity:1;visibility:visible}.employee-info-tooltip div{margin:4px 0;line-height:1.4}.employee-info-tooltip strong{color:#4a9eff;margin-right:6px}.shift-cell{background:#2a2a2a;position:relative}.shift-cell.active-cell{opacity:.85}.shift-marker{font-size:18px;font-weight:700;color:#1a1a1a;margin-bottom:4px}.shift-time-small{font-size:11px;color:#1a1a1a;font-weight:600}.off-label{font-size:14px;color:#070707;font-weight:600;font-style:italic}.schedule-table{width:100%;border-collapse:collapse;min-width:800px}.schedule-table th{background:#333;color:#e0e0e0;padding:5px 15px;text-align:left;font-weight:600;border-bottom:1px solid #404040;position:sticky;top:0;z-index:10}.schedule-table th:first-child{min-width:210px;max-width:210px}.schedule-table td{padding:0;border-bottom:1px solid #404040;border-right:1px solid #404040;vertical-align:top;min-height:120px}.schedule-table tr:last-child td{border-bottom:none}.date-cell{background:#1a1a1a!important;color:#e0e0e0;font-weight:600;text-align:center;vertical-align:middle!important;position:sticky;left:0;z-index:5;border-right:2px solid #404040!important}.schedule-cell{position:relative;background:#111;transition:background-color .3s ease;padding:0;min-height:120px;font-size:13px}.schedule-cell.clickable{cursor:pointer}.schedule-cell.clickable:hover{background:#353535}.schedule-cell.attention-needed{background:#ef444426;border-left:4px solid #ef4444}.schedule-cell.empty{background:#1a1a1a;text-align:center;vertical-align:middle}.no-shifts{color:#6b7280;font-style:italic;display:flex;align-items:center;justify-content:center;min-height:120px;padding:8px}.shifts-container{display:flex;flex-direction:column;gap:8px;padding:8px;min-height:120px}.shift-item{background:#1a1a1a;border-radius:6px;padding:8px;border:1px solid #404040;font-size:12px}.shift-item.attention{border-color:#ef4444;background:#ef44441a}.shift-cell{text-align:center;padding:8px;border:1px solid #404040}.shift-cell.empty-cell{background:#1a1a1a}.shift-cell.empty-cell.attention-needed{background:#ef44444d!important;border:2px solid #ef4444}.shift-cell.off-cell{background:#2a2a2a}.shift-cell.active-cell{color:#1a1a1a;font-weight:700}.shift-cell.missing-shift-cell{background:#dc2626!important;border:2px solid #b91c1c;color:#fff;font-weight:700}.shift-cell.ok-status-cell{background:#065f46!important;border:1px solid #10b981;color:#10b981;text-align:center}.ok-status{font-size:18px;font-weight:700}.missing-shift-marker{display:flex;align-items:center;justify-content:center;gap:4px}.missing-shift-marker .shift-code{font-size:14px;font-weight:700}.missing-shift-marker .missing-text{color:#fef2f2;font-size:16px;font-weight:700}.attention-marker{color:#ef4444;font-weight:700;font-size:18px;display:block}.off-label{color:#030303;font-size:12px;font-style:italic}.shift-marker{font-weight:700;font-size:14px}.shift-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.shift-name{font-weight:600;color:#e0e0e0;font-size:13px}.shift-time{color:#b0b0b0;font-size:13px}.assigned-employees{display:flex;flex-direction:column;gap:4px;margin-top:6px;font-size:13px}.location-stats{font-size:13px;color:#b0b0b0;font-weight:400;margin-top:2px}.modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-container{background:#2a2a2a;border-radius:12px;border:1px solid #404040;max-width:800px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #00000080}.large-modal{max-width:900px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #404040}.modal-header h2{text-align:center;flex:1;margin:0;color:#e0e0e0;font-size:18px;line-height:1.4}.btn-close{background:none;border:none;color:#e0e0e0;font-size:18px;cursor:pointer;padding:5px;min-width:30px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.btn-close:hover{color:#ff6b6b}.modal-header:before{content:"";min-width:30px;flex-shrink:0}.modal-body{padding:20px}.day-info{display:flex;gap:20px;margin-bottom:30px;padding:15px;background:#1a1a1a;border-radius:8px;border:1px solid #404040}.status-badge{padding:4px 8px;border-radius:4px;font-weight:600;font-size:12px}.status-badge.ok{background:#065f46;color:#10b981}.status-badge.attention{background:#7f1d1d;color:#f87171}.shifts-detail h3{color:#4ade80;margin-bottom:20px;font-size:18px}.shift-detail-card{background:#1a1a1a;border-radius:8px;padding:20px;border:1px solid #404040;margin-bottom:15px}.shift-detail-header{display:flex;align-items:center;gap:15px;margin-bottom:15px;flex-wrap:wrap}.shift-detail-header h4{color:#e0e0e0;margin:0;font-size:16px}.shift-time{color:#b0b0b0;font-weight:600}.staffing-badge{padding:6px 12px;border-radius:6px;font-weight:700}.staffing-badge.ok{background:#065f46;color:#10b981}.staffing-badge.attention{background:#7f1d1d;color:#f87171}.shift-employees{color:#e0e0e0}.shift-employees strong{color:#4ade80;display:block;margin-bottom:10px}.employees-list{display:flex;flex-direction:column;gap:8px}.employee-item{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#2a2a2a;border-radius:6px;border:1px solid #404040}.employee-item svg{color:#4ade80}.badge{padding:2px 6px;border-radius:4px;font-size:10px;font-weight:600}.badge.new{background:#fbbf24;color:#92400e}.priority{color:#b0b0b0;font-size:12px;margin-left:auto}.no-employees{color:#6b7280;font-style:italic;padding:15px;text-align:center;background:#333;border-radius:6px}.notification{position:fixed;top:20px;right:20px;padding:16px 20px;border-radius:8px;box-shadow:0 4px 16px #0006;z-index:1000;max-width:400px;font-weight:500;animation:slideIn .3s ease-out}.notification.success{background:#1a5d1a;color:#4ade80;border:1px solid #4ade80}.notification.error{background:#8a2424;color:#f3cece;border:1px solid #ff6b6b}.warnings-section{background:#2a2a2a;border-radius:12px;padding:5px;margin-bottom:5px;border:1px solid #dc2626;border-left:4px solid #dc2626}.warnings-header{display:flex;justify-content:space-between;align-items:center;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s ease;padding:5px;border-radius:6px}.warnings-header:hover{background:#ef44441a}.warnings-section h3{color:#f87171;margin:0;font-size:18px;display:flex;align-items:center;gap:10px}.toggle-icon{color:#f87171;font-size:16px;transition:transform .2s ease}.warnings-list{display:flex;flex-direction:column;gap:10px;margin-top:15px;animation:slideDown .3s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.warning-item{background:#3f1e1e;border:1px solid #dc2626;border-radius:8px;padding:12px 16px;display:flex;align-items:center;gap:12px;color:#fca5a5}.warning-item.understaffed{border-color:#dc2626;background:#3f1e1e}.warning-item.overstaffed{border-color:#f59e0b;background:#3f2f1e;color:#fbbf24}.warning-item.conflict{border-color:#7c3aed;background:#2e1f3f;color:#a78bfa}.warning-item svg{color:#f87171;flex-shrink:0}.assigned-employees{display:flex;flex-direction:column;gap:4px;margin-top:6px}.employee-item{display:flex;align-items:center;gap:6px;padding:4px 8px;background:#1a1a1a;border-radius:4px;border:1px solid #404040;font-size:11px;color:#e0e0e0}.employee-item svg{color:#4ade80;font-size:10px}.no-employees-assigned{color:#6b7280;font-style:italic;text-align:center;padding:6px 8px;font-size:10px}.add-employee-section{margin-top:15px;padding-top:15px;border-top:1px solid #404040}.add-employee-section label{display:block;color:#4ade80;font-weight:600;margin-bottom:8px}.employee-select{width:100%;padding:10px 12px;border:1px solid #404040;border-radius:6px;background:#1a1a1a;color:#e0e0e0;font-size:14px;cursor:pointer}.employee-select:focus{outline:none;border-color:#4ade80;box-shadow:0 0 0 2px #4ade8033}.employee-select option{background:#1a1a1a;color:#e0e0e0}.employee-select optgroup{background:#252525;color:#4ade80;font-weight:600;font-size:13px;padding:8px 0;margin-top:4px}.employee-select optgroup option{background:#1a1a1a;color:#e0e0e0;padding-left:20px;font-weight:400}.btn-remove{background:#dc2626;color:#fff;border:none;padding:4px 6px;border-radius:4px;cursor:pointer;font-size:10px;margin-left:auto;transition:background-color .3s ease}.btn-remove:hover{background:#b91c1c}.employees-list .employee-item{padding:8px 12px;background:#2a2a2a;border:1px solid #404040;border-radius:6px;font-size:14px;justify-content:space-between}.employees-list .employee-item span:first-of-type{flex-grow:1;margin-left:8px}@media(max-width:768px){.scheduler-container{padding:15px}.control-group{flex-direction:column;align-items:stretch;gap:15px}.control-group label{min-width:auto}.btn-primary,.btn-secondary{width:100%;justify-content:center}.schedule-info{flex-direction:column;gap:10px}.schedule-table{font-size:12px}.schedule-table th,.schedule-table td{padding:8px 6px}.modal-container{margin:10px;max-height:95vh}.day-info{flex-direction:column;gap:10px}.shift-detail-header{flex-direction:column;align-items:stretch;gap:10px}.warnings-section{padding:15px}.warning-item{padding:10px 12px;font-size:13px}.add-employee-section{margin-top:10px;padding-top:10px}}.no-schedule-message{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;background:#2a2a2a;border-radius:12px;border:1px solid #404040;color:#b0b0b0;text-align:center;margin-top:30px}.no-schedule-message svg{color:#6b7280;margin-bottom:20px}.no-schedule-message h3{color:#e0e0e0;margin:0 0 10px;font-size:24px}.no-schedule-message p{margin:0;font-size:16px;color:#b0b0b0}.staffing-level{font-size:10px;padding:2px 4px;border-radius:3px;font-weight:600}.shift-item .staffing-level{background:#4ade8033;color:#4ade80}.shift-item.attention .staffing-level{background:#ef444433;color:#ef4444}.manual-entries-section{max-height:400px;overflow-y:auto;border:1px solid #404040;border-radius:8px;background:#1a1a1a}table.manual-shift-table{border-collapse:collapse;width:100%;text-align:center;margin:0}table.manual-shift-table th,table.manual-shift-table td{padding:8px 12px;border:none}table.manual-shift-table th{background:#333;color:#e0e0e0;position:sticky;top:0;z-index:10;border-bottom:1px solid #404040}table.manual-shift-table td{border-bottom:1px solid #404040;background:#2a2a2a;color:#e0e0e0}table.manual-shift-table tr:last-child td{border-bottom:none}table.manual-shift-table tbody tr:hover{background:#333}.manual-entries-section::-webkit-scrollbar{width:8px}.manual-entries-section::-webkit-scrollbar-track{background:#1a1a1a;border-radius:4px}.manual-entries-section::-webkit-scrollbar-thumb{background:#4ade80;border-radius:4px}.manual-entries-section::-webkit-scrollbar-thumb:hover{background:#22c55e}.entries-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;min-height:40px}.entries-header h3{margin:0;flex:1;text-align:center;color:#e0e0e0;font-size:18px}.entries-actions{display:flex;gap:10px;min-width:200px;justify-content:flex-end;align-items:center}.entries-actions:empty{min-width:200px}.entries-actions .btn-danger{background:#ef4444;color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:14px;cursor:pointer;display:flex;align-items:center;gap:8px;transition:background-color .2s ease}.entries-actions .btn-danger:hover{background:#dc2626}.manual-entries-section{margin-top:30px}.cell-edit-info{background:#2a2a2a;border-radius:8px;padding:20px;margin-bottom:20px;border:1px solid #404040}.cell-edit-info .info-item{display:flex;align-items:center;gap:10px}.cell-edit-info .info-item:last-child{margin-bottom:0}.cell-edit-info .info-item.warning{color:#f59e0b;font-weight:700}.cell-edit-forms{display:flex;flex-direction:column;gap:20px}.cell-edit-form{background:#333;border-radius:8px;padding:20px;border:1px solid #404040}.cell-edit-form .form-header{margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid #404040}.cell-edit-form .form-header h4{color:#e0e0e0;margin:0;display:flex;align-items:center;gap:10px}.cell-edit-form .shift-name{color:#4ade80;font-weight:400}.cell-edit-form .form-row{display:block;gap:15px;align-items:end}.cell-edit-form .form-group{flex:1;min-width:200px}.cell-edit-form .form-group label{display:block;margin-bottom:5px;color:#e0e0e0;font-weight:500;font-size:14px}.cell-edit-form .form-group input,.cell-edit-form .form-group select{width:100%;padding:8px 12px;background:#2a2a2a;border:1px solid #555555;border-radius:6px;color:#e0e0e0;font-size:14px}.cell-edit-form .form-group input:focus,.cell-edit-form .form-group select:focus{outline:none;border-color:#4ade80;box-shadow:0 0 0 2px #4ade801a}.cell-edit-form .form-group select optgroup{background:#252525;color:#4ade80;font-weight:600;font-size:13px;padding:8px 0;margin-top:4px}.cell-edit-form .form-group select optgroup option{background:#2a2a2a;color:#e0e0e0;padding-left:20px;font-weight:400}.cell-edit-form .readonly-input{background:#1a1a1a!important;color:#999!important;cursor:not-allowed}.modal-actions{display:flex;justify-content:flex-end;gap:15px;margin-top:30px;padding-top:20px;border-top:1px solid #404040}@media(max-width:768px){.cell-edit-form .form-row{flex-direction:column;gap:15px}.cell-edit-form .form-group{min-width:100%}}.manual-schedule-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000}.manual-schedule-modal{width:95vw;height:90vh;background:#1e1e1e;border-radius:12px;border:1px solid #404040;display:flex;flex-direction:column;overflow:hidden}.manual-schedule-header{background:#2a2a2a;padding:20px;border-bottom:1px solid #404040;flex-shrink:0}.header-title h2{color:#e0e0e0;margin:0 0 20px;display:flex;align-items:center;gap:10px;font-size:20px}.manual-schedule-columns{display:grid;grid-template-columns:200px 1fr 240px;gap:10px;align-items:center;padding:10px 0}.employee-column-header{font-weight:700;color:#4ade80;font-size:16px}.dates-columns-header{display:grid;grid-template-columns:repeat(16,1fr);gap:2px;max-width:100%;overflow-x:auto}.date-column-header{text-align:center;padding:3px 1px;background:#333;border-radius:4px;min-width:32px}.date-day{font-weight:700;color:#e0e0e0;font-size:11px}.date-weekday{color:#b0b0b0;font-size:9px}.locations-column-header{font-weight:700;color:#4ade80;font-size:16px;text-align:center}.manual-schedule-body{flex:1;overflow-y:auto;padding:0 20px;background:#1e1e1e}.employee-role-group{margin-bottom:20px}.role-group-header h3{color:#4ade80;font-size:16px;margin:15px 0 10px;padding:8px 12px;background:#2a2a2a;border-radius:6px;border-left:4px solid #4ade80}.employee-row{display:grid;grid-template-columns:200px 1fr 240px;gap:8px;align-items:center;padding:5px 0;border-bottom:1px solid #333}.employee-name{font-weight:500;color:#e0e0e0;padding:6px;background:#2a2a2a;border-radius:4px;font-size:14px}.employee-dates{display:grid;grid-template-columns:repeat(16,1fr);gap:2px;max-width:100%;overflow-x:auto}.date-cell{min-height:28px;border:1px solid #404040;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;background:#333;min-width:32px}.date-cell:hover{background:#404040;border-color:#4ade80}.date-cell.selected-cell{background:#4ade80;border-color:#22c55e;box-shadow:0 0 8px #4ade8080}.date-cell.selected-cell .date-cell-content{color:#1e1e1e;font-weight:700}.date-cell-content{font-size:10px;color:#e0e0e0;text-align:center;padding:1px}.employee-locations{display:flex;flex-wrap:wrap;gap:3px}.location-btn{padding:3px 6px;border:1px solid #404040;border-radius:3px;background:#333;color:#e0e0e0;font-size:10px;cursor:pointer;transition:all .2s ease}.location-btn:hover{background:#404040}.location-btn.active{border-color:#4ade80;box-shadow:0 0 8px #4ade8080;background:#4ade80!important;color:#1e1e1e!important;font-weight:700;transform:scale(1.05)}.location-btn.all-locations{background:#333;color:#e0e0e0;font-weight:700;border-color:#404040}.location-btn:hover{background:#22c55e}.manual-schedule-footer{background:#2a2a2a;padding:20px;border-top:1px solid #404040;flex-shrink:0;display:flex;justify-content:space-between;align-items:center}.manual-schedule-footer .btn-secondary,.manual-schedule-footer .btn-primary{padding:12px 24px;font-size:16px}.shift-modal{max-width:400px;width:90%}.shift-modal-date{color:#b0b0b0;font-size:14px;margin-top:5px}.shift-options{display:flex;flex-direction:column;gap:10px}.shift-option-btn{padding:15px 20px;background:#333;border:1px solid #404040;border-radius:8px;color:#e0e0e0;cursor:pointer;transition:all .2s ease;font-size:16px;text-align:left;line-height:1.4}.shift-option-btn:hover{background:#404040;border-color:#4ade80;transform:translateY(-2px)}.shift-option-btn:first-child{background:#1e40af;border-color:#3b82f6}.shift-option-btn:first-child:hover{background:#2563eb}.shift-option-btn.selected{background:#059669!important;border-color:#10b981!important;color:#fff!important;font-weight:700}.shift-option-btn.selected:hover{background:#047857!important;border-color:#059669!important}.shift-option-btn.dimmed{opacity:.4;background:#1a1a1a!important;border-color:#2a2a2a!important;color:#666!important}.shift-option-btn.dimmed:hover{opacity:.6;transform:none}.clear-shifts-btn{background:#dc2626!important;border-color:#ef4444!important}.clear-shifts-btn:hover{background:#b91c1c!important;border-color:#dc2626!important}@media(max-width:1200px){.manual-schedule-columns,.employee-row{grid-template-columns:180px 1fr 200px}.dates-columns-header,.employee-dates{grid-template-columns:repeat(auto-fit,minmax(28px,1fr))}}@media(max-width:768px){.manual-schedule-modal{width:98vw;height:95vh}.manual-schedule-columns,.employee-row{grid-template-columns:150px 1fr 160px}.employee-name{font-size:12px;padding:4px}.date-cell{min-height:25px;min-width:25px}}.documents-container{min-height:100vh;background:#121212;color:#e0e0e0;padding:20px}.documents-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid #404040}.header-content h1{color:#4ade80;margin:0;font-size:32px;font-weight:700;display:flex;align-items:center;gap:15px}.header-icon{color:#4ade80}.header-content p{margin:8px 0 0;color:#b0b0b0;font-size:16px}.filter-controls{background:#1a1a1a;border-radius:12px;padding:20px;margin-bottom:30px;display:flex;gap:20px;align-items:end;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:8px}.filter-group label{color:#e0e0e0;font-weight:600;font-size:14px}.search-input{position:relative;display:flex;align-items:center}.search-input svg{position:absolute;left:12px;color:#b0b0b0;font-size:14px}.search-input input{padding:10px 10px 10px 35px;border:1px solid #404040;border-radius:6px;background:#2a2a2a;color:#e0e0e0;font-size:14px;width:250px}.search-input input:focus{outline:none;border-color:#4ade80}.filter-group select{padding:10px;border:1px solid #404040;border-radius:6px;background:#2a2a2a;color:#e0e0e0;font-size:14px;min-width:180px}.filter-group select:focus{outline:none;border-color:#4ade80}.btn-primary{background:linear-gradient(135deg,#4ade80,#22c55e);color:#1a1a1a;border:none;padding:12px 24px;border-radius:8px;font-weight:600;font-size:14px;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s ease}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #4ade804d}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-secondary{background:#374151;color:#e0e0e0;border:1px solid #6b7280;padding:10px 20px;border-radius:6px;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s ease}.btn-secondary:hover:not(:disabled){background:#4b5563}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.documents-table-container{background:#1a1a1a;border-radius:12px;overflow:hidden;border:1px solid #404040}.documents-table{width:100%;border-collapse:collapse}.documents-table th{background:#2a2a2a;color:#e0e0e0;padding:16px;text-align:left;font-weight:600;font-size:14px;border-bottom:1px solid #404040}.documents-table th:first-child{border-radius:12px 0 0}.documents-table td{padding:16px;border-bottom:1px solid #2a2a2a;color:#e0e0e0;font-size:14px}.documents-table td:last-child{text-align:center}.documents-table tr:last-child td{border-bottom:none}.documents-table tbody tr:hover{background:#2a2a2a}.document-link{background:none;border:none;color:#4ade80;cursor:pointer;display:flex;align-items:center;gap:8px;text-decoration:none;font-size:14px;padding:0;transition:color .2s ease}.document-link:hover{color:#22c55e;text-decoration:underline}.action-buttons{display:flex;gap:8px;justify-content:center}.btn-icon{background:none;border:1px solid transparent;color:#b0b0b0;cursor:pointer;padding:8px;border-radius:6px;font-size:14px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;width:32px;height:32px}.btn-edit:hover{background:#1e40af;color:#60a5fa;border-color:#1e40af}.btn-delete:hover{background:#7f1d1d;color:#f87171;border-color:#7f1d1d}.no-data{text-align:center;padding:40px;color:#6b7280;font-style:italic}.no-data p{margin:0;font-size:16px}.pagination{display:flex;justify-content:space-between;align-items:center;padding:20px;background:#2a2a2a;border-top:1px solid #404040}.pagination-btn{background:#4ade80;color:#1a1a1a;border:none;padding:10px 20px;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s ease}.pagination-btn:hover:not(:disabled){background:#22c55e}.pagination-btn:disabled{background:#374151;color:#6b7280;cursor:not-allowed}.pagination-info{color:#e0e0e0;font-size:14px}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-container{background:#1a1a1a;border-radius:12px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;border:1px solid #404040}.modal-content{background:#1a1a1a;border-radius:12px;border:1px solid #404040}.modal-header{background:#2a2a2a;padding:20px;border-bottom:1px solid #404040;display:flex;justify-content:space-between;align-items:center;border-radius:12px 12px 0 0}.modal-header h2{color:#e0e0e0;margin:0;font-size:20px;font-weight:600;display:flex;align-items:center;gap:10px}.btn-close{background:none;border:none;color:#b0b0b0;cursor:pointer;padding:8px;border-radius:6px;font-size:16px;transition:all .2s ease}.btn-close:hover{background:#374151;color:#e0e0e0}.modal-body{padding:30px}.document-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{color:#e0e0e0;font-weight:600;font-size:14px}.form-group input,.form-group select{padding:12px;border:1px solid #404040;border-radius:6px;background:#2a2a2a;color:#e0e0e0;font-size:14px}.form-group input:focus,.form-group select:focus{outline:none;border-color:#4ade80}.form-group input[type=file]{background:#2a2a2a;border:2px dashed #404040;padding:20px;text-align:center;cursor:pointer;transition:all .2s ease}.form-group input[type=file]:hover{border-color:#4ade80;background:#1e3a1e}.form-hint{color:#b0b0b0;font-size:12px;font-style:italic}.form-actions{display:flex;gap:15px;justify-content:flex-end;margin-top:20px;padding-top:20px;border-top:1px solid #404040}.btn-danger{background:#ef4444;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s ease}.btn-danger:hover:not(:disabled){background:#dc2626}.btn-danger:disabled{opacity:.6;cursor:not-allowed}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:50vh;gap:20px}.loading-container svg{color:#4ade80}.loading-container p{color:#b0b0b0;font-size:16px}.notification{position:fixed;top:20px;right:20px;padding:16px 24px;border-radius:8px;color:#fff;font-weight:600;z-index:1001;animation:slideIn .3s ease}.notification.success{background:#10b981}.notification.error{background:#8a2424}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@media(max-width:1024px){.filter-controls{flex-direction:column;align-items:stretch}.filter-group,.search-input input,.filter-group select{width:100%}}@media(max-width:768px){.documents-container{padding:15px}.documents-header{flex-direction:column;gap:20px;align-items:stretch}.documents-table-container{overflow-x:auto}.documents-table{min-width:600px}.modal-container{width:95%;margin:20px}.modal-body{padding:20px}.form-actions{flex-direction:column}.pagination{flex-direction:column;gap:15px;text-align:center}}.dashboard-container{padding:20px;background-color:#1a1a1a;min-height:100vh;color:#e0e0e0}.dashboard-header{margin-bottom:20px;border-bottom:2px solid #333;padding-bottom:15px}.dashboard-header h1{font-size:24px;color:#fff;margin:0;display:flex;align-items:center;gap:12px}.header-icon{color:#4a9eff}.dashboard-header p{margin:8px 0 0;color:#999;font-size:14px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:15px;margin-bottom:25px}.stat-card{background:linear-gradient(135deg,#2a2a2a,#1f1f1f);border-radius:8px;padding:15px;display:flex;align-items:center;gap:12px;border:1px solid #333;transition:all .3s ease}.stat-card:hover{transform:translateY(-5px);box-shadow:0 10px 30px #00000080;border-color:#4a9eff}.stat-icon{width:45px;height:45px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:20px;color:#fff}.stat-card.employees .stat-icon{background:linear-gradient(135deg,#4a9eff,#357abd)}.stat-card.locations .stat-icon{background:linear-gradient(135deg,#ff6b6b,#c92a2a)}.stat-card.shifts .stat-icon{background:linear-gradient(135deg,#51cf66,#2f9e44)}.stat-card.dayoffs .stat-icon{background:linear-gradient(135deg,#ffd43b,#fab005)}.stat-card.contracts .stat-icon{background:linear-gradient(135deg,#ff8787,#e03131)}.stat-card.health .stat-icon{background:linear-gradient(135deg,#ff6f61,#d84a3f)}.stat-content{flex:1}.stat-content h3{margin:0;font-size:11px;font-weight:500;color:#999;text-transform:uppercase;letter-spacing:.5px}.stat-number{margin:5px 0 0;font-size:24px;font-weight:700;color:#fff}.dashboard-section{background-color:#2a2a2a;border-radius:8px;margin-bottom:15px;border:1px solid #333;overflow:hidden}.section-header{display:flex;justify-content:space-between;align-items:center;padding:12px 18px;cursor:pointer;background-color:#252525;border-bottom:1px solid #333;transition:background-color .2s}.section-header:hover{background-color:#2d2d2d}.section-title{display:flex;align-items:center;gap:10px}.section-title svg{color:#4a9eff;font-size:18px}.section-title h2{margin:0;font-size:16px;color:#fff;font-weight:600}.section-content{padding:15px}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px;gap:10px;color:#4a9eff}.loading-state p{margin:0;color:#999;font-size:13px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px;gap:10px;color:#51cf66}.empty-state p{margin:0;color:#999;font-size:14px}.error-state{display:flex;align-items:center;justify-content:center;padding:30px;color:#ff6b6b;font-size:14px}.expiring-group{margin-bottom:20px}.expiring-group:last-child{margin-bottom:0}.expiring-group h3{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:15px;padding-bottom:8px;border-bottom:1px solid #333}.expiring-group.expired h3{color:#ff6b6b}.expiring-group.warning h3{color:#ffd43b}.documents-list{display:flex;flex-direction:column;gap:8px}.document-item{display:flex;justify-content:space-between;align-items:center;padding:10px 15px;background-color:#1f1f1f;border-radius:6px;border-left:3px solid;transition:all .2s}.document-item.expired{border-left-color:#ff6b6b}.document-item.warning{border-left-color:#ffd43b}.document-item:hover{background-color:#252525;transform:translate(5px)}.doc-info{display:flex;flex-direction:column;gap:3px}.doc-info strong{color:#fff;font-size:14px}.doc-type{color:#4a9eff;font-size:12px}.doc-date{color:#999;font-size:11px}.doc-status{display:flex;align-items:center;gap:10px}.days-badge{padding:4px 10px;border-radius:4px;font-weight:600;font-size:11px}.days-badge.expired{background-color:#ff6b6b33;color:#ff6b6b}.days-badge.warning{background-color:#ffd43b33;color:#ffd43b}.schedule-info,.dayoffs-info{display:flex;gap:20px;padding:10px 15px;background-color:#1f1f1f;border-radius:6px;margin-bottom:12px;border-left:3px solid #4a9eff;font-size:13px}.schedule-info span,.dayoffs-info span{color:#e0e0e0}.schedule-info strong,.dayoffs-info strong{color:#4a9eff;margin-right:5px}.locations-schedule{overflow-x:auto}.schedule-table{width:100%;border-collapse:collapse;background-color:#1f1f1f;border-radius:6px;overflow:hidden}.schedule-table thead{background-color:#2d2d2d}.schedule-table th{text-align:left;font-size:13px;color:#4a9eff;font-weight:600;border-right:1px solid #333}.schedule-table th:last-child{border-right:none}.schedule-table th.shift-column{width:150px;min-width:150px}.schedule-table tbody tr{border-bottom:1px solid #333;transition:background-color .2s}.schedule-table tbody tr:hover{background-color:#252525}.schedule-table tbody tr:last-child{border-bottom:none}.schedule-table td{border-right:1px solid #333;vertical-align:top}.schedule-table td:last-child{border-right:none}.shift-name-cell{background-color:#252525}.shift-name-cell strong{display:block;color:#fff;font-size:13px;margin-bottom:3px}.shift-time-small{font-size:11px;color:#999}.employee-cell{min-width:120px}.employee-name{font-size:12px;color:#e0e0e0;padding:3px 0;line-height:1.4}.empty-cell{color:#666;font-style:italic}.shifts-list,.dayoffs-list{display:flex;flex-direction:column;gap:6px}.shift-item,.dayoff-item{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background-color:#252525;border-radius:4px;transition:all .2s}.shift-item:hover,.dayoff-item:hover{background-color:#2d2d2d;transform:translate(5px)}.shift-employee,.dayoff-employee{display:flex;align-items:center;gap:8px}.shift-employee svg,.dayoff-employee svg{color:#4a9eff;font-size:14px}.shift-employee strong,.dayoff-employee strong{color:#fff;font-size:13px}.shift-details{display:flex;gap:15px;align-items:center}.shift-name{color:#51cf66;font-weight:500;font-size:12px}.shift-time{color:#999;font-size:12px}.dayoff-type{display:flex;align-items:center}.type-badge{padding:4px 10px;border-radius:4px;background-color:#ffd43b33;color:#ffd43b;font-weight:500;font-size:11px}@media(max-width:1200px){.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}@media(max-width:768px){.dashboard-container{padding:15px}.stats-grid{grid-template-columns:1fr}.stat-card{padding:20px}.section-content{padding:15px}.document-item,.shift-item,.dayoff-item{flex-direction:column;align-items:flex-start;gap:10px}.schedule-info,.dayoffs-info{flex-direction:column;gap:10px}}.App{min-height:100vh}
