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;font-size:16px;line-height:1.5;margin:0;overflow-x:hidden}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}html{font-size:16px}@media screen and (max-width:768px){body,html{font-size:14px}}@media screen and (min-width:768px) and (max-width:1024px){body,html{font-size:15px}}@media screen and (min-width:1024px){body,html{font-size:16px}}iframe,img,video{height:auto;max-width:100%}.container{margin:0 auto;max-width:1200px;padding:0 1rem;width:100%}@media screen and (max-width:768px){.container{padding:0 .5rem}}.text-responsive{font-size:clamp(.875rem,2.5vw,1rem)}body,html{overflow-x:hidden}a,button,input[type=date],input[type=email],input[type=number],input[type=password],input[type=text],input[type=time],select,textarea{min-height:44px;min-width:44px}input[type=checkbox],input[type=radio]{height:18px;min-height:auto;min-width:auto;width:18px}@media screen and (max-width:768px){a,button,input[type=date],input[type=email],input[type=number],input[type=password],input[type=text],input[type=time],select,textarea{min-height:48px;min-width:48px}input[type=checkbox],input[type=radio]{height:18px;min-height:auto;min-width:auto;width:18px}}.sidebar{background-color:#1a1a1a;border-right:none;color:#fff;display:flex;flex-direction:column;height:100vh;left:0;overflow-x:hidden;position:fixed;top:0;transition:all .3s ease;width:250px;z-index:1000}.sidebar.collapsed{width:60px}.sidebar-header{align-items:center;color:#fff;display:flex;height:60px;justify-content:space-between;padding:1rem}.sidebar.collapsed .sidebar-header{justify-content:center;padding:1rem 0}.toggle-btn{align-items:center;background:none;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:1.2rem;justify-content:center;min-height:44px;min-width:44px;transition:background-color .2s}.toggle-btn:hover{background-color:#2a2a2a}.mobile-close-btn{align-items:center;background:none;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:1.5rem;justify-content:center;min-height:44px;min-width:44px;transition:background-color .2s}.mobile-close-btn:hover{background-color:#2a2a2a}.company-info{color:#fff;padding:.5rem 1rem}.sidebar-menu{flex-grow:1;list-style:none;margin:0;padding:0}.sidebar-menu li a{align-items:center;color:#fff;display:flex;font-weight:400;min-height:48px;padding:.75rem 1rem;text-decoration:none;transition:background-color .2s,color .2s;white-space:nowrap}.sidebar.collapsed .sidebar-menu li a{justify-content:center;padding:.75rem 0}.sidebar-menu li a:hover{background-color:#2a2a2a}.sidebar-menu li a.active{background-color:#2a2a2a;border-left:4px solid #3b82f6;color:#fff;font-weight:600}.icon{align-items:center;color:#fff;display:flex;font-size:1.2rem;justify-content:center;margin-right:10px;min-width:20px}.sidebar.collapsed .icon{margin-right:0}.sidebar.collapsed .label{display:none}.sidebar-footer{border-top:1px solid #2a2a2a;padding:1rem}.sidebar.collapsed .sidebar-footer{align-items:center;display:flex;flex-direction:column;gap:1rem;padding:1rem 0}.language-switcher-wrapper{align-items:center;display:flex;gap:.5rem;justify-content:space-between;padding:0 1rem 1rem}.sidebar.collapsed .language-switcher-wrapper{flex-direction:column;gap:.25rem;padding:0 0 1rem}.activity-timer{font-size:14px;white-space:nowrap}.activity-timer,.activity-timer-collapsed{color:#e8e8e8;font-family:Courier New,monospace;font-weight:600}.activity-timer-collapsed{font-size:10px;text-align:center}.sidebar .language-switcher{align-items:center;background-color:#2a2a2a;border:1px solid #3a3a3a;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:12px;gap:.3rem;height:32px;justify-content:center;max-width:80px;padding:.25rem .5rem;transition:background-color .2s,border-color .2s}.sidebar.collapsed .language-switcher{font-size:11px;height:36px;max-width:36px;padding:0;width:36px}.sidebar .language-switcher:hover{background-color:#3a3a3a;border-color:#4a4a4a}.sidebar .language-switcher select{-webkit-appearance:none;appearance:none;background:none;border:none;color:#fff;cursor:pointer;font-size:inherit;outline:none;padding-right:.5rem}.sidebar.collapsed .language-switcher select{padding-right:0;text-align:center;width:100%}.sidebar .language-switcher .dropdown-arrow{color:#888;font-size:10px}.sidebar.collapsed .language-switcher .dropdown-arrow{display:none}.logout-btn{align-items:center;background-color:#fff;border:none;border-radius:4px;cursor:pointer;display:flex;font-weight:700;gap:10px;min-height:48px;padding:.75rem 1rem;transition:background-color .2s,color .2s;width:100%}.logout-btn,.logout-btn .icon,.logout-btn .label{color:#1a1a1a}.sidebar.collapsed .logout-btn{height:40px;justify-content:center;padding:0;width:40px}.logout-btn:hover{background-color:#ff4747;color:#fff}.logout-btn:hover .icon,.logout-btn:hover .label{color:#fff}.icon svg{height:20px;width:20px}@media screen and (min-width:769px) and (max-width:1200px){.sidebar{width:220px}.sidebar.collapsed{width:60px}.sidebar-header{height:55px;padding:.75rem}.sidebar-menu li a{font-size:14px;padding:.65rem .75rem}.company-info{font-size:14px;padding:.5rem .75rem}.sidebar .language-switcher{font-size:11px;height:30px;max-width:70px;padding:.2rem .4rem}.activity-timer{font-size:10px}.activity-timer-collapsed{font-size:9px}}@media screen and (max-width:768px){.sidebar.mobile{box-shadow:2px 0 10px #0000004d;z-index:999}.sidebar.mobile,.sidebar.mobile.collapsed{transform:translateX(-100%);width:280px}.sidebar.mobile:not(.collapsed){transform:translateX(0)}.sidebar.mobile .sidebar-header{height:60px;justify-content:space-between;padding:1rem}.sidebar.mobile .sidebar-header h3{display:block;margin:0}.sidebar.mobile .sidebar-menu li a{font-size:16px;min-height:52px;padding:.875rem 1rem}.sidebar.mobile .icon{font-size:1.3rem;margin-right:12px}.sidebar.mobile .label{display:block;font-size:16px}.sidebar.mobile .sidebar-footer{padding:1rem}.sidebar.mobile .logout-btn{font-size:16px;justify-content:flex-start;min-height:52px;padding:.875rem 1rem;width:100%}.sidebar.mobile .language-switcher-wrapper{justify-content:space-between;padding:0 1rem 1rem}.sidebar.mobile .language-switcher{font-size:14px;height:36px;max-width:100px;padding:.5rem .75rem}.sidebar.mobile .language-switcher .dropdown-arrow{display:block}.sidebar.mobile .activity-timer{font-size:12px}}@media screen and (max-width:480px){.sidebar.mobile,.sidebar.mobile.collapsed{width:260px}.sidebar.mobile .sidebar-header{height:56px;padding:.75rem}.sidebar.mobile .sidebar-menu li a{font-size:15px;min-height:48px;padding:.75rem}.sidebar.mobile .icon{font-size:1.2rem;margin-right:10px}.sidebar.mobile .logout-btn{font-size:15px;min-height:48px;padding:.75rem}.sidebar.mobile .language-switcher-wrapper{padding:0 .75rem 1rem}.sidebar.mobile .language-switcher{font-size:13px;height:34px;max-width:90px;padding:.4rem .6rem}.sidebar.mobile .activity-timer{font-size:11px}}@media screen and (max-width:320px){.sidebar.mobile,.sidebar.mobile.collapsed{width:240px}.sidebar.mobile .sidebar-header{height:52px;padding:.5rem}.sidebar.mobile .sidebar-header h3{font-size:18px}.sidebar.mobile .sidebar-menu li a{font-size:14px;min-height:44px;padding:.65rem .5rem}.sidebar.mobile .icon{font-size:1.1rem;margin-right:8px}.sidebar.mobile .logout-btn{font-size:14px;min-height:44px;padding:.65rem .5rem}.sidebar.mobile .language-switcher-wrapper{padding:0 .5rem 1rem}.sidebar.mobile .language-switcher{font-size:12px;height:32px;max-width:80px;padding:.3rem .5rem}.sidebar.mobile .activity-timer{font-size:10px}}@media (hover:none) and (pointer:coarse){.logout-btn,.mobile-close-btn,.sidebar-menu li a,.toggle-btn{min-height:48px}.language-switcher:hover,.logout-btn:hover,.mobile-close-btn:hover,.sidebar-menu li a:hover,.toggle-btn:hover{background-color:#2a2a2a}}.admin-layout{display:flex;height:100vh}.admin-layout,.content{background-color:#f2f0eb;color:#1a1a1a}.content{flex-grow:1;margin-left:250px;overflow-y:auto;padding:0;position:relative;transition:margin-left .3s ease}.content.expanded{margin-left:60px}.mobile-header{padding:1rem;pointer-events:none;position:fixed;right:0;top:0;z-index:1001}.main-content,.mobile-overlay{height:100%;width:100%}.mobile-overlay{background-color:#00000080;display:none;left:0;position:fixed;top:0;z-index:998}.mobile-menu-button{background:#fff;border:none;border-radius:8px;box-shadow:0 2px 8px #0000001a;cursor:pointer;display:none;padding:12px;pointer-events:auto;position:relative;transition:all .3s ease;z-index:1002}.mobile-menu-button:hover{background:#f5f5f5;box-shadow:0 4px 12px #00000026}.mobile-menu-button:active{transform:scale(.95)}.hamburger-icon{display:flex;flex-direction:column;height:20px;justify-content:space-between;width:20px}.hamburger-icon span{background-color:#1a1a1a;border-radius:2px;display:block;height:3px;transition:all .3s ease;width:100%}.hamburger-icon.active span:first-child{transform:rotate(45deg) translate(6px,6px)}.hamburger-icon.active span:nth-child(2){opacity:0}.hamburger-icon.active span:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}@media (max-width:1024px){.content{padding:0}.content,.content.expanded{margin-left:60px}}@media (max-width:768px){.admin-layout{position:relative}.content{padding:.5rem;width:100%}.content,.content.expanded{margin-left:0}.mobile-header{display:block;padding:1rem;right:0;top:0}.main-content{padding-top:0}.mobile-menu-button{align-items:center;display:flex;justify-content:center}.mobile-overlay{display:block}}@media (max-width:480px){.admin-layout{flex-direction:row;position:relative}.content{flex:1 1;padding:.75rem;width:100%}.content,.content.expanded{margin-left:0}.mobile-header{padding:.75rem}.mobile-menu-button{padding:10px}.hamburger-icon{height:18px;width:18px}}@media (max-width:320px){.content,.mobile-header{padding:.5rem}.mobile-menu-button{padding:8px}.hamburger-icon{height:16px;width:16px}}.auth-container{align-items:center;background-color:#f2f0eb;display:flex;justify-content:center;min-height:100vh;padding:20px;position:relative}.auth-form-container{background-color:#fff;border-radius:8px;box-shadow:0 4px 6px #0000000d;max-width:450px;padding:30px;width:100%}.auth-logo-container{margin-bottom:20px;text-align:center}.auth-logo{border-radius:8px;max-width:150px}.auth-brand-name{color:#1a1a1a;font-size:18px;font-weight:700;margin:16px 0 0;text-align:center}.auth-form{display:flex;flex-direction:column;gap:20px}.form-group{gap:8px}.form-group label{font-weight:600}.form-group input{background-color:#fff;border:1px solid #dfdad1;border-radius:4px;font-size:16px;padding:12px}.auth-button{background-color:#1a1a1a;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:12px;transition:all .2s}.auth-button:hover{background-color:#80ad81;color:#fff}.auth-button:disabled{background-color:#dfdad1;color:#9b9489;cursor:not-allowed}.auth-success{background-color:#22c55e1a;color:#22c55e}.auth-error,.auth-success{border-radius:4px;margin-bottom:20px;padding:12px}.auth-error{background-color:#ff47471a;color:#ff4747}.auth-links{display:flex;flex-direction:column;gap:10px;margin-top:20px;text-align:center}.auth-links a{color:#3b82f6;font-weight:500;text-decoration:none}.auth-links a:hover{text-decoration:underline}.language-switcher-auth{position:absolute;right:20px;top:20px;z-index:1000}.language-toggle{align-items:center;background-color:#fff;border:1px solid #dfdad1;border-radius:4px;color:#1a1a1a;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;justify-content:space-between;min-width:100px;padding:8px 12px;transition:all .2s}.language-toggle:hover{background-color:#f9f9f9;border-color:#80ad81}.dropdown-arrow{font-size:10px;transition:transform .2s}.language-dropdown{background-color:#fff;border:1px solid #dfdad1;border-radius:4px;box-shadow:0 4px 6px #0000001a;margin-top:4px;min-width:100px;overflow:hidden;position:absolute;right:0;top:100%}.language-option{background:none;border:none;color:#1a1a1a;cursor:pointer;display:block;font-size:14px;padding:8px 12px;text-align:left;transition:background-color .2s;width:100%}.language-option:hover{background-color:#f9f9f9}.language-option.active{background-color:#80ad81;color:#fff}.language-option.active:hover{background-color:#6d956e}@media screen and (max-width:768px){.auth-container{align-items:flex-start;padding:40px 15px 15px}.language-switcher-auth{right:15px;top:15px}.language-toggle{font-size:13px;min-width:85px;padding:6px 10px}.language-dropdown{min-width:85px}.language-option{font-size:13px;padding:6px 10px}.auth-form-container{border-radius:4px;margin:0;max-width:100%;padding:20px}.auth-logo{max-width:120px}.auth-brand-name{font-size:16px;margin:12px 0 0}.auth-form{gap:16px}.form-group{gap:6px}.form-group label{font-size:14px}.auth-button,.form-group input{border-radius:4px;font-size:16px;padding:14px 12px}.auth-button{font-weight:700;min-height:48px}.auth-error,.auth-success{font-size:14px;padding:10px}.auth-links{gap:8px;margin-top:16px}.auth-links a{font-size:14px;padding:4px 0}}@media screen and (max-width:480px){.auth-container{padding:20px 10px 10px}.language-switcher-auth{right:10px;top:10px}.language-toggle{font-size:12px;min-width:75px;padding:5px 8px}.language-dropdown{min-width:75px}.language-option{font-size:12px;padding:5px 8px}.auth-form-container{border-radius:0;min-height:auto;padding:15px}.auth-logo{max-width:100px}.auth-brand-name{font-size:14px;margin:8px 0 0}.auth-form{gap:12px}.auth-button,.form-group input{font-size:16px;padding:12px 10px}.auth-button{min-height:44px}.auth-error,.auth-success{font-size:13px;padding:8px}}@media screen and (min-width:768px) and (max-width:1024px){.auth-container{padding:30px}.language-switcher-auth{right:30px;top:30px}.auth-form-container{max-width:500px;padding:35px}.auth-logo{max-width:160px}.auth-brand-name{font-size:20px;margin:18px 0 0}.auth-form{gap:22px}.auth-button,.form-group input{font-size:16px;padding:13px}}@media screen and (min-width:1024px){.auth-container{padding:40px}.language-switcher-auth{right:40px;top:40px}.auth-form-container{max-width:450px;padding:30px}.auth-logo{max-width:150px}.auth-brand-name{font-size:18px}.auth-button,.form-group input{font-size:16px;padding:12px}.auth-button:hover{background-color:#80ad81;color:#fff}}@media (hover:none) and (pointer:coarse){.auth-button,.form-group input{min-height:48px;padding:14px 12px}.auth-links a{align-items:center;display:flex;justify-content:center;min-height:40px;padding:8px 0}.language-toggle{min-height:44px;padding:10px 12px}.language-option{min-height:40px;padding:10px 12px}}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:2dppx){.auth-logo{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}}.active-sessions-widget,.activity-feed-widget,.dashboard-alerts-widget{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-bottom:20px;overflow:hidden}.widget-header{align-items:center;border-bottom:1px solid #f2f0eb;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;padding:20px 32px 16px}.widget-header h3{color:#1a1a1a;font-size:18px;font-weight:600;line-height:1.4;margin:0}.stats-summary{align-items:center;display:flex;flex-wrap:wrap;gap:16px}.stats-summary .stat{align-items:center;color:#9b9489;display:flex;font-size:14px;gap:4px;line-height:1.4;min-width:80px}.stats-summary .stat strong{font-size:16px;font-weight:600}.stats-summary .stat.working strong{color:#80ad81}.stats-summary .stat.break strong{color:#f1d46a}.stats-summary .stat.alert strong{color:#d63031}.widget-filters{background:#f2f0eb;border-bottom:1px solid #f2f0eb;padding:16px 32px}.filter-group{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.activity-type-filter,.department-filter,.search-filter{background:#fff;border:1px solid #e0ddd6;border-radius:4px;box-sizing:border-box;color:#1a1a1a;font-size:14px;min-height:40px;padding:8px 12px;transition:border-color .2s ease}.activity-type-filter:focus,.department-filter:focus,.search-filter:focus{border-color:#959ff4;box-shadow:0 0 0 2px #959ff41a;outline:none}.department-filter:disabled{background-color:#f9fafb;color:#9b9489;cursor:not-allowed}.department-filter{min-width:180px}.activity-type-filter{min-width:160px}.search-filter{flex:1 1;min-width:200px}.activity-type-filters{display:none}.active-sessions-widget{width:100%}.active-sessions-table{overflow-x:auto;width:100%}.active-sessions-widget .active-sessions-table .table-header{grid-gap:16px;align-items:center;background:#f2f0eb;border-bottom:1px solid #e0ddd6;box-sizing:border-box;color:#1a1a1a;display:grid!important;font-size:12px;font-weight:600;gap:16px;grid-template-columns:2.5fr 1.8fr 1.2fr 1.2fr 1fr 1.8fr!important;letter-spacing:.5px;padding:16px 32px;text-transform:uppercase;width:100%}.active-sessions-widget .table-header .header-cell{align-items:center;display:flex;gap:4px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-cell.sortable{cursor:pointer;transition:color .2s ease;-webkit-user-select:none;user-select:none}.header-cell.active,.header-cell.sortable:hover{color:#959ff4}.staff-member-header{white-space:nowrap}.admin-actions-header{justify-content:flex-end;text-align:right}.table-body{max-height:600px;overflow-y:auto}.active-sessions-widget .active-sessions-table .table-row{grid-gap:16px;align-items:center;border-bottom:1px solid #f2f0eb;box-sizing:border-box;display:grid!important;gap:16px;grid-template-columns:2.5fr 1.8fr 1.2fr 1.2fr 1fr 1.8fr!important;padding:16px 32px;transition:background-color .2s ease;width:100%}.table-row:hover{background-color:#f9f8f5}.table-row.clickable{cursor:pointer}.table-row.clickable:hover{background-color:#f9f8f5}.table-row.long-session-row{background-color:#fff5f5;border-left:3px solid #d63031}.table-row.long-session-row:hover{background-color:#ffeaea}.active-sessions-widget .table-row .cell{box-sizing:border-box;color:#1a1a1a;font-size:14px;line-height:1.4;min-width:0;overflow:hidden}.staff-name-cell{min-width:0;overflow:visible}.staff-info{display:flex;flex-direction:column;gap:4px;min-width:0}.staff-info .name{font-size:15px;font-weight:500;line-height:1.4;white-space:normal;word-break:break-word}.cell.department,.staff-info .name{overflow:hidden;text-overflow:ellipsis}.cell.department{white-space:nowrap}.time-info{display:flex;flex-direction:column;gap:2px;min-width:0}.time-info .time{font-size:14px;font-weight:500}.time-info .date,.time-info .time{line-height:1.4;white-space:nowrap}.time-info .date{color:#9b9489;font-size:12px}.duration{background:#e8f5e8;border-radius:4px;color:#80ad81;display:inline-block;font-size:13px;font-weight:500;line-height:1.4;padding:4px 8px;white-space:nowrap}.duration.long{background:#ffebeb;color:#d63031}.status-badge{border-radius:4px;display:inline-block;line-height:1.4}.status-badge.working{background:#e8f5e8;color:#80ad81}.status-badge.break{background:#fef7d9;color:#b8860b}.status-badge.long-break{background:#ffebeb;color:#d63031}.admin-actions-cell{overflow:visible}.action-badges,.admin-actions-cell{align-items:center;display:flex;justify-content:flex-end;min-width:0}.action-badges{flex-wrap:nowrap;gap:6px}.action-badge{border-radius:4px;cursor:pointer;flex-shrink:0;font-size:11px;font-weight:500;min-width:50px;padding:6px 10px;text-align:center;transition:transform .1s ease;-webkit-user-select:none;user-select:none;white-space:nowrap}.action-badge:active{transform:scale(.98)}.action-badge.clock-out{background-color:#ff6b6b;color:#fff}.action-badge.manage{background-color:#4285f4;color:#fff}.action-btn,.action-buttons{display:none}.session-alert{color:#d63031;font-size:11px;font-weight:600;margin-top:2px}.modal-content{width:90vw}.clock-out-modal{background:#fff;border-radius:8px;max-width:500px;width:90vw}.modal-header{border-bottom:1px solid #f2f0eb}.modal-header h3{color:#1a1a1a;font-size:18px;font-weight:600;margin:0}.modal-close{align-items:center;display:flex;font-size:24px;height:32px;justify-content:center;padding:0;transition:background-color .2s ease;width:32px}.modal-close:hover{background-color:#f2f0eb}.modal-body{padding:20px}.session-info{background:#f9f8f5;border-radius:6px;margin-bottom:16px;padding:16px}.session-info p{font-size:14px;line-height:1.4;margin:8px 0}.session-info p:first-child{margin-top:0}.session-info p:last-child{margin-bottom:0}.break-status{color:#f1d46a;font-weight:600}.modal-body>p{color:#1a1a1a;font-size:16px;line-height:1.4;margin:0}.modal-footer{border-top:1px solid #f2f0eb;flex-wrap:wrap;gap:12px;justify-content:flex-end;padding:20px}.btn-cancel,.btn-primary,.btn-secondary{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:14px;font-weight:500;justify-content:center;min-height:40px;padding:10px 20px;transition:all .2s ease}.btn-primary{background:#959ff4;color:#fff}.btn-primary:hover{background:#7b89eb}.btn-secondary{background:#9b9489;color:#fff}.btn-secondary:hover{background:#807a6f}.btn-cancel{background:#f9f8f5;border:1px solid #e0ddd6;color:#9b9489}.btn-cancel:hover{background:#f2f0eb}.btn-primary:disabled,.btn-secondary:disabled{cursor:not-allowed;opacity:.6}.loading-state{color:#9b9489;padding:60px 32px;text-align:center}.spinner{border:2px solid #f2f0eb;height:32px;width:32px}.error-state{padding:40px 32px}.error-message{color:#d63031;font-size:16px;line-height:1.4;margin:0}.empty-state{padding:60px 32px}.empty-icon{opacity:.5}.empty-state h4,.empty-state p{line-height:1.4}.empty-state p{margin:0 0 16px}.clear-filters-btn{align-items:center;background:#959ff4;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;justify-content:center;min-height:40px;padding:8px 16px;transition:background-color .2s ease}.clear-filters-btn:hover{background:#7b89eb}.clear-filters-link{align-items:center;background:#0000;border:none;color:#959ff4;cursor:pointer;display:inline-flex;font-size:14px;margin-left:8px;min-height:32px;padding:4px 8px;text-decoration:underline}.clear-filters-link:hover{color:#7b89eb}.load-more-btn{align-items:center;background:#959ff4;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;justify-content:center;min-height:40px;padding:8px 16px;transition:background-color .2s ease}.load-more-btn:hover{background:#7b89eb}.load-more-btn:disabled{background:#9b9489;cursor:not-allowed}.widget-footer{background:#f2f0eb;border-top:1px solid #e0ddd6;color:#9b9489;font-size:13px;padding:12px 32px}.summary-text{align-items:center;display:flex;gap:8px;line-height:1.4;margin:0}.load-more-section{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.activity-list{max-height:600px;overflow-y:auto}.activity-item{align-items:flex-start;border-left:3px solid #0000;gap:20px;padding:20px 40px;position:relative;transition:all .2s ease}.activity-item:hover{background-color:#f9f8f5}.activity-item.clock-in{background-color:#80ad8105;border-left-color:#80ad81}.activity-item.clock-out{background-color:#d6303105;border-left-color:#d63031}.activity-item.break-start{background-color:#f1d46a05;border-left-color:#f1d46a}.activity-item.break-end{background-color:#959ff405;border-left-color:#959ff4}.activity-item.clock-in:hover{background-color:#80ad810a}.activity-item.clock-out:hover{background-color:#d630310a}.activity-item.break-start:hover{background-color:#f1d46a0a}.activity-item.break-end:hover{background-color:#959ff40a}.activity-status-indicator{border-radius:50%;flex-shrink:0;height:10px;margin-top:6px;width:10px}.activity-status-indicator.clock-in{background:#80ad81}.activity-status-indicator.clock-out{background:#d63031}.activity-status-indicator.break-start{background:#f1d46a}.activity-status-indicator.break-end{background:#959ff4}.activity-content{flex:1 1;min-width:0}.activity-header{align-items:flex-start;display:flex;gap:20px;justify-content:space-between;margin-bottom:8px}.staff-info .staff-name{color:#1a1a1a;font-size:15px;font-weight:600;line-height:1.4;margin:0}.activity-time-display{align-items:center;display:flex;flex-shrink:0;font-size:13px;gap:8px}.activity-time-display .timestamp{color:#1a1a1a;font-weight:600}.activity-time-display .relative-time,.activity-time-display .time-separator{color:#9b9489;font-weight:400}.activity-details{color:#9b9489;font-size:14px;line-height:1.4}.activity-description{margin:0}.activity-description strong{font-weight:600}.location-device-separator{color:#9b9489;margin:0 4px}.activity-item-card{align-items:flex-start;border-bottom:1px solid #f2f0eb;border-left:3px solid #0000;display:flex;gap:20px;padding:20px 40px;transition:all .2s ease}.activity-item-card:hover{background-color:#f9f8f5}.activity-item-card.clock-in{background-color:#80ad8105;border-left-color:#80ad81}.activity-item-card.clock-out{background-color:#d6303105;border-left-color:#d63031}.activity-item-card.break-start{background-color:#f1d46a05;border-left-color:#f1d46a}.activity-item-card.break-end{background-color:#959ff405;border-left-color:#959ff4}.activity-icon-wrapper{flex-shrink:0;margin-top:2px}.activity-icon{height:10px;width:10px}.activity-icon.clock-in{background:#80ad81}.activity-icon.clock-out{background:#d63031}.activity-icon.break-start{background:#f1d46a}.activity-icon.break-end{background:#959ff4}.activity-header-left h4.staff-name{color:#1a1a1a;font-size:15px;font-weight:600;line-height:1.4;margin:0}.activity-header-right{flex-shrink:0;text-align:right}.activity-time-container{align-items:center;display:flex;font-size:13px;gap:8px}.activity-time-container .activity-time{color:#1a1a1a;font-weight:600}.activity-time-container .relative-time,.activity-time-container .time-separator{color:#9b9489}.activity-date{color:#9b9489;display:block;font-size:12px;line-height:1.4;margin-top:4px}.activity-description{color:#1a1a1a;font-size:14px;line-height:1.4;margin:8px 0 0}.alert-item{align-items:flex-start;border-bottom:1px solid #f2f0eb;display:flex;gap:16px;padding:16px 32px}.alert-icon{border-radius:50%;flex-shrink:0;height:8px;margin-top:6px;width:8px}.alert-icon.warning{background:#f1d46a}.alert-icon.info{background:#959ff4}.alert-icon.error{background:#d63031}.alert-content{flex:1 1}.alert-content .message{color:#1a1a1a;font-size:15px;font-weight:500;line-height:1.4;margin-bottom:4px}.alert-content .details{color:#9b9489;font-size:13px;line-height:1.4}.no-alerts-state{color:#9b9489;padding:40px 32px;text-align:center}.no-alerts-state .success-icon{align-items:center;background:#80ad81;border-radius:50%;color:#fff;display:flex;font-size:24px;height:48px;justify-content:center;margin:0 auto 16px;width:48px}.no-alerts-state h4{color:#1a1a1a;font-size:18px;line-height:1.4;margin:0 0 8px}.no-alerts-state p{font-size:14px;line-height:1.4;margin:0}.widget-tabs{-webkit-overflow-scrolling:touch;background:#f2f0eb;border-bottom:1px solid #f2f0eb;display:flex;overflow-x:auto}.tab-button{align-items:center;background:#0000;border:none;border-bottom:2px solid #0000;color:#9b9489;cursor:pointer;display:flex;flex-shrink:0;font-size:14px;font-weight:500;justify-content:center;min-height:44px;padding:12px 32px;position:relative;transition:all .2s ease;white-space:nowrap}.tab-button:hover{background:#ffffff80;color:#1a1a1a}.tab-button.active{background:#fff;border-bottom-color:#000;color:#1a1a1a}.tab-badge{background:#959ff4;border-radius:10px;color:#fff;font-size:11px;font-weight:600;margin-left:6px;padding:2px 6px}@media (min-width:1200px){.widget-header{padding:24px 40px 20px}.widget-filters{padding:20px 40px}.widget-footer{padding:16px 40px}.activity-item,.activity-item-card{padding:24px 48px}.alert-item{padding:20px 40px}.active-sessions-widget .table-header,.active-sessions-widget .table-row{padding:16px 40px}}@media (max-width:1199px){.active-sessions-widget .table-header,.active-sessions-widget .table-row{font-size:13px;grid-template-columns:2.5fr 1.5fr 1fr 1fr 1fr 1.5fr!important}}@media (max-width:991px){.widget-header{padding:18px 28px 14px}.widget-filters{padding:14px 28px}.widget-footer{padding:12px 28px}.activity-item,.activity-item-card{padding:18px 32px}.alert-item{padding:14px 28px}.stats-summary{gap:12px}.filter-group{gap:10px}.tab-button{font-size:13px;padding:10px 20px}.active-sessions-widget .table-header,.active-sessions-widget .table-row{grid-template-columns:2.5fr 1.5fr 1fr 1fr 1.2fr!important;padding:16px 28px}.active-sessions-widget .table-row .cell:nth-child(5){display:none}}@media (max-width:768px){.widget-header{align-items:flex-start;flex-direction:column;gap:16px;padding:20px 24px 16px}.widget-header h3{font-size:18px}.stats-summary{gap:12px;justify-content:space-between;width:100%}.stats-summary .stat{font-size:14px;min-width:70px}.stats-summary .stat strong{font-size:16px}.filter-group{flex-direction:column;gap:12px;width:100%}.activity-type-filter,.department-filter,.search-filter{font-size:16px;min-width:0;min-width:auto;padding:12px 16px;width:100%}.widget-filters{padding:16px 24px}.active-sessions-widget .table-header,.active-sessions-widget .table-row{font-size:14px;gap:12px;grid-template-columns:2fr 1fr 1.5fr!important;padding:16px 24px}.active-sessions-widget .table-row .cell:nth-child(n+3):nth-child(-n+5){display:none}.activity-item,.activity-item-card,.alert-item,.widget-footer{padding-left:24px;padding-right:24px}.activity-header{align-items:flex-start;flex-direction:column;gap:12px}.activity-time-display{align-self:flex-start}.tab-button{font-size:12px;padding:8px 16px}.empty-state,.loading-state,.no-alerts-state{padding:40px 24px}.empty-icon{font-size:40px}.empty-state h4,.no-alerts-state h4{font-size:17px}.load-more-section{gap:12px}.modal-footer{flex-direction:column;gap:12px}.btn-cancel,.btn-primary,.btn-secondary{width:100%}}@media (max-width:480px){.active-sessions-widget,.activity-feed-widget,.dashboard-alerts-widget{border-radius:6px;margin-bottom:20px}.widget-header{padding:20px 20px 16px}.widget-header h3{font-size:17px}.stats-summary{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.stats-summary .stat{flex-direction:column;font-size:13px;gap:4px;min-width:60px;text-align:center}.stats-summary .stat strong{font-size:18px}.widget-filters{padding:16px 20px}.filter-group{gap:12px}.activity-type-filter,.department-filter,.search-filter{border-radius:6px;font-size:16px;min-height:48px;padding:14px 16px}.active-sessions-widget .table-header{display:none!important}.active-sessions-widget .table-row{border-bottom:1px solid #f2f0eb;display:block!important;grid-template-columns:none!important;padding:16px 20px}.active-sessions-widget .table-row .cell{border-bottom:1px solid #f2f0eb80;display:block;font-size:14px;line-height:1.5;padding:8px 0}.active-sessions-widget .table-row .cell:last-child{border-bottom:none}.active-sessions-widget .table-row .cell:before{color:#9b9489;content:attr(data-label) ": ";display:block;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.active-sessions-widget .table-row .admin-actions-cell .action-badges{justify-content:flex-start;margin-top:8px}.active-sessions-widget .table-row .admin-actions-cell:before{content:"Actions: "}.widget-footer{font-size:13px;padding:16px 20px}.activity-item,.activity-item-card{gap:16px;padding:20px}.activity-header{gap:12px}.activity-time-display{align-items:flex-start;flex-direction:column;font-size:13px;gap:4px}.activity-description{font-size:14px;margin-top:12px}.alert-item{gap:16px;padding:16px 20px}.alert-content .message{font-size:15px;margin-bottom:8px}.alert-content .details{font-size:13px}.tab-button{font-size:9px;max-width:33.33%;min-height:36px;overflow:hidden;padding:4px 6px;text-overflow:ellipsis}.tab-badge{font-size:7px;margin-left:2px;padding:1px 2px}.empty-state,.loading-state,.no-alerts-state{padding:40px 20px}.empty-icon{font-size:36px;margin-bottom:16px}.empty-state h4,.no-alerts-state h4{font-size:16px;margin-bottom:12px}.empty-state p,.no-alerts-state p{font-size:14px}.spinner{height:28px;width:28px}.action-badge{font-size:12px;min-height:40px;padding:8px 12px}.clear-filters-btn,.load-more-btn{font-size:15px;min-height:48px;padding:12px 20px}.clear-filters-link{font-size:14px;min-height:44px}.modal-content{margin:20px;width:95vw}.modal-body,.modal-footer,.modal-header{padding:16px}}@media (max-width:320px){.widget-header{padding:16px 16px 12px}.widget-filters,.widget-footer{padding:12px 16px}.activity-item,.activity-item-card,.alert-item{padding-left:16px;padding-right:16px}.active-sessions-widget .table-row{padding:12px 16px}.empty-state,.loading-state,.no-alerts-state{padding:32px 16px}.tab-button{font-size:8px;max-width:33.33%;min-height:32px;padding:2px 4px}.tab-badge{font-size:6px;margin-left:1px;padding:1px 2px}.stats-summary .stat{font-size:12px}.stats-summary .stat strong{font-size:16px}.action-badges{gap:6px}.action-badge{font-size:11px;min-width:50px;padding:6px 8px}}.text-center{text-align:center}.text-muted{color:#9b9489}.font-weight-bold{font-weight:600}.mb-0{margin-bottom:0}.mt-2{margin-top:8px}.mr-2{margin-right:8px}@media (hover:none) and (pointer:coarse){.action-badge,.clear-filters-btn,.load-more-btn{min-height:48px}.tab-button{min-height:44px}.activity-type-filter,.btn-cancel,.btn-primary,.btn-secondary,.department-filter,.search-filter{min-height:48px}}body,html{background-color:#f2f0eb;color:#1a1a1a;margin:0;padding:0}.dashboard-container{background-color:#f2f0eb;margin:0 auto;max-width:1400px;padding:20px}.logout-button{background-color:#f1d46a;border:none;border-radius:4px;color:#1a1a1a;cursor:pointer;margin-bottom:20px;padding:8px 16px}.company-info,.dashboard-components{padding:20px}.company-info,.dashboard-components,.dashboard-section{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-bottom:20px}.dashboard-section{padding:20px 16px}.dashboard-menu{display:flex;flex-direction:column;gap:10px;list-style-type:none;margin:20px 0 0;padding:0}.dashboard-menu li{margin-bottom:10px}.dashboard-link{background-color:#959ff4;border-radius:8px;color:#fff;display:block;font-weight:500;padding:15px 20px;text-decoration:none;transition:background-color .2s}.dashboard-link:hover{background-color:#7b89eb}.dashboard-link:before{content:"→ ";margin-right:8px}.dashboard-item{align-items:center;background-color:#fff;border-radius:4px;color:#1a1a1a;display:flex;font-weight:500;padding:15px;text-decoration:none;transition:background-color .2s}.dashboard-item:hover{background-color:#f7f6f3}.dashboard-icon{font-size:18px;margin-right:10px}.dashboard-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));margin-bottom:2rem}.stat-card{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;padding:1.5rem;text-align:center}.stat-number{margin:.5rem 0}.dashboard-widgets{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-top:20px;overflow:hidden;width:100%}.widget-content{padding:0}.recent-activity{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;padding:1.5rem}.activity-list{list-style:none;margin:0;padding:0}.activity-item{border-bottom:1px solid #f2f0eb;display:flex;padding:12px 0}.activity-icon{align-items:center;background-color:#f2f0eb;border-radius:50%;display:flex;height:36px;justify-content:center;margin-right:15px;width:36px}.clock-in-icon{color:#80ad81}.clock-out-icon{color:#f1d46a}.activity-details{flex:1 1}.activity-details p{line-height:1.4;margin:5px 0}.activity-time{color:#9b9489;font-size:12px}.app-wrapper{background-color:#f2f0eb}@media (min-width:1200px){.dashboard-stats{grid-template-columns:repeat(4,1fr)}.dashboard-menu{flex-direction:row;flex-wrap:wrap;gap:15px}.dashboard-menu li{flex:1 1;margin-bottom:0;min-width:200px}}@media (min-width:1024px) and (max-width:1199px){.dashboard-stats{grid-template-columns:repeat(3,1fr)}}@media (min-width:768px) and (max-width:1023px){.dashboard-container{padding:16px 24px}.dashboard-section{padding:20px}.dashboard-stats{gap:.8rem;grid-template-columns:repeat(2,1fr)}.stat-card{padding:1.2rem}.stat-number{font-size:1.8rem}.dashboard-link{padding:12px 16px}.dashboard-item{padding:12px}.activity-icon{height:32px;margin-right:12px;width:32px}.recent-activity{padding:1.2rem}}@media (min-width:480px) and (max-width:767px){.dashboard-container{padding:16px 24px}.company-info,.dashboard-components,.dashboard-section{margin-bottom:20px;padding:20px}.dashboard-stats{gap:.8rem;grid-template-columns:repeat(2,1fr);margin-bottom:1.5rem}.stat-card{padding:1.2rem}.stat-number{font-size:1.6rem}.dashboard-link{font-size:14px;padding:14px 16px}.dashboard-item{padding:14px}.dashboard-icon{font-size:16px}.activity-item{padding:12px 0}.activity-icon{height:30px;margin-right:10px;width:30px}.activity-details p{font-size:14px;line-height:1.5;margin:6px 0}.recent-activity{padding:1.2rem}.logout-button{font-size:14px;padding:10px 16px}}@media (max-width:479px){.dashboard-container{padding:16px 20px}.company-info,.dashboard-components,.dashboard-section{margin-bottom:18px;padding:18px}.company-info h2,.dashboard-section h2{font-size:1.3rem;line-height:1.3;margin-bottom:16px}.dashboard-stats{gap:.8rem;grid-template-columns:1fr;margin-bottom:1.5rem}.stat-card{padding:1.2rem}.stat-number{font-size:1.6rem}.dashboard-menu{gap:12px;margin:18px 0 0}.dashboard-menu li{margin-bottom:12px}.dashboard-link{font-size:14px;line-height:1.4;padding:16px 18px}.dashboard-item{font-size:14px;padding:16px}.dashboard-icon{font-size:16px;margin-right:10px}.activity-item{padding:14px 0}.activity-icon{height:32px;margin-right:12px;width:32px}.activity-details p{font-size:14px;line-height:1.5;margin:6px 0}.activity-time{font-size:12px}.recent-activity{padding:1.2rem}.logout-button{font-size:14px;margin-bottom:18px;padding:12px 18px}.dashboard-widgets{margin-top:18px}}@media (max-width:319px){.dashboard-container{padding:12px 16px}.dashboard-section{padding:14px}.stat-number{font-size:1.4rem}.dashboard-link{font-size:13px;padding:14px 16px}.activity-details p{font-size:13px}.activity-time{font-size:11px}}.staff-detail-container,.staff-form-container,.staff-management-container{background-color:#f2f0eb;margin:0 auto;max-width:1200px;padding:20px}.staff-detail-header,.staff-management-header{align-items:center;border-bottom:1px solid #dfdad1;display:flex;gap:15px;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.header-actions{align-items:center;display:flex;flex-shrink:0;gap:8px}.staff-filters{display:flex;gap:10px}.department-filter,.search-container{flex:1 1}.department-select,.staff-search-input{background-color:#fff;border:1px solid #dfdad1;border-radius:4px;box-sizing:border-box;font-size:14px;min-height:44px;padding:10px;width:100%}.staff-list-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 6px #0000000d;overflow:hidden}.staff-table{border-collapse:collapse;min-width:600px;width:100%}.staff-table th{background-color:#dfdad1;color:#1a1a1a;font-weight:600;text-align:left}.staff-table td,.staff-table th{font-size:14px;padding:12px 15px}.staff-table td{border-top:1px solid #f2f0eb}.active-sort,.selected-row,.sortable-header:hover,.staff-table tr:hover{background-color:#f7f6f3}.actions-cell{display:flex;flex-wrap:wrap;gap:8px;justify-content:stretch;width:100%}.table-responsive{-webkit-overflow-scrolling:touch;overflow-x:auto}.role-badge{border-radius:12px;font-size:12px;font-weight:500;padding:3px 8px;text-transform:capitalize;white-space:nowrap}.role-badge.staff{background-color:#f7f6f3;color:#959ff4}.role-badge.manager{background-color:#f7f6f3;color:#f1d46a}.role-badge.admin{background-color:#f7f6f3;color:#22c55e}.primary-badge{background-color:#fff;border:1px solid #dfdad1;border-radius:4px;color:#9b9489;margin-left:8px;padding:2px 5px;white-space:nowrap}.back-button,.edit-button,.refresh-button,.view-button{background-color:#f7f6f3;border:1px solid #dfdad1;border-radius:4px;box-sizing:border-box;color:#3b82f6;cursor:pointer;font-size:14px;font-weight:500;min-height:40px;min-width:80px;padding:10px 16px;transition:background-color .2s;white-space:nowrap}.back-button:hover,.edit-button:hover,.refresh-button:hover,.view-button:hover{background-color:#dfdad1}button:disabled,input:disabled,select:disabled{cursor:not-allowed;opacity:.5}.loading-indicator,.no-results{color:#9b9489;font-size:14px;padding:20px;text-align:center}.error-message{background-color:#f7f6f3;border:1px solid #dfdad1;margin-bottom:15px;padding:15px;text-align:center}.tabs{-webkit-overflow-scrolling:touch;border-bottom:1px solid #dfdad1;gap:2px;margin-bottom:20px;overflow-x:auto}.tab,.tabs{display:flex}.tab{align-items:center;background-color:#f2f0eb;border:none;border-bottom:2px solid #0000;cursor:pointer;font-size:14px;font-weight:500;min-height:44px;padding:10px 20px;transition:all .2s;white-space:nowrap}.tab:hover{background-color:#f7f6f3}.tab.active{background-color:#f2f0eb;border-bottom:2px solid #3b82f6;color:#3b82f6}.tab-content{background-color:#fff;border-radius:4px;box-shadow:0 1px 3px #0000000d;padding:20px}.info-display{display:flex;flex-direction:column;gap:15px}.info-field{display:flex;margin-bottom:10px}.field-label{color:#9b9489;font-size:14px;font-weight:500;min-width:150px}.field-value{color:#1a1a1a;flex:1 1;font-size:14px}.staff-mobile-card{background-color:#fff;border:1px solid #dfdad1;border-radius:8px;box-shadow:0 1px 3px #0000000d;display:none;margin-bottom:10px;padding:15px}.staff-mobile-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.staff-mobile-card-name{color:#1a1a1a;font-size:16px;font-weight:600}.staff-mobile-card-info{display:flex;flex-direction:column;gap:5px;margin-bottom:15px}.staff-mobile-card-info div{color:#9b9489;font-size:14px}.staff-mobile-card-actions{display:flex;flex-wrap:wrap;gap:8px}@media (max-width:1024px) and (min-width:769px){.staff-detail-container,.staff-form-container,.staff-management-container{padding:15px}.staff-table td,.staff-table th{font-size:13px;padding:10px 12px}.actions-cell{align-items:center;justify-content:center;padding:0 4px}.tabs{gap:1px}.tab{font-size:13px;padding:8px 15px}.header-actions{gap:6px}.back-button,.edit-button,.refresh-button,.view-button{font-size:13px;min-width:70px;padding:8px 12px}}@media (max-width:768px){.staff-detail-container,.staff-form-container,.staff-management-container{padding:10px}.staff-detail-header,.staff-management-header{align-items:stretch;flex-direction:column;gap:15px}.header-actions{justify-content:center;order:-1}.staff-filters{flex-direction:column;gap:10px}.department-filter{flex-direction:column;width:100%}.department-filter,.search-container{flex:none}.staff-list-container .staff-table{display:none}.staff-mobile-card{display:block}.staff-list-container{background-color:initial;box-shadow:none;padding:0}.actions-cell,.info-field{flex-direction:column;gap:5px}.field-label{font-weight:600;min-width:auto}.tabs{margin-bottom:15px}.tab{font-size:14px;justify-content:center;min-width:120px;padding:10px 15px}.tab-content{padding:15px}.back-button,.refresh-button,.view-button{font-size:16px;margin-bottom:10px;min-width:auto;padding:12px 20px;width:100%}.header-actions .back-button,.header-actions .refresh-button{margin-bottom:0;width:auto}.staff-mobile-card-actions button{font-size:14px;margin-bottom:0;padding:8px 12px;width:auto}.primary-badge{margin-left:0;margin-top:5px}}@media (max-width:480px){.staff-detail-container,.staff-form-container,.staff-management-container{padding:5px}.staff-mobile-card,.tab-content{padding:10px}.staff-mobile-card-actions{flex-direction:column}.staff-mobile-card-actions button{margin-bottom:5px;width:100%}.staff-mobile-card-actions button:last-child{margin-bottom:0}.tabs{flex-wrap:wrap;gap:5px}.tab{flex:1 1;min-width:100px;padding:8px 10px;text-align:center}.header-actions{gap:6px}.back-button,.edit-button,.refresh-button,.view-button{font-size:12px;min-width:60px;padding:8px 10px}}@media (max-width:768px) and (orientation:landscape){.staff-detail-header,.staff-management-header{align-items:center;flex-direction:row}.staff-filters{flex-direction:row;gap:10px}.department-filter,.search-container{flex:1 1}.header-actions{order:0}}@media (min-width:1200px){.staff-detail-container,.staff-form-container,.staff-management-container{padding:30px}.staff-table td,.staff-table th{padding:15px 20px}.tab-content{padding:25px}.header-actions{gap:10px}}.schedule-header{margin-bottom:20px}.contract-hours-section{align-items:center;background-color:#f7f6f3;border:1px solid #dfdad1;border-radius:4px;display:flex;gap:20px;justify-content:space-between;margin-top:15px;padding:15px}.contract-hours-input{align-items:center;display:flex;gap:10px}.contract-hours-input label{color:#1a1a1a;font-size:14px;font-weight:500;white-space:nowrap}.contract-hours-input input{background-color:#fff;border:1px solid #dfdad1;border-radius:4px;font-size:14px;padding:8px 10px;text-align:center;width:80px}.contract-hours-input span,.monthly-hours-display{color:#9b9489;font-size:14px;white-space:nowrap}.work-schedule-editor{margin:20px 0}.work-schedule-editor.read-only{opacity:.8}.schedule-presets{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.preset-button{background-color:#f7f6f3;border:1px solid #dfdad1;border-radius:4px;color:#3b82f6;cursor:pointer;font-size:14px;min-height:44px;padding:8px 16px;transition:background-color .2s;white-space:nowrap}.preset-button:hover{background-color:#dfdad1;border-color:#dfdad1}.work-schedule-grid{grid-gap:15px;background-color:#f7f6f3;display:grid;gap:15px;grid-template-columns:repeat(7,1fr);margin:20px 0;padding:20px}.work-schedule-day,.work-schedule-grid{border:1px solid #dfdad1;border-radius:4px}.work-schedule-day{align-items:center;background-color:#fff;display:flex;flex-direction:column;gap:8px;padding:15px 10px;transition:background-color .2s}.work-schedule-day:hover:not(.read-only){background-color:#f7f6f3}.work-schedule-day.read-only{background-color:#f9f9f9;border-color:#e5e5e5}.work-schedule-day-header{color:#1a1a1a;font-size:14px;font-weight:600;margin-bottom:5px;text-align:center}.work-schedule-day-edit,.work-schedule-day-view{align-items:center;display:flex;flex-direction:column;gap:8px}.status-indicator{border-radius:12px;font-size:12px;font-weight:500;padding:4px 8px;text-align:center}.status-indicator.working{background-color:#dcfce7;color:#16a34a}.status-indicator.off{background-color:#fef2f2;color:#dc2626}.hours-display{color:#1a1a1a;font-size:14px;font-weight:500}.work-schedule-day-checkbox{align-items:center;display:flex;gap:5px;margin-bottom:5px}.work-schedule-day-checkbox input[type=checkbox],.work-schedule-day-checkbox input[type=checkbox].standard-checkbox{accent-color:#3b82f6;appearance:auto!important;-webkit-appearance:checkbox!important;-moz-appearance:checkbox!important;background:none!important;border:1px solid #ccc!important;border-radius:0!important;box-shadow:none!important;cursor:pointer;height:16px!important;margin:0!important;outline:none;padding:0!important;transform:none!important;width:16px!important}.work-schedule-day-checkbox input[type=checkbox].standard-checkbox:checked,.work-schedule-day-checkbox input[type=checkbox]:checked{background:none!important;border:1px solid #ccc!important;transform:none!important}.work-schedule-day-checkbox input[type=checkbox].standard-checkbox:focus,.work-schedule-day-checkbox input[type=checkbox]:focus{outline:2px solid #3b82f6;outline-offset:2px}.work-schedule-day-checkbox label{color:#9b9489;cursor:pointer;font-size:12px;margin:0 0 0 5px;-webkit-user-select:none;user-select:none}.work-schedule-day-input{background-color:#fff;border:1px solid #dfdad1;border-radius:4px;box-sizing:border-box;font-size:14px;min-height:32px;padding:8px 6px;text-align:center;width:60px}.work-schedule-day-input:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633;outline:none}.work-schedule-day-input:disabled{background-color:#f2f0eb;color:#9b9489;cursor:not-allowed}.schedule-summary{background-color:#f7f6f3;border:1px solid #dfdad1;border-radius:4px;margin-top:20px;padding:15px}.schedule-summary p{color:#1a1a1a;font-size:14px;margin:5px 0}.read-only-note{color:#9b9489;font-style:italic}.total-hours{background-color:#f7f6f3;border-radius:4px;font-size:14px;padding:10px}.work-schedule-day .simple-work-checkbox,.work-schedule-day input[type=checkbox].simple-work-checkbox,.work-schedule-editor .simple-work-checkbox,.work-schedule-editor input[type=checkbox].simple-work-checkbox,input[type=checkbox].simple-work-checkbox{accent-color:#3b82f6!important;appearance:auto!important;-webkit-appearance:checkbox!important;-moz-appearance:checkbox!important;background:#0000!important;background-color:initial!important;background-image:none!important;border:none!important;border-radius:0!important;bottom:auto!important;box-shadow:none!important;color:#000!important;color:initial!important;cursor:pointer!important;display:inline-block!important;height:16px!important;left:auto!important;margin:0!important;max-height:16px!important;max-width:16px!important;min-height:16px!important;min-width:16px!important;outline:none!important;padding:0!important;position:relative!important;right:auto!important;top:auto!important;transform:none!important;transition:none!important;vertical-align:initial!important;width:16px!important}.simple-work-checkbox:after,.simple-work-checkbox:before,input[type=checkbox].simple-work-checkbox:after,input[type=checkbox].simple-work-checkbox:before{content:none!important;display:none!important}.simple-work-checkbox:focus,input[type=checkbox].simple-work-checkbox:focus{outline:2px solid #3b82f6!important;outline-offset:2px!important}.time-management-tab{display:flex;flex-direction:column;gap:2rem}.time-section{background:#fff;background:var(--container-background,#fff);border:1px solid #e0e0e0;border:1px solid var(--borders,#e0e0e0);border-radius:8px;padding:1.5rem}.time-section h3{color:#333;color:var(--primary-text,#333);margin:0 0 1rem}.section-header{flex-wrap:wrap;gap:12px;margin-bottom:1rem}.section-controls{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.add-entry-btn{align-items:center;background-color:#22c55e;border:none;border-radius:6px;box-sizing:border-box;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:6px;justify-content:center;min-height:40px;min-width:120px;padding:10px 16px;transition:all .2s;white-space:nowrap}.add-entry-btn:hover{background-color:#16a34a;box-shadow:0 2px 8px #22c55e4d;transform:translateY(-1px)}.add-entry-btn:focus{outline:2px solid #22c55e;outline-offset:2px}.add-entry-btn:active{box-shadow:0 1px 3px #22c55e33;transform:translateY(0)}.add-entry-btn.primary{background-color:#80ad81;border-radius:8px;font-size:16px;min-height:48px;min-width:160px;padding:12px 24px}.add-entry-btn.primary:hover{background-color:#6d956e;box-shadow:0 4px 16px #80ad8166;transform:translateY(-2px)}.refresh-btn{background-color:#f7f6f3;border:1px solid #dfdad1;border-radius:4px;box-sizing:border-box;color:#3b82f6;cursor:pointer;font-size:14px;font-weight:500;min-height:40px;min-width:80px;padding:10px 16px;transition:all .2s;white-space:nowrap}.refresh-btn:hover{background-color:#dfdad1;border-color:#bbb6a8}.refresh-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.date-filter{background-color:#fff;border:1px solid #dfdad1;border-radius:4px;box-sizing:border-box;cursor:pointer;font-size:14px;min-height:40px;padding:10px 12px;transition:border-color .2s}.date-filter:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633;outline:none}.active-session-card{background:#f0fdf4;background:var(--action-button-light,#f0fdf4);border:2px solid #4cd964;border:2px solid var(--action-button,#4cd964);border-radius:8px;padding:1rem}.session-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.session-status{align-items:center;display:flex;gap:1rem}.admin-action-btn{background:#ff3b30;background:var(--danger,#ff3b30);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:.5rem 1rem}.admin-action-btn:hover{background:#d70015;background:var(--danger-dark,#d70015)}.session-details{display:flex;flex-direction:column;gap:.5rem}.detail-row{display:flex;gap:2rem}.detail-item{display:flex;gap:.5rem}.detail-item .label{color:#666;color:var(--subtle-text,#666);font-weight:500}.detail-item .value{color:#333;color:var(--primary-text,#333)}.duration-highlight{color:#4cd964;color:var(--action-button,#4cd964);font-weight:700}.break-duration{color:#ff9500;color:var(--warning,#ff9500);font-weight:700}.session-alerts{display:flex;flex-direction:column;gap:.5rem;margin-top:1rem}.alert{border-radius:4px;font-size:.9rem;padding:.5rem}.alert.long-session{background:#fff3cd;border:1px solid #ffeaa7;color:#856404}.alert.long-break{background:#d1ecf1;border:1px solid #b8daff;color:#0c5460}.time-entries-table{border:1px solid #e0e0e0;border:1px solid var(--borders,#e0e0e0);border-radius:8px;overflow:hidden;width:100%}.table-header{background:#f5f5f5;background:var(--subtle-background,#f5f5f5);border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--borders,#e0e0e0);display:grid;grid-template-columns:1fr 1fr 1fr 1fr 1fr 1fr 1fr auto}.table-body{display:flex;flex-direction:column}.table-row{border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--borders,#e0e0e0);display:grid;grid-template-columns:1fr 1fr 1fr 1fr 1fr 1fr 1fr auto}.table-row:hover{background:#f9f9f9;background:var(--hover-background,#f9f9f9)}.cell,.header-cell{font-size:.9rem;padding:.75rem .5rem;text-align:left}.header-cell{color:#333;color:var(--primary-text,#333);font-weight:600}.multiple-times{display:flex;flex-direction:column;gap:.25rem}.time-entry{background:#f5f5f5;background:var(--subtle-background,#f5f5f5);border-radius:3px;font-size:.85rem;padding:.1rem .3rem}.pagination{align-items:center;border-top:1px solid #e0e0e0;border-top:1px solid var(--borders,#e0e0e0);display:flex;justify-content:space-between;margin-top:1rem;padding:1rem 0}.page-btn{background:#333;background:var(--primary-text,#333);border:none;border-radius:4px;color:#fff;cursor:pointer;padding:.5rem 1rem}.page-btn:disabled{background:#999;background:var(--subtle-text,#999);cursor:not-allowed}.page-info{align-items:center;display:flex;flex-direction:column;gap:.25rem}.entries-info{color:#666;color:var(--subtle-text,#666);font-size:.8rem}.summary-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stat-item{background:#f5f5f5;background:var(--subtle-background,#f5f5f5);border-radius:6px;display:flex;justify-content:space-between;padding:.75rem 1rem}.stat-label{color:var(--subtle-text,#666)}.stat-value{color:#333;color:var(--primary-text,#333);font-weight:700}.status-badge{border-radius:12px;font-size:12px;font-weight:500;padding:4px 8px;text-align:center;text-transform:capitalize;white-space:nowrap}.status-badge.working{background-color:#dcfce7;color:#16a34a}.status-badge.break{background-color:#fef3c7;color:#d97706}.status-badge.clocked-out{background-color:#f1f5f9;color:#64748b}.status-badge.clocked-in{background-color:#dbeafe;color:#2563eb}.status-badge.on-break{background-color:#fed7aa;color:#ea580c}.empty-state{align-items:center;color:#9b9489;display:flex;flex-direction:column;justify-content:center}.empty-icon{font-size:48px;margin-bottom:16px}.empty-state h4{color:#1a1a1a;font-size:18px;margin:0 0 8px}.empty-state p{color:#9b9489;font-size:14px;margin:0 0 24px;max-width:400px}.no-active-session{align-items:center;border:2px dashed #dfdad1;border-radius:8px;color:#9b9489;display:flex;flex-direction:column;justify-content:center;padding:32px 24px;text-align:center}.no-active-session h4{color:#1a1a1a;font-size:16px;margin:0 0 8px}.no-active-session p{color:#9b9489;font-size:14px;margin:0}.modern-loading-container{align-items:center;display:flex;justify-content:center;padding:40px}.modern-loading-content{align-items:center;display:flex;flex-direction:column;gap:16px;max-width:200px}.loading-progress-bar{background-color:#f2f0eb;border-radius:2px;height:4px;overflow:hidden;width:100%}.loading-progress-fill{animation:loading-progress 2s infinite;background-color:#3b82f6;height:100%}@keyframes loading-progress{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.loading-message{color:#9b9489;font-size:14px;margin:0;text-align:center}.error-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:40px 24px;text-align:center}.error-icon{font-size:32px;margin-bottom:12px}.retry-btn{background-color:#f7f6f3;border:1px solid #dfdad1;border-radius:4px;color:#3b82f6;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background-color .2s}.retry-btn:hover{background-color:#dfdad1}@media (max-width:1024px) and (min-width:769px){.work-schedule-grid{gap:10px;grid-template-columns:repeat(4,1fr)}.contract-hours-section{align-items:stretch;flex-direction:column;gap:15px}.monthly-hours-display{text-align:center}.schedule-presets{justify-content:center}.section-controls{flex-wrap:wrap;gap:6px}.add-entry-btn{font-size:13px;min-width:100px;padding:8px 12px}}@media (max-width:768px){.work-schedule-grid{gap:10px;grid-template-columns:repeat(2,1fr);padding:15px}.work-schedule-day{padding:12px 8px}.work-schedule-day-header{font-size:12px}.work-schedule-day-input{font-size:12px;width:50px}.contract-hours-section{align-items:stretch;flex-direction:column;gap:15px;padding:12px}.contract-hours-input{justify-content:center}.monthly-hours-display{text-align:center}.schedule-presets{flex-direction:column;gap:8px}.preset-button{font-size:16px;margin-bottom:10px;min-width:auto;padding:12px 20px;width:100%}.section-header{align-items:stretch;flex-direction:column;gap:12px}.section-controls{justify-content:center}.add-entry-btn{font-size:16px;min-width:auto;padding:12px 16px;width:100%}.add-entry-btn.primary{font-size:18px;padding:14px 20px}.date-filter,.refresh-btn{min-width:auto;width:100%}.refresh-btn{font-size:16px;padding:12px 16px}.detail-row{flex-direction:column;gap:.5rem}.session-header{align-items:stretch;flex-direction:column;gap:12px}.admin-action-btn{font-size:16px;padding:12px;width:100%}.section-controls{flex-direction:column;gap:8px}}@media (max-width:480px){.work-schedule-grid{gap:8px;grid-template-columns:1fr;padding:10px}.contract-hours-section,.work-schedule-day{padding:10px}.section-controls{flex-direction:column;gap:8px}}@media (max-width:768px) and (orientation:landscape){.work-schedule-grid{grid-template-columns:repeat(4,1fr)}.schedule-presets{flex-direction:row;justify-content:center}.section-header{align-items:center;flex-direction:row}.section-controls{flex-direction:row;gap:8px}}@media (min-width:1200px){.work-schedule-grid{gap:20px;padding:25px}.work-schedule-day{padding:18px 12px}.contract-hours-section{padding:20px}.add-entry-btn{min-width:140px;padding:10px 20px}}.staff-form{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000d;padding:25px}.add-exception-form h4,.exceptions-list h4,.form-section h3,.staff-form h2{color:#1a1a1a}.edit-form .form-group label,.form-group label{color:#1a1a1a;display:block;font-size:14px;font-weight:500;margin-bottom:5px}.form-group{display:flex;flex-direction:column;margin-bottom:15px}.form-group input,.form-group select{background-color:#fff;min-height:44px;padding:12px 10px}.form-group input:focus,.form-group select:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633;outline:none}input.error,select.error{border-color:#ff4747}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.form-actions{align-items:center;border-top:1px solid #dfdad1;display:flex;gap:12px;justify-content:flex-end;margin-top:25px;padding-top:20px}.form-actions button{min-width:100px}.add-staff-button,.save-button,.submit-button{background-color:#80ad81;border:none;border-radius:4px;box-sizing:border-box;color:#fff;cursor:pointer;font-size:14px;font-weight:500;min-height:40px;min-width:80px;padding:10px 16px;transition:background-color .2s;white-space:nowrap}.add-staff-button:hover,.save-button:hover,.submit-button:hover{background-color:#6d956e}.add-button{background-color:#22c55e;border:none;border-radius:4px;box-sizing:border-box;color:#fff;cursor:pointer;font-size:14px;font-weight:500;min-height:44px;min-width:120px;padding:12px 20px;transition:background-color .2s;white-space:nowrap}.add-button:hover{background-color:#16a34a}.apply-schedule-button{background-color:#f7f6f3;border:1px solid #dfdad1;border-radius:4px;box-sizing:border-box;color:#3b82f6;cursor:pointer;font-size:14px;font-weight:500;min-height:40px;min-width:80px;padding:10px 16px;transition:background-color .2s;white-space:nowrap}.apply-schedule-button:hover{background-color:#dfdad1}.delete-button{background-color:#f7f6f3;border:1px solid #dfdad1;box-sizing:border-box;color:#ff4747;font-size:14px;font-weight:500;min-height:40px;min-width:80px;padding:10px 16px;transition:all .2s;white-space:nowrap}.delete-button:hover{background-color:#ffe6e6;border-color:#ff4747}.cancel-button{border:1px solid #ff4747;border-radius:4px;box-sizing:border-box;font-size:14px;font-weight:500;min-height:40px;min-width:80px;padding:10px 16px;transition:all .2s;white-space:nowrap}.cancel-button:hover{background-color:#e63939;border-color:#e63939}.remove-button{align-items:center;background-color:#ff4747;border:none;border-radius:4px;cursor:pointer;display:inline-flex;font-size:12px;font-weight:500;gap:4px;padding:6px 12px;transition:all .2s}.remove-button:hover{background-color:#e63939}.remove-button.small{font-size:11px;padding:4px 8px}.delete-button.small,.edit-button.small{font-size:13px;min-height:36px;min-width:70px;padding:6px 12px}.edit-btn{background-color:#f7f6f3;border:1px solid #dfdad1;border-radius:12px;box-sizing:border-box;color:#3b82f6;cursor:pointer;font-size:14px;font-weight:500;min-height:36px;min-width:60px;padding:8px 12px;transition:all .2s;white-space:nowrap;width:auto}.edit-btn:hover{background-color:#dfdad1;border-color:#bbb6a8}.add-exception-form{background-color:#f7f6f3;border:1px solid #dfdad1;border-radius:4px;padding:15px}.exceptions-table td,.exceptions-table th{background-color:#fff;border-top:1px solid #dfdad1;color:#1a1a1a;font-size:14px}.no-exceptions{color:#9b9489;font-size:14px;font-style:italic}.modal-content.time-entry-modal{background-color:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;display:flex;flex-direction:column;max-height:90vh;max-width:800px;overflow:hidden;width:100%}.modal-header{align-items:flex-start;background-color:#f7f6f3;border-bottom:1px solid #dfdad1;padding:20px 24px}.modal-header-actions{align-items:center;display:flex;gap:12px}.modal-title-section h2{color:#1a1a1a;font-size:18px;font-weight:600;margin:0 0 8px}.modal-subtitle{align-items:center;color:#9b9489;display:flex;font-size:14px;gap:8px;margin:0}.modal-subtitle .staff-name{color:#1a1a1a;font-weight:500}.modal-subtitle .separator{color:#dfdad1}.modal-close{background:none;border:none;border-radius:4px;color:#9b9489;cursor:pointer;font-size:18px;padding:4px;transition:background-color .2s}.modal-close:hover{background-color:#dfdad1}.modal-body{overflow-y:auto;padding:0}.modal-error{background-color:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;margin:16px 24px;padding:12px 16px}.cancel-button-professional,.modal-error{align-items:center;display:flex;font-size:14px;gap:8px}.cancel-button-professional{background:linear-gradient(135deg,#fff,#f8f9fa);border:2px solid #e9ecef;border-radius:8px;box-shadow:0 2px 4px #0000001a;color:#495057;cursor:pointer;font-weight:600;letter-spacing:.02em;padding:12px 24px;text-transform:none;transition:all .3s ease}.cancel-button-professional:hover:not(:disabled){background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-color:#adb5bd;box-shadow:0 4px 12px #00000026;color:#343a40;transform:translateY(-1px)}.cancel-button-professional:active:not(:disabled){box-shadow:0 2px 4px #0000001a;transform:translateY(0)}.cancel-button-professional:disabled{background:#f8f9fa;border-color:#dee2e6;box-shadow:none;color:#6c757d;cursor:not-allowed;opacity:.6;transform:none}.save-button{align-items:center;background:linear-gradient(135deg,#28a745,#20c997);border:2px solid #28a745;border-radius:8px;box-shadow:0 2px 4px #28a7454d;display:flex;font-size:14px;font-weight:600;gap:8px;letter-spacing:.02em;text-transform:none;transition:all .3s ease}.save-button:hover:not(:disabled){background:linear-gradient(135deg,#218838,#1e7e34);border-color:#1e7e34;box-shadow:0 4px 12px #28a74566;transform:translateY(-1px)}.save-button:active:not(:disabled){box-shadow:0 2px 4px #28a7454d;transform:translateY(0)}.save-button:disabled{background:#6c757d;border-color:#6c757d;box-shadow:none;transform:none}.save-button.has-changes{background:linear-gradient(135deg,#007bff,#6610f2);border-color:#007bff;box-shadow:0 2px 4px #007bff4d}.save-button.has-changes:hover:not(:disabled){background:linear-gradient(135deg,#0056b3,#520dc2);border-color:#0056b3;box-shadow:0 4px 12px #007bff66}.delete-entry-button{align-items:center;background:linear-gradient(135deg,#dc3545,#c82333);border:2px solid #dc3545;border-radius:8px;box-shadow:0 2px 4px #dc35454d;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:8px 16px;transition:all .3s ease}.delete-entry-button:hover:not(:disabled){background:linear-gradient(135deg,#c82333,#a71e2a);border-color:#a71e2a;box-shadow:0 4px 12px #dc354566;transform:translateY(-1px)}.delete-entry-button:disabled{background:#6c757d;border-color:#6c757d;box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.confirmation-overlay{align-items:center;background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10001}.confirmation-dialog{background-color:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:480px;overflow:hidden;width:90vw}.delete-confirmation .confirmation-header{align-items:center;background-color:#fff5f5;border-bottom:1px solid #dee2e6;display:flex;gap:12px;padding:20px 24px 16px}.delete-confirmation .confirmation-header .icon-warning{color:#dc3545;height:24px;width:24px}.delete-confirmation .confirmation-header h3{color:#dc3545;font-size:18px;font-weight:600;margin:0}.confirmation-body{padding:20px 24px}.confirmation-body p{color:#495057;line-height:1.5;margin:0 0 16px}.entry-summary{background-color:#f8f9fa;border-radius:8px;margin:16px 0;padding:16px}.summary-item{display:flex;font-size:14px;justify-content:space-between;margin-bottom:8px}.summary-item:last-child{margin-bottom:0}.warning-text{background-color:#fff5f5;border-left:4px solid #dc3545;border-radius:6px;color:#dc3545!important;font-weight:500;padding:12px}.confirmation-actions{background-color:#f8f9fa;border-top:1px solid #dee2e6;display:flex;gap:12px;justify-content:flex-end;padding:20px 24px}.cancel-button-secondary{background-color:#fff;border:1px solid #dee2e6;border-radius:6px;color:#495057;cursor:pointer;font-size:14px;padding:10px 20px;transition:all .2s ease}.cancel-button-secondary:hover:not(:disabled){background-color:#f8f9fa;border-color:#adb5bd}.delete-button-confirm{align-items:center;background-color:#dc3545;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 20px;transition:all .2s ease}.delete-button-confirm:hover:not(:disabled){background-color:#c82333}.delete-button-confirm:disabled{background-color:#6c757d;cursor:not-allowed;opacity:.6}.basic-info{background-color:#f7f6f3;border-bottom:1px solid #dfdad1}.form-section{border-bottom:1px solid #f2f0eb;padding:20px 24px}.form-section:last-child{border-bottom:none}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.section-header h3{align-items:center;color:#1a1a1a;display:flex;font-size:16px;font-weight:600;gap:8px;margin:0}.field-error{color:#dc2626;font-size:12px;margin-top:4px}.duration-preview{background-color:#f7f6f3;border-bottom:1px solid #dfdad1;padding:20px 24px}.duration-preview h3{color:#1a1a1a;font-size:16px;font-weight:600;margin:0 0 16px}.duration-summary{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}.duration-item{background-color:#fff;border:1px solid #dfdad1;border-radius:8px;padding:16px;text-align:center;transition:box-shadow .2s}.duration-item:hover{box-shadow:0 2px 8px #0000001a}.duration-value{font-size:20px;font-weight:700;margin-bottom:4px}.duration-item.work .duration-value{color:#22c55e}.duration-item.break .duration-value{color:#f59e0b}.duration-item.total .duration-value{color:#3b82f6}.duration-label{color:#9b9489;font-size:12px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.timestamp-list{gap:12px}.timestamp-entry,.timestamp-list{display:flex;flex-direction:column}.timestamp-entry{gap:4px}.timestamp-input-group{align-items:center;display:flex;gap:12px}.timestamp-input-group label{color:#9b9489;font-size:14px;font-weight:500;min-width:24px}.timestamp-input-group input[type=datetime-local]{background-color:#fff;border:1px solid #dfdad1;border-radius:6px;flex:1 1;font-size:14px;padding:10px 12px;transition:border-color .2s,box-shadow .2s}.timestamp-input-group input[type=datetime-local]:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.timestamp-input-group input[type=datetime-local].error{border-color:#ff4747}.break-pairs{display:flex;flex-direction:column;gap:20px}.break-pair{background-color:#f7f6f3;border:1px solid #dfdad1;border-radius:8px;padding:16px}.break-pair-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.break-number{color:#1a1a1a;font-size:14px;font-weight:600}.break-times{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.break-end,.break-start{display:flex;flex-direction:column;gap:6px}.break-end label,.break-start label{color:#9b9489;font-size:12px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.empty-breaks{color:#9b9489;font-style:italic;padding:24px;text-align:center}.automatic-break-info{background-color:#f0f9ff;border:1px solid #bae6fd}.auto-break-details{background-color:#fff;border:1px solid #bae6fd;border-radius:6px;padding:16px}.info-text{color:#374151;font-size:14px;margin:0 0 12px}.auto-break-value{font-size:14px;margin:8px 0}.auto-break-timestamp{color:#6b7280;font-size:12px;margin:4px 0}.auto-break-note{color:#6b7280;font-size:12px;margin-top:8px}.note-textarea{background-color:#fff;border:1px solid #dfdad1;border-radius:6px;box-sizing:border-box;font-family:inherit;font-size:14px;min-height:80px;padding:12px;resize:vertical;transition:border-color .2s,box-shadow .2s;width:100%}.note-textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.character-count{color:#9b9489;font-size:12px;margin-top:4px;text-align:right}.section-error{background-color:#fef2f2;border:1px solid #fecaca;border-radius:4px;color:#dc2626;font-size:13px;margin-bottom:12px;padding:8px 12px}.modal-footer{align-items:center;background-color:#f7f6f3;border-top:1px solid #dfdad1;display:flex;justify-content:space-between;padding:16px 24px}.footer-info{color:#9b9489;font-size:13px}.unsaved-indicator{color:#f59e0b;font-weight:500}.footer-actions{align-items:center;display:flex;gap:12px}.spinner{border:2px solid #0000;border-top-color:currentcolor;display:inline-block;height:16px;width:16px}.spinner.small{border-width:1.5px;height:12px;width:12px}@media (max-width:1024px) and (min-width:769px){.staff-form{padding:20px}.cancel-button-professional,.delete-button,.save-button{font-size:13px;min-width:70px;padding:8px 12px}.duration-summary{gap:12px;grid-template-columns:1fr}}@media (max-width:768px){.staff-form{padding:15px}.form-group{margin-bottom:15px}.add-button,.add-staff-button,.apply-schedule-button,.submit-button{font-size:16px;margin-bottom:10px;min-width:auto;padding:12px 20px;width:100%}.form-actions{flex-direction:column;gap:10px}.form-actions button{min-width:auto;width:100%}.break-times,.duration-summary,.form-row{gap:12px;grid-template-columns:1fr}.modal-overlay{padding:10px}.modal-content.time-entry-modal{max-height:95vh}.form-section,.modal-header{padding:16px}.modal-footer{align-items:stretch;flex-direction:column;gap:12px;padding:12px 16px}.footer-actions{justify-content:center;width:100%}.footer-actions button{flex:1 1}}@media (max-width:480px){.staff-form{padding:10px}.cancel-button-professional,.delete-button,.save-button{font-size:12px;min-width:60px;padding:8px 10px}.duration-value{font-size:18px}.timestamp-input-group{align-items:stretch;flex-direction:column;gap:6px}.timestamp-input-group label{min-width:auto;text-align:left}}@media (min-width:1200px){.staff-form{padding:30px}}*{box-sizing:border-box}.schedule-planner{background-color:#f2f0eb;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;min-height:100vh;-webkit-user-select:none;user-select:none;width:100%}.planner-header{border-bottom:1px solid #f2f0eb;box-shadow:0 2px 4px #0000000d;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.planner-header__content{align-items:center;display:flex;gap:2rem;justify-content:space-between;padding:1rem 1.5rem}.planner-header__title h1{font-size:1.5rem}.planner-header__title p{color:#9b9489}.planner-header__controls{align-items:center;display:flex;flex:1 1;gap:1.5rem;justify-content:flex-end}.staff-selection-group{display:flex;gap:.75rem}.header-select{background:#fff;border:1px solid #f2f0eb;border-radius:4px;color:#1a1a1a;cursor:pointer;font-size:.875rem;min-width:150px;padding:.625rem 1rem}.header-select:focus{border-color:#959ff4;box-shadow:0 0 0 2px #959ff41a;outline:none}.view-toggle{border:1px solid #f2f0eb;border-radius:4px;display:flex;padding:.25rem}.view-toggle__btn{border-radius:4px;color:#9b9489;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:all .2s ease}.view-toggle__btn.active{background:#959ff4;color:#fff}.view-toggle__btn:hover:not(.active){background:#959ff41a}.date-navigation{align-items:center;background:#fff;border:1px solid #f2f0eb;border-radius:4px;display:flex;gap:.5rem;padding:.25rem}.date-nav__btn{background:#0000;border:none;border-radius:4px;color:#1a1a1a;cursor:pointer;font-weight:500;height:2.5rem;transition:all .2s ease;width:2.5rem}.date-nav__btn:hover{background:#f2f0eb}.date-nav__current{font-size:.875rem;font-weight:600;min-width:12rem;padding:0 1rem;text-align:center}.date-nav__today{border:none;border-radius:4px;cursor:pointer;padding:.5rem 1rem;transition:all .2s ease}.date-nav__today:hover{background:#6d9a6e}.planner-content{background:#fff;margin:1.5rem;min-height:600px;overflow:hidden}.planner-content,.schedule-grid-container{border-radius:8px;box-shadow:0 2px 10px #0000000d}.schedule-grid-container{overflow:auto;width:100%}.grid-header{display:grid;font-weight:600;grid-template-columns:80px repeat(7,1fr);position:-webkit-sticky;position:sticky;top:0;z-index:100}.time-header{align-items:center;display:flex;font-size:.875rem;font-weight:600;justify-content:center;padding:15px 10px}.day-header,.time-header{border-right:1px solid #fff3}.day-header{padding:10px;text-align:center;transition:all .2s ease}.day-header:last-child{border-right:none}.day-header.holiday{background:#f1d46a4d;font-weight:700}.day-name{font-size:14px;font-weight:600}.day-date{font-size:12px;margin-top:2px;opacity:.9}.grid-body{max-height:980px;overflow-x:hidden;overflow-y:auto}.grid-row{display:grid;grid-template-columns:80px repeat(7,1fr)}.time-slot{align-items:center;border-bottom:1px solid #9b94891a;border-right:1px solid #9b948933;color:#9b9489;display:flex;font-size:10px;height:20px;justify-content:center;padding:2px 4px}.time-slot.full-hour{background:#959ff41a;border-bottom:1px solid #9b94894d;color:#1a1a1a;font-size:11px;font-weight:600}.schedule-cell{align-items:center;border-bottom:1px solid #9b94891a;border-right:1px solid #9b948933;cursor:pointer;display:flex;height:20px;justify-content:center;transition:all .2s ease}.schedule-cell:last-child{border-right:none}.schedule-cell:hover{border-color:#959ff44d}.schedule-cell.holiday-cell{background:#f1d46a1a}.schedule-cell.holiday-cell:hover{background:#f1d46a33}.selection-block{background:#959ff4cc;border:2px solid #959ff4;border-radius:4px;min-height:20px;pointer-events:none;position:absolute;z-index:50}.selection-block__header{background:#959ff4f2;border-radius:10px;color:#fff;font-size:10px;font-weight:600;left:4px;line-height:1;padding:2px 6px;position:absolute;top:2px;white-space:nowrap;z-index:51}.user-info-panel{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin:1rem 1.5rem;padding:1rem}.user-info-panel__header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.user-info-panel__name{color:#1a1a1a;font-size:1.125rem;font-weight:600;margin:0}.user-info-panel__total{background:#959ff41a;border-radius:16px;color:#959ff4;font-size:.875rem;font-weight:600;padding:.25rem .75rem}.selected-days-list{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.selected-days-list.collapsed{max-height:150px;overflow:hidden}.selected-day-item{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:6px;cursor:pointer;display:flex;font-size:.875rem;justify-content:space-between;padding:.5rem .75rem;position:relative;transition:all .2s ease}.selected-day-item:hover{background:#fff5f5;border-color:#fca5a5;box-shadow:0 2px 4px #ef44441a;transform:translateY(-1px)}.selected-day-item__day{color:#1a1a1a;font-weight:600}.selected-day-item__time{color:#9b9489;font-size:.8125rem;margin-right:.5rem}.selected-day-item__delete{color:#ef4444;display:none;font-size:1.25rem;font-weight:700;line-height:1;padding:0 .25rem;transition:all .2s ease}.selected-day-item:hover .selected-day-item__delete{display:block}.selected-day-item__delete:hover{color:#dc2626;transform:scale(1.2)}.expand-toggle{background:#0000;border:1px solid #e9ecef;border-radius:6px;color:#959ff4;cursor:pointer;font-size:.875rem;font-weight:500;margin-top:.75rem;padding:.5rem;transition:all .2s ease;width:100%}.expand-toggle:hover{background:#959ff40d;border-color:#959ff4}.help-container{align-items:center;background:#e8f4fd;border:1px solid #bee5eb;border-left:4px solid #17a2b8;border-radius:6px;display:flex;gap:.75rem;margin:1rem 1.5rem;padding:.875rem 1rem}.help-container__icon{color:#17a2b8;flex-shrink:0;font-size:1.125rem}.help-container__text{color:#0c5460;font-size:.875rem;line-height:1.4;margin:0}.calendar-empty{align-items:center;background:#fff;display:flex;justify-content:center;min-height:500px;padding:4rem 2rem}.empty-state__icon{font-size:3rem;margin-bottom:1rem}.empty-state__title{font-size:1.25rem;margin:1rem 0 .5rem}.empty-state__text{color:#9b9489;font-size:.875rem;line-height:1.5}.error-banner{background:#ef44441a;border-left:4px solid #ef4444;border-radius:4px;margin:1rem 1.5rem}.error-banner__content{align-items:center;display:flex;justify-content:space-between;padding:1rem}.error-banner__message{color:#dc2626;font-size:.875rem}.error-banner__close{align-items:center;background:#0000;border:none;border-radius:4px;color:#dc2626;cursor:pointer;display:flex;font-size:1.25rem;height:24px;justify-content:center;width:24px}.error-banner__close:hover{background:#ef44441a}.schedule-planner__loading{align-items:center;background:#fff;display:flex;justify-content:center;min-height:50vh}.loading-spinner p{color:#9b9489;margin-top:1rem}.spinner{border-top-color:#80ad81;height:3rem;margin:0 auto 1rem;width:3rem}@media (max-width:1200px){.schedule-grid-container{overflow-x:auto}.grid-header,.grid-row{min-width:800px}.grid-body{max-height:70vh}}@media (max-width:1024px){.planner-header__content{gap:1rem;padding:1rem}.planner-header__controls{gap:1rem}.selected-days-list{grid-template-columns:1fr}.help-container,.user-info-panel{margin:1rem}}@media (max-width:768px){.schedule-planner{background-color:#f2f0eb}.planner-content{margin:1rem}.planner-header__content{flex-direction:column;gap:1rem;padding:1rem}.planner-header__controls{flex-wrap:wrap;justify-content:space-between;width:100%}.staff-selection-group{order:-1;width:100%}.header-select{flex:1 1;min-width:120px}.day-name{font-size:12px}.time-header{font-size:.75rem;padding:10px 5px}.day-header{padding:8px 5px}.day-date{font-size:10px}.schedule-cell,.time-slot{height:16px}.time-slot{font-size:9px}.time-slot.full-hour{font-size:10px}.selection-block__header{font-size:9px;padding:1px 4px}.user-info-panel__header{align-items:flex-start;flex-direction:column;gap:.5rem}.grid-body{max-height:60vh}}@media (max-width:480px){.planner-content{margin:.5rem}.planner-header__content{padding:.75rem}.date-nav__current{font-size:.75rem;min-width:8rem}.view-toggle__btn{font-size:.75rem;padding:.375rem .75rem}.help-container,.user-info-panel{margin:.5rem;padding:.75rem}.help-container__text{font-size:.8125rem}.selected-day-item__delete{display:block;opacity:.7}.selected-day-item:hover .selected-day-item__delete{opacity:1}}:root{--color-primary:#80ad81;--color-primary-hover:#6b9b6c;--color-secondary:#64748b;--color-success:#80ad81;--color-danger:#dc2626;--color-warning:#f1d46a;--color-surface:#fff;--color-surface-hover:#f2f0eb;--color-surface-selected:#f0f7f0;--color-border:#e2e8f0;--color-border-hover:#cbd5e1;--color-text:#1a1a1a;--color-text-secondary:#64748b;--color-text-muted:#9b9489;--shadow-sm:0 2px 4px #0000000d;--shadow-md:0 4px 6px -1px #0000000d;--shadow-lg:0 10px 15px -3px #0000000d;--radius-sm:0.375rem;--radius-md:0.5rem;--radius-lg:0.75rem}.planner-header{background:#fff;color:#1a1a1a;color:var(--color-text)}.planner-header__title h1{color:#1a1a1a;color:var(--color-text);font-size:1.75rem;font-weight:700;margin:0 0 .25rem}.planner-header__title p{color:#64748b;color:var(--color-text-secondary);font-size:.875rem;font-weight:400;margin:0}.view-toggle{background:#f2f0eb;background:var(--color-surface-hover);border:1px solid #e2e8f0;border:1px solid var(--color-border)}.view-toggle__btn{background:#0000;border:none;color:#64748b;color:var(--color-text-secondary);font-weight:500;transition:all .3s ease}.view-toggle__btn:hover:not(.active){background:#f2f0eb;background:var(--color-surface-hover);color:#1a1a1a;color:var(--color-text)}.view-toggle__btn.active{background:#fff;box-shadow:0 2px 4px #0000000d;box-shadow:var(--shadow-sm);color:#80ad81;color:var(--color-primary);font-weight:600}.date-nav__btn{background:#f2f0eb;background:var(--color-surface-hover);border:1px solid #e2e8f0;border:1px solid var(--color-border);color:#64748b;color:var(--color-text-secondary);font-weight:600;transition:all .3s ease}.date-nav__btn:hover{background:#cbd5e1;background:var(--color-border-hover);color:#1a1a1a;color:var(--color-text);transform:translateY(-1px)}.date-nav__current{color:#1a1a1a;color:var(--color-text);font-size:1rem;font-weight:700}.date-nav__today{background:#80ad81;background:var(--color-primary);border:1px solid #80ad81;border:1px solid var(--color-primary);color:#fff;font-weight:600;transition:all .3s ease}.date-nav__today:hover{background:#6b9b6c;background:var(--color-primary-hover);border-color:#6b9b6c;border-color:var(--color-primary-hover);transform:translateY(-1px)}.schedule-grid-container{transition:all .3s ease}.schedule-grid-container:hover{box-shadow:0 10px 15px -3px #0000000d;box-shadow:var(--shadow-lg)}.grid-header,.time-header{background:#959ff4;background:var(--color-lavender);color:#fff}.time-header{font-weight:700;letter-spacing:.05em;text-transform:uppercase}.day-header{background:#959ff4;background:var(--color-lavender);color:#fff;position:relative}.day-header.holiday{background:#f1d46a;background:var(--color-warning);color:#1a1a1a;color:var(--color-text);position:relative}.day-header.holiday:before{content:"🎉";font-size:.75rem;opacity:.7;position:absolute;right:.25rem;top:.25rem}.day-name{font-weight:700;letter-spacing:.05em;text-transform:uppercase}.day-date{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600}.holiday-indicator{font-size:10px;position:absolute;right:2px;top:2px}.grid-body::-webkit-scrollbar-thumb{background:#80ad81;background:var(--color-primary)}.grid-row{transition:all .3s ease}.grid-row:hover,.time-slot{background:#f2f0eb;background:var(--color-surface-hover)}.time-slot{color:#64748b;color:var(--color-text-secondary);position:relative;transition:all .3s ease}.schedule-cell{background:#fff;background:var(--color-surface);transition:all .3s ease}.schedule-cell:after{background:#80ad81;background:var(--color-primary);content:"";inset:0;opacity:0;pointer-events:none;position:absolute;transition:opacity .3s ease}.schedule-cell:hover:after{opacity:.05}.schedule-cell.holiday-cell{background:#fef9e7}.schedule-cell.holiday-cell:hover{background:#fef3c7}.time-slot-content{height:100%;position:relative;width:100%}.hour-marker{bottom:0;left:0;position:absolute;top:0;width:2px}.error-banner{animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.error-banner__content{background:#fef2f2}.error-banner__message{font-weight:500}.error-banner__close{font-weight:700;transition:all .2s ease}.error-banner__close:hover{transform:scale(1.1)}.staff-sidebar{transition:all .3s ease}.staff-sidebar:hover{box-shadow:0 10px 15px -3px #0000000d;box-shadow:var(--shadow-lg)}.staff-sidebar__title{color:#80ad81;color:var(--color-primary);font-weight:600}.multi-select-toggle{overflow:hidden;transition:all .3s ease}.multi-select-toggle.active{background:#80ad81;background:var(--color-primary);color:#fff}.multi-select-toggle__icon{position:relative;z-index:1}.multi-select-toggle:hover:not(.active){background:#cbd5e1;transform:scale(1.05)}.department-filter__select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;transition:all .3s ease}.department-filter__select:focus{border-color:#80ad81;border-color:var(--color-primary);box-shadow:0 0 0 3px #80ad811a;outline:none}.staff-list__items::-webkit-scrollbar{background:#0000}.staff-list__items::-webkit-scrollbar-thumb{background:#80ad81;background:var(--color-primary);border-radius:10px}.staff-item{overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1)}.staff-item:before{background:#80ad81;background:var(--color-primary);bottom:0;content:"";left:0;position:absolute;top:0;transform:scaleX(0);transition:transform .3s ease;width:3px}.staff-item.selected:before,.staff-item:hover:before{transform:scaleX(1)}.staff-item.selected,.staff-item:hover{box-shadow:0 4px 6px -1px #0000000d;box-shadow:var(--shadow-md);transform:translateX(4px)}.staff-item.selected{background:#f0f7f0;background:var(--color-surface-selected)}.staff-item__name{font-weight:600;transition:color .3s ease}.staff-item.selected .staff-item__name{color:#80ad81;color:var(--color-primary)}.staff-item__role{background:#f2f0eb;background:var(--color-surface-hover);border-radius:.25rem;font-size:.625rem;font-weight:500;padding:.125rem .375rem;position:relative}.staff-item__hours{font-feature-settings:"tnum";color:#80ad81;color:var(--color-success);font-variant-numeric:tabular-nums;font-weight:700}.staff-item__checkbox input{-webkit-appearance:none;appearance:none;border:2px solid #e2e8f0;border:2px solid var(--color-border);border-radius:.25rem;height:1.25rem;position:relative;transition:all .3s ease;width:1.25rem}.staff-item__checkbox input:checked{background:#80ad81;background:var(--color-primary);border-color:#80ad81;border-color:var(--color-primary)}.staff-item__checkbox input:checked:after{align-items:center;color:#fff;content:"✓";display:flex;font-size:.75rem;font-weight:700;inset:0;justify-content:center;position:absolute}.action-btn{font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1)}.action-btn:hover:not(:disabled){box-shadow:0 10px 15px -3px #0000000d;box-shadow:var(--shadow-lg);transform:translateY(-2px)}.action-btn--primary{background:#80ad81;background:var(--color-primary);border:none;color:#fff}.action-btn--primary:hover:not(:disabled){background:#6b9b6c;background:var(--color-primary-hover)}.action-btn--secondary{background:#fff;background:var(--color-surface);border:1px solid #e2e8f0;border:1px solid var(--color-border);color:#1a1a1a;color:var(--color-text)}.action-btn--secondary:hover:not(:disabled){background:#f2f0eb;background:var(--color-surface-hover)}.action-btn:disabled{box-shadow:none!important;cursor:not-allowed;opacity:.5;transform:none!important}.shift-block{background:#80ad81;background:var(--color-primary);border:2px solid #fff3;border-radius:.375rem;border-radius:var(--radius-sm);box-shadow:0 4px 6px -1px #0000000d;box-shadow:var(--shadow-md);color:#fff;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1)}.shift-block:before{background:#fff3;inset:0;transition:opacity .3s ease}.shift-block.hovered:before,.shift-block:hover:before{opacity:1}.shift-block.hovered,.shift-block:hover{box-shadow:0 10px 15px -3px #0000000d;box-shadow:var(--shadow-lg);transform:translateY(-2px) scale(1.02)}.shift-block:active{transform:translateY(-1px) scale(.98)}.shift-block__content{display:flex;flex-direction:column;gap:.125rem;padding:.25rem .5rem;position:relative;z-index:2}.shift-block__time{font-feature-settings:"tnum";font-size:.75rem;font-variant-numeric:tabular-nums;font-weight:700;line-height:1.2;text-shadow:0 1px 2px #0000001a}.shift-block__duration{font-feature-settings:"tnum";font-size:.625rem;font-variant-numeric:tabular-nums;font-weight:600;opacity:.9}.shift-block__delete{background:#dc2626;background:var(--color-danger);border:none;border-radius:50%;box-shadow:0 4px 6px -1px #0000000d;box-shadow:var(--shadow-md);color:#fff;cursor:pointer;font-size:.875rem;font-weight:700;height:1.5rem;position:absolute;right:-.5rem;top:-.5rem;transform:scale(.8);transition:all .3s ease;width:1.5rem;z-index:200}.shift-block.hovered .shift-block__delete{transform:scale(1)}.shift-block__delete:hover{background:#b91c1c;transform:scale(1.1)}.shift-block:nth-child(2n){background:#80ad81;background:var(--color-success)}.shift-block:nth-child(3n){background:#f1d46a;background:var(--color-warning);color:#1a1a1a;color:var(--color-text)}.shift-block:nth-child(4n){background:#8b5cf6}.shift-block:nth-child(5n){background:#06b6d4}.modal-overlay{animation:fadeIn .3s ease-out;background:#0f172ab3}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{animation:slideUp .3s cubic-bezier(.4,0,.2,1);background:var(--color-surface);border:1px solid #e2e8f0;border:1px solid var(--color-border);border-radius:.75rem;border-radius:var(--radius-lg);box-shadow:0 10px 15px -3px #0000000d;box-shadow:var(--shadow-lg)}@keyframes slideUp{0%{opacity:0;transform:translateY(2rem) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-content--small{max-width:28rem}.modal-header{background:#f2f0eb;background:var(--color-surface-hover);border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--color-border);border-radius:.75rem .75rem 0 0;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.modal-title{color:#80ad81;color:var(--color-primary);font-weight:700}.modal-close{background:#f2f0eb;background:var(--color-surface-hover);border:1px solid #e2e8f0;border:1px solid var(--color-border);border-radius:50%;color:#64748b;color:var(--color-text-secondary);transition:all .3s ease}.modal-close:hover{background:#dc2626;transform:rotate(90deg)}.modal-warning{background:#fef2f2;border:1px solid #fca5a5;border-left:4px solid #dc2626;border-left:4px solid var(--color-danger);color:#dc2626;color:var(--color-danger);font-weight:500}.btn{border:none;border-radius:.5rem;border-radius:var(--radius-md);cursor:pointer;font-size:.875rem;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn:hover{box-shadow:0 4px 6px -1px #0000000d;box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn--secondary{background:#64748b;background:var(--color-secondary);color:#fff}.btn--danger{background:#dc2626;background:var(--color-danger);color:#fff}.loading-spinner{animation:fadeIn .5s ease-out}.spinner{background:conic-gradient(from 0deg,#0000,#80ad81);background:conic-gradient(from 0deg,#0000,var(--color-primary));position:relative}.spinner:after{background:#fff;background:var(--color-surface);border-radius:50%;content:"";inset:6px;position:absolute}.loading-spinner p{animation:pulse 2s infinite;color:#64748b;color:var(--color-text-secondary);font-weight:500}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.calendar-empty .empty-state{animation:fadeIn .5s ease-out}.empty-state__icon{animation:float 3s ease-in-out infinite;font-size:4rem;margin-bottom:1.5rem;opacity:.4}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.empty-state__title{color:#1a1a1a;color:var(--color-text);font-weight:600}.empty-state__text{color:#64748b;color:var(--color-text-secondary);line-height:1.6}.repeat-section{border-top:1px solid #e2e8f0;border-top:1px solid var(--color-border);margin:20px 0;padding-top:15px}.repeat-section-toggle{align-items:center;background:none;border:none;color:#1a1a1a;color:var(--color-text);cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:8px 0;text-align:left;transition:color .3s ease;width:100%}.repeat-section-toggle:hover{color:#80ad81;color:var(--color-primary)}.repeat-icon{font-size:12px;transition:transform .2s}.repeat-section-content{margin-top:15px;padding-left:20px}.repeat-options{display:flex;flex-direction:column;gap:12px;margin-bottom:15px}.repeat-option{align-items:center;cursor:pointer;display:flex;font-size:14px;gap:10px;transition:all .3s ease}.repeat-option:hover{color:#80ad81;color:var(--color-primary)}.repeat-option input[type=checkbox]{accent-color:#80ad81;accent-color:var(--color-primary);cursor:pointer;height:18px;width:18px}.repeat-end-date{margin-top:15px}.repeat-end-date label{color:#1a1a1a;color:var(--color-text);display:flex;flex-direction:column;font-size:14px;font-weight:500;gap:8px}.repeat-end-date input[type=date]{border:1px solid #e2e8f0;border:1px solid var(--color-border);border-radius:.5rem;border-radius:var(--radius-md);font-size:14px;padding:8px 12px;transition:all .3s ease}.repeat-end-date input[type=date]:focus{border-color:#80ad81;border-color:var(--color-primary);box-shadow:0 0 0 3px #80ad811a;outline:none}.repeat-helper{background:#f2f0eb;background:var(--color-surface-hover);border-radius:.5rem;border-radius:var(--radius-md);color:#64748b;color:var(--color-text-secondary);font-size:13px;font-style:italic;line-height:1.5;margin-top:15px;padding:10px}.confirm-dialog{align-items:center;animation:fadeIn .3s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172ab3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1001}.confirm-dialog-content{animation:slideUp .3s cubic-bezier(.4,0,.2,1);background:#fff;background:var(--color-surface);border:1px solid #e2e8f0;border:1px solid var(--color-border);border-radius:.75rem;border-radius:var(--radius-lg);box-shadow:0 10px 15px -3px #0000000d;box-shadow:var(--shadow-lg);max-width:400px;padding:24px;width:90%}.confirm-dialog-content h3{color:#1a1a1a;color:var(--color-text);font-size:18px;font-weight:700;margin:0 0 12px}.confirm-dialog-content p{color:#64748b;color:var(--color-text-secondary);font-size:14px;line-height:1.5;margin:0 0 20px}.confirm-dialog-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.confirm-dialog-actions button{border:none;border-radius:.5rem;border-radius:var(--radius-md);cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .3s cubic-bezier(.4,0,.2,1)}.confirm-dialog-actions button:hover{box-shadow:0 4px 6px -1px #0000000d;box-shadow:var(--shadow-md);transform:translateY(-1px)}.confirm-dialog-actions button:first-child{background:#80ad81;background:var(--color-primary);color:#fff}.confirm-dialog-actions button:first-child:hover{background:#6b9b6c;background:var(--color-primary-hover)}.confirm-dialog-actions button:nth-child(2){background:#80ad81;background:var(--color-success);color:#fff}.confirm-dialog-actions button:nth-child(2):hover{background:#6b9b6c;background:var(--color-primary-hover)}.confirm-dialog-actions button:last-child{background:#f2f0eb;background:var(--color-surface-hover);border:1px solid #e2e8f0;border:1px solid var(--color-border);color:#1a1a1a;color:var(--color-text)}.confirm-dialog-actions button:last-child:hover{background:#cbd5e1;background:var(--color-border-hover)}@media (max-width:1024px){.shift-block{padding:.125rem .25rem}.shift-block__time{font-size:.625rem}.shift-block__duration{font-size:.5rem}.shift-block__delete{font-size:.75rem;height:1.25rem;width:1.25rem}}@media (max-width:768px){.planner-header__title h1{font-size:1.5rem}.day-name{font-size:.75rem}.day-date{font-size:.625rem}.time-slot{min-width:20px;width:20px}.shift-block{border-radius:2px}.shift-block__time{font-size:.5rem}.shift-block__duration{font-size:.4rem}.shift-block__delete{font-size:.625rem;height:1rem;width:1rem}.repeat-section-content{padding-left:10px}.confirm-dialog-actions{flex-direction:column}.confirm-dialog-actions button{width:100%}}@media (max-width:640px){.planner-header__title h1{font-size:1.25rem}.date-nav__btn,.date-nav__today,.view-toggle__btn{font-size:.75rem;padding:.5rem}.staff-item{padding:.5rem}.action-btn{font-size:.75rem;padding:.75rem}.modal-content{border-radius:.5rem;border-radius:var(--radius-md);margin:1rem}.confirm-dialog-content{padding:20px}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.action-btn:focus,.confirm-dialog-actions button:focus,.repeat-end-date input:focus,.repeat-option input:focus,.repeat-section-toggle:focus,.schedule-cell:focus,.shift-block:focus,.staff-item:focus,.time-slot:focus{outline:2px solid #80ad81;outline:2px solid var(--color-primary);outline-offset:2px}@media (prefers-contrast:high){.shift-block{border:2px solid}.schedule-cell,.time-slot{border:1px solid}.repeat-section{border-top-width:2px}.confirm-dialog-content{border-width:2px}}:root{--transition-fast:0.15s cubic-bezier(0.4,0,0.2,1);--transition-base:0.3s cubic-bezier(0.4,0,0.2,1);--transition-slow:0.5s cubic-bezier(0.4,0,0.2,1);--easing-spring:cubic-bezier(0.68,-0.55,0.265,1.55);--easing-smooth:cubic-bezier(0.25,0.46,0.45,0.94);--color-lavender:#959ff4;--color-lavender-hover:#7b89eb}.modal-content,.planner-header,.schedule-cell,.schedule-grid-container,.shift-block,.staff-item,.staff-sidebar{-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0)}.view-toggle__btn{overflow:hidden;position:relative;transition:all .15s cubic-bezier(.4,0,.2,1);transition:all var(--transition-fast)}.view-toggle__btn:before{background:linear-gradient(135deg,#fff3,#0000);content:"";inset:0;opacity:0;position:absolute;transition:opacity .15s cubic-bezier(.4,0,.2,1);transition:opacity var(--transition-fast)}.view-toggle__btn:hover:before{opacity:1}.view-toggle__btn:hover:not(.active){background:#ffffff26;transform:translateY(-1px)}.view-toggle__btn:active{transform:translateY(0);transition:transform .1s ease}.date-nav__btn{position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base)}.date-nav__btn:hover{background:#ffffff40;transform:translateY(-2px) scale(1.05)}.date-nav__btn:active{transform:translateY(0) scale(.95);transition:transform .1s ease}.date-nav__today{overflow:hidden;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base)}.date-nav__today:after{background:linear-gradient(45deg,#0000 30%,#fff3 50%,#0000 70%);content:"";inset:0;position:absolute;transform:translateX(-100%);transition:transform .6s ease}.date-nav__today:hover:after{transform:translateX(100%)}.date-nav__today:hover{background:#ffffff4d;transform:translateY(-2px)}.staff-sidebar{transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base)}.staff-sidebar:hover{box-shadow:0 20px 25px -5px #0000001a;transform:translateY(-2px)}.multi-select-toggle{position:relative;transition:all .3s cubic-bezier(.4,0,.2,1) cubic-bezier(.68,-.55,.265,1.55);transition:all var(--transition-base) var(--easing-spring)}.multi-select-toggle:hover:not(.active){background:var(--color-border-hover);transform:scale(1.1) rotate(3deg)}.multi-select-toggle.active{animation:toggleActivated .4s cubic-bezier(.68,-.55,.265,1.55);animation:toggleActivated .4s var(--easing-spring)}@keyframes toggleActivated{0%{transform:scale(1)}50%{transform:scale(1.2) rotate(10deg)}to{transform:scale(1)}}.department-filter__select{position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base)}.department-filter__select:hover{border-color:var(--color-primary);box-shadow:0 0 0 3px #80ad811a;transform:translateY(-1px)}.department-filter__select:focus{box-shadow:0 0 0 4px #80ad8126;transform:translateY(-2px)}.staff-list__items{transition:max-height .5s cubic-bezier(.4,0,.2,1) ease;transition:max-height var(--transition-slow) ease}.staff-item{position:relative;transition:all .3s cubic-bezier(.4,0,.2,1) cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-base) var(--easing-smooth);will-change:transform}.staff-item:after{background:linear-gradient(135deg,var(--color-primary) 0,#6b9b6c 100%);border-radius:inherit;content:"";inset:0;opacity:0;position:absolute;transition:opacity .3s cubic-bezier(.4,0,.2,1);transition:opacity var(--transition-base)}.staff-item:hover:after{opacity:.05}.staff-item:hover{box-shadow:-4px 0 0 0 var(--color-primary),0 10px 25px -5px #80ad8140;transform:translateX(8px) translateY(-2px)}.staff-item.selected{animation:itemSelected .4s cubic-bezier(.68,-.55,.265,1.55);animation:itemSelected .4s var(--easing-spring)}@keyframes itemSelected{0%{transform:scale(1)}50%{transform:scale(1.05) translateX(4px)}to{transform:scale(1) translateX(4px)}}.staff-item__name{transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base)}.staff-item:hover .staff-item__name{color:var(--color-primary);font-weight:700}.staff-item__hours{transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base)}.staff-item:hover .staff-item__hours{font-weight:800;transform:scale(1.1)}.staff-item__checkbox input{cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1) cubic-bezier(.68,-.55,.265,1.55);transition:all var(--transition-base) var(--easing-spring)}.staff-item__checkbox input:hover{border-color:var(--color-primary);transform:scale(1.2)}.staff-item__checkbox input:checked{animation:checkboxChecked .3s cubic-bezier(.68,-.55,.265,1.55);animation:checkboxChecked .3s var(--easing-spring)}@keyframes checkboxChecked{0%{transform:scale(1)}50%{transform:scale(1.3) rotate(5deg)}to{transform:scale(1)}}.action-btn{overflow:hidden;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1) cubic-bezier(.68,-.55,.265,1.55);transition:all var(--transition-base) var(--easing-spring)}.action-btn:after{background:linear-gradient(45deg,#0000 30%,#ffffff4d 50%,#0000 70%);content:"";inset:0;position:absolute;transform:translateX(-100%);transition:transform .6s ease}.action-btn:hover:not(:disabled):after{transform:translateX(100%)}.action-btn:hover:not(:disabled){box-shadow:0 10px 25px -5px #00000040;transform:translateY(-3px) scale(1.02)}.action-btn:active:not(:disabled){transform:translateY(-1px) scale(.98);transition:transform .1s ease}.action-btn:disabled{animation:buttonDisabled .3s ease}@keyframes buttonDisabled{0%,to{transform:translateX(0)}25%{transform:translateX(-2px)}75%{transform:translateX(2px)}}.schedule-grid-container{transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base)}.schedule-grid-container:hover{box-shadow:0 20px 25px -5px #0000001a;transform:translateY(-1px)}.day-header.holiday{animation:holidayPulse 2s ease-in-out infinite}@keyframes holidayPulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.time-slot{transition:all .15s cubic-bezier(.4,0,.2,1);transition:all var(--transition-fast)}.time-slot.full-hour:hover{background:linear-gradient(135deg,#e2e8f0,#cbd5e1);transform:scale(1.05)}.grid-body,.schedule-cell{transition:all .15s cubic-bezier(.4,0,.2,1);transition:all var(--transition-fast)}.schedule-cell{cursor:crosshair;position:relative}.schedule-cell:before{background:radial-gradient(circle,#959ff4 0,#0000 70%);background:radial-gradient(circle,var(--color-lavender) 0,#0000 70%);border-radius:2px;content:"";inset:1px;opacity:0;position:absolute;transition:opacity .15s cubic-bezier(.4,0,.2,1);transition:opacity var(--transition-fast)}.schedule-cell:hover:before{opacity:.1}.schedule-cell:hover{background:#959ff41a}.schedule-cell:active{background:#959ff433;transform:scale(.95)}.schedule-cell.preview{animation:previewSlot 1s ease-in-out infinite;background:linear-gradient(135deg,#959ff4,#7b89eb);background:linear-gradient(135deg,var(--color-lavender) 0,var(--color-lavender-hover) 100%);transform:scale(1.05)}@keyframes previewSlot{0%,to{opacity:.6}50%{opacity:.8}}.schedule-cell.holiday-cell:hover{background:linear-gradient(135deg,#fef3c7,#fde68a)}.hour-marker,.time-slot-content{transition:all .15s cubic-bezier(.4,0,.2,1);transition:all var(--transition-fast)}.schedule-cell:hover .hour-marker{background:linear-gradient(135deg,#959ff4,#7b89eb);background:linear-gradient(135deg,var(--color-lavender) 0,var(--color-lavender-hover) 100%);width:3px}.shift-block{cursor:grab;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1) cubic-bezier(.25,.46,.45,.94);transition:all var(--transition-base) var(--easing-smooth);will-change:transform}.shift-block:before{background:conic-gradient(from 45deg,var(--color-primary),#6b9b6c,var(--color-primary));border-radius:inherit;content:"";inset:-2px;opacity:0;position:absolute;transition:opacity .3s cubic-bezier(.4,0,.2,1);transition:opacity var(--transition-base);z-index:-1}.shift-block.hovered:before,.shift-block:hover:before{opacity:.3}.shift-block.hovered,.shift-block:hover{box-shadow:0 15px 30px -5px #0000004d;cursor:grab;transform:translateY(-4px) scale(1.05) rotate(1deg);z-index:100}.shift-block:active{cursor:grabbing;transform:translateY(-2px) scale(1.02) rotate(-1deg);transition:transform .1s ease}.shift-block[data-dragging=true]{animation:dragging .5s ease-in-out infinite alternate;box-shadow:0 20px 40px -10px #0006;opacity:.8;transform:rotate(5deg) scale(1.1);z-index:1000}@keyframes dragging{0%{transform:rotate(3deg) scale(1.08)}to{transform:rotate(7deg) scale(1.12)}}.shift-block__content{transition:all .15s cubic-bezier(.4,0,.2,1);transition:all var(--transition-fast)}.shift-block:hover .shift-block__content{transform:scale(1.02)}.shift-block__time{transition:all .15s cubic-bezier(.4,0,.2,1);transition:all var(--transition-fast)}.shift-block:hover .shift-block__time{text-shadow:0 2px 4px #0000004d;transform:scale(1.05)}.shift-block__delete{opacity:0;transform:scale(.5) rotate(-90deg);transition:all .3s cubic-bezier(.4,0,.2,1) cubic-bezier(.68,-.55,.265,1.55);transition:all var(--transition-base) var(--easing-spring)}.shift-block.hovered .shift-block__delete{animation:deleteButtonAppear .3s cubic-bezier(.68,-.55,.265,1.55);animation:deleteButtonAppear .3s var(--easing-spring);opacity:1;transform:scale(1) rotate(0deg)}@keyframes deleteButtonAppear{0%{opacity:0;transform:scale(.3) rotate(-180deg)}70%{transform:scale(1.2) rotate(10deg)}to{opacity:1;transform:scale(1) rotate(0deg)}}.shift-block__delete:hover{background:linear-gradient(135deg,#dc2626,#991b1b);box-shadow:0 5px 15px -3px #dc262666;transform:scale(1.3) rotate(90deg)}.shift-block__delete:active{transform:scale(1.1) rotate(45deg);transition:transform .1s ease}.grid-body.dragging{background:#959ff40d;cursor:grabbing}.grid-body.dragging .schedule-cell{cursor:grabbing;pointer-events:none}.grid-body.dragging .schedule-cell:hover:before{opacity:.2}.schedule-cell.drag-over{animation:dragOver .5s ease-in-out infinite alternate;background:#959ff433}@keyframes dragOver{0%{background:#959ff41a}to{background:#959ff44d}}.drop-zone{position:relative}.drop-zone:after{background:#959ff41a;border:2px dashed #959ff4;border:2px dashed var(--color-lavender);border-radius:4px;content:"";inset:0;opacity:0;position:absolute;transition:opacity .15s cubic-bezier(.4,0,.2,1);transition:opacity var(--transition-fast)}.drop-zone.active:after{animation:dropZoneActive 1s ease-in-out infinite;opacity:1}@keyframes dropZoneActive{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.modal-overlay{animation:modalFadeIn ease-out .3s cubic-bezier(.4,0,.2,1);animation:modalFadeIn var(--transition-base) ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}@keyframes modalFadeIn{0%{-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0);opacity:0}to{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:1}}.modal-content{animation:modalSlideUp cubic-bezier(.68,-.55,.265,1.55) .3s cubic-bezier(.4,0,.2,1);animation:modalSlideUp var(--transition-base) var(--easing-spring)}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(2rem) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-close{transition:all .3s cubic-bezier(.4,0,.2,1) cubic-bezier(.68,-.55,.265,1.55);transition:all var(--transition-base) var(--easing-spring)}.modal-close:hover{background:var(--color-danger);box-shadow:0 5px 15px -3px #dc26264d;color:#fff;transform:rotate(90deg) scale(1.1)}.modal-close:active{transform:rotate(45deg) scale(.95);transition:transform .1s ease}.btn{overflow:hidden;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1) cubic-bezier(.68,-.55,.265,1.55);transition:all var(--transition-base) var(--easing-spring)}.btn:after{background:#ffffff4d;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .6s ease,height .6s ease;width:0}.btn:active:after{height:200px;width:200px}.btn:hover{box-shadow:0 10px 25px -5px #00000040;transform:translateY(-2px)}.btn--danger:hover{box-shadow:0 10px 25px -5px #dc262666}.btn:active{transform:translateY(0) scale(.98);transition:transform .1s ease}.staff-list__items::-webkit-scrollbar-thumb{-webkit-transition:background .15s cubic-bezier(.4,0,.2,1);transition:background .15s cubic-bezier(.4,0,.2,1);-webkit-transition:background var(--transition-fast);transition:background var(--transition-fast)}.staff-list__items::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,var(--color-primary) 0,#6b9b6c 100%)}.grid-body::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#959ff4,#7b89eb);background:linear-gradient(135deg,var(--color-lavender) 0,var(--color-lavender-hover) 100%)}.scroll-indicator{background:#959ff41a;border-radius:2px;height:100px;position:fixed;right:1rem;top:50%;width:4px;z-index:999}.scroll-indicator:after{background:#959ff4;background:var(--color-lavender);border-radius:2px;content:"";left:0;position:absolute;top:0;transition:height .15s cubic-bezier(.4,0,.2,1) ease;transition:height var(--transition-fast) ease;width:100%}.loading-spinner{animation:loadingPulse 2s ease-in-out infinite}@keyframes loadingPulse{0%,to{opacity:.8}50%{opacity:1}}.spinner{filter:drop-shadow(0 0 10px rgba(128,173,129,.3))}.error-banner{animation:errorSlideDown cubic-bezier(.68,-.55,.265,1.55) .3s cubic-bezier(.4,0,.2,1);animation:errorSlideDown var(--transition-base) var(--easing-spring)}@keyframes errorSlideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.error-banner__close{transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base)}.error-banner__close:hover{background:#dc26261a;transform:rotate(90deg) scale(1.2)}.staff-item:focus-visible{box-shadow:0 0 0 4px #80ad811a;outline:2px solid var(--color-primary);outline-offset:2px;transform:translateX(4px)}.schedule-cell:focus-visible{background:#959ff41a;outline:2px solid #959ff4;outline:2px solid var(--color-lavender);outline-offset:2px}.shift-block:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px;transform:translateY(-2px) scale(1.02)}.action-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:4px;transform:translateY(-1px)}.staff-item[data-keyboard-selected=true]{background:linear-gradient(135deg,var(--color-surface-selected) 0,#f0f7f0 100%);border-color:var(--color-primary);transform:translateX(4px)}.schedule-cell[data-keyboard-selected=true]{background:#959ff44d;color:#fff}@media (hover:none) and (pointer:coarse){.staff-item:hover{box-shadow:none;transform:none}.staff-item:active{background:var(--color-surface-selected);transform:scale(.98)}.schedule-cell:hover{background:inherit;transform:none}.schedule-cell:active{background:#959ff41a;transform:scale(.95)}.shift-block:hover{box-shadow:var(--shadow-md);transform:none}.shift-block:active{transform:scale(.95)}.action-btn:hover{transform:none}.action-btn:active{background:var(--color-primary-hover);transform:scale(.95)}.shift-block__delete{font-size:1rem;height:2.5rem;width:2.5rem}.multi-select-toggle{height:2.75rem;width:2.75rem}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.action-btn:hover,.btn:hover,.schedule-cell:hover,.shift-block:hover,.staff-item:hover{transform:none}}@media (prefers-contrast:high){.schedule-cell:hover{outline:2px solid currentColor}.shift-block:hover{outline:3px solid currentColor}.staff-item:hover{outline:2px solid currentColor}}.grid-body.dragging .schedule-cell,.modal-content.animating,.shift-block[data-dragging=true]{will-change:transform}.grid-body:not(.dragging) .schedule-cell,.modal-content:not(.animating),.shift-block:not([data-dragging=true]){will-change:auto}.action-btn:hover,.schedule-cell:hover,.shift-block:hover,.staff-item:hover{transform:translateZ(0)}.staff-item__hours{position:relative}.staff-item__hours:after{background:var(--color-success);bottom:0;content:"";height:2px;left:50%;position:absolute;transform:translateX(-50%);transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base);width:0}.staff-item:hover .staff-item__hours:after{width:100%}.day-date{position:relative}.success-feedback{animation:successPulse .8s cubic-bezier(.68,-.55,.265,1.55);animation:successPulse .8s var(--easing-spring)}@keyframes successPulse{0%{transform:scale(1)}50%{box-shadow:0 0 20px #80ad814d;transform:scale(1.1)}to{transform:scale(1)}}.error-feedback{animation:errorShake .6s ease-in-out}@keyframes errorShake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-2px)}20%,40%,60%,80%{transform:translateX(2px)}}.company-settings-page{margin:0 auto;max-width:800px;padding:20px}.settings-header{margin-bottom:30px}.settings-header h1{color:#1a1a1a;font-size:2rem;font-weight:700}.settings-content{display:flex;flex-direction:column;gap:24px}.settings-section{background:#fff;overflow:hidden}.settings-section h2{background:#f8f9fa;border-bottom:1px solid #e9ecef;font-size:1.2rem;margin:0;padding:16px 20px}.settings-section-content{padding:20px}.form-group{margin-bottom:16px}.form-group label{color:#495057;margin-bottom:8px}.form-input,.form-select{border:1px solid #ced4da;border-radius:4px;font-size:1rem;padding:8px 12px;width:100%}.form-select{background:#fff}.toggle-setting{align-items:center;cursor:pointer;display:flex;margin-bottom:12px;position:relative}.company-settings-page .toggle-setting input[type=checkbox]{-webkit-appearance:none!important;appearance:none!important;background-color:#fff!important;border:2px solid #ced4da!important;border-radius:3px!important;box-sizing:border-box!important;cursor:pointer!important;flex-shrink:0!important;height:18px!important;margin:0 12px 0 0!important;max-height:18px!important;max-width:18px!important;min-height:18px!important;min-width:18px!important;padding:0!important;position:relative!important;transition:all .2s ease!important;width:18px!important}.company-settings-page .toggle-setting input[type=checkbox]:hover{border-color:#007bff!important}.company-settings-page .toggle-setting input[type=checkbox]:checked{background-color:#007bff!important;border-color:#007bff!important}.company-settings-page .toggle-setting input[type=checkbox]:checked:after{border:solid #fff!important;border-width:0 2px 2px 0!important;content:""!important;display:block!important;height:8px!important;left:50%!important;position:absolute!important;top:50%!important;transform:translate(-50%,-50%) rotate(45deg)!important;width:4px!important}.company-settings-page .toggle-setting input[type=checkbox]:disabled{background-color:#f8f9fa!important;border-color:#e9ecef!important;cursor:not-allowed!important;opacity:.6!important}.company-settings-page .toggle-setting input[type=checkbox]:disabled:checked{background-color:#6c757d!important;border-color:#6c757d!important}.company-settings-page .toggle-setting input[type=checkbox]:focus{outline:2px solid #007bff33!important;outline-offset:2px!important}.toggle-setting span{color:#212529;font-size:1rem;line-height:1.4;-webkit-user-select:none;user-select:none}.toggle-setting.indented{margin-left:24px}.divider{background:#e9ecef;margin:16px 0}.help-text{color:#6c757d;font-size:.875rem}.break-requirements{background:#f8f9fa;border-radius:4px;margin-top:16px;padding:16px}.break-requirements h4{color:#6c757d;font-size:.875rem;margin:0 0 12px}.requirement-row{display:flex;justify-content:space-between;margin-bottom:8px}.requirement-label{color:#6c757d}.requirement-value{font-weight:600}.note{color:#6c757d;font-size:.75rem;margin-top:12px}.section-description{color:#6c757d;font-size:.875rem;margin-bottom:12px}.link-button{align-items:center;background:none;border:none;color:#007bff;cursor:pointer;display:flex;font-size:1rem;justify-content:space-between;padding:12px 0;text-align:left;width:100%}.link-button:hover{text-decoration:underline}.settings-actions{margin-top:24px}.save-button{background:#212529;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:12px 24px;transition:background .2s;width:100%}.save-button:hover:not(:disabled){background:#343a40}.save-button:disabled{cursor:not-allowed;opacity:.6}.error-message{background:#f8d7da;margin-top:16px;padding:12px}.success-message{background:#d4edda;margin-top:16px;padding:12px}.modal-overlay{background:#00000080}.modal-content{max-height:80vh;padding:24px;width:90%}.modal-content h2{margin-top:0}.icon-calendar:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%231C1C1E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'/%3E%3Cpath d='M16 2v4M8 2v4M3 10h18'/%3E%3C/svg%3E")}.icon-calendar:before,.icon-shield:before{background-position:50%;background-repeat:no-repeat;background-size:20px 20px;content:"";display:block;height:20px;width:20px}.icon-shield:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%231C1C1E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z'/%3E%3C/svg%3E")}.form-label{color:#666;display:block;font-size:14px;margin-bottom:8px}.form-label strong{color:#333;font-weight:600}.privacy-policy-modal{display:flex;flex-direction:column;height:80vh;max-width:900px;width:90%}.modal-header{border-bottom:1px solid #e0e0e0;padding:20px}.close-button{border-radius:4px;color:#666;font-size:28px;height:36px;padding:0;transition:background-color .2s;width:36px}.close-button:hover{background-color:#f0f0f0}.modal-body{flex:1 1;overflow:hidden;position:relative}.privacy-policy-iframe{border:none;height:100%;width:100%}.loading-spinner{left:50%;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%)}.spinner{border:3px solid #f3f3f3;border-top-color:#3498db;margin:0 auto 16px}.privacy-page{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;max-width:800px;padding:40px 20px}.privacy-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:40px}.privacy-page h1{color:#333;margin-bottom:10px}.privacy-page .last-updated{color:#666;font-size:14px;margin-bottom:30px}.privacy-page section{margin-bottom:30px}.privacy-page h2{color:#444;margin-bottom:15px}.support-page{background-color:#f8f9fa;min-height:100vh;padding:20px}.support-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin:0 auto;max-width:800px;padding:40px}.support-page h1{color:#333;font-size:2.5em;margin-bottom:10px;text-align:center}.tagline{color:#666;font-size:1.1em;margin-bottom:40px;text-align:center}.support-page section{margin-bottom:50px}.support-page h2{border-bottom:2px solid #eee;color:#444;font-size:1.8em;margin-bottom:20px;padding-bottom:10px}.contact-methods{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-top:20px}.contact-card{background-color:#f8f9fa;border-radius:8px;padding:25px;text-align:center}.contact-card h3{color:#333;font-size:1.2em;margin-bottom:15px}.contact-card a{color:#007bff;font-size:1.1em;font-weight:500;text-decoration:none}.contact-card a:hover{text-decoration:underline}.response-time{color:#666;font-size:.9em;margin-top:10px}.faq-category{margin-bottom:35px}.faq-category h3{color:#555;font-size:1.4em;margin-bottom:20px;margin-top:30px}.faq-item{background-color:#fafafa;border-left:4px solid #007bff;border-radius:6px;margin-bottom:25px;padding:20px}.faq-item h4{color:#333;font-size:1.1em;font-weight:600;margin-bottom:10px}.faq-item p{color:#666;line-height:1.6;margin:0}.faq-item a{color:#007bff;text-decoration:none}.faq-item a:hover{text-decoration:underline}.resource-links{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:20px}.resource-link{background-color:#f8f9fa;border-radius:8px;color:inherit;display:block;padding:25px;text-align:center;text-decoration:none;transition:transform .2s,box-shadow .2s}.resource-link:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.resource-link h3{color:#333;font-size:1.1em;margin-bottom:8px}.resource-link p{color:#666;font-size:.9em;margin:0}.company-info{background-color:#f8f9fa;border-radius:8px;margin-top:40px;padding:30px}.company-info p{color:#666;line-height:1.6;margin-bottom:20px}.company-details{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:20px}.company-details p{color:#555;margin:0}@media (max-width:768px){.support-container{padding:20px}.support-page h1{font-size:2em}.support-page h2{font-size:1.5em}.faq-item{padding:15px}.contact-methods{grid-template-columns:1fr}}@media print{.support-page{background-color:#fff}.support-container{box-shadow:none;max-width:100%}}.department-list-page{background-color:#f2f0eb;margin:0 auto;max-width:1200px;padding:20px}.department-list{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-top:20px;overflow:hidden}.department-list-item{align-items:center;border-bottom:1px solid #f2f0eb;color:#1a1a1a;display:flex;justify-content:space-between;padding:15px 20px;text-decoration:none;transition:background-color .2s}.department-list-item:hover{background-color:#f7f6f3}.department-list-item:last-child{border-bottom:none}.department-arrow{color:#1a1a1a;font-size:18px;font-weight:700}.add-department-form{display:flex;margin-top:20px}.add-department-form form{display:flex;gap:10px;width:100%}.add-department-form input{border:1px solid #dfdad1;border-radius:8px;flex:1 1;font-size:16px;padding:10px 15px}.add-department-form button{background-color:#80ad81;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px}.add-department-form button:disabled{background-color:#dfdad1;color:#9b9489;cursor:not-allowed}.department-detail-page{background-color:#f2f0eb;margin:0 auto;max-width:1200px;padding:20px}.department-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.delete-button{background-color:#ff4747;padding:8px 16px}.form-tabs,.tab-navigation,.tab-selector{border-bottom:1px solid #dfdad1;display:flex;margin-bottom:20px}.form-tab,.tab-button{background-color:initial;border:none;border-bottom:2px solid #0000;color:#9b9489;cursor:pointer;font-weight:500;padding:10px 20px}.form-tab.active,.tab-button.active{background-color:#f7f6f3;border-bottom:2px solid #3b82f6;color:#1a1a1a}.settings-section{background-color:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:16px;padding:16px}.settings-section h2{color:#1a1a1a;font-size:16px;font-weight:600;margin-bottom:12px;margin-top:0}.department-name-editor,.hours-settings{background-color:#f9f8f6;border:1px solid #e5e1d8;border-radius:6px;padding:12px}.form-group{margin-bottom:12px}.form-group:last-child{margin-bottom:0}.form-group label{margin-bottom:4px}.form-group input,.form-group select{border:1px solid #dfdad1;border-radius:4px;box-sizing:border-box;font-size:14px;padding:8px 10px;width:100%}.checkbox-group{align-items:flex-start;display:flex;gap:8px;margin-bottom:8px}.checkbox-group input[type=checkbox]{flex-shrink:0;margin:0;width:auto}.checkbox-group label{display:flex;flex:1 1;flex-direction:column;font-size:14px;gap:2px;margin:0}.help-text{font-style:italic;line-height:1.3;margin-top:2px}.pre-clock-minutes{margin-bottom:8px;margin-left:26px}.pre-clock-minutes label{align-items:center;display:flex;font-size:14px;gap:6px}.pre-clock-minutes input[type=number]{border:1px solid #dfdad1;border-radius:4px;font-size:14px;padding:4px 8px;text-align:center;width:60px}.form-actions{border-top:1px solid #e5e1d8;margin-top:12px;padding-top:12px}.form-actions button{background-color:#80ad81;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px}.form-actions button:disabled{background-color:#dfdad1;color:#9b9489;cursor:not-allowed}.edit-name-form{align-items:flex-end;display:flex;gap:8px}.edit-name-form input{border:1px solid #dfdad1;border-radius:4px;flex:1 1;font-size:14px;padding:8px 10px}.edit-name-form button{border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;padding:8px 12px}.edit-name-form button:first-of-type{background-color:#80ad81;color:#fff}.edit-name-form button:last-of-type{background-color:#9b9489;color:#fff}.department-name-display{align-items:center;display:flex;justify-content:space-between}.department-name-display h3{color:#1a1a1a;font-size:16px;margin:0}.department-name-display button{background-color:#959ff4;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:6px 12px}.error-message{background-color:#fff5f5;border:1px solid #fecaca;color:#ff4747;padding:8px}.success-message{background-color:#f0fdf4;border:1px solid #bbf7d0;border-radius:4px;color:#22c55e;font-size:14px;margin-top:8px;padding:8px}.department-staff-list{margin-top:20px}.staff-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.staff-header h2{color:#1a1a1a;font-size:24px;font-weight:600;margin:0}.add-staff-btn{background-color:#80ad81;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 20px;transition:background-color .2s}.add-staff-btn:hover{background-color:#6a9a6b}.staff-list{background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.staff-list-item{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:20px 24px;transition:background-color .2s}.staff-list-item:hover{background-color:#f9f9f9}.staff-list-item:last-child{border-bottom:none}.staff-info{flex:1 1}.staff-name-container{align-items:center;display:flex;gap:12px}.staff-name{color:#1a1a1a;font-size:16px;font-weight:600;margin:0}.primary-badge{align-items:center;background-color:#22c55e;border-radius:12px;color:#fff;display:inline-flex;font-size:11px;font-weight:500;letter-spacing:.5px;line-height:1;padding:4px 8px;text-transform:uppercase}.staff-actions{align-items:center;display:flex;gap:8px}.staff-actions button{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:13px;font-weight:500;height:32px;justify-content:center;min-width:60px;padding:8px 16px;transition:all .2s}.edit-button{background-color:#6366f1;color:#fff}.edit-button:hover{background-color:#4f46e5;box-shadow:0 2px 4px #6366f133;transform:translateY(-1px)}.primary-button{background-color:#10b981}.primary-button:hover{background-color:#059669;box-shadow:0 2px 4px #10b98133;transform:translateY(-1px)}.remove-button{background-color:#ef4444;color:#fff}.remove-button:hover{background-color:#dc2626;box-shadow:0 2px 4px #ef444433;transform:translateY(-1px)}.modal-content{background-color:#f7f6f3;box-shadow:0 4px 10px #0003;max-width:90%;width:600px}.add-staff-form,.edit-staff-form{padding:20px}.form-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.close-button{color:#9b9489;font-size:24px}.close-button:hover{color:#1a1a1a}.save-button,.submit-button{background-color:#80ad81;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px}.save-button:disabled,.submit-button:disabled{background-color:#dfdad1;color:#9b9489;cursor:not-allowed}.cancel-button{background-color:#ff4747;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px}.search-container{margin-bottom:15px}.search-input{border:1px solid #dfdad1;border-radius:8px;font-size:16px;padding:10px 15px;width:100%}.assign-button{background-color:#80ad81;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:6px 12px}.empty-list{background-color:#fff;border-radius:12px;color:#9b9489;margin-top:20px;padding:40px 20px;text-align:center}.empty-list p{font-size:16px;margin:0}.loading-container{color:#9b9489;padding:60px 20px;text-align:center}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#80ad81;height:40px;margin:0 auto 20px;width:40px}.department-name{margin-bottom:5px}.department-info{color:#9b9489;font-size:14px}.add-department-form button.cancel-button{background-color:#ff4747;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;margin-left:10px;padding:10px 20px}@media (max-width:768px){.department-detail-page,.department-list-page{margin:0;padding:10px}.staff-list-item{align-items:flex-start;flex-direction:column;gap:16px;padding:16px 20px}.staff-name-container{flex-wrap:wrap}.staff-actions{align-self:stretch;justify-content:flex-end}.staff-actions button{font-size:12px;height:28px;min-width:50px;padding:8px 12px}.primary-badge{font-size:10px;padding:3px 6px}.settings-section{margin-bottom:12px;padding:12px}.department-name-editor,.hours-settings{padding:10px}.form-group{margin-bottom:10px}.checkbox-group{align-items:flex-start;flex-direction:column;gap:4px}.pre-clock-minutes{margin-left:0;margin-top:8px}.pre-clock-minutes label{flex-wrap:wrap}.department-name-display,.edit-name-form{flex-direction:column;gap:8px}.department-name-display{align-items:flex-start}}@media (min-width:768px){.settings-section{max-width:800px}}.reports-page{background-color:#f9f9f6;display:flex;flex-direction:column;margin:0 auto;max-width:1200px;padding:24px}.reports-page-header{margin-bottom:24px}.reports-page-header h1{color:#1c1c1e;font-size:28px;font-weight:600;margin-bottom:8px}.reports-page-subheader{align-items:baseline;display:flex;flex-wrap:wrap;gap:12px}.reports-page-subheader h2{color:#529edf;font-size:20px;font-weight:500;margin:0}.company-name{color:#6e6e73;font-size:16px}.error-message{background-color:#ffefef;border-left:4px solid #ff4747;justify-content:space-between;margin-bottom:20px;padding:12px 16px}.close-button{align-items:center;background:none;border:none;border-radius:50%;color:#6e6e73;cursor:pointer;display:flex;justify-content:center;padding:4px}.close-button:hover{background-color:#0000000d}.reports-configuration{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:30px}.report-section{background-color:#ededed;border:none;border-radius:8px;box-shadow:0 1px 3px #0000000d;padding:16px}.date-range-selector{display:flex;flex-direction:column}.date-range-title{color:#1c1c1e;font-size:14px;font-weight:500;margin-bottom:12px}.date-range-container{display:flex;gap:16px}.date-picker-group{display:flex;flex:1 1;flex-direction:column}.date-picker-group label{color:#6e6e73;font-size:12px;margin-bottom:4px}.date-picker{background-color:#fff;border:1px solid #ededed;border-radius:4px;font-size:14px;padding:8px 12px}.staff-selector{display:flex;flex-direction:column;height:100%;margin-bottom:1.5rem}.staff-selector-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.staff-selector-title{color:#1c1c1e;font-size:.9rem;font-weight:600}.select-all-button{background:none;border:none;color:#1c1c1e;cursor:pointer;font-size:.8rem;padding:0;text-decoration:underline}.staff-dropdown-container{margin-bottom:.5rem}.select-all-button:hover{color:#529edf}.staff-selector-list{display:flex;flex-wrap:wrap;gap:8px;max-height:150px;overflow-y:auto;padding:4px 0}.staff-selector-empty{color:#6e6e73;font-style:italic;padding:16px;text-align:center}.staff-selector-item{align-items:center;background-color:#fff;border:1px solid #ededed;border-radius:4px;box-sizing:border-box;cursor:pointer;display:flex;justify-content:space-between;padding:8px 12px;transition:all .2s ease;width:calc(50% - 4px)}.staff-selector-item.selected{background-color:#f5f5f5;border-color:#ededed}.staff-name{color:#1c1c1e;font-size:13px;margin-right:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.staff-checkbox{color:#6e6e73;display:flex}.staff-selector-item.selected .staff-checkbox{color:#22c55e}.staff-multi-select{color:#1c1c1e}.staff-select__control{border:1px solid #ededed;border-radius:4px;box-shadow:none;min-height:40px}.staff-select__control:hover{border-color:#ededed}.staff-select__control--is-focused{border-color:#529edf!important;box-shadow:0 0 0 1px #529edf!important}.staff-select__menu{border-radius:4px;box-shadow:0 2px 8px #00000026;z-index:10}.staff-select__option--is-selected{background-color:#ededed!important;color:#1c1c1e!important}.staff-select__option--is-focused{background-color:#f5f5f5!important}.staff-select__multi-value{background-color:#ededed}.staff-select-help{color:#6e6e73;font-size:.8rem;margin-top:.25rem}.no-staff-warning{color:#ff4747}.staff-count{color:#6e6e73}.report-type-selector{display:flex;flex-direction:column}.report-type-selector-title{color:#1c1c1e;font-size:14px;font-weight:500;margin-bottom:12px}.report-type-options{background-color:#ededed;border:none;border-radius:8px;display:flex;overflow:hidden}.report-type-option{background:none;border:none;color:#6e6e73;cursor:pointer;flex:1 1;font-size:13px;padding:12px 8px;text-align:center;transition:all .2s ease}.report-type-option.active{background-color:#fff;box-shadow:0 1px 2px #0000001a;color:#1c1c1e;font-weight:500}.report-type-option:hover:not(.active){background-color:#ffffff80}.generate-report-wrapper{margin:20px 0 28px;width:100%}.divider{background-color:#0000001a;display:none;height:1px;margin-bottom:20px}.generate-report-button{align-items:center;background-color:#141413;border:none;border-radius:8px;box-shadow:0 2px 4px #00000014;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;justify-content:center;padding:14px 20px;transition:background-color .2s,transform .1s;width:100%}.generate-report-button:hover:not(:disabled){background-color:#2c2c2a}.generate-report-button:active:not(:disabled){transform:scale(.98)}.generate-report-button:disabled{background-color:#aaa;cursor:not-allowed}.button-content{align-items:center;display:flex;gap:10px;justify-content:center}.spinner-small{animation:spin 1s ease-in-out infinite;border:3px solid #ffffff4d;height:20px;width:20px}.report-results-section{margin-top:20px}.report-preview-container{background-color:#ededed;border:none;border-radius:8px;box-shadow:0 1px 3px #0000000d;margin-bottom:20px;padding:20px}.report-preview-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.report-preview-header h3{color:#1c1c1e;font-size:18px;font-weight:500;margin:0}.report-count{color:#6e6e73;font-size:14px}.report-preview{background-color:#fff;border-radius:6px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.report-preview-scroll{max-width:100%;overflow-x:auto}.report-preview-placeholder{align-items:center;background-color:#ededed;border:none;border-radius:8px;color:#6e6e73;display:flex;height:300px;justify-content:center}.report-loading{align-items:center;display:flex;flex-direction:column;gap:16px}.preview-more-message{color:#6e6e73;font-size:13px;font-style:italic;padding:10px;text-align:center}.report-table{border-collapse:collapse;width:100%}.report-table td,.report-table th{font-size:13px;padding:10px 16px;text-align:left}.report-table th{background-color:#f5f5f5;border-bottom:1px solid #ededed;color:#1c1c1e;font-weight:500;position:-webkit-sticky;position:sticky;top:0}.report-table tr.alternate-row{background-color:#f9f9f6}.report-table td{border-bottom:1px solid #ededed}.date-col{width:90px}.staff-col{width:120px}.session-col{width:60px}.duration-col,.time-col{width:90px}.totals-row td{background-color:#f5f5f5;border-top:1px solid #1c1c1e;font-weight:400;padding-bottom:14px;padding-top:14px}.report-actions{display:flex;flex-direction:column;gap:12px}.action-button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;flex:1 1;font-size:15px;font-weight:500;justify-content:center;padding:12px 16px;transition:all .2s ease}.csv-button{background-color:#308e83;color:#fff}.csv-button:hover:not(:disabled){background-color:#25736b}.pdf-button{background-color:#f5ca4f;color:#fff}.pdf-button:hover:not(:disabled){background-color:#e6ba40}.share-button{background-color:#141413;color:#fff}.share-button:hover:not(:disabled){background-color:#2c2c2a}.action-button:disabled{background-color:#aaa;cursor:not-allowed}.spinner{border:3px solid #f5f5f5;border-top-color:#1c1c1e}.spinner-small{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:16px;width:16px}button,input,select{font-family:inherit}button:focus,input:focus,select:focus{outline:2px solid #529edf;outline-offset:2px}.report-preview-scroll::-webkit-scrollbar{height:8px}.report-preview-scroll::-webkit-scrollbar-track{background:#f5f5f5;border-radius:4px}.report-preview-scroll::-webkit-scrollbar-thumb{background:#6e6e73;border-radius:4px}.report-preview-scroll::-webkit-scrollbar-thumb:hover{background:#1c1c1e}.staff-selector-list::-webkit-scrollbar{width:6px}.staff-selector-list::-webkit-scrollbar-track{background:#0000}.staff-selector-list::-webkit-scrollbar-thumb{background:#6e6e73;border-radius:3px}.staff-selector-list::-webkit-scrollbar-thumb:hover{background:#1c1c1e}.report-selection-page{background-color:#f9f9f6;margin:0 auto;max-width:1200px;padding:24px}.page-header{margin-bottom:32px}.page-header h1{color:#1c1c1e;font-size:28px;font-weight:600;margin-bottom:8px}.page-header p{color:#6e6e73;font-size:16px}.department-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.department-card{background-color:#ededed;border:none;border-radius:8px;box-shadow:0 1px 3px #0000000d;display:flex;flex-direction:column;padding:24px;transition:all .2s ease}.department-card:hover{background-color:#f5f5f5;box-shadow:0 3px 6px #00000014;transform:translateY(-2px)}.department-card h3{color:#1c1c1e;font-size:18px;font-weight:600;margin-bottom:12px}.department-staff-count{color:#6e6e73;font-size:14px;margin-bottom:24px}.view-reports-btn{background-color:#141413;border:none;border-radius:4px;color:#fff;display:block;font-weight:500;margin-top:auto;padding:10px 16px;text-align:center;text-decoration:none;transition:all .2s ease}.view-reports-btn:hover{background-color:#2c2c2a}.empty-state{background-color:#ededed;border:none;border-radius:8px;box-shadow:0 1px 3px #0000000d;grid-column:1/-1;padding:48px 24px}.primary-button{background-color:#141413;border:none;border-radius:4px;color:#fff;display:inline-block;font-weight:500;margin-top:16px;padding:10px 20px;text-decoration:none;transition:all .2s ease}.primary-button:hover{background-color:#2c2c2a}@media (max-width:480px){.reports-page{padding:12px}.reports-page-header h1{font-size:24px}.reports-page-subheader{flex-direction:column;gap:8px}.reports-page-subheader h2{font-size:18px}.company-name{font-size:14px}.reports-configuration{gap:16px;grid-template-columns:1fr}.report-section{padding:12px}.date-range-container{flex-direction:column;gap:12px}.date-picker{font-size:16px;padding:12px}.staff-selector-item{padding:12px;width:100%}.staff-name{font-size:14px}.report-type-option{font-size:12px;padding:14px 6px}.generate-report-button{font-size:16px;padding:16px 20px}.report-preview-container{padding:12px}.report-preview-header{align-items:flex-start;flex-direction:column;gap:8px}.report-preview-header h3{font-size:16px}.report-table td,.report-table th{font-size:12px;padding:8px 6px}.action-buttons{flex-direction:column;gap:8px}.action-button{font-size:14px;padding:14px 16px}.error-message{align-items:flex-start;flex-direction:column;gap:8px;padding:12px}.close-button{align-self:flex-end;margin-top:-8px}.department-grid{gap:16px;grid-template-columns:1fr}.department-card{padding:16px}.page-header h1{font-size:24px}.page-header p{font-size:14px}.report-selection-page{padding:12px}.page-header{margin-bottom:24px}}@media (min-width:481px) and (max-width:768px){.reports-page{padding:16px}.reports-page-header h1{font-size:26px}.reports-configuration{gap:18px;grid-template-columns:1fr}.date-range-container{flex-direction:column;gap:12px}.staff-selector-item{width:100%}.action-buttons{flex-direction:column;gap:10px}.department-grid{gap:20px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.report-selection-page{padding:16px}}@media (min-width:769px) and (max-width:1024px){.reports-page{padding:20px}.reports-configuration{gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.staff-selector-item{width:calc(50% - 4px)}.action-buttons{flex-direction:row;gap:12px}.department-grid{gap:22px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.report-selection-page{padding:20px}}@media (min-width:1025px) and (max-width:1200px){.reports-configuration{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.staff-selector-item{width:calc(50% - 4px)}.department-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (hover:none) and (pointer:coarse){.action-button,.close-button,.date-picker,.generate-report-button,.primary-button,.report-type-option,.staff-selector-item,.view-reports-btn{min-height:44px}.close-button{min-width:44px}.department-card:hover{box-shadow:0 1px 3px #0000000d;transform:none}}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.report-table td,.report-table th{border-width:.5px}}@media (prefers-reduced-motion:reduce){.action-button,.department-card,.generate-report-button,.report-type-option,.staff-selector-item{transition:none}.spinner,.spinner-small{animation:none}}.holiday-management{background-color:#f2f0eb;min-height:100vh;padding:20px}.holiday-header{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-bottom:20px;padding:24px}.header-top{align-items:center;display:flex;margin-bottom:20px}.header-top .close-button{align-items:center;background:none;border:none;border-radius:4px;color:#1a1a1a;cursor:pointer;display:flex;font-size:16px;gap:8px;margin-right:12px;padding:8px;transition:background-color .2s}.header-top .close-button:hover{background-color:#f2f0eb}.header-top h1{color:#1a1a1a;font-size:28px;font-weight:600;margin:0}.year-navigation{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.year-controls{align-items:center;display:flex;gap:20px}.year-nav-button{align-items:center;background:#f2f0eb;border:1px solid #d0cdc4;border-radius:50%;color:#1a1a1a;cursor:pointer;display:flex;font-size:16px;height:40px;justify-content:center;transition:all .2s;width:40px}.year-nav-button:hover{background:#e8e6df;border-color:#bbb8ad}.year-nav-button:active{transform:scale(.95)}.year-display{text-align:center}.year-number{color:#1a1a1a;display:block;font-size:32px;font-weight:700;line-height:1}.year-label{color:#666;display:block;font-size:14px;margin-top:4px}.action-buttons{display:flex;flex-wrap:wrap;gap:12px}.add-holiday-button,.common-holidays-button{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s}.common-holidays-button{background:#f2f0eb;border:1px solid #d0cdc4;color:#1a1a1a}.common-holidays-button:hover{background:#e8e6df;border-color:#bbb8ad}.add-holiday-button{background:#959ff4;color:#fff}.add-holiday-button:hover{background:#7b89eb}.add-holiday-button:disabled,.common-holidays-button:disabled{cursor:not-allowed;opacity:.5}.holiday-stats{grid-gap:1rem;border-top:1px solid #d0cdc4;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:20px;padding-top:20px}.stat-item{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;padding:1.5rem;text-align:center}.stat-label{color:#666;display:block;font-size:12px;letter-spacing:.5px;margin-bottom:.5rem;text-transform:uppercase}.stat-number{color:#80ad81;display:block;font-size:2rem;font-weight:700;line-height:1;margin:0}.message{border-radius:8px;font-size:14px;justify-content:space-between;margin-bottom:20px;padding:12px 16px}.message,.message span{align-items:center;display:flex}.message span{gap:8px}.error-message{color:#721c24}.success-message{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.dismiss-button{background:none;border:none;cursor:pointer;font-size:18px;margin-left:12px;opacity:.7;padding:0}.dismiss-button:hover{opacity:1}.holiday-content{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;overflow:hidden}.loading-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.spinner{animation:spin 1s linear infinite;border:3px solid #f2f0eb;border-radius:50%;border-top-color:#959ff4;height:40px;margin-bottom:16px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loading-state p{color:#666;font-size:16px;margin:0}.empty-state{padding:60px 20px;text-align:center}.empty-icon{align-items:center;display:flex;height:64px;justify-content:center;margin:0 auto 20px;opacity:.3;width:64px}.empty-state h3{color:#1a1a1a;font-size:24px;font-weight:600;margin:0 0 12px}.empty-state p{color:#666;font-size:16px;line-height:1.5;margin:0}.empty-actions{display:none}.holidays-list{padding:0}.holiday-row{align-items:center;border-bottom:1px solid #f2f0eb;cursor:pointer;display:flex;justify-content:space-between;padding:16px 24px;transition:background-color .2s}.holiday-row:hover{background-color:#f7f6f3}.holiday-row:last-child{border-bottom:none}.holiday-info{flex:1 1}.holiday-name{color:#1a1a1a;font-size:16px;font-weight:500;margin-bottom:4px}.holiday-date{color:#666;font-size:14px}.holiday-actions{align-items:center;display:flex;gap:12px}.holiday-badge{border-radius:16px;font-size:12px;font-weight:500;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.holiday-badge.paid{background-color:#d4edda;color:#155724}.holiday-badge.unpaid{background-color:#fff3cd;color:#856404}.delete-button{align-items:center;background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:16px;height:32px;justify-content:center;transition:background-color .2s;width:32px}.delete-button:hover{background:#c82333}.delete-button:disabled{cursor:not-allowed;opacity:.5}.modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;max-height:90vh;max-width:500px;overflow-y:auto;width:100%}.modal-content.large{max-width:700px}.modal-header{align-items:center;border-bottom:1px solid #d0cdc4;display:flex;justify-content:space-between;margin-bottom:24px;padding:24px 24px 16px}.modal-header h2{color:#1a1a1a;font-size:20px;font-weight:600;margin:0}.modal-header .close-button{background:none;border:none;color:#666;cursor:pointer;font-size:24px;line-height:1;padding:4px}.modal-header .close-button:hover{color:#1a1a1a}.holiday-form{padding:0 24px 24px}.form-group{margin-bottom:20px}.form-group label{color:#1a1a1a;display:block;font-size:14px;font-weight:500;margin-bottom:6px}.form-group input[type=date],.form-group input[type=text]{border:1px solid #d0cdc4;border-radius:8px;box-sizing:border-box;font-size:16px;padding:12px 16px;transition:border-color .2s,box-shadow .2s;width:100%}.form-group input[type=date]:focus,.form-group input[type=text]:focus{border-color:#959ff4;box-shadow:0 0 0 3px #959ff41a;outline:none}.form-group input:disabled{background-color:#f2f0eb;cursor:not-allowed}.checkbox-label{align-items:center;cursor:pointer;display:flex!important;font-weight:400!important}.checkbox-label input[type=checkbox]{margin-right:8px;width:auto}.help-text{color:#666;display:block;font-size:12px;margin-top:4px}.error-message{align-items:center;background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#dc3545;display:flex;font-size:14px;gap:8px;margin-top:8px;padding:8px 12px}.modal-actions{border-top:1px solid #d0cdc4;display:flex;gap:12px;justify-content:flex-end;margin-top:32px;padding-top:20px}.add-button,.cancel-button,.save-button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 24px;transition:all .2s}.cancel-button{background:#f2f0eb;border:1px solid #d0cdc4;color:#1a1a1a}.cancel-button:hover{background:#e8e6df}.add-button,.save-button{background:#959ff4;color:#fff}.add-button:hover,.save-button:hover{background:#7b89eb}.add-button:disabled,.save-button:disabled{background:#6c757d;cursor:not-allowed}.common-holidays-content{padding:0 24px 24px}.description{color:#666;font-size:14px;line-height:1.5;margin-bottom:24px}.holidays-preview h3{color:#1a1a1a;font-size:16px;font-weight:600;margin:0 0 16px}.preview-list{border:1px solid #d0cdc4;border-radius:8px;margin-bottom:24px;max-height:300px;overflow-y:auto}.preview-item{align-items:center;border-bottom:1px solid #f2f0eb;display:flex;justify-content:space-between;padding:12px 16px}.preview-item:last-child{border-bottom:none}.preview-name{color:#1a1a1a;flex:1 1;font-weight:500}.preview-date{color:#666;font-size:14px;margin-right:12px}.no-holidays-message{color:#666;font-style:italic;padding:40px;text-align:center}@media (max-width:768px){.holiday-management{padding:10px}.year-navigation{align-items:stretch;flex-direction:column}.action-buttons{justify-content:center}.holiday-stats{gap:.8rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.stat-item{padding:1.2rem}.stat-number{font-size:1.8rem}.holiday-row{align-items:stretch;flex-direction:column;gap:12px;padding:20px 16px}.holiday-actions{justify-content:space-between}.modal-content{margin:10px;max-width:none}.modal-actions{flex-direction:column}.modal-actions button{width:100%}}@media (max-width:480px){.holiday-header{padding:16px}.header-top h1{font-size:24px}.year-number{font-size:28px}.holiday-stats{grid-template-columns:1fr}.stat-item{padding:1.2rem}.stat-number{font-size:1.6rem}.holiday-form{padding:0 16px 16px}.modal-header{padding:16px 16px 0}}@media (prefers-reduced-motion:reduce){.spinner{animation:none}.add-button,.add-holiday-button,.cancel-button,.common-holidays-button,.save-button,.year-nav-button{transition:none}}@media (prefers-contrast:high){.holiday-row:hover{background-color:#e0e0e0}.modal-overlay{background-color:#000c}}.add-button:focus,.add-holiday-button:focus,.cancel-button:focus,.common-holidays-button:focus,.delete-button:focus,.save-button:focus,.year-nav-button:focus{outline:2px solid #959ff4;outline-offset:2px}.holiday-row:focus{outline:2px solid #959ff4;outline-offset:-2px}
/*# sourceMappingURL=main.b2640177.css.map*/