.work-activity-panel{background:linear-gradient(135deg,#f8fbff 0%,#fff 48%,#f4fffb 100%);border:1px solid #c9d9ea;border-radius:12px;margin-bottom:18px;padding:18px;box-shadow:0 18px 40px #0f172a12}.work-activity-header{border-bottom:1px solid #d7e4f2;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:14px;display:flex}.work-activity-header h3{color:var(--navy);margin-bottom:0;font-size:1.22rem}.work-activity-header>span,.work-category-list .assignment-roster-header>span{color:#075985;background:#e0f2fe;border-radius:999px;padding:7px 12px;font-size:.82rem;font-weight:900}.work-activity-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:end;gap:10px;display:flex}.work-activity-header-actions>span{color:#075985;white-space:nowrap;background:#e0f2fe;border-radius:999px;align-self:center;padding:7px 12px;font-size:.82rem;font-weight:900}.work-activity-staff-picker{gap:5px;min-width:min(360px,44vw);display:grid}.work-activity-staff-picker span{color:var(--muted);text-transform:uppercase;font-size:.74rem;font-weight:900}.work-activity-staff-picker select{color:var(--navy);background:#fff;border:1px solid #cbd7e6;border-radius:8px;min-height:40px;padding:8px 34px 8px 10px;font-size:.9rem;font-weight:850}.work-activity-grid,.work-admin-grid{grid-template-columns:minmax(340px,.72fr) minmax(0,1.28fr);align-items:start;gap:16px;display:grid}.work-category-page .work-admin-grid{margin-top:16px}.work-category-tabs{margin-top:14px}.work-scope-selector{background:linear-gradient(135deg,#f0fdfa,#eff6ff);border:1px solid #bae6fd;border-radius:10px;grid-template-columns:minmax(260px,420px) auto;align-items:end;gap:12px;margin-top:14px;padding:14px;display:grid}.work-scope-selector label{color:var(--navy);gap:6px;font-size:.9rem;font-weight:900;display:grid}.work-scope-selector span{color:#1e3a8a;background:#dbeafe;border-radius:999px;justify-self:end;padding:8px 12px;font-size:.82rem;font-weight:900}.work-category-tabs button{min-height:68px}.group-project-picker{gap:8px;display:grid}.group-project-suggestions{background:#f8fbff;border:1px solid #dbe7f3;border-radius:8px;gap:8px;padding:10px;display:grid}.group-project-suggestions small{color:#52617a;text-transform:uppercase;font-size:.78rem;font-weight:850}.group-project-suggestions div{flex-wrap:wrap;gap:8px;display:flex}.group-project-suggestions button{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;width:auto;padding:7px 10px;font-size:.84rem;font-weight:850}.group-project-suggestions button:hover{background:#dbeafe;border-color:#93c5fd}.work-activity-tabs{margin-top:0;margin-bottom:14px}.work-activity-tabs button{min-height:66px}.work-activity-tab-panel{gap:14px;display:grid}.work-activity-tab-panel .work-entry-form,.work-activity-tab-panel .work-summary-panel{width:100%}.staff-leave-request-panel{background:#fff;border:1px solid #dbe7f3;border-radius:8px;gap:14px;padding:16px;display:grid}.staff-leave-new-request-button{color:#fff;background:linear-gradient(135deg,#0f766e,#2563eb);border:0;border-radius:8px;min-height:42px;padding:10px 16px;font-weight:900}.staff-leave-status-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.staff-leave-status-card{border:1px solid #dbe7f3;border-radius:8px;justify-content:space-between;min-height:58px;padding:12px 14px;display:flex}.staff-leave-status-card span{color:var(--muted);text-transform:uppercase;font-size:.82rem;font-weight:900}.staff-leave-status-card strong{color:var(--ink);font-size:1.2rem}.staff-leave-status-card.pending{background:#fff7ed;border-color:#fed7aa}.staff-leave-status-card.pending strong{color:#9a3412}.staff-leave-status-card.approved{background:#ecfdf5;border-color:#86efac}.staff-leave-status-card.approved strong{color:#166534}.staff-leave-status-card.rejected{background:#fef2f2;border-color:#fecaca}.staff-leave-status-card.rejected strong{color:#991b1b}.staff-leave-status-card.withdrawn{background:#f1f5f9;border-color:#cbd5e1}.staff-leave-status-card.withdrawn strong{color:#475569}.staff-leave-status-card.cancelled,.staff-leave-status-card.reversal-required{background:#f1f5f9;border-color:#cbd5e1}.staff-leave-status-card.cancelled strong,.staff-leave-status-card.reversal-required strong{color:#475569}.staff-leave-balance-panel{background:#f8fffc;border:1px solid #b7f0dc;border-radius:8px;gap:12px;padding:14px;display:grid}.staff-leave-balance-panel .work-breakdown-heading{border-bottom:1px solid #d7f5ea;justify-content:space-between;align-items:center;padding-bottom:10px;display:flex}.staff-leave-balance-panel .work-breakdown-heading span{color:#1e3a8a;background:#dbeafe;border-radius:999px;padding:5px 10px;font-size:.82rem;font-weight:900}.staff-leave-balance-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;display:grid}.staff-leave-balance-card{background:#fff;border:1px solid #cfe1f3;border-left:4px solid #0f766e;border-radius:8px;gap:4px;padding:12px;display:grid}.staff-leave-balance-card.selected{background:#ecfdf5;border-color:#86efac;box-shadow:0 0 0 2px #0f766e14}.staff-leave-balance-card.empty{background:#fff7ed;border-color:#fed7aa #fed7aa #fed7aa #f97316}.staff-leave-balance-card span{color:#0f766e;text-transform:uppercase;font-size:.82rem;font-weight:900}.staff-leave-balance-card strong{color:var(--ink);font-size:1.08rem}.staff-leave-balance-card small{color:var(--muted);font-weight:800}.staff-pay-panel{background:linear-gradient(#fff 0%,#fbfdff 100%);border:1px solid #dbe7f3;border-radius:8px;gap:16px;padding:18px;display:grid}.staff-pay-panel .work-entry-form-header{align-items:flex-start;gap:16px}.staff-pay-header-actions{background:#f8fbff;border:1px solid #dbe7f3;border-radius:8px;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;padding:8px;display:flex}.staff-pay-reveal-button,.staff-pay-print-button{white-space:nowrap;min-height:40px}.staff-pay-select{align-items:center;gap:10px;margin:0;display:flex}.staff-pay-select span{color:var(--muted);text-transform:uppercase;white-space:nowrap;font-size:.78rem;font-weight:900}.staff-pay-select select{color:var(--navy);font:inherit;background:#fff;border:1px solid #cbd8e8;border-radius:8px;min-width:min(420px,46vw);min-height:40px;padding:8px 10px;font-weight:800}.staff-pay-profile-bank{background:#f8fafc;border:1px solid #dbe7f3;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:14px;display:grid}.staff-pay-profile-summary{grid-template-columns:repeat(2,minmax(220px,1fr));gap:10px;display:grid}.staff-pay-profile-summary>div{background:#fff;border:1px solid #dbe3ee;border-radius:8px;gap:4px;padding:12px;display:grid}.staff-pay-profile-summary>.salary-bank-audit-trail{grid-column:1/-1}.salary-bank-audit-trail{background:#f8fafc;border:1px solid #dbe3ee;border-radius:8px;gap:8px;padding:10px;display:grid}.salary-bank-audit-trail span{text-transform:none;border-left:3px solid #0f766e;gap:2px;padding-left:8px;display:grid}.salary-bank-audit-trail strong{color:#0f172a;font-size:.84rem}.salary-bank-audit-trail small{color:var(--muted);font-weight:800}.staff-pay-profile-summary span,.staff-pay-bank-form span{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:900}.staff-pay-profile-summary small{color:var(--muted);font-weight:800}.staff-pay-bank-action{place-items:end;gap:8px;min-width:210px;display:grid}.staff-pay-bank-action button{min-width:190px;min-height:42px}.staff-pay-bank-action .employee-profile-save-confirmation{text-align:right;max-width:320px}.staff-pay-bank-form{grid-template-columns:repeat(2,minmax(180px,1fr));gap:12px;display:grid}.staff-pay-bank-modal-form{grid-template-columns:repeat(2,minmax(220px,1fr))}.staff-pay-bank-modal-form .confirmation-intro,.staff-pay-bank-modal-form .modal-actions{grid-column:1/-1}.work-activity-display-settings{gap:14px;width:100%;display:grid}.work-activity-display-settings .settings-toggle{min-width:0;margin:0}.work-activity-display-settings .settings-toggle span{min-width:0}.staff-pay-bank-form label{gap:6px;display:grid}.staff-pay-bank-form input{color:var(--navy);font:inherit;background:#fff;border:1px solid #cbd8e8;border-radius:8px;min-height:40px;padding:8px 10px;font-weight:800}.staff-pay-bank-form button{white-space:nowrap;place-self:end;min-width:190px;min-height:40px}.staff-pay-bank-form .employee-profile-save-confirmation{grid-column:1/-1}.staff-pay-current-card{background:linear-gradient(135deg,#f0fdfa,#f8fbff);border:1px solid #99f6e4;border-left:4px solid #14b8a6;border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(210px,auto);align-items:center;gap:14px;padding:16px;display:grid}.staff-pay-current-card h4,.staff-pay-current-card p{margin:0}.staff-pay-current-card h4{color:var(--navy);font-size:1.25rem}.staff-pay-current-card p,.staff-pay-current-card small{color:var(--muted);font-weight:750}.staff-pay-net{text-align:right;background:#fff;border:1px solid #cce6f3;border-radius:8px;gap:4px;padding:14px;display:grid}.staff-pay-net span,.staff-pay-breakdown-grid span,.staff-pay-history-row small{color:var(--muted);font-size:.82rem;font-weight:850}.staff-pay-net strong{color:#0f766e;font-size:1.6rem}.staff-pay-breakdown-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.staff-pay-breakdown-grid div{background:#f8fbff;border:1px solid #d7e4f2;border-radius:8px;gap:4px;padding:12px;display:grid}.staff-payslip{color:#111827;background:#fff;border:1px solid #cbd8e8;border-radius:8px;gap:12px;padding:18px;display:grid}.staff-payslip-header{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.staff-payslip-brand{gap:4px;display:grid}.staff-payslip-brand strong{color:#0f766e;font-size:2rem;line-height:1}.staff-payslip-brand span,.staff-payslip-period span{color:#334155;font-weight:850}.staff-payslip-period{text-align:right;gap:8px;display:grid}.staff-payslip-period strong{color:#111827;font-size:1rem}.staff-payslip-info-grid{border:1px solid #111827;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.staff-payslip-info-grid>div{border-bottom:1px solid #111827;border-right:1px solid #111827;grid-template-columns:minmax(120px,.48fr) minmax(0,1fr);gap:2px;min-height:34px;display:grid}.staff-payslip-info-grid>div:nth-last-child(-n+4){border-bottom:0}.staff-payslip-info-grid>div:nth-child(4n){border-right:0}.staff-payslip-info-grid span{color:#111827;background:#e5eaef;border-right:1px solid #111827;padding:6px 8px;font-weight:850}.staff-payslip-info-grid strong{color:#111827;overflow-wrap:anywhere;align-self:center;min-width:0;padding:6px 8px;font-weight:850}.staff-payslip-section-grid{grid-template-columns:1.2fr .9fr .9fr;gap:12px;display:grid}.staff-payslip-table{border:1px solid #111827;grid-template-rows:auto auto 1fr auto;min-height:220px;display:grid}.staff-payslip-table h4{color:#111827;text-align:center;background:#e5eaef;border-bottom:1px solid #111827;margin:0;padding:9px 10px;font-size:1rem}.staff-payslip-table>div,.staff-payslip-table footer,.staff-payslip-table-head{grid-template-columns:minmax(0,1fr) minmax(110px,auto);gap:8px;padding:8px 10px;display:grid}.staff-payslip-table.taxable>div,.staff-payslip-table.taxable .staff-payslip-table-head{grid-template-columns:minmax(0,1fr) minmax(80px,auto) minmax(110px,auto)}.staff-payslip-table-head{background:#f8fafc;border-bottom:1px solid #111827;font-weight:850}.staff-payslip-table div span,.staff-payslip-table footer span{color:#111827}.staff-payslip-table div strong,.staff-payslip-table footer strong{color:#111827;text-align:right}.staff-payslip-table footer{border-top:1px solid #111827;align-self:end;font-weight:900}.staff-payslip-table.summary footer,.staff-payslip-table.net-salary footer{font-size:1.05rem}.staff-pay-breakdown-grid strong{color:var(--navy);font-size:1.1rem}.staff-pay-allowance-list{background:#f8fffc;border:1px solid #b7f0dc;border-radius:10px;gap:8px;padding:12px;display:grid}.staff-pay-allowance-list>strong{color:#0f766e;font-size:.86rem}.staff-pay-allowance-list span{border-top:1px solid #d7f5ea;justify-content:space-between;align-items:center;gap:12px;padding-top:8px;display:flex}.staff-pay-allowance-list small{color:var(--muted);font-weight:800}.staff-pay-allowance-list b{color:var(--navy);white-space:nowrap}.staff-pay-run-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.staff-pay-run-meta span{color:#334155;background:#eef6ff;border:1px solid #d7e4f2;border-radius:999px;padding:6px 10px;font-size:.82rem;font-weight:900}.staff-pay-history{gap:10px;display:grid}.staff-pay-history-list{border:1px solid #d7e4f2;border-radius:10px;display:grid;overflow:hidden}.staff-pay-history-row{background:#fff;border-top:1px solid #e2edf7;grid-template-columns:minmax(220px,1fr) minmax(120px,auto) minmax(120px,auto);align-items:center;gap:12px;padding:12px;display:grid}.staff-pay-history-row:first-child{border-top:0}.staff-pay-history-row strong,.staff-pay-history-row small{display:block}.staff-pay-history-row>span{color:var(--navy);text-align:right;font-weight:900}.staff-pay-manager-summary{gap:10px;display:grid}.staff-pay-history-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.staff-pay-manager-list{border:1px solid #d7e4f2;border-radius:10px;display:grid;overflow:hidden}.staff-pay-manager-row{background:#fff;border-top:1px solid #e2edf7;grid-template-columns:minmax(220px,1fr) minmax(90px,auto) minmax(90px,auto) minmax(130px,auto);align-items:center;gap:12px;padding:12px;display:grid}.staff-pay-manager-row:first-child{border-top:0}.staff-pay-manager-row strong,.staff-pay-manager-row small{display:block}.staff-pay-manager-row span,.staff-pay-manager-row em{color:var(--navy);text-align:right;font-style:normal;font-weight:900}.staff-pay-manager-row em{color:var(--muted)}.staff-leave-request-form{background:#f8fbff;border:1px solid #dbeafe;border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:14px;display:grid}.staff-leave-request-form label{color:var(--muted);gap:6px;font-size:.82rem;font-weight:900;display:grid}.staff-leave-request-form input,.staff-leave-request-form select,.staff-leave-request-form textarea{color:var(--ink);font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:8px;min-height:42px;padding:9px 11px;font-weight:800}.staff-leave-request-form input[readonly]{background:#f1f5f9}.staff-leave-request-form .staff-leave-reason,.staff-leave-request-form button,.staff-leave-request-form .employee-profile-save-confirmation,.staff-leave-request-form .work-entry-guard{grid-column:1/-1}.staff-leave-request-form textarea{resize:vertical;min-height:84px}.staff-leave-request-prompt{color:var(--muted);background:#f8fbff;border:1px dashed #bfdbfe;border-radius:8px;gap:4px;padding:14px;display:grid}.staff-leave-request-prompt strong{color:var(--ink)}.staff-leave-request-history{gap:12px;display:grid}.staff-leave-request-list{gap:10px;display:grid}.staff-leave-request-card{background:#fff;border:1px solid #d6dee8;border-left:4px solid #0f766e;border-radius:8px;grid-template-columns:minmax(220px,.45fr) minmax(0,1fr);gap:8px;padding:12px;display:grid}.staff-leave-request-card.pending{border-left-color:#f59e0b}.staff-leave-request-card.approved{border-left-color:#16a34a}.staff-leave-request-card.rejected{border-left-color:#dc2626}.staff-leave-request-card.withdrawn,.staff-leave-request-card.cancelled{border-left-color:#64748b}.staff-leave-request-card.reversal-required{border-left-color:#c2410c}.staff-leave-request-card>div{gap:5px;display:grid}.staff-leave-withdraw-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.staff-leave-approval-panel{border-left:4px solid #0f766e}.staff-leave-decision-note{color:var(--muted);gap:6px;font-size:.82rem;font-weight:900;display:grid}.staff-leave-decision-note input{color:var(--ink);font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:8px;min-height:42px;padding:9px 11px;font-weight:800}.staff-leave-cancellation-form{background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;gap:8px;min-width:320px;padding:10px;display:grid}.staff-leave-cancellation-form label{color:#9a3412;text-transform:uppercase;gap:6px;font-size:.78rem;font-weight:900;display:grid}.staff-leave-cancellation-form textarea{color:var(--ink);font:inherit;text-transform:none;background:#fff;border:1px solid #fdba74;border-radius:8px;min-height:84px;padding:10px 12px}.staff-leave-cancellation-form>small,.staff-leave-reversal-required small{color:var(--muted);font-weight:800}.staff-leave-cancellation-form>div,.staff-leave-reversal-required{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.staff-leave-reversal-required{justify-content:flex-end}.staff-leave-request-card.manager-approval{grid-template-columns:minmax(220px,.38fr) minmax(260px,1fr) auto;align-items:center}.staff-leave-approval-actions{justify-content:flex-end;gap:8px;display:flex}.staff-leave-approval-actions button{min-width:94px;min-height:38px}.staff-leave-approval-actions .danger{color:#991b1b}.staff-leave-request-card small,.staff-leave-request-card p{color:var(--muted);margin:0;font-weight:800}.leave-audit-trail{gap:6px;margin-top:8px;display:grid}.leave-audit-trail span{background:#fff;border:1px solid #dbe3ee;border-left:3px solid #0f766e;border-radius:8px;gap:2px;padding:8px;display:grid}.leave-audit-trail strong{color:#0f172a;font-size:.84rem}.leave-audit-trail small{color:var(--muted);font-size:.8rem;font-weight:800}.work-user-category-panel{background:#fff;border:1px solid #dbe7f3;border-radius:8px;margin-top:16px;padding:14px}.work-user-category-panel .assignment-roster-header span{color:var(--muted);font-size:.88rem;font-weight:750}.work-user-category-grid{grid-template-columns:repeat(auto-fit,minmax(360px,1fr));align-items:start;gap:14px;margin-top:16px;display:grid}.work-user-category-card{background:#fff;border:1px solid #dbe7f3;border-radius:8px;gap:12px;min-width:0;padding:14px;display:grid;overflow:hidden}.work-user-card-header{grid-template-columns:minmax(0,1fr) auto;align-items:flex-start;gap:10px;min-height:46px;display:grid}.work-user-category-card strong,.work-user-category-card span,.work-user-category-card small{display:block}.work-user-card-header strong{color:var(--ink);overflow-wrap:anywhere;line-height:1.15}.work-user-card-header small{color:var(--muted);overflow-wrap:anywhere;margin-top:4px;font-size:.78rem;font-weight:750}.work-user-card-header>span{color:#075985;text-align:right;white-space:normal;background:#e0f2fe;border-radius:999px;max-width:170px;padding:5px 9px;font-size:.78rem;font-weight:850}.work-activity-status-card{color:#0f172a;cursor:pointer;text-align:left;background:#f8fafc;border:1px solid #d8e5f4;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:10px;min-height:62px;padding:10px 12px;display:grid}.work-activity-status-card:disabled{cursor:default}.work-activity-status-card strong{color:#0f172a;font-size:.98rem}.work-activity-status-card small{color:#64748b;margin-top:3px;font-size:.76rem;font-weight:800}.work-activity-status-card.status-open,.work-activity-status-card.status-mixed{background:#fff7ed;border-color:#fed7aa}.work-activity-status-card.status-submitted{background:#eff6ff;border-color:#bfdbfe}.work-activity-status-card.status-finalized{background:#ecfdf5;border-color:#99f6e4}.work-category-chip-list{flex-wrap:wrap;gap:8px;display:flex}.work-category-chip-list button{color:#0f766e;cursor:pointer;background:#ecfdf5;border:1px solid #99f6e4;border-radius:999px;padding:6px 10px;font-size:.82rem;font-weight:850}.work-category-chip-list button.global{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.work-category-chip-list small{color:var(--muted);font-weight:750}.work-user-category-checklist{gap:8px;display:grid}.work-user-category-checklist label{background:#fff;border:1px solid #cfe0f0;border-radius:8px;grid-template-columns:18px minmax(120px,1fr) minmax(104px,auto);align-items:center;column-gap:11px;min-height:54px;padding:9px 10px;display:grid}.work-user-category-checklist label.selected{background:#ecfdf5;border-color:#14b8a6;box-shadow:inset 4px 0 #0f766e}.work-user-category-checklist span{color:var(--navy);overflow-wrap:anywhere;min-width:0;font-weight:850;line-height:1.15}.work-user-category-checklist small{color:#0f766e;text-align:right;white-space:nowrap;font-size:.74rem;font-weight:850;line-height:1.2}.work-user-category-checklist small em{color:#64748b;margin-top:2px;font-style:normal;font-weight:800;display:block}.work-user-card-footer{color:#475569;padding:0 2px;font-weight:850}.work-billing-report-grid{gap:12px;margin-top:12px;display:grid}.work-report-search{gap:6px;max-width:420px;margin-top:14px;display:grid}.work-report-search input,.work-report-search select{color:var(--navy);border:1px solid #cbd7e6;border-radius:8px;min-height:42px;padding:10px 12px;font-weight:800}.capacity-top-grid{grid-template-columns:minmax(0,1fr) minmax(300px,.34fr);align-items:stretch;gap:12px;display:grid}.performance-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.capacity-planning-controls{background:#f8fbff;border:1px solid #dbe7f3;border-radius:8px;grid-template-columns:minmax(180px,220px) minmax(150px,190px) minmax(220px,280px) 1fr;align-items:end;gap:10px;padding:12px;display:grid}.capacity-planning-controls label{color:var(--ink);gap:6px;font-weight:900;display:grid}.capacity-planning-controls input,.capacity-planning-controls select{color:var(--navy);border:1px solid #cbd7e6;border-radius:8px;min-height:40px;padding:9px 10px;font-weight:800}.capacity-planning-controls>span{color:var(--muted);justify-self:end;padding-bottom:10px;font-weight:900}.capacity-summary-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;display:grid}.capacity-summary-grid>div{background:linear-gradient(135deg,#fff,#f8fbff);border:1px solid #dbe7f3;border-radius:8px;gap:4px;min-height:84px;padding:12px;display:grid;position:relative;overflow:hidden}.capacity-summary-grid>div.attention{background:#fff7ed;border-color:#fed7aa}.capacity-summary-card:before{content:"";border-radius:999px;width:4px;position:absolute;top:12px;bottom:12px;left:0}.capacity-summary-card.capacity{background:#eff6ff;border-color:#bfdbfe}.capacity-summary-card.capacity:before{background:#2563eb}.capacity-summary-card.unavailable{background:#fff7ed;border-color:#fed7aa}.capacity-summary-card.unavailable:before{background:#f59e0b}.capacity-summary-card.planned{background:#eef2ff;border-color:#c7d2fe}.capacity-summary-card.planned:before{background:#4f46e5}.capacity-summary-card.actual{background:#ecfeff;border-color:#a5f3fc}.capacity-summary-card.actual:before{background:#0891b2}.capacity-summary-card.variance{background:#f8fbff;border-color:#dbe7f3}.capacity-summary-card.variance:before{background:#64748b}.capacity-summary-card.deadline,.capacity-summary-card.attention-count{background:#fef2f2;border-color:#fecaca}.capacity-summary-card.deadline:before,.capacity-summary-card.attention-count:before{background:#dc2626}.capacity-summary-card.available{background:#f0fdf4;border-color:#bbf7d0}.capacity-summary-card.available:before{background:#16a34a}.capacity-summary-card.billable{background:#f0fdfa;border-color:#99f6e4}.capacity-summary-card.billable:before{background:#0f766e}.capacity-summary-card.value{background:#fdf4ff;border-color:#f5d0fe}.capacity-summary-card.value:before{background:#a21caf}.capacity-summary-card.attention{background:#fff1f2;border-color:#fda4af}.capacity-summary-grid span{color:var(--muted);font-size:.82rem;font-weight:850}.capacity-summary-grid strong{color:var(--navy);font-size:1.24rem;font-weight:900}.capacity-utilization-panel{background:#effffb;border:1px solid #99f6e4;border-radius:8px;align-content:center;gap:12px;padding:14px;display:grid}.capacity-utilization-panel>div:first-child{gap:4px;display:grid}.capacity-utilization-panel strong{color:var(--navy);font-weight:900}.capacity-utilization-panel span{color:var(--muted);font-weight:800}.capacity-utilization-track,.capacity-row-meter div{background:#dbe7f3;border-radius:999px;height:14px;overflow:hidden}.capacity-utilization-track i,.capacity-row-meter i{border-radius:inherit;background:linear-gradient(90deg,#0f766e,#2563eb);height:100%;display:block}.capacity-deadline-panel{background:linear-gradient(135deg,#fff,#f8fbff);border:1px solid #dbe7f3;border-radius:8px;gap:12px;padding:14px;display:grid}.capacity-deadline-list{gap:10px;display:grid}.capacity-deadline-card{background:#fff;border:1px solid #dbe7f3;border-left:4px solid #38bdf8;border-radius:8px;grid-template-columns:minmax(220px,1.1fr) minmax(260px,.9fr) minmax(240px,.8fr);align-items:center;gap:12px;padding:12px;display:grid}.capacity-deadline-card.healthy{border-left-color:#22c55e}.capacity-deadline-card.near,.capacity-deadline-card.unplanned{background:#fff7ed;border-color:#fed7aa #fed7aa #fed7aa #f59e0b}.capacity-deadline-card.over{background:#fff1f2;border-color:#fecdd3 #fecdd3 #fecdd3 #dc2626}.capacity-deadline-main,.capacity-deadline-action{gap:4px;display:grid}.capacity-deadline-main span{color:#0f766e;text-transform:uppercase;font-size:.78rem;font-weight:900}.capacity-deadline-main strong{color:var(--navy);font-size:1rem;font-weight:900}.capacity-deadline-main small,.capacity-deadline-action small{color:var(--muted);font-weight:800}.capacity-deadline-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.capacity-deadline-metrics span{color:var(--muted);background:#f8fbff;border:1px solid #dbe7f3;border-radius:8px;gap:2px;padding:7px 8px;font-size:.78rem;font-weight:900;display:grid}.capacity-deadline-metrics strong{color:var(--navy);font-size:.95rem}.capacity-deadline-metrics .positive strong{color:#047857}.capacity-deadline-metrics .negative strong{color:#b91c1c}.capacity-deadline-action{justify-items:start}.capacity-variance-panel{background:linear-gradient(135deg,#fff,#f8fbff);border:1px solid #dbe7f3;border-radius:8px;gap:12px;padding:14px;display:grid}.capacity-variance-summary{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.capacity-variance-summary>div{background:#fff;border:1px solid #dbe7f3;border-radius:8px;gap:4px;min-height:72px;padding:11px 12px;display:grid}.capacity-variance-summary>div.attention{background:#fff7ed;border-color:#fed7aa}.capacity-variance-summary span{color:var(--muted);font-size:.82rem;font-weight:850}.capacity-variance-summary strong{color:var(--navy);font-size:1.15rem;font-weight:900}.capacity-variance-table{min-width:1040px}.capacity-variance-table th.number,.capacity-variance-table td.number{text-align:right;white-space:nowrap}.capacity-variance-table .positive{color:#047857;font-weight:900}.capacity-variance-table .warning{color:#b45309;font-weight:900}.capacity-variance-table .negative{color:#b91c1c;font-weight:900}.capacity-detail-tabs{background:#f8fbff;border:1px solid #dbe7f3;border-radius:8px;align-items:center;gap:8px;padding:8px;display:flex}.capacity-detail-tabs button{color:#334155;cursor:pointer;background:#e8eef6;border:0;border-radius:7px;min-height:38px;padding:8px 12px;font-weight:900}.capacity-detail-tabs button.active,.capacity-detail-tabs button:hover{color:#fff;background:linear-gradient(135deg,#0f766e,#2563eb)}.capacity-detail-tabs .secondary{margin-left:auto}.capacity-action-tabs{flex-wrap:wrap}.capacity-action-tabs button:nth-child(n+3){background:#f8fbff;border:1px solid #cbd7e6}.capacity-action-tabs button:nth-child(n+3):hover,.capacity-action-tabs button:nth-child(n+3):focus-visible{color:#0f766e;background:#effffb;border-color:#14b8a6;outline:none}.capacity-focus-banner{color:#0f766e;background:#effffb;border:1px solid #99f6e4;border-radius:8px;padding:10px 12px;font-weight:900}.capacity-calendar-panel{background:#fff;border:1px solid #dbe7f3;border-radius:8px;gap:12px;padding:14px;display:grid}.capacity-calendar-header{justify-content:space-between;align-items:start;gap:12px;display:flex}.capacity-calendar-header h4{color:var(--navy);margin:0;font-size:1.08rem}.capacity-calendar-header p:last-child{color:var(--muted);margin:2px 0 0;font-weight:800}.capacity-calendar-toggle{background:#edf4fb;border:1px solid #dbe7f3;border-radius:8px;gap:4px;padding:4px;display:inline-flex}.capacity-calendar-toggle button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;min-height:34px;padding:7px 12px;font-weight:900}.capacity-calendar-toggle button.active,.capacity-calendar-toggle button:hover{color:#fff;background:#0f766e}.capacity-calendar-legend{background:#f8fbff;border:1px solid #dbe7f3;border-radius:8px;flex-wrap:wrap;align-items:center;gap:10px;padding:9px 10px;display:flex}.capacity-calendar-legend span{color:#475569;align-items:center;gap:7px;font-size:.78rem;font-weight:900;display:inline-flex}.capacity-calendar-legend i{border:1px solid #dbe7f3;border-radius:5px;width:24px;height:14px;display:inline-block}.capacity-calendar-legend .legend-empty i{background:#fff}.capacity-calendar-legend .legend-busy i{background:#f0fdfa;border-color:#99f6e4}.capacity-calendar-legend .legend-near i{background:#fff7ed;border-color:#fed7aa}.capacity-calendar-legend .legend-over i{background:#fff1f2;border-color:#fecdd3;box-shadow:inset 4px 0 #ef4444}.capacity-week-calendar{border:1px solid #dbe7f3;border-radius:8px;overflow:auto}.capacity-week-summary{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.capacity-week-summary button{color:var(--navy);cursor:pointer;text-align:left;background:#f8fbff;border:1px solid #dbe7f3;border-radius:8px;gap:3px;min-height:68px;padding:9px 10px;display:grid}.capacity-week-summary button.has-load{background:#f0fdfa;border-color:#99f6e4}.capacity-week-summary button:hover,.capacity-week-summary button:focus-visible{outline:none;box-shadow:inset 0 0 0 2px #14b8a6}.capacity-week-summary span,.capacity-week-summary small{color:var(--muted);font-size:.76rem;font-weight:850}.capacity-week-summary strong{color:var(--navy);font-size:.95rem;font-weight:900}.capacity-week-header,.capacity-week-row{grid-template-columns:minmax(190px,.8fr) repeat(7,minmax(104px,1fr));min-width:940px;display:grid}.capacity-week-header{z-index:2;background:#f3f7fb;border-bottom:1px solid #dbe7f3;position:sticky;top:0}.capacity-week-header span{color:#344256;gap:1px;padding:9px 10px;font-size:.8rem;font-weight:900;display:grid}.capacity-week-header span:first-child{z-index:3;background:#f3f7fb;position:sticky;left:0}.capacity-week-header span strong{font-size:.82rem}.capacity-week-header span small{color:var(--muted);font-size:.72rem;font-weight:850}.capacity-week-row+.capacity-week-row{border-top:1px solid #e5edf6}.capacity-week-staff{z-index:1;background:#fbfdff;border-right:1px solid #dbe7f3;align-content:center;gap:3px;padding:10px 12px;display:grid;position:sticky;left:0}.capacity-week-staff strong{color:var(--navy);font-weight:900}.capacity-week-staff span{color:var(--muted);font-size:.82rem;font-weight:850}.capacity-calendar-cell,.capacity-month-day{color:var(--navy);cursor:pointer;text-align:left;background:#fff;border:0;border-left:1px solid #edf2f7;gap:3px;min-height:66px;padding:9px 10px;display:grid}.capacity-week-calendar.compact .capacity-calendar-cell{align-content:center}.capacity-week-calendar.compact .capacity-calendar-cell.has-load{align-content:start}.capacity-calendar-cell:hover,.capacity-month-day:hover{background:#effffb;box-shadow:inset 0 0 0 2px #14b8a6}.capacity-calendar-cell>span,.capacity-month-day>span{color:var(--muted);font-size:.78rem;font-weight:900}.capacity-calendar-cell strong,.capacity-month-day strong{color:var(--navy);font-size:.9rem;font-weight:900}.capacity-calendar-cell small,.capacity-calendar-cell em,.capacity-month-day small{color:var(--muted);font-size:.76rem;font-style:normal;font-weight:800}.capacity-calendar-cell.quiet{background:#fff}.capacity-calendar-cell.quiet:hover,.capacity-calendar-cell.quiet:focus-visible{background:#f8fbff}.capacity-calendar-cell .capacity-cell-open{opacity:.55;background:#e2e8f0;border-radius:999px;justify-self:center;width:24px;height:6px;display:block}.capacity-calendar-cell.busy,.capacity-month-day.busy{background:#f0fdfa}.capacity-calendar-cell.near,.capacity-month-day.near{background:#fff7ed}.capacity-calendar-cell.over,.capacity-month-day.over{background:#fff1f2;box-shadow:inset 4px 0 #ef4444}.capacity-month-calendar{gap:8px;display:grid;overflow:auto}.capacity-month-weekdays,.capacity-month-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;min-width:760px;display:grid}.capacity-month-weekdays span{color:#344256;padding:0 4px;font-size:.8rem;font-weight:900}.capacity-month-empty,.capacity-month-day{border:1px solid #dbe7f3;border-radius:8px}.capacity-month-empty{background:#f8fbff;min-height:92px}.capacity-action-grid{grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);align-items:start;gap:12px;display:grid}.capacity-modal-grid{grid-template-columns:1fr}.work-capacity-report{gap:14px;display:grid}.capacity-report-toolbar{background:#f8fbff;border:1px solid #dbe7f3;border-radius:8px;grid-template-columns:minmax(180px,220px) minmax(150px,190px) 1fr;align-items:end;gap:10px;padding:12px;display:grid}.capacity-report-toolbar label{color:var(--ink);gap:6px;font-weight:900;display:grid}.capacity-report-toolbar input{color:var(--navy);border:1px solid #cbd7e6;border-radius:8px;min-height:40px;padding:9px 10px;font-weight:800}.capacity-report-toolbar>span{color:var(--muted);justify-self:end;padding-bottom:10px;font-weight:900}.work-capacity-report-grid{grid-template-columns:minmax(260px,.28fr) minmax(0,1fr);align-items:start;gap:12px;display:grid}.work-capacity-alert-list{border-top:1px solid #bfe7d7;gap:8px;padding-top:10px;display:grid}.work-capacity-alert-list>strong{color:var(--navy);font-size:.9rem}.work-capacity-alert-list div{background:#fff;border:1px solid #dbe7f3;border-radius:8px;gap:3px;padding:9px 10px;display:grid}.work-capacity-alert-list div span{color:var(--navy);font-weight:900}.work-capacity-alert-list div small,.work-capacity-alert-list p{color:var(--muted);margin:0;font-weight:800}.work-capacity-report-table{min-width:1040px}.work-capacity-report-table tbody tr:nth-child(odd) td{background:#f8fbff}.work-capacity-report-table tbody tr:nth-child(2n) td{background:#fff}.work-capacity-report-table tbody tr:hover td{background:#eef6ff}.work-capacity-report-table tbody tr.capacity-near-full td{background:#fff7ed}.work-capacity-report-table tbody tr.capacity-overloaded td{background:#fff1f2}.work-capacity-report-table tbody tr.capacity-near-full:hover td{background:#ffedd5}.work-capacity-report-table tbody tr.capacity-overloaded:hover td{background:#ffe4e6}.work-capacity-report-table tbody tr td:first-child{border-left:4px solid #0000}.work-capacity-report-table tbody tr:nth-child(odd) td:first-child{border-left-color:#bfdbfe}.work-capacity-report-table tbody tr.capacity-near-full td:first-child{border-left-color:#f59e0b}.work-capacity-report-table tbody tr.capacity-overloaded td:first-child{border-left-color:#dc2626}.work-utilization-mix{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;display:grid}.work-utilization-card{background:linear-gradient(135deg,#fff,#f8fbff);border:1px solid #dbe7f3;border-radius:8px;gap:9px;min-height:130px;padding:12px;display:grid}.work-utilization-card.clientBillable{background:#f0fdf4;border-color:#86efac}.work-utilization-card.training{background:#eff6ff;border-color:#bfdbfe}.work-utilization-card.leave{background:#f8fafc;border-color:#cbd5e1}.work-utilization-card.rework{background:#fff7ed;border-color:#fed7aa}.work-utilization-card.unpaidSupport{background:#fdf2f8;border-color:#fbcfe8}.work-utilization-card>div:first-child{gap:3px;display:grid}.work-utilization-card span{color:var(--muted);font-size:.82rem;font-weight:900}.work-utilization-card strong{color:var(--navy);font-size:1.18rem;font-weight:900}.work-utilization-card p{color:var(--muted);margin:0;font-size:.82rem;font-weight:800;line-height:1.25}.capacity-balancing-panel{background:linear-gradient(135deg,#fff,#f8fffc);border:1px solid #cfe5dc;border-radius:8px;gap:12px;padding:14px;display:grid}.capacity-balancing-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.capacity-balancing-header h4{color:var(--navy);margin:2px 0;font-size:1.1rem}.capacity-balancing-header p{color:var(--muted);margin:0;font-weight:800}.capacity-balancing-header>span{color:#075985;white-space:nowrap;background:#e0f2fe;border-radius:999px;padding:7px 10px;font-weight:900}.capacity-balancing-grid{grid-template-columns:1fr;align-items:end;gap:10px;display:grid}.capacity-balancing-grid label{color:var(--ink);gap:6px;font-weight:900;display:grid}.capacity-balancing-grid select{color:var(--navy);border:1px solid #cbd7e6;border-radius:8px;min-height:40px;padding:9px 10px;font-weight:800}.capacity-balancing-actions{justify-content:stretch;gap:8px;display:flex}.capacity-balancing-actions button{flex:1 1 0}.capacity-plan-panel{background:linear-gradient(135deg,#fff,#f7fffb);border:1px solid #bfe7d7;border-radius:8px;gap:12px;padding:14px;display:grid}.capacity-calendar-adjustment-panel{background:linear-gradient(135deg,#fff,#f8fbff);border-color:#c7ddf4;grid-column:1/-1}.capacity-plan-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:10px;display:grid}.capacity-plan-grid label{color:var(--ink);gap:6px;font-weight:900;display:grid}.capacity-plan-grid input,.capacity-plan-grid select{color:var(--navy);border:1px solid #cbd7e6;border-radius:8px;min-height:40px;padding:9px 10px;font-weight:800}.capacity-static-field{background:#effffb;border:1px solid #99f6e4;border-radius:8px;gap:3px;min-height:72px;padding:9px 10px;display:grid}.capacity-static-field span{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:900}.capacity-static-field strong{color:var(--navy);font-weight:900}.capacity-static-field small{color:var(--muted);font-weight:800}.capacity-plan-notes{grid-column:span 2;min-width:0}.capacity-plan-submit{min-height:40px}.capacity-plan-list{gap:8px;display:grid}.capacity-plan-item{background:#fff;border:1px solid #dbe7f3;border-radius:8px;grid-template-columns:minmax(180px,1fr) auto minmax(210px,auto) auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.capacity-plan-item>div:first-child{gap:3px;display:grid}.capacity-plan-item strong{color:var(--navy)}.capacity-plan-item span,.capacity-plan-item time{color:var(--muted);font-weight:800}.capacity-plan-metrics{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.capacity-plan-metrics span{background:#f8fbff;border:1px solid #dbe7f3;border-radius:8px;padding:6px 8px}.capacity-plan-metrics .positive{color:#047857}.capacity-plan-metrics .negative{color:#b91c1c}.capacity-staff-panel{background:linear-gradient(135deg,#fff,#f8fbff);border:1px solid #dbe7f3;border-radius:8px;gap:12px;padding:14px;display:grid}.capacity-planning-table{min-width:900px}.capacity-planning-table th.number,.capacity-planning-table td.number{text-align:right;white-space:nowrap}.capacity-planning-table tr.capacity-overloaded{background:#fff1f2;box-shadow:inset 4px 0 #dc2626}.capacity-planning-table tr.capacity-near-full{background:#fff7ed;box-shadow:inset 4px 0 #f59e0b}.capacity-assignment-cell,.capacity-hour-stack,.capacity-metric-stack{gap:3px;display:grid}.capacity-assignment-cell strong,.capacity-hour-stack strong,.capacity-metric-stack strong{color:var(--navy);font-weight:900}.capacity-assignment-cell span,.capacity-hour-stack span,.capacity-metric-stack span,.capacity-row-meter small,.performance-user-cell small{color:var(--muted);font-size:.84rem;font-weight:800}.capacity-metric-stack{grid-template-columns:repeat(2,minmax(0,1fr));min-width:260px}.capacity-metric-stack span{background:#f8fbff;border:1px solid #dbe7f3;border-radius:8px;padding:7px 8px}.capacity-metric-stack .capacity-planned-metric{grid-template-columns:auto 1fr auto;align-items:center;gap:4px;display:grid}.capacity-plan-focus-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#0f766e,#2563eb);border:0;border-radius:999px;justify-content:center;align-items:center;width:24px;height:24px;font-size:1rem;font-weight:900;line-height:1;display:inline-flex}.capacity-plan-focus-button:hover,.capacity-plan-focus-button:focus-visible{background:linear-gradient(135deg,#0d9488,#1d4ed8);outline:none;box-shadow:0 0 0 3px #2563eb2e}.capacity-planning-table .positive{color:#047857;font-weight:900}.capacity-planning-table .negative{color:#b91c1c;font-weight:900}.capacity-row-meter{gap:5px;min-width:130px;display:grid}.capacity-row-meter span{color:var(--navy);font-weight:900}.capacity-status-pill{white-space:nowrap;border-radius:999px;padding:5px 9px;font-size:.8rem;font-weight:900;display:inline-flex}.capacity-status-pill.available{color:#075985;background:#e0f2fe}.capacity-status-pill.healthy{color:#166534;background:#dcfce7}.capacity-status-pill.near{color:#9a3412;background:#ffedd5}.capacity-status-pill.over{color:#991b1b;background:#fee2e2}.capacity-status-pill.warning{color:#92400e;background:#fef3c7}.capacity-alert{color:#b45309;margin-top:6px;font-size:.78rem;font-weight:900;display:block}.performance-filter-bar{background:#f8fbff;border:1px solid #dbe7f3;border-radius:8px;grid-template-columns:repeat(2,minmax(180px,220px)) max-content max-content minmax(180px,220px) minmax(220px,1fr);align-items:end;gap:10px;padding:12px;display:grid}.performance-filter-bar label{color:var(--ink);gap:6px;min-width:0;font-weight:900;display:grid}.performance-filter-bar input,.performance-filter-bar select{box-sizing:border-box;color:var(--navy);border:1px solid #cbd7e6;border-radius:8px;width:100%;min-height:40px;padding:9px 10px;font-weight:800}.performance-filter-bar select:disabled{color:#718096;background:#eef3f8}.performance-filter-bar .comparison-toggle{color:var(--navy);cursor:pointer;font:inherit;white-space:nowrap;background:#fff;border:1px solid #dbe7f3;border-radius:8px;justify-content:center;align-self:stretch;align-items:center;min-width:132px;min-height:40px;padding:8px 10px;font-weight:900;display:flex}.performance-filter-bar .comparison-toggle:hover,.performance-filter-bar .comparison-toggle.active{color:#fff;background:linear-gradient(135deg,#0f766e,#2563eb);border-color:#0000}.performance-filter-bar>span{color:var(--muted);justify-self:end;padding-bottom:10px;font-size:.9rem;font-weight:800}.performance-summary-grid>div{background:linear-gradient(135deg,#f8fbff 0%,#fff 100%);border:1px solid #dbe7f3;border-radius:8px;gap:4px;padding:12px;display:grid}.performance-summary-grid span{color:var(--muted);font-size:.84rem;font-weight:800}.performance-summary-grid strong{color:var(--navy);font-size:1.35rem;font-weight:900}.performance-comparison-panel{background:linear-gradient(135deg,#fffdf6 0%,#f7fbff 100%);border:1px solid #f1d79c;border-radius:8px;gap:12px;padding:14px;display:grid}.performance-comparison-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.performance-comparison-header h4{color:var(--navy);margin:2px 0;font-size:1.1rem}.performance-comparison-header p{color:var(--muted);margin:0;font-size:.88rem;font-weight:800}.performance-comparison-header>span{color:#1e3a8a;white-space:nowrap;background:#e0ecff;border-radius:999px;padding:8px 12px;font-weight:900}.performance-comparison-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.performance-comparison-grid>div{background:#fff;border:1px solid #dbe7f3;border-radius:8px;gap:5px;padding:12px;display:grid}.performance-comparison-grid span{color:var(--muted);font-size:.82rem;font-weight:900}.performance-comparison-grid strong{color:var(--navy);font-size:1.2rem;font-weight:900}.performance-comparison-grid small{font-size:.84rem;font-weight:900}.performance-comparison-grid small.positive{color:#047857}.performance-comparison-grid small.negative{color:#b45309}.performance-comparison-grid small.neutral{color:var(--muted)}.performance-comparison-chart{gap:10px;display:grid}.performance-comparison-row{background:#fff;border:1px solid #dbe7f3;border-radius:8px;grid-template-columns:minmax(150px,220px) minmax(0,1fr);gap:14px;padding:12px;display:grid}.performance-comparison-label{gap:5px;display:grid}.performance-comparison-label strong{color:var(--navy);font-weight:900}.performance-comparison-label small{font-weight:900}.performance-comparison-label small.positive{color:#047857}.performance-comparison-label small.negative{color:#b45309}.performance-comparison-label small.neutral{color:var(--muted)}.performance-comparison-bars{gap:8px;display:grid}.monthly-performance-panel,.executive-planning-panel,.project-budget-executive-panel,.project-performance-panel,.task-company-report-panel,.performance-user-summary-panel{background:linear-gradient(135deg,#f8fffc 0%,#f8fbff 100%);border:1px solid #cfe5dc;border-radius:8px;gap:14px;padding:14px;display:grid}.executive-chart-tabs{background:#eef4fb;border:1px solid #d6e2ef;border-radius:8px;gap:4px;padding:4px;display:inline-flex}.executive-chart-tabs button{color:#334155;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;gap:2px;min-width:150px;min-height:42px;padding:7px 12px;font-weight:900;display:grid}.executive-chart-tabs button small{color:#64748b;font-size:.72rem;font-weight:850}.executive-chart-tabs button.active{color:#fff;background:#0f766e;box-shadow:0 8px 18px #0f766e29}.executive-chart-tabs button.active small{color:#ffffffd1}.project-budget-executive-chart{gap:10px;display:grid}.project-budget-executive-row{background:#fff;border:1px solid #dbe7f3;border-left:4px solid #94a3b8;border-radius:8px;grid-template-columns:minmax(180px,.7fr) minmax(280px,1.3fr) minmax(130px,.42fr);align-items:center;gap:14px;padding:12px;display:grid}.project-budget-executive-row.healthy{border-left-color:#0f766e}.project-budget-executive-row.near{background:#fffaf0;border-color:#f3d38b #f3d38b #f3d38b #f59e0b}.project-budget-executive-row.over{background:#fff5f5;border-color:#f2b8b8 #f2b8b8 #f2b8b8 #dc2626}.project-budget-executive-row.missing{background:#f8fafc;border-left-color:#64748b}.project-budget-executive-label,.project-budget-executive-status,.project-budget-executive-bars{gap:6px;display:grid}.project-budget-executive-label strong{color:var(--navy);font-weight:900}.project-budget-executive-label span,.project-budget-executive-status small{color:var(--muted);font-size:.82rem;font-weight:850}.project-budget-bar-line{grid-template-columns:58px minmax(0,1fr) minmax(95px,auto);align-items:center;gap:8px;display:grid}.project-budget-bar-line span{color:#64748b;font-size:.78rem;font-weight:900}.project-budget-bar-line div{background:#e8eef6;border-radius:999px;height:12px;overflow:hidden}.project-budget-bar-line i{border-radius:inherit;height:100%;display:block}.project-budget-bar-line.budget i{background:#2563eb}.project-budget-bar-line.actual i{background:#0f766e}.project-budget-bar-line strong{color:var(--navy);text-align:right;font-size:.86rem;font-weight:900}.project-budget-executive-status{text-align:right;justify-items:end}.project-budget-executive-status span{color:#334155;background:#e8eef6;border-radius:999px;padding:6px 9px;font-size:.76rem;font-weight:900}.project-budget-executive-row.healthy .project-budget-executive-status span{color:#166534;background:#dcfce7}.project-budget-executive-row.near .project-budget-executive-status span{color:#92400e;background:#fef3c7}.project-budget-executive-row.over .project-budget-executive-status span{color:#991b1b;background:#fee2e2}.project-budget-executive-status strong{color:var(--navy);font-size:1rem;font-weight:900}.project-budget-planner{gap:14px;display:grid}.project-budget-controls{background:#f8fbff;border:1px solid #dbe7f3;border-radius:8px;grid-template-columns:minmax(220px,1.15fr) minmax(220px,1.05fr) minmax(200px,1fr) minmax(130px,.55fr) minmax(145px,.65fr) minmax(145px,.65fr);gap:10px;padding:12px;display:grid}.project-budget-controls label{color:var(--ink);align-content:start;gap:6px;font-weight:900;display:grid}.project-budget-controls input,.project-budget-controls select{color:var(--navy);border:1px solid #cbd7e6;border-radius:8px;height:42px;min-height:40px;padding:9px 10px;font-weight:850}.project-budget-group-picker{border:0;align-self:start;min-width:0;margin:0;padding:0;position:relative}.project-budget-group-picker legend{color:var(--ink);margin-bottom:6px;padding:0;font-weight:900}.project-budget-group-dropdown{position:relative}.project-budget-group-trigger{color:var(--navy);cursor:pointer;text-align:left;background:#fff;border:1px solid #cbd7e6;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px;width:100%;height:42px;min-height:42px;padding:7px 34px 7px 10px;display:grid;position:relative}.project-budget-group-trigger:after{border-left:5px solid #0000;border-right:5px solid #0000;border-top:6px solid var(--navy);content:"";position:absolute;top:50%;right:12px;transform:translateY(-50%)}.project-budget-group-trigger[aria-expanded=true]{border-color:#0f766e;box-shadow:0 0 0 3px #0f766e1f}.project-budget-group-trigger span,.project-budget-group-trigger small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.project-budget-group-trigger span{font-weight:900}.project-budget-group-trigger small{color:var(--muted);font-size:.72rem;font-weight:800}.project-budget-group-menu{z-index:25;background:#fff;border:1px solid #cbd7e6;border-radius:8px;flex-wrap:wrap;gap:6px;max-height:220px;margin-top:6px;padding:8px;display:flex;position:absolute;top:100%;left:0;right:0;overflow:auto;box-shadow:0 14px 30px #0f172a24}.project-budget-group-picker label{color:var(--navy);cursor:pointer;text-align:left;white-space:nowrap;background:#f8fbff;border:1px solid #dbe7f3;border-radius:999px;align-items:center;gap:6px;min-height:30px;padding:5px 9px;font-size:.78rem;font-weight:850;line-height:1.15;display:inline-flex}.project-budget-group-picker label:has(input:checked){color:#0f766e;background:#ecfdf5;border-color:#6ee7b7;box-shadow:inset 0 0 0 1px #0f766e29}.project-budget-group-picker input{accent-color:#0f766e;flex:none;width:14px;height:14px;min-height:auto;padding:0}.project-budget-group-picker span{text-overflow:ellipsis;max-width:150px;display:inline-block;overflow:hidden}.project-budget-group-picker p{color:var(--muted);margin:0;font-weight:850}.project-budget-actions{background:#f8fbff;border:1px solid #dbe7f3;border-radius:8px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.project-budget-actions>div{gap:4px;display:grid}.project-budget-form-note,.project-budget-form-warning{font-size:.82rem;font-weight:850}.project-budget-form-note{color:var(--muted)}.project-budget-form-warning{color:#9a3412}.project-budget-register{background:#fff;border:1px solid #dbe7f3;border-radius:8px;gap:12px;padding:12px;display:grid}.project-budget-register-list{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:8px;display:grid}.project-budget-register-list button{color:var(--ink);cursor:pointer;text-align:left;background:#f8fbff;border:1px solid #dbe7f3;border-left:4px solid #94a3b8;border-radius:8px;gap:3px;min-height:86px;padding:10px 12px;display:grid}.project-budget-register-list button:hover,.project-budget-register-list button:focus-visible{background:#eff6ff;border-color:#93c5fd;outline:0}.project-budget-register-list button.active{background:#effffb;border-color:#99f6e4 #99f6e4 #99f6e4 #0f766e}.project-budget-register-list strong{color:var(--navy);font-weight:900}.project-budget-register-list span,.project-budget-register-list small{color:var(--muted);font-weight:850}.project-budget-register-list small{font-size:.78rem}.project-budget-status{white-space:nowrap;border-radius:999px;justify-content:center;align-self:center;padding:7px 10px;font-size:.78rem;font-weight:900;line-height:1;display:inline-flex}.project-budget-status.healthy{color:#166534;background:#dcfce7}.project-budget-status.near{color:#92400e;background:#fef3c7}.project-budget-status.over{color:#991b1b;background:#fee2e2}.project-budget-status.neutral{color:#334155;background:#e8eef6}.project-budget-guardrail{background:linear-gradient(135deg,#effffb,#f8fbff);border:1px solid #99f6e4;border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(260px,.4fr);align-items:center;gap:16px;padding:14px;display:grid}.project-budget-guardrail.near{background:#fffaf0;border-color:#fde68a}.project-budget-guardrail.over{background:#fff1f2;border-color:#fecdd3}.project-budget-guardrail h4{color:var(--navy);margin:0;font-size:1.15rem;font-weight:900}.project-budget-scope{color:#0f766e;margin-top:3px;font-size:.85rem;font-weight:900;display:inline-block}.project-budget-guardrail p{color:var(--muted);margin:4px 0 0;font-weight:850}.project-budget-meter{gap:7px;display:grid}.project-budget-meter span{color:var(--navy);text-align:right;font-weight:900}.project-budget-meter div{background:#dbe7f3;border-radius:999px;height:14px;overflow:hidden}.project-budget-meter i{border-radius:inherit;background:linear-gradient(90deg,#0f766e,#22c55e);height:100%;display:block}.project-budget-guardrail.near .project-budget-meter i{background:linear-gradient(90deg,#f59e0b,#facc15)}.project-budget-guardrail.over .project-budget-meter i{background:linear-gradient(90deg,#dc2626,#f97316)}.project-budget-meter small{color:var(--muted);text-align:right;font-weight:800}.project-budget-summary-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.project-budget-summary-grid>div{background:#fff;border:1px solid #dbe7f3;border-radius:8px;gap:4px;min-height:74px;padding:11px 12px;display:grid}.project-budget-summary-grid>div.attention{background:#fff7ed;border-color:#fed7aa}.project-budget-summary-grid span{color:var(--muted);font-size:.82rem;font-weight:850}.project-budget-summary-grid strong{color:var(--navy);font-size:1.08rem;font-weight:900}.project-budget-table-wrap{border:1px solid #dbe7f3;border-radius:8px;overflow-x:auto}.project-budget-table{border-collapse:collapse;width:100%;min-width:1040px}.project-budget-table th,.project-budget-table td{color:var(--ink);text-align:left;vertical-align:middle;border-bottom:1px solid #dbe7f3;padding:12px}.project-budget-table th{color:#334155;letter-spacing:0;text-transform:uppercase;background:#eef3f8;font-size:.78rem}.project-budget-table tbody tr:last-child td{border-bottom:0}.project-budget-table tbody tr.near{background:#fffaf0}.project-budget-table tbody tr.over{background:#fff1f2}.project-budget-table td strong,.project-budget-table td span{display:block}.project-budget-table td span{color:var(--muted);margin-top:3px;font-size:.82rem;font-weight:850}.project-budget-table .number,.project-budget-table .amount{text-align:right}.performance-detail-tabs{background:#f8fbff;border:1px solid #dbe7f3;border-radius:8px;align-items:center;gap:8px;padding:8px;display:flex}.performance-detail-tabs button{color:#334155;cursor:pointer;text-align:left;background:#e8eef6;border:1px solid #0000;border-radius:7px;gap:2px;min-height:46px;padding:8px 14px;display:grid}.performance-detail-tabs button:hover,.performance-detail-tabs button:focus-visible{background:#eff6ff;border-color:#93c5fd;outline:0}.performance-detail-tabs button.active{color:#fff;background:linear-gradient(135deg,#0f766e,#2563eb)}.performance-detail-tabs button small{color:inherit;opacity:.82;font-size:.78rem;font-weight:800}.performance-table-wrap{border:1px solid #dbe7f3;border-radius:8px;overflow-x:auto}.performance-table{border-collapse:collapse;width:100%;min-width:980px}.performance-table th,.performance-table td{color:var(--ink);text-align:left;vertical-align:middle;border-bottom:1px solid #dbe7f3;padding:12px}.performance-table th{color:#334155;letter-spacing:0;text-transform:uppercase;font-size:.78rem}.performance-table tbody tr:last-child td{border-bottom:0}.performance-table tbody tr.selected{box-shadow:inset 4px 0 0 var(--accent);background:#ecfdf5}.performance-user-cell,.performance-money,.performance-latest{gap:3px;display:grid}.performance-user-cell strong,.performance-latest strong{color:var(--navy);font-weight:900}.performance-user-cell span,.performance-money span,.performance-latest span{color:var(--muted);font-size:.86rem;font-weight:700}.performance-money strong{color:var(--accent-dark);font-weight:900}.performance-money.unbilled strong{color:#b45309}.performance-pill{color:#1d4ed8;white-space:nowrap;background:#eef6ff;border-radius:999px;align-items:center;padding:5px 9px;font-size:.82rem;font-weight:900;display:inline-flex}.performance-table button.compact{border-radius:8px;min-height:36px;padding:8px 14px}.work-billing-report-card{background:#fff;border:1px solid #dbe7f3;border-radius:8px;padding:14px}.work-billing-report-card>div:first-child{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.work-billing-report-card h4{color:var(--navy);font-size:1.05rem}.work-billing-audit{background:#fff;border:1px solid #dbe7f3;border-radius:8px;gap:14px;margin-top:14px;padding:16px;display:grid}.work-billing-audit-row{border-top:1px solid #e2edf7;gap:12px;padding-top:10px;display:grid}.work-billing-audit-company,.work-billing-invoice-row{grid-template-columns:minmax(180px,1fr) repeat(3,minmax(120px,auto));align-items:center;gap:10px;display:grid}.work-billing-audit-company em{color:#0f766e;font-style:normal;font-weight:900}.ar-customer-toolbar .work-report-search{width:min(100%,440px);max-width:440px;margin:0}.work-billing-invoice-list{gap:8px;display:grid}.work-billing-invoice-row{background:#f8fbff;border:1px solid #dbe7f3;border-radius:8px;padding:10px}.work-billing-invoice-row div{gap:2px;display:grid}.work-billing-invoice-row span{color:#52617a}.work-entry-form,.work-summary-panel,.work-category-list{background:#fff;border:1px solid #d7e4f2;border-radius:12px;padding:16px;box-shadow:0 10px 26px #0f172a0b}.work-entry-form{gap:12px;display:grid}.work-entry-form>strong,.work-entry-form-header>strong{color:var(--navy);padding-bottom:2px;font-size:1.02rem}.work-entry-form-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.work-week-entry-form{overflow:hidden}.work-week-actions{flex-wrap:wrap;justify-content:flex-end;align-items:end;gap:10px;display:flex}.work-week-actions label{color:var(--ink);gap:5px;min-width:170px;font-weight:900;display:grid}.work-week-actions input,.work-week-actions select{color:var(--navy);border:1px solid #cbd7e6;border-radius:8px;min-height:38px;padding:8px 10px;font-weight:850}.work-week-actions select{min-width:260px}.work-week-bulk-actions{background:linear-gradient(135deg,#f8fbff,#f0fdfa);border:1px solid #cde8f5;border-radius:12px;grid-template-columns:minmax(220px,.8fr) minmax(0,1.4fr);align-items:center;gap:14px;margin:12px 0 14px;padding:12px;display:grid}.work-week-bulk-actions>div:first-child{gap:4px;display:grid}.work-week-bulk-actions span{color:var(--teal);letter-spacing:.02em;text-transform:uppercase;font-size:.76rem;font-weight:950}.work-week-bulk-actions strong{color:var(--navy);font-size:.98rem;font-weight:950}.work-week-bulk-actions small{color:var(--muted);font-weight:800}.work-week-bulk-actions>div:last-child{flex-wrap:wrap;justify-content:flex-end;align-items:end;gap:8px;display:flex}.work-week-bulk-actions button,.work-week-bulk-actions select{min-height:36px}.work-week-bulk-actions button{white-space:nowrap}.work-week-bulk-actions button.danger:not(:disabled){color:#991b1b;border-color:#fecaca}.work-week-bulk-actions label{color:var(--ink);text-transform:uppercase;gap:4px;min-width:145px;font-size:.75rem;font-weight:950;display:grid}.work-week-bulk-actions select{color:var(--navy);text-transform:none;background:#fff;border:1px solid #cbd7e6;border-radius:8px;padding:6px 10px;font-size:.85rem;font-weight:850}.work-week-company-picker{background:linear-gradient(135deg,#f0fdfa,#f8fbff);border:1px solid #b6f0df;border-radius:12px;grid-template-columns:minmax(0,1fr) minmax(260px,.42fr);align-items:end;gap:16px;margin:14px 0;padding:14px;display:grid}.work-week-company-picker div,.work-week-company-picker label{gap:5px;display:grid}.work-week-company-picker span{color:var(--teal);letter-spacing:.02em;text-transform:uppercase;font-size:.78rem;font-weight:950}.work-week-company-picker strong{color:var(--navy);font-size:1.2rem}.work-week-company-picker small{color:#53637a;font-weight:750}.work-week-company-picker label{color:var(--ink);font-weight:900}.work-week-company-picker-compact{background:0 0;border-color:#dbe7f3;grid-template-columns:minmax(260px,420px);justify-content:end;align-items:center;margin:12px 0;padding:12px}.work-week-company-picker-compact label{width:min(420px,100%)}.work-week-company-picker select{color:var(--navy);border:1px solid #b9cce2;border-radius:8px;min-height:42px;padding:8px 10px;font-weight:900}.staff-utilization-card,.staff-deadline-card{background:#fff;border:1px solid #dbe7f3;border-radius:12px;gap:12px;padding:14px;display:grid}.staff-utilization-card.on-track{background:linear-gradient(135deg,#ecfdf5,#fff);border-color:#86efac}.staff-utilization-card.under{background:linear-gradient(135deg,#fff7ed,#fff);border-color:#fdba74}.staff-utilization-card.over,.staff-utilization-card.unplanned{background:linear-gradient(135deg,#fff1f2,#fff);border-color:#fecdd3}.staff-insight-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.staff-insight-header h4{color:var(--navy);margin:0;font-size:1rem}.staff-insight-header>span{color:#075985;white-space:nowrap;background:#e0f2fe;border-radius:999px;padding:6px 10px;font-size:.78rem;font-weight:950}.staff-utilization-card.on-track .staff-insight-header>span{color:#166534;background:#dcfce7}.staff-utilization-card.under .staff-insight-header>span{color:#9a3412;background:#ffedd5}.staff-utilization-card.over .staff-insight-header>span,.staff-utilization-card.unplanned .staff-insight-header>span{color:#991b1b;background:#fee2e2}.staff-utilization-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.staff-utilization-metrics div{background:#f8fbff;border:1px solid #dbe7f3;border-radius:9px;gap:3px;padding:10px;display:grid}.staff-utilization-metrics small{color:#64748b;font-size:.75rem;font-weight:900}.staff-utilization-metrics strong{color:var(--navy);font-size:1rem}.staff-utilization-bar{background:#dbeafe;border-radius:999px;height:12px;overflow:hidden}.staff-utilization-bar span{background:linear-gradient(90deg,#0f766e,#2563eb);height:100%;display:block}.staff-task-utilization-list,.staff-deadline-list{gap:8px;display:grid}.staff-deadline-list{max-height:260px;padding-right:4px;overflow:auto}.staff-task-utilization-list p,.staff-deadline-empty{color:#64748b;border:1px dashed #cbd7e6;border-radius:9px;margin:0;padding:10px;font-weight:850}.staff-task-utilization-row,.staff-deadline-item{background:#f8fbff;border:1px solid #dbe7f3;border-radius:9px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;padding:10px;display:grid}.staff-task-utilization-row strong,.staff-deadline-item strong{color:var(--navy);display:block}.staff-task-utilization-row small,.staff-deadline-item small{color:#64748b;font-size:.78rem;font-weight:850}.staff-task-utilization-row>span,.staff-deadline-item>span{color:#075985;white-space:nowrap;background:#e0f2fe;border-radius:999px;padding:5px 9px;font-size:.78rem;font-weight:950}.staff-task-utilization-row.on-track>span{color:#166534;background:#dcfce7}.staff-task-utilization-row.under>span{color:#9a3412;background:#ffedd5}.staff-task-utilization-row.over>span,.staff-task-utilization-row.unplanned>span{color:#991b1b;background:#fee2e2}.staff-deadline-card{background:linear-gradient(135deg,#f8fbff,#fff);overflow:hidden}.staff-deadline-carousel{gap:10px;display:grid}.staff-deadline-carousel-controls{justify-content:center;align-items:center;gap:10px;display:flex}.staff-deadline-carousel-controls>button{color:#1d4ed8;background:#dbeafe;border-color:#bfdbfe;min-width:0;min-height:32px;padding:6px 12px}.staff-deadline-carousel-controls>button:hover,.staff-deadline-carousel-controls>button:focus-visible{color:#fff;background:#1d4ed8;border-color:#1d4ed8}.staff-deadline-carousel-controls>div{align-items:center;gap:6px;display:flex}.staff-deadline-carousel-controls>div button{background:#cbd5e1;border:0;border-radius:999px;width:8px;min-width:0;height:8px;min-height:0;padding:0}.staff-deadline-carousel-controls>div button.active{background:#0f766e;width:22px}.staff-deadline-item p{color:#53637a;margin:4px 0 0;font-size:.82rem;font-weight:750}.staff-deadline-item.soon{background:#fff7ed;border-color:#fdba74}.staff-deadline-item.overdue{background:#fff1f2;border-color:#fecdd3}.staff-deadline-item.soon>span{color:#9a3412;background:#ffedd5}.staff-deadline-item.overdue>span{color:#991b1b;background:#fee2e2}.work-week-exception-filter-bar{background:#fff;border:1px solid #dbe7f3;border-radius:12px;grid-template-columns:minmax(180px,.75fr) minmax(0,2fr);align-items:center;gap:12px;margin-bottom:12px;padding:10px 12px;display:grid}.work-week-exception-filter-bar>div:first-child{gap:2px;display:grid}.work-week-exception-filter-bar>div:first-child span{color:#0f766e;letter-spacing:.02em;text-transform:uppercase;font-size:.72rem;font-weight:950}.work-week-exception-filter-bar>div:first-child strong{color:var(--navy);font-size:.92rem;font-weight:950}.work-week-exception-filter-buttons{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.work-week-exception-filter-buttons button{color:#334155;cursor:pointer;white-space:nowrap;background:#f8fbff;border:1px solid #dbe7f3;border-radius:999px;align-items:center;gap:7px;min-height:34px;padding:6px 10px;font-size:.78rem;font-weight:900;display:inline-flex}.work-week-exception-filter-buttons button strong{color:#334155;background:#e2e8f0;border-radius:999px;justify-content:center;align-items:center;min-width:22px;padding:2px 6px;font-size:.72rem;display:inline-flex}.work-week-exception-filter-buttons button.active{color:#fff;background:#0f766e;border-color:#0f766e}.work-week-exception-filter-buttons button.active strong{color:#fff;background:#fff3}.work-week-exception-filter-buttons button:disabled{color:#94a3b8;cursor:not-allowed;opacity:.7}.work-week-grid-display-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin:-4px 0 12px;display:flex}.work-week-grid-display-controls button{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd7e6;border-radius:999px;align-items:center;gap:7px;min-height:32px;padding:6px 10px;font-size:.78rem;font-weight:900;display:inline-flex}.work-week-grid-display-controls button strong{color:#334155;background:#e2e8f0;border-radius:999px;justify-content:center;align-items:center;min-width:20px;padding:1px 6px;font-size:.7rem;display:inline-flex}.work-week-grid-display-controls button.active{color:#0f766e;background:#ecfdf5;border-color:#5eead4}.work-week-grid-display-controls button.active strong{color:#0f766e;background:#ccfbf1}.work-week-mobile-entry{display:none}.work-week-entry-table{background:#fff;border:1px solid #dbe7f3;border-radius:12px;gap:0;font-size:.92rem;display:grid;overflow-x:auto}.work-week-entry-head,.work-week-entry-week-nav,.work-week-entry-row{grid-template-columns:minmax(210px, 1.35fr) repeat(var(--work-week-day-count,7), minmax(88px, .5fr)) minmax(86px, .55fr) minmax(86px, .45fr);min-width:calc(360px + (var(--work-week-day-count,7) * 96px));gap:8px;display:grid}.work-week-entry-week-nav{background:linear-gradient(135deg,#f8fbff,#f0fdfa);border-bottom:1px solid #dbe7f3;align-items:center;padding:10px 12px}.work-week-switcher{grid-column:2 / span var(--work-week-day-count,7);justify-content:center;align-items:center;gap:8px;display:flex}.work-week-switcher strong{color:var(--navy);text-align:center;background:#fff;border:1px solid #bfdbfe;border-radius:999px;min-width:220px;padding:7px 12px;font-size:.82rem;font-weight:950}.work-week-switcher button{color:#1d4ed8;white-space:nowrap;background:#dbeafe;border-color:#bfdbfe;min-width:0;min-height:32px;padding:6px 10px;font-size:.76rem}.work-week-switcher button:nth-of-type(2),.work-week-switcher button:hover,.work-week-switcher button:focus-visible{color:#fff;background:#0f766e;border-color:#0f766e}.work-week-entry-head{color:#334155;letter-spacing:.02em;text-transform:uppercase;background:#f1f8ff;border-bottom:1px solid #dbe7f3;padding:9px 12px;font-size:.74rem;font-weight:950}.work-week-entry-head span{gap:2px;display:grid}.work-week-entry-head .work-week-task-column-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.work-week-task-column-head>span{display:block}.work-week-entry-head .work-week-add-task-button{color:#0f766e;text-transform:none;white-space:nowrap;background:#fff;border-color:#99f6e4;min-width:0;min-height:30px;padding:6px 9px;font-size:.72rem}.work-week-entry-head .work-week-add-task-button:hover:not(:disabled),.work-week-entry-head .work-week-add-task-button:focus-visible:not(:disabled){color:#fff;background:#0f766e;border-color:#0f766e}.work-week-entry-head small{color:#64748b;text-transform:none;font-size:.68rem;font-weight:850}.work-week-entry-head .work-week-day-heading{align-content:start;gap:4px;min-height:78px}.work-week-entry-head .work-week-day-heading strong{color:var(--navy);font-size:.74rem;line-height:1.1}.work-week-entry-head .work-week-day-heading em{gap:2px;margin-top:2px;display:grid}.work-week-entry-head .work-week-day-heading b{color:#334155;white-space:normal;border-radius:999px;padding:2px 5px;font-size:.62rem;font-weight:950;line-height:1.1}.work-week-entry-head .work-week-day-heading b:first-child{background:#eef4fb}.work-week-entry-head .work-week-day-heading b:nth-child(2){background:#eef8f5}.work-week-entry-head .work-week-day-heading b:nth-child(3){background:#f2f7f4}.work-week-entry-head .work-week-day-heading.empty{opacity:.8}.work-week-entry-head .work-week-day-heading.open{--work-week-column-bg:#f8fbff;--work-week-column-border:#dbe7f3}.work-week-entry-head .work-week-day-heading.leave{--work-week-column-bg:#f7fffb;--work-week-column-border:#bfe7d7}.work-week-entry-head .work-week-day-heading.near{--work-week-column-bg:#fffaf0;--work-week-column-border:#f3d38b}.work-week-entry-head .work-week-day-heading.full{--work-week-column-bg:#f7fffb;--work-week-column-border:#bfe7d7}.work-week-entry-head .work-week-day-heading.over{--work-week-column-bg:#fff5f5;--work-week-column-border:#f2b8b8;color:#991b1b}.work-week-entry-head .work-week-day-heading.over strong,.work-week-entry-head .work-week-day-heading.over small{color:#991b1b}.work-week-entry-head>*,.work-week-entry-row>*{position:relative}.work-week-entry-head>:first-child,.work-week-entry-row>:first-child{--work-week-column-bg:#f8fafc;--work-week-column-border:#e2e8f0}.work-week-entry-head>:nth-child(2),.work-week-entry-row>:nth-child(2),.work-week-entry-head>:nth-child(3),.work-week-entry-row>:nth-child(3),.work-week-entry-head>:nth-child(4),.work-week-entry-row>:nth-child(4),.work-week-entry-head>:nth-child(5),.work-week-entry-row>:nth-child(5),.work-week-entry-head>:nth-child(6),.work-week-entry-row>:nth-child(6),.work-week-entry-head>:nth-child(7),.work-week-entry-row>:nth-child(7),.work-week-entry-head>:nth-child(8),.work-week-entry-row>:nth-child(8){--work-week-column-bg:#f8fbff;--work-week-column-border:#dbe7f3}.work-week-entry-head>:nth-child(9),.work-week-entry-row>:nth-child(9){--work-week-column-bg:#ecfdf5;--work-week-column-border:#a7f3d0}.work-week-entry-head>:nth-child(10),.work-week-entry-row>:nth-child(10){--work-week-column-bg:#f1f5f9;--work-week-column-border:#cbd5e1}.work-week-entry-head>.work-week-day-heading.open{--work-week-column-bg:#f8fbff;--work-week-column-border:#dbe7f3}.work-week-entry-head>.work-week-day-heading.leave{--work-week-column-bg:#f7fffb;--work-week-column-border:#bfe7d7}.work-week-entry-head>.work-week-day-heading.near{--work-week-column-bg:#fffaf0;--work-week-column-border:#f3d38b}.work-week-entry-head>.work-week-day-heading.full{--work-week-column-bg:#f7fffb;--work-week-column-border:#bfe7d7}.work-week-entry-head>.work-week-day-heading.over{--work-week-column-bg:#fff5f5;--work-week-column-border:#f2b8b8}.work-week-entry-head>.work-week-day-heading.current-date{--work-week-column-bg:#e9f8ef;--work-week-column-border:#22c55e;color:#14532d;box-shadow:inset 0 3px #16a34a}.work-week-entry-head>.work-week-day-heading.current-date small{color:#166534}.work-week-entry-head>:not(:first-child):before,.work-week-entry-row>:not(:first-child):before{content:"";pointer-events:none;background:#e4edf7;width:1px;position:absolute;top:-10px;bottom:-10px;left:-5px}.work-week-entry-head>:not(:first-child):before{background:#d7e4f2;top:-9px;bottom:-9px}.work-week-entry-head>*{background:var(--work-week-column-bg,transparent);border:1px solid var(--work-week-column-border,transparent);border-radius:8px;padding:4px 6px}.work-week-entry-head>.current-date{--work-week-column-bg:#dcfce7;--work-week-column-border:#22c55e;color:#14532d;box-shadow:inset 0 3px #16a34a}.work-week-entry-head>.current-date small{color:#166534}.work-week-entry-row{background:#fff;border-bottom:1px solid #dbe7f3;align-items:end;padding:10px 12px}.work-week-entry-table.compact{font-size:.84rem}.work-week-entry-table.compact .work-week-entry-week-nav,.work-week-entry-table.compact .work-week-entry-head,.work-week-entry-table.compact .work-week-entry-row{grid-template-columns:minmax(190px, 1.25fr) repeat(var(--work-week-day-count,7), minmax(76px, .45fr)) minmax(74px, .45fr) minmax(78px, .4fr);min-width:calc(320px + (var(--work-week-day-count,7) * 84px));gap:6px;padding:7px 10px}.work-week-entry-table.compact .work-week-entry-row strong,.work-week-entry-table.compact .work-week-entry-row input,.work-week-entry-table.compact .work-week-entry-row select,.work-week-entry-table.compact .work-week-note-button,.work-week-entry-table.compact .work-week-total,.work-week-entry-table.compact .work-week-day-total{min-height:32px}.work-week-entry-table.compact .work-week-entry-row strong{padding:5px 7px;font-size:.82rem}.work-week-entry-table.compact .work-week-entry-row input,.work-week-entry-table.compact .work-week-entry-row select{padding:5px 6px;font-size:.8rem}.work-week-entry-table.compact .work-week-day-control{grid-template-columns:minmax(0,1fr) 26px}.work-week-entry-row:last-child{border-bottom:0}.work-week-empty-filter-row{color:#64748b;min-width:calc(360px + (var(--work-week-day-count,7) * 96px));background:#f8fafc;border-bottom:1px solid #dbe7f3;align-items:center;padding:18px 20px;font-size:.9rem;font-weight:850;display:flex}.work-week-task-group-row{color:#334155;min-width:calc(360px + (var(--work-week-day-count,7) * 96px));background:#f8fbff;border-bottom:1px solid #dbe7f3;align-items:center;gap:8px;padding:8px 12px;display:flex}.work-week-task-group-row button{color:var(--navy);cursor:pointer;font:inherit;background:0 0;border:0;align-items:center;gap:8px;padding:0;font-weight:950;display:inline-flex}.work-week-task-group-row button span{color:#1d4ed8;background:#dbeafe;border-radius:999px;justify-content:center;align-items:center;width:22px;height:22px;font-size:.88rem;display:inline-flex}.work-week-task-group-row small,.work-week-task-group-row em{color:#64748b;background:#eef6ff;border-radius:999px;padding:4px 8px;font-size:.72rem;font-style:normal;font-weight:900}.work-week-task-group-row em{color:#9a3412;background:#fff7ed}.work-week-group-exception-badge{display:inline-flex;position:relative}.work-week-group-exception-badge:focus-visible{outline-offset:2px;border-radius:999px;outline:2px solid #f59e0b}.work-week-group-exception-tooltip{color:var(--navy);z-index:35;background:#fff;border:1px solid #fed7aa;border-radius:8px;gap:5px;min-width:190px;padding:9px 10px;display:none;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 14px 30px #0f172a29}.work-week-group-exception-tooltip:after{content:"";background:#fff;border-bottom:1px solid #fed7aa;border-right:1px solid #fed7aa;width:10px;height:10px;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)rotate(45deg)}.work-week-group-exception-tooltip strong,.work-week-group-exception-tooltip span{display:block}.work-week-group-exception-tooltip strong{color:#9a3412;text-transform:uppercase;font-size:.72rem;font-weight:950}.work-week-group-exception-tooltip span{color:#334155;font-size:.78rem;font-weight:850}.work-week-group-exception-badge:hover .work-week-group-exception-tooltip,.work-week-group-exception-badge:focus-within .work-week-group-exception-tooltip{display:grid}.work-week-entry-row.extra{background:linear-gradient(135deg,#fffdf7,#f8fbff)}.work-week-entry-row.needs-company{background:linear-gradient(135deg,#f8fafc,#fff)}.work-week-entry-row.needs-company>label:first-child strong{color:#475569;background:#f8fafc;border-color:#cbd5e1}.work-week-entry-row>label:first-child,.work-week-entry-row>.work-week-day-total{background:var(--work-week-column-bg,#fff);border:1px solid var(--work-week-column-border,#e2edf7);border-radius:10px;padding:6px}.work-week-entry-row label,.work-week-day-input{color:var(--ink);gap:5px;font-weight:900;display:grid}.work-week-entry-row label>span,.work-week-day-input>span{color:#64748b;text-transform:uppercase;font-size:.75rem;display:none}.work-week-entry-row strong{color:var(--navy);background:#ecfdf5;border:1px solid #bbf7d0;border-radius:8px;align-items:center;min-height:40px;padding:7px 10px;font-size:.92rem;display:flex}.work-week-entry-row small{color:#64748b;font-size:.72rem;font-weight:800}.work-week-row-exception-tags{flex-wrap:wrap;gap:4px;display:flex}.work-week-row-exception-tags em{color:#9a3412;background:#fff7ed;border:1px solid #fed7aa;border-radius:999px;padding:3px 7px;font-size:.66rem;font-style:normal;font-weight:950}.work-week-entry-row input,.work-week-entry-row select{color:var(--navy);border:1px solid #cbd7e6;border-radius:8px;min-height:38px;padding:7px 9px;font-size:.88rem;font-weight:850}.work-week-day-input input{text-align:center}.work-week-entry-row>.work-week-day-input:not(.billed-day):not(.leave-limited-day):not(.needs-company){background:var(--work-week-column-bg,#fff);border:1px solid var(--work-week-column-border,#e2edf7);border-radius:10px;padding:6px}.work-week-entry-row>.work-week-day-input.current-date{--work-week-column-bg:#e9f8ef;--work-week-column-border:#22c55e}.work-week-entry-row>.work-week-day-input.current-date:not(.billed-day):not(.leave-limited-day):not(.needs-company){box-shadow:inset 0 3px #16a34a}.work-week-entry-row>.work-week-day-input.current-date input{border-color:#22c55e}.work-week-day-control{grid-template-columns:minmax(0,1fr) 30px;align-items:center;gap:4px;display:grid}.work-week-day-control input{min-width:0}.work-week-note-button{color:#64748b;cursor:pointer;background:#f8fafc;border:1px solid #cbd7e6;border-radius:8px;justify-content:center;align-items:center;min-height:38px;padding:0;font-size:.9rem;font-weight:950;display:inline-flex}.work-week-note-button:hover:not(:disabled),.work-week-note-button:focus-visible:not(:disabled),.work-week-day-input.has-note .work-week-note-button{color:#fff;background:#0f766e;border-color:#0f766e}.work-week-note-button:disabled{color:#94a3b8;cursor:not-allowed;background:#f1f5f9;border-color:#d7e2ee}.work-week-day-input.billed-day{background:#f8fafc;border:1px dashed #d7e2ee;border-radius:10px;padding:6px}.work-week-day-input.leave-limited-day{background:#f0fdfa;border:1px solid #99f6e4;border-radius:10px;padding:6px}.work-week-day-input.leave-limited-day input{border-color:#5eead4}.work-week-day-input.billed-day input{color:#64748b;cursor:not-allowed;background:#f1f5f9;border-color:#d7e2ee}.work-week-day-input.needs-company{background:#f8fafc;border-style:solid}.work-week-day-input.billed-day small{color:#64748b;letter-spacing:.02em;text-align:center;text-transform:uppercase;font-size:.68rem;font-weight:950}.work-week-day-input.leave-limited-day small{color:#0f766e;text-align:center;text-transform:uppercase;font-size:.68rem;font-weight:950}.work-week-note-editor{gap:14px;min-width:0;max-width:100%;display:grid}.work-week-note-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.work-week-note-meta>div{background:#f8fbff;border:1px solid #dbe7f3;border-radius:8px;gap:3px;padding:9px 10px;display:grid}.work-week-note-meta span,.work-week-note-history>div span,.work-week-finalize-notes>div span{color:#64748b;text-transform:uppercase;font-size:.72rem;font-weight:950}.work-week-note-meta strong,.work-week-note-history>div strong,.work-week-finalize-notes>div strong{color:var(--navy);font-size:.84rem;font-weight:950}.work-week-note-editor label{gap:6px;display:grid}.work-week-note-editor label>span{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:900}.work-week-note-editor textarea{box-sizing:border-box;color:var(--navy);font:inherit;resize:vertical;border:1px solid #cbd7e6;border-radius:8px;width:100%;min-height:120px;padding:10px;font-weight:800}.work-week-note-history,.work-week-finalize-notes{background:#fff;border:1px solid #dbe7f3;border-radius:10px;gap:10px;padding:12px;display:grid}.work-week-note-history>div,.work-week-finalize-notes>div{justify-content:space-between;align-items:center;gap:8px;display:flex}.work-week-note-history>div strong,.work-week-finalize-notes>div strong{color:#1d4ed8;background:#eaf2ff;border-radius:999px;padding:3px 8px}.work-week-note-history ol,.work-week-finalize-notes ol{gap:8px;margin:0;padding:0;list-style:none;display:grid}.work-week-note-history li,.work-week-finalize-notes li{border-left:3px solid #0f766e;gap:4px;padding:4px 0 4px 10px;display:grid}.work-week-note-history li span,.work-week-finalize-notes li span{color:#0f766e;text-transform:uppercase;font-size:.76rem;font-weight:950}.work-week-note-history li strong{color:#64748b;font-size:.76rem;font-weight:850}.work-week-note-history p,.work-week-finalize-notes p{color:var(--ink);margin:0;font-size:.86rem;font-weight:800}.work-week-total{background:var(--work-week-column-bg,#f8fbff);border:1px solid var(--work-week-column-border,#dbe7f3);color:#0f766e;border-radius:8px;align-items:center;min-height:38px;padding:7px 10px;font-size:.9rem;font-weight:950;display:flex}.work-week-day-total.current-date{--work-week-column-bg:#dcfce7;--work-week-column-border:#22c55e;color:#14532d;box-shadow:inset 0 3px #16a34a}.work-week-entry-row>button.secondary.compact{box-shadow:0 0 0 1px var(--work-week-column-border,#dbe7f3)}.work-week-entry-total-row{background:#f0fdfa;border-top:1px solid #a7f3d0;border-bottom:0;align-items:center}.work-week-total-label{gap:2px;display:grid}.work-week-total-label strong{color:#0f766e;background:0 0;border:0;min-height:auto;padding:0}.work-week-total-label small{color:#64748b;font-size:.72rem;font-weight:850}.work-week-day-total{color:#0f766e;background:#fff;border:1px solid #cbd7e6;border-radius:8px;justify-content:center;align-items:center;min-height:38px;padding:7px 9px;font-size:.88rem;font-weight:950;display:flex}.work-week-total.grand{background:#ecfdf5;border-color:#86efac}.work-week-total-note{color:#64748b;font-size:.82rem;font-weight:900}.work-user-assignment{background:#f8fbff;border:1px solid #dbe7f3;border-radius:8px;gap:10px;padding:12px;display:grid}.work-user-assignment>div:first-child{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.work-user-assignment>div:first-child span{color:#075985;background:#e0f2fe;border-radius:999px;padding:5px 9px;font-size:.8rem;font-weight:850}.work-user-assignment-heading>div,.task-list-search,.work-user-search{gap:5px;display:grid}.work-user-assignment-heading small{color:var(--muted);font-size:.82rem;font-weight:750}.task-list-search,.work-user-search{color:var(--ink);font-size:.9rem;font-weight:900}.task-list-search input,.work-user-search input{color:var(--navy);border:1px solid #cbd7e6;border-radius:8px;min-height:38px;padding:9px 11px;font-weight:800}.work-user-list{gap:8px;max-height:220px;display:grid;overflow:auto}.work-user-list .checkbox-row{background:#fff;border:1px solid #e2edf7;border-radius:8px;align-items:center;padding:8px 10px}.work-user-list .checkbox-row.selected{background:#ecfdf5;border-color:#99f6e4;box-shadow:inset 4px 0 #0f766e}.work-user-list .checkbox-row span{justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.work-user-list .checkbox-row small{color:var(--muted);font-size:.78rem;font-weight:800}.work-preview{color:#0f766e;background:linear-gradient(135deg,#ecfdf5,#f7fffc);border:1px solid #8ee7cc;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:12px;font-weight:850;display:flex}.work-entry-guard{color:#9a3412;background:#fff7ed;border:1px solid #fdba74;border-radius:10px;padding:12px;font-weight:850;line-height:1.35}.work-entry-guard.neutral{color:#40516b;background:#f8fbff;border-color:#bfd6f2}.work-week-save-confirmation{color:#14532d;background:#ecfdf5;border:1px solid #86efac;border-left:4px solid #16a34a;border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:11px 13px;display:flex}.work-week-save-confirmation strong{font-weight:950}.work-week-save-confirmation span{color:#166534;font-weight:850}.work-week-state-card{color:#152033;background:#f8fafc;border:1px solid #cbd5e1;border-left-width:4px;border-radius:10px;justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;display:flex}.work-week-state-card>div{min-width:0}.work-week-state-card span{color:#64748b;text-transform:uppercase;align-items:center;width:fit-content;font-size:.78rem;font-weight:850;display:inline-flex}.work-week-state-card>span{color:#334155;text-transform:none;background:#e2e8f0;border-radius:999px;flex-shrink:0;padding:6px 10px}.work-week-state-card strong{margin-top:2px;font-size:1.05rem;display:block}.work-week-state-card p{color:#52627a;margin:3px 0 0;font-weight:750;line-height:1.35}.work-week-state-card.draft{border-left-color:#94a3b8}.work-week-state-card.submitted{background:#eff6ff;border-left-color:#2563eb}.work-week-state-card.reopened{background:#fffbeb;border-left-color:#b45309}.work-week-state-card.finalized{background:#f0fdf4;border-left-color:#16a34a}.work-week-state-card.locked{background:#f5f3ff;border-left-color:#7c3aed}.work-week-audit-card{background:#fff;border:1px solid #cbd5e1;border-radius:10px;gap:10px;padding:12px;display:grid}.work-week-audit-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.work-week-audit-header h4{color:#172033;margin:0;font-size:1rem}.work-week-audit-header>span{color:#075985;background:#e0f2fe;border-radius:999px;flex-shrink:0;padding:6px 10px;font-size:.78rem;font-weight:900}.work-week-audit-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.work-week-audit-list li{background:#f8fafc;border:1px solid #e2e8f0;border-left:4px solid #cbd5e1;border-radius:8px;padding:10px}.work-week-audit-list li.complete{background:#f0fdf4;border-left-color:#16a34a}.work-week-audit-list li.warning{background:#fffbeb;border-left-color:#b45309}.work-week-audit-list li.locked{background:#f5f3ff;border-left-color:#7c3aed}.work-week-audit-list span,.work-week-audit-list small,.work-week-audit-list em{display:block}.work-week-audit-list span{color:#64748b;text-transform:uppercase;font-size:.72rem;font-weight:900}.work-week-audit-list strong{color:#111827;margin-top:4px;font-size:.95rem;display:block}.work-week-audit-list small{color:#64748b;font-weight:800}.work-week-audit-list em{color:#475569;margin-top:6px;font-size:.8rem;font-style:normal;font-weight:800;line-height:1.25}.payroll-lock-detail-card{background:#fbfaff;border:1px solid #c4b5fd;border-radius:10px;gap:12px;padding:14px;display:grid}.payroll-lock-detail-header{border-bottom:1px solid #ddd6fe;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:10px;display:flex}.payroll-lock-detail-header h4{color:#1f2937;margin:0;font-size:1.05rem}.payroll-lock-detail-header span,.payroll-lock-detail-grid small{color:#64748b;font-weight:800;display:block}.payroll-lock-detail-header>strong{color:#5b21b6;background:#ede9fe;border-radius:999px;flex-shrink:0;padding:6px 10px;font-size:.78rem}.payroll-lock-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.payroll-lock-detail-grid>div{background:#fff;border:1px solid #dbeafe;border-radius:8px;padding:10px}.payroll-lock-detail-grid span{color:#64748b;text-transform:uppercase;font-size:.76rem;font-weight:900;display:block}.payroll-lock-detail-grid strong{color:#111827;margin-top:4px;font-size:.98rem;display:block}.work-to-payroll-trace{background:#fff;border:1px solid #ddd6fe;border-radius:10px;gap:10px;padding:12px;display:grid}.work-to-payroll-trace-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.work-to-payroll-trace-header h4{color:var(--navy);margin:2px 0 3px;font-size:1rem}.work-to-payroll-trace-header span{color:var(--muted);font-weight:800;display:block}.work-to-payroll-trace-header>strong{color:#5b21b6;background:#ede9fe;border-radius:999px;flex-shrink:0;padding:6px 10px;font-size:.78rem}.work-to-payroll-trace-table{border:1px solid #dbe7f3;border-radius:8px;overflow:hidden}.work-to-payroll-trace-row{grid-template-columns:minmax(220px,1fr) minmax(190px,.75fr) minmax(240px,1fr);gap:0;display:grid}.work-to-payroll-trace-row>*{color:var(--ink);border-bottom:1px solid #dbe7f3;border-right:1px solid #dbe7f3;padding:10px}.work-to-payroll-trace-row>:last-child{border-right:0}.work-to-payroll-trace-row:last-child>*{border-bottom:0}.work-to-payroll-trace-row.head{background:#eef6ff}.work-to-payroll-trace-row.head span{color:#334155;text-transform:uppercase;font-size:.76rem;font-weight:950}.work-to-payroll-trace-row strong,.work-to-payroll-trace-row small{display:block}.work-to-payroll-trace-row strong{color:var(--navy);font-weight:950}.work-to-payroll-trace-row small{color:var(--muted);margin-top:4px;font-size:.78rem;font-weight:800}.payroll-lock-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.payroll-lock-actions>button{min-width:160px;min-height:40px}.work-week-submit-row{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.work-week-submit-row>button{min-width:180px;min-height:44px}.work-week-submit-row>button.work-week-open-status:disabled{color:#0f766e;opacity:1;background:#ecfdf5;border-color:#99f6e4}.work-week-review-panel{margin-bottom:16px}.work-week-review-controls{justify-content:flex-end;margin:12px 0;display:flex}.work-week-review-controls label{color:var(--text);gap:6px;font-weight:700;display:grid}.work-week-review-controls input{min-width:220px}.work-week-review-table-wrap{border:1px solid var(--border);border-radius:8px;overflow-x:auto}.work-week-review-table{border-collapse:collapse;width:100%;min-width:880px}.work-week-review-table th,.work-week-review-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:12px}.work-week-review-table th{color:var(--muted);text-transform:uppercase;background:#eef6ff;font-size:.76rem}.work-week-review-table td span{color:var(--muted);margin-top:2px;font-size:.83rem;display:block}.work-week-status-pill{white-space:nowrap;border-radius:999px;align-items:center;width:fit-content;padding:5px 9px;font-size:.78rem;font-weight:800;display:inline-flex}.work-week-status-pill.needs-submission{color:#9a3412;background:#fff4e8}.work-week-status-pill.submitted{color:#1d4ed8;background:#e8f0ff}.work-week-status-pill.finalized{color:#166534;background:#dcfce7}.work-summary-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.work-summary-cards div{background:linear-gradient(#fff,#f8fbff);border:1px solid #d7e4f2;border-radius:10px;padding:12px;box-shadow:inset 0 3px #bfdbfe}.work-summary-cards span,.work-summary-cards strong,.work-entry-list small{display:block}.work-entry-title{justify-content:space-between;align-items:center;gap:8px;margin-bottom:2px;display:flex}.work-entry-title strong{color:var(--navy)}.work-entry-title em{white-space:nowrap;border-radius:999px;padding:4px 8px;font-size:.72rem;font-style:normal;font-weight:900}.work-entry-title em.billed{color:#166534;background:#dcfce7}.work-entry-title em.unbilled{color:#92400e;background:#fffbeb}.work-summary-cards span,.work-entry-list small{color:var(--muted);font-size:.84rem}.work-summary-cards strong{color:var(--navy);font-size:1.26rem}.work-category-breakdown,.work-period-list,.work-month-list,.work-entry-list,.work-category-list{gap:8px;display:grid}.work-period-list>strong{color:var(--navy);border-top:1px solid #e2edf7;margin-top:4px;padding-top:12px}.work-year-group,.work-month-group{background:#fff;border:1px solid #d7e4f2;border-radius:10px;overflow:hidden}.work-year-group>summary,.work-month-group>summary{cursor:pointer;grid-template-columns:minmax(140px,1fr) repeat(3,minmax(110px,auto));align-items:center;gap:10px;padding:12px;list-style:none;display:grid}.work-year-group>summary::-webkit-details-marker{display:none}.work-month-group>summary::-webkit-details-marker{display:none}.work-year-group>summary{background:linear-gradient(135deg,#e8fbf6,#f8fbff);border-left:5px solid #0f766e}.work-month-group>summary{background:#f8fbff;border-bottom:1px solid #0000}.work-year-group summary span,.work-month-group summary span{color:#52617a;font-size:.82rem;font-weight:800}.work-year-group summary em,.work-month-group summary em{color:#0f766e;text-align:right;font-style:normal;font-weight:950}.work-month-list{background:#fbfdff;padding:10px}.work-month-group .work-entry-list{border-top:1px solid #e2edf7;padding:10px}.work-entry-list div,.work-category-card{color:var(--ink);text-align:left;background:#fff;border:1px solid #d7e4f2;border-radius:10px;padding:11px 12px}.work-month-group .work-entry-list div{border-left:4px solid #93c5fd}.work-breakdown-heading{justify-content:space-between;align-items:center;gap:10px;margin-top:2px;display:flex}.work-breakdown-heading strong{color:var(--navy);font-size:1rem}.work-breakdown-heading span{color:#1e3a8a;background:#e0ecff;border-radius:999px;padding:5px 10px;font-size:.78rem;font-weight:900}.work-breakdown-table{border:1px solid #d7e4f2;border-radius:10px;overflow:hidden}.work-breakdown-row{background:#fff;border-top:1px solid #e2edf7;grid-template-columns:minmax(220px,1.5fr) repeat(4,minmax(100px,.7fr));align-items:center;gap:12px;padding:11px 12px;display:grid}.work-breakdown-row.cost-profit-hidden{grid-template-columns:minmax(220px,1.5fr) repeat(2,minmax(100px,.7fr))}.work-breakdown-row:first-child{border-top:0}.work-breakdown-head{color:#334155;text-transform:uppercase;background:#f1f7fc;font-size:.78rem;font-weight:900}.work-breakdown-row strong{color:var(--navy)}.work-breakdown-row span:not(:first-child){color:#334155;text-align:right;font-weight:850}.work-breakdown-row .positive{color:#0f766e!important}.work-breakdown-row .negative{color:#b91c1c!important}.work-category-card:hover{background:#eff6ff;border-color:#93c5fd}.work-category-group{background:#f8fbff;border:1px solid #d7e4f2;border-radius:10px;gap:10px;padding:10px;display:grid}.work-category-group+.work-category-group{margin-top:10px}.work-category-group-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.work-category-group-header strong{color:#0f766e;text-transform:uppercase;font-size:.9rem}.work-category-group-header span{color:#075985;background:#e0f2fe;border-radius:999px;padding:4px 8px;font-size:.76rem;font-weight:900}.work-category-card.selected{background:linear-gradient(135deg,#ecfdf5,#eff6ff);border-color:#14b8a6;box-shadow:inset 4px 0 #0f766e}.work-category-card strong,.work-category-card span,.work-category-card small,.work-category-card em{display:block}.work-category-card>span:not(.task-card-header):not(.task-card-metrics){color:#0f766e;font-weight:900}.task-card-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.task-card-header strong{color:var(--navy)}.task-card-metrics{flex-wrap:wrap;gap:7px;margin:8px 0;display:flex!important}.task-card-metrics small{background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;padding:5px 8px;font-size:.76rem;font-weight:900;color:#1d4ed8!important;margin:0!important}.work-category-card small{color:var(--muted);margin:3px 0}.work-category-card em{color:#166534;white-space:nowrap;background:#dcfce7;border-radius:999px;padding:5px 9px;font-size:.78rem;font-style:normal;font-weight:900}.staff-week-status-card.status-open,.staff-week-status-card.status-in-progress{background:#fff7ed;border-color:#fed7aa}.staff-week-status-card.status-submitted{background:#eff6ff;border-color:#bfdbfe}.staff-week-status-card.status-finalized{background:#ecfdf5;border-color:#99f6e4}.subscription-module .work-admin-grid{grid-template-columns:minmax(320px,380px) minmax(0,1fr);align-items:stretch;gap:16px}.staff-presence-chip,.staff-presence-more{color:#334155;background:#f1f5f9;border:1px solid #dbe5f2;border-radius:999px;align-items:center;gap:6px;min-height:28px;padding:5px 10px;font-size:.78rem;font-weight:900;display:inline-flex}.staff-presence-chip span{background:#94a3b8;border-radius:999px;width:8px;height:8px;display:inline-block}.staff-presence-chip.is-online{color:#065f46;background:#ecfdf5;border-color:#99f6e4}.staff-presence-chip.is-online span{background:#10b981}.staff-work-insights{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:14px;margin:14px 0;display:grid}.staff-work-deadline-only{grid-template-columns:minmax(0,1fr)}@media (max-width:980px){.staff-pay-panel .work-entry-form-header,.staff-pay-header-actions,.staff-pay-select{flex-direction:column;align-items:stretch}.staff-pay-header-actions{justify-content:stretch}.staff-pay-select select{width:100%;min-width:0}.staff-pay-profile-bank,.staff-pay-profile-summary,.staff-pay-bank-form,.staff-pay-bank-modal-form,.staff-pay-current-card,.staff-payslip-section-grid{grid-template-columns:1fr}.staff-pay-bank-action{justify-items:stretch}.staff-payslip-header{display:grid}.staff-payslip-period{text-align:left}.staff-payslip-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-payslip-info-grid>div:nth-last-child(-n+4),.staff-payslip-info-grid>div:nth-child(4n){border-bottom:1px solid #111827;border-right:1px solid #111827}.staff-payslip-info-grid>div:nth-last-child(-n+2){border-bottom:0}.staff-payslip-info-grid>div:nth-child(2n){border-right:0}.staff-pay-bank-form button{justify-self:stretch;width:100%}.staff-pay-net{text-align:left}.staff-pay-breakdown-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){.staff-pay-breakdown-grid{grid-template-columns:1fr}.staff-payslip-info-grid{border-bottom:0;grid-template-columns:1fr}.staff-payslip-info-grid>div,.staff-payslip-info-grid>div:nth-last-child(-n+2),.staff-payslip-info-grid>div:nth-child(2n){border-bottom:1px solid #111827;border-right:0}}@media print{body *{visibility:hidden!important}.staff-payslip-printable,.staff-payslip-printable *{visibility:visible!important}.staff-payslip-printable{box-shadow:none;border:0;border-radius:0;width:100%;padding:0;position:absolute;top:0;left:0}.staff-payslip{color:#000;font-size:10.5pt}.staff-payslip-header,.staff-payslip-info-grid,.staff-payslip-section-grid{break-inside:avoid}.staff-payslip-brand strong{color:#000}.staff-payslip-section-grid{grid-template-columns:1.2fr .9fr .9fr}.staff-payslip-table{min-height:190px}}
