.payday-guide_guide__SVdEL { container: payday-guide / inline-size; border: 1px solid var(--border-soft); background: var(--surface-white); overflow: hidden; }
.payday-guide_contentGrid__cwrHK { display: grid; align-items: start; gap: 10px; padding: 0 12px 12px; }
.payday-guide_nextStepsColumn__9cFzu, .payday-guide_passedColumn__ZmVj4 { min-width: 0; }
.payday-guide_nextStepsColumn__9cFzu { display: grid; gap: 10px; }
.payday-guide_contentGrid__cwrHK .payday-guide_metrics___RjSD, .payday-guide_contentGrid__cwrHK .payday-guide_batches__0qrWt, .payday-guide_contentGrid__cwrHK .payday-guide_supporting__KJ5vk { padding: 0; }
.payday-guide_contentGrid__cwrHK .payday-guide_disclosure__iXrub { margin: 0; }
.payday-guide_contentGrid__cwrHK .payday-guide_supporting__KJ5vk { padding-top: 8px; }
.payday-guide_header__RoKoA { display: grid; gap: 8px; padding: 12px; background: linear-gradient(115deg, var(--primary-soft), var(--surface-white) 65%); }
.payday-guide_intro__HjHHx { color: var(--text-secondary); font-size: 13px; line-height: 1.6; }
.payday-guide_textLink__CWpr8 { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; border: 1px solid var(--border-soft); border-radius: 8px; padding: 8px 12px; color: var(--charcoal); background: var(--surface-white); font-size: 12px; font-weight: 500; }
.payday-guide_textLink__CWpr8:hover { background: var(--surface-secondary); }
.payday-guide_cutoffForm__kVkhm { display: grid; align-items: end; align-content: center; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; min-width: 0; }
.payday-guide_cutoffForm__kVkhm label { display: grid; gap: 4px; min-width: 0; font-size: 12px; font-weight: 500; color: var(--text-secondary); }
.payday-guide_cutoffForm__kVkhm select { min-width: 0; max-width: 100%; height: 44px; }
.payday-guide_cutoffStatus___JDWZ { color: var(--text-secondary); font-size: 12px; padding-block: 12px; }
.payday-guide_cutoffSetup__kF_gX { color: var(--text-secondary); font-size: 13px; line-height: 1.6; }
.payday-guide_metrics___RjSD { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; padding: 0 16px 12px; }
.payday-guide_metric__VA4Y_ { display: flex; align-items: center; gap: 8px; min-width: 0; padding: 8px; border: 1px solid var(--border-soft); border-radius: 10px; }
.payday-guide_metric__VA4Y_ > div { min-width: 0; }
.payday-guide_metricIcon__0BSKl { display: grid; place-items: center; flex-shrink: 0; width: 32px; height: 32px; border-radius: 9px; }
.payday-guide_metric__VA4Y_ strong { display: block; font-size: 22px; font-weight: 600; line-height: 1.2; letter-spacing: -.03em; }
.payday-guide_metric__VA4Y_ div > span { display: block; margin-top: 2px; color: var(--text-secondary); font-size: 12px; }
.payday-guide_warning__bk0p8 { color: #96600d; background: #fff4d5; }
.payday-guide_success___p8hC { color: #16835f; background: #eaf8f1; }
.payday-guide_neutral__RFkPe { color: var(--primary); background: var(--primary-soft); }
.payday-guide_cutoffSummary__DJU7v { display: grid; gap: 8px; min-width: 0; }
.payday-guide_nextAction__idDKG { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 6px 10px; border-top: 1px solid var(--border-soft); padding-top: 6px; }
.payday-guide_nextAction__idDKG p { flex: 1 1 12rem; min-width: 0; font-size: 12px; line-height: 1.6; color: var(--text-secondary); }
.payday-guide_nextAction__idDKG strong { font-weight: 600; color: var(--charcoal); }
.payday-guide_checksSection__i1oUQ, .payday-guide_batches__0qrWt { padding: 0 16px 16px; }
.payday-guide_sectionHeading__pjvEe { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 4px 10px; margin-bottom: 8px; }
.payday-guide_sectionHeading__pjvEe h3 { font-size: 15px; font-weight: 600; }
.payday-guide_sectionHeading__pjvEe > span { color: var(--text-secondary); font-size: 12px; }
.payday-guide_checks__jVQJ2, .payday-guide_passedChecks__S1U7I, .payday-guide_batchList__3R_El { display: grid; gap: 8px; list-style: none; padding: 0; }
.payday-guide_check__jqeGl { container: payday-check / inline-size; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 42%); align-items: start; gap: 6px 10px; min-width: 0; border: 1px solid var(--border-soft); border-radius: 10px; padding: 10px; }
.payday-guide_checkHeading__CC6dO { display: flex; align-items: center; gap: 8px; min-width: 0; }
.payday-guide_checkHeading__CC6dO h4 { flex: 1; min-width: 0; overflow-wrap: anywhere; font-size: 14px; font-weight: 600; line-height: 1.4; }
.payday-guide_checkNumber__fYnX2 { display: grid; place-items: center; flex-shrink: 0; width: 28px; height: 28px; border-radius: 9px; font-size: 12px; font-weight: 600; }
.payday-guide_checkContent__VLKSn { min-width: 0; grid-column: 1 / -1; }
.payday-guide_checkEvidence__7erPu { grid-column: 1 / -1; }
.payday-guide_checkEvidence__7erPu:empty { display: none; }
.payday-guide_checkDetail__Pbcsw { margin: 4px 0 0; color: var(--text-secondary); font-size: 13px; line-height: 1.5; }
.payday-guide_checkCutoff__JHxD5 { margin-top: 6px; color: var(--text-secondary); font-size: 11px; font-weight: 500; line-height: 1.5; }
.payday-guide_checkActions__mXlZU { display: flex; grid-column: 1 / -1; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 4px 10px; min-width: 0; border-top: 1px solid var(--border-soft); padding-top: 6px; text-align: left; }
.payday-guide_checkActions__mXlZU p { max-width: 240px; color: var(--text-secondary); font-size: 11px; line-height: 1.5; }
.payday-guide_reviewLinks__JdSYd { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; max-width: 100%; }
.payday-guide_reviewLinks__JdSYd .payday-guide_textLink__CWpr8 { gap: 6px; font-size: 11px; font-weight: 500; }
.payday-guide_reviewLinks__JdSYd .payday-guide_actionLink__VAAUg { min-width: 0; max-width: 100%; height: auto; white-space: normal; text-align: left; }
.payday-guide_actionLink__VAAUg { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; border: 1px solid var(--border-soft); border-radius: 8px; padding: 8px 12px; color: var(--charcoal); background: var(--surface-white); font-size: 12px; font-weight: 600; line-height: 1.5; }
.payday-guide_actionLink__VAAUg svg { flex-shrink: 0; }
.payday-guide_actionLink__VAAUg:hover { background: var(--surface-secondary); }
.payday-guide_disclosure__iXrub { margin: 0 12px 12px; padding: 6px 8px 8px; border: 1px solid var(--border-soft); border-radius: 10px; background: var(--surface-secondary); }
.payday-guide_checkSectionHeader__Nvg81 > [data-section-heading] {  font-size: 13px; font-weight: 600; line-height: 24px; }
.payday-guide_passedChecks__S1U7I { margin-top: 4px; gap: 0; }
.payday-guide_passedChecks__S1U7I .payday-guide_check__jqeGl { border: 0; border-radius: 0; padding: 6px 0; gap: 4px 8px; }
.payday-guide_passedChecks__S1U7I .payday-guide_check__jqeGl + .payday-guide_check__jqeGl { border-top: 1px solid var(--border-soft); }
.payday-guide_passedChecks__S1U7I .payday-guide_checkDetail__Pbcsw { margin-top: 4px; font-size: 12px; line-height: 1.5; }
.payday-guide_passedChecks__S1U7I .payday-guide_checkCutoff__JHxD5 { margin-top: 2px; }
.payday-guide_passedChecks__S1U7I .payday-guide_checkActions__mXlZU { border-top: 0; padding-top: 0; gap: 4px 12px; }
.payday-guide_passedChecks__S1U7I .payday-guide_reviewLinks__JdSYd { gap: 8px; }
.payday-guide_passedChecks__S1U7I .payday-guide_reviewLinks__JdSYd .payday-guide_actionLink__VAAUg { padding-inline: 10px; gap: 6px; font-size: 11px; }
.payday-guide_batch__F2Sh9 { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; border: 1px solid var(--border-soft); border-radius: 10px; padding: 10px; }
.payday-guide_batch__F2Sh9 h4 { margin-top: 8px; font-size: 14px; font-weight: 600; }
.payday-guide_batch__F2Sh9 p { margin-top: 5px; font-size: 12px; color: var(--text-secondary); line-height: 1.5; }
.payday-guide_batchState__fCKqE { display: inline-flex; border-radius: 6px; background: var(--primary-soft); color: var(--primary); padding: 3px 8px; font-size: 11px; font-weight: 600; }
.payday-guide_supporting__KJ5vk { display: grid; gap: 8px; border-top: 1px solid var(--border-soft); padding: 8px 12px; font-size: 13px; }
.payday-guide_scopeNote___IWNX { color: var(--text-secondary); font-size: 12px; line-height: 1.6; }
.payday-guide_error__orHHm { margin: 0 16px 16px; border: 1px solid #f2e6c5; border-radius: 12px; padding: 12px; background: #fffaec; color: #785019; font-size: 14px; }
.payday-guide_guide__SVdEL a:focus-visible, .payday-guide_guide__SVdEL [data-section-heading]:focus-visible { outline: 2px solid var(--primary); outline-offset: 4px; border-radius: 4px; }
@container payday-guide (min-width: 56rem) {
  .payday-guide_header__RoKoA { grid-template-columns: minmax(0, 1fr) minmax(0, 380px); gap: 12px; }
  .payday-guide_contentGrid__cwrHK[data-has-passed="true"] { grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); }
}
@container payday-check (min-width: 460px) {
  .payday-guide_checkContent__VLKSn { grid-column: 1; grid-row: 1; }
  .payday-guide_checkActions__mXlZU { grid-column: 2; grid-row: 1; align-self: center; flex-direction: column; align-items: stretch; justify-content: center; gap: 4px; border-top: 0; border-left: 1px solid var(--border-soft); padding: 0 0 0 10px; text-align: right; }
  .payday-guide_checkActions__mXlZU p { max-width: none; }
  .payday-guide_reviewLinks__JdSYd { display: grid; grid-template-columns: minmax(0, 1fr) auto; justify-content: end; }
  .payday-guide_reviewLinks__JdSYd .payday-guide_textLink__CWpr8 { white-space: nowrap; }
}
@container payday-guide (max-width: 600px) {
  .payday-guide_header__RoKoA { padding: 10px; }
  .payday-guide_contentGrid__cwrHK { padding: 0 10px 10px; gap: 10px; }
  .payday-guide_metrics___RjSD { padding: 0 14px 12px; gap: 6px; }
  .payday-guide_metric__VA4Y_ { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 2px 4px; padding: 6px; border-radius: 9px; }
  .payday-guide_metric__VA4Y_ > div { display: contents; }
  .payday-guide_metricIcon__0BSKl { grid-column: 2; grid-row: 1; width: 22px; height: 22px; border-radius: 6px; }
  .payday-guide_metricIcon__0BSKl svg { width: 16px; height: 16px; }
  .payday-guide_metric__VA4Y_ strong { grid-column: 1; grid-row: 1; }
  .payday-guide_metric__VA4Y_ div > span { grid-column: 1 / -1; grid-row: 2; margin-top: 0; }
  .payday-guide_metric__VA4Y_ strong { font-size: 22px; }
  .payday-guide_metric__VA4Y_ div > span { font-size: 11px; }
  .payday-guide_checksSection__i1oUQ, .payday-guide_batches__0qrWt { padding: 0 14px 14px; }
  .payday-guide_check__jqeGl { padding: 8px; }
  .payday-guide_disclosure__iXrub { margin: 0 10px 10px; }
  .payday-guide_supporting__KJ5vk { padding: 8px 10px; }
  .payday-guide_error__orHHm { margin: 0 14px 14px; }
}

.payday-guide_disclosure__iXrub .payday-guide_checks__jVQJ2 { margin-top: 6px; }

@container payday-guide (max-width: 26rem) {
  .payday-guide_cutoffForm__kVkhm { grid-template-columns: minmax(0, 1fr); }
}

.payday-guide_helpHeading__vT5XO { font-weight: 600; color: var(--charcoal); }
.payday-guide_helpSteps__2kE1Z { margin-top: 8px; padding-left: 18px; list-style: decimal; }
.payday-guide_helpSteps__2kE1Z li + li { margin-top: 8px; }
.payday-guide_checkSectionHeader__Nvg81 { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 16px; }
.payday-guide_evidenceBlock__EEnGn { border-radius: 8px; background: var(--surface-secondary); padding: 8px; }
.payday-guide_evidenceTitle__gdfJw { font-size: 12px; font-weight: 600; line-height: 1.4; }
.payday-guide_evidenceList__0ELGa { display: grid; gap: 4px; margin-top: 4px; font-size: 12px; }
.payday-guide_evidenceNote__GVnbO { margin-top: 4px; color: var(--text-secondary); font-size: 11px; line-height: 1.4; }


.payroll-investigator_tool__Zgsa3 {
  display: flex;
  flex-direction: column;
  min-width: 0;
  container-type: inline-size;
  overflow-wrap: anywhere;
}

.payroll-investigator_tool__Zgsa3 > :last-child {
  flex: 1;
}

.payroll-investigator_loaded__YRqSC {
  grid-column: 1 / -1;
}

.payroll-investigator_tool__Zgsa3 .workspace-section-header > div {
  min-width: 0;
  max-width: 100%;
  flex-wrap: wrap;
}

.payroll-investigator_content__JNOqF {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  min-width: 0;
  height: 100%;
  padding: 12px;
}

.payroll-investigator_content__JNOqF > :only-child,
.payroll-investigator_content__JNOqF > :nth-child(n + 3) {
  width: 100%;
}

.payroll-investigator_content__JNOqF > .payroll-investigator_loadButton__2Apu9:last-child {
  margin-top: auto;
}

.payroll-investigator_loadButton__2Apu9 {
  height: auto;
  min-height: 44px;
  min-width: 0;
  max-width: 100%;
  white-space: normal;
  padding: 6px 10px;
}

.payroll-investigator_summary__vffJT {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 6px;
}

.payroll-investigator_employeeList__a_1Jt {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
  min-width: 0;
}

.payroll-investigator_employee__i_ctk {
  min-width: 0;
  border: 1px solid var(--border-soft);
  border-radius: 8px;
  background: var(--surface-white);
}

.payroll-investigator_employeeHeader__IqUdV {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 8px;
  min-width: 0;
  padding: 10px;
}

.payroll-investigator_netChange__w7_bO {
  min-width: 0;
}

.payroll-investigator_employeeName__LT3Yp {
  flex: 1 1 9rem;
  min-width: 0;
}

.payroll-investigator_employeeBody__Jm6Ff {
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: 0;
  padding: 0 10px 10px;
}

.payroll-investigator_itemAmounts__gcQPO {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 8px;
}

.payroll-investigator_itemAmounts__gcQPO > div {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 4px 8px;
}

@container (min-width: 420px) {
  .payroll-investigator_summary__vffJT {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .payroll-investigator_summary__vffJT > div {
    flex-wrap: wrap;
  }

  .payroll-investigator_itemAmounts__gcQPO {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .payroll-investigator_itemAmounts__gcQPO > div {
    display: block;
  }
}


.employee-detail-sections_page__EKovK,
.employee-detail-sections_card__1Qvb3 {
  min-width: 0;
  container-type: inline-size;
}

.employee-detail-sections_split__LbYjq {
  display: grid;
  align-items: start;
  gap: 16px;
  min-width: 0;
}

.employee-detail-sections_split__LbYjq > *,
.employee-detail-sections_formGrid__ftbBG > *,
.employee-detail-sections_fields__6qK2G > *,
.employee-detail-sections_detailGroups__Zc2wy > * {
  min-width: 0;
}

.employee-detail-sections_header__Wauj9 {
  flex-wrap: wrap;
  align-items: center;
}

.employee-detail-sections_titleRow__xppUV {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
}

.employee-detail-sections_detailGroups__Zc2wy {
  display: grid;
  gap: 20px;
}

.employee-detail-sections_group__3MUVu + .employee-detail-sections_group__3MUVu {
  border-top: 1px solid var(--border-soft);
  padding-top: 20px;
}

.employee-detail-sections_group__3MUVu h3 {
  margin-bottom: 12px;
  color: var(--text-secondary);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.employee-detail-sections_fields__6qK2G {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 20px;
}

.employee-detail-sections_fields__6qK2G dt {
  color: var(--text-secondary);
  font-size: 12px;
  line-height: 1.5;
}

.employee-detail-sections_fields__6qK2G dd {
  margin-top: 3px;
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.5;
  overflow-wrap: anywhere;
}

.employee-detail-sections_formGrid__ftbBG,
.employee-detail-sections_protectedGrid__Meaix {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 16px;
}

.employee-detail-sections_formGrid__ftbBG :is(input, select),
.employee-detail-sections_protectedGrid__Meaix input {
  min-width: 0;
  max-width: 100%;
}

.employee-detail-sections_fullWidth__taxep {
  grid-column: 1 / -1;
}

.employee-detail-sections_formFooter__5Z9Ia {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 12px;
  border-top: 1px solid var(--border-soft);
  padding-top: 16px;
}

.employee-detail-sections_formFooter__5Z9Ia button,
.employee-detail-sections_revealButton__r0V5n {
  max-width: 100%;
  height: auto;
  min-height: 44px;
  white-space: normal;
}

.employee-detail-sections_historyRow__muFIj {
  padding: 16px 0;
}

.employee-detail-sections_historyRow__muFIj:first-child {
  padding-top: 0;
}

.employee-detail-sections_recordHeader___dHpA,
.employee-detail-sections_recordRate__4fRnn {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px 16px;
}

.employee-detail-sections_recordHeader___dHpA time {
  color: var(--text-secondary);
  font-size: 12px;
}

.employee-detail-sections_recordRate__4fRnn {
  margin-top: 10px;
}

.employee-detail-sections_recordReason__pJ3Gk {
  margin-top: 10px;
  font-size: 13px;
  line-height: 1.6;
  overflow-wrap: anywhere;
}

.employee-detail-sections_recordReason__pJ3Gk span {
  margin-right: 6px;
  color: var(--text-secondary);
  font-size: 12px;
}

@container (min-width: 28rem) {
  .employee-detail-sections_formGrid__ftbBG,
  .employee-detail-sections_protectedGrid__Meaix {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@container (min-width: 48rem) {
  .employee-detail-sections_detailGroups__Zc2wy {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
  }

  .employee-detail-sections_group__3MUVu + .employee-detail-sections_group__3MUVu {
    border-top: 0;
    border-left: 1px solid var(--border-soft);
    padding-top: 0;
    padding-left: 24px;
  }

  .employee-detail-sections_protectedFields__k7RIK,
  .employee-detail-sections_protectedGrid__Meaix {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@container (min-width: 56rem) {
  .employee-detail-sections_assignmentGrid__slEk3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@container (min-width: 64rem) {
  .employee-detail-sections_split__LbYjq {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}


.payroll-setup_page__NHS_U { max-width: 1440px; margin-inline: auto; min-width: 0; }
.payroll-setup_header__JrRUQ { display: flex; align-items: center; gap: 12px; padding-block: 4px 16px; }
.payroll-setup_headerIcon__QqxzH { display: grid; flex: 0 0 44px; height: 44px; place-items: center; border: 1px solid var(--primary-border); border-radius: 12px; background: var(--primary-soft); color: var(--primary); }
.payroll-setup_header__JrRUQ h1 { font-size: clamp(1.5rem, 2.5vw, 1.875rem); font-weight: 650; line-height: 1.2; letter-spacing: -.04em; }
.payroll-setup_header__JrRUQ p { margin-top: 6px; max-width: 620px; color: var(--text-secondary); font-size: .875rem; line-height: 1.5; }
.payroll-setup_container__ms_1U { container-type: inline-size; }
.payroll-setup_groups__WklEf { display: grid; gap: 16px; }
.payroll-setup_group__dNnkg { min-width: 0; }
.payroll-setup_groupHeading__YYB8q { margin-bottom: 8px; }
.payroll-setup_groupHeading__YYB8q h2 { font-size: .875rem; font-weight: 650; letter-spacing: -.015em; }
.payroll-setup_groupHeading__YYB8q p { margin-top: 3px; color: var(--text-secondary); font-size: .75rem; line-height: 1.6; }
.payroll-setup_cards__xrSi0 { display: grid; gap: 10px; }

.payroll-setup_card__pyKje {
  --tool-ink: #38695f;
  --tool-wash: #e9f3ee;
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 14px 14px 4px;
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-card);
  background: var(--surface-white);
}
.payroll-setup_card__pyKje[data-tool="policies"] { border-color: var(--primary-border); background: color-mix(in srgb, var(--primary) 4%, var(--surface-white)); }
.payroll-setup_card__pyKje[data-tool="workflows"] { --tool-ink: #476b99; --tool-wash: #edf2fa; }
.payroll-setup_card__pyKje[data-tool="template"] { --tool-ink: #776193; --tool-wash: #f3eef8; }
.payroll-setup_card__pyKje[data-tool="recurring"] { --tool-ink: #96702d; --tool-wash: #fcf3df; }
.payroll-setup_card__pyKje[data-tool="loans"] { --tool-ink: #a45b52; --tool-wash: #fbefeb; }
.payroll-setup_card__pyKje[data-tool="contributions"] { --tool-ink: #53676e; --tool-wash: #eaf0f2; }
.payroll-setup_cardTop__gGpgN { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 10px; }
.payroll-setup_icon__mdNeI { display: grid; flex: 0 0 36px; height: 36px; place-items: center; border-radius: 10px; color: var(--tool-ink); background: var(--tool-wash); }
.payroll-setup_cardHint__OCLpc { color: var(--text-secondary); font-size: .625rem; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; }
.payroll-setup_card__pyKje h3 { font-size: 1rem; font-weight: 650; line-height: 1.4; letter-spacing: -.025em; }
.payroll-setup_description__7Lea_ { flex: 1; margin-block: 6px 10px; color: var(--text-secondary); font-size: .8125rem; line-height: 1.5; }
.payroll-setup_card__pyKje button.payroll-setup_action__v4WYD {
  justify-content: space-between;
  width: 100%;
  min-height: 44px;
  height: auto;
  gap: 12px;
  padding: 12px 0;
  border: 0;
  border-top: 1px solid var(--border-soft);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: var(--charcoal);
  font-size: .75rem;
  font-weight: 600;
  line-height: 1.5;
  text-align: left;
  white-space: normal;
}
.payroll-setup_card__pyKje .payroll-setup_action__v4WYD:hover { background: transparent; color: var(--primary); }
.payroll-setup_card__pyKje .payroll-setup_action__v4WYD:focus-visible { outline: 2px solid var(--primary); outline-offset: 3px; }
.payroll-setup_action__v4WYD svg { flex-shrink: 0; }
.payroll-setup_card__pyKje:focus-within { border-color: var(--primary); }
.payroll-setup_notes__BTpdf { display: grid; gap: 12px; margin-top: 16px; padding: 14px 4px 4px; border-top: 1px solid var(--border-soft); }
.payroll-setup_note__gKy4e { display: flex; align-items: flex-start; gap: 12px; min-width: 0; }
.payroll-setup_note__gKy4e > svg { flex-shrink: 0; margin-top: 2px; color: var(--text-secondary); }
.payroll-setup_note__gKy4e h2 { font-size: .75rem; font-weight: 600; }
.payroll-setup_note__gKy4e p { max-width: 460px; margin-top: 4px; color: var(--text-secondary); font-size: .75rem; line-height: 1.6; }

@container (min-width: 36rem) { .payroll-setup_cards__xrSi0 { grid-template-columns: repeat(auto-fit, minmax(0, 1fr)); } }
@container (min-width: 56rem) {
  .payroll-setup_groups__WklEf { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px 10px; }
  .payroll-setup_group__dNnkg[data-group="foundations"] { grid-column: 1 / -1; }
  .payroll-setup_group__dNnkg[data-group="pay"] { grid-column: span 2; }
  .payroll-setup_groups__WklEf:has(> [data-group="government"]):not(:has(> [data-group="pay"])) > [data-group="foundations"] { grid-column: span 2; }
  .payroll-setup_group__dNnkg { display: flex; flex-direction: column; }
  .payroll-setup_groupHeading__YYB8q { min-height: 44px; }
  .payroll-setup_cards__xrSi0 { flex: 1; }
}
@container (max-width: 35.99rem) {
  .payroll-setup_card__pyKje { display: grid; grid-template-columns: 36px minmax(0, 1fr); column-gap: 10px; padding: 14px 14px 4px; }
  .payroll-setup_cardTop__gGpgN { grid-column: 1; grid-row: 1 / 3; align-items: flex-start; margin: 0; }
  .payroll-setup_icon__mdNeI { flex-basis: 36px; height: 36px; border-radius: 10px; }
  .payroll-setup_cardHint__OCLpc { display: none; }
  .payroll-setup_card__pyKje h3, .payroll-setup_description__7Lea_ { grid-column: 2; }
  .payroll-setup_description__7Lea_ { margin-block: 6px 10px; }
  .payroll-setup_card__pyKje .payroll-setup_action__v4WYD { grid-column: 1 / -1; }
}
@media (min-width: 768px) { .payroll-setup_notes__BTpdf { grid-template-columns: 1fr 1fr; gap: 20px; } }
@media (max-width: 480px) {
  .payroll-setup_header__JrRUQ { gap: 12px; align-items: flex-start; padding-bottom: 16px; }
  .payroll-setup_headerIcon__QqxzH { flex-basis: 44px; height: 44px; border-radius: 14px; }
  .payroll-setup_headerIcon__QqxzH svg { width: 22px; height: 22px; }
  .payroll-setup_header__JrRUQ p { font-size: .8125rem; margin-top: 6px; }
}
@media (prefers-reduced-motion: no-preference) {
  .payroll-setup_card__pyKje { transition: border-color 160ms ease, box-shadow 160ms ease; }
  .payroll-setup_action__v4WYD svg { transition: transform 160ms ease; }
  .payroll-setup_action__v4WYD:hover svg { transform: translateX(3px); }
  @media (hover: hover) { .payroll-setup_card__pyKje:hover { border-color: var(--primary-border); box-shadow: 0 6px 20px rgb(25 48 40 / 4%); } }
}


.payroll-attendance-review_dialog__c1D_W {
  width: min(64rem, calc(100vw - 1.5rem));
}

.payroll-attendance-review_review__zfavc {
  display: flex;
  min-width: 0;
  min-height: 0;
  flex-direction: column;
  gap: 1rem;
}

.payroll-attendance-review_summary__H7dRp,
.payroll-attendance-review_footer__yPSYR {
  flex-shrink: 0;
}

.payroll-attendance-review_summary__H7dRp {
  border: 1px solid var(--border-soft);
  border-radius: 12px;
  background: var(--surface-secondary);
  padding: .875rem 1rem;
}

.payroll-attendance-review_periodHeading__JAaVX {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: .75rem;
}

.payroll-attendance-review_periodDetails__WgX_e {
  min-width: 0;
}

.payroll-attendance-review_periodDetails__WgX_e h2,
.payroll-attendance-review_employeeHeading__nIy4s h3 {
  font-size: .875rem;
  font-weight: 500;
  line-height: 1.5;
  overflow-wrap: anywhere;
}

.payroll-attendance-review_periodDetails__WgX_e p,
.payroll-attendance-review_employeeHeading__nIy4s p {
  margin-top: .25rem;
  color: var(--text-secondary);
  font-size: .75rem;
}

.payroll-attendance-review_periodState__RyxIV {
  flex-shrink: 0;
  border: 1px solid var(--border-soft);
  border-radius: 999px;
  background: var(--surface-white);
  padding: .25rem .625rem;
  font-size: .75rem;
}

.payroll-attendance-review_periodState__RyxIV[data-attention] {
  color: #92400e;
  background: #fffbeb;
}

.payroll-attendance-review_counts__ks7uF {
  display: flex;
  flex-wrap: wrap;
  gap: .25rem 1rem;
  margin-top: .75rem;
  color: var(--text-secondary);
  font-size: .75rem;
}

.payroll-attendance-review_counts__ks7uF strong {
  color: var(--charcoal);
  font-weight: 500;
}

.payroll-attendance-review_attendanceRecords__gn2zs {
  min-height: 0;
  max-height: min(48dvh, 32rem);
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  border: 1px solid var(--border-soft);
  border-radius: 12px;
}

.payroll-attendance-review_attendanceRecords__gn2zs:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: 2px;
}

.payroll-attendance-review_employee__RtQCy + .payroll-attendance-review_employee__RtQCy {
  border-top: 1px solid var(--border-soft);
}

.payroll-attendance-review_employeeHeading__nIy4s {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: .75rem;
  padding: .75rem 1rem;
  background: var(--surface-white);
}

.payroll-attendance-review_employeeHeading__nIy4s > div {
  min-width: 0;
}

.payroll-attendance-review_employeeHeading__nIy4s > span {
  flex-shrink: 0;
  color: var(--text-secondary);
  font-size: .75rem;
  line-height: 1.75;
}

.payroll-attendance-review_table__Nqr_Z {
  width: 100%;
  table-layout: fixed;
  text-align: left;
  font-size: .8125rem;
}

.payroll-attendance-review_dateColumn__ytEWU { width: 24%; }
.payroll-attendance-review_statusColumn__OFQSs { width: 30%; }
.payroll-attendance-review_hoursColumn__QePZe { width: 23%; }

.payroll-attendance-review_table__Nqr_Z thead th {
  position: sticky;
  top: 0;
  z-index: 1;
  background: var(--surface-secondary);
  font-size: .75rem;
  font-weight: 500;
}

.payroll-attendance-review_table__Nqr_Z :is(th, td) {
  border-bottom: 1px solid var(--border-soft);
  padding: .5rem 1rem;
  vertical-align: middle;
}

.payroll-attendance-review_table__Nqr_Z tbody tr:last-child :is(th, td) {
  border-bottom: 0;
}

.payroll-attendance-review_table__Nqr_Z .payroll-attendance-review_hours__DFQuq {
  text-align: right;
  font-variant-numeric: tabular-nums;
}

.payroll-attendance-review_table__Nqr_Z th.payroll-attendance-review_hours__DFQuq span,
.payroll-attendance-review_date__ssidv span {
  display: block;
  color: var(--text-secondary);
  font-size: .6875rem;
  font-weight: 400;
}

.payroll-attendance-review_table__Nqr_Z .payroll-attendance-review_date__ssidv {
  font-weight: 400;
}

.payroll-attendance-review_date__ssidv time {
  white-space: nowrap;
}

.payroll-attendance-review_status__PemYR {
  display: inline-block;
  border-radius: 6px;
  background: var(--surface-secondary);
  padding: .25rem .5rem;
  color: var(--text-secondary);
  font-size: .75rem;
  line-height: 1.4;
}

.payroll-attendance-review_status__PemYR[data-tone="present"] {
  background: var(--primary-soft);
  color: var(--primary);
}

.payroll-attendance-review_status__PemYR[data-tone="attention"] {
  background: #fffbeb;
  color: #92400e;
}

.payroll-attendance-review_empty___juEY {
  color: var(--text-secondary);
  font-size: .875rem;
}

.payroll-attendance-review_footer__yPSYR {
  border-top: 1px solid var(--border-soft);
  padding-top: .5rem;
}

.payroll-attendance-review_footer__yPSYR p {
  color: var(--text-secondary);
  font-size: .75rem;
}

@media (max-width: 480px) {
  .payroll-attendance-review_review__zfavc { gap: .75rem; }
  .payroll-attendance-review_summary__H7dRp { padding: .75rem; }
  .payroll-attendance-review_periodHeading__JAaVX { flex-wrap: wrap; gap: .5rem; }
  .payroll-attendance-review_counts__ks7uF { gap: .25rem .75rem; margin-top: .5rem; }
  .payroll-attendance-review_employeeHeading__nIy4s { padding: .625rem .75rem; }
  .payroll-attendance-review_table__Nqr_Z :is(th, td) { padding: .5rem .25rem; }
  .payroll-attendance-review_table__Nqr_Z { font-size: .75rem; }
  .payroll-attendance-review_table__Nqr_Z.payroll-attendance-review_table__Nqr_Z thead th { font-size: .6875rem; }
  .payroll-attendance-review_status__PemYR { padding: .2rem .25rem; font-size: .6875rem; }
  .payroll-attendance-review_attendanceRecords__gn2zs { scrollbar-gutter: auto; }
}


.payroll-deduction-dates_dates__TizQc { min-width: 0; margin-top: 0.75rem; padding-top: 0.75rem; border-top: 1px solid var(--border-soft); color: var(--charcoal); font-size: 0.75rem; line-height: 1.5; }
.payroll-deduction-dates_dates__TizQc h6 { margin: 0; font-size: 0.8125rem; font-weight: 600; }
.payroll-deduction-dates_dates__TizQc p { margin: 0.375rem 0 0; color: var(--text-secondary); overflow-wrap: anywhere; }
.payroll-deduction-dates_list__oOD3s { display: grid; gap: 0.75rem; margin: 0.75rem 0 0; padding: 0; list-style: none; }
.payroll-deduction-dates_list__oOD3s li { min-width: 0; }
.payroll-deduction-dates_list__oOD3s li + li { padding-top: 0.75rem; border-top: 1px solid var(--border-soft); }
.payroll-deduction-dates_dateRow__90lj4 { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 0.25rem 0.75rem; }
.payroll-deduction-dates_dateRow__90lj4 time { font-weight: 600; }
.payroll-deduction-dates_dateRow__90lj4 span { font-variant-numeric: tabular-nums; }
.payroll-deduction-dates_workday__9CL9r { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0.125rem 0.5rem; }
.payroll-deduction-dates_workday__9CL9r span { color: var(--text-secondary); }
.payroll-deduction-dates_amount__dcoOh { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 0.25rem 0.75rem; margin-top: 0.5rem; }
.payroll-deduction-dates_amount__dcoOh span { color: var(--text-secondary); }
.payroll-deduction-dates_amount__dcoOh strong { font-variant-numeric: tabular-nums; }
.payroll-deduction-dates_review__MDjx6 { max-width: 100%; height: auto; margin-top: 0.5rem; padding: 0.5rem 0.75rem; white-space: normal; text-align: center; font-size: 0.75rem; }
.payroll-deduction-dates_dates__TizQc .payroll-deduction-dates_note__HWobx { margin-top: 0.75rem; font-size: 0.6875rem; }


.payroll-calculation-guide_guide__hveqJ {
  container: payroll-guide / inline-size;
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--border-soft);
  border-radius: 0.75rem;
  background: var(--surface-white);
  color: var(--charcoal);
  font-size: 0.8125rem;
}
.payroll-calculation-guide_header__43cPy { padding: 0.875rem 1rem 0.625rem; }
.payroll-calculation-guide_header__43cPy h3 { margin: 0; font-size: 1rem; font-weight: 600; }
.payroll-calculation-guide_header__43cPy p, .payroll-calculation-guide_rates__tiDHq > p { margin: 0.375rem 0 0; color: var(--text-secondary); line-height: 1.55; }
.payroll-calculation-guide_totals__pDQ4Z { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 10rem), 1fr)); gap: 0.5rem; padding: 0 1rem 0.75rem; }
.payroll-calculation-guide_totals__pDQ4Z > div { min-width: 0; border-radius: 0.375rem; background: var(--surface-secondary); padding: 0.625rem 0.75rem; }
.payroll-calculation-guide_totals__pDQ4Z span, .payroll-calculation-guide_totals__pDQ4Z strong, .payroll-calculation-guide_totals__pDQ4Z small { display: block; }
.payroll-calculation-guide_totals__pDQ4Z strong { margin-top: 0.25rem; font-size: 1rem; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.payroll-calculation-guide_totals__pDQ4Z small { margin-top: 0.25rem; color: var(--text-secondary); line-height: 1.45; }
.payroll-calculation-guide_equation__8MGG4, .payroll-calculation-guide_pending__v_bb9 { padding: 0.875rem 1rem; border-top: 1px solid var(--border-soft); line-height: 1.55; overflow-wrap: anywhere; }
.payroll-calculation-guide_equation__8MGG4 h4, .payroll-calculation-guide_pending__v_bb9 h4 { margin: 0; font-size: 0.8125rem; font-weight: 600; }
.payroll-calculation-guide_equation__8MGG4 p, .payroll-calculation-guide_pending__v_bb9 p { margin: 0.375rem 0 0; color: var(--text-secondary); }
.payroll-calculation-guide_pending__v_bb9 { background: var(--surface-secondary); }
.payroll-calculation-guide_pending__v_bb9 ul { margin: 0.75rem 0; padding-left: 1.25rem; }
.payroll-calculation-guide_pending__v_bb9 li + li { margin-top: 0.75rem; }
.payroll-calculation-guide_review__m__NU { display: inline-flex; align-items: center; min-height: 2.75rem; max-width: 100%; margin-top: 0.5rem; padding: 0.5rem 0.75rem; border: 1px solid var(--border-soft); border-radius: 0.375rem; color: inherit; font-weight: 500; text-decoration: none; }
.payroll-calculation-guide_review__m__NU:focus-visible { outline: 2px solid var(--primary); outline-offset: 2px; }
.payroll-calculation-guide_rates__tiDHq { border-top: 1px solid var(--border-soft); padding: 0.875rem 1rem 1rem; background: var(--surface-secondary); }
.payroll-calculation-guide_rates__tiDHq h4 { margin: 0; font-size: 0.8125rem; font-weight: 600; }
.payroll-calculation-guide_detailsLayout__hEjsu { display: grid; align-items: start; min-width: 0; }
.payroll-calculation-guide_mapping__9V1ar { min-width: 0; container: pay-items / inline-size; }
.payroll-calculation-guide_rateList___nGsE { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 25rem), 1fr)); gap: 0.625rem; margin-top: 0.625rem; }
.payroll-calculation-guide_rateCard__fY7JH { min-width: 0; overflow: hidden; border: 1px solid var(--border-soft); border-radius: 0.625rem; background: var(--surface-white); }
.payroll-calculation-guide_rateHeader__s2Yeb { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: 0.5rem; padding: 0.625rem 0.75rem; border-bottom: 1px solid var(--border-soft); }
.payroll-calculation-guide_rateHeader__s2Yeb > div { min-width: 0; }
.payroll-calculation-guide_rateHeader__s2Yeb h5 { margin: 0; font-size: 0.875rem; font-weight: 600; }
.payroll-calculation-guide_period__MReU8 { margin: 0.375rem 0 0; color: var(--text-secondary); font-size: 0.75rem; line-height: 1.5; }
.payroll-calculation-guide_payBasis__wvqFq { flex-shrink: 0; border-radius: 0.375rem; background: var(--surface-secondary); padding: 0.25rem 0.5rem; font-size: 0.6875rem; font-weight: 500; line-height: 1.5; }
.payroll-calculation-guide_rateBody__KjmDA { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr)); }
.payroll-calculation-guide_rateCard__fY7JH dl { display: grid; align-content: start; gap: 0.375rem; margin: 0; }
.payroll-calculation-guide_rateCard__fY7JH dl > div { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); align-items: baseline; gap: 0.75rem; }
.payroll-calculation-guide_rateCard__fY7JH dt { color: var(--text-secondary); font-size: 0.75rem; line-height: 1.5; }
.payroll-calculation-guide_rateCard__fY7JH dd { margin: 0; text-align: right; font-weight: 600; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; line-height: 1.5; }
.payroll-calculation-guide_rateCard__fY7JH dd small { display: block; margin-top: 0.25rem; color: var(--text-secondary); font-size: 0.6875rem; font-weight: 400; }
.payroll-calculation-guide_rateAmounts___JoLW { padding: 0.625rem 0.75rem; }
.payroll-calculation-guide_rateAmounts___JoLW dd { font-size: 0.875rem; }
.payroll-calculation-guide_rateSettings__eCmJf { margin: 0 0.75rem; padding: 0.625rem 0; border-top: 1px solid var(--border-soft); }
.payroll-calculation-guide_rateSettings__eCmJf h6 { margin: 0 0 0.625rem; font-size: 0.75rem; font-weight: 600; }
.payroll-calculation-guide_rateSettings__eCmJf dd { font-size: 0.75rem; font-weight: 500; }
.payroll-calculation-guide_rateFormula__qnD2o { padding: 0.75rem 1rem; border-top: 1px solid var(--border-soft); background: var(--surface-secondary); font-size: 0.75rem; line-height: 1.6; overflow-wrap: anywhere; }
.payroll-calculation-guide_rateFormula__qnD2o > span { color: var(--text-secondary); }
.payroll-calculation-guide_rateFormula__qnD2o p { margin: 0.25rem 0 0; font-variant-numeric: tabular-nums; }
.payroll-calculation-guide_note__hxTP9 { margin: 0; padding: 0.75rem 1rem; border-top: 1px solid var(--border-soft); color: var(--text-secondary); line-height: 1.5; }
.payroll-calculation-guide_mappingHeader__GVeRv { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; padding: 0.875rem 1rem; border-top: 1px solid var(--border-soft); background: var(--surface-secondary); }
.payroll-calculation-guide_mappingHeader__GVeRv h4 { margin: 0; font-size: 0.875rem; font-weight: 600; }
.payroll-calculation-guide_mappingHeader__GVeRv > span { color: var(--text-secondary); font-size: 0.75rem; }
.payroll-calculation-guide_mapping__9V1ar table, .payroll-calculation-guide_mapping__9V1ar tbody { display: block; width: 100%; text-align: left; }
.payroll-calculation-guide_payItem__BzP5v { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: baseline; gap: 0.375rem 1rem; padding: 0.75rem 1rem; border-top: 1px solid var(--border-soft); }
.payroll-calculation-guide_payItem__BzP5v > th, .payroll-calculation-guide_payItem__BzP5v > td { min-width: 0; padding: 0; border: 0; overflow-wrap: anywhere; }
.payroll-calculation-guide_payItem__BzP5v > th { font-size: 0.875rem; font-weight: 600; }
.payroll-calculation-guide_amount__uU4DZ { display: flex; flex-wrap: wrap; justify-content: flex-end; align-items: baseline; gap: 0.5rem; max-width: 100%; text-align: right; font-variant-numeric: tabular-nums; }
.payroll-calculation-guide_amountLabel__STZfP { color: var(--text-secondary); font-size: 0.6875rem; }
.payroll-calculation-guide_amount__uU4DZ strong { font-size: 0.9375rem; font-weight: 600; }
.payroll-calculation-guide_detail___OTff { grid-column: 1 / -1; }
.payroll-calculation-guide_formula__WKTsO { margin: 0; line-height: 1.5; }
.payroll-calculation-guide_lineItems__xmaGG { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 20rem), 1fr)); align-items: start; gap: 0.5rem; margin-top: 0.5rem; }
.payroll-calculation-guide_lineItem__SGt_l { display: flex; flex-direction: column; min-width: 0; padding: 0.625rem; border: 1px solid var(--border-soft); border-radius: 0.375rem; background: var(--surface-white); }
.payroll-calculation-guide_lineItemHeader__aCIFj { display: flex; justify-content: space-between; align-items: baseline; gap: 0.75rem; }
.payroll-calculation-guide_lineItemHeader__aCIFj > div { min-width: 0; }
.payroll-calculation-guide_lineItemHeader__aCIFj h5 { margin: 0; font-size: 0.8125rem; font-weight: 600; }
.payroll-calculation-guide_lineItemHeader__aCIFj > strong { flex-shrink: 0; font-size: 0.8125rem; font-weight: 600; font-variant-numeric: tabular-nums; }
.payroll-calculation-guide_linePeriod___Tjx_ { margin: 0.25rem 0 0; color: var(--text-secondary); font-size: 0.6875rem; line-height: 1.5; }
.payroll-calculation-guide_lineInputs__LAbQE { display: grid; gap: 0.375rem; margin: 0.625rem 0 0; }
.payroll-calculation-guide_lineInputs__LAbQE > div { display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr); align-items: baseline; gap: 0.75rem; }
.payroll-calculation-guide_lineInputs__LAbQE dt { color: var(--text-secondary); font-size: 0.75rem; line-height: 1.5; }
.payroll-calculation-guide_lineInputs__LAbQE dd { min-width: 0; margin: 0; text-align: right; font-size: 0.75rem; line-height: 1.5; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.payroll-calculation-guide_lineNotes__QmNOM, .payroll-calculation-guide_rowNotes__30lH4 { display: grid; gap: 0.375rem; margin: 0.625rem 0 0; padding: 0; list-style: none; color: var(--text-secondary); font-size: 0.75rem; line-height: 1.5; }
.payroll-calculation-guide_rowNotes__30lH4 { padding: 0.625rem 0.75rem; border-left: 2px solid var(--border-soft); background: var(--surface-secondary); }
.payroll-calculation-guide_reference__4R5EC { margin: 0.5rem 0 0; color: var(--text-secondary); font-size: 0.75rem; line-height: 1.5; }
.payroll-calculation-guide_missing__ac8Vm { color: var(--text-secondary); font-size: 0.75rem; font-weight: 400; line-height: 1.5; }
.payroll-calculation-guide_locate__Eio0d { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-top: 0.75rem; padding-top: 0.625rem; border-top: 1px solid var(--border-soft); }
.payroll-calculation-guide_locate__Eio0d a { display: inline-flex; align-items: center; min-height: 2.75rem; max-width: 100%; padding: 0.375rem 0.625rem; border: 1px solid var(--border-soft); border-radius: 0.375rem; color: inherit; font-size: 0.75rem; font-weight: 500; line-height: 1.4; text-decoration: none; overflow-wrap: anywhere; }
.payroll-calculation-guide_locate__Eio0d a:hover { background: var(--surface-secondary); }
.payroll-calculation-guide_locate__Eio0d a { transition: background-color var(--workspace-motion-fast, 160ms) var(--workspace-motion-ease, ease); }
.payroll-calculation-guide_locate__Eio0d a:focus-visible, .payroll-calculation-guide_footer__gjDSL a:focus-visible { outline: 2px solid var(--primary); outline-offset: 2px; }
.payroll-calculation-guide_netRow__GZV0g { background: var(--surface-secondary); }
.payroll-calculation-guide_footer__gjDSL { margin: 0; padding: 0.75rem 1rem; border-top: 1px solid var(--border-soft); color: var(--text-secondary); font-size: 0.75rem; line-height: 1.6; }
.payroll-calculation-guide_footer__gjDSL a { color: inherit; font-weight: 600; text-decoration: underline; text-underline-offset: 2px; }
@container payroll-guide (min-width: 64rem) {
  .payroll-calculation-guide_detailsLayout__hEjsu { grid-template-columns: minmax(17rem, 0.8fr) minmax(0, 2fr); }
  .payroll-calculation-guide_rates__tiDHq { border-right: 1px solid var(--border-soft); }
}
@container pay-items (min-width: 42rem) {
  .payroll-calculation-guide_payItem__BzP5v { grid-template-columns: minmax(0, 1fr) minmax(6rem, 0.65fr) minmax(0, 2.5fr); gap: 0.75rem; }
  .payroll-calculation-guide_detail___OTff { grid-column: auto; }
  .payroll-calculation-guide_amountLabel__STZfP { display: none; }
  .payroll-calculation-guide_lineItem__SGt_l { border: 0; border-radius: 0; padding: 0; }
  .payroll-calculation-guide_lineItems__xmaGG { margin-top: 0.5rem; }
  .payroll-calculation-guide_lineInputs__LAbQE { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.375rem 0.75rem; }
  .payroll-calculation-guide_lineInputs__LAbQE > div { display: block; }
  .payroll-calculation-guide_lineInputs__LAbQE dd { text-align: left; }
}
@media (max-width: 640px) {
  .payroll-calculation-guide_totals__pDQ4Z { gap: 0.5rem; }
  .payroll-calculation-guide_totals__pDQ4Z > div { padding: 0.625rem; }
  .payroll-calculation-guide_totals__pDQ4Z span, .payroll-calculation-guide_totals__pDQ4Z small { font-size: 0.6875rem; }
  .payroll-calculation-guide_totals__pDQ4Z strong { font-size: 0.8125rem; }
  .payroll-calculation-guide_rateHeader__s2Yeb { flex-wrap: wrap; }
  .payroll-calculation-guide_payItem__BzP5v { grid-template-columns: minmax(0, 1fr) minmax(0, 0.85fr); padding: 0.875rem 1rem; gap: 0.5rem 0.75rem; }
  .payroll-calculation-guide_amount__uU4DZ { display: block; }
  .payroll-calculation-guide_amountLabel__STZfP { display: block; margin-bottom: 0.125rem; }
}
@media (prefers-reduced-motion: reduce) {
  .payroll-calculation-guide_locate__Eio0d a { transition: none; }
}
@media (max-width: 480px) {
  .payroll-calculation-guide_totals__pDQ4Z { grid-template-columns: 1fr; }
  .payroll-calculation-guide_totals__pDQ4Z > div { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 0.25rem 0.75rem; }
  .payroll-calculation-guide_totals__pDQ4Z span, .payroll-calculation-guide_totals__pDQ4Z small { font-size: 0.75rem; }
  .payroll-calculation-guide_totals__pDQ4Z strong { margin-top: 0; font-size: 0.9375rem; }
  .payroll-calculation-guide_totals__pDQ4Z small { grid-column: 1 / -1; }
}


.payroll-notices_panel__5r9Uc {
  container: payroll-notices / inline-size;
}

.payroll-notices_groups__bN4qQ {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: stretch;
  gap: 12px;
}

.payroll-notices_group__HLIwO {
  container: payroll-issue / inline-size;
  min-width: 0;
  overflow-wrap: anywhere;
}

.payroll-notices_groupHeader__fQ8Rt {
  min-width: 0;
}

.payroll-notices_records__lDwUW {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  max-height: min(24rem, 50dvh);
  overflow-y: auto;
  overscroll-behavior-y: contain;
  scrollbar-gutter: stable;
  scrollbar-width: thin;
}

.payroll-notices_records__lDwUW:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: -2px;
}

