.referral-status-dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:24px;background:rgba(15,23,42,.45)}.referral-status-dialog{width:min(620px,100%);max-height:calc(100vh - 48px);overflow:auto;border-radius:8px;background:#ffffff;color:#1f2937;padding:20px;box-shadow:0 20px 60px #0f172a47}.referral-status-dialog-header{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-20px -20px 12px;padding:14px 20px;border-bottom:1px solid #cbd5e1;background:#ffffff}.referral-status-dialog-header h2{margin:0}.referral-status-header-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.referral-status-summary{display:grid;gap:8px;border:1px solid #cbd5e1;background:#f8fafc;padding:10px}.referral-status-summary div{display:grid;grid-template-columns:minmax(120px,.35fr) minmax(0,1fr);gap:8px}.referral-status-summary span{color:#475569;font-size:.78rem;font-weight:800}.referral-status-history-cards{display:grid;gap:8px;max-height:min(34vh,320px);overflow:auto;margin-top:12px;padding-right:4px}.referral-status-history-card{display:grid;gap:8px;border:1px solid #cbd5e1;background:#f8fafc;padding:10px}.referral-status-history-card div{display:grid;grid-template-columns:minmax(120px,.35fr) minmax(0,1fr);gap:8px}.referral-status-history-card span{color:#475569;font-size:.78rem;font-weight:800}.referral-status-note{grid-template-columns:1fr;padding:8px}.referral-status-note.private{border:1px solid #fed7aa;background:#fff7ed}.referral-status-note.partner{border:1px solid #bfdbfe;background:#eff6ff}.referral-status-note p{margin:0;white-space:pre-wrap}.referral-status-dialog label{display:grid;gap:6px;margin-top:12px;font-weight:700}.referral-status-dialog select,.referral-status-dialog textarea{width:100%;border:1px solid #cbd5e1;border-radius:6px;padding:10px;font:inherit}.referral-status-dialog textarea{min-height:96px;resize:vertical}.referral-status-due,.referral-status-message{margin:12px 0 0}.referral-status-checkbox{grid-template-columns:auto 1fr;align-items:center}.referral-status-checkbox input{min-height:18px}.referral-status-message.error{color:#b91c1c}.referral-status-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}body{margin:0;min-height:100vh;font-family:Segoe UI,Helvetica Neue,Arial,sans-serif;background:#1c2a50;color:#1f2937}code{background:rgba(15,23,42,.08);color:#1f2937;padding:.16rem .32rem;border-radius:6px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.95rem}.quote-screen{min-height:100vh;height:100vh;display:flex;flex-direction:column;padding:7px 12px 10px;background:#1c2a50;overflow:hidden}.quote-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;flex:0 0 auto;margin-bottom:5px}.quote-tool-button{min-width:82px;min-height:30px;border:1px solid #aab0b8;border-radius:2px;background:#f4f6f9;color:#111827;padding:6px 12px;cursor:pointer;font-size:.86rem;font-weight:600;box-shadow:inset 0 1px #ffffffa6;transition:background .2s ease}.quote-tool-button:hover{background:#e9ecf0}.quote-primary-action{border-color:#2563eb;background:#dbeafe;color:#1e3a8a;font-weight:900}.quote-status-action{border-color:#0f766e;background:#ccfbf1;color:#134e4a;font-weight:900}.quote-manual-assign-action{border-color:#b45309;background:#fffbeb;color:#92400e;font-weight:900}.quote-tool-button:disabled{opacity:.56;cursor:not-allowed}.quote-toolbar-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.quote-status-history{display:grid;gap:4px;color:#475569;font-size:.9rem}.quote-toolbar-meta{display:flex;flex:1 1 auto;flex-wrap:wrap;gap:6px 12px;align-items:center;color:#e5ebf5;font-size:.76rem;font-weight:650;min-width:0}.quote-toolbar-meta strong{color:#fff;font-size:.68rem;margin-right:3px;text-transform:uppercase}.quote-save-status.saved{color:#166534}.quote-save-status.failed{color:#991b1b}.quote-save-status.saving{color:#92400e}.quote-status-badge{color:#bfdbfe}.quote-workspace{width:100%;max-width:none;min-height:0;flex:1 1 auto;display:grid;grid-template-rows:auto minmax(300px,1fr) auto;gap:6px;margin:0 auto;overflow:hidden}.quote-workspace.finalized-read-only input,.quote-workspace.finalized-read-only select,.quote-workspace.finalized-read-only textarea{background:#eef1f5}.quote-workspace.finalized-read-only .quote-panel{border-color:#9aa8bb}.quote-panel{background:#d7d9dc;border:1px solid #aab0b8;border-radius:3px;padding:6px;margin-top:0}.quote-panel-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:4px}.quote-panel-title{margin:0;font-size:.82rem;font-weight:700;color:#111827}.quote-panel-subtitle{margin:0;color:#6b7280;font-size:.85rem;line-height:1.4}.quote-client-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:6px;min-width:0}.quote-client-checkbox-field{display:grid;grid-template-columns:auto 18px;align-items:center;gap:4px 8px;min-height:44px}.quote-client-checkbox-field span{font-size:.72rem;line-height:1.2}.quote-client-checkbox-field input[type=checkbox]{width:14px;height:14px;justify-self:end}.quote-project-notes-row{display:grid;gap:4px;margin-top:6px}.quote-project-notes-row label{font-size:.7rem;font-weight:800;color:#374151;text-transform:uppercase}.quote-project-notes-row textarea{width:100%;min-height:54px;resize:vertical;border:1px solid #aab0b8;border-radius:2px;padding:6px;font:inherit;color:#111827;background:#f8fafc;box-sizing:border-box}.quote-subsection-header{margin:5px 0 3px;color:#374151;font-size:.7rem;font-weight:800;text-transform:uppercase}.quote-proposal-details-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:6px;min-width:0}.quote-reporting-details-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:6px;min-width:0}.quote-photo-area{display:grid;gap:5px;margin-top:6px;border-top:1px solid #b8c0cc;padding-top:5px}.quote-service-location-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px}.quote-service-location-actions span{color:#475569;font-size:.78rem;font-weight:700}.quote-photo-header{display:flex;flex-wrap:wrap;gap:8px;align-items:center;color:#334155;font-size:.74rem}.quote-photo-header strong,.quote-row-photo-title{color:#111827;font-size:.76rem;font-weight:800}.quote-photo-header span,.quote-photo-message{color:#475569;font-size:.72rem;font-weight:700}.quote-photo-add-button,.quote-row-photo-button,.quote-photo-view-button{display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.quote-photo-add-button{min-height:26px;border:1px solid #8c97a8;border-radius:2px;background:#f7f8fa;color:#111827;padding:4px 8px;font-weight:800}.quote-hidden-photo-input,.quote-photo-add-button input,.quote-row-photo-button input{display:none}.quote-photo-view-button{min-height:26px}.quote-photo-list{display:flex;flex-wrap:wrap;gap:8px}.quote-photo-thumb{width:94px;display:grid;gap:3px;margin:0;border:1px solid #aab4c2;border-radius:3px;background:#f8fafc;padding:4px}.quote-photo-thumb img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:2px;background:#d7dce4}.quote-photo-thumb figcaption{overflow:hidden;color:#334155;font-size:.64rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.quote-photo-thumb button{min-height:22px;border:1px solid #9aa3af;border-radius:2px;background:#ffffff;color:#7f1d1d;cursor:pointer;font-size:.64rem;font-weight:800}.quote-client-field{display:flex;flex-direction:column;gap:1px;min-width:0}.quote-client-field label{display:flex;justify-content:space-between;gap:4px;font-size:.64rem;font-weight:700;color:#475569}.quote-client-field label span{color:#667085;font-size:.58rem;font-weight:800;text-transform:uppercase}.quote-client-field.locked-field input{background:#e8edf3;color:#475569}.quote-client-field input,.quote-client-field select{width:100%;max-width:100%;box-sizing:border-box;min-width:0;min-height:23px;padding:3px 6px;border-radius:2px;border:1px solid #9aa3af;background:#f2f3f5;color:#111827;font-size:.76rem;text-overflow:ellipsis}.quote-reference-field input{font-weight:800}.quote-client-field input:focus,.quote-client-field select:focus,.quote-row-input:focus,.quote-panel .quote-button:focus{outline:none;border-color:#4f6df2;box-shadow:0 0 0 2px #4f6df22e}.quote-client-panel{flex:0 0 auto}.quote-grid-panel{min-height:0;flex:1 1 auto;display:flex;flex-direction:column;overflow:hidden}.quote-table-card{width:100%;max-width:100%;min-height:280px;flex:1 1 auto;border:1px solid #848c99;border-radius:3px;overflow:auto;background:#d2d6dd;box-shadow:inset 0 0 0 1px #b3bac4}.quote-table-header{display:grid;grid-template-columns:34px 36px minmax(112px,1fr) 54px 104px 104px 100px 48px 78px 96px minmax(92px,.78fr) 68px 74px 72px;gap:0;align-items:center;min-width:1180px;position:sticky;top:0;z-index:1;background:#c2c7ce;border-bottom:1px solid #858d99;font-size:.7rem;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.02em}.quote-table-row{display:grid;grid-template-columns:34px 36px minmax(112px,1fr) 54px 104px 104px 100px 48px 78px 96px minmax(92px,.78fr) 68px 74px 72px;gap:0;align-items:center;min-width:1180px;border-top:2px solid #9ca5b3;border-bottom:1px solid #8d96a5;background:#f8f9fb}.quote-table-header>*,.quote-table-row>*{min-width:0;min-height:32px;border-left:1px solid #adb5c0;padding:4px 6px}.quote-attached-items{grid-column:1 / -1;display:flex;flex-direction:column;gap:6px;min-height:0;border-top:1px solid #c4ccd7;background:#eef3f7;padding:6px 8px 7px 74px}.quote-row-photo-strip{grid-column:1 / -1;display:grid;gap:6px;min-height:0;border-top:1px solid #c4ccd7;background:#f3f6fa;padding:6px 8px 7px 74px}.quote-row-secondary-actions,.quote-row-photo-actions,.quote-row-photo-cell{display:grid;gap:2px;align-items:center;justify-items:stretch;background:#fbfdff}.quote-row-photo-cell{grid-template-columns:minmax(0,.8fr) minmax(0,1fr)}.quote-row-secondary-actions>span{overflow:hidden;color:#64748b;font-size:.62rem;font-weight:800;text-align:center;text-overflow:ellipsis;white-space:nowrap}.quote-row-photo-actions{grid-column:1 / -1;grid-template-columns:112px 136px;justify-content:end;gap:6px;min-height:34px;border-top:1px solid #c4ccd7;border-left:0;padding:5px 8px}.quote-linked-member-panel{grid-column:1 / -1;display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.5fr) minmax(190px,.7fr);gap:8px;align-items:center;min-height:0;border-top:1px solid #c0c8d3;background:#edf4f8;padding:7px 8px 7px 74px}.quote-linked-member-header{display:flex;flex-direction:column;gap:5px}.quote-linked-member-header strong{color:#243447;font-size:.78rem}.quote-linked-member-mode{display:inline-flex;flex-wrap:wrap;gap:4px}.quote-linked-member-mode button{min-height:26px;border:1px solid #9aa8b8;border-radius:3px;background:#ffffff;color:#334155;cursor:pointer;font:inherit;font-size:.72rem;font-weight:800;padding:3px 7px}.quote-linked-member-mode button.active{border-color:#3152d4;background:#e5ecff;color:#243f9f}.quote-linked-member-widths{display:flex;flex-wrap:wrap;gap:7px;align-items:end}.quote-linked-member-widths label{display:grid;gap:3px;min-width:92px;color:#475569;font-size:.7rem;font-weight:700}.quote-linked-member-widths input{min-height:28px}.quote-linked-member-sum,.quote-linked-member-note{color:#475569;font-size:.74rem;font-weight:700}.quote-linked-side-note{display:inline-flex;align-items:center;gap:7px;justify-self:end;color:#334155;font-size:.74rem;font-weight:800}.quote-attached-item{display:grid;grid-template-columns:minmax(210px,1fr) 130px minmax(180px,240px) 74px;gap:8px;align-items:end}.quote-attached-item.has-status-message{align-items:start}.quote-attached-item-title{display:flex;flex-wrap:wrap;gap:8px;align-items:center;color:#1f2937;font-size:.78rem}.quote-attached-item-title span{color:#526071;font-size:.74rem;font-weight:700}.quote-attached-item-title .quote-attached-item-message{flex-basis:100%;color:#7f1d1d;font-size:.74rem;font-weight:700;line-height:1.25}.quote-attached-item label{display:flex;flex-direction:column;gap:2px;color:#475569;font-size:.68rem;font-weight:700}.quote-attached-item select{min-height:27px;border:1px solid #9aa3af;border-radius:2px;background:#ffffff;color:#111827;font-size:.76rem}.quote-attached-remove{min-height:27px;padding:5px 7px;font-size:.7rem}.proposal-attached-lines{display:flex;flex-direction:column;gap:4px;border-top:1px solid #d4dbe5;margin-top:8px;padding-top:6px}.proposal-attached-line{display:grid;grid-template-columns:1.05fr .8fr minmax(220px,2fr) 52px 78px 90px;gap:8px;align-items:center;color:#334155;font-size:.76rem;padding-left:18px}.proposal-attached-line>span:first-child{font-weight:800}.proposal-attached-line strong{text-align:right}.quote-table-header>*:first-child,.quote-table-row>*:first-child{border-left:0}.quote-table-header>*{display:flex;align-items:center;min-height:30px;border-color:#a9b0ba}.quote-table-header>span,.quote-table-header>label{justify-content:center}.quote-table-row.row-invalid{background:#fff6f6}.quote-table-row.row-valid{background:#f8fbf8}.quote-table-row:nth-child(2n){background:#eef1f5}.quote-table-row.row-valid:nth-child(2n){background:#f1f6f2}.quote-table-row.row-invalid:nth-child(2n){background:#fff0f0}.quote-table-row.row-selected{box-shadow:inset 0 0 0 2px #3152d4,inset -5px 0 #3152d4}.quote-table-row.row-selected.row-invalid{box-shadow:inset 0 0 0 2px #9b2424,inset -5px 0 #9b2424}.quote-table-row.row-selected.row-valid{box-shadow:inset 0 0 0 2px #237047,inset -5px 0 #237047}.quote-table-row.row-dragging{opacity:.7}.quote-row-link-status{display:inline-flex;width:fit-content;max-width:100%;border:1px solid #c5ccd6;border-radius:2px;padding:1px 5px;background:#eef2f7;color:#475569;font-size:.62rem;font-weight:900}.quote-row-link-status.linked{border-color:#86b59b;background:#ecfdf3;color:#166534}.quote-row-link-status.warning{border-color:#f59e0b;background:#fff7ed;color:#9a3412}.quote-row-casing-panel{grid-column:3 / -2;display:flex;align-items:center;gap:10px;padding:5px 8px;border-top:1px solid #cfd8e3;background:#f8fafc;font-size:12px}.quote-row-casing-toggle,.quote-row-casing-panel label{display:flex;align-items:center;gap:6px;font-weight:700}.quote-row-casing-measure{display:inline-flex;gap:4px;align-items:center}.quote-row-casing-measure input{width:54px}.quote-row-casing-note{color:#475569;font-weight:600}.quote-compact-window-dialog{width:min(760px,calc(100vw - 48px));max-height:calc(100vh - 72px);overflow:auto}.quote-window-reference-box{display:grid;grid-template-columns:160px 1fr;gap:8px;border:1px solid #cbd5e1;padding:8px;margin-bottom:10px;background:#f8fafc}.quote-confirm-status.error{color:#991b1b;border-color:#ef4444;background:#fef2f2}.quote-window-mismatch-dialog{width:min(560px,calc(100vw - 32px))}.quote-window-mismatch-list{max-height:min(280px,45vh);overflow:auto;display:grid;gap:6px;margin-top:10px}.quote-window-mismatch-list div{display:grid;gap:3px;border:1px solid #f59e0b;background:#fff7ed;padding:7px 8px}.quote-window-mismatch-list span{color:#7c2d12;font-size:.78rem;line-height:1.3}.measurement-pair{display:grid;grid-template-columns:minmax(0,1fr) 40px;align-items:center;gap:5px;width:100%;box-sizing:border-box}.measurement-invalid .quote-row-input,.measurement-invalid .quote-row-select,.quote-input-invalid{border-color:#b73232;background:#fff1f1}.quote-row-measurement-whole{width:100%;min-width:0}.quote-row-select{width:38px;min-width:38px;min-height:28px;padding:4px 3px;border-radius:2px;border:1px solid #9aa3af;background:#ffffff;color:#111827;font-size:.76rem;box-sizing:border-box}.quote-row-calculated-price{display:flex;align-items:center;justify-content:flex-end;min-width:0;min-height:28px;border:1px solid #aeb6c2;border-radius:2px;background:#e8edf3;color:#243447;font-size:.76rem;font-weight:800;padding:4px 6px;box-sizing:border-box}.quote-notes-button{width:100%;min-height:28px;border:1px solid transparent;border-radius:2px;background:transparent;color:#475569;cursor:pointer;font:inherit;font-size:.72rem;font-weight:800;overflow:hidden;padding:4px 3px;text-overflow:ellipsis;white-space:nowrap}.quote-notes-button:hover,.quote-notes-button:focus{border-color:#9aa3af;background:#ffffff;outline:none}.quote-notes-button.has-notes{border-color:#a9b7ca;background:#edf3fb;color:#244c86}.quote-tall-window-cell{display:grid;gap:2px;align-items:center;border-left-color:#c7d2fe;background:#f8fafc}.quote-tall-window-cell.active{background:#eef6ff}.quote-tall-window-topline,.quote-tall-window-height-wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px;align-items:center}.quote-tall-window-toggle{display:inline-flex;align-items:center;gap:4px;color:#1e3a5f;font-size:.66rem;font-weight:800}.quote-tall-window-toggle input{width:14px;height:14px}.quote-tall-window-height{min-height:24px;padding:2px 4px;font-size:.68rem;width:44px}.quote-tall-window-height-wrap span{color:#64748b;font-size:.6rem;font-weight:800;text-transform:uppercase}.quote-tall-window-charge{overflow:hidden;color:#166534;font-size:.62rem;font-weight:900;text-align:right;text-overflow:ellipsis;white-space:nowrap}.quote-tall-window-charge.warning{color:#9a3412}.quote-row-status-note{flex:0 0 auto;color:#244c86;font-size:.68rem;font-weight:800}.quote-header-checkbox{display:inline-flex;align-items:center;gap:8px;font-size:.82rem;color:#374151}.quote-header-checkbox input{width:16px;height:16px}.quote-check-cell{display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.35)}.quote-check-cell input{width:17px;height:17px;accent-color:#4f6df2}.quote-drag-handle{width:30px;min-height:30px;justify-self:center;border:1px solid #6f7784;border-radius:2px;background:linear-gradient(#eef0f3,#cfd4db);color:#263241;cursor:grab;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.9rem;font-weight:900;letter-spacing:0;line-height:1;box-shadow:inset 0 1px #ffffffb8,0 1px 1px #0f172a1f}.quote-drag-handle:hover{border-color:#46505d;background:linear-gradient(#f8fafc,#c3c9d2)}.quote-drag-handle:active{cursor:grabbing;background:#c5ccd5}.quote-row-index{color:#556987;font-size:.95rem;text-align:center}.quote-row-input{width:100%;min-height:28px;padding:4px 7px;border-radius:2px;border:1px solid #9aa3af;background:#ffffff;color:#111827;font-size:.82rem;box-sizing:border-box}.quote-imom-select{padding-left:5px;padding-right:3px;text-align:center}.quote-action-group{display:flex;flex-wrap:wrap;gap:4px;justify-content:center}.quote-action-button{padding:6px 5px;min-width:0;font-size:.7rem}.quote-product-cell{color:#6b7280;font-size:.95rem;text-align:center;overflow:hidden}.quote-product-badge{display:inline-flex;width:100%;min-width:0;min-height:24px;max-width:100%;align-items:center;justify-content:center;flex-direction:column;border:1px solid #aab0b8;border-radius:3px;background:#eef1f5;color:#4b5563;font-size:.76rem;font-weight:700;line-height:1.05;padding:3px 5px;box-sizing:border-box;overflow:hidden}.quote-product-badge>span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quote-product-state{margin-top:2px;color:currentColor;font-size:.62rem;opacity:.82}.quote-product-summary-line{margin-top:2px;color:currentColor;font-size:.62rem;font-weight:800;opacity:.9}.catalog-color-1 .quote-product-badge{border-color:#81c7a1;background:#ddf7e8;color:#166038}.catalog-color-2 .quote-product-badge{border-color:#d9b15d;background:#fff0c9;color:#7a4d08}.catalog-color-3 .quote-product-badge{border-color:#84a8ff;background:#dfe8ff;color:#1f3b8f}.catalog-color-4 .quote-product-badge,.catalog-color-custom .quote-product-badge{border-color:#cf8aa8;background:#fde7f0;color:#84214d}.catalog-color-5 .quote-product-badge{border-color:#7fc4c1;background:#ddf7f5;color:#0f5b57}.catalog-color-6 .quote-product-badge{border-color:#b7a3df;background:#eee7ff;color:#4b2f84}.catalog-color-7 .quote-product-badge{border-color:#d3947c;background:#ffe9df;color:#7b341c}.catalog-color-8 .quote-product-badge{border-color:#94b66f;background:#edf7df;color:#355d12}.catalog-color-9 .quote-product-badge{border-color:#8da6c8;background:#e7f0fb;color:#23476f}.catalog-color-10 .quote-product-badge{border-color:#d187b8;background:#fbe5f3;color:#762659}.catalog-color-11 .quote-product-badge{border-color:#c5aa6a;background:#fbf0d3;color:#674a0e}.catalog-color-12 .quote-product-badge{border-color:#7fb08d;background:#e2f4e7;color:#20542e}.catalog-color-13 .quote-product-badge{border-color:#9e9ac8;background:#ebe9fb;color:#37306f}.catalog-color-14 .quote-product-badge{border-color:#cf8f72;background:#ffece2;color:#773819}.catalog-color-15 .quote-product-badge{border-color:#72abc8;background:#e2f3fb;color:#175272}.catalog-color-16 .quote-product-badge{border-color:#bf7f9e;background:#f9e4ef;color:#6f2146}.catalog-color-17 .quote-product-badge{border-color:#a8b76b;background:#f2f7dc;color:#4c5d14}.catalog-color-18 .quote-product-badge{border-color:#7db0a1;background:#e0f4ee;color:#1f5c4d}.catalog-color-1{--product-tile-border: #c24141;--product-tile-bg: #fff1f1;--product-tile-label-bg: #ffd7d7;--product-tile-text: #7f1d1d}.catalog-color-2{--product-tile-border: #2f6fc4;--product-tile-bg: #edf5ff;--product-tile-label-bg: #d8eaff;--product-tile-text: #17457f}.catalog-color-3{--product-tile-border: #2f8f57;--product-tile-bg: #edf9f1;--product-tile-label-bg: #d5f1df;--product-tile-text: #14532d}.catalog-color-4{--product-tile-border: #d36a22;--product-tile-bg: #fff2e8;--product-tile-label-bg: #ffddc4;--product-tile-text: #7c2d12}.catalog-color-5{--product-tile-border: #7c4bc4;--product-tile-bg: #f4efff;--product-tile-label-bg: #e7dcff;--product-tile-text: #4c1d95}.catalog-color-6{--product-tile-border: #148f91;--product-tile-bg: #e9fbfb;--product-tile-label-bg: #cff5f5;--product-tile-text: #115e59}.catalog-color-7{--product-tile-border: #c7356f;--product-tile-bg: #fff0f6;--product-tile-label-bg: #ffd6e8;--product-tile-text: #831843}.catalog-color-8{--product-tile-border: #4c63d9;--product-tile-bg: #eef1ff;--product-tile-label-bg: #dce2ff;--product-tile-text: #312e81}.catalog-color-9{--product-tile-border: #82a51d;--product-tile-bg: #f6fbdf;--product-tile-label-bg: #e8f5b8;--product-tile-text: #3f6212}.catalog-color-10{--product-tile-border: #0891b2;--product-tile-bg: #e8faff;--product-tile-label-bg: #c9f2ff;--product-tile-text: #155e75}.catalog-color-11{--product-tile-border: #c58a12;--product-tile-bg: #fff8df;--product-tile-label-bg: #f8e5aa;--product-tile-text: #70470b}.catalog-color-12{--product-tile-border: #64748b;--product-tile-bg: #f1f5f9;--product-tile-label-bg: #dbe3ec;--product-tile-text: #334155}.catalog-color-13{--product-tile-border: #c026d3;--product-tile-bg: #fdf0ff;--product-tile-label-bg: #f5d0fe;--product-tile-text: #86198f}.catalog-color-14{--product-tile-border: #059669;--product-tile-bg: #e9fbf3;--product-tile-label-bg: #c8f3df;--product-tile-text: #065f46}.catalog-color-15{--product-tile-border: #0284c7;--product-tile-bg: #edf8ff;--product-tile-label-bg: #d0efff;--product-tile-text: #075985}.catalog-color-16{--product-tile-border: #8b5a2b;--product-tile-bg: #f8f1e9;--product-tile-label-bg: #ead6c0;--product-tile-text: #5b3415}.catalog-color-17{--product-tile-border: #8b5cf6;--product-tile-bg: #f5f0ff;--product-tile-label-bg: #e9ddff;--product-tile-text: #5b21b6}.catalog-color-18{--product-tile-border: #d4b106;--product-tile-bg: #fffbe6;--product-tile-label-bg: #fff0a6;--product-tile-text: #6b5200}.catalog-color-19{--product-tile-border: #10b981;--product-tile-bg: #e9fff7;--product-tile-label-bg: #c7f9e6;--product-tile-text: #047857}.catalog-color-20{--product-tile-border: #1e3a8a;--product-tile-bg: #edf2ff;--product-tile-label-bg: #d6e0ff;--product-tile-text: #1e3a8a}.catalog-color-21{--product-tile-border: #e05d4f;--product-tile-bg: #fff0ee;--product-tile-label-bg: #ffd8d2;--product-tile-text: #8a241c}.catalog-color-22{--product-tile-border: #708238;--product-tile-bg: #f4f8e8;--product-tile-label-bg: #e1ebbd;--product-tile-text: #435017}.catalog-color-23{--product-tile-border: #9b7edb;--product-tile-bg: #f6f1ff;--product-tile-label-bg: #e7dcff;--product-tile-text: #58419a}.catalog-color-24{--product-tile-border: #14b8a6;--product-tile-bg: #e9fffc;--product-tile-label-bg: #c8f8f1;--product-tile-text: #0f766e}.catalog-color-25{--product-tile-border: #8f1d3f;--product-tile-bg: #fff0f4;--product-tile-label-bg: #f7cdda;--product-tile-text: #7a1234}.catalog-color-26{--product-tile-border: #b7791f;--product-tile-bg: #fff7e8;--product-tile-label-bg: #f5dfad;--product-tile-text: #6f3f08}.catalog-color-27{--product-tile-border: #486581;--product-tile-bg: #edf4f8;--product-tile-label-bg: #d6e4ec;--product-tile-text: #2f4858}.catalog-color-28{--product-tile-border: #e58b62;--product-tile-bg: #fff3ed;--product-tile-label-bg: #ffdecf;--product-tile-text: #8b3d1e}.catalog-color-29{--product-tile-border: #166534;--product-tile-bg: #ecf8ef;--product-tile-label-bg: #cfead6;--product-tile-text: #166534}.catalog-color-30{--product-tile-border: #2563eb;--product-tile-bg: #eef4ff;--product-tile-label-bg: #dbe8ff;--product-tile-text: #1d4ed8}.catalog-color-31{--product-tile-border: #db2777;--product-tile-bg: #fff0f7;--product-tile-label-bg: #ffd6ea;--product-tile-text: #9d174d}.catalog-color-32{--product-tile-border: #b45309;--product-tile-bg: #fff3e5;--product-tile-label-bg: #f5d1a3;--product-tile-text: #7c2d12}.catalog-color-33{--product-tile-border: #06b6d4;--product-tile-bg: #e8fbff;--product-tile-label-bg: #c6f3fb;--product-tile-text: #0e7490}.catalog-color-34{--product-tile-border: #7e2f8e;--product-tile-bg: #fbf0ff;--product-tile-label-bg: #edcef5;--product-tile-text: #6b217a}.catalog-color-35{--product-tile-border: #374151;--product-tile-bg: #f3f4f6;--product-tile-label-bg: #d9dee7;--product-tile-text: #1f2937}.catalog-color-36{--product-tile-border: #22c55e;--product-tile-bg: #ecfdf3;--product-tile-label-bg: #c9f7d8;--product-tile-text: #15803d}.catalog-color-1 .quote-product-badge,.catalog-color-2 .quote-product-badge,.catalog-color-3 .quote-product-badge,.catalog-color-4 .quote-product-badge,.catalog-color-5 .quote-product-badge,.catalog-color-6 .quote-product-badge,.catalog-color-7 .quote-product-badge,.catalog-color-8 .quote-product-badge,.catalog-color-9 .quote-product-badge,.catalog-color-10 .quote-product-badge,.catalog-color-11 .quote-product-badge,.catalog-color-12 .quote-product-badge,.catalog-color-13 .quote-product-badge,.catalog-color-14 .quote-product-badge,.catalog-color-15 .quote-product-badge,.catalog-color-16 .quote-product-badge,.catalog-color-17 .quote-product-badge,.catalog-color-18 .quote-product-badge,.catalog-color-19 .quote-product-badge,.catalog-color-20 .quote-product-badge,.catalog-color-21 .quote-product-badge,.catalog-color-22 .quote-product-badge,.catalog-color-23 .quote-product-badge,.catalog-color-24 .quote-product-badge,.catalog-color-25 .quote-product-badge,.catalog-color-26 .quote-product-badge,.catalog-color-27 .quote-product-badge,.catalog-color-28 .quote-product-badge,.catalog-color-29 .quote-product-badge,.catalog-color-30 .quote-product-badge,.catalog-color-31 .quote-product-badge,.catalog-color-32 .quote-product-badge,.catalog-color-33 .quote-product-badge,.catalog-color-34 .quote-product-badge,.catalog-color-35 .quote-product-badge,.catalog-color-36 .quote-product-badge{border-color:var(--product-tile-accent, var(--product-tile-border));background:var(--product-tile-accent, var(--product-tile-bg));color:var(--product-tile-badge-text, #ffffff)}.catalog-color-1{--product-tile-accent: #d32f2f;--product-tile-bg: #fff1f1;--product-tile-label-bg: #d32f2f;--product-tile-text: #7f1d1d;--product-tile-badge-text: #ffffff}.catalog-color-2{--product-tile-accent: #1976d2;--product-tile-bg: #eef6ff;--product-tile-label-bg: #1976d2;--product-tile-text: #0f4f91;--product-tile-badge-text: #ffffff}.catalog-color-3{--product-tile-accent: #388e3c;--product-tile-bg: #eff9f0;--product-tile-label-bg: #388e3c;--product-tile-text: #1b5e20;--product-tile-badge-text: #ffffff}.catalog-color-4{--product-tile-accent: #f57c00;--product-tile-bg: #fff3e4;--product-tile-label-bg: #f57c00;--product-tile-text: #8a4300;--product-tile-badge-text: #ffffff}.catalog-color-5{--product-tile-accent: #7b1fa2;--product-tile-bg: #f8effb;--product-tile-label-bg: #7b1fa2;--product-tile-text: #4a1261;--product-tile-badge-text: #ffffff}.catalog-color-6{--product-tile-accent: #00897b;--product-tile-bg: #e9fbf8;--product-tile-label-bg: #00897b;--product-tile-text: #00564e;--product-tile-badge-text: #ffffff}.catalog-color-7{--product-tile-accent: #ff8f00;--product-tile-bg: #fff4e4;--product-tile-label-bg: #ff8f00;--product-tile-text: #784300;--product-tile-badge-text: #1f2937}.catalog-color-8{--product-tile-accent: #0d47a1;--product-tile-bg: #edf4ff;--product-tile-label-bg: #0d47a1;--product-tile-text: #082f6f;--product-tile-badge-text: #ffffff}.catalog-color-9{--product-tile-accent: #e64a19;--product-tile-bg: #fff0ea;--product-tile-label-bg: #e64a19;--product-tile-text: #942b0a;--product-tile-badge-text: #ffffff}.catalog-color-10{--product-tile-accent: #1b5e20;--product-tile-bg: #edf8ee;--product-tile-label-bg: #1b5e20;--product-tile-text: #0f3d13;--product-tile-badge-text: #ffffff}.catalog-color-11{--product-tile-accent: #d81b60;--product-tile-bg: #fff0f6;--product-tile-label-bg: #d81b60;--product-tile-text: #8a123d;--product-tile-badge-text: #ffffff}.catalog-color-12{--product-tile-accent: #455a64;--product-tile-bg: #eef3f5;--product-tile-label-bg: #455a64;--product-tile-text: #263238;--product-tile-badge-text: #ffffff}.catalog-color-13{--product-tile-accent: #00bcd4;--product-tile-bg: #e6fbff;--product-tile-label-bg: #00bcd4;--product-tile-text: #007888;--product-tile-badge-text: #ffffff}.catalog-color-14{--product-tile-accent: #795548;--product-tile-bg: #f7f0ed;--product-tile-label-bg: #795548;--product-tile-text: #4e342e;--product-tile-badge-text: #ffffff}.catalog-color-15{--product-tile-accent: #689f38;--product-tile-bg: #f2faea;--product-tile-label-bg: #689f38;--product-tile-text: #3c651b;--product-tile-badge-text: #ffffff}.catalog-color-16{--product-tile-accent: #880e4f;--product-tile-bg: #fff0f7;--product-tile-label-bg: #880e4f;--product-tile-text: #5d0834;--product-tile-badge-text: #ffffff}.catalog-color-17{--product-tile-accent: #0288d1;--product-tile-bg: #eef8ff;--product-tile-label-bg: #0288d1;--product-tile-text: #015888;--product-tile-badge-text: #ffffff}.catalog-color-18{--product-tile-accent: #827717;--product-tile-bg: #faf8e6;--product-tile-label-bg: #827717;--product-tile-text: #514a0c;--product-tile-badge-text: #ffffff}.catalog-color-19{--product-tile-accent: #512da8;--product-tile-bg: #f3effd;--product-tile-label-bg: #512da8;--product-tile-text: #311b92;--product-tile-badge-text: #ffffff}.catalog-color-20{--product-tile-accent: #bf360c;--product-tile-bg: #fff0ea;--product-tile-label-bg: #bf360c;--product-tile-text: #7f2308;--product-tile-badge-text: #ffffff}.catalog-color-21{--product-tile-accent: #00acc1;--product-tile-bg: #e6fbfe;--product-tile-label-bg: #00acc1;--product-tile-text: #00727f;--product-tile-badge-text: #ffffff}.catalog-color-22{--product-tile-accent: #303f9f;--product-tile-bg: #f0f2ff;--product-tile-label-bg: #303f9f;--product-tile-text: #1f2a75;--product-tile-badge-text: #ffffff}.catalog-color-23{--product-tile-accent: #ffa000;--product-tile-bg: #fff7df;--product-tile-label-bg: #ffa000;--product-tile-text: #7a4d00;--product-tile-badge-text: #1f2937}.catalog-color-24{--product-tile-accent: #263238;--product-tile-bg: #eef1f2;--product-tile-label-bg: #263238;--product-tile-text: #111827;--product-tile-badge-text: #ffffff}.catalog-color-25{--product-tile-accent: #f06292;--product-tile-bg: #fff0f5;--product-tile-label-bg: #f06292;--product-tile-text: #9b2551;--product-tile-badge-text: #ffffff}.catalog-color-26{--product-tile-accent: #1565c0;--product-tile-bg: #eef6ff;--product-tile-label-bg: #1565c0;--product-tile-text: #0d4380;--product-tile-badge-text: #ffffff}.catalog-color-27{--product-tile-accent: #00796b;--product-tile-bg: #e8faf7;--product-tile-label-bg: #00796b;--product-tile-text: #004d44;--product-tile-badge-text: #ffffff}.catalog-color-28{--product-tile-accent: #f5a36c;--product-tile-bg: #fff3ed;--product-tile-label-bg: #f5a36c;--product-tile-text: #8b3d1e;--product-tile-badge-text: #1f2937}.catalog-color-29{--product-tile-accent: #6a1b9a;--product-tile-bg: #f7effb;--product-tile-label-bg: #6a1b9a;--product-tile-text: #42115f;--product-tile-badge-text: #ffffff}.catalog-color-30{--product-tile-accent: #14b8a6;--product-tile-bg: #e8f8f5;--product-tile-label-bg: #14b8a6;--product-tile-text: #00564e;--product-tile-badge-text: #ffffff}.catalog-color-31{--product-tile-accent: #fbc02d;--product-tile-bg: #fff9df;--product-tile-label-bg: #fbc02d;--product-tile-text: #715200;--product-tile-badge-text: #1f2937}.catalog-color-32{--product-tile-accent: #607d8b;--product-tile-bg: #eef4f7;--product-tile-label-bg: #607d8b;--product-tile-text: #37474f;--product-tile-badge-text: #ffffff}.catalog-color-33{--product-tile-accent: #c2185b;--product-tile-bg: #fff0f6;--product-tile-label-bg: #c2185b;--product-tile-text: #7a1039;--product-tile-badge-text: #ffffff}.catalog-color-34{--product-tile-accent: #43a047;--product-tile-bg: #edf9ee;--product-tile-label-bg: #43a047;--product-tile-text: #1b5e20;--product-tile-badge-text: #ffffff}.catalog-color-35{--product-tile-accent: #004d40;--product-tile-bg: #e8f8f5;--product-tile-label-bg: #004d40;--product-tile-text: #00342c;--product-tile-badge-text: #ffffff}.catalog-color-36{--product-tile-accent: #9575cd;--product-tile-bg: #f5f0ff;--product-tile-label-bg: #9575cd;--product-tile-text: #5e3c9d;--product-tile-badge-text: #ffffff}.quote-row-status{grid-column:1 / -1;display:flex;align-items:center;gap:8px;color:#14532d;font-size:.74rem;font-weight:700;line-height:1.25;min-height:22px;border-top:1px solid #90b89e;border-left:0;padding:3px 8px;background:#dff3e5}.quote-row-status.status-invalid{color:#7f1d1d;border-top-color:#d08b8b;background:#ffe1e1}.quote-row-status.status-valid{color:#14532d;border-top-color:#8fbd9e;background:#dff3e5}.quote-table-row.row-selected .quote-row-status.status-invalid{background:#ffd7d7;border-top-color:#bd6f6f}.quote-table-row.row-selected .quote-row-status.status-valid{background:#d3eedb;border-top-color:#70a884}.quote-row-status-label{flex:0 0 auto;min-width:48px;border:1px solid currentColor;border-radius:2px;padding:2px 5px;text-align:center;font-size:.68rem;line-height:1;text-transform:uppercase}.quote-row-status-message{min-width:0;overflow-wrap:anywhere}.quote-grid-status{margin-top:6px;color:#475569;font-size:.78rem}.quote-button-row{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;margin-top:8px}.compact-action-row{align-items:center;justify-content:flex-end;gap:7px;margin-top:5px}.quote-button{display:inline-flex;align-items:center;justify-content:center;border-radius:2px;font-weight:700;letter-spacing:.01em;transition:all .18s ease}.quote-button.primary{min-height:32px;padding:7px 16px;border:none;background:#3c5eea;color:#fff}.quote-button.primary:hover:not(:disabled){transform:translateY(-1px);background:#334ed1}.quote-button.primary.danger{background:#b42318}.quote-button.primary.danger:hover:not(:disabled){background:#971b12}.quote-button.secondary{min-height:30px;padding:6px 12px;border:1px solid #9aa3af;background:#f4f5f7;color:#374151}.quote-button.secondary:hover:not(:disabled){background:#e9ecf1}.quote-button:disabled{opacity:.65;cursor:not-allowed}.quote-bottom-panel{flex:0 0 auto;min-height:0;max-height:min(30vh,240px);padding:6px 8px;overflow-y:auto;overscroll-behavior:contain}.quote-totals-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:5px;margin-bottom:5px}.quote-total-box{background:#f2f3f5;border:1px solid #aab0b8;border-radius:3px;padding:5px 7px;min-width:0}.compact-total span{display:block;font-size:.68rem;color:#6b7280;margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compact-total strong{font-size:.86rem;color:#111827;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quote-total-strong{background:#eef2ff;border-color:#dbe4ff}.quote-discount-box{display:grid;gap:2px}.quote-discount-box.invalid{border-color:#b91c1c;background:#fee2e2}.quote-discount-control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px;align-items:center}.quote-discount-control input{width:100%;min-width:0;min-height:24px;border:1px solid #9ca3af;border-radius:2px;padding:2px 5px}.quote-discount-box small{color:#6b7280;font-size:.62rem;font-weight:800}.quote-misc-total,.quote-install-total{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:grid;gap:1px;width:100%;text-align:left;cursor:pointer}.quote-misc-total small{overflow:hidden;color:#315188;font-size:.62rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.quote-misc-total:hover,.quote-misc-total:focus{border-color:#4f6df2;background:#eef4ff;outline:none}.quote-misc-breakdown{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:0 0 6px}.quote-breakdown-highlight{border:1px solid #9fb8d2;border-radius:4px;background:#edf6fb;padding:8px;box-shadow:inset 3px 0 #5b8dbc}.quote-install-breakdown{display:grid;gap:6px;margin:0 0 6px}.quote-install-example{color:#475569;font-size:.72rem;font-weight:700}.quote-install-custom-row{grid-template-columns:minmax(0,1fr) auto auto}.quote-install-add-button{justify-self:start;width:auto;border-color:#1d4ed8;background:#1d4ed8;color:#fff;box-shadow:0 1px 2px #1d4ed838;font-weight:900}.quote-install-custom-row .quote-action-button{width:auto;min-width:70px}.quote-install-addon-dialog{gap:10px}.quote-install-addon-dialog label{display:grid;gap:5px;color:#1f2937;font-size:.78rem;font-weight:800}.quote-install-addon-dialog input{min-height:34px;border:1px solid #9ca3af;border-radius:3px;padding:6px 8px}.quote-misc-breakdown-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;border:1px solid #c9d3df;border-radius:3px;background:#f8fafc;padding:6px 8px}.quote-misc-breakdown-row div{display:grid;gap:1px;min-width:0}.quote-misc-breakdown-row strong,.quote-misc-breakdown-row b{color:#111827;font-size:.78rem}.quote-misc-breakdown-row span{overflow:hidden;color:#64748b;font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}.quote-tax-message{margin:-2px 0 8px;border:1px solid #b9c5d3;border-radius:3px;background:#f7fafc;color:#475569;padding:6px 8px;font-size:.76rem;font-weight:750}.quote-tax-message.warning{border-color:#d5bd63;background:#fff8db;color:#674b00}.quote-status-strip{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 5px;border:1px solid #b9c5d3;border-radius:3px;background:#f7fafc;color:#475569;padding:5px 8px;font-size:.74rem;font-weight:750}.quote-status-strip.warning{border-color:#d5bd63;background:#fff8db;color:#674b00}.quote-status-strip.info{border-color:#2563eb;background:#eff6ff;color:#1e3a8a}.quote-inline-toggle{flex:0 0 auto;border:1px solid #9aa3af;border-radius:2px;background:#f4f5f7;color:#273449;cursor:pointer;font:inherit;font-size:.72rem;font-weight:850;min-height:24px;padding:3px 8px}.quote-inline-toggle:hover,.quote-inline-toggle:focus{border-color:#4f6df2;background:#ffffff;outline:none}.quote-message-detail{display:grid;gap:3px;max-height:62px;overflow:auto;margin:0 0 5px;border:1px solid #b9a24e;border-radius:3px;background:#fff7d6;color:#674b00;padding:5px 8px;font-size:.72rem;font-weight:700;line-height:1.25}.quote-message-detail.warning{border-color:#fca5a5;background:#fff1f2;color:#991b1b}.quote-tray{border:1px solid #c7d0dd;border-radius:3px;background:#f8fafc;margin-bottom:5px;padding:5px}.quote-tray-header,.quote-accessory-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.quote-tray-header h3,.quote-accessory-header h3{margin:0;font-size:.78rem;color:#172033}.quote-tray-header span,.quote-accessory-header span{display:block;margin-top:1px;color:#64748b;font-size:.68rem;font-weight:700}.quote-tray-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:5px}.quote-tray-actions .quote-button.secondary,.tray-toggle{min-height:24px;padding:3px 8px;font-size:.72rem}.quote-workflow-status{align-self:center;border:1px solid #aeb7c3;border-radius:2px;background:#eef2f7;color:#253247;font-size:.7rem;font-weight:850;min-height:24px;padding:4px 8px;text-transform:uppercase}.quote-product-strip{display:flex;align-items:stretch;gap:6px;max-height:84px;overflow-x:auto;overflow-y:hidden;margin-top:5px;padding:1px 2px 3px 0}.quote-row-attached-tile{flex:0 0 210px}.quote-accessory-panel{border:1px solid #c7d0dd;border-radius:3px;background:#f8fafc;margin-bottom:5px;padding:5px}.quote-accessory-header{margin-bottom:0}.quote-accessory-add-row{display:grid;grid-template-columns:minmax(0,1fr) 72px;gap:6px;margin-top:5px}.quote-accessory-add-row select,.quote-accessory-row input{width:100%;min-width:0;border:1px solid #aab0b8;border-radius:3px;background:#ffffff;color:#111827;font:inherit;font-size:.78rem;min-height:30px;padding:5px 7px;box-sizing:border-box}.quote-accessory-list{display:grid;gap:5px;margin-top:5px;max-height:86px;overflow:auto}.quote-accessory-row{display:grid;grid-template-columns:minmax(160px,1.8fr) 78px 64px 82px 78px;gap:6px;align-items:center;min-width:0;border-top:1px solid #e1e7ef;padding-top:5px}.quote-accessory-name{display:grid;min-width:0}.quote-accessory-name strong,.quote-accessory-name span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quote-accessory-name strong{font-size:.78rem;color:#172033}.quote-accessory-name span,.quote-accessory-price{font-size:.7rem;color:#64748b}.quote-accessory-total{font-size:.78rem;font-weight:850;color:#111827}.quote-accessory-remove{border:1px solid #d0a6a6;border-radius:3px;background:#fff5f5;color:#8a2f2f;font:inherit;font-size:.72rem;font-weight:800;min-height:30px;cursor:pointer}.quote-accessory-remove:hover,.quote-accessory-remove:focus{border-color:#b86666;background:#ffeaea}.quote-accessory-empty{margin-top:5px;border-top:1px solid #e1e7ef;padding-top:5px;font-size:.74rem;color:#64748b}.quote-tile{position:relative;display:flex;gap:8px;align-items:center;text-align:left;background:#f2f3f5;border:1px solid #aab0b8;border-radius:3px;min-width:0;height:64px;padding:9px 7px 6px;overflow:hidden;box-sizing:border-box}.quote-product-tile{flex:0 0 210px;height:72px}.quote-tile-price{color:#111827;font-size:.7rem;font-weight:850}.quote-product-tile{width:100%;color:#111827;cursor:pointer;font:inherit;transition:background .14s ease,border-color .14s ease,box-shadow .14s ease}.quote-product-tile:hover{border-color:#707986;background:#ffffff;box-shadow:inset 0 0 0 1px #4f6df22e}.quote-product-tile:disabled{cursor:not-allowed;opacity:.58}.quote-product-tile:focus{outline:none;border-color:#4f6df2;box-shadow:0 0 0 2px #4f6df22e}.product-tile-none{border-color:#aab0b8;background:#f2f3f5}.product-tile-add{border-color:#8da1c6;background:#eef3fb}.product-tile-add .quote-tile-label{background:#d9e5f8;color:#244c86}.product-tile-catalog.catalog-color-1{border-color:#81c7a1;background:#eef9f2}.product-tile-catalog.catalog-color-2{border-color:#d9b15d;background:#fff8e5}.product-tile-catalog.catalog-color-3{border-color:#84a8ff;background:#eef3ff}.product-tile-catalog.catalog-color-4,.product-tile-catalog.catalog-color-custom{border-color:#cf8aa8;background:#fff0f6}.product-tile-catalog.catalog-color-5{border-color:#7fc4c1;background:#edfafa}.product-tile-catalog.catalog-color-6{border-color:#b7a3df;background:#f4f0ff}.product-tile-catalog.catalog-color-7{border-color:#d3947c;background:#fff1ea}.product-tile-catalog.catalog-color-8{border-color:#94b66f;background:#f3faea}.product-tile-catalog.catalog-color-9{border-color:#8da6c8;background:#eef5fd}.product-tile-catalog.catalog-color-10{border-color:#d187b8;background:#fff0f8}.product-tile-catalog.catalog-color-11{border-color:#c5aa6a;background:#fff7e2}.product-tile-catalog.catalog-color-12{border-color:#7fb08d;background:#edf8f0}.product-tile-catalog.catalog-color-13{border-color:#9e9ac8;background:#f2f0ff}.product-tile-catalog.catalog-color-14{border-color:#cf8f72;background:#fff1e9}.product-tile-catalog.catalog-color-15{border-color:#72abc8;background:#edf8fd}.product-tile-catalog.catalog-color-16{border-color:#bf7f9e;background:#fff0f7}.product-tile-catalog.catalog-color-17{border-color:#a8b76b;background:#f8fbe9}.product-tile-catalog.catalog-color-18{border-color:#7db0a1;background:#ebf8f4}.quote-tile-label{width:28px;height:28px;flex:0 0 28px;border-radius:3px;background:#e2e8f0;color:#1f2937;display:grid;place-items:center;font-weight:700}.product-tile-catalog.catalog-color-1 .quote-tile-label{background:#ccefdc;color:#166038}.product-tile-catalog.catalog-color-2 .quote-tile-label{background:#f7df9b;color:#7a4d08}.product-tile-catalog.catalog-color-3 .quote-tile-label{background:#dfe8ff;color:#1f3b8f}.product-tile-catalog.catalog-color-4 .quote-tile-label,.product-tile-catalog.catalog-color-custom .quote-tile-label{background:#fde7f0;color:#84214d}.product-tile-catalog.catalog-color-5 .quote-tile-label{background:#d6f2f0;color:#0f5b57}.product-tile-catalog.catalog-color-6 .quote-tile-label{background:#e8ddff;color:#4b2f84}.product-tile-catalog.catalog-color-7 .quote-tile-label{background:#ffdfd0;color:#7b341c}.product-tile-catalog.catalog-color-8 .quote-tile-label{background:#e4f4ce;color:#355d12}.product-tile-catalog.catalog-color-9 .quote-tile-label{background:#dceafa;color:#23476f}.product-tile-catalog.catalog-color-10 .quote-tile-label{background:#f8d8eb;color:#762659}.product-tile-catalog.catalog-color-11 .quote-tile-label{background:#f4e3b8;color:#674a0e}.product-tile-catalog.catalog-color-12 .quote-tile-label{background:#d8eedf;color:#20542e}.product-tile-catalog.catalog-color-13 .quote-tile-label{background:#dddaf5;color:#37306f}.product-tile-catalog.catalog-color-14 .quote-tile-label{background:#ffdece;color:#773819}.product-tile-catalog.catalog-color-15 .quote-tile-label{background:#d7eff9;color:#175272}.product-tile-catalog.catalog-color-16 .quote-tile-label{background:#f3d5e5;color:#6f2146}.product-tile-catalog.catalog-color-17 .quote-tile-label{background:#eaf1c7;color:#4c5d14}.product-tile-catalog.catalog-color-18 .quote-tile-label{background:#d4ece5;color:#1f5c4d}.product-tile-catalog.catalog-color-1,.product-tile-catalog.catalog-color-2,.product-tile-catalog.catalog-color-3,.product-tile-catalog.catalog-color-4,.product-tile-catalog.catalog-color-5,.product-tile-catalog.catalog-color-6,.product-tile-catalog.catalog-color-7,.product-tile-catalog.catalog-color-8,.product-tile-catalog.catalog-color-9,.product-tile-catalog.catalog-color-10,.product-tile-catalog.catalog-color-11,.product-tile-catalog.catalog-color-12,.product-tile-catalog.catalog-color-13,.product-tile-catalog.catalog-color-14,.product-tile-catalog.catalog-color-15,.product-tile-catalog.catalog-color-16,.product-tile-catalog.catalog-color-17,.product-tile-catalog.catalog-color-18,.product-tile-catalog.catalog-color-19,.product-tile-catalog.catalog-color-20,.product-tile-catalog.catalog-color-21,.product-tile-catalog.catalog-color-22,.product-tile-catalog.catalog-color-23,.product-tile-catalog.catalog-color-24,.product-tile-catalog.catalog-color-25,.product-tile-catalog.catalog-color-26,.product-tile-catalog.catalog-color-27,.product-tile-catalog.catalog-color-28,.product-tile-catalog.catalog-color-29,.product-tile-catalog.catalog-color-30,.product-tile-catalog.catalog-color-31,.product-tile-catalog.catalog-color-32,.product-tile-catalog.catalog-color-33,.product-tile-catalog.catalog-color-34,.product-tile-catalog.catalog-color-35,.product-tile-catalog.catalog-color-36{border-color:var(--product-tile-accent);border-left:8px solid var(--product-tile-accent);background:var(--product-tile-bg)}.product-tile-catalog:before{content:"";position:absolute;top:0;right:0;left:0;height:4px;background:var(--product-tile-accent)}.product-tile-catalog.catalog-color-1 .quote-tile-label,.product-tile-catalog.catalog-color-2 .quote-tile-label,.product-tile-catalog.catalog-color-3 .quote-tile-label,.product-tile-catalog.catalog-color-4 .quote-tile-label,.product-tile-catalog.catalog-color-5 .quote-tile-label,.product-tile-catalog.catalog-color-6 .quote-tile-label,.product-tile-catalog.catalog-color-7 .quote-tile-label,.product-tile-catalog.catalog-color-8 .quote-tile-label,.product-tile-catalog.catalog-color-9 .quote-tile-label,.product-tile-catalog.catalog-color-10 .quote-tile-label,.product-tile-catalog.catalog-color-11 .quote-tile-label,.product-tile-catalog.catalog-color-12 .quote-tile-label,.product-tile-catalog.catalog-color-13 .quote-tile-label,.product-tile-catalog.catalog-color-14 .quote-tile-label,.product-tile-catalog.catalog-color-15 .quote-tile-label,.product-tile-catalog.catalog-color-16 .quote-tile-label,.product-tile-catalog.catalog-color-17 .quote-tile-label,.product-tile-catalog.catalog-color-18 .quote-tile-label,.product-tile-catalog.catalog-color-19 .quote-tile-label,.product-tile-catalog.catalog-color-20 .quote-tile-label,.product-tile-catalog.catalog-color-21 .quote-tile-label,.product-tile-catalog.catalog-color-22 .quote-tile-label,.product-tile-catalog.catalog-color-23 .quote-tile-label,.product-tile-catalog.catalog-color-24 .quote-tile-label,.product-tile-catalog.catalog-color-25 .quote-tile-label,.product-tile-catalog.catalog-color-26 .quote-tile-label,.product-tile-catalog.catalog-color-27 .quote-tile-label,.product-tile-catalog.catalog-color-28 .quote-tile-label,.product-tile-catalog.catalog-color-29 .quote-tile-label,.product-tile-catalog.catalog-color-30 .quote-tile-label,.product-tile-catalog.catalog-color-31 .quote-tile-label,.product-tile-catalog.catalog-color-32 .quote-tile-label,.product-tile-catalog.catalog-color-33 .quote-tile-label,.product-tile-catalog.catalog-color-34 .quote-tile-label,.product-tile-catalog.catalog-color-35 .quote-tile-label,.product-tile-catalog.catalog-color-36 .quote-tile-label{background:var(--product-tile-label-bg);color:var(--product-tile-badge-text, #ffffff)}.quote-tile-copy{min-width:0;display:flex;flex:1 1 auto;flex-direction:column;justify-content:center;gap:1px;overflow:hidden}.quote-tile-copy strong,.quote-tile-subtitle,.quote-tile-status,.quote-tile-price{display:block;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis}.quote-tile-copy strong{color:#111827;font-size:.8rem;line-height:1.15;white-space:nowrap}.quote-tile-subtitle{color:#6b7280;font-size:.72rem;line-height:1.12;white-space:nowrap}.quote-tile-status{color:#475569;font-size:.68rem;font-weight:700;line-height:1.08;white-space:nowrap}.quote-product-tile .quote-tile-copy{justify-content:flex-start;gap:0}.product-tile-catalog .quote-tile-copy{padding-right:54px}.quote-product-tile .quote-tile-copy strong{font-size:.76rem}.quote-product-tile .quote-tile-subtitle{font-size:.66rem}.quote-product-tile .quote-tile-status,.quote-product-tile .quote-tile-price{display:-webkit-box;-webkit-box-orient:vertical;white-space:normal}.quote-product-tile .quote-tile-status{-webkit-line-clamp:2;font-size:.64rem}.quote-tile-badge{align-self:flex-start;border-radius:3px;display:inline-flex;max-width:100%;padding:1px 5px;font-size:.58rem;font-weight:800;line-height:1.25;white-space:nowrap}.quote-tile-badge-row{display:flex;flex-wrap:wrap;gap:3px;min-width:0}.quote-tile-badge.spec-complete{background:#d1fae5;color:#065f46}.quote-tile-badge.price-ready{background:#fef3c7;color:#7c2d12}.quote-tile-badge.specs-needed{background:#fee2e2;color:#991b1b}.quote-product-tile .quote-tile-price{-webkit-line-clamp:2;font-size:.62rem;line-height:1.08}.quote-product-message{margin:0 0 5px;border:1px solid #b9a24e;border-radius:3px;background:#fff7d6;color:#674b00;padding:6px 8px;font-size:.78rem;font-weight:700}.quote-product-message.warning{border-color:#fca5a5;background:#fff1f2;color:#991b1b}.quote-action-hint{margin-right:auto;color:#674b00;font-size:.74rem;font-weight:850}.quote-action-hint.warning{color:#991b1b}.quote-tile-actions{position:absolute;top:6px;right:5px;z-index:1;display:flex;gap:3px}.quote-tile-action-button{min-width:24px;height:20px;border:1px solid #8f98a6;border-radius:2px;background:rgba(255,255,255,.92);color:#263241;cursor:pointer;font:inherit;font-size:.62rem;font-weight:850;line-height:1;padding:2px 4px}.quote-tile-action-button:hover,.quote-tile-action-button:focus{border-color:#4f6df2;background:#ffffff;outline:none}.quote-tile-action-button.danger{border-color:#c58a8a;color:#991b1b}.quote-confirm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;display:grid;place-items:center;padding:16px;background:rgba(17,24,39,.42)}.quote-confirm-dialog{width:min(380px,100%);border:1px solid #8f98a6;border-radius:6px;background:#ffffff;box-shadow:0 18px 48px #0f172a3d;padding:16px}.quote-confirm-dialog h2{margin:0 0 8px;color:#111827;font-size:1rem}.quote-confirm-dialog p{margin:0;color:#374151;font-size:.86rem;font-weight:700;line-height:1.4}.quote-accessory-warning-backdrop{z-index:76}.quote-accessory-warning-dialog{width:min(520px,100%)}.quote-generation-warning-dialog{width:min(720px,calc(100vw - 32px))}.quote-generation-warning-list{margin:10px 0 0;padding-left:20px;color:#7f1d1d;font-size:.9rem;font-weight:750;line-height:1.45}.quote-generation-warning-list li+li{margin-top:6px}.quote-accessory-warning-list{margin:10px 0 0;padding-left:20px;color:#374151;font-size:.84rem;font-weight:700}.quote-accessory-warning-actions{flex-wrap:wrap}.quote-client-match-dialog{width:min(620px,calc(100vw - 32px))}.quote-client-match-list{display:grid;gap:6px;max-height:min(320px,45vh);overflow:auto;margin-top:10px}.quote-client-match-row{display:grid;grid-template-columns:18px minmax(0,1fr);gap:8px;align-items:start;padding:8px 10px;border:1px solid #b8c0cc;border-radius:3px;background:#f7f9fc;cursor:pointer}.quote-client-match-row.selected{border-color:#4f6df2;background:#eef3ff}.quote-client-match-row input{margin-top:3px}.quote-client-match-row span,.quote-client-match-row strong,.quote-client-match-row small{min-width:0}.quote-client-match-row span,.quote-client-match-row small{display:grid;gap:2px}.quote-client-match-row strong{color:#111827;font-size:.88rem}.quote-client-match-row small{color:#64748b;font-size:.74rem;overflow-wrap:anywhere}.quote-client-match-actions{flex-wrap:wrap}.quote-photo-manager-dialog{width:min(760px,calc(100vw - 32px));max-height:min(720px,calc(100vh - 32px));overflow:auto}.quote-photo-manager-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.quote-photo-manager-header h2{margin-bottom:2px}.quote-photo-manager-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:10px}.quote-photo-manager-thumb{display:grid;gap:6px;min-width:0;border:2px solid #c6ceda;border-radius:5px;background:#f8fafc;padding:6px;color:#334155;cursor:pointer;text-align:left}.quote-photo-manager-thumb.selected{border-color:#315bdc;background:#eef3ff}.quote-photo-manager-thumb img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:3px;background:#d7dce4}.quote-photo-manager-thumb span{overflow:hidden;font-size:.72rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.quote-photo-empty-state{border:1px dashed #aab4c2;border-radius:5px;background:#f8fafc;padding:18px;text-align:center}.quote-photo-viewer{display:grid;gap:10px}.quote-photo-viewer img{width:100%;max-height:min(560px,62vh);object-fit:contain;border-radius:5px;background:#0f172a}.quote-photo-viewer span{color:#334155;font-size:.78rem;font-weight:800;overflow-wrap:anywhere}.quote-photo-delete-confirm{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px;margin-top:12px;border:1px solid #e0a3a3;border-radius:5px;background:#fff1f1;padding:10px}.quote-photo-delete-confirm span{margin-right:auto;color:#7f1d1d;font-size:.82rem;font-weight:900}.quote-confirm-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.proposal-preview-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:65;display:grid;place-items:stretch;padding:18px;background:rgba(17,24,39,.56);overflow:hidden}.proposal-preview-panel{width:min(1040px,100%);max-height:calc(100vh - 36px);justify-self:center;overflow-y:auto;overflow-x:hidden;border:1px solid #c9ced8;border-radius:6px;background:#eef1f5;color:#172033;box-shadow:0 20px 64px #0f172a52;padding:14px}.proposal-preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;color:#172033}.proposal-kicker{display:block;color:#64748b;font-size:.72rem;font-weight:800;text-transform:uppercase}.proposal-preview-toolbar h2{margin:2px 0 0;font-size:1.15rem;color:#111827}.proposal-preview-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.proposal-photo-option{display:inline-flex;align-items:center;gap:6px;color:#334155;font-size:.78rem;font-weight:800}.proposal-preview-disabled-reason{margin:-4px 0 10px;color:#7c2d12;font-size:.76rem;font-weight:800;text-align:right}.proposal-document{max-width:930px;margin:0 auto;background:#ffffff;border:1px solid #cfd6df;box-shadow:0 10px 28px #0f172a1f;padding:28px 32px 30px;color:#111827}.proposal-document-header{display:grid;grid-template-columns:minmax(240px,1fr) minmax(240px,.85fr);gap:24px;align-items:start;border-bottom:2px solid #111827;padding-bottom:14px}.proposal-document-header h1{margin:0;color:#111827;font-size:1.55rem;font-weight:850;letter-spacing:0}.proposal-document-header p{margin:5px 0 0;color:#334155;font-size:.8rem}.proposal-company-block{display:grid;gap:2px;color:#263241;font-size:.78rem;line-height:1.25;text-align:left}.proposal-company-block strong{font-size:.96rem;color:#111827}.proposal-company-logo{display:block;max-width:150px;max-height:70px;object-fit:contain;margin-bottom:8px}.proposal-meta-grid{display:grid;grid-template-columns:1fr 1fr 1.2fr 1.2fr;margin-top:14px;border:1px solid #111827;border-bottom:0}.proposal-meta-grid div,.proposal-party-grid>div{min-width:0;padding:7px 8px;border-right:1px solid #111827}.proposal-meta-grid div:last-child,.proposal-party-grid>div:last-child{border-right:0}.proposal-meta-grid span,.proposal-party-grid span{display:block;color:#334155;font-size:.68rem;font-weight:800;text-transform:uppercase}.proposal-meta-grid strong,.proposal-party-grid strong{display:block;color:#111827;font-size:.82rem;overflow-wrap:anywhere}.proposal-party-grid{display:grid;grid-template-columns:1fr 1fr;border:1px solid #111827}.proposal-party-grid small{display:block;color:#475569;font-size:.74rem;line-height:1.3;overflow-wrap:anywhere}.proposal-warning-box{border:1px solid #e3b65c;background:#fff9e8;color:#6f4700;padding:9px 11px;margin-top:12px;font-size:.76rem}.proposal-warning-box strong{display:block;margin-bottom:5px}.proposal-warning-box ul{margin:0;padding-left:18px}.proposal-section{margin-top:14px}.proposal-section h3{margin:0 0 6px;font-size:.86rem;font-weight:850;color:#172033;text-transform:uppercase}.proposal-table-wrap{width:100%;overflow-x:hidden}.proposal-line-table{border:1px solid #111827;font-size:.76rem}.proposal-line-table-header,.proposal-line-table-row{display:grid;grid-template-columns:42px minmax(110px,.95fr) minmax(240px,1.8fr) 46px 82px 92px;align-items:stretch}.proposal-line-table-header{background:#e8edf3;color:#111827;font-weight:850;text-transform:uppercase}.proposal-line-table-header span,.proposal-line-table-row span{min-width:0;padding:5px 6px;border-right:1px solid #111827;overflow-wrap:anywhere}.proposal-line-table-header span:last-child,.proposal-line-table-row span:last-child{border-right:0}.proposal-line-table-row{border-top:1px solid #111827}.proposal-line-table-row strong,.proposal-line-table-row small{display:block}.proposal-line-table-row small{margin-top:2px;color:#475569;font-size:.7rem;line-height:1.25}.proposal-line-table-row span:nth-child(4),.proposal-line-table-row span:nth-child(5),.proposal-line-table-row span:nth-child(6),.proposal-accessory-row span:nth-child(2),.proposal-accessory-row span:nth-child(3),.proposal-accessory-row strong{text-align:right}.proposal-spec-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;border-top:1px solid #c7ced8;background:#ffffff}.proposal-spec-grid div{display:grid;grid-template-columns:minmax(90px,.7fr) minmax(130px,1.3fr);min-width:0;border-right:1px solid #d7dde6;border-bottom:1px solid #d7dde6}.proposal-spec-grid div:nth-child(2n){border-right:0}.proposal-spec-grid dt,.proposal-spec-grid dd{margin:0;padding:4px 6px;min-width:0;overflow-wrap:anywhere;line-height:1.28}.proposal-spec-grid dt{color:#334155;font-weight:800;background:#f6f8fb}.proposal-spec-grid dd{color:#111827}.proposal-accessory-table{border:1px solid #111827;font-size:.76rem}.proposal-accessory-header,.proposal-accessory-row{display:grid;grid-template-columns:minmax(240px,1fr) 54px 88px 98px}.proposal-accessory-header{background:#e8edf3;color:#111827;font-weight:850;text-transform:uppercase}.proposal-accessory-header span,.proposal-accessory-row span,.proposal-accessory-row strong{min-width:0;padding:5px 6px;border-right:1px solid #111827;overflow-wrap:anywhere}.proposal-accessory-row{border-top:1px solid #111827}.proposal-accessory-header span:last-child,.proposal-accessory-row strong{border-right:0}.proposal-bottom-grid{display:grid;grid-template-columns:minmax(240px,1fr) 280px;gap:22px;align-items:end;margin-top:18px}.proposal-acceptance{display:grid;gap:16px;color:#111827;font-size:.82rem}.proposal-acceptance div{display:grid;grid-template-columns:92px 1fr;gap:10px;align-items:end}.proposal-acceptance strong{display:block;min-height:22px;border-bottom:1px solid #111827}.proposal-totals-card{border:1px solid #111827;font-size:.78rem}.proposal-totals-card div{display:grid;grid-template-columns:minmax(130px,1fr) 100px;border-bottom:1px solid #111827}.proposal-totals-card div:last-child{border-bottom:0}.proposal-totals-card .proposal-misc-breakdown{display:grid;grid-template-columns:1fr;gap:0;border-bottom:1px solid #111827;background:#f8fafc}.proposal-totals-card .proposal-misc-breakdown span{display:grid;grid-template-columns:minmax(130px,1fr) 100px;border-bottom:1px solid #d1d5db;color:#4b5563;font-size:.72rem}.proposal-totals-card .proposal-misc-breakdown span:last-child{border-bottom:0}.proposal-totals-card .proposal-misc-breakdown em{padding:4px 7px 4px 18px;font-style:normal}.proposal-totals-card .proposal-misc-breakdown strong{padding:4px 7px;font-size:.72rem}.proposal-totals-card span,.proposal-totals-card strong{padding:5px 7px;min-width:0;overflow-wrap:anywhere}.proposal-totals-card span{color:#111827;font-weight:800}.proposal-totals-card strong{border-left:1px solid #111827;text-align:right}.proposal-totals-card .proposal-grand-total{background:#e8edf3}.proposal-totals-card .proposal-grand-total strong{font-size:.95rem}.proposal-empty-state{border:1px dashed #94a3b8;background:#f8fafc;color:#64748b;padding:10px;font-size:.78rem;font-weight:700}.proposal-photo-section{display:grid;gap:8px}.proposal-photo-section h4{margin:0;color:#334155;font-size:.84rem}.proposal-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px}.proposal-photo-thumb{display:grid;gap:4px;margin:0;break-inside:avoid}.proposal-photo-thumb img{width:100%;max-height:120px;object-fit:cover;border:1px solid #cbd5e1;border-radius:4px}.proposal-photo-thumb figcaption{color:#475569;font-size:.68rem;font-weight:700;overflow-wrap:anywhere}.proposal-placeholder-note{margin-bottom:10px;border:1px solid #bfdbfe;background:#eff6ff;color:#1e3a8a;padding:8px 10px;font-size:.78rem;font-weight:800}@media print{.quote-toolbar,.quote-workspace,.quote-confirm-backdrop,.proposal-preview-toolbar,.proposal-preview-disabled-reason,.proposal-placeholder-note{display:none}.quote-screen,.proposal-preview-backdrop{position:static;display:block;height:auto;min-height:0;padding:0;overflow:visible;background:#ffffff}.proposal-preview-panel{max-height:none;width:100%;border:0;box-shadow:none;padding:0;overflow:visible;background:#ffffff}.proposal-document{max-width:none;border:0;box-shadow:none;padding:0}.proposal-line-record,.proposal-section,.proposal-bottom-grid,.proposal-warning-box{break-inside:avoid;page-break-inside:avoid}.proposal-document-header,.proposal-meta-grid,.proposal-party-grid,.proposal-line-table,.proposal-accessory-table,.proposal-totals-card{print-color-adjust:exact;-webkit-print-color-adjust:exact}}@media (max-width: 760px){.proposal-preview-backdrop{padding:8px}.proposal-preview-panel{max-height:calc(100vh - 16px);padding:10px}.proposal-preview-toolbar{align-items:stretch;flex-direction:column}.proposal-document{padding:18px 14px 20px}.proposal-document-header,.proposal-meta-grid,.proposal-party-grid,.proposal-bottom-grid{grid-template-columns:1fr}.proposal-meta-grid div,.proposal-party-grid>div{border-right:0;border-bottom:1px solid #111827}.proposal-meta-grid div:last-child,.proposal-party-grid>div:last-child{border-bottom:0}.proposal-line-table-header{display:none}.proposal-line-table-row,.proposal-accessory-header,.proposal-accessory-row,.proposal-spec-grid,.proposal-spec-grid div{grid-template-columns:1fr}.proposal-line-table-row span,.proposal-accessory-header span,.proposal-accessory-row span,.proposal-accessory-row strong,.proposal-spec-grid div{border-right:0}.proposal-line-table-row span:nth-child(4),.proposal-line-table-row span:nth-child(5),.proposal-line-table-row span:nth-child(6),.proposal-accessory-row span:nth-child(2),.proposal-accessory-row span:nth-child(3),.proposal-accessory-row strong{text-align:left}.proposal-line-table-row span:nth-child(1):before{content:"Item: ";font-weight:850}.proposal-line-table-row span:nth-child(2):before{content:"Room Location: ";font-weight:850}.proposal-line-table-row span:nth-child(4):before{content:"Qty: ";font-weight:850}.proposal-line-table-row span:nth-child(5):before{content:"Each: ";font-weight:850}.proposal-line-table-row span:nth-child(6):before{content:"Extended: ";font-weight:850}}.quote-error-panel{border:1px solid #d9878b;background:#fef2f2;border-radius:14px;padding:14px;margin-top:16px}.quote-error-panel h2{margin:0 0 8px;font-size:.98rem;color:#991b1b}.quote-error-panel pre{margin:0;color:#7f1d1d;white-space:pre-wrap;font-size:.88rem}.quote-debug-details{background:#ffffff;border:1px solid #dce4eb;border-radius:14px;padding:12px;margin-top:16px}.quote-debug-details summary{cursor:pointer;font-weight:700;color:#111827;font-size:.95rem;padding:6px 0}.quote-debug-details pre{margin:10px 0 0;padding:10px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;overflow:auto;font-size:.88rem;line-height:1.4}@media (max-width: 1100px){.quote-screen{height:auto;min-height:100vh;overflow:auto}.quote-client-strip,.quote-proposal-details-strip,.quote-reporting-details-strip{grid-template-columns:repeat(4,minmax(120px,1fr))}}@media (max-width: 860px){.quote-totals-strip{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width: 720px){.quote-client-strip,.quote-proposal-details-strip,.quote-reporting-details-strip,.quote-totals-strip{grid-template-columns:1fr}}.quote-screen{min-height:100dvh;height:auto;width:100%;max-width:100vw;box-sizing:border-box;overflow-x:hidden;overflow:auto}.quote-toolbar{min-width:0;max-width:100%;flex-wrap:wrap}.quote-toolbar-actions{min-width:min(100%,420px)}.quote-workspace{min-width:0;max-width:100%;overflow:visible}.quote-panel{min-width:0;max-width:100%;box-sizing:border-box}.quote-table-card{width:100%;max-width:100%;max-height:min(54vh,560px);overflow-x:auto}.quote-bottom-panel{max-height:none;overflow:visible}.quote-payment-terms-panel{border:1px solid #b8c3cf;background:#f8fafc;padding:10px;display:grid;gap:10px}.quote-payment-terms-panel.invalid{border-color:#f59e0b;background:#fff7ed}.quote-payment-terms-header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.quote-payment-terms-header div{display:grid;gap:2px;min-width:0}.quote-payment-terms-header span,.quote-payment-schedule-row span,.quote-payment-confirmation-preview,.quote-payment-empty{color:#334155;font-size:.9rem}.quote-payment-schedule,.quote-payment-selector-preview{display:grid;gap:6px}.quote-payment-schedule-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid #d8e0e8;background:#ffffff;padding:8px;min-width:0}.quote-payment-schedule-row div{display:grid;gap:2px;min-width:0}.quote-payment-schedule-row strong,.quote-payment-schedule-row span,.quote-payment-selector-option small{overflow-wrap:anywhere}.quote-payment-confirmation-preview{display:flex;flex-wrap:wrap;gap:8px}.quote-payment-confirmation-preview span{border:1px solid #d8e0e8;background:#ffffff;padding:4px 6px}.quote-payment-selector-dialog{width:min(720px,calc(100vw - 24px))}.quote-payment-selector-list{display:grid;gap:8px;max-height:min(42vh,360px);overflow:auto}.quote-payment-selector-option{border:1px solid #b8c3cf;background:#ffffff;padding:8px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:start}.quote-payment-selector-option span{display:grid;gap:3px;min-width:0}.quote-payment-selector-option em{color:#166534;font-style:normal;font-weight:800}.add-product-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:18px;background:rgba(17,24,39,.42)}.add-product-dialog{width:min(820px,100%);max-height:min(760px,calc(100vh - 36px));overflow:auto;border:1px solid #8f98a6;border-radius:6px;background:#ffffff;box-shadow:0 18px 48px #0f172a3d}.add-product-header{display:flex;justify-content:space-between;gap:14px;border-bottom:1px solid #c8ced7;padding:14px 16px 10px;background:#f5f7fa}.add-product-header h2{margin:0;color:#111827;font-size:1.08rem}.add-product-header p{margin:3px 0 0;color:#4b5563;font-size:.82rem;font-weight:700}.add-product-close{width:28px;height:28px;border:1px solid #9aa3af;border-radius:3px;background:#ffffff;color:#374151;cursor:pointer;font:inherit;font-weight:800}.add-product-body{display:grid;gap:10px;padding:12px 16px 16px}.add-product-tree-grid{display:grid;grid-auto-flow:row dense;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.add-product-field{display:grid;gap:4px}.add-product-field span{color:#475569;font-size:.72rem;font-weight:800;text-transform:uppercase}.add-product-field input,.add-product-field select,.add-product-group select{width:100%;min-height:32px;border:1px solid #9aa3af;border-radius:3px;background:#ffffff;color:#111827;font:inherit;font-size:.82rem}.add-product-meta{display:flex;flex-wrap:wrap;gap:8px}.add-product-meta span{border:1px solid #b6bfca;border-radius:3px;background:#eef2f7;color:#374151;padding:4px 7px;font-size:.74rem;font-weight:700;text-transform:capitalize}.add-product-notice,.add-product-warning{margin:10px 16px 0;border-radius:3px;padding:8px 10px;font-size:.8rem;font-weight:700;line-height:1.35}.add-product-notice{border:1px solid #9db4d4;background:#eef5ff;color:#1d4d7a}.add-product-warning{border:1px solid #b9a24e;background:#fff7d6;color:#674b00}.add-product-options{display:grid;gap:8px}.add-product-step{border:1px solid #bfc7d2;border-radius:4px;background:#f8fafc;padding:10px}.add-product-step select{width:100%;min-height:32px;border:1px solid #9aa3af;border-radius:3px;background:#ffffff;color:#111827;font:inherit;font-size:.82rem}.add-product-step-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.add-product-step-heading h3{margin:0;color:#111827;font-size:.92rem}.add-product-step-heading span{color:#6b7280;font-size:.7rem;font-weight:800;text-transform:uppercase}.add-product-group{border:1px solid #c7ced8;border-radius:4px;background:#fbfcfe;padding:10px}.add-product-empty{border:1px dashed #aeb8c6;border-radius:3px;background:#ffffff;color:#64748b;padding:8px;font-size:.8rem;font-weight:700}.add-product-inline-warning{margin-bottom:7px;border:1px solid #d5bd63;border-radius:3px;background:#fff8db;color:#674b00;padding:6px 8px;font-size:.76rem;font-weight:800;line-height:1.3}.add-product-helper{border:1px solid #b9c5d3;border-radius:3px;background:#f7fafc;color:#475569;padding:7px 9px;font-size:.78rem;font-weight:800;line-height:1.3}.add-product-readonly-value{display:grid;gap:3px;border:1px solid #b7c4d4;border-radius:3px;background:#ffffff;color:#1f2937;padding:8px 9px;font-size:.82rem;font-weight:850;line-height:1.3}.add-product-readonly-value span,.add-product-readonly-value small{color:#475569;font-size:.74rem;font-weight:700}.add-product-note-list{display:grid;gap:4px;margin-bottom:7px;color:#475569;font-size:.76rem;font-weight:750;line-height:1.35}.add-product-label-field{border-top:1px solid #d7dde6;padding-top:10px}.dynamic-honeycomb-product{border-color:#9db4d4;background:#f6f9ff}.dynamic-honeycomb-content{display:grid;gap:10px}.dynamic-honeycomb-non-price-toggle{width:fit-content}.dynamic-honeycomb-non-price-panel{display:grid;gap:8px}.dynamic-honeycomb-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.dynamic-honeycomb-note{color:#475569;font-size:.74rem;font-weight:700}.dynamic-honeycomb-line-options{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.dynamic-honeycomb-line-value-options{align-items:end}.dynamic-honeycomb-grouped-option{display:grid;grid-template-columns:minmax(0,1fr) 72px;gap:6px}.dynamic-honeycomb-grouped-option label{display:grid;gap:4px}.add-product-source-required-fields{display:grid;gap:8px}.add-product-checkbox-option{align-items:center;display:flex;gap:8px;border:1px solid #d7dde6;border-radius:4px;background:#ffffff;padding:8px 9px;color:#243044;font-size:.8rem;font-weight:750}.add-product-checkbox-option input{margin:0}.add-product-group-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px}.add-product-group-heading h3{margin:0;color:#111827;font-size:.9rem}.add-product-group-heading span{color:#6b7280;font-size:.7rem;font-weight:800;text-transform:uppercase}.add-product-actions{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid #c8ced7;padding:12px 16px;background:#f8fafc}@media (max-width: 760px){.add-product-tree-grid{grid-template-columns:1fr}}
