@import "https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700;800&display=swap";.login-page{justify-content:center;align-items:center;width:100%;min-height:100vh;padding:20px;display:flex}.login-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius);width:100%;max-width:420px;box-shadow:var(--shadow);background:#ffffffeb;border:1px solid #fff6;flex-direction:column;gap:28px;padding:40px 34px;display:flex}.login-logo-wrapper{justify-content:center;align-items:center;width:100%;margin-bottom:-8px;display:flex}.login-logo{object-fit:contain;width:auto;height:42px;display:block}.login-header{text-align:center}.login-title{color:var(--primary);letter-spacing:-1px;margin-bottom:10px;font-size:30px;font-weight:700}.login-subtitle{color:var(--text-light);font-size:14px;line-height:1.5}.login-form{flex-direction:column;gap:16px;display:flex}.login-input{border:1px solid var(--border);background:#fff;border-radius:14px;outline:none;width:100%;height:54px;padding:0 16px;font-size:15px;transition:all .2s}.login-input::placeholder{color:#94a3b8}.login-input:focus{border-color:var(--primary);box-shadow:0 0 0 4px #043c4b1f}.password-wrapper{width:100%;position:relative}.password-wrapper .login-input{padding-right:52px}.password-toggle{cursor:pointer;color:#94a3b8;background:0 0;border:none;outline:none;justify-content:center;align-items:center;font-size:18px;transition:all .2s;display:flex;position:absolute;top:50%;right:18px;transform:translateY(-50%)}.password-toggle:hover{color:var(--primary)}.login-error{color:#8f1f1f;background:#e223230f;border:1px solid #e2232338;border-radius:14px;flex-direction:column;gap:4px;padding:12px 14px;display:flex}.login-error-title{color:#7f1d1d;font-size:13px;font-weight:800}.login-error-message{color:#9f2a2a;font-size:13px;line-height:1.35}.login-button{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:14px;width:100%;height:54px;margin-top:4px;font-size:15px;font-weight:600;transition:all .25s}.login-button:hover{background:var(--primary-light);transform:translateY(-1px);box-shadow:0 8px 20px #043c4b2e}.login-button:disabled{cursor:not-allowed;opacity:.72;box-shadow:none;transform:none}.login-modal-backdrop{z-index:30;background:#043c4b42;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.login-password-modal{border:1px solid var(--border);background:#fff;border-radius:22px;flex-direction:column;gap:16px;width:min(100%,440px);padding:28px;display:flex;box-shadow:0 24px 60px #043c4b2e}.login-modal-kicker{color:var(--text-light);text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:800;display:inline-flex}.login-password-modal h2{color:var(--primary);margin:0 0 8px;font-size:26px}.login-password-modal p{color:var(--text-light);margin:0;font-size:14px;line-height:1.45}.login-footer{text-align:center;color:var(--text-light);font-size:13px;line-height:1.5}.login-footer span{color:var(--gold);font-weight:600}@media (width<=480px){.login-card{border-radius:18px;padding:32px 22px}.login-title{font-size:26px}.login-logo{height:36px}}.navbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:100;background:#ffffffeb;border-bottom:1px solid #0000000d;justify-content:space-between;align-items:center;width:100%;height:74px;padding:0 32px;display:flex;position:sticky;top:0}.navbar-left{align-items:center;display:flex}.navbar-logo{object-fit:contain;height:34px}.navbar-logo-link{cursor:pointer;align-items:center;text-decoration:none;display:inline-flex}.navbar-center{align-items:center;gap:10px;display:flex}.navbar-link{color:var(--text);border-radius:12px;padding:10px 16px;font-size:14px;font-weight:600;text-decoration:none;transition:all .2s}.navbar-link:hover{color:var(--primary);background:#043c4b14}.navbar-right{align-items:center;gap:14px;display:flex}.navbar-user{color:var(--primary);font-size:14px;font-weight:600}.navbar-notifications{position:relative}.navbar-notification-button{width:42px;height:42px;color:var(--primary);cursor:pointer;background:#fff;border:1px solid #dbe3e8eb;border-radius:12px;justify-content:center;align-items:center;font-size:18px;display:flex;position:relative}.navbar-notification-button span{color:#fff;background:#dc2626;border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 5px;font-size:11px;font-weight:900;display:inline-flex;position:absolute;top:-6px;right:-6px}.navbar-notification-panel{border:1px solid var(--border);z-index:130;background:#fffffffa;border-radius:18px;width:380px;max-height:460px;position:absolute;top:calc(100% + 12px);right:0;overflow-y:auto;box-shadow:0 22px 60px #0f172a2e}.navbar-notification-header{border-bottom:1px solid #eef2f5;justify-content:space-between;align-items:center;gap:12px;padding:14px;display:flex}.navbar-notification-header strong{color:var(--primary);font-size:14px;font-weight:900}.navbar-notification-header button{color:var(--primary);cursor:pointer;background:0 0;border:none;font-family:inherit;font-size:12px;font-weight:800}.navbar-notification-header button:disabled{opacity:.42;cursor:not-allowed}.navbar-notification-empty{color:var(--text-light);text-align:center;padding:22px 14px;font-size:13px;font-weight:700}.navbar-notification-item{text-align:left;cursor:pointer;background:#fff;border:none;border-bottom:1px solid #eef2f5;flex-direction:column;align-items:flex-start;gap:6px;width:100%;padding:14px;font-family:inherit;display:flex}.navbar-notification-item:hover,.navbar-notification-item.unread{background:#043c4b0d}.navbar-notification-item strong{color:var(--primary);font-size:13px;font-weight:900}.navbar-notification-item span{color:var(--text-light);font-size:12px;font-weight:700;line-height:1.45}.logout-button{color:#dc2626;cursor:pointer;background:#ef44441f;border:none;border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;font-size:18px;transition:all .2s;display:flex}.logout-button:hover{background:#ef44442e;transform:translateY(-1px)}.navbar-menu-button{width:42px;height:42px;color:var(--primary);cursor:pointer;background:#fff;border:1px solid #dbe3e8eb;border-radius:12px;justify-content:center;align-items:center;font-size:20px;display:none}.navbar-mobile-menu{border:1px solid var(--border);background:#fffffffa;border-radius:18px;padding:14px;display:none;position:absolute;top:calc(100% + 10px);left:18px;right:18px;box-shadow:0 22px 60px #0f172a2e}.navbar-mobile-user{color:var(--primary);word-break:break-word;border-bottom:1px solid #eef2f5;padding:10px 12px 14px;font-size:13px;font-weight:800}.navbar-mobile-links{gap:4px;padding:10px 0;display:grid}.navbar-mobile-link{color:var(--text);border-radius:12px;padding:12px;font-size:14px;font-weight:800;text-decoration:none}.navbar-mobile-link:hover{color:var(--primary);background:#043c4b14}.navbar-mobile-logout{color:#dc2626;cursor:pointer;background:#ef44441f;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;height:42px;font-family:inherit;font-size:13px;font-weight:800;display:flex}@media (width<=900px){.navbar-center,.navbar-user,.logout-button{display:none}.navbar{padding:0 18px}.navbar-menu-button{display:flex}.navbar-mobile-menu{display:block}}@media (width<=520px){.navbar{height:66px}.navbar-logo{height:30px}}.dashboard-page{min-height:calc(100vh - 74px);padding:32px}.dashboard-shell{width:100%}.dashboard-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px;display:flex}.dashboard-title{color:var(--primary);margin-bottom:6px;font-size:34px}.dashboard-subtitle{color:var(--text-light);font-size:14px}.dashboard-user-strip{border:1px solid var(--border);background:#fff;border-radius:16px;align-items:center;gap:12px;min-width:300px;padding:12px 14px;display:flex;box-shadow:0 10px 30px #0000000a}.dashboard-user-icon,.dashboard-card-icon{width:42px;height:42px;color:var(--primary);background:#043c4b14;border-radius:14px;flex:none;justify-content:center;align-items:center;display:inline-flex}.dashboard-user-icon svg,.dashboard-card-icon svg{width:20px;height:20px}.dashboard-user-strip span{color:var(--primary);margin-bottom:3px;font-size:13px;font-weight:800;display:block}.dashboard-user-strip strong{color:var(--text-light);font-size:13px;font-weight:600;display:block}.dashboard-hero{background:var(--border);border:1px solid var(--border);border-radius:22px;grid-template-columns:minmax(0,1fr) minmax(220px,280px);gap:1px;margin-bottom:22px;display:grid;overflow:hidden;box-shadow:0 10px 30px #0000000a}.dashboard-hero-main,.dashboard-hero-side{background:#fff;padding:24px}.dashboard-hero-main{flex-direction:column;justify-content:center;min-height:150px;display:flex}.dashboard-kicker,.dashboard-hero-side span{color:var(--text-light);text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:800;display:block}.dashboard-hero h2{color:var(--primary);margin-bottom:8px;font-size:28px;font-weight:800}.dashboard-hero p{max-width:620px;color:var(--text-light);font-size:14px;font-weight:600;line-height:1.5}.dashboard-hero-side{flex-direction:column;justify-content:center;display:flex}.dashboard-hero-side strong{color:var(--primary);font-size:18px;font-weight:800}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;display:grid}.dashboard-card{border:1px solid var(--border);min-height:160px;color:inherit;background:#fff;border-radius:18px;grid-template-rows:auto 1fr auto;gap:16px;padding:20px;text-decoration:none;transition:all .2s;display:grid;box-shadow:0 10px 30px #0000000a}.dashboard-card:hover{border-color:#043c4b2e;transform:translateY(-2px);box-shadow:0 16px 34px #043c4b14}.dashboard-card h3{color:var(--primary);margin-bottom:6px;font-size:18px;font-weight:800}.dashboard-card p{color:var(--text-light);font-size:13px;font-weight:600;line-height:1.45}.dashboard-card>span{background:var(--primary);color:#fff;border-radius:12px;justify-content:center;align-items:center;width:100%;height:38px;font-size:13px;font-weight:800;display:inline-flex}@media (width<=900px){.dashboard-page{padding:20px}.dashboard-heading,.dashboard-hero{flex-direction:column;grid-template-columns:1fr;align-items:stretch}.dashboard-user-strip{min-width:0}}.page-home-link{color:var(--primary);opacity:.82;align-items:center;gap:6px;margin-bottom:10px;font-size:13px;font-weight:800;text-decoration:none;transition:all .2s;display:inline-flex}.page-home-link:hover{opacity:1}.attendance-page{width:100%;padding:28px 32px 42px}.attendance-title{color:var(--primary);margin-bottom:6px;font-size:34px}.attendance-subtitle{color:var(--text-light);margin-bottom:0;font-size:14px}.attendance-page-header{justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:22px;display:flex}.attendance-my-link{border:1px solid var(--border);color:var(--primary);background:#fff;border-radius:14px;padding:12px 16px;font-size:13px;font-weight:800;text-decoration:none;box-shadow:0 10px 24px #043c4b0f}.attendance-layout{grid-template-columns:minmax(0,620px) minmax(320px,420px);justify-content:center;align-items:start;gap:22px;display:grid}.attendance-panel{border:1px solid var(--border);background:#fff;border-radius:24px;width:100%;padding:18px;position:relative;overflow:hidden;box-shadow:0 18px 44px #043c4b17}.attendance-panel:before{content:"";background:var(--primary);height:6px;position:absolute;inset:0 0 auto}.attendance-hero{justify-content:space-between;align-items:flex-start;gap:16px;padding:12px 8px 16px;display:flex}.attendance-label{color:var(--text-light);text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:800;display:block}.attendance-panel h2{color:var(--primary);margin:0;font-size:30px;line-height:1.05}.attendance-pill{color:var(--text-light);white-space:nowrap;background:#f1f5f9;border-radius:999px;justify-content:center;align-items:center;padding:8px 14px;font-size:12px;font-weight:800;display:inline-flex}.attendance-pill.active{color:#047857;background:#dff8ee}.attendance-clock-card{color:#fff;background:linear-gradient(135deg,#043c4bfa,#0c6273f0);border-radius:22px;align-items:center;gap:18px;min-height:112px;padding:20px 24px;display:flex;box-shadow:0 18px 38px #043c4b33}.attendance-clock-card svg{color:#ffffffd1;flex:none;width:34px;height:34px}.attendance-clock-card strong,.attendance-clock-card span{display:block}.attendance-clock-card strong{font-size:42px;font-weight:800;line-height:1}.attendance-clock-card span{color:#ffffffc7;text-transform:capitalize;margin-top:8px;font-size:14px;font-weight:700}.attendance-open-info{border:1px solid var(--border);background:#f8fafc;border-radius:16px;margin-top:14px;padding:14px 16px}.attendance-open-info span,.attendance-open-info strong{display:block}.attendance-open-info span{color:var(--text-light);text-transform:uppercase;margin-bottom:5px;font-size:11px;font-weight:800}.attendance-open-info strong{color:var(--primary);overflow-wrap:anywhere;font-size:14px;font-weight:800}.attendance-history-panel{border:1px solid var(--border);background:#fff;border-radius:22px;padding:16px;box-shadow:0 18px 44px #043c4b12}.attendance-history-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.attendance-history-header h2{color:var(--primary);margin:0;font-size:24px}.attendance-history-totals{flex-wrap:wrap;gap:8px;margin-left:auto;display:flex}.attendance-history-totals span{color:var(--primary);white-space:nowrap;background:#eef4f6;border-radius:999px;padding:8px 11px;font-size:12px;font-weight:900}.attendance-calendar-nav{align-items:center;gap:8px;display:flex}.attendance-calendar-nav strong{color:var(--primary);text-align:center;text-transform:capitalize;min-width:126px;font-size:13px;font-weight:800}.attendance-calendar-nav button{border:1px solid var(--border);width:34px;height:34px;color:var(--primary);cursor:pointer;background:#fff;border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.attendance-calendar-nav svg{width:18px;height:18px}.attendance-calendar{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin-bottom:14px;display:grid}.attendance-calendar-weekday{color:var(--text-light);text-align:center;font-size:11px;font-weight:800}.attendance-calendar-empty-day,.attendance-calendar-day{border-radius:12px;height:38px}.attendance-calendar-day{border:1px solid var(--border);color:var(--primary);cursor:pointer;background:#f8fafc;justify-content:center;align-items:center;font-family:inherit;font-size:12px;font-weight:800;display:flex;position:relative}.attendance-calendar-day.selected{background:var(--primary);color:#fff}.attendance-calendar-dot{border-radius:999px;width:6px;height:6px;position:absolute;bottom:5px}.attendance-calendar-dot.entry{background:#047857;left:calc(50% - 8px)}.attendance-calendar-dot.exit{background:#dc2626;left:calc(50% + 2px)}.attendance-calendar-day.selected .attendance-calendar-dot.entry,.attendance-calendar-day.selected .attendance-calendar-dot.exit{background:#fff}.attendance-history-list{flex-direction:column;gap:10px;display:flex}.attendance-history-list h3{color:var(--primary);text-transform:capitalize;margin:0;font-size:15px}.attendance-history-item{border:1px solid var(--border);background:#f8fafc;border-radius:16px;padding:13px}.attendance-history-main{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px;display:grid}.attendance-history-time{border:1px solid var(--border);background:#fff;border-radius:12px;padding:8px 10px}.attendance-history-time.entry{background:#0478570f;border-color:#04785738}.attendance-history-time.exit{background:#dc26260d;border-color:#dc26262e}.attendance-history-time small,.attendance-history-time strong,.attendance-history-time em{display:block}.attendance-history-time small{color:var(--text-light);text-transform:uppercase;margin-bottom:4px;font-size:10px;font-weight:800}.attendance-history-time strong{color:var(--primary);font-size:13px;font-weight:800}.attendance-history-time em{color:var(--text-light);margin-top:5px;font-size:11px;font-style:normal;font-weight:700}.attendance-history-duration{color:var(--primary);background:#043c4b14;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800;display:inline-flex}.attendance-history-meta{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.attendance-history-source,.attendance-history-reader{border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:6px 10px;font-size:11px;font-weight:900;display:inline-flex}.attendance-history-source svg{width:14px;height:14px}.attendance-history-source.clock{color:#0e7490;background:#ecfeff}.attendance-history-source.web{color:var(--primary);background:#eef4f6}.attendance-history-reader{border:1px solid var(--border);color:var(--text-light);background:#fff}.attendance-empty{color:var(--text-light);margin:0;font-size:14px;font-weight:700}.attendance-note{color:var(--text-light);margin:16px 8px 0;font-size:13px;font-weight:600;line-height:1.5}.attendance-button{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:16px;justify-content:center;align-items:center;gap:10px;width:100%;min-height:58px;margin-top:20px;font-family:inherit;font-size:15px;font-weight:800;transition:all .2s;display:inline-flex;box-shadow:0 16px 30px #043c4b2e}.attendance-button svg{width:20px;height:20px}.attendance-button:hover{transform:translateY(-1px)}.attendance-button.close{background:#dc2626;box-shadow:0 16px 30px #dc26262e}.attendance-button:disabled{opacity:.55;cursor:not-allowed;transform:none}.attendance-toast{background:var(--primary);color:#fff;z-index:40;border-radius:14px;padding:14px 18px;font-size:13px;font-weight:700;position:fixed;bottom:28px;right:28px;box-shadow:0 18px 40px #043c4b38}@media (width<=560px){.attendance-page{padding:18px 14px 32px}.attendance-title{font-size:33px}.attendance-page-header{align-items:flex-start}.attendance-my-link{white-space:nowrap;padding:11px 12px}.attendance-layout{grid-template-columns:1fr}.attendance-calendar-empty-day,.attendance-calendar-day{height:42px}.attendance-panel{border-radius:22px;padding:14px}.attendance-hero{padding:12px 4px 14px}.attendance-panel h2{font-size:27px}.attendance-clock-card{min-height:132px;padding:20px}.attendance-clock-card svg{width:40px;height:40px}.attendance-clock-card strong{font-size:46px}.attendance-history-main{grid-template-columns:1fr}.attendance-history-totals{width:100%;margin-left:0}.attendance-toast{text-align:center;bottom:14px;left:14px;right:14px}}.attendance-review-page{padding:32px}.attendance-review-topbar{justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:20px;display:flex}.attendance-review-title{color:var(--primary);margin-bottom:6px;font-size:34px}.attendance-review-subtitle{color:var(--text-light);font-size:14px}.attendance-review-refresh{border:1px solid var(--border);height:42px;color:var(--primary);cursor:pointer;background:#fff;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-family:inherit;font-size:13px;font-weight:900;display:inline-flex;box-shadow:0 8px 20px #043c4b0f}.attendance-review-refresh svg{width:17px;height:17px}.attendance-review-refresh:disabled{opacity:.65;cursor:not-allowed}.attendance-review-refresh:disabled svg{animation:.9s linear infinite attendance-refresh-spin}@keyframes attendance-refresh-spin{to{transform:rotate(360deg)}}.attendance-review-hero{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.attendance-review-kpi{border:1px solid var(--border);background:#fff;border-radius:18px;padding:18px;box-shadow:0 10px 30px #0000000a}.attendance-review-kpi span,.attendance-review-kpi strong{display:block}.attendance-review-kpi span{color:var(--text-light);text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:800}.attendance-review-kpi strong{color:var(--primary);font-size:34px;font-weight:800}.attendance-review-kpi.warning strong{color:#b45309}.attendance-review-filters{grid-template-columns:minmax(320px,1fr) 260px;gap:12px;margin-bottom:16px;display:grid}.attendance-review-filters label{flex-direction:column;gap:6px;display:flex}.attendance-review-filters label span{color:var(--text-light);text-transform:uppercase;font-size:12px;font-weight:800}.attendance-review-search{border:1px solid var(--border);height:44px;color:var(--primary);background:#fff;border-radius:12px;outline:none;padding:0 14px;font-family:inherit;font-size:14px;font-weight:700}.attendance-review-select{position:relative}.attendance-review-select-button{border:1px solid var(--border);width:100%;height:44px;color:var(--primary);cursor:pointer;background:#fff;border-radius:12px;outline:none;justify-content:space-between;align-items:center;gap:10px;padding:0 12px 0 14px;font-family:inherit;font-size:14px;font-weight:800;display:flex;box-shadow:0 8px 20px #043c4b0a}.attendance-review-select-button svg{width:18px;height:18px;color:var(--text-light)}.attendance-review-select-menu{z-index:30;border:1px solid var(--border);background:#fff;border-radius:16px;gap:5px;padding:8px;display:grid;position:absolute;top:calc(100% + 8px);left:0;right:0;box-shadow:0 18px 42px #043c4b24}.attendance-review-select-menu button{min-height:38px;color:var(--primary);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:10px;padding:0 10px;font-family:inherit;font-size:13px;font-weight:800}.attendance-review-select-menu button:hover{background:#f1f5f9}.attendance-review-select-menu button.selected{background:var(--primary);color:#fff}.attendance-review-viewbar{justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;display:flex}.attendance-review-view-switch,.attendance-review-week-nav{border:1px solid var(--border);background:#fff;border-radius:14px;align-items:center;gap:6px;padding:4px;display:inline-flex;box-shadow:0 8px 20px #043c4b0a}.attendance-review-view-switch button,.attendance-review-week-nav button{height:36px;color:var(--text-light);cursor:pointer;background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-family:inherit;font-size:13px;font-weight:900;display:inline-flex}.attendance-review-view-switch button.active{background:var(--primary);color:#fff;box-shadow:0 8px 18px #043c4b29}.attendance-review-week-nav button{width:36px;color:var(--primary);background:#eef4f6;padding:0}.attendance-review-week-nav strong{min-width:190px;color:var(--primary);text-align:center;font-size:13px;font-weight:900}.attendance-review-table-wrapper{border:1px solid var(--border);background:#fff;border-radius:22px;overflow-x:auto;box-shadow:0 10px 30px #0000000a}.attendance-review-week{grid-template-columns:repeat(7,minmax(180px,1fr));gap:10px;padding-bottom:4px;display:grid;overflow-x:auto}.attendance-review-day{border:1px solid var(--border);background:#fff;border-radius:18px;min-width:180px;overflow:hidden;box-shadow:0 10px 30px #0000000a}.attendance-review-day header{background:#f8fafc;border-bottom:1px solid #edf2f5;grid-template-columns:1fr auto;align-items:center;gap:2px 8px;min-height:72px;padding:14px;display:grid}.attendance-review-day header span{color:var(--text-light);text-transform:uppercase;font-size:12px;font-weight:900}.attendance-review-day header strong{color:var(--primary);font-size:28px;font-weight:900}.attendance-review-day header small{min-width:30px;height:30px;color:var(--primary);background:#eef4f6;border-radius:999px;grid-area:1/2/3;justify-content:center;align-items:center;font-size:12px;font-weight:900;display:inline-flex}.attendance-review-day-list{flex-direction:column;gap:10px;max-height:620px;padding:10px;display:flex;overflow-y:auto}.attendance-review-day-list>p{color:var(--text-light);text-align:center;padding:12px 4px;font-size:13px;font-weight:800}.attendance-review-week-card{background:#fbfdfe;border:1px solid #edf2f5;border-radius:14px;gap:10px;padding:12px;display:grid}.attendance-review-week-card.warning{background:#fffbeb;border-color:#fed7aa}.attendance-review-week-card strong,.attendance-review-week-card span{display:block}.attendance-review-week-card strong{color:var(--primary);font-size:13px;font-weight:900;line-height:1.25}.attendance-review-week-card>div>span{color:var(--text-light);margin-top:4px;font-size:12px;font-weight:800}.attendance-review-week-times{grid-template-columns:1fr 1fr;gap:8px;display:grid}.attendance-review-week-times span{border-radius:12px;justify-content:center;align-items:center;height:36px;font-size:14px;font-weight:900;display:inline-flex}.attendance-review-week-times .entry{color:#047857;background:#e7f6f0}.attendance-review-week-times .exit{color:#be123c;background:#fff1f2}.attendance-review-week-meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.attendance-review-week-meta .attendance-review-source,.attendance-review-week-meta .attendance-review-reader{min-width:0;max-width:100%}.attendance-review-week-map{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:11px;height:34px;font-family:inherit;font-size:12px;font-weight:900}.attendance-review-week-map:disabled{color:var(--text-light);cursor:not-allowed;background:#e8eef2}.attendance-review-week-grid{border:1px solid var(--border);background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 10px 30px #0000000a}.attendance-review-week-table{grid-template-columns:250px repeat(7,minmax(145px,1fr));display:grid;overflow-x:auto}.attendance-review-week-head,.attendance-review-week-employee,.attendance-review-week-cell{border-bottom:1px solid #edf2f5;border-right:1px solid #edf2f5;min-width:0}.attendance-review-week-head{min-height:74px;color:var(--primary);background:#f8fafc;flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex}.attendance-review-week-head.employee{color:var(--text);align-items:flex-start;padding:0 18px;font-size:13px;font-weight:900}.attendance-review-week-head span{color:var(--text-light);font-size:11px;font-weight:900}.attendance-review-week-head strong{width:28px;height:28px;color:var(--primary);border-radius:999px;justify-content:center;align-items:center;font-size:15px;font-weight:900;display:inline-flex}.attendance-review-week-employee{background:#fff;flex-direction:column;justify-content:center;min-height:78px;padding:12px 18px;display:flex}.attendance-review-week-employee strong,.attendance-review-week-employee span{display:block}.attendance-review-week-employee strong{color:var(--primary);font-size:13px;font-weight:900;line-height:1.25}.attendance-review-week-employee span{color:var(--text-light);margin-top:4px;font-size:12px;font-weight:800}.attendance-review-week-cell{background:#fff;flex-direction:column;justify-content:center;gap:6px;min-height:78px;padding:10px;display:flex}.attendance-review-week-empty-chip,.attendance-review-week-pill{border-radius:10px;width:100%;min-height:30px;font-family:inherit;font-size:12px;font-weight:900}.attendance-review-week-empty-chip{color:#6b7280;text-transform:uppercase;background:#f1f3f5;justify-content:center;align-items:center;display:inline-flex}.attendance-review-week-pill{text-align:left;cursor:pointer;border:none;gap:2px;padding:7px 8px;display:grid}.attendance-review-week-pill.closed{color:#047857;background:#dcfce7}.attendance-review-week-pill.open{color:#b45309;background:#fff3dc}.attendance-review-week-pill.warning{color:#b91c1c;background:#fee2e2}.attendance-review-week-pill span{color:inherit;align-items:center;gap:5px;font-size:12px;font-weight:900;display:inline-flex}.attendance-review-week-pill small{color:inherit;opacity:.82;white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:800;overflow:hidden}.attendance-review-week-empty{color:var(--text-light);text-align:center;grid-column:1/-1;padding:32px;font-size:14px;font-weight:800}.attendance-review-week-pagination{background:#fff;justify-content:center;align-items:center;gap:14px;padding:16px;display:flex}.attendance-review-week-pagination button{color:#fff;cursor:pointer;background:#9bb2bb;border:none;border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.attendance-review-week-pagination button:disabled{opacity:.45;cursor:not-allowed}.attendance-review-week-pagination strong{color:var(--primary);font-size:14px;font-weight:900}.attendance-review-table{border-collapse:collapse;width:100%;min-width:1080px}.attendance-review-table th,.attendance-review-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #edf2f5;padding:18px 22px;font-size:14px}.attendance-review-table th{color:var(--text-light);background:#f8fafc;font-weight:800}.attendance-review-table tbody tr:hover{background:#fbfdfe}.attendance-review-table strong,.attendance-review-table span{display:block}.attendance-review-table strong{color:var(--primary);font-weight:800}.attendance-review-table span{color:var(--text-light);margin-top:4px;font-size:12px;font-weight:700}.attendance-review-badge{border-radius:999px;justify-content:center;align-items:center;padding:7px 12px;margin:0!important;font-size:12px!important;font-weight:800!important;display:inline-flex!important}.attendance-review-badge.ok{color:#047857;background:#dff8ee}.attendance-review-badge.warning{color:#b45309;background:#fff3dc}.attendance-review-source{border-radius:999px;justify-content:center;align-items:center;gap:7px;width:fit-content;min-width:92px;padding:7px 11px;margin:0!important;font-size:12px!important;font-weight:900!important;display:inline-flex!important}.attendance-review-source svg{width:15px;height:15px}.attendance-review-source.clock{background:#ecfeff;color:#0e7490!important}.attendance-review-source.web{background:#eef4f6;color:var(--primary)!important}.attendance-review-reader{border:1px solid var(--border);background:#fff;border-radius:999px;justify-content:center;align-items:center;width:fit-content;max-width:220px;padding:7px 11px;line-height:1.2;color:var(--primary)!important;margin:0!important;font-size:12px!important;font-weight:900!important;display:inline-flex!important}.attendance-review-map-button,.attendance-map-modal button{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:12px;height:38px;padding:0 14px;font-family:inherit;font-size:13px;font-weight:800}.attendance-review-map-button:disabled{color:var(--text-light);cursor:not-allowed;background:#e8eef2}.attendance-map-backdrop{z-index:220;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a57;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.attendance-map-modal{border:1px solid var(--border);background:#fff;border-radius:22px;width:min(760px,100%);padding:22px;box-shadow:0 24px 70px #0f172a3d}.attendance-map-modal h2{color:var(--primary);margin-bottom:12px;font-size:24px}.attendance-map-details{flex-wrap:wrap;gap:10px;margin-bottom:12px;display:flex}.attendance-map-details span{color:var(--primary);background:#f1f5f9;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:800}.attendance-review-map{border-radius:16px;width:100%;height:360px;margin-bottom:14px;overflow:hidden}.attendance-review-toast{background:var(--primary);color:#fff;border-radius:14px;padding:14px 18px;font-size:13px;font-weight:700;position:fixed;bottom:28px;right:28px;box-shadow:0 18px 40px #043c4b38}@media (width<=760px){.attendance-review-page{padding:18px 14px}.attendance-review-topbar{flex-direction:column;align-items:stretch}.attendance-review-hero,.attendance-review-filters{grid-template-columns:1fr}.attendance-review-viewbar{flex-direction:column;align-items:stretch}.attendance-review-view-switch,.attendance-review-week-nav{justify-content:space-between;width:100%}.attendance-review-view-switch button{flex:1}.attendance-review-week-nav strong{flex:1;min-width:0}.attendance-review-week{grid-template-columns:repeat(7,minmax(210px,210px))}}.workparts-page{padding:32px}.workparts-topbar{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.workparts-title{color:var(--primary);margin-bottom:6px;font-size:34px}.workparts-subtitle{color:var(--text-light);font-size:14px}.workpart-panel{border:1px solid var(--border);background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 10px 30px #0000000a}.workpart-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:18px;padding:24px;display:flex}.workpart-label{color:var(--text-light);text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:800;display:block}.workpart-header h2{color:var(--primary);font-size:28px}.workpart-status{white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:8px 14px;font-size:12px;font-weight:800;display:inline-flex}.workpart-status.open{color:#059669;background:#10b9811f}.workpart-status.idle{color:var(--text-light);background:#64748b1f}.workpart-start{background:var(--border);grid-template-columns:minmax(520px,1.3fr) minmax(360px,.7fr);gap:1px;display:grid}.workpart-search-box,.workpart-selection,.workpart-active{background:#fff;padding:24px}.workpart-search{border:1px solid var(--border);width:100%;height:48px;color:var(--text);border-radius:14px;outline:none;padding:0 16px;font-family:inherit;font-size:14px;font-weight:600}.workpart-search:focus{border-color:var(--primary);box-shadow:0 0 0 4px #043c4b1a}.workpart-project-list{flex-direction:column;gap:8px;min-height:360px;max-height:calc(100vh - 430px);margin-top:14px;padding-right:4px;display:flex;overflow-y:auto}.workpart-project-option{width:100%;color:var(--text);text-align:left;cursor:pointer;background:#f8fafc;border:1px solid #0000;border-radius:14px;flex-direction:column;align-items:flex-start;gap:4px;padding:12px 14px;font-family:inherit;transition:all .2s;display:flex}.workpart-project-option:hover,.workpart-project-option.selected{background:#043c4b0f;border-color:#043c4b29}.workpart-project-option strong{color:var(--primary);font-size:13px;font-weight:800}.workpart-project-option span,.workpart-empty,.workpart-selection p,.workpart-project p{color:var(--text-light);font-size:13px;font-weight:600;line-height:1.5}.workpart-nearby-loading{text-align:center;background:linear-gradient(#043c4b09,#043c4b04);border:1px dashed #043c4b2e;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:220px;padding:22px;display:flex}.workpart-nearby-spinner{border:3px solid #043c4b1f;border-top-color:var(--primary);border-radius:999px;width:34px;height:34px;animation:.8s linear infinite workpart-spin}.workpart-nearby-loading strong{color:var(--primary);font-size:15px;font-weight:900}.workpart-nearby-loading span{max-width:320px;color:var(--text-light);font-size:13px;font-weight:600;line-height:1.5}@keyframes workpart-spin{to{transform:rotate(360deg)}}.workpart-empty{padding:20px 4px}.workpart-selection span,.workpart-meta span,.workpart-project span{color:var(--text-light);text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:800;display:block}.workpart-selection strong,.workpart-meta strong,.workpart-project strong{color:var(--primary);margin-bottom:8px;font-size:24px;font-weight:800;display:block}.workpart-open-button,.workpart-close-button{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:12px;height:46px;margin-top:18px;padding:0 18px;font-family:inherit;font-size:13px;font-weight:800;transition:all .2s}.workpart-open-button:hover:not(:disabled),.workpart-close-button:hover:not(:disabled){background:var(--primary-light)}.workpart-open-button:disabled,.workpart-close-button:disabled{opacity:.45;cursor:not-allowed}.workpart-active{grid-template-columns:minmax(280px,1fr) minmax(220px,.8fr) minmax(220px,.7fr) auto;align-items:center;gap:18px;display:grid}.workpart-cap-box{margin-top:22px}.workpart-cap-box>span{color:var(--text-light);text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:800;display:block}.workpart-project-list.cap-list{min-height:0;max-height:220px}.workpart-cap-selected{background:#043c4b0f;border:1px solid #043c4b24;border-radius:14px;margin-top:12px;padding:12px 14px}.workpart-cap-selected strong,.workpart-cap-selected span{display:block}.workpart-cap-selected strong{color:var(--primary);margin-bottom:4px;font-size:14px;font-weight:800}.workpart-cap-selected span{color:var(--text-light);font-size:13px;font-weight:600}.workpart-close-button{background:#dc2626;margin-top:0}.workpart-close-button:hover:not(:disabled){background:#b91c1c}.workparts-toast{background:var(--primary);color:#fff;z-index:50;border-radius:14px;max-width:360px;padding:14px 18px;font-size:13px;font-weight:700;position:fixed;bottom:28px;right:28px;box-shadow:0 18px 40px #043c4b38}@media (width<=900px){.workparts-page{padding:18px}.workpart-start,.workpart-active{grid-template-columns:1fr}.workparts-topbar{margin-bottom:18px}.workparts-title{font-size:32px}.workpart-header{align-items:center;padding:18px}.workpart-header h2{font-size:26px}.workpart-search-box,.workpart-selection,.workpart-active{padding:18px}.workpart-project-list{min-height:0;max-height:260px}.workpart-selection strong,.workpart-meta strong,.workpart-project strong{font-size:24px}.workpart-open-button,.workpart-close-button{width:100%}}@media (width<=560px){.workparts-page{padding:18px 14px}.workparts-title{font-size:32px}.workparts-subtitle{font-size:13px}.workpart-panel{border-radius:18px}.workpart-header{gap:12px}.workpart-header h2{font-size:28px}.workpart-status{padding:8px 12px;font-size:11px}.workpart-search{height:46px;font-size:14px}.workpart-project-list{max-height:230px}.workpart-project-option{padding:11px 14px}.workpart-open-button,.workpart-close-button{height:50px;margin-top:14px}}.inline-select{width:168px;position:relative}.inline-select-button{border:1px solid var(--border);width:100%;height:38px;color:var(--text);cursor:pointer;background:#fff;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:0 10px 0 12px;font-family:inherit;font-size:12px;font-weight:700;transition:all .2s;display:flex}.inline-select-button:hover:not(:disabled),.inline-select-button.open{border-color:#043c4b57;box-shadow:0 0 0 4px #043c4b14}.inline-select-button:disabled{opacity:.62;cursor:not-allowed}.inline-select-button span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.inline-select-chevron{width:18px;height:18px;color:var(--primary);background:#043c4b14;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;font-size:10px;font-weight:900;line-height:1;display:inline-flex}.inline-select-chevron svg{stroke-width:2.6px;width:14px;height:14px}.inline-select-menu{border:1px solid var(--border);z-index:80;background:#fff;border-radius:14px;width:100%;padding:6px;position:absolute;top:calc(100% + 8px);left:0;box-shadow:0 16px 36px #0f172a29}.inline-select-option{width:100%;height:34px;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:9px;align-items:center;padding:0 10px;font-family:inherit;font-size:12px;font-weight:700;transition:all .16s;display:flex}.inline-select-option:hover{color:var(--primary);background:#043c4b0f}.inline-select-option.selected{background:var(--primary);color:#fff}.workpart-review-page{padding:32px}.workpart-review-topbar{flex-direction:column;align-items:stretch;gap:18px;margin-bottom:24px;display:flex}.workpart-review-title{color:var(--primary);margin-bottom:6px;font-size:34px}.workpart-review-subtitle{color:var(--text-light);font-size:14px}.workpart-review-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.workpart-review-manual-button{background:var(--primary);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:12px;height:42px;margin-top:28px;padding:0 16px;font-family:inherit;font-size:13px;font-weight:800}.workpart-review-manual-button:hover{background:var(--primary-light)}.workpart-review-filters{grid-template-columns:minmax(640px,2fr) minmax(260px,.8fr) auto 156px 156px 96px auto;align-items:flex-end;gap:12px;width:100%;display:grid}.workpart-review-status-filter{border:1px solid var(--border);background:#fff;border-radius:14px;align-items:center;gap:4px;height:42px;margin-bottom:0;padding:4px;display:inline-flex}.workpart-review-reset{height:42px;color:var(--primary);cursor:pointer;background:#043c4b14;border:none;border-radius:12px;margin-top:18px;margin-left:4px;padding:0 14px;font-family:inherit;font-size:13px;font-weight:800;transition:all .2s}.workpart-review-reset:hover{background:#043c4b21}.workpart-review-status-filter button{height:32px;color:var(--text-light);cursor:pointer;background:0 0;border:none;border-radius:10px;padding:0 12px;font-family:inherit;font-size:13px;font-weight:800;transition:all .2s}.workpart-review-status-filter button:hover,.workpart-review-status-filter button.active{background:var(--primary);color:#fff}.workpart-review-filters label{flex-direction:column;gap:6px;display:flex}.workpart-review-filters span{color:var(--text-light);text-transform:uppercase;font-size:12px;font-weight:800}.workpart-review-filters input,.workpart-review-employee-filter>button,.workpart-review-project-filter>button,.workpart-review-time-input{border:1px solid var(--border);height:42px;color:var(--text);background:#fff;border-radius:12px;outline:none;font-family:inherit;font-size:13px;font-weight:700;transition:all .2s}.workpart-review-employee-filter,.workpart-review-project-filter{flex-direction:column;gap:6px;min-height:60px;display:flex;position:relative}.workpart-review-employee-filter>span,.workpart-review-project-filter>span{color:var(--text-light);text-transform:uppercase;font-size:12px;font-weight:800}.workpart-review-employee-filter>button,.workpart-review-project-filter>button{text-align:left;cursor:pointer;width:100%;padding:0 12px}.workpart-review-employee-filter>button:hover,.workpart-review-project-filter>button:hover{border-color:#043c4b3d}.workpart-review-employee-menu,.workpart-review-project-menu{border:1px solid var(--border);z-index:20;background:#fff;border-radius:16px;width:100%;padding:0;position:absolute;top:calc(100% - 1px);left:0;overflow:hidden;box-shadow:0 18px 40px #043c4b24}.workpart-review-employee-menu{width:min(620px,90vw)}.workpart-review-employee-menu>input,.workpart-review-project-menu>input{border:none;border-bottom:1px solid var(--border);border-radius:16px 16px 0 0;outline:none;width:100%;height:48px;margin-bottom:0;padding:0 14px;font-family:inherit;font-size:14px;font-weight:700}.workpart-review-menu-list{max-height:280px;padding:8px;overflow-y:auto}.workpart-review-employee-menu button:not(.workpart-review-clear-projects),.workpart-review-project-menu button:not(.workpart-review-clear-projects){width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;grid-template-columns:1fr auto;align-items:center;gap:14px;min-height:0;padding:10px;font-family:inherit;transition:all .2s;display:grid}.workpart-review-employee-menu button:not(.workpart-review-clear-projects):hover,.workpart-review-employee-menu button.selected,.workpart-review-project-menu button:not(.workpart-review-clear-projects):hover,.workpart-review-project-menu button.selected{background:#043c4b0a}.workpart-review-employee-menu button.selected,.workpart-review-project-menu button.selected{border-color:#043c4b29}.workpart-review-employee-menu em,.workpart-review-project-menu em{color:#0000;background:#043c4b14;border-radius:999px;justify-content:center;align-self:center;align-items:center;width:24px;height:24px;font-size:13px;font-style:normal;font-weight:900;display:inline-flex}.workpart-review-employee-menu button.selected em,.workpart-review-project-menu button.selected em{background:var(--primary);color:#fff}.workpart-review-employee-menu span,.workpart-review-employee-menu p,.workpart-review-project-menu span,.workpart-review-project-menu p{color:var(--text-light);font-size:13px;font-weight:600;line-height:1.35}.workpart-review-employee-menu strong,.workpart-review-project-menu strong{color:var(--primary);margin-bottom:3px;font-size:13px;font-weight:800;display:block}.workpart-review-clear-projects{width:calc(100% - 16px);height:36px;color:var(--primary);cursor:pointer;background:#043c4b14;border:none;border-radius:10px;margin:0 8px 8px;font-family:inherit;font-size:13px;font-weight:800}.workpart-review-time-field{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.workpart-review-time-field span{min-width:86px;color:var(--text-light);font-size:13px;font-weight:800}.workpart-review-filters>label input{width:156px;padding:0 12px}.workpart-review-page-size-select{z-index:80;width:96px;position:relative}.workpart-review-page-size-button{border:1px solid var(--border);width:96px;height:42px;color:var(--text);cursor:pointer;background:#fff;border-radius:12px;outline:none;justify-content:space-between;align-items:center;gap:8px;padding:0 10px 0 12px;font-family:inherit;font-size:13px;font-weight:800;display:flex}.workpart-review-page-size-button svg{width:16px;height:16px;color:var(--text-light)}.workpart-review-page-size-menu{z-index:120;border:1px solid var(--border);background:#fff;border-radius:14px;gap:4px;padding:6px;display:grid;position:absolute;top:calc(100% + 8px);left:0;right:0;box-shadow:0 18px 42px #043c4b24}.workpart-review-page-size-menu button{width:100%;height:34px;color:var(--primary);cursor:pointer;background:0 0;border:none;border-radius:10px;font-family:inherit;font-size:13px;font-weight:800}.workpart-review-page-size-menu button:hover{background:#043c4b0f}.workpart-review-page-size-menu button.selected{background:var(--primary);color:#fff}.workpart-review-filters>label{min-height:60px}.workpart-review-date-filter{position:relative}.workpart-review-date-filter input{cursor:pointer}.workpart-review-calendar{border:1px solid var(--border);z-index:30;background:#fff;border-radius:16px;width:286px;position:absolute;top:calc(100% - 1px);left:0;overflow:hidden;box-shadow:0 18px 40px #043c4b24}.workpart-review-calendar-header{border-bottom:1px solid var(--border);grid-template-columns:42px 1fr 42px;align-items:center;height:48px;display:grid}.workpart-review-calendar-header strong{color:var(--primary);text-align:center;text-transform:capitalize;font-size:14px;font-weight:800}.workpart-review-calendar-header button,.workpart-review-calendar-days button,.workpart-review-calendar-footer button{cursor:pointer;background:0 0;border:none;font-family:inherit}.workpart-review-calendar-header button{height:48px;color:var(--primary);font-size:24px;font-weight:700}.workpart-review-calendar-weekdays,.workpart-review-calendar-days{grid-template-columns:repeat(7,1fr);display:grid}.workpart-review-calendar-weekdays{padding:12px 12px 4px}.workpart-review-calendar-weekdays span{color:var(--text-light);text-align:center;font-size:12px;font-weight:800}.workpart-review-calendar-days{gap:4px;padding:4px 12px 12px}.workpart-review-calendar-days button{width:32px;height:32px;color:var(--text);border-radius:10px;justify-self:center;font-size:13px;font-weight:800}.workpart-review-calendar-days button:hover{color:var(--primary);background:#043c4b14}.workpart-review-calendar-days button.muted{color:#94a3b8}.workpart-review-calendar-days button.selected{background:var(--primary);color:#fff}.workpart-review-calendar-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;height:44px;padding:0 12px;display:flex}.workpart-review-calendar-footer button{color:var(--primary);font-size:13px;font-weight:800}.workpart-review-status-filter{margin-top:18px}.workpart-review-time-input{text-align:center;width:88px;color:var(--primary);appearance:none;background:#f8fafcf2;padding:0 10px;font-size:14px;font-weight:800}.workpart-review-time-input::placeholder{color:var(--text-light)}.workpart-review-time-input:hover:not(:disabled){background:#fff;border-color:#043c4b3d}.workpart-review-filters input:focus,.workpart-review-time-input:focus{border-color:var(--primary);box-shadow:0 0 0 4px #043c4b1a}.workpart-review-time-input:disabled{opacity:.55;cursor:not-allowed}.workpart-review-original-time{color:var(--text-light);margin-top:6px;font-size:11px;font-style:normal;font-weight:700;-webkit-text-decoration:line-through #64748b73;text-decoration:line-through #64748b73;text-decoration-thickness:1px;display:block}.workpart-review-auto-closed{height:28px;color:var(--primary);background:#eef4f6;border-radius:999px;justify-content:center;align-items:center;padding:0 10px;font-size:11px;font-style:normal;font-weight:900;display:inline-flex}.workpart-review-table-wrapper,.workpart-review-empty{border:1px solid var(--border);background:#fff;border-radius:22px;overflow:auto visible;box-shadow:0 10px 30px #0000000a}.workpart-review-table{border-collapse:collapse;width:100%}.workpart-review-pagination{border-top:1px solid var(--border);background:#fff;justify-content:center;align-items:center;gap:16px;min-width:1180px;padding:18px 22px;display:flex}.workpart-review-pagination span{color:var(--text);font-size:14px;font-weight:700}.workpart-review-pagination button{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;width:38px;height:38px;font-size:18px;font-weight:800;transition:all .2s;display:inline-flex}.workpart-review-pagination button svg{width:18px;height:18px}.workpart-review-pagination button:hover:not(:disabled){background:var(--primary-light)}.workpart-review-pagination button:disabled{opacity:.4;cursor:not-allowed}.workpart-review-table thead{background:#f8fafc}.workpart-review-table th{text-align:left;color:var(--text-light);border-bottom:1px solid var(--border);padding:18px 22px;font-size:14px;font-weight:600}.workpart-review-table th:first-child,.workpart-review-table td:first-child{width:56px;padding:18px 0 18px 22px}.workpart-review-bulk-bar{border-bottom:1px solid var(--border);background:#f8fafc;justify-content:space-between;align-items:center;gap:16px;min-width:1180px;min-height:67px;padding:14px 22px;display:flex}.workpart-review-bulk-bar.active{background:#043c4b0a}.workpart-review-bulk-bar span{color:var(--text-light);font-size:13px;font-weight:800}.workpart-review-bulk-bar.active span{color:var(--primary)}.workpart-review-bulk-bar div{align-items:center;gap:10px;display:flex}.workpart-review-bulk-clear,.workpart-review-bulk-approve,.workpart-review-export{cursor:pointer;border:none;border-radius:12px;height:38px;padding:0 14px;font-family:inherit;font-size:13px;font-weight:800;transition:all .2s}.workpart-review-bulk-clear{color:var(--primary);background:#fff}.workpart-review-export{color:var(--primary);border:1px solid var(--border);background:#fff}.workpart-review-bulk-approve{background:var(--primary);color:#fff}.workpart-review-bulk-clear:hover:not(:disabled){background:#043c4b14}.workpart-review-export:hover{background:#043c4b0a;border-color:#043c4b3d}.workpart-review-bulk-approve:hover:not(:disabled){background:var(--primary-light)}.workpart-review-bulk-clear:disabled,.workpart-review-bulk-approve:disabled{opacity:.55;cursor:not-allowed}.workpart-review-row-check{cursor:pointer;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex;position:relative}.workpart-review-row-check input{opacity:0;pointer-events:none;position:absolute}.workpart-review-row-check span,.workpart-review-check-placeholder{border:1px solid var(--border);background:#fff;border-radius:7px;justify-content:center;align-items:center;width:20px;height:20px;display:inline-flex}.workpart-review-row-check span:after{content:"";opacity:0;border-bottom:2px solid #fff;border-left:2px solid #fff;width:9px;height:5px;transform:rotate(-45deg)translate(1px,-1px)}.workpart-review-row-check input:checked+span{border-color:var(--primary);background:var(--primary)}.workpart-review-row-check input:checked+span:after{opacity:1}.workpart-review-row-check input:disabled+span{opacity:.45;cursor:not-allowed}.workpart-review-check-placeholder{opacity:0}.workpart-review-table td{color:var(--text);vertical-align:middle;border-bottom:1px solid #eef2f5;padding:18px 22px;font-size:14px;font-weight:600}.workpart-review-table tbody tr:last-child td{border-bottom:none}.workpart-review-table tbody tr:hover{background:#043c4b08}.workpart-review-allowance{color:#dc2626;background:#fff5f5;border:1px solid #fecaca;border-radius:999px;grid-template-columns:auto 1fr;align-items:center;gap:3px 8px;min-width:156px;padding:6px 10px 6px 7px;display:inline-grid}.workpart-review-allowance strong{color:#fff;background:#dc2626;border-radius:999px;justify-content:center;align-items:center;width:22px;height:22px;font-size:14px;font-weight:900;display:inline-flex}.workpart-review-allowance span{color:currentColor;font-size:12px;font-weight:900}.workpart-review-allowance small{color:currentColor;opacity:.72;grid-column:2;font-size:11px;font-weight:800}.workpart-review-allowance.half{color:#c2410c;background:#fff7ed;border-color:#fed7aa}.workpart-review-allowance.half strong{background:#ea580c}.workpart-review-allowance.full{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.workpart-review-allowance.full strong{background:#2563eb;font-size:10px}.workpart-review-allowance-cell{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.workpart-review-allowance-select .inline-select{width:166px}.workpart-review-allowance-select .inline-select-button{border-radius:999px;height:36px;padding:0 8px 0 12px;font-size:12px;font-weight:900}.workpart-review-allowance-select .inline-select-button span:first-child{text-overflow:clip;min-width:0;overflow:visible}.workpart-review-allowance-select.none .inline-select-button{color:#dc2626;background:#fff5f5;border-color:#fecaca}.workpart-review-allowance-select.half .inline-select-button{color:#c2410c;background:#fff7ed;border-color:#fed7aa}.workpart-review-allowance-select.full .inline-select-button{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.workpart-review-allowance-select .inline-select-chevron{color:currentColor;background:#ffffffad}.workpart-review-allowance-select .inline-select-menu{min-width:150px}.workpart-review-allowance-manual{color:var(--text-light);font-size:11px;font-style:normal;font-weight:800}.workpart-review-main,.workpart-review-muted{display:block}.workpart-review-main{color:var(--primary);margin-bottom:5px;font-size:14px;font-weight:800}.workpart-review-muted{color:var(--text-light);font-size:13px;font-weight:600;line-height:1.4}.workpart-review-actions{align-items:center;gap:10px;display:flex}.workpart-review-status{border-radius:999px;justify-content:center;align-items:center;min-width:86px;padding:7px 12px;font-size:12px;font-weight:800;display:inline-flex}.workpart-review-status.submitted{color:#b45309;background:#f59e0b24}.workpart-review-status.open{color:#0369a1;background:#0ea5e91f}.workpart-review-status.approved{color:#059669;background:#10b9811f}.workpart-review-status.rejected{color:#dc2626;background:#ef44441f}.workpart-review-status.sent_to_bc{color:#1d4ed8;background:#2563eb1f}.workpart-review-status.bc_error{color:#be123c;background:#f43f5e1f}.workpart-review-bc-status{border-radius:999px;justify-content:center;align-items:center;width:fit-content;margin-top:6px;padding:5px 9px;font-size:11px;font-weight:800;display:inline-flex}.workpart-review-bc-status.pending{color:#475569;background:#64748b1f}.workpart-review-bc-status.sent{color:#1d4ed8;background:#2563eb1f}.workpart-review-bc-status.error{color:#be123c;background:#f43f5e1f}.workpart-review-bc-error{color:#be123c;max-width:170px;margin-top:7px;font-size:11px;font-style:normal;font-weight:700;line-height:1.3;display:block}.workpart-review-no-action{color:var(--text-light);font-size:13px;font-weight:800}.workpart-review-approve,.workpart-review-reject,.workpart-review-restore{color:#fff;cursor:pointer;border:none;border-radius:12px;height:38px;padding:0 14px;font-family:inherit;font-size:13px;font-weight:800;transition:all .2s}.workpart-review-approve{background:var(--primary)}.workpart-review-approve:hover:not(:disabled){background:var(--primary-light)}.workpart-review-reject{background:#dc2626}.workpart-review-restore{color:var(--primary);background:#fff;border:1px solid #043c4b2e}.workpart-review-restore:hover:not(:disabled){background:#043c4b0f;border-color:#043c4b52}.workpart-review-reject:hover:not(:disabled){background:#b91c1c}.workpart-review-approve:disabled,.workpart-review-reject:disabled{opacity:.45;cursor:not-allowed}.workpart-review-modal-backdrop{z-index:200;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a57;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.workpart-review-modal{border:1px solid var(--border);background:#fff;border-radius:22px;width:min(460px,100%);padding:24px;box-shadow:0 24px 70px #0f172a3d}.workpart-review-modal-label{color:var(--text-light);text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:800;display:block}.workpart-review-modal h2{color:var(--primary);margin-bottom:8px;font-size:24px}.workpart-review-modal p{color:var(--text-light);margin-bottom:16px;font-size:13px;font-weight:600;line-height:1.5}.workpart-review-modal textarea{border:1px solid var(--border);width:100%;min-height:120px;color:var(--primary);resize:vertical;border-radius:14px;outline:none;padding:12px 14px;font-family:inherit;font-size:14px;font-weight:700}.workpart-review-modal textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px #043c4b1a}.workpart-review-modal-actions{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.workpart-review-modal-actions button{color:#fff;cursor:pointer;background:#dc2626;border:none;border-radius:12px;height:42px;padding:0 16px;font-family:inherit;font-size:13px;font-weight:800}.workpart-review-modal-actions button.secondary{color:var(--primary);background:#eef2f5}.workpart-review-modal-actions button:disabled{opacity:.55;cursor:not-allowed}.workpart-review-project-warning{width:min(520px,100%);padding:26px}.workpart-review-project-warning-badge{background:#fff7ed;border:1px solid #fed7aa;border-radius:999px;align-items:center;gap:12px;margin-bottom:16px;padding:8px 14px 8px 8px;display:inline-flex}.workpart-review-project-warning-badge>span{color:#fff;background:#ea580c;border-radius:999px;justify-content:center;align-items:center;width:30px;height:30px;font-size:18px;font-weight:900;display:inline-flex}.workpart-review-project-warning-badge div{flex-direction:column;gap:1px;display:flex}.workpart-review-project-warning-badge strong{color:#b45309;text-transform:uppercase;font-size:12px;font-weight:900}.workpart-review-project-warning-badge small{color:var(--text-light);font-size:11px;font-weight:800}.workpart-review-project-warning h2{max-width:390px;margin-bottom:10px}.workpart-review-project-warning-box{color:var(--primary);background:linear-gradient(#043c4b0b,#043c4b05);border:1px solid #043c4b24;border-radius:14px;flex-direction:column;gap:5px;margin-top:16px;padding:14px 16px;display:flex}.workpart-review-project-warning-box span{color:var(--text-light);letter-spacing:0;text-transform:uppercase;font-size:11px;font-weight:800}.workpart-review-project-warning-box strong{color:var(--primary);font-size:14px;font-weight:900;line-height:1.35}.workpart-review-project-warning .workpart-review-modal-actions button{background:var(--primary)}.workpart-review-manual-modal{width:min(620px,100%)}.workpart-review-manual-modal .workpart-review-modal-actions button:not(.secondary){background:var(--primary)}.workpart-review-manual-loading{color:var(--text-light);padding:18px 0;font-size:13px;font-weight:700}.workpart-review-manual-field{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.workpart-review-manual-field span{color:var(--text-light);text-transform:uppercase;font-size:12px;font-weight:800}.workpart-review-manual-field input{border:1px solid var(--border);height:44px;color:var(--primary);border-radius:12px;outline:none;padding:0 12px;font-family:inherit;font-size:14px;font-weight:800}.workpart-review-manual-field input:focus{border-color:var(--primary);box-shadow:0 0 0 4px #043c4b1a}.workpart-review-manual-field .inline-select{width:100%}.workpart-review-manual-field .inline-select-button{height:44px;color:var(--primary);border-radius:12px;font-size:14px;font-weight:800}.workpart-review-manual-options{gap:8px;max-height:180px;padding:4px 2px;display:grid;overflow-y:auto}.workpart-review-manual-options button{color:var(--primary);text-align:left;cursor:pointer;background:#f8fafc;border:1px solid #0000;border-radius:12px;padding:10px 12px;font-family:inherit}.workpart-review-manual-options button.selected,.workpart-review-manual-options button:hover{background:#043c4b0f;border-color:#043c4b29}.workpart-review-manual-options strong,.workpart-review-manual-options span{display:block}.workpart-review-manual-options strong{font-size:13px;font-weight:800}.workpart-review-manual-options span{color:var(--text-light);margin-top:3px;font-size:12px;font-weight:700}.workpart-review-manual-grid{grid-template-columns:1fr 1fr 1fr;gap:10px;display:grid}.workpart-review-empty{padding:34px}.workpart-review-empty span{color:var(--text-light);text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:800;display:block}.workpart-review-empty h2{color:var(--primary);margin-bottom:8px;font-size:26px;font-weight:800}.workpart-review-empty p{color:var(--text-light);font-size:14px;font-weight:600}.workpart-review-toast{background:var(--primary);color:#fff;z-index:50;border-radius:14px;max-width:360px;padding:14px 18px;font-size:13px;font-weight:700;position:fixed;bottom:28px;right:28px;box-shadow:0 18px 40px #043c4b38}@media (width<=900px){.workpart-review-page{padding:20px}.workpart-review-heading{flex-direction:column;gap:12px}.workpart-review-manual-button{width:100%;margin-top:0}.workpart-review-filters{grid-template-columns:1fr 1fr}.workpart-review-status-filter{grid-column:1/-1;overflow-x:auto}.workpart-review-status-filter button{white-space:nowrap;flex:1}.workpart-review-filters label{min-width:0}.workpart-review-filters input{width:100%}.workpart-review-employee-filter,.workpart-review-project-filter{grid-column:1/-1}.workpart-review-project-menu{width:min(360px,90vw)}.workpart-review-employee-menu{width:min(620px,90vw)}.workpart-review-reset{grid-column:1/-1}.workpart-review-table{min-width:1300px}.workpart-review-actions{justify-content:flex-end;width:100%}.workpart-review-time-input{width:108px}}@media (width<=760px){.workpart-review-filters{grid-template-columns:1fr}.workpart-review-status-filter{width:100%}.workpart-review-status-filter button{min-width:max-content}.workpart-review-bulk-bar{flex-direction:column;align-items:stretch;gap:12px}.workpart-review-bulk-bar div{justify-content:stretch}.workpart-review-bulk-bar button{flex:1}.workpart-review-table-wrapper{box-shadow:none;background:0 0;border-radius:18px;overflow:visible}.workpart-review-table{border-collapse:separate;border-spacing:0 12px;min-width:0}.workpart-review-table thead{display:none}.workpart-review-table,.workpart-review-table tbody,.workpart-review-table tr,.workpart-review-table td{width:100%;display:block}.workpart-review-table tbody tr{border:1px solid var(--border);background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 12px 32px #0f172a14}.workpart-review-table td{border-bottom:1px solid #eef2f5;grid-template-columns:minmax(92px,.35fr) minmax(0,1fr);align-items:center;gap:12px;min-height:58px;padding:13px 16px;display:grid}.workpart-review-table td:before{content:attr(data-label);color:var(--text-light);text-transform:uppercase;font-size:11px;font-weight:900}.workpart-review-table td:first-child{justify-content:flex-end;min-height:42px;display:flex}.workpart-review-table td:first-child:before{display:none}.workpart-review-time-field,.workpart-review-actions{justify-content:flex-start}.workpart-review-pagination{border:1px solid var(--border);background:#fff;border-radius:16px;margin-top:12px}}@media (width<=620px){.workpart-review-manual-grid{grid-template-columns:1fr}}@media (width<=560px){.workpart-review-page{padding:18px 14px}.workpart-review-title{font-size:32px}.workpart-review-actions{display:flex}.workpart-review-time-field{justify-content:space-between;width:100%}.workpart-review-time-input{width:118px}.workpart-review-approve,.workpart-review-reject{height:44px}}.workpart-bc-page{background:radial-gradient(circle at 100% 0,#d6cdbe33,#0000 34%),linear-gradient(135deg,#eef4f6 0%,#f8fafb 54%,#f4f1ed 100%);min-height:calc(100vh - 72px);padding:28px}.workpart-bc-topbar{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px;display:flex}.workpart-bc-topbar h1{color:var(--primary);margin:10px 0 4px;font-size:34px;line-height:1}.workpart-bc-topbar p{color:var(--text-light);margin:0;font-weight:500}.workpart-bc-refresh{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:12px;padding:13px 18px;font-family:inherit;font-weight:800}.workpart-bc-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px;display:grid}.workpart-bc-summary button{border:1px solid var(--border);min-height:96px;box-shadow:var(--shadow);text-align:left;cursor:pointer;background:#fff;border-radius:18px;padding:18px}.workpart-bc-summary button.active{border-color:#043c4b59;box-shadow:0 18px 42px #043c4b24}.workpart-bc-summary span{color:var(--text-light);text-transform:uppercase;font-size:12px;font-weight:800;display:block}.workpart-bc-summary strong{color:var(--primary);margin-top:8px;font-size:32px;line-height:1;display:block}.workpart-bc-summary .sent strong{color:#1d4ed8}.workpart-bc-summary .pending strong{color:#b45309}.workpart-bc-summary .error strong{color:#dc2626}.workpart-bc-cost-board{grid-template-columns:repeat(3,minmax(170px,.7fr)) minmax(420px,2fr);gap:16px;margin-bottom:18px;display:grid}.workpart-bc-cost-card,.workpart-bc-cost-chart{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:18px}.workpart-bc-cost-card{min-height:132px;padding:22px}.workpart-bc-cost-card span,.workpart-bc-cost-chart-head span{color:var(--text-light);text-transform:uppercase;font-size:12px;font-weight:800;display:block}.workpart-bc-cost-card strong{color:var(--primary);margin-top:14px;font-size:30px;line-height:1.05;display:block}.workpart-bc-cost-card small{color:var(--text-light);margin-top:8px;font-size:13px;font-weight:800;display:block}.workpart-bc-cost-chart{padding:18px 20px}.workpart-bc-cost-chart-head{justify-content:space-between;align-items:baseline;gap:14px;margin-bottom:14px;display:flex}.workpart-bc-cost-chart-head strong{color:var(--primary);font-size:18px}.workpart-bc-project-bars{gap:12px;display:grid}.workpart-bc-project-bar{grid-template-columns:minmax(150px,1.35fr) minmax(120px,1fr) minmax(86px,auto);align-items:center;gap:12px;display:grid}.workpart-bc-project-bar-label strong,.workpart-bc-project-bar-label span,.workpart-bc-project-bar-value strong,.workpart-bc-project-bar-value span{display:block}.workpart-bc-project-bar-label strong{color:var(--primary);font-size:13px}.workpart-bc-project-bar-label span{color:var(--text-light);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;overflow:hidden}.workpart-bc-project-bar-track{background:#edf3f5;border-radius:999px;height:10px;overflow:hidden}.workpart-bc-project-bar-track span{border-radius:inherit;background:linear-gradient(90deg,#07495a,#89a7af);height:100%;display:block}.workpart-bc-project-bar-value{text-align:right}.workpart-bc-project-bar-value strong{color:var(--primary);font-size:13px}.workpart-bc-project-bar-value span{color:var(--text-light);font-size:12px;font-weight:800}.workpart-bc-chart-empty{color:var(--text-light);text-align:center;padding:24px 0;font-weight:800}.workpart-bc-panel{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:18px;overflow:hidden}.workpart-bc-panel-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:18px;padding:22px 24px;display:flex}.workpart-bc-panel-head span{color:var(--text-light);text-transform:uppercase;font-size:12px;font-weight:800}.workpart-bc-panel-head h2{color:var(--primary);margin:4px 0 0;font-size:26px}.workpart-bc-filters{grid-template-columns:minmax(260px,360px) minmax(260px,420px);gap:12px;display:grid}.workpart-bc-filters input{border:1px solid var(--border);height:48px;color:var(--primary);background:#fff;border-radius:12px;padding:0 16px;font-family:inherit;font-weight:700}.workpart-bc-project-filter{position:relative}.workpart-bc-project-filter input{width:100%;padding-right:46px}.workpart-bc-project-filter-toggle{border:none;border-left:1px solid var(--border-soft);width:34px;height:34px;color:var(--primary);cursor:pointer;background:0 0;border-radius:9px;place-items:center;font-family:inherit;font-size:15px;font-weight:900;display:grid;position:absolute;top:7px;right:7px}.workpart-bc-project-menu{z-index:20;border:1px solid var(--border);background:#fff;border-radius:14px;max-height:310px;padding:8px;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow-y:auto;box-shadow:0 24px 58px #043c4b29}.workpart-bc-project-menu button{cursor:pointer;text-align:left;background:0 0;border:none;border-radius:10px;width:100%;padding:11px 12px;font-family:inherit;display:grid}.workpart-bc-project-menu button:hover,.workpart-bc-project-menu button.active{background:#eef5f7}.workpart-bc-project-menu button strong{color:var(--primary);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:900;overflow:hidden}.workpart-bc-project-menu button span{color:var(--text-light);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;overflow:hidden}.workpart-bc-project-empty{color:var(--text-light);text-align:center;padding:18px 12px;font-size:13px;font-weight:800}.workpart-bc-table-wrap{overflow-x:auto}.workpart-bc-table{border-collapse:collapse;width:100%}.workpart-bc-table th,.workpart-bc-table td{border-bottom:1px solid var(--border-soft);text-align:left;vertical-align:top;padding:18px 22px}.workpart-bc-table th{color:var(--text-light);background:#f7fafb;font-size:13px;font-weight:800}.workpart-bc-table strong,.workpart-bc-table span{display:block}.workpart-bc-table strong{color:var(--primary);font-size:14px}.workpart-bc-table span{color:var(--text-light);font-size:13px;font-weight:600}.workpart-bc-hours{color:var(--primary);white-space:nowrap;font-size:14px;font-weight:800}.workpart-bc-chip{border-radius:999px;justify-content:center;align-items:center;min-width:96px;padding:7px 11px;font-size:12px!important;font-weight:800!important;display:inline-flex!important}.workpart-bc-chip.sent{background:#2563eb1f;color:#1d4ed8!important}.workpart-bc-chip.pending{background:#f59e0b24;color:#b45309!important}.workpart-bc-chip.error{background:#ef44441f;color:#dc2626!important}.workpart-bc-allowance{border-radius:999px;justify-content:center;align-items:center;width:fit-content;min-width:86px;padding:7px 11px;font-size:12px!important;font-weight:900!important;display:inline-flex!important}.workpart-bc-allowance.none{background:#fff1f2;border:1px solid #fecaca;color:#dc2626!important}.workpart-bc-allowance.half{background:#fff7ed;border:1px solid #fed7aa;color:#c2410c!important}.workpart-bc-allowance.full{background:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8!important}.workpart-bc-empty{color:var(--text-light);text-align:center;padding:42px;font-weight:800}.workpart-bc-retry{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:10px 13px;font-family:inherit;font-size:13px;font-weight:800}.workpart-bc-retry.secondary{color:var(--primary);background:#fff;border:1px solid #043c4b2e}.workpart-bc-retry:disabled{opacity:.5;cursor:not-allowed}.workpart-bc-done{color:var(--text-light)!important;font-size:13px!important;font-weight:800!important}@media (width<=820px){.workpart-bc-page{padding:18px}.workpart-bc-topbar,.workpart-bc-panel-head{flex-direction:column;align-items:stretch}.workpart-bc-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.workpart-bc-cost-board,.workpart-bc-project-bar{grid-template-columns:1fr}.workpart-bc-project-bar-value{text-align:left}.workpart-bc-filters{grid-template-columns:1fr}}@media (width<=620px){.workpart-bc-summary{grid-template-columns:1fr}.workpart-bc-table,.workpart-bc-table tbody,.workpart-bc-table tr,.workpart-bc-table td{display:block}.workpart-bc-table thead{display:none}.workpart-bc-table tr{border-bottom:1px solid var(--border);padding:14px}.workpart-bc-table td{border-bottom:none;justify-content:space-between;gap:16px;padding:10px 0;display:flex}.workpart-bc-table td:before{content:attr(data-label);color:var(--text-light);text-transform:uppercase;font-size:12px;font-weight:800}}.requests-page{padding:32px}.requests-topbar{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:22px;display:flex}.requests-title{color:var(--primary);margin-bottom:6px;font-size:34px}.requests-subtitle{color:var(--text-light);font-size:14px}.requests-refresh{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:12px;height:44px;padding:0 18px;font-family:inherit;font-size:13px;font-weight:800}.requests-filters{grid-template-columns:minmax(280px,420px) auto 120px;align-items:end;gap:12px;margin-bottom:22px;display:grid}.requests-filters label{color:var(--text-light);flex-direction:column;gap:6px;font-size:12px;font-weight:800;display:flex}.requests-filters input{border:1px solid var(--border);height:44px;color:var(--text);border-radius:12px;outline:none;padding:0 14px;font-family:inherit;font-size:13px;font-weight:700}.requests-filters input:focus{border-color:var(--primary);box-shadow:0 0 0 4px #043c4b14}.requests-status-tabs{border:1px solid var(--border);background:#fff;border-radius:14px;align-items:center;height:44px;padding:4px;display:inline-flex}.requests-status-tabs button{height:34px;color:var(--text-light);cursor:pointer;background:0 0;border:none;border-radius:10px;padding:0 14px;font-family:inherit;font-size:13px;font-weight:800}.requests-status-tabs button.active{background:var(--primary);color:#fff}.requests-counter{background:#043c4b14;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;height:44px;padding:0 14px;display:flex}.requests-counter span{color:var(--text-light);font-size:12px;font-weight:800}.requests-counter strong{color:var(--primary);font-size:18px}.requests-table-wrapper{border:1px solid var(--border);background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 18px 45px #0f172a0f}.requests-table{border-collapse:collapse;width:100%}.requests-table thead{background:#f8fafc}.requests-table th,.requests-table td{text-align:left;border-bottom:1px solid #eef2f5;padding:18px 22px;font-size:14px}.requests-table th{color:var(--text-light);font-weight:800}.requests-table td{color:var(--text);font-weight:700}.requests-table tbody tr:hover{background:#043c4b08}.requests-table td strong{color:var(--primary);font-weight:900;display:block}.requests-table td span{color:var(--text-light);margin-top:4px;font-size:13px;font-weight:700;display:block}.requests-type,.requests-status{border-radius:999px;align-items:center;width:fit-content;padding:7px 12px;margin-top:0!important;font-size:12px!important;font-weight:900!important;display:inline-flex!important}.requests-type{background:#043c4b14;color:var(--primary)!important}.requests-status.pending{background:#fff2d8;color:#b45309!important}.requests-status.approved{background:#dff8ef;color:#059669!important}.requests-status.rejected{background:#fde7e7;color:#dc2626!important}.requests-status.cancelled{background:#eef2f7;color:var(--text-light)!important}.requests-row-actions{align-items:center;gap:10px;display:flex}.requests-row-actions button{color:#fff;cursor:pointer;border:none;border-radius:12px;height:38px;padding:0 14px;font-family:inherit;font-size:12px;font-weight:900}.requests-row-actions button.approve{background:var(--primary)}.requests-row-actions button.reject{background:#dc2626}.requests-row-actions button:disabled{opacity:.55;cursor:not-allowed}.requests-no-action{color:var(--text-light)!important;font-size:13px!important;font-weight:800!important}.requests-empty{height:160px;color:var(--text-light)!important;text-align:center!important}.requests-modal-backdrop{z-index:90;background:#0f172a47;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.requests-reject-modal{border:1px solid var(--border);background:#fff;border-radius:20px;width:min(480px,100%);padding:22px;box-shadow:0 28px 70px #0f172a3d}.requests-reject-modal>span{color:var(--text-light);margin-bottom:8px;font-size:12px;font-weight:900;display:block}.requests-reject-modal h2{color:var(--primary);margin-bottom:16px;font-size:24px}.requests-reject-modal textarea{resize:vertical;border:1px solid var(--border);width:100%;min-height:120px;color:var(--text);border-radius:14px;outline:none;padding:14px;font-family:inherit;font-size:14px;font-weight:700}.requests-reject-modal textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px #043c4b14}.requests-reject-modal>div{justify-content:flex-end;gap:10px;margin-top:16px;display:flex}.requests-reject-modal button{cursor:pointer;border-radius:12px;height:40px;padding:0 16px;font-family:inherit;font-size:13px;font-weight:900}.requests-reject-modal button.secondary{border:1px solid var(--border);color:var(--primary);background:#fff}.requests-reject-modal button.danger{color:#fff;background:#dc2626;border:none}.requests-toast{background:var(--primary);color:#fff;z-index:100;border-radius:14px;max-width:360px;padding:14px 18px;font-size:13px;font-weight:700;position:fixed;bottom:28px;right:28px;box-shadow:0 18px 40px #043c4b38}@media (width<=1100px){.requests-filters{grid-template-columns:1fr}.requests-status-tabs{width:100%;overflow-x:auto}.requests-counter{width:fit-content}.requests-table{min-width:920px}.requests-table-wrapper{overflow-x:auto}}@media (width<=700px){.requests-page{padding:20px}.requests-topbar{flex-direction:column}.requests-refresh{width:100%}.requests-title{font-size:30px}.requests-toast{max-width:none;bottom:20px;left:20px;right:20px}}.vacations-page{padding:32px}.vacations-topbar{margin-bottom:24px}.vacations-title{color:var(--primary);margin-bottom:6px;font-size:34px}.vacations-subtitle{color:var(--text-light);font-size:14px}.vacations-layout{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:22px;display:grid}.vacations-calendar-panel,.vacations-side>div{border:1px solid var(--border);background:#fff;border-radius:22px;box-shadow:0 10px 30px #0000000a}.vacations-calendar-header{border-bottom:1px solid var(--border);grid-template-columns:54px 1fr 54px;align-items:center;height:62px;display:grid}.vacations-calendar-header strong{color:var(--primary);text-align:center;text-transform:capitalize;font-size:20px;font-weight:800}.vacations-calendar-header button{height:62px;color:var(--primary);cursor:pointer;background:0 0;border:none;font-size:28px}.vacations-weekdays,.vacations-calendar-grid{grid-template-columns:repeat(7,1fr);display:grid}.vacations-weekdays{padding:18px 18px 8px}.vacations-weekdays span{color:var(--text-light);text-align:center;font-size:12px;font-weight:800}.vacations-calendar-grid{gap:8px;padding:8px 18px 18px}.vacations-calendar-grid button{border:1px solid var(--border);min-height:72px;color:var(--primary);cursor:pointer;background:#f8fafc;border-radius:14px;font-family:inherit;font-size:15px;font-weight:800}.vacations-calendar-grid button.muted{color:#94a3b8}.vacations-calendar-grid button.selected{border-color:var(--primary);background:#043c4b14}.vacations-calendar-grid button.pending{background:#f59e0b24}.vacations-calendar-grid button.approved{background:#10b9811f}.vacations-calendar-grid button.rejected{background:#ef44441f}.vacations-calendar-grid button.cancelled{color:#94a3b8;background:#f1f5f9}.vacations-side{flex-direction:column;gap:18px;display:flex}.vacations-summary,.vacations-request-box,.vacations-history,.vacations-payrolls{padding:22px}.vacations-summary span,.vacations-label{color:var(--text-light);text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:800;display:block}.vacations-summary strong{color:var(--primary);font-size:38px;font-weight:800;display:block}.vacations-summary p,.vacations-request-box p{color:var(--text-light);font-size:13px;font-weight:600}.vacations-request-box .vacations-selected-days{color:var(--primary);margin-top:8px;font-weight:800}.vacations-request-box .vacations-warning{color:#dc2626;margin-top:8px;font-weight:800}.vacations-request-box textarea{border:1px solid var(--border);resize:vertical;border-radius:12px;width:100%;min-height:90px;margin:14px 0;padding:12px;font-family:inherit;font-size:14px}.vacations-request-box button{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:12px;width:100%;height:44px;font-family:inherit;font-size:13px;font-weight:800}.vacations-request-box button:disabled{opacity:.55;cursor:not-allowed}.vacations-history-row{border-bottom:1px solid #eef2f5;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.vacations-history-row strong{color:var(--primary);font-size:13px}.vacations-history-row span{color:var(--text-light);margin-top:4px;font-size:12px;font-weight:800;display:inline-flex}.vacations-history-row span.pending{color:#b45309}.vacations-history-row span.approved{color:#047857}.vacations-history-row span.rejected{color:#dc2626}.vacations-history-row span.cancelled{color:#64748b}.vacations-payrolls p{color:var(--text-light);font-size:13px;font-weight:700}.vacations-payroll-row{border-bottom:1px solid #eef2f5;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.vacations-payroll-row strong,.vacations-payroll-row span{display:block}.vacations-payroll-row strong{color:var(--primary);font-size:13px;font-weight:900}.vacations-payroll-row span{color:var(--text-light);margin-top:4px;font-size:12px;font-weight:800}.vacations-payroll-row button{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:10px;height:34px;padding:0 12px;font-family:inherit;font-size:12px;font-weight:900}.vacations-cancel-button{color:#dc2626;cursor:pointer;background:#fff5f5;border:1px solid #fecaca;border-radius:10px;height:34px;padding:0 12px;font-family:inherit;font-size:12px;font-weight:800}.vacations-toast{background:var(--primary);color:#fff;border-radius:14px;padding:14px 18px;font-size:13px;font-weight:700;position:fixed;bottom:28px;right:28px;box-shadow:0 18px 40px #043c4b38}@media (width<=1000px){.vacations-layout{grid-template-columns:1fr}}@media (width<=560px){.vacations-page{padding:18px 14px}.vacations-calendar-grid button{min-height:48px}}.projects-page{padding:32px}.projects-topbar{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.projects-title{color:var(--primary);margin-bottom:6px;font-size:34px}.projects-subtitle{color:var(--text-light);font-size:14px}.projects-search{border:1px solid var(--border);border-radius:14px;outline:none;width:320px;height:48px;padding:0 16px;font-size:14px;transition:all .2s}.projects-search:focus{border-color:var(--primary);box-shadow:0 0 0 4px #043c4b1a}.projects-table-wrapper{border:1px solid var(--border);background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 10px 30px #0000000a}.projects-table{border-collapse:collapse;width:100%}.projects-table thead{background:#f8fafc}.projects-table th{text-align:left;color:var(--text-light);border-bottom:1px solid var(--border);padding:18px 22px;font-size:14px;font-weight:600}.projects-actions{align-items:center;gap:12px;display:flex}.projects-select{width:78px}.projects-select .inline-select{width:100%}.projects-select .inline-select-button{height:50px;color:var(--primary);border-radius:14px;font-size:14px;font-weight:800}.projects-table td{border-bottom:1px solid #eef2f5;padding:18px 22px;font-size:14px}.projects-table tbody tr{cursor:pointer;transition:all .2s}.projects-table tbody tr:hover{background:#043c4b08}.project-code{color:var(--primary);font-weight:700}.status-open,.status-closed{border-radius:999px;justify-content:center;align-items:center;padding:6px 12px;font-size:12px;font-weight:600;display:inline-flex}.status-open{color:#059669;background:#10b9811f}.status-closed{color:#dc2626;background:#ef44441f}@media (width<=900px){.projects-topbar{flex-direction:column;align-items:stretch}.projects-search{width:100%}.projects-page{padding:20px}}.projects-select:focus{border-color:var(--primary);box-shadow:0 0 0 4px #043c4b1a}.clickable-row{cursor:pointer;transition:background-color .15s,transform .1s}.clickable-row:hover{background-color:#f7f9fc}.clickable-row:active{transform:scale(.998)}@keyframes spin{to{transform:rotate(360deg)}}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;top:0;left:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{-webkit-transform-origin:0 0;width:1600px;height:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{width:auto;padding:0;max-width:none!important;max-height:none!important}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:#33b5e566}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;z-index:800;width:0;height:0}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{z-index:800;pointer-events:visiblePainted;pointer-events:auto;position:relative}.leaflet-top,.leaflet-bottom{z-index:1000;pointer-events:none;position:absolute}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{outline-offset:1px;background:#ddd}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{text-align:center;color:#000;background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;text-decoration:none;display:block}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.leaflet-bar a.leaflet-disabled{cursor:default;color:#bbb;background-color:#f4f4f4}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-right-radius:2px;border-bottom-left-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{text-indent:1px;font:700 18px Lucida Console,Monaco,monospace}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{color:#333;background:#fff;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{padding-right:5px;overflow:hidden scroll}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{font-size:1.08333em;display:block}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;padding:0 5px;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{width:1em;height:.6669em;vertical-align:baseline!important;display:inline!important}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{white-space:nowrap;box-sizing:border-box;text-shadow:1px 1px #fff;background:#fffc;border:2px solid #777;border-top:none;padding:2px 5px 1px;line-height:1.1}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{text-align:center;margin-bottom:20px;position:absolute}.leaflet-popup-content-wrapper{text-align:left;border-radius:12px;padding:1px}.leaflet-popup-content{min-height:1px;margin:13px 24px 13px 20px;font-size:1.08333em;line-height:1.3}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{pointer-events:none;width:40px;height:20px;margin-top:-1px;margin-left:-20px;position:absolute;left:50%;overflow:hidden}.leaflet-popup-tip{pointer-events:auto;width:17px;height:17px;margin:-10px auto 0;padding:1px;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{color:#333;background:#fff;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{text-align:center;color:#757575;background:0 0;border:none;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;text-decoration:none;position:absolute;top:0;right:0}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";width:24px;filter:progid:DXImageTransform.Microsoft.Matrix(M11=.707107, M12=.707107, M21=-.707107, M22=.707107);margin:0 auto}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{color:#222;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;background-color:#fff;border:1px solid #fff;border-radius:3px;padding:6px;position:absolute;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{pointer-events:none;content:"";background:0 0;border:6px solid #0000;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{margin-left:-6px;left:50%}.leaflet-tooltip-top:before{border-top-color:#fff;margin-bottom:-12px;bottom:0}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-top:-12px;margin-left:-6px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;margin-left:-12px;left:0}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.project-detail-page{padding:28px}.back-button{color:#0b3d4f;cursor:pointer;background:#fff;border:1px solid #dfe5ec;border-radius:14px;align-items:center;gap:8px;margin-bottom:20px;padding:10px 16px;font-size:14px;font-weight:600;display:inline-flex}.project-detail-card{background:#fff;border-radius:24px;padding:28px;box-shadow:0 4px 18px #0000000d}.project-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;display:flex}.title-row{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.project-detail-card h1{color:#0b3d4f;font-size:34px;line-height:1}.project-description{color:#6b7280;max-width:700px;margin-top:8px;font-size:15px}.project-status{border-radius:999px;justify-content:center;align-items:center;padding:8px 16px;font-size:13px;font-weight:700;display:inline-flex}.project-status.open{color:#166534;background:#dcfce7}.project-status.closed{color:#991b1b;background:#fee2e2}.open-modal-button{color:#fff;cursor:pointer;background:#0b3d4f;border:none;border-radius:14px;padding:12px 18px;font-size:14px;font-weight:700}.project-content-layout{grid-template-columns:340px 1fr;align-items:start;gap:30px;display:grid}.project-left-column{flex-direction:column;gap:16px;display:flex}.project-grid{flex-direction:column;gap:14px;display:flex}.info-card{background:#f8fafc;border:1px solid #e5eaf1;border-radius:18px;padding:18px}.info-label{color:#6b7280;text-transform:uppercase;font-size:12px;font-weight:700}.info-value{color:#0b3d4f;margin-top:6px;font-size:18px;font-weight:700}.coordinates-box{background:#f8fafc;border:1px solid #e5eaf1;border-radius:18px;padding:18px}.coordinates-title{color:#0b3d4f;margin-bottom:14px;font-size:24px;font-weight:700}.coordinates-text{color:#94a3b8;flex-direction:column;gap:8px;margin-bottom:18px;font-size:14px;display:flex}.maps-button{color:#fff;background:#0b3d4f;border-radius:14px;justify-content:center;align-items:center;margin-left:3rem;padding:12px 18px;font-weight:700;text-decoration:none;display:inline-flex}.project-right-column{justify-content:center;display:flex}.map-wrapper{border:1px solid #e5eaf1;border-radius:24px;width:100%;max-width:850px;overflow:hidden;box-shadow:0 6px 20px #0000000f}.project-map{width:100%;height:320px}.assigned-users-section{margin-top:32px}.assigned-users-section h2{color:#0b3d4f;margin-bottom:18px;font-size:30px}.assigned-users-list{flex-direction:column;gap:12px;width:100%;max-width:900px;margin:0 auto;display:flex}.assigned-user-row{background:#f8fafc;border:1px solid #e5eaf1;border-radius:16px;justify-content:space-between;align-items:center;padding:16px 22px;transition:all .2s;display:flex}.assigned-user-row:hover{transform:translateY(-1px);box-shadow:0 8px 20px #0000000d}.assigned-user-name{color:#0b3d4f;font-size:16px;font-weight:700}.assigned-user-email{color:#6b7280;margin-top:4px;font-size:14px}.no-users{color:#94a3b8}.modal-overlay{z-index:999;background:#00000073;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.resources-modal{background:#fff;border-radius:24px;flex-direction:column;width:100%;max-width:760px;max-height:80vh;display:flex;overflow:hidden}.modal-header{border-bottom:1px solid #eef2f7;justify-content:space-between;align-items:center;padding:24px 28px;display:flex}.modal-header h2{color:#0b3d4f;font-size:32px}.close-modal{cursor:pointer;background:#f3f6fa;border:none;border-radius:12px;width:42px;height:42px;font-size:18px}.resource-search{border:1px solid #dbe3ec;border-radius:14px;margin:20px 28px;padding:14px 18px;font-size:15px}.resource-list{flex-direction:column;gap:14px;padding:0 28px 28px;display:flex;overflow-y:auto}.resource-card{background:#f8fafc;border:1px solid #e5eaf1;border-radius:18px;justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.resource-name{color:#0b3d4f;font-size:16px;font-weight:700}.resource-email{color:#6b7280;margin-top:4px;font-size:14px}.assign-button{color:#fff;cursor:pointer;background:#0b3d4f;border:none;border-radius:12px;padding:10px 18px;font-weight:700}.confirm-modal{background:#fff;border-radius:24px;width:100%;max-width:460px;padding:34px}.confirm-modal h2{color:#0b3d4f;margin-bottom:16px;font-size:30px}.confirm-modal p{color:#475569;font-size:16px;line-height:1.6}.confirm-actions{justify-content:flex-end;gap:14px;margin-top:30px;display:flex}.cancel-button{color:#0b3d4f;cursor:pointer;background:#eef2f7;border:none;border-radius:12px;padding:12px 18px;font-weight:700}.confirm-button{color:#fff;cursor:pointer;background:#0b3d4f;border:none;border-radius:12px;padding:12px 18px;font-weight:700}.toast-success{color:#fff;z-index:9999;background:#0b3d4f;border-radius:16px;padding:16px 22px;font-weight:700;position:fixed;bottom:30px;right:30px;box-shadow:0 12px 30px #0000002e}.leaflet-control-container,.leaflet-pane,.leaflet-top,.leaflet-bottom{z-index:1!important}.modal-overlay{z-index:9999!important}.resources-modal,.confirm-modal{z-index:10000!important}.assigned-user-top{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.responsable-badge{color:#1d4ed8;background:#dbeafe;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700}.make-responsable-button{color:#fff;cursor:pointer;background:#0b3d4f;border:none;border-radius:12px;padding:10px 16px;font-size:13px;font-weight:700;transition:all .2s}.make-responsable-button:hover{opacity:.92}.remove-responsable-button{color:#991b1b;cursor:pointer;background:#fee2e2;border:none;border-radius:12px;padding:10px 16px;font-size:13px;font-weight:700}.user-actions{align-items:center;gap:10px;display:flex}.responsable-button{color:#fff;cursor:pointer;background:#0b3d4f;border:none;border-radius:12px;padding:11px 18px;font-size:13px;font-weight:700;transition:all .2s}.responsable-button:hover{opacity:.95;transform:translateY(-1px)}.responsable-active-button{color:#1d4ed8;cursor:pointer;background:#dbeafe;border:none;border-radius:12px;padding:11px 18px;font-size:13px;font-weight:700;transition:all .2s}.responsable-active-button:hover{background:#bfdbfe}.remove-user-button{color:#dc2626;cursor:pointer;background:#fff;border:1px solid #fecaca;border-radius:12px;padding:11px 16px;font-size:13px;font-weight:700;transition:all .2s}.remove-user-button:hover{background:#fef2f2;border-color:#fca5a5}.employees-page{padding:32px}.employees-topbar{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.employees-title{color:var(--primary);margin-bottom:6px;font-size:34px}.employees-subtitle{color:var(--text-light);font-size:14px}.employees-actions{align-items:center;gap:12px;display:flex}.employees-search{border:1px solid var(--border);border-radius:14px;outline:none;width:320px;height:48px;padding:0 16px;font-size:14px;transition:all .2s}.employees-search:focus{border-color:var(--primary);box-shadow:0 0 0 4px #043c4b1a}.employees-select{width:78px}.employees-status-select{width:150px}.employees-select .inline-select{width:100%}.employees-select .inline-select-button{height:50px;color:var(--primary);border-radius:14px;font-size:14px;font-weight:800}.employees-count{background:var(--primary);color:#fff;border-radius:14px;justify-content:center;align-items:center;width:48px;height:48px;font-size:15px;font-weight:700;display:flex}.employees-alert{color:var(--primary);background:#043c4b0f;border:1px solid #043c4b24;border-radius:14px;margin-bottom:18px;padding:12px 16px;font-size:14px;font-weight:700}.employees-table-wrapper{border:1px solid var(--border);background:#fff;border-radius:22px;overflow:visible;box-shadow:0 10px 30px #0000000a}.employees-table{border-collapse:collapse;width:100%}.employees-table thead{background:#f8fafc}.employees-table th{text-align:left;color:var(--text-light);border-bottom:1px solid var(--border);padding:18px 22px;font-size:14px;font-weight:600}.employees-table td{border-bottom:1px solid #eef2f5;padding:18px 22px;font-size:14px;position:relative}.employees-select:focus{border-color:var(--primary);box-shadow:0 0 0 4px #043c4b1a}.employees-table tbody tr{transition:all .2s}.employees-table tbody tr:hover{background:#043c4b08}.employee-number,.employee-name{color:var(--primary);font-weight:700}.employee-email{color:var(--text-light)}.employee-info-badge{min-width:112px;color:var(--primary);background:#043c4b14;border-radius:999px;justify-content:center;align-items:center;padding:7px 12px;font-size:12px;font-weight:700;display:inline-flex}.employee-info-badge.muted{color:var(--text-light);background:#64748b1a}.status-pending{color:var(--text-light);background:#64748b1f;border-radius:999px;justify-content:center;align-items:center;padding:6px 12px;font-size:12px;font-weight:600;display:inline-flex}.employee-reset-button{color:var(--primary);cursor:pointer;background:#043c4b14;border:1px solid #043c4b29;border-radius:12px;padding:10px 14px;font-size:13px;font-weight:800;transition:all .2s}.employee-reset-button:hover{background:var(--primary);color:#fff}.employee-reset-button:disabled{opacity:.65;cursor:not-allowed}.pagination{justify-content:center;align-items:center;gap:16px;margin-top:26px;display:flex}.pagination button{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;font-size:18px;transition:all .2s;display:inline-flex}.pagination button svg{width:18px;height:18px}.pagination button:hover{background:var(--primary-light)}.pagination button:disabled{opacity:.4;cursor:not-allowed}.pagination span{color:var(--text);font-size:14px;font-weight:600}.loading-wrapper{flex-direction:column;justify-content:center;align-items:center;gap:20px;width:100%;min-height:420px;display:flex}.loading-wrapper p{color:var(--text-light);font-size:15px;font-weight:500}.loader{border:5px solid #043c4b1f;border-top-color:var(--primary);border-radius:50%;width:54px;height:54px;animation:.8s linear infinite spin}@media (width<=900px){.employees-topbar{flex-direction:column;align-items:stretch}.employees-actions{flex-wrap:wrap;width:100%}.employees-search{width:100%}.employees-select{flex:1}.employees-page{padding:20px}.employees-table-wrapper{overflow-x:auto}.employees-table{min-width:960px}}.employee-detail-page{padding:28px}.employee-detail-card{background:#fff;border-radius:24px;padding:28px;box-shadow:0 4px 18px #0000000d}.employee-detail-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;display:flex}.employee-title-row{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.employee-title-row h1{color:var(--primary);font-size:34px;line-height:1.1}.employee-detail-subtitle{color:var(--text-light);margin-top:8px;font-size:15px}.employee-status,.employee-config-state{border-radius:999px;justify-content:center;align-items:center;padding:8px 16px;font-size:13px;font-weight:700;display:inline-flex}.employee-status.active,.employee-config-state.assigned{color:#166534;background:#dcfce7}.employee-status.blocked{color:#991b1b;background:#fee2e2}.employee-config-state.pending{color:var(--text-light);background:#64748b1f}.employee-detail-layout{grid-template-columns:340px 1fr;align-items:start;gap:30px;display:grid}.employee-info-panel{flex-direction:column;gap:14px;display:flex}.employee-info-card,.employee-config-panel{background:#f8fafc;border:1px solid #e5eaf1;border-radius:18px;padding:18px}.employee-info-label{color:var(--text-light);text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:700;display:block}.employee-info-value{color:var(--primary);overflow-wrap:anywhere;font-size:18px;font-weight:800;display:block}.employee-security-card p{color:var(--text-light);margin:10px 0 14px;font-size:13px;font-weight:600;line-height:1.5}.employee-security-card button{width:100%;height:42px;color:var(--primary);cursor:pointer;background:#fff;border:1px solid #043c4b29;border-radius:12px;font-family:inherit;font-size:13px;font-weight:800;transition:all .2s}.employee-security-card button:hover{background:var(--primary);color:#fff}.employee-security-card button:disabled{opacity:.55;cursor:not-allowed}.employee-config-panel{min-height:220px}.employee-detail-tabs{border:1px solid var(--border);background:#fff;border-radius:14px;margin-bottom:20px;padding:4px;display:inline-flex}.employee-detail-tab{height:36px;color:var(--text-light);cursor:pointer;background:0 0;border:none;border-radius:10px;padding:0 14px;font-family:inherit;font-size:13px;font-weight:800;transition:all .2s}.employee-detail-tab:hover{color:var(--primary);background:#043c4b0d}.employee-detail-tab.active{background:var(--primary);color:#fff;box-shadow:0 8px 18px #043c4b29}.employee-config-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.employee-config-header h2{color:var(--primary);font-size:30px}.employee-config-grid{grid-template-columns:repeat(2,minmax(180px,1fr));gap:12px;margin-bottom:18px;display:grid}.employee-config-grid.vacations-grid{grid-template-columns:repeat(2,minmax(180px,1fr))}.employee-config-item{border:1px solid var(--border);background:#fff;border-radius:14px;padding:16px}.employee-config-item span{color:var(--text-light);margin-bottom:6px;font-size:12px;font-weight:700;display:block}.employee-config-item strong{color:var(--primary);font-size:16px}.employee-category-config{grid-column:1/-1}.employee-category-config .inline-select{width:min(360px,100%);margin-top:8px}.employee-category-config .inline-select-button{height:44px;color:var(--primary);border-radius:12px;font-size:14px;font-weight:900}.employee-category-config small{color:var(--text-light);margin-top:10px;font-size:12px;font-weight:700;line-height:1.5;display:block}.vacation-highlight{background:#043c4b0f;border-color:#043c4b29}.vacation-highlight strong{font-size:24px}.employee-vacation-admin{border:1px solid var(--border);background:#f8fbfcdb;border-radius:18px;margin-bottom:18px;padding:18px}.employee-vacation-requests{border:1px solid var(--border);background:#fff;border-radius:18px;margin-bottom:18px;padding:18px}.employee-vacation-admin-header{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;display:flex}.employee-vacation-requests p{color:var(--text-light);font-size:13px;font-weight:600}.employee-vacation-request-row{border-top:1px solid #edf2f5;justify-content:space-between;align-items:center;gap:14px;padding:12px 0;display:flex}.employee-vacation-request-row strong,.employee-vacation-request-row span{display:block}.employee-vacation-request-row strong{color:var(--primary);font-size:14px;font-weight:800}.employee-vacation-request-row span{color:var(--text-light);font-size:12px;font-weight:800}.employee-vacation-request-row>span{background:#f1f5f9;border-radius:999px;padding:7px 12px}.employee-vacation-request-row>span.pending{color:#b45309;background:#fff3dc}.employee-vacation-request-row>span.approved{color:#047857;background:#dff8ee}.employee-vacation-request-row>span.rejected{color:#dc2626;background:#fee2e2}.employee-vacation-request-row>span.cancelled{color:#64748b}.employee-vacation-actions{gap:8px;display:flex}.employee-vacation-actions button{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:10px;height:36px;padding:0 12px;font-family:inherit;font-size:12px;font-weight:800}.employee-vacation-actions button.reject{background:#e11d25}.employee-vacation-admin h3{color:var(--primary);font-size:20px}.employee-vacation-form{grid-template-columns:130px minmax(220px,1fr) auto;align-items:end;gap:12px;margin-bottom:18px;display:grid}.employee-vacation-form label{color:var(--text-light);font-size:12px;font-weight:800}.employee-vacation-form input{border:1px solid var(--border);width:100%;height:44px;color:var(--primary);border-radius:12px;outline:none;margin-top:6px;padding:0 12px;font-family:inherit;font-size:14px;font-weight:800;display:block}.employee-vacation-form input:focus{border-color:var(--primary);box-shadow:0 0 0 4px #043c4b1a}.employee-vacation-save{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:12px;height:44px;padding:0 18px;font-family:inherit;font-size:13px;font-weight:800}.employee-vacation-save:disabled{opacity:.55;cursor:not-allowed}.employee-vacation-log{border-top:1px solid #e8eef2;padding-top:14px}.employee-vacation-log p,.employee-vacation-log-row span,.employee-vacation-log-row small{color:var(--text-light);font-size:13px;font-weight:600}.employee-vacation-log-row{border-bottom:1px solid #edf2f5;grid-template-columns:150px 1fr;gap:8px 12px;padding:10px 0;display:grid}.employee-vacation-log-row strong{color:var(--primary);font-size:14px;font-weight:800}.employee-vacation-log-row small{grid-column:2}.employee-displacement-primary{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:12px;height:42px;padding:0 16px;font-family:inherit;font-size:13px;font-weight:900}.employee-displacement-summary{border:1px solid var(--border);background:#fff;border-radius:16px;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;padding:16px;display:flex}.employee-displacement-summary strong{color:var(--primary);font-size:16px;font-weight:900;display:block}.employee-displacement-summary p,.employee-displacement-list p{color:var(--text-light);margin-top:8px;font-size:13px;font-weight:700;line-height:1.5}.employee-displacement-list{gap:10px;display:grid}.employee-displacement-row{border:1px solid var(--border);background:#fff;border-radius:14px;grid-template-columns:1fr auto auto;align-items:center;gap:14px;padding:14px;display:grid}.employee-displacement-row strong{color:var(--primary);font-size:16px;font-weight:900}.employee-displacement-badge{min-width:92px;color:var(--text-light);background:#f1f5f9;border-radius:999px;justify-content:center;align-items:center;padding:8px 12px;font-size:12px;font-weight:900;display:inline-flex}.employee-displacement-badge.active{color:#047857;background:#dff8ee}.employee-displacement-actions{align-items:center;gap:8px;display:flex}.employee-displacement-actions button{border:1px solid var(--border);height:38px;color:var(--primary);cursor:pointer;background:#fff;border-radius:12px;padding:0 14px;font-family:inherit;font-size:12px;font-weight:900}.employee-displacement-actions button.danger{color:#e11d25;background:#fff5f5;border-color:#fecaca}.employee-payroll-list{gap:10px;margin-bottom:18px;display:grid}.employee-payroll-list p{color:var(--text-light);font-size:13px;font-weight:700}.employee-payroll-row{border:1px solid var(--border);background:#fff;border-radius:14px;justify-content:space-between;align-items:center;gap:14px;padding:14px;display:flex}.employee-payroll-row strong,.employee-payroll-row span{display:block}.employee-payroll-row strong{color:var(--primary);font-size:15px;font-weight:900}.employee-payroll-row span{color:var(--text-light);margin-top:4px;font-size:12px;font-weight:700}.employee-payroll-actions{align-items:center;gap:8px;display:flex}.employee-payroll-row button{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:12px;height:38px;padding:0 14px;font-family:inherit;font-size:12px;font-weight:900}.employee-payroll-row button.danger{color:#e11d25;background:#fff5f5;border:1px solid #fecaca}.employee-modal-backdrop{z-index:90;background:#0f172a3d;justify-content:center;align-items:center;padding:22px;display:flex;position:fixed;inset:0}.employee-confirm-modal{border:1px solid var(--border);background:#fff;border-radius:18px;width:min(420px,100%);padding:22px;box-shadow:0 24px 70px #0f172a38}.employee-confirm-modal h3{color:var(--primary);margin:8px 0;font-size:24px}.employee-confirm-modal p{color:var(--text-light);margin:0 0 14px;font-size:14px;font-weight:700}.employee-confirm-modal strong{color:var(--primary);margin-bottom:18px;font-size:15px;display:block}.employee-confirm-actions{justify-content:flex-end;gap:10px;display:flex}.employee-confirm-actions button{border:1px solid var(--border);height:42px;color:var(--primary);cursor:pointer;background:#fff;border-radius:12px;padding:0 16px;font-family:inherit;font-size:13px;font-weight:900}.employee-confirm-actions button.danger{color:#fff;background:#e11d25;border-color:#e11d25}.employee-confirm-actions button.primary{border-color:var(--primary);background:var(--primary);color:#fff}.employee-confirm-actions button:disabled{opacity:.55;cursor:not-allowed}.employee-displacement-modal{width:min(520px,100%)}.employee-displacement-modal-header{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px;display:flex}.employee-displacement-close{border:1px solid var(--border);width:36px;height:36px;color:var(--text-light);cursor:pointer;background:#fff;border-radius:12px;font-family:inherit;font-size:18px;font-weight:900}.employee-displacement-form{border:1px solid var(--border);background:#f8fafc;border-radius:16px;gap:12px;margin-bottom:16px;padding:16px;display:grid}.employee-displacement-form label{color:var(--text-light);text-transform:uppercase;font-size:12px;font-weight:900}.employee-displacement-form input{border:1px solid var(--border);width:100%;height:44px;color:var(--primary);background:#fff;border-radius:12px;outline:none;margin-top:6px;padding:0 12px;font-family:inherit;font-size:14px;font-weight:900;display:block}.employee-displacement-form input:focus{border-color:var(--primary);box-shadow:0 0 0 4px #043c4b1a}.employee-detail-toast{background:var(--primary);color:#fff;border-radius:14px;padding:14px 18px;font-size:13px;font-weight:700;position:fixed;bottom:28px;right:28px;box-shadow:0 18px 40px #043c4b38}.employee-config-note{color:var(--text-light);margin-bottom:16px;font-size:14px;line-height:1.6}.employee-departments-link{background:var(--primary);color:#fff;border-radius:12px;justify-content:center;align-items:center;height:44px;padding:0 16px;font-size:13px;font-weight:800;text-decoration:none;transition:all .2s;display:inline-flex}.employee-departments-link:hover{background:var(--primary-light)}@media (width<=900px){.employee-detail-page{padding:20px}.employee-detail-layout,.employee-config-grid,.employee-vacation-form,.employee-vacation-log-row,.employee-displacement-row{grid-template-columns:1fr}.employee-displacement-summary{flex-direction:column;align-items:stretch}.employee-vacation-log-row small{grid-column:auto}.employee-payroll-row{flex-direction:column;align-items:stretch}}.departments-page{padding:32px}.departments-topbar{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.departments-title{color:var(--primary);margin-bottom:6px;font-size:34px}.departments-subtitle{color:var(--text-light);font-size:14px}.departments-actions{display:none}.department-member-tools{align-items:center;gap:12px;display:flex}.departments-search{border:1px solid var(--border);border-radius:14px;outline:none;width:min(560px,100%);height:48px;padding:0 16px;font-size:14px;transition:all .2s}.departments-search:focus{border-color:var(--primary);box-shadow:0 0 0 4px #043c4b1a}.departments-layout{grid-template-columns:280px minmax(0,1fr);align-items:start;gap:22px;display:grid}.departments-panel,.department-main{border:1px solid var(--border);background:#fff;border-radius:18px;box-shadow:0 10px 30px #043c4b0a}.departments-panel{padding:18px}.departments-panel-title{color:var(--text-light);margin-bottom:14px;font-size:13px;font-weight:700}.department-list{flex-direction:column;gap:8px;display:flex}.department-create-box{grid-template-columns:1fr;gap:8px;margin-top:14px;display:grid}.department-create-box input{border:1px solid var(--border);min-width:0;height:40px;color:var(--primary);border-radius:12px;outline:none;padding:0 12px;font-family:inherit;font-size:13px;font-weight:700}.department-create-box input:focus{border-color:var(--primary);box-shadow:0 0 0 4px #043c4b14}.department-create-box button,.department-delete-button{cursor:pointer;border:none;border-radius:12px;height:40px;padding:0 12px;font-family:inherit;font-size:12px;font-weight:800}.department-create-box button{background:var(--primary);color:#fff}.department-delete-button.compact{width:fit-content;height:32px;padding:0 12px;font-size:11px}.summary-title-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.department-item{width:100%;height:44px;color:var(--text);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;justify-content:space-between;align-items:center;padding:0 14px;font-family:inherit;font-size:14px;font-weight:700;transition:all .2s;display:flex}.department-delete-button{color:#dc2626;background:#fff;border:1px solid #fecaca}.department-delete-button:hover:not(:disabled){background:#fef2f2}.department-create-box button:disabled,.department-delete-button:disabled{opacity:.45;cursor:not-allowed}.department-item:hover,.department-item.active{color:var(--primary);background:#043c4b0f;border-color:#043c4b24}.department-item strong{min-width:28px;height:28px;color:var(--primary);background:#fff;border-radius:999px;justify-content:center;align-items:center;font-size:12px;display:inline-flex}.unconfigured-box{color:var(--text-light);background:#043c4b0a;border:1px solid #043c4b14;border-radius:16px;justify-content:space-between;align-items:center;margin-top:16px;padding:14px;font-size:13px;font-weight:700;display:flex}.unconfigured-box strong{color:var(--primary)}.department-main{overflow:visible}.department-summary{background:#fff;border-bottom:1px solid #eef2f5;grid-template-columns:minmax(220px,1fr) repeat(2,160px);display:grid}.department-summary>div{background:#fff;padding:20px 22px}.department-summary>div+div{border-left:1px solid #eef2f5}.summary-label,.visibility-label{color:var(--text-light);margin-bottom:8px;font-size:12px;font-weight:700;display:block}.summary-value{color:var(--primary);font-size:24px;font-weight:800;display:block}.visibility-note{background:#fff;border-bottom:1px solid #eef2f5;padding:18px 22px}.visibility-note p{color:var(--text);font-size:14px;font-weight:600;line-height:1.6}.department-add-member{background:#fff;border-bottom:1px solid #eef2f5;justify-content:space-between;align-items:center;gap:12px;padding:16px 22px;display:flex}.member-search-box{width:min(420px,100%);position:relative}.department-add-search{border:1px solid var(--border);width:100%;height:44px;color:var(--text);background:#fff;border-radius:12px;outline:none;padding:0 12px;font-family:inherit;font-size:13px;font-weight:600}.department-add-search:focus{border-color:var(--primary);box-shadow:0 0 0 4px #043c4b14}.member-search-clear{width:26px;height:26px;color:var(--primary);cursor:pointer;background:#043c4b14;border:none;border-radius:8px;font-size:13px;font-weight:800;position:absolute;top:9px;right:10px}.member-search-results{border:1px solid var(--border);z-index:40;background:#fff;border-radius:16px;max-height:330px;padding:8px;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow-y:auto;box-shadow:0 18px 42px #0f172a24}.member-search-result{width:100%;color:var(--text);cursor:pointer;background:0 0;border:none;border-radius:12px;flex-direction:column;align-items:flex-start;gap:4px;padding:11px 12px;font-family:inherit;transition:all .2s;display:flex}.member-search-result:hover{background:#043c4b0f}.member-search-result span{color:var(--primary);font-size:13px;font-weight:800}.member-search-result small{color:var(--text-light);font-size:12px;font-weight:600}.member-search-empty{color:var(--text-light);padding:18px 14px;font-size:13px;font-weight:600}.department-add-button{background:var(--primary);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:12px;height:44px;padding:0 16px;font-family:inherit;font-size:13px;font-weight:700;transition:all .2s}.department-add-button:hover{background:var(--primary-light)}.department-add-button:disabled{opacity:.45;cursor:not-allowed}.departments-table-wrapper{width:100%;overflow:visible}.department-pagination{background:#fff;border-top:1px solid #eef2f5;justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;display:flex}.department-page-size,.department-page-controls{align-items:center;gap:12px;display:flex}.department-page-size span,.department-page-controls span{color:var(--text);font-size:13px;font-weight:800}.department-page-size .inline-select{width:78px}.department-page-size .inline-select-button{height:42px;color:var(--primary);border-radius:12px;font-size:13px;font-weight:800}.department-page-size .inline-select-button.open{border-color:var(--primary);box-shadow:0 0 0 4px #043c4b1a}.department-page-controls button{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:12px;width:42px;height:42px;font-family:inherit;font-size:16px;font-weight:900}.department-page-controls button svg{width:18px;height:18px;margin:0 auto;display:block}.department-page-controls button:disabled{opacity:.4;cursor:not-allowed}.departments-table{border-collapse:collapse;width:100%}.departments-table thead{background:#f8fafc}.departments-table th{text-align:left;color:var(--text-light);border-bottom:1px solid var(--border);padding:18px 22px;font-size:14px;font-weight:600}.departments-table td{border-bottom:1px solid #eef2f5;padding:18px 22px;font-size:14px;position:relative}.departments-table tbody tr{transition:all .2s}.departments-table tbody tr:hover{background:#043c4b08}.department-employee-number,.department-employee-name{color:var(--primary);font-weight:700}.department-employee-email{color:var(--text-light)}.department-config-select{border:1px solid var(--border);background:linear-gradient(45deg, transparent 50%, var(--primary) 50%) right 16px center / 6px 6px no-repeat, linear-gradient(135deg, var(--primary) 50%, transparent 50%) right 10px center / 6px 6px no-repeat, #fff;width:168px;height:38px;color:var(--text);cursor:pointer;appearance:none;border-radius:10px;outline:none;padding:0 34px 0 12px;font-family:inherit;font-size:12px;font-weight:600;transition:all .2s}.department-config-select:focus{border-color:var(--primary);box-shadow:0 0 0 4px #043c4b14}.department-config-select:disabled{opacity:.62;cursor:wait}.department-config-select:hover:not(:disabled){background-color:#fbfdfe;border-color:#043c4b47}.permission-badge{color:var(--text-light);background:#64748b1f;border-radius:999px;justify-content:center;align-items:center;padding:6px 12px;font-size:12px;font-weight:600;display:inline-flex}.permission-badge.active{color:#059669;background:#10b9811f}.department-remove-button{color:#dc2626;cursor:pointer;background:#fff;border:1px solid #fecaca;border-radius:12px;height:38px;padding:0 14px;font-family:inherit;font-size:12px;font-weight:800;transition:all .2s}.department-remove-button:hover:not(:disabled){background:#fef2f2;border-color:#fca5a5}.department-remove-button:disabled{opacity:.45;cursor:not-allowed}.department-bulk-actions{border:1px solid var(--border);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;min-width:260px;height:44px;padding:0 12px;display:flex}.department-bulk-actions.active{background:#043c4b0a;border-color:#043c4b29}.department-bulk-actions strong{color:var(--primary);font-size:13px;font-weight:800}.department-bulk-actions button{color:#dc2626;cursor:pointer;background:#fef2f2;border:1px solid #fecaca;border-radius:12px;height:36px;padding:0 14px;font-family:inherit;font-size:12px;font-weight:800}.department-bulk-actions button:disabled{opacity:.55;cursor:not-allowed}.department-modal-backdrop{z-index:90;background:#0f172a47;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.department-add-modal{border:1px solid var(--border);background:#fff;border-radius:20px;flex-direction:column;width:min(720px,100%);max-height:min(760px,100vh - 48px);display:flex;overflow:hidden;box-shadow:0 28px 70px #0f172a3d}.department-add-modal-header,.department-add-modal-tools,.department-add-modal-footer{padding:18px 20px}.department-add-modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;display:flex}.department-add-modal-header span{color:var(--text-light);margin-bottom:6px;font-size:12px;font-weight:800;display:block}.department-add-modal-header h2{color:var(--primary);margin:0;font-size:24px}.department-modal-close{width:36px;height:36px;color:var(--primary);cursor:pointer;background:#64748b1a;border:none;border-radius:12px;font-family:inherit;font-size:16px;font-weight:900}.department-add-modal-tools{border-bottom:1px solid var(--border);grid-template-columns:1fr auto;gap:10px;display:grid}.department-add-modal-search{border:1px solid var(--border);min-width:0;height:44px;color:var(--text);border-radius:12px;outline:none;padding:0 14px;font-family:inherit;font-size:13px;font-weight:700}.department-add-modal-search:focus{border-color:var(--primary);box-shadow:0 0 0 4px #043c4b14}.department-add-modal-secondary,.department-add-modal-primary{cursor:pointer;border-radius:12px;height:44px;padding:0 16px;font-family:inherit;font-size:13px;font-weight:800}.department-add-modal-secondary{border:1px solid var(--border);color:var(--primary);background:#fff}.department-add-modal-primary{background:var(--primary);color:#fff;border:none}.department-add-modal-primary:disabled,.department-add-modal-secondary:disabled{opacity:.48;cursor:not-allowed}.department-add-modal-list{min-height:220px;max-height:420px;padding:10px;overflow-y:auto}.department-add-modal-row{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:14px;grid-template-columns:34px 1fr;align-items:center;gap:10px;padding:12px;font-family:inherit;transition:all .2s;display:grid}.department-add-modal-row:hover,.department-add-modal-row.selected{background:#043c4b0d;border-color:#043c4b1f}.department-add-modal-check{color:#fff;background:#64748b1f;border-radius:7px;justify-content:center;align-items:center;width:22px;height:22px;font-size:13px;font-weight:900;display:inline-flex}.department-add-modal-row.selected .department-add-modal-check{background:var(--primary)}.department-add-modal-row strong{color:var(--primary);margin-bottom:4px;font-size:13px;font-weight:900;display:block}.department-add-modal-row small{color:var(--text-light);font-size:12px;font-weight:700}.department-add-modal-empty{color:var(--text-light);text-align:center;padding:34px 18px;font-size:13px;font-weight:700}.department-add-modal-footer{border-top:1px solid var(--border);background:#fbfdfe;justify-content:space-between;align-items:center;gap:14px;display:flex}.department-add-modal-footer>strong{color:var(--primary);font-size:13px;font-weight:900}.department-add-modal-footer>div{align-items:center;gap:10px;display:flex}.department-select-column{width:46px;text-align:center!important}.department-select-column input{width:18px;height:18px;accent-color:var(--primary);cursor:pointer}.department-select-column input:disabled{cursor:not-allowed}.empty-department{color:var(--text-light);text-align:center;height:130px}.departments-toast{background:var(--primary);color:#fff;z-index:50;border-radius:14px;max-width:360px;padding:14px 18px;font-size:13px;font-weight:600;position:fixed;bottom:28px;right:28px;box-shadow:0 18px 40px #043c4b38}@media (width<=1050px){.departments-layout{grid-template-columns:1fr}.department-list{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.department-summary{grid-template-columns:1fr}}@media (width<=900px){.departments-topbar{flex-direction:column;align-items:stretch}.departments-search{width:100%}.departments-page{padding:20px}.departments-table{min-width:1080px}.department-add-member{flex-direction:column;align-items:stretch}.member-search-box{width:100%}.department-member-tools{flex-direction:column;align-items:stretch}.department-bulk-actions{width:100%;min-width:0}.department-pagination{flex-direction:column;align-items:stretch}.department-page-controls{justify-content:center}.department-add-modal-tools,.department-add-modal-footer{grid-template-columns:1fr}.department-add-modal-footer,.department-add-modal-footer>div{flex-direction:column;align-items:stretch}.department-add-modal-secondary,.department-add-modal-primary{width:100%}.departments-toast{max-width:none;bottom:20px;left:20px;right:20px}}.settings-page{padding:32px}.settings-workspace{align-items:flex-start;max-width:1320px;margin:0 auto;display:block}.settings-content{min-width:0}.settings-topbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.settings-title{color:var(--primary);margin-bottom:6px;font-size:34px;display:none}.settings-subtitle{color:var(--text-light);font-size:14px;display:none}.settings-card{border:1px solid var(--border);background:#fff;border-radius:22px;width:100%;max-width:none;margin:0;padding:24px;box-shadow:0 10px 30px #0000000a}.settings-card-header{justify-content:space-between;align-items:flex-start;margin-bottom:22px;display:flex}.settings-label{color:var(--text-light);text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:800;display:block}.settings-card h2,.settings-admin-panel h2{color:var(--primary);font-size:28px}.settings-form-row{grid-template-columns:180px 180px;align-items:center;gap:16px;margin-bottom:16px;display:grid}.settings-primary-button,.settings-secondary-button{cursor:pointer;border:none;border-radius:12px;min-height:44px;padding:0 18px;font-family:inherit;font-size:14px;font-weight:900}.settings-postal-allowance-panel{gap:18px;display:grid}.settings-postal-hero{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.settings-postal-hero h2{color:var(--primary);margin-bottom:8px;font-size:30px}.settings-postal-hero p{max-width:760px;color:var(--text-light);font-size:14px;font-weight:600;line-height:1.55}.settings-postal-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.settings-postal-bulk-card{gap:16px;display:grid}.settings-postal-bulk-card.half{border-top:4px solid #d88935}.settings-postal-bulk-card.full{border-top:4px solid var(--primary)}.settings-postal-bulk-card h2{color:var(--primary);font-size:26px}.settings-postal-counter{min-width:42px;height:42px;color:var(--primary);background:#eef4f6;border-radius:14px;justify-content:center;align-items:center;font-size:16px;font-weight:900;display:inline-flex}.settings-postal-bulk-card textarea{border:1px solid var(--border);resize:vertical;width:100%;min-height:138px;color:var(--primary);background:#fbfcfd;border-radius:16px;outline:none;padding:14px;font-family:inherit;font-size:14px;font-weight:800;line-height:1.65}.settings-postal-bulk-card textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px #043c4b1a}.settings-postal-chip-list{background:#fff;border:1px solid #eef2f5;border-radius:16px;flex-wrap:wrap;align-content:flex-start;gap:8px;min-height:92px;max-height:178px;padding:12px;display:flex;overflow:auto}.settings-postal-chip{min-height:30px;color:var(--primary);background:#edf4f6;border-radius:10px;align-items:center;padding:0 10px;font-size:13px;font-weight:900;display:inline-flex}.settings-postal-empty{color:var(--text-light);font-size:13px;font-weight:700}.settings-postal-summary p{color:var(--text);font-size:14px;font-weight:800}.settings-primary-button{background:var(--primary);color:#fff}.settings-secondary-button{border:1px solid var(--border);color:var(--primary);background:#fff}.settings-allowance-layout{grid-template-columns:minmax(0,1fr) minmax(320px,420px);gap:18px;display:grid}.settings-allowance-table-card{grid-column:1/-1}.settings-allowance-categories-card{gap:18px;display:grid}.settings-allowance-search{border:1px solid var(--border);width:min(360px,100%);height:44px;color:var(--primary);border-radius:14px;outline:none;padding:0 14px;font-family:inherit;font-size:14px;font-weight:800}.settings-allowance-search:focus{border-color:var(--primary);box-shadow:0 0 0 4px #043c4b1a}.settings-allowance-category-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.settings-allowance-form-actions{align-items:end;gap:10px;display:flex}.settings-allowance-form-actions button{flex:1}.settings-allowance-category-grid label,.settings-postal-form{min-width:0}.settings-allowance-category-grid label{gap:8px;display:grid}.settings-allowance-category-grid span,.settings-postal-rule-row span{color:var(--text-light);text-transform:uppercase;font-size:12px;font-weight:800}.settings-allowance-category-grid input,.settings-postal-rule-row input{border:1px solid var(--border);height:44px;color:var(--primary);background:#fff;border-radius:12px;outline:none;padding:0 14px;font-family:inherit;font-size:14px;font-weight:800}.settings-allowance-category-grid input:focus,.settings-postal-rule-row input:focus{border-color:var(--primary);box-shadow:0 0 0 4px #043c4b1a}.settings-postal-rule-row{grid-template-columns:1fr 170px auto;align-items:center;gap:12px;display:grid}.settings-postal-rule-row .inline-select{width:100%}.settings-postal-rule-row .inline-select-button{height:44px;color:var(--primary);border-radius:12px;font-size:14px;font-weight:800}.settings-postal-list{gap:10px;margin-top:18px;display:grid}.settings-postal-list p{color:var(--text-light);font-size:14px;font-weight:700}.settings-postal-row{background:#fbfcfd;border:1px solid #eef2f5;border-radius:14px;grid-template-columns:90px 1fr auto;align-items:center;gap:10px;padding:12px;display:grid}.settings-postal-row strong{color:var(--primary)}.settings-postal-row span{color:var(--text);font-size:13px;font-weight:800}.settings-postal-row button,.settings-allowance-actions button{border:1px solid var(--border);min-height:34px;color:var(--primary);cursor:pointer;background:#fff;border-radius:10px;padding:0 12px;font-family:inherit;font-size:12px;font-weight:900}.settings-allowance-actions button.danger,.settings-postal-row button{color:var(--danger);border-color:#ffc9c9}.settings-allowance-table-wrapper{overflow-x:auto}.settings-allowance-table{border-collapse:collapse;width:100%}.settings-allowance-table th,.settings-allowance-table td{color:var(--text);text-align:left;white-space:nowrap;border-bottom:1px solid #eef2f5;padding:14px 12px;font-size:13px;font-weight:700}.settings-allowance-table th{color:var(--text-light);text-transform:uppercase;font-size:12px;font-weight:900}.settings-allowance-table td strong{color:var(--primary);font-weight:900}.settings-allowance-actions{align-items:center;gap:8px;display:flex}.settings-form-row label{color:var(--text);font-size:14px;font-weight:800}.settings-form-row input,.settings-form-row select{border:1px solid var(--border);height:46px;color:var(--primary);border-radius:12px;outline:none;padding:0 14px;font-family:inherit;font-size:15px;font-weight:800}.settings-form-row input:focus,.settings-form-row select:focus{border-color:var(--primary);box-shadow:0 0 0 4px #043c4b1a}.settings-note{color:var(--text-light);margin-bottom:22px;font-size:14px;line-height:1.6}.settings-save-button{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:12px;height:44px;padding:0 16px;font-family:inherit;font-size:13px;font-weight:800;transition:all .2s}.settings-tabs{border:1px solid var(--border);background:#fff;border-radius:14px;flex-direction:row;justify-content:center;align-items:center;gap:6px;width:100%;margin:0 0 22px;padding:4px;display:flex;box-shadow:0 10px 30px #0000000a}.settings-tab{width:auto;height:42px;color:var(--text-light);cursor:pointer;background:0 0;border:none;border-radius:10px;padding:0 18px;font-family:inherit;font-size:13px;font-weight:800;transition:all .2s}.settings-tab:hover{color:var(--primary);background:#043c4b0d}.settings-tab.active{background:var(--primary);color:#fff;box-shadow:0 8px 18px #043c4b29}.settings-save-button:hover{background:var(--primary-light)}.settings-save-button:disabled{opacity:.5;cursor:not-allowed}.settings-toast{background:var(--primary);color:#fff;border-radius:14px;padding:14px 18px;font-size:13px;font-weight:700;position:fixed;bottom:28px;right:28px;box-shadow:0 18px 40px #043c4b38}.settings-admin-panel{border:1px solid var(--border);background:#fff;border-radius:22px;flex-direction:column;width:100%;margin:0;padding:24px;display:flex;box-shadow:0 22px 60px #0f172a2e}.settings-permissions-layout{grid-template-columns:minmax(0,1fr) minmax(340px,.48fr);align-items:start;gap:22px;display:grid}.settings-permission-form{grid-template-columns:minmax(220px,.7fr) minmax(260px,1fr);gap:12px;margin-bottom:18px;display:grid}.settings-permission-form input,.settings-permission-assign-results button{border:1px solid var(--border);color:var(--primary);background:#fff;border-radius:14px;font-family:inherit;font-size:14px;font-weight:800}.settings-permission-form input{outline:none;height:46px;padding:0 14px}.settings-permission-form input:focus{border-color:var(--primary);box-shadow:0 0 0 4px #043c4b1a}.settings-permission-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.settings-permission-group{border:1px solid var(--border);background:#f8fbfc;border-radius:16px;padding:14px}.settings-permission-group>strong{color:var(--primary);margin-bottom:10px;font-size:15px;font-weight:900;display:block}.settings-permission-group>div{gap:8px;display:grid}.settings-permission-check{color:var(--text);cursor:pointer;grid-template-columns:22px 1fr;align-items:center;gap:8px;font-size:13px;font-weight:800;display:grid}.settings-permission-check input{opacity:0;pointer-events:none;position:absolute}.settings-permission-check span{background:#fff;border:1px solid #cbd5e1;border-radius:5px;width:18px;height:18px}.settings-permission-check input:checked+span{border-color:var(--primary);background:linear-gradient(135deg, var(--primary), #0d7088);box-shadow:inset 0 0 0 4px #fff}.settings-permission-side{gap:18px;display:grid}.settings-permission-template-list,.settings-permission-assign-results{gap:8px;display:grid}.settings-permission-template{grid-template-columns:1fr auto;align-items:stretch;gap:8px;display:grid}.settings-permission-template button,.settings-permission-assign-results button{text-align:left;cursor:pointer;min-height:48px;padding:10px 12px}.settings-permission-template button{border:1px solid var(--border);color:var(--primary);background:#fff;border-radius:14px;font-family:inherit;font-weight:900}.settings-permission-template.active button:first-child,.settings-permission-assign-results button.selected{background:#eef4f6;border-color:#043c4b42}.settings-permission-template button.danger{color:#e11d25;background:#fff5f5;border-color:#fecaca}.settings-permission-template strong,.settings-permission-template span,.settings-permission-assign-results strong,.settings-permission-assign-results span{display:block}.settings-permission-template span,.settings-permission-assign-results span{color:var(--text-light);margin-top:3px;font-size:12px;font-weight:800}.settings-permission-assign-results{max-height:238px;margin:12px 0;overflow-y:auto}.settings-permission-side .inline-select{width:100%;margin-bottom:12px}.settings-admin-panel .settings-card-header{margin-bottom:16px}.settings-payroll-panel{border:1px solid var(--border);background:#fff;border-radius:22px;width:100%;margin:0;padding:24px;box-shadow:0 10px 30px #0000000a}.settings-payroll-panel h2{color:var(--primary);font-size:28px}.settings-payroll-form{grid-template-columns:180px 140px minmax(240px,1fr) auto;align-items:end;gap:14px;display:grid}.settings-payroll-form label{flex-direction:column;gap:8px;display:flex}.settings-payroll-form label span{color:var(--text-light);text-transform:uppercase;font-size:12px;font-weight:800}.settings-payroll-form input,.settings-payroll-file strong{border:1px solid var(--border);height:44px;color:var(--primary);background:#fff;border-radius:12px;outline:none;padding:0 14px;font-family:inherit;font-size:14px;font-weight:800}.settings-payroll-form input:focus{border-color:var(--primary);box-shadow:0 0 0 4px #043c4b1a}.settings-payroll-form .inline-select{width:100%}.settings-payroll-form .inline-select-button{height:44px;color:var(--primary);border-radius:12px;font-size:14px;font-weight:800}.settings-payroll-file input{display:none}.settings-payroll-file strong{cursor:pointer;white-space:nowrap;text-overflow:ellipsis;align-items:center;display:flex;overflow:hidden}.settings-payroll-result{gap:14px;margin-top:22px;display:grid}.settings-payroll-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.settings-payroll-summary div{background:#fbfdfe;border:1px solid #edf2f5;border-radius:16px;padding:14px}.settings-payroll-summary span,.settings-payroll-summary strong{display:block}.settings-payroll-summary span{color:var(--text-light);text-transform:uppercase;font-size:12px;font-weight:800}.settings-payroll-summary strong{color:var(--primary);margin-top:6px;font-size:28px;font-weight:900}.settings-payroll-warning{background:#fffbeb;border:1px solid #fed7aa;border-radius:16px;gap:6px;padding:14px;display:grid}.settings-payroll-warning strong{color:#b45309;font-size:13px;font-weight:900}.settings-payroll-warning span{color:var(--text);font-size:13px;font-weight:700}.settings-geo-layout{grid-template-columns:minmax(0,.95fr) minmax(360px,1.05fr);align-items:stretch;gap:22px;display:grid}.settings-geo-card{min-height:100%}.settings-geo-card .settings-form-row{grid-template-columns:minmax(180px,1fr) minmax(180px,220px)}.settings-geo-preview{border:1px solid var(--border);background:#fff;border-radius:22px;box-shadow:0 10px 30px #0000000a}.settings-geo-summary{grid-template-columns:1fr;gap:14px;padding:24px;display:grid}.settings-geo-summary h3{color:var(--primary);font-size:26px}.settings-geo-summary p{color:var(--text-light);font-size:14px;line-height:1.6}.settings-geo-summary div{border:1px solid var(--border);background:#f8fbfc;border-radius:14px;padding:14px}.settings-geo-summary div span,.settings-geo-summary div strong{display:block}.settings-geo-summary div span{color:var(--text-light);text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:900}.settings-geo-summary div strong{color:var(--primary);font-size:14px;font-weight:900}.settings-map-link{background:var(--primary);color:#fff;border-radius:12px;justify-content:center;align-items:center;width:fit-content;height:42px;padding:0 16px;font-size:13px;font-weight:900;text-decoration:none;display:inline-flex}.settings-workpart-layout{grid-template-columns:minmax(0,1fr) minmax(320px,.54fr);align-items:stretch;gap:22px;display:grid}.settings-workpart-card{min-height:100%}.settings-workpart-status{min-height:38px;color:var(--text-light);background:#f1f5f9;border-radius:999px;justify-content:center;align-items:center;padding:0 14px;font-size:12px;font-weight:900;display:inline-flex}.settings-workpart-status.active{color:#047857;background:#dff8ee}.settings-workpart-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:16px;display:grid}.settings-workpart-grid label{color:var(--text-light);text-transform:uppercase;align-content:start;gap:8px;font-size:12px;font-weight:900;display:grid}.settings-workpart-grid input[type=number]{border:1px solid var(--border);width:100%;height:46px;color:var(--primary);border-radius:14px;outline:none;padding:0 14px;font-family:inherit;font-size:15px;font-weight:900}.settings-workpart-grid input[type=number]:focus{border-color:var(--primary);box-shadow:0 0 0 4px #043c4b1a}.settings-workpart-toggle{border:1px solid var(--border);background:#f8fbfc;border-radius:16px;padding:14px}.settings-workpart-toggle input{opacity:0;pointer-events:none;position:absolute}.settings-workpart-toggle span{background:#dbe5ea;border-radius:999px;width:48px;height:28px;transition:all .2s;position:relative}.settings-workpart-toggle span:after{content:"";background:#fff;border-radius:999px;width:20px;height:20px;transition:all .2s;position:absolute;top:4px;left:4px;box-shadow:0 4px 10px #0f172a2e}.settings-workpart-toggle input:checked+span{background:var(--primary)}.settings-workpart-toggle input:checked+span:after{transform:translate(20px)}.settings-workpart-preview{border:1px solid var(--border);background:#fff;border-radius:22px;align-content:start;gap:14px;padding:24px;display:grid;box-shadow:0 10px 30px #0000000a}.settings-workpart-preview h3{color:var(--primary);font-size:26px}.settings-workpart-preview div{border:1px solid var(--border);background:#f8fbfc;border-radius:14px;padding:14px}.settings-workpart-preview span,.settings-workpart-preview strong{display:block}.settings-workpart-preview div span{color:var(--text-light);text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:900}.settings-workpart-preview strong{color:var(--primary);font-size:16px;font-weight:900}.settings-workpart-preview p{color:var(--text-light);font-size:14px;font-weight:600;line-height:1.6}.settings-vacation-log-panel{border:1px solid var(--border);background:#fff;border-radius:22px;width:100%;margin:22px 0 0;padding:24px;box-shadow:0 10px 30px #0000000a}.settings-log-row{border-bottom:1px solid #eef2f5;grid-template-columns:minmax(260px,1fr) 120px auto;align-items:center;gap:14px;padding:14px 0;display:grid}.settings-log-row strong,.settings-log-row span,.settings-log-row small{display:block}.settings-log-row strong{color:var(--primary);font-size:14px;font-weight:800}.settings-log-row span,.settings-log-row small{color:var(--text-light);margin-top:4px;font-size:13px;font-weight:600}.settings-vacation-log{margin-top:24px}.settings-log-row{grid-template-columns:220px 1fr}.settings-admin-search{border:1px solid var(--border);width:100%;height:46px;color:var(--text);border-radius:12px;outline:none;margin-bottom:12px;padding:0 14px;font-family:inherit;font-size:14px;font-weight:600}.settings-admin-helper{color:var(--text-light);margin:0 0 14px;font-size:13px;font-weight:700}.settings-admin-search:focus{border-color:var(--primary);box-shadow:0 0 0 4px #043c4b1a}.settings-admin-list{border:1px solid var(--border);border-radius:16px;overflow:hidden}.settings-admin-row{border-bottom:1px solid #eef2f5;justify-content:space-between;align-items:center;gap:18px;padding:14px 16px;display:flex}.settings-admin-row:last-child{border-bottom:none}.settings-admin-empty{color:var(--text-light);padding:22px;font-size:14px;font-weight:800}.settings-admin-row strong,.settings-admin-row span{display:block}.settings-admin-row strong{color:var(--primary);font-size:14px;font-weight:800}.settings-admin-row span{color:var(--text-light);margin-top:4px;font-size:13px;font-weight:600}.settings-admin-toggle{border:1px solid var(--border);min-width:118px;height:38px;color:var(--primary);cursor:pointer;background:#fff;border-radius:12px;font-family:inherit;font-size:12px;font-weight:800;transition:all .2s}.settings-admin-toggle.active{color:#059669;background:#10b9811f;border-color:#10b9812e}.settings-admin-toggle.active.remove{color:#dc2626;background:#fef2f2;border-color:#fecaca;min-width:132px}.settings-admin-toggle:disabled{opacity:.5;cursor:not-allowed}.settings-admin-footer{justify-content:space-between;align-items:center;gap:12px;margin-top:14px;display:flex}.settings-admin-footer span,.settings-admin-pagination strong{color:var(--text-light);font-size:13px;font-weight:900}.settings-admin-pagination{align-items:center;gap:10px;display:flex}.settings-admin-pagination button{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.settings-admin-pagination button:disabled{opacity:.35;cursor:not-allowed}.settings-calendar-layout{grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);align-items:flex-start;gap:22px;display:grid}.settings-calendar-form,.settings-calendar-list-panel{border:1px solid var(--border);background:#fff;border-radius:22px;padding:24px;box-shadow:0 10px 30px #0000000a}.settings-calendar-form h2,.settings-calendar-list-panel h2{color:var(--primary);font-size:26px}.settings-calendar-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:20px;display:grid}.settings-calendar-grid label,.settings-holiday-draft{flex-direction:column;gap:8px;display:flex}.settings-calendar-grid span{color:var(--text-light);text-transform:uppercase;font-size:12px;font-weight:800}.settings-calendar-grid input,.settings-holiday-draft input{border:1px solid var(--border);height:44px;color:var(--primary);background:#fff;border-radius:12px;outline:none;padding:0 14px;font-family:inherit;font-size:14px;font-weight:800}.settings-calendar-grid input:focus,.settings-holiday-draft input:focus{border-color:var(--primary);box-shadow:0 0 0 4px #043c4b1a}.settings-calendar-grid .inline-select,.settings-holiday-draft .inline-select{width:100%}.settings-calendar-grid .inline-select-button,.settings-holiday-draft .inline-select-button{height:44px;color:var(--primary);border-radius:12px;padding:0 12px 0 14px;font-size:14px;font-weight:800}.settings-calendar-grid .inline-select-option,.settings-holiday-draft .inline-select-option{height:36px;font-size:13px;font-weight:700}.settings-resource-picker{gap:8px;display:grid;position:relative}.settings-resource-results{z-index:90;border:1px solid var(--border);background:#fff;border-radius:14px;max-height:286px;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow:auto;box-shadow:0 18px 40px #0f172a24}.settings-resource-results p{color:var(--text-light);padding:14px;font-size:13px;font-weight:700}.settings-resource-results button{text-align:left;cursor:pointer;background:0 0;border:none;border-bottom:1px solid #e8eef2;gap:4px;width:100%;padding:11px 14px;font-family:inherit;display:grid}.settings-resource-results button:last-child{border-bottom:none}.settings-resource-results button:hover,.settings-resource-results button.selected{background:#043c4b12}.settings-resource-results strong{color:var(--primary);font-size:13px;font-weight:900}.settings-resource-results span{color:var(--text-light);font-size:12px;font-weight:700}.settings-holiday-box{border:1px solid var(--border);border-radius:18px;margin-bottom:20px;padding:18px}.settings-holiday-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.settings-holiday-header h3{color:var(--primary);font-size:20px}.settings-holiday-draft{grid-template-columns:minmax(160px,.85fr) minmax(180px,1fr) minmax(140px,.65fr) minmax(108px,auto);align-items:end;margin-bottom:14px;display:grid}.settings-holiday-list{flex-direction:column;gap:8px;display:flex}.settings-holiday-row,.settings-calendar-row{background:#fbfcfd;border:1px solid #eef2f5;border-radius:14px;grid-template-columns:auto 1fr auto auto;align-items:center;gap:12px;padding:12px;display:grid}.settings-date-picker-wrap{min-width:0;position:relative}.settings-date-field{border:1px solid var(--border);width:100%;height:44px;color:var(--text-light);cursor:pointer;background:#fff;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:0 14px;font-family:inherit;font-size:14px;font-weight:800;display:flex}.settings-date-field.has-value{color:var(--primary)}.settings-date-field:hover,.settings-date-field:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 4px #043c4b1a}.settings-date-field svg{color:var(--primary);flex:none}.settings-date-picker{z-index:20;border:1px solid var(--border);background:#fff;border-radius:18px;width:318px;padding:14px;position:absolute;top:calc(100% + 8px);left:0;box-shadow:0 22px 60px #0f172a2e}.settings-date-picker-header{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.settings-date-picker-header strong{color:var(--primary);text-transform:capitalize;font-size:14px;font-weight:900}.settings-date-picker-header button,.settings-date-picker-days button,.settings-date-picker-footer button{cursor:pointer;border:none;font-family:inherit}.settings-date-picker-header button{border:1px solid var(--border);width:34px;height:34px;color:var(--primary);background:#f8fafc;border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.settings-date-picker-weekdays,.settings-date-picker-days{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.settings-date-picker-weekdays{margin-bottom:6px}.settings-date-picker-weekdays span{color:var(--text-light);text-align:center;font-size:11px;font-weight:900}.settings-date-picker-days button{aspect-ratio:1;color:var(--primary);background:#f8fafc;border-radius:10px;font-size:13px;font-weight:900;position:relative}.settings-date-picker-days button:hover{background:#edf4f6}.settings-date-picker-days button.muted{color:#9aa9b5}.settings-date-picker-days button.selected{background:var(--primary);color:#fff}.settings-date-picker-days button.has-holiday:after{content:"";background:#d88935;border-radius:999px;width:5px;height:5px;position:absolute;bottom:5px;left:50%;transform:translate(-50%)}.settings-date-picker-days button.selected.has-holiday:after{background:#fff}.settings-date-picker-footer{justify-content:space-between;margin-top:12px;display:flex}.settings-date-picker-footer button{height:34px;color:var(--primary);background:#eef4f6;border-radius:10px;padding:0 10px;font-size:12px;font-weight:900}.settings-holiday-row strong,.settings-calendar-row strong{color:var(--primary);font-size:14px;font-weight:900}.settings-holiday-row span,.settings-calendar-row span,.settings-calendar-row small{color:var(--text-light);font-size:13px;font-weight:700}.settings-holiday-row small{color:var(--primary);background:#eef4f6;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800}.settings-holiday-row button,.settings-calendar-actions button,.settings-secondary-button,.settings-danger-button{border:1px solid var(--border);height:38px;color:var(--primary);white-space:nowrap;cursor:pointer;background:#fff;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-family:inherit;font-size:12px;font-weight:900;display:inline-flex}.settings-holiday-row button,.settings-calendar-actions button.danger,.settings-danger-button{color:#dc2626;background:#fef2f2;border-color:#fecaca}.settings-holiday-row button{width:38px;padding:0}.settings-calendar-list{flex-direction:column;gap:10px;display:flex}.settings-calendar-row{grid-template-columns:minmax(0,1fr) auto}.settings-calendar-row span,.settings-calendar-row small{margin-top:4px;display:block}.settings-calendar-actions{gap:8px;display:flex}.settings-modal-backdrop{z-index:30;background:#0f172a47;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.settings-modal{border:1px solid var(--border);background:#fff;border-radius:22px;width:min(420px,100%);padding:24px;box-shadow:0 24px 80px #0f172a47}.settings-modal h2{color:var(--primary);margin-bottom:10px;font-size:24px}.settings-modal p{color:var(--text-light);margin-bottom:18px;font-size:14px;line-height:1.6}.settings-modal-actions{justify-content:flex-end;gap:10px;display:flex}@media (width<=900px){.settings-page{padding:20px}.settings-form-row{grid-template-columns:1fr}.settings-workspace{margin-top:14px;display:block}.settings-tabs{flex-direction:row;width:100%;margin-bottom:18px;position:static;overflow-x:auto}.settings-tab{white-space:nowrap;width:auto}.settings-geo-layout,.settings-workpart-layout,.settings-permissions-layout,.settings-calendar-layout,.settings-calendar-grid,.settings-holiday-draft,.settings-payroll-form,.settings-payroll-summary,.settings-allowance-layout,.settings-allowance-category-grid,.settings-postal-rule-row,.settings-postal-columns,.settings-workpart-grid,.settings-permission-form,.settings-permission-groups{grid-template-columns:1fr}.settings-postal-hero{flex-direction:column}.settings-geo-card .settings-form-row,.settings-calendar-row,.settings-holiday-row{grid-template-columns:1fr}.settings-calendar-actions,.settings-modal-actions{flex-direction:column}.settings-date-picker{width:min(318px,100vw - 64px)}.settings-topbar,.settings-admin-row{flex-direction:column;align-items:stretch}}:root{--primary:#043c4b;--primary-light:#0b5569;--gold:#c4894c;--background:#f4f7f9;--white:#fff;--border:#dbe3e8;--text:#1f2937;--text-light:#64748b;--shadow:0 10px 30px #043c4b14;--radius:22px}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;min-height:100vh}body{background:radial-gradient(circle at top right, #c4894c1f, transparent 30%), radial-gradient(circle at bottom left, #043c4b14, transparent 35%), var(--background);color:var(--text);font-family:Montserrat,sans-serif}:where(select:not([multiple])){border:1px solid var(--border);min-height:42px;color:var(--primary);cursor:pointer;border-radius:12px;outline:none;font-family:inherit;font-weight:800;appearance:none!important;background:linear-gradient(45deg, transparent 50%, var(--primary) 50%), linear-gradient(135deg, var(--primary) 50%, transparent 50%), linear-gradient(to right, #043c4b14, #043c4b14), white!important;background-position:calc(100% - 22px) calc(50% + 2px),calc(100% - 16px) calc(50% + 2px),calc(100% - 38px),0 0!important;background-repeat:no-repeat!important;background-size:6px 6px,6px 6px,1px 22px,auto!important;padding-right:42px!important}:where(select:not([multiple])):focus{border-color:var(--primary);box-shadow:0 0 0 4px #043c4b1a}