.payroll-notices_runRecords__ArEUz {
  
  max-height: min(26rem, 50dvh);
}

.payroll-notices_record__npkUX {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
  gap: 8px;
}

.payroll-notices_compactRecords__kemxw {
  
  max-height: min(19rem, 50dvh);
}

.payroll-notices_compactRecord___VPuO {
  grid-template-columns: minmax(0, 1fr) auto;
}

.payroll-notices_recordDetails__fIuAQ {
  min-width: 0;
}

.payroll-notices_recordActions__5uiSa {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

@container payroll-notices (min-width: 56rem) {
  .payroll-notices_groups__bN4qQ {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .payroll-notices_summary__LEVbQ {
    min-height: 3.25em;
  }
}

@container payroll-notices (min-width: 88rem) {
  .payroll-notices_groups__bN4qQ {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@container payroll-issue (min-width: 30rem) {
  .payroll-notices_runRecords__ArEUz {
    
    max-height: min(19rem, 50dvh);
  }

  .payroll-notices_record__npkUX {
    grid-template-columns: minmax(0, 1fr) auto;
  }
}


.payroll-review-tools_panel__JdQ7h {
  container: payroll-review-tools / inline-size;
  min-width: 0;
}

.payroll-review-tools_grid__HBkiz {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: stretch;
  gap: 16px;
}

.payroll-review-tools_tool__BgTHm {
  display: flex;
  min-width: 0;
  flex-direction: column;
}

.payroll-review-tools_tool__BgTHm > :last-child {
  flex: 1;
}

.payroll-review-tools_content__YuAML {
  display: flex;
  min-width: 0;
  height: 100%;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  padding: 12px;
}

.payroll-review-tools_content__YuAML > :last-child {
  margin-top: auto;
}

@container payroll-review-tools (min-width: 56rem) {
  .payroll-review-tools_grid__HBkiz {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}


.payroll-dashboard_dashboard__2Cp42 {
  container: payroll-dashboard / inline-size;
  min-width: 0;
}

.payroll-dashboard_workspaceGrid__ajOYi {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: start;
  gap: 12px;
}

.payroll-dashboard_workspaceGrid__ajOYi > * {
  min-width: 0;
}

.payroll-dashboard_batchSection__1ycDY {
  container: payroll-batches / inline-size;
}

.payroll-dashboard_batchSection__1ycDY .workspace-section-header {
  padding-block: 8px;
}

.payroll-dashboard_batchSection__1ycDY .workspace-section-header .payroll-dashboard_primaryAction__CRxdd {
  margin-right: 13px;
  padding-inline: 12px;
  gap: 6px;
  font-size: 13px;
  line-height: 20px;
}

.payroll-dashboard_batchIntro__lk1kV {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 4px 12px;
}

.payroll-dashboard_compareAction__FHTJv {
  flex-shrink: 0;
  font-size: 12px;
}

.payroll-dashboard_filters___YGX_ {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
  gap: 8px;
}

.payroll-dashboard_searchField__MScM6 {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  min-width: 0;
  padding-inline: 12px;
  border: 1px solid var(--border-soft);
  border-radius: 8px;
  background: var(--surface-white);
}

.payroll-dashboard_searchField__MScM6:focus-within {
  outline: 2px solid var(--primary);
  outline-offset: 2px;
}

.payroll-dashboard_statusField__Y60op {
  display: flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
}

.payroll-dashboard_statusField__Y60op select {
  flex: 1 1 0;
  min-width: 0;
  max-width: 100%;
}

.payroll-dashboard_batch__hCwJu {
  container: payroll-batch / inline-size;
  min-width: 0;
}

.payroll-dashboard_batchHeader__cRuph {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
  gap: 8px 12px;
  padding: 12px;
  border-bottom: 1px solid var(--border-soft);
}

.payroll-dashboard_batchIcon__WSgjq {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 36px;
  height: 36px;
  border-radius: 10px;
  background: var(--primary-soft);
  color: var(--primary);
}

.payroll-dashboard_batchTitle__iXHe5 {
  overflow-wrap: anywhere;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.45;
}

.payroll-dashboard_batchMeta__f5cJ7 {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 8px;
  font-size: 12px;
}

.payroll-dashboard_statusBadge__FYFcY {
  flex-shrink: 0;
  border-radius: 6px;
  padding: 4px 8px;
  font-weight: 600;
}

.payroll-dashboard_metrics___rJCM {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 16px;
  padding: 12px;
}

.payroll-dashboard_metrics___rJCM > * {
  min-width: 0;
  overflow-wrap: anywhere;
}

.payroll-dashboard_metricValue__5clsc {
  margin-top: 4px;
  font-size: clamp(1rem, 3cqi, 1.25rem);
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  line-height: 1.4;
  letter-spacing: -.02em;
}

.payroll-dashboard_batchFooter__Fbyl4 {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
  gap: 8px 12px;
  padding: 10px 12px;
  border-top: 1px solid var(--border-soft);
  background: var(--surface-secondary);
}

.payroll-dashboard_batchFeedback__gVKaq {
  min-width: 0;
}

.payroll-dashboard_noticeAction__LUTJ9 {
  display: flex;
  align-items: center;
  gap: 6px;
  min-height: 44px;
  max-width: 100%;
  border-radius: 6px;
  color: var(--text-secondary);
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
  text-align: left;
}

.payroll-dashboard_noticeAction__LUTJ9:hover {
  color: var(--primary);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.payroll-dashboard_noticeAction__LUTJ9:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: 2px;
}

.payroll-dashboard_primaryAction__CRxdd {
  min-height: 44px;
  gap: 8px;
  font-size: 13px;
  font-weight: 600;
  box-shadow: 0 1px 2px rgb(15 23 42 / 10%), inset 0 1px 0 rgb(255 255 255 / 12%);
}

.payroll-dashboard_batchAction__GtxkL {
  width: 100%;
}

@container payroll-dashboard (min-width: 52rem) {
  .payroll-dashboard_workspaceGrid__ajOYi[data-has-guide="true"] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@container payroll-batches (min-width: 36rem) {
  .payroll-dashboard_filters___YGX_ {
    grid-template-columns: minmax(0, 1fr) 16rem;
  }
}

@container payroll-batch (min-width: 30rem) {
  .payroll-dashboard_batchHeader__cRuph {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .payroll-dashboard_batchMeta__f5cJ7 {
    justify-content: flex-end;
  }

  .payroll-dashboard_batchFooter__Fbyl4 {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .payroll-dashboard_batchAction__GtxkL {
    width: 15.5rem;
  }
}

@container payroll-batch (min-width: 52rem) {
  .payroll-dashboard_metrics___rJCM:not(.payroll-dashboard_summaryMetrics__aLou9) {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}


.payroll-dashboard_dashboard__2Cp42 { display: grid; gap: 24px; }
.payroll-dashboard_dashboard__2Cp42 > .workspace-page-header { margin-bottom: 5px; }
.payroll-dashboard_overviewPicker__wyhU1 { position: relative; display: flex; flex-direction: column; min-width: 210px; max-width: 310px; color: var(--text-secondary); font-size: 10px; }
.payroll-dashboard_overviewPicker__wyhU1 > span { position: absolute; z-index: 1; top: -7px; left: 10px; padding: 0 4px; background: var(--workspace); }
.payroll-dashboard_overviewPicker__wyhU1 select { min-width: 0; width: 100%; min-height: 44px; border: 1px solid var(--border-soft); border-radius: 7px; padding: 11px 30px 10px 13px; background: #fff; color: var(--charcoal); font-size: 11px; }
.payroll-dashboard_overview__1s19b { display: grid; gap: 22px; min-width: 0; }
.payroll-dashboard_overviewProgress__VZAKD { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px; padding: 22px 23px; border: 1px solid var(--border-soft); border-radius: 13px; background: #fff; }
.payroll-dashboard_overviewIdentity__AA_9L { display: flex; align-items: center; gap: 13px; min-width: 0; }
.payroll-dashboard_overviewIdentity__AA_9L > svg { flex-shrink: 0; color: #8ba2bd; }
.payroll-dashboard_overviewIdentity__AA_9L strong { font-size: 12px; font-weight: 650; }
.payroll-dashboard_overviewIdentity__AA_9L p { font-size: 10px; color: var(--text-secondary); margin-top: 5px; }
.payroll-dashboard_overviewProgress__VZAKD ol { display: flex; flex-wrap: wrap; align-items: center; gap: 18px; }
.payroll-dashboard_overviewProgress__VZAKD li { display: flex; align-items: center; gap: 7px; color: #5e6c80; font-size: 10px; }
.payroll-dashboard_overviewProgress__VZAKD li > span { display: inline-flex; width: 22px; height: 22px; align-items: center; justify-content: center; border-radius: 50%; background: #f2f5f9; font-size: 9px; }
.payroll-dashboard_overviewProgress__VZAKD li[data-complete="true"] { color: var(--primary); font-weight: 600; }
.payroll-dashboard_overviewProgress__VZAKD li[data-complete="true"] > span { background: #eaf2fd; }
.payroll-dashboard_overviewMetrics__8qnGz { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 15px; }
.payroll-dashboard_overviewMetrics__8qnGz > div { min-width: 0; padding: 19px 19px 17px; border: 1px solid var(--border-soft); border-radius: 12px; background: #fff; }
.payroll-dashboard_overviewMetrics__8qnGz > div[data-net="true"] { background: #edf4fd; border-color: #d9e6f7; }
.payroll-dashboard_overviewMetrics__8qnGz dt { display: flex; align-items: center; justify-content: space-between; gap: 9px; color: var(--text-secondary); font-size: 11px; }
.payroll-dashboard_overviewMetrics__8qnGz svg { color: #8ba2bd; }
.payroll-dashboard_overviewMetrics__8qnGz dd { margin-top: 18px; font-size: clamp(24px, 2vw, 30px); font-weight: 550; line-height: 1.2; letter-spacing: -.055em; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.payroll-dashboard_overviewMetrics__8qnGz .payroll-dashboard_overviewMetricNote__r1L1B { margin-top: 11px; color: var(--text-secondary); font-size: 11px; font-weight: 400; letter-spacing: normal; line-height: 1.5; }
.payroll-dashboard_overviewNotice__LiZ0d { display: flex; align-items: center; gap: 12px; padding: 16px 19px; border: 1px solid #dfe8f2; border-radius: 9px; background: #eff4f9; }
.payroll-dashboard_overviewNotice__LiZ0d > svg { flex-shrink: 0; color: #6883a0; }
.payroll-dashboard_overviewNotice__LiZ0d strong { font-size: 11px; font-weight: 600; }
.payroll-dashboard_overviewNotice__LiZ0d p { margin-top: 4px; color: var(--text-secondary); font-size: 10px; line-height: 1.7; }
.payroll-dashboard_overviewEmployees__NOeT7 { min-width: 0; overflow: hidden; border: 1px solid var(--border-soft); border-radius: 13px; background: #fff; }
.payroll-dashboard_overviewEmployees__NOeT7 > header { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 22px 23px 18px; }
.payroll-dashboard_overviewEmployees__NOeT7 h2 { font-size: 13px; font-weight: 650; letter-spacing: -.02em; }
.payroll-dashboard_overviewEmployees__NOeT7 header p { margin-top: 5px; color: var(--text-secondary); font-size: 11px; }
.payroll-dashboard_overviewEmployees__NOeT7 header > span { font-size: 10px; color: var(--text-secondary); white-space: nowrap; }
.payroll-dashboard_overviewTableScroll__QVx13 { overflow-x: auto; scrollbar-width: thin; }
.payroll-dashboard_overviewTableScroll__QVx13 table { width: 100%; min-width: 650px; border-collapse: collapse; text-align: left; white-space: nowrap; font-size: 11px; }
.payroll-dashboard_overviewTableScroll__QVx13 th { position: relative; border-block: 1px solid var(--border-soft); background: #f9fbfd; color: #5e6c80; padding: 12px 17px; font-weight: 550; }
.payroll-dashboard_overviewTableScroll__QVx13 th .sr-only { left: 0; top: 0; }
.payroll-dashboard_overviewTableScroll__QVx13 td { padding: 15px 17px; border-bottom: 1px solid #edf0f5; color: #59677a; }
.payroll-dashboard_overviewTableScroll__QVx13 :is(th,td):first-child { padding-left: 23px; }
.payroll-dashboard_overviewTableScroll__QVx13 :is(th,td):last-child { padding-right: 23px; }
.payroll-dashboard_overviewTableScroll__QVx13 tr:last-child td { border-bottom: 0; }
.payroll-dashboard_overviewPerson__jOn2_ { display: flex; align-items: center; gap: 10px; }
.payroll-dashboard_overviewPerson__jOn2_ > span { display: inline-flex; width: 36px; height: 36px; flex-shrink: 0; align-items: center; justify-content: center; border-radius: 50%; background: #e8effb; color: #496ca2; font-size: 10px; font-weight: 650; }
.payroll-dashboard_overviewPerson__jOn2_ strong { display: block; font-size: 12px; font-weight: 600; color: var(--charcoal); }
.payroll-dashboard_overviewPerson__jOn2_ small { display: block; margin-top: 3px; font-size: 10px; color: var(--text-secondary); }
.payroll-dashboard_overviewTableScroll__QVx13 .payroll-dashboard_overviewNet__CmBWV { color: var(--primary); font-weight: 600; }
.payroll-dashboard_overviewEmployeeLink___SY_D { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 9px 14px; border: 1px solid var(--border-soft); border-radius: 7px; color: #53647b; font-size: 11px; font-weight: 600; }
.payroll-dashboard_overviewEmployeeLink___SY_D:hover { background: #f4f7fb; }
.payroll-dashboard_overviewEmpty__iHwdy { padding: 24px 23px; border-top: 1px solid var(--border-soft); font-size: 12px; color: var(--text-secondary); }
.payroll-dashboard_dashboard__2Cp42 .payroll-dashboard_workspaceGrid__ajOYi { grid-template-columns: minmax(0, 1fr); gap: 22px; }
@media (max-width: 640px) {
  .payroll-dashboard_dashboard__2Cp42, .payroll-dashboard_overview__1s19b { gap: 18px; }
  .payroll-dashboard_overviewPicker__wyhU1 { width: 100%; max-width: none; }
  .payroll-dashboard_overviewProgress__VZAKD { padding: 18px 16px; }
  .payroll-dashboard_overviewProgress__VZAKD ol { gap: 12px; }
  .payroll-dashboard_overviewMetrics__8qnGz { grid-template-columns: 1fr; gap: 10px; }
  .payroll-dashboard_overviewMetrics__8qnGz > div { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 6px 12px; padding: 16px; }
  .payroll-dashboard_overviewMetrics__8qnGz dd:not(.payroll-dashboard_overviewMetricNote__r1L1B) { grid-column: 2; grid-row: 1 / 3; align-self: center; margin: 0; font-size: 24px; }
  .payroll-dashboard_overviewMetrics__8qnGz .payroll-dashboard_overviewMetricNote__r1L1B { grid-column: 1; grid-row: 2; margin: 0; font-size: 10px; }
  .payroll-dashboard_overviewMetrics__8qnGz svg { display: none; }
  .payroll-dashboard_overviewEmployees__NOeT7 > header { padding: 19px 16px 16px; align-items: flex-start; }
  .payroll-dashboard_overviewEmployees__NOeT7 header > span { white-space: normal; }
}