.accordion-container .card[data-v-71995c6a]{margin-bottom:1rem}.card-header[data-v-71995c6a]{cursor:pointer;background-color:#f5f8fa;padding:.75rem 1rem;color:#525860}.ai-card-header[data-v-71995c6a]{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;gap:10px}.card-body[data-v-71995c6a]{padding:1rem}.text-area-noborder[data-v-71995c6a]{border:1px solid #fff!important;padding:.5rem!important}.worksheet-table[data-v-ef1d5fd2]{min-width:760px}.worksheet-table .number-column[data-v-ef1d5fd2]{width:140px}.worksheet-table .action-column[data-v-ef1d5fd2]{width:48px}.worksheet-summary[data-v-ef1d5fd2]{position:sticky;bottom:0;z-index:2;-webkit-box-shadow:0 -2px 10px rgba(0,0,0,.08);box-shadow:0 -2px 10px rgba(0,0,0,.08)}.job-costing-open-sheet[data-v-3530b048]{background:#f4e6f5;border:1px solid #e3c6e4;border-radius:6px}#quote-equipment-table tbody td[data-v-208f1a65]{vertical-align:middle;padding:14px 12px}.quote-eq-row td[data-v-208f1a65]{border-top:1px solid #f1eff6}.quote-eq-row.is-selected td[data-v-208f1a65]{background-color:#faf8fd}.quote-eq-row.is-selected td[data-v-208f1a65]:first-child{-webkit-box-shadow:inset 3px 0 0 #6f42c1;box-shadow:inset 3px 0 0 #6f42c1}.quote-eq-check-col[data-v-208f1a65]{width:44px}.quote-eq-choice[data-v-208f1a65]{display:inline-block;margin:0}.quote-eq-name[data-v-208f1a65]{font-weight:600;font-size:14px;color:#3f3356;line-height:1.3}.quote-eq-sub[data-v-208f1a65]{margin-top:2px;font-size:12.5px;color:#8a8598}.quote-eq-muted[data-v-208f1a65]{font-size:13px;color:#5f5a6e}.quote-eq-badge[data-v-208f1a65]{display:inline-block;padding:3px 10px;border-radius:999px;background-color:#f3f1f8;color:#5f5a6e;font-size:12px;white-space:nowrap}.quote-eq-note-btn[data-v-208f1a65]{background:none;border:none;padding:2px 0;color:#6f42c1;font-size:12.5px;cursor:pointer;white-space:nowrap}.quote-eq-note-btn[data-v-208f1a65]:hover{text-decoration:underline}.quote-eq-note-btn .fa[data-v-208f1a65]{margin-right:4px}.quote-eq-note-row td[data-v-208f1a65]{border-top:none;background-color:#fbfafd;padding:4px 12px 14px}.quote-eq-note-label[data-v-208f1a65]{display:block;margin:0 0 4px;font-size:11.5px;color:#8a8598}.quote-equipment-note[data-v-208f1a65]{resize:vertical;min-height:52px;max-width:560px;font-size:12.5px}.appointment-history-affordance[data-v-6b2ff2b8]{display:inline-block}.appointment-history-link[data-v-6b2ff2b8]{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:4px;font-size:11px;color:#6e0677;text-decoration:none;opacity:.85}.appointment-history-link[data-v-6b2ff2b8]:hover{text-decoration:underline;opacity:1}.appointment-history-count[data-v-6b2ff2b8]{font-weight:600}.appointment-history-overlay[data-v-6b2ff2b8]{position:fixed;inset:0;z-index:10000;background:rgba(59,7,100,.35)}.appointment-history-panel[data-v-6b2ff2b8]{position:absolute;top:0;right:0;height:100%;width:100%;max-width:480px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;background:#fff;-webkit-box-shadow:-6px 0 24px rgba(59,7,100,.25);box-shadow:-6px 0 24px rgba(59,7,100,.25)}.appointment-history-panel__header[data-v-6b2ff2b8]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid #e9e4f5}.appointment-history-panel__header h4[data-v-6b2ff2b8]{margin:0;font-size:16px;color:#3b0764}.appointment-history-panel__header p[data-v-6b2ff2b8]{margin:4px 0 0;font-size:12px;color:#6b6486}.appointment-history-close[data-v-6b2ff2b8]{border:none;background:transparent;color:#6b6486;font-size:14px;cursor:pointer;padding:4px}.appointment-history-panel__body[data-v-6b2ff2b8]{-webkit-box-flex:1;-ms-flex:1;flex:1;overflow-y:auto;padding:16px 20px}.appointment-history-list[data-v-6b2ff2b8]{list-style:none;margin:0;padding:0}.appointment-history-item[data-v-6b2ff2b8]{border:1px solid #e9e4f5;border-radius:8px;background:#fff;padding:12px 14px;margin-bottom:10px}.appointment-history-item--current[data-v-6b2ff2b8]{border-color:#c9b3e8;background:#f8f4fe}.appointment-history-item__top[data-v-6b2ff2b8]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;gap:8px}.appointment-history-item__label[data-v-6b2ff2b8]{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#6e0677}.appointment-history-item__window[data-v-6b2ff2b8]{margin-top:6px;font-size:14px;font-weight:600;color:#3b0764}.appointment-history-item__legacy[data-v-6b2ff2b8]{display:inline-block;margin-top:6px;padding:2px 8px;border:1px solid #f0dfae;border-radius:999px;background:#fdf8ec;font-size:11px;color:#8a6d1d}.appointment-history-item__reason[data-v-6b2ff2b8]{margin-top:4px;font-size:13px;color:#4b4368}.appointment-history-muted[data-v-6b2ff2b8]{margin-top:4px;font-size:11px;color:#8a83a5}.appt-reschedule-overlay[data-v-51f8ddcc]{position:fixed;inset:0;z-index:1060;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:48px 16px 16px;background:rgba(15,23,42,.45);overflow-y:auto}.appt-reschedule-panel[data-v-51f8ddcc]{width:100%;max-width:680px;background:#fff;border-radius:8px;-webkit-box-shadow:0 18px 42px rgba(15,23,42,.25);box-shadow:0 18px 42px rgba(15,23,42,.25);padding:20px 24px}.appt-reschedule-header[data-v-51f8ddcc]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;gap:12px}.appt-reschedule-header h4[data-v-51f8ddcc]{margin:0 0 4px;font-size:17px;font-weight:700;color:#3b0764}.appt-reschedule-header p[data-v-51f8ddcc]{margin:0;font-size:13px;color:#4b5563}.appt-reschedule-close[data-v-51f8ddcc]{border:none;background:none;color:#9ca3af;font-size:16px;cursor:pointer;padding:4px}.appt-reschedule-close[data-v-51f8ddcc]:hover{color:#4b5563}.appt-reschedule-dates[data-v-51f8ddcc]{display:-webkit-box;display:-ms-flexbox;display:flex;gap:10px;margin:14px 0;-ms-flex-wrap:wrap;flex-wrap:wrap}.appt-reschedule-date-card[data-v-51f8ddcc]{-webkit-box-flex:1;-ms-flex:1 1 220px;flex:1 1 220px;border:1px solid #e5e7eb;background:#f9fafb;border-radius:6px;padding:8px 12px}.appt-reschedule-date-card--new[data-v-51f8ddcc]{border-color:#ddd6fe;background:#f5f3ff}.appt-reschedule-date-card span[data-v-51f8ddcc]{display:block;font-size:11px;font-weight:700;color:#6b7280}.appt-reschedule-date-card--new span[data-v-51f8ddcc]{color:#7c3aed}.appt-reschedule-date-card strong[data-v-51f8ddcc]{display:block;margin-top:2px;font-size:13px;color:#3b0764}.appt-reschedule-field[data-v-51f8ddcc]{margin-bottom:12px}.appt-reschedule-field label[data-v-51f8ddcc]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:8px;font-size:12px;font-weight:700;color:#374151;margin-bottom:4px}.appt-reschedule-field select[data-v-51f8ddcc]{margin-bottom:8px}.appt-reschedule-notify[data-v-51f8ddcc]{border:1px solid #ddd6fe;background:#f5f3ff;border-radius:6px;padding:10px 12px;margin-bottom:14px}.appt-reschedule-toggle[data-v-51f8ddcc]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:8px;font-size:13px;font-weight:600;color:#374151;margin:0;cursor:pointer}.appt-reschedule-notify p[data-v-51f8ddcc]{margin:4px 0 0 24px;font-size:12px;color:#6b7280}.appt-reschedule-footer[data-v-51f8ddcc]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;gap:10px}.appt-reschedule-save[data-v-51f8ddcc]{background:#6e0677;color:#fff;font-weight:600}.appt-reschedule-save[data-v-51f8ddcc]:hover:enabled{background:#5a0562;color:#fff}.appt-reschedule-save[data-v-51f8ddcc]:disabled{opacity:.5;cursor:not-allowed}.appt-reschedule-cancel[data-v-51f8ddcc]{background:#20a4dd;color:#fff;font-weight:600}.appt-reschedule-cancel[data-v-51f8ddcc]:hover{background:#168dc0;color:#fff}.pcu-overlay[data-v-7d97a30c]{position:fixed;inset:0;z-index:1060;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:16px;background:rgba(15,23,42,.45);overflow-y:auto}.pcu-panel[data-v-7d97a30c]{width:100%;max-width:620px;background:#fff;border-radius:8px;-webkit-box-shadow:0 18px 42px rgba(15,23,42,.25);box-shadow:0 18px 42px rgba(15,23,42,.25);padding:20px 24px}.pcu-header[data-v-7d97a30c]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;gap:12px}.pcu-header h4[data-v-7d97a30c]{margin:0 0 4px;font-size:17px;font-weight:700;color:#3b0764}.pcu-header p[data-v-7d97a30c]{margin:0;font-size:13px;color:#4b5563}.pcu-close[data-v-7d97a30c]{border:none;background:none;color:#9ca3af;font-size:16px;cursor:pointer;padding:4px}.pcu-close[data-v-7d97a30c]:hover{color:#4b5563}.pcu-explainer[data-v-7d97a30c]{margin:12px 0 0;font-size:13px;color:#4b5563}.pcu-cards[data-v-7d97a30c]{display:-webkit-box;display:-ms-flexbox;display:flex;gap:10px;margin:14px 0;-ms-flex-wrap:wrap;flex-wrap:wrap}.pcu-card[data-v-7d97a30c]{-webkit-box-flex:1;-ms-flex:1 1 220px;flex:1 1 220px;border:1px solid #e5e7eb;background:#f9fafb;border-radius:6px;padding:8px 12px}.pcu-card--new[data-v-7d97a30c]{border-color:#ddd6fe;background:#f5f3ff}.pcu-card span[data-v-7d97a30c]{display:block;font-size:11px;font-weight:700;color:#6b7280}.pcu-card--new span[data-v-7d97a30c]{color:#7c3aed}.pcu-card strong[data-v-7d97a30c]{display:block;margin-top:2px;font-size:13px;color:#3b0764}.pcu-card em[data-v-7d97a30c]{display:block;margin-top:2px;font-size:13px;font-style:normal;color:#4b5563}.pcu-footer[data-v-7d97a30c]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;gap:10px}.pcu-save[data-v-7d97a30c]{background:#6e0677;color:#fff;font-weight:600}.pcu-save[data-v-7d97a30c]:hover{background:#5a0562;color:#fff}.pcu-cancel[data-v-7d97a30c]{background:#20a4dd;color:#fff;font-weight:600}.pcu-cancel[data-v-7d97a30c]:hover{background:#168dc0;color:#fff}.prc-card[data-v-8ed9dcfa]{background:#fff;border:1px solid rgba(22,33,44,.08);border-radius:10px;-webkit-box-shadow:0 1px 2px rgba(22,33,44,.05),0 4px 14px rgba(22,33,44,.04);box-shadow:0 1px 2px rgba(22,33,44,.05),0 4px 14px rgba(22,33,44,.04)}.prc-title[data-v-8ed9dcfa]{color:#3b0764}.prc-summary[data-v-8ed9dcfa]{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:8px}.prc-chip[data-v-8ed9dcfa]{background:#f5f3ff;border:1px solid #ddd6fe;border-radius:999px;padding:4px 12px;color:#3b0764;font-size:.82rem}.prc-requirement[data-v-8ed9dcfa]{padding:6px 0;border-bottom:1px solid #f1f3f5;font-size:.9rem}.prc-requirement[data-v-8ed9dcfa]:last-child{border-bottom:none}.prc-requirement__name[data-v-8ed9dcfa]{color:#3b0764;font-weight:600}.prc-diff-heading[data-v-8ed9dcfa]{color:#3b0764;font-size:.9rem}.ai-field-label-row[data-v-1037d340]{gap:10px;margin-bottom:2px}.ai-field-label-row[data-v-1037d340],.wo-contact-label-row[data-v-1037d340]{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex}.wo-contact-label-row[data-v-1037d340]{-ms-flex-wrap:nowrap;flex-wrap:nowrap;min-width:0}.wo-contact-label-row .c-toolbar__state-title[data-v-1037d340]{-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wo-contact-stale-indicator[data-v-1037d340]{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:2px;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;margin-left:auto}.wo-contact-title-stale[data-v-1037d340]{color:#dc2626!important}.wo-contact-input-stale[data-v-1037d340],.wo-contact-input-stale[data-v-1037d340]:focus{color:#dc2626;border-color:#f3b4b4}.wo-contact-update-action[data-v-1037d340]{background:none;border:none;padding:0 0 0 2px;font-size:11.5px;font-weight:600;white-space:nowrap;color:#dc2626;text-align:left;cursor:pointer}.wo-contact-update-action[data-v-1037d340]:focus,.wo-contact-update-action[data-v-1037d340]:hover{color:#b91c1c;text-decoration:underline}.wo-contact-fade-enter-active[data-v-1037d340]{-webkit-transition:opacity .8s ease;transition:opacity .8s ease}.wo-contact-fade-enter[data-v-1037d340]{opacity:0}.project-template-linked-jobs[data-v-4906e580]{min-width:0}.linked-jobs-about[data-v-4906e580]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;gap:12px;border:1px solid #e3e7ef;border-left:4px solid #6f42c1;border-radius:8px;background:#faf9ff;padding:12px 14px;margin-bottom:14px}.linked-jobs-about--upcoming[data-v-4906e580]{border-left-color:#007bff;background:#f5f9ff}.linked-jobs-about__icon[data-v-4906e580]{color:#6f42c1;font-size:1.15rem;margin-top:2px}.linked-jobs-about--upcoming .linked-jobs-about__icon[data-v-4906e580]{color:#007bff}.linked-jobs-about__title[data-v-4906e580]{font-size:.95rem;font-weight:700;margin:0 0 3px;color:#2f3542}.linked-jobs-about__text[data-v-4906e580]{color:#5b6472;font-size:.85rem;line-height:1.45;margin:0;max-width:760px}.linked-jobs-toolbar[data-v-4906e580]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;gap:8px;margin-bottom:12px;-ms-flex-wrap:wrap;flex-wrap:wrap}.linked-jobs-range[data-v-4906e580]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;width:160px}.linked-jobs-range__label[data-v-4906e580]{color:#6b7280;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin:0 0 3px}.linked-jobs-refresh[data-v-4906e580]{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:6px;height:31px;padding:0 12px;font-weight:600;white-space:nowrap;color:#3b1f99;background:#f1eefc;border:1px solid #c9bdf0}.linked-jobs-refresh[data-v-4906e580]:hover{color:#2c1580;background:#e5dffa;border-color:#b3a2ea}.linked-jobs-refresh[data-v-4906e580]:disabled{color:#8b95a5;background:#f4f5f8;border-color:#dfe3ec}.linked-jobs-stats[data-v-4906e580]{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr));gap:8px;margin-bottom:14px}.linked-jobs-stat[data-v-4906e580]{min-height:70px;border:1px solid #e3e7ef;border-left:3px solid #6f42c1;border-radius:6px;background:#fff;padding:10px 12px}.linked-jobs-stat--generated[data-v-4906e580]{border-left-color:#28a745}.linked-jobs-stat--upcoming[data-v-4906e580]{border-left-color:#007bff}.linked-jobs-stat--skipped[data-v-4906e580]{border-left-color:#ffc107}.linked-jobs-stat__label[data-v-4906e580]{display:block;color:#6c757d;font-size:.75rem;line-height:1.2}.linked-jobs-stat strong[data-v-4906e580]{display:block;color:#2f3542;font-size:1.35rem;line-height:1.4}.linked-jobs-empty[data-v-4906e580]{text-align:center;padding:26px 12px;border:1px dashed #d7dce6;border-radius:6px;background:#fbfcfe}.linked-jobs-empty i[data-v-4906e580]{color:#8b95a5;font-size:1.8rem;margin-bottom:8px}.linked-jobs-empty h6[data-v-4906e580]{font-weight:700;margin:0 0 4px}.linked-jobs-table-wrap[data-v-4906e580]{width:100%}.linked-jobs-table[data-v-4906e580]{min-width:720px;margin-bottom:0}.linked-jobs-table td[data-v-4906e580],.linked-jobs-table th[data-v-4906e580]{vertical-align:top}.linked-jobs-row--skipped .linked-jobs-date strong[data-v-4906e580]{color:#6c757d;text-decoration:line-through}.linked-jobs-link[data-v-4906e580]{color:#4d2abf;font-weight:700;text-decoration:none}.linked-jobs-link[data-v-4906e580]:hover{color:#321a8a;text-decoration:underline}.linked-jobs-status-pill[data-v-4906e580]{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;min-height:24px;border-radius:6px;padding:3px 8px;font-size:.78rem;font-weight:700;white-space:nowrap}.linked-jobs-status-pill--scheduled[data-v-4906e580]{color:#0b5cad;background:#e8f2ff}.linked-jobs-status-pill--pending[data-v-4906e580]{color:#8a4b00;background:#fff3cd}.linked-jobs-status-pill--ready[data-v-4906e580]{color:#0f6848;background:#dff5ea}.linked-jobs-status-pill--assigned[data-v-4906e580]{color:#41464b;background:#e9ecef}.linked-jobs-status-pill--completed[data-v-4906e580]{color:#155724;background:#d4edda}.linked-jobs-status-pill--skipped[data-v-4906e580]{color:#856404;background:#fff3cd}.linked-jobs-actions[data-v-4906e580]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:6px;-ms-flex-wrap:wrap;flex-wrap:wrap}.linked-jobs-action[data-v-4906e580]{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:5px;min-height:30px;border-radius:6px;font-weight:700;white-space:nowrap}.linked-jobs-action--primary[data-v-4906e580]{color:#fff;background:#4d2abf;border-color:#4d2abf}.linked-jobs-action--primary[data-v-4906e580]:hover{color:#fff;background:#3b1f99;border-color:#3b1f99}.linked-jobs-action--warning[data-v-4906e580]{color:#856404;background:#fff7df;border-color:#ffc107}.linked-jobs-action--warning[data-v-4906e580]:hover{color:#5c4603;background:#ffe8a1}.linked-jobs-action--success[data-v-4906e580]{color:#155724;background:#e8f7ed;border-color:#28a745}.linked-jobs-action--success[data-v-4906e580]:hover{color:#0b3d19;background:#d1efda}@media (max-width:768px){.linked-jobs-toolbar[data-v-4906e580]{-webkit-box-pack:stretch;-ms-flex-pack:stretch;justify-content:stretch}.linked-jobs-range[data-v-4906e580]{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;width:auto}.linked-jobs-stats[data-v-4906e580]{grid-template-columns:repeat(2,minmax(110px,1fr))}}