*{box-sizing:border-box}:root{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5;font-weight:400;color:#1a1a1a;background-color:#fafafa}html,body{overscroll-behavior-y:none}body{margin:0;min-height:100vh}#root{min-height:100vh}a{color:#2563eb;text-decoration:none}a:hover{text-decoration:underline}input,select,textarea,button{font:inherit}input.no-spinner[type=number]::-webkit-inner-spin-button,input.no-spinner[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input.no-spinner[type=number]{-moz-appearance:textfield}input.rough-takeoff-qty-input[type=number]{border:none;border-radius:0;border-bottom:1px solid #d1d5db;background:transparent;padding:2px 4px;text-align:center}input.rough-takeoff-qty-input[type=number]:focus-visible{outline:none;border-bottom-color:#2563eb;border-bottom-width:2px}.generate-pay-reports-date-input{width:auto;max-width:9.5rem;min-width:0}.generate-pay-reports-date-input::-webkit-datetime-edit{padding:0}.generate-pay-reports-date-input::-webkit-datetime-edit-fields-wrapper{padding:0;max-width:max-content}.generate-pay-reports-date-input::-webkit-datetime-edit-text,.generate-pay-reports-date-input::-webkit-datetime-edit-month-field,.generate-pay-reports-date-input::-webkit-datetime-edit-day-field,.generate-pay-reports-date-input::-webkit-datetime-edit-year-field{padding:0}.generate-pay-reports-date-input::-webkit-calendar-picker-indicator{margin:0;margin-inline-start:-.85em;padding:0;cursor:pointer}button{cursor:pointer}:root{--app-nav-pad-y: .75rem;--app-nav-pad-x: 1.5rem;--app-main-pad: 1.5rem;--page-wrap-pad: 2rem}.appNav{padding:var(--app-nav-pad-y) var(--app-nav-pad-x);padding-top:max(var(--app-nav-pad-y),env(safe-area-inset-top,0px))}.appMain{padding:var(--app-main-pad)}.pageWrap{padding:var(--page-wrap-pad)}.prospectsConvert{max-width:720px}.prospectsConvert .convertProspectSelector{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.25rem 1.5rem;margin-bottom:1.5rem;box-shadow:0 1px 3px #0000000d}.prospectsConvert .convertLabel{display:block;margin-bottom:.5rem;font-weight:600;font-size:.9375rem;color:#374151}.prospectsConvert .convertProspectSummary{margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e7eb;display:grid;gap:.5rem}.prospectsConvert .convertProspectSummaryRow{display:flex;gap:.75rem;font-size:.9375rem}.prospectsConvert .convertProspectSummaryLabel{color:#6b7280;min-width:4.5rem}.prospectsConvert .convertSection{margin-bottom:1.5rem;padding:1.5rem;border:1px solid #e5e7eb;border-radius:12px;background:#fff;box-shadow:0 1px 3px #0000000d}.prospectsConvert .convertSectionTitle{margin:0 0 .25rem;font-size:1.0625rem;font-weight:600;color:#111827}.prospectsConvert .convertSectionDesc{margin:0 0 1.25rem;font-size:.875rem;color:#6b7280}.prospectsConvert .convertCardsGrid{display:grid;grid-template-columns:1fr;gap:1rem;margin-bottom:1rem}@media (min-width: 640px){.prospectsConvert .convertCardsGrid{grid-template-columns:repeat(2,1fr)}}.payStubAdditionalModal__toolsRow{display:grid;grid-template-columns:1fr;gap:.875rem;margin-bottom:1rem}@media (min-width: 640px){.payStubAdditionalModal__toolsRow{grid-template-columns:repeat(2,minmax(0,1fr))}}.payStubAdditionalModal__toolPanel{min-width:0}.prospectsConvert .convertCard{padding:1rem 1.25rem;border:1px solid #e5e7eb;border-radius:10px;background:#fafafa;transition:border-color .15s,box-shadow .15s}.prospectsConvert .convertCard:hover{border-color:#d1d5db;box-shadow:0 1px 2px #0000000a}.prospectsConvert .convertCardHeader{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.prospectsConvert .convertCardTitle{font-weight:600;font-size:.9375rem;color:#374151}.prospectsConvert .convertCardFields{display:grid;gap:.75rem}.prospectsConvert .convertInput,.prospectsConvert .convertSelect{width:100%;padding:.625rem .875rem;border:1px solid #d1d5db;border-radius:8px;font-size:.9375rem;background:#fff;transition:border-color .15s,box-shadow .15s;box-sizing:border-box}.prospectsConvert .convertInput:focus,.prospectsConvert .convertSelect:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626}.prospectsConvert .convertInput::placeholder{color:#9ca3af}.prospectsConvert .convertAddBtn{padding:.5rem 1rem;background:#fff;border:1px dashed #d1d5db;border-radius:8px;color:#6b7280;font-size:.875rem;font-weight:500;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.prospectsConvert .convertAddBtn:hover{border-color:#3b82f6;color:#3b82f6;background:#eff6ff}.prospectsConvert .convertRemoveBtn{padding:.25rem .625rem;background:#fef2f2;color:#dc2626;border:1px solid #fecaca;border-radius:6px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s}.prospectsConvert .convertRemoveBtn:hover{background:#fee2e2;border-color:#fca5a5}.prospectsConvert .convertSubmitRow{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.prospectsConvert .convertError{color:#dc2626;font-size:.875rem;margin:0 0 1rem}.prospectsConvert .convertSubmit{padding:.75rem 1.75rem;background:#3b82f6;color:#fff;border:none;border-radius:10px;font-weight:600;font-size:1rem;cursor:pointer;box-shadow:0 1px 3px #3b82f659;transition:background .15s,transform .1s}.prospectsConvert .convertSubmit:hover:not(:disabled){background:#2563eb}.prospectsConvert .convertSubmit:active:not(:disabled){transform:translateY(1px)}.prospectsConvert .convertSubmit:disabled{cursor:not-allowed;opacity:.7}.prospectsConvert .convertEmptyState{padding:3rem 2rem;text-align:center;background:#fff;border:1px solid #e5e7eb;border-radius:12px;border-style:dashed}.prospectsConvert .convertEmptyStateText{margin:0 0 .5rem;font-size:1rem;color:#374151}.prospectsConvert .convertEmptyStateHint{margin:0;font-size:.875rem;color:#9ca3af}.workflow .wf-btn-ghost{padding:.25rem .5rem;font-size:.75rem;font-weight:500;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;color:#374151;cursor:pointer;transition:background .15s,border-color .15s}.workflow .wf-btn-ghost:hover{background:#f3f4f6;border-color:#d1d5db}.workflow .wf-btn-primary{padding:.5rem 1rem;font-size:.875rem;font-weight:500;background:#2563eb;border:none;border-radius:6px;color:#fff;cursor:pointer;transition:background .15s}.workflow .wf-btn-primary:hover{background:#1d4ed8}.workflow .wf-btn-success{padding:.2rem .5rem;font-size:.75rem;font-weight:500;background:#059669;border:none;border-radius:6px;color:#fff;cursor:pointer;transition:background .15s}.workflow .wf-btn-success:hover{background:#047857}.workflow .wf-btn-success-soft{padding:.25rem .5rem;font-size:.75rem;font-weight:500;background:#d1fae5;border:1px solid #a7f3d0;border-radius:6px;color:#047857;cursor:pointer;transition:background .15s,border-color .15s}.workflow .wf-btn-success-soft:hover{background:#a7f3d0;border-color:#6ee7b7}.workflow .wf-btn-info{padding:.2rem .5rem;font-size:.75rem;font-weight:500;background:#0ea5e9;border:none;border-radius:6px;color:#fff;cursor:pointer;transition:background .15s}.workflow .wf-btn-info:hover{background:#0284c7}.workflow .wf-btn-danger{padding:.25rem .5rem;font-size:.75rem;font-weight:500;background:#fee2e2;border:1px solid #fecaca;border-radius:6px;color:#991b1b;cursor:pointer;transition:background .15s,border-color .15s}.workflow .wf-btn-danger:hover{background:#fecaca}.workflow .wf-btn-secondary{padding:.25rem .5rem;font-size:.75rem;font-weight:500;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;color:#374151;cursor:pointer;transition:background .15s,border-color .15s}.workflow .wf-btn-secondary:hover{background:#e5e7eb}.workflow .wf-btn-secondary-blue{background:#dbeafe;color:#1e40af;border-color:#bfdbfe}.workflow .wf-btn-secondary-blue:hover{background:#bfdbfe}.workflow .wf-btn-link{padding:0;background:none;border:none;color:#2563eb;cursor:pointer;text-decoration:underline;font:inherit}.workflow .wf-btn-link:hover{text-decoration:underline}.workflow .wf-btn-modal-primary,.workflow .wf-btn-modal-secondary{padding:.5rem 1rem;font-size:.875rem;font-weight:500;border-radius:6px;cursor:pointer}.workflow .wf-btn-modal-primary{background:#2563eb;color:#fff;border:none}.workflow .wf-btn-modal-primary.wf-btn-danger-style{background:#dc2626;color:#fff}.workflow .wf-btn-modal-primary.wf-btn-danger-style:hover{background:#b91c1c}.workflow .wf-btn-modal-primary:disabled,.workflow .wf-btn-modal-secondary:disabled{cursor:not-allowed;opacity:.7}.workflow .wf-btn-modal-secondary{background:#f3f4f6;color:#111827;border:1px solid #d1d5db}.workflow .wf-btn-modal-secondary:hover{background:#e5e7eb}.assignedStageCard{border:1px solid #e5e7eb;border-radius:10px;padding:1rem;margin-bottom:.75rem;background:#fff;box-shadow:0 1px 2px #0000000d}.assignedStageCard--rejected{background:#fef2f2;border-left:4px solid #dc2626}.assignedStageCard--approved,.assignedStageCard--completed{background:#f0fdf4;border-left:4px solid #16a34a}.assignedStageCard--skipped{background:#f9fafb;border-left:4px solid #9ca3af}.assignedStageCard--in_progress{border-left:4px solid #2563eb}.assignedStageCard-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.5rem}.assignedStageCard-titleRow{display:flex;flex-direction:column;gap:.25rem}.assignedStageCard-stageName{font-weight:600;font-size:1rem}.assignedStageCard-assignee{display:inline-flex;align-items:center;gap:.35rem;font-size:.875rem;color:#6b7280}.assignedStageCard-badge{flex-shrink:0;padding:.25rem .5rem;font-size:.75rem;font-weight:500;border-radius:9999px}.assignedStageCard-badge.pending{background:#f3f4f6;color:#6b7280;border:1px solid #e5e7eb}.assignedStageCard-badge.in_progress{background:#dbeafe;color:#1d4ed8;border:1px solid #93c5fd}.assignedStageCard-badge.completed,.assignedStageCard-badge.approved{background:#dcfce7;color:#15803d;border:1px solid #86efac}.assignedStageCard-badge.rejected{background:#fee2e2;color:#b91c1c;border:1px solid #fecaca}.assignedStageCard-badge.skipped{background:#f3f4f6;color:#6b7280;border:1px solid #e5e7eb}.assignedStageCard-projectLink{display:flex;align-items:center;gap:.35rem;font-size:.875rem;color:#6b7280;margin-bottom:.5rem}.assignedStageCard-rejectedNotice{display:flex;gap:.5rem;align-items:flex-start;margin-bottom:.75rem;padding:.5rem .75rem;background:#b91c1c;border-left:4px solid #991b1b}.assignedStageCard-rejectedNotice svg{flex-shrink:0;color:#fff}.assignedStageCard-rejectedNotice-text{font-size:.875rem;color:#fff}.assignedStageCard-rejectedNotice-reason{font-size:.875rem;color:#fff;margin-top:.25rem}.assignedStageCard-meta{display:flex;flex-wrap:wrap;gap:.5rem 1rem;font-size:.875rem;color:#6b7280;margin-bottom:.5rem}.assignedStageCard-metaItem{display:inline-flex;align-items:center;gap:.35rem}.assignedStageCard-row{display:flex;align-items:center;gap:.35rem;font-size:.875rem;color:#6b7280;margin-bottom:.5rem}.assignedStageCard-link{color:#2563eb;text-decoration:underline}.assignedStageCard-link:hover{text-decoration:none}.assignedStageCard-notes{margin:.75rem 0 .5rem}.assignedStageCard-notesLabel{font-size:.875rem;font-weight:500;margin-bottom:.25rem}.assignedStageCard-notesContent{font-size:.875rem;color:#374151;white-space:pre-wrap;padding:.5rem;background:#f9fafb;border-radius:4px;border:1px solid #e5e7eb;margin:0}.assignedStageCard-rejection{font-size:.875rem;color:#b91c1c;margin-top:.5rem}.assignedStageCard-skippedReason{font-size:.875rem;color:#6b7280;margin-top:.5rem}.assignedStageCard-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid #e5e7eb}.assignedStageCard .wf-btn-secondary,.assignedStageCard .wf-btn-primary,.assignedStageCard .wf-btn-info,.assignedStageCard .wf-btn-danger{display:inline-flex;align-items:center;gap:.35rem}.assignedStageCard .wf-btn-secondary{padding:.25rem .5rem;font-size:.75rem;font-weight:500;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;color:#374151;cursor:pointer;transition:background .15s,border-color .15s}.assignedStageCard .wf-btn-secondary:hover{background:#e5e7eb}.assignedStageCard .wf-btn-primary{padding:.5rem 1rem;font-size:.875rem;font-weight:500;background:#2563eb;border:none;border-radius:6px;color:#fff;cursor:pointer;transition:background .15s}.assignedStageCard .wf-btn-primary:hover{background:#1d4ed8}.assignedStageCard .wf-btn-info{padding:.2rem .5rem;font-size:.75rem;font-weight:500;background:#0ea5e9;border:none;border-radius:6px;color:#fff;cursor:pointer;transition:background .15s}.assignedStageCard .wf-btn-info:hover{background:#0284c7}.assignedStageCard .wf-btn-danger{padding:.25rem .5rem;font-size:.75rem;font-weight:500;background:#fee2e2;border:1px solid #fecaca;border-radius:6px;color:#991b1b;cursor:pointer;transition:background .15s,border-color .15s}.assignedStageCard .wf-btn-danger:hover{background:#fecaca}@media (max-width: 640px){.assignedStageCard-actions button{min-height:44px;padding:.5rem .75rem}}@media (max-width: 640px){:root{--app-nav-pad-x: .5rem;--app-main-pad: .5rem;--page-wrap-pad: .5rem}.appNav{flex-wrap:wrap}.fwd-btn-desktop{display:none!important}.customers-projects-bids-links{flex-direction:column!important;align-items:flex-end}.cost-matrix-date-header{display:flex;flex-direction:column;align-items:flex-end;line-height:1.2}.prospectsConvert{max-width:100%}.prospectsConvert .convertProspectSelector{padding:1rem}.prospectsConvert .convertSection{padding:1.25rem;border-radius:10px}.prospectsConvert .convertCard{padding:1rem}.prospectsConvert .convertProspectSummaryRow{flex-wrap:wrap}.prospectsConvert .convertInput,.prospectsConvert .convertSelect{min-height:44px;font-size:16px;padding:.75rem}.prospectsConvert .convertAddBtn,.prospectsConvert .convertRemoveBtn{min-height:44px;padding:.5rem .75rem}.prospectsConvert .convertSubmit{width:100%;min-height:48px}.prospectListDesktop{display:none!important}.prospectListMobile{display:block!important}.prospectListMobileCard{min-height:44px;padding:1rem}.followUpInfoCard{flex-direction:column}.followUpInfoCardDetails,.followUpInfoCardNotes{flex:none;width:100%}}@media (min-width: 641px){.fwd-btn-desktop{display:inline-block!important}.prospectListMobile{display:none!important}}.prospectsEditModalDeleteBtn:hover:not(:disabled){color:#dc2626!important}.prospectListWrapper{border:1px solid #e5e7eb;border-radius:4px;overflow:hidden}.prospectListDesktop{display:block}.prospectListMobile{display:none}.prospectListMobileEmpty{padding:1rem;color:#6b7280;font-size:.9375rem}.prospectListMobileCard{display:block;width:100%;text-align:left;padding:1rem;border:none;border-bottom:1px solid #e5e7eb;background:#fff;cursor:pointer;font-size:.9375rem;font-family:inherit}.prospectListMobileCard:last-child{border-bottom:none}.prospectListMobileCard:hover{background:#f9fafb}.prospectListMobileCardSelected{background:#eff6ff!important}.prospectListMobileCardTitle{font-weight:600;font-size:1rem;color:#111827;margin-bottom:.5rem}.prospectListMobileCardRow{display:flex;gap:.5rem;margin-bottom:.35rem;word-break:break-word}.prospectListMobileCardLabel{flex-shrink:0;min-width:5rem;color:#6b7280;font-size:.875rem}.prospectListMobileCardMeta{display:flex;gap:1rem;margin-top:.5rem;padding-top:.5rem;border-top:1px solid #f3f4f6;font-size:.8125rem;color:#6b7280}.followUpInfoCard{display:flex;gap:1rem;padding:1rem;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:1.5rem;background:#fafafa;box-shadow:0 1px 3px #0000000d}.followUpInfoCardDetails{flex:0 1 45%;min-width:0;display:grid;gap:.5rem;font-size:.9375rem}.followUpInfoCardNotes{flex:1 1 55%;min-width:0;display:flex;flex-direction:column;gap:.5rem}.followUpInfoCardNotesActions{display:flex;gap:.5rem}.hoursByDayGrid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.25rem .5rem;margin-bottom:.5rem;padding:.5rem .75rem;background:#fafafa;border-radius:6px;font-size:.8125rem;color:#6b7280}.hoursByDayCell{min-width:0;font-variant-numeric:tabular-nums}button.hoursByDayCell.hoursByDayCell--interactive{margin:0;padding:.15rem .25rem;width:100%;max-width:100%;font:inherit;font-size:inherit;color:inherit;text-align:inherit;line-height:inherit;background:transparent;border:1px solid transparent;border-radius:4px;cursor:pointer;box-sizing:border-box}button.hoursByDayCell.hoursByDayCell--interactive:hover{background:#f3f4f6;border-color:#e5e7eb}button.hoursByDayCell.hoursByDayCell--interactive:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}.hoursByDayGoalsLine{font-size:.75rem;color:#9ca3af;line-height:1.2}@media (min-width: 641px){.hoursByDayCell{display:flex;flex-direction:column;gap:.2rem;align-items:center;text-align:center}button.hoursByDayCell.hoursByDayCell--interactive{text-align:center}}@media (max-width: 640px){.hoursByDayGrid{grid-template-columns:1fr}.hoursByDayCell{display:flex;flex-direction:row;flex-wrap:wrap;align-items:baseline;column-gap:.25rem}button.hoursByDayCell.hoursByDayCell--interactive{flex-direction:row;flex-wrap:wrap;align-items:baseline;justify-content:flex-start;text-align:left}.myTimeLastWeekSummary{text-align:right}.myTimeLastWeekSummary .hoursByDayGrid{justify-items:end;text-align:right}.myTimeLastWeekSummary .hoursByDayCell{align-items:flex-end}}.myTimeDayTimelineScroll{-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}.myTimeDayGapStrip{flex-shrink:0;-webkit-user-select:none;user-select:none;pointer-events:none}button.myTimeDaySpanAdjustLink{color:#2563eb;text-decoration:underline;text-underline-offset:2px;cursor:pointer;background:none;border:none;padding:0;font:inherit;text-align:left;font-variant-numeric:tabular-nums}button.myTimeDaySpanAdjustLink:hover:not(:disabled){color:#1d4ed8}button.myTimeDaySpanAdjustLink:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}button.myTimeDaySpanAdjustLink:disabled{opacity:.5;cursor:not-allowed}.myTimeDayClusterFormGrid{display:grid;grid-template-columns:minmax(12rem,.45fr) minmax(0,1fr);column-gap:12px;row-gap:8px;align-items:start}.myTimeDayClusterFormSegmentDivider{grid-column:1 / -1;width:100%;min-height:0;height:1px;margin:12px 0 8px;border:0;padding:0;background:linear-gradient(90deg,transparent 0%,#e8eaee 14%,#e8eaee 86%,transparent 100%)}@media (max-width: 520px){.myTimeDaySegmentOptionBRow{flex-wrap:wrap;row-gap:6px}}@media (max-width: 560px){.myTimeDayClusterFormGrid{grid-template-columns:1fr}.myTimeDayFormSpanFullRowInner{flex-direction:column;align-items:stretch}.myTimeDayFormSpanLabel{width:100%!important;text-align:left;padding-right:0}}@media (max-width: 640px){.myTimeDayVerticalStrip{width:52px!important;min-width:52px}}@media (pointer: coarse){.myTimeBoundaryHandle{width:32px!important;min-height:44px!important;margin-left:-16px!important;margin-top:-22px!important;border-radius:6px!important}}body.my-time-boundary-dragging{cursor:grabbing!important}@keyframes dashboard-skeleton-pulse{50%{opacity:.62}}.dashboard-skeleton-pulse{animation:dashboard-skeleton-pulse 1.2s ease-in-out infinite}
