:root{--brick:#8b2500;--brick-dark:#6b1a00;--brick-hover:#a03010;--brick-light:#f9ede8;--tan:#c4a35a;--tan-light:#f0e4c4;--bg:#f5f0e8;--bg-card:#fff;--text:#1c1410;--text-muted:#6b5b4e;--text-light:#9a8880;--border:#ddd5c8;--border-focus:#8b2500;--success:#2e7d32;--success-bg:#e8f5e9;--warning:#e65100;--warning-bg:#fff3e0;--danger:#c62828;--danger-bg:#ffebee;--info:#1565c0;--info-bg:#e3f2fd;--shadow:0 2px 8px #1c14101a;--shadow-md:0 4px 16px #1c14101f;--radius:10px;--radius-sm:6px;--radius-lg:14px;--nav-height:60px}*,:after,:before{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;background:#f5f0e8;background:var(--bg);color:#1c1410;color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;line-height:1.5;margin:0}h1,h2,h3,h4,h5{font-weight:600;line-height:1.25;margin:0 0 .5em}p{margin:0 0 1em}a{color:#8b2500;color:var(--brick);text-decoration:none}a:hover{text-decoration:underline}.page{max-width:720px}.page,.page-wide{margin:0 auto;padding:80px 16px;padding:calc(var(--nav-height) + 20px) 16px 80px}.page-wide{max-width:960px}.card{border-radius:10px;border-radius:var(--radius);box-shadow:0 2px 8px #1c14101a;box-shadow:var(--shadow);margin-bottom:16px;padding:20px}.card,.card-sm{background:#fff;background:var(--bg-card)}.card-sm{border:1px solid #ddd5c8;border:1px solid var(--border);border-radius:6px;border-radius:var(--radius-sm);margin-bottom:10px;padding:14px 16px}.btn{align-items:center;border:none;border-radius:6px;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;font-family:inherit;font-size:15px;font-weight:500;gap:6px;padding:10px 20px;transition:background .15s,opacity .15s,transform .1s;-webkit-user-select:none;user-select:none;white-space:nowrap}.btn:active{transform:scale(.97)}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background:#8b2500;background:var(--brick);color:#fff}.btn-primary:hover:not(:disabled){background:#a03010;background:var(--brick-hover)}.btn-secondary{background:#f0e4c4;background:var(--tan-light);border:1px solid #c4a35a;border:1px solid var(--tan);color:#6b1a00;color:var(--brick-dark)}.btn-secondary:hover:not(:disabled){background:#e8d9b0}.btn-outline{background:#0000;border:1.5px solid #8b2500;border:1.5px solid var(--brick);color:#8b2500;color:var(--brick)}.btn-outline:hover:not(:disabled){background:#f9ede8;background:var(--brick-light)}.btn-ghost{background:#0000;border:1px solid #ddd5c8;border:1px solid var(--border);color:#6b5b4e;color:var(--text-muted)}.btn-ghost:hover:not(:disabled){background:#f5f0e8;background:var(--bg)}.btn-danger{background:#c62828;background:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){background:#a31515}.btn-success{background:#2e7d32;background:var(--success);color:#fff}.btn-success:hover:not(:disabled){background:#1b5e20}.btn-lg{border-radius:10px;border-radius:var(--radius);font-size:16px;padding:14px 28px}.btn-sm{font-size:13px;padding:6px 14px}.btn-full{justify-content:center;width:100%}.btn-icon{padding:8px}.form-group{margin-bottom:16px}.form-group label{color:#6b5b4e;color:var(--text-muted);display:block;font-size:13px;font-weight:500;letter-spacing:.03em;margin-bottom:5px;text-transform:uppercase}.form-control{-webkit-appearance:none;appearance:none;background:#fff;border:1.5px solid #ddd5c8;border:1.5px solid var(--border);border-radius:6px;border-radius:var(--radius-sm);color:#1c1410;color:var(--text);font-family:inherit;font-size:15px;padding:10px 12px;transition:border-color .15s,box-shadow .15s;width:100%}.form-control:focus{border-color:#8b2500;border-color:var(--brick);box-shadow:0 0 0 3px #8b25001f;outline:none}.form-control::placeholder{color:#9a8880;color:var(--text-light)}.form-control.error{border-color:#c62828;border-color:var(--danger)}textarea.form-control{min-height:80px;resize:vertical}select.form-control{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='m1 1 5 5 5-5' stroke='%236B5B4E' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:36px}.form-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.form-row-3{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr 1fr}@media (max-width:480px){.form-row,.form-row-3{grid-template-columns:1fr}}.toggle-group{border:1.5px solid #ddd5c8;border:1.5px solid var(--border);border-radius:6px;border-radius:var(--radius-sm);display:flex;overflow:hidden}.toggle-btn{background:#fff;border:none;border-right:1px solid #ddd5c8;border-right:1px solid var(--border);color:#6b5b4e;color:var(--text-muted);cursor:pointer;flex:1 1;font-family:inherit;font-size:14px;font-weight:500;padding:9px 16px;transition:background .15s,color .15s}.toggle-btn:last-child{border-right:none}.toggle-btn.active{background:#8b2500;background:var(--brick);color:#fff}.toggle-btn:hover:not(.active){background:#f5f0e8;background:var(--bg)}.badge{border-radius:20px;display:inline-block;font-size:12px;font-weight:600;letter-spacing:.02em;padding:3px 10px;text-transform:uppercase}.badge-draft{background:#eee;color:#555}.badge-sent{background:#e3f2fd;background:var(--info-bg);color:#1565c0;color:var(--info)}.badge-approved{background:#e8f5e9;background:var(--success-bg);color:#2e7d32;color:var(--success)}.badge-needs_review{background:#fff3e0;background:var(--warning-bg);color:#e65100;color:var(--warning)}.badge-declined{background:#ffebee;background:var(--danger-bg);color:#c62828;color:var(--danger)}.navbar{background:#6b1a00;background:var(--brick-dark);box-shadow:0 2px 8px #00000040;height:60px;height:var(--nav-height);justify-content:space-between;left:0;padding:0 20px;position:fixed;right:0;top:0;z-index:100}.navbar,.navbar-brand{align-items:center;color:#fff;display:flex}.navbar-brand{font-size:17px;font-weight:700;gap:10px;letter-spacing:-.01em;text-decoration:none}.navbar-brand span{font-size:13px;font-weight:400;opacity:.75}.navbar-right{align-items:center;display:flex;gap:16px}.nav-user{font-size:13px;opacity:.85}.nav-logout{background:#ffffff26;border:1px solid #ffffff40;border-radius:6px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-family:inherit;font-size:13px;padding:6px 14px;transition:background .15s}.nav-logout:hover{background:#ffffff40}.wizard-progress{background:#fff;background:var(--bg-card);border-bottom:1px solid #ddd5c8;border-bottom:1px solid var(--border);box-shadow:0 2px 6px #0000000f;margin-bottom:20px;padding:14px 16px 0;position:-webkit-sticky;position:sticky;top:60px;top:var(--nav-height);z-index:90}.wizard-steps{display:flex;gap:0;overflow-x:auto;padding-bottom:14px;scrollbar-width:none}.wizard-steps::-webkit-scrollbar{display:none}.wizard-step{align-items:center;cursor:pointer;display:flex;flex-direction:column;gap:4px;min-width:70px;padding:0 8px;position:relative}.wizard-step:after{background:#ddd5c8;background:var(--border);content:"";height:2px;position:absolute;right:-12px;top:14px;width:24px;z-index:1}.wizard-step:last-child:after{display:none}.wizard-step-num{align-items:center;background:#ddd5c8;background:var(--border);border-radius:50%;color:#6b5b4e;color:var(--text-muted);display:flex;font-size:13px;font-weight:600;height:28px;justify-content:center;position:relative;transition:background .2s,color .2s;width:28px;z-index:2}.wizard-step.active .wizard-step-num{background:#8b2500;background:var(--brick);color:#fff}.wizard-step.done .wizard-step-num{color:#fff}.wizard-step.done .wizard-step-num,.wizard-step.done:after{background:#2e7d32;background:var(--success)}.wizard-step-label{color:#9a8880;color:var(--text-light);font-size:11px;font-weight:500;white-space:nowrap}.wizard-step.active .wizard-step-label{color:#8b2500;color:var(--brick);font-weight:600}.wizard-step.done .wizard-step-label{color:#2e7d32;color:var(--success)}.section-header{color:#1c1410;color:var(--text);font-size:20px;font-weight:700;margin-bottom:4px}.section-sub{color:#6b5b4e;color:var(--text-muted);font-size:14px;margin-bottom:20px}.job-type-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr);margin-bottom:20px}@media (max-width:360px){.job-type-grid{grid-template-columns:1fr}}.job-type-card{background:#fff;border:2px solid #ddd5c8;border:2px solid var(--border);border-radius:10px;border-radius:var(--radius);cursor:pointer;padding:16px;text-align:center;transition:border-color .15s,background .15s,transform .1s}.job-type-card:hover{transform:translateY(-1px)}.job-type-card.selected,.job-type-card:hover{border-color:#8b2500;border-color:var(--brick)}.job-type-card.selected{background:#f9ede8;background:var(--brick-light)}.job-type-icon{display:block;font-size:28px;margin-bottom:8px}.job-type-label{color:#1c1410;color:var(--text);font-size:14px;font-weight:600}.product-search-bar{margin-bottom:12px;position:relative}.product-search-bar input{padding-left:36px}.search-icon{font-size:16px;left:12px;opacity:.5;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.category-tabs{display:flex;gap:8px;margin-bottom:14px;overflow-x:auto;padding-bottom:10px;scrollbar-width:none}.category-tabs::-webkit-scrollbar{display:none}.category-tab{background:#fff;border:1.5px solid #ddd5c8;border:1.5px solid var(--border);border-radius:20px;color:#6b5b4e;color:var(--text-muted);cursor:pointer;font-size:13px;font-weight:500;padding:5px 12px;transition:all .15s;white-space:nowrap}.category-tab.active{background:#8b2500;background:var(--brick);border-color:#8b2500;border-color:var(--brick);color:#fff}.category-tab:hover:not(.active){border-color:#8b2500;border-color:var(--brick);color:#8b2500;color:var(--brick)}.product-list{display:flex;flex-direction:column;gap:6px;max-height:340px;overflow-y:auto}.product-row{align-items:center;background:#f5f0e8;background:var(--bg);border:1px solid #ddd5c8;border:1px solid var(--border);border-radius:6px;border-radius:var(--radius-sm);display:flex;gap:10px;padding:10px 12px;transition:border-color .15s}.product-row:hover{border-color:#c4a35a;border-color:var(--tan)}.product-row-info{flex:1 1;min-width:0}.product-row-name{font-size:14px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.product-row-meta{color:#6b5b4e;color:var(--text-muted);font-size:12px}.product-row-price{color:#8b2500;color:var(--brick);font-size:14px;font-weight:600;white-space:nowrap}.line-items{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.line-item{background:#f5f0e8;background:var(--bg);border:1px solid #ddd5c8;border:1px solid var(--border);border-radius:6px;border-radius:var(--radius-sm);padding:10px 12px}.line-item-header{align-items:center;display:flex;gap:8px;margin-bottom:8px}.line-item-name{flex:1 1;font-size:14px;font-weight:500;min-width:0}.line-item-remove{background:none;border:none;color:#c62828;color:var(--danger);cursor:pointer;font-size:16px;padding:2px 6px}.line-item-fields{grid-gap:8px;align-items:end;display:grid;gap:8px;grid-template-columns:2fr 1.5fr 2fr 2fr}@media (max-width:500px){.line-item-fields{grid-template-columns:1fr 1fr}}.line-item-extended{color:#8b2500;color:var(--brick);font-size:15px;font-weight:600;text-align:right}.equipment-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr;margin-bottom:14px}@media (max-width:420px){.equipment-grid{grid-template-columns:1fr}}.equipment-card{background:#fff;border:2px solid #ddd5c8;border:2px solid var(--border);border-radius:6px;border-radius:var(--radius-sm);cursor:pointer;padding:12px;transition:border-color .15s,background .15s}.equipment-card.selected{background:#f9ede8;background:var(--brick-light);border-color:#8b2500;border-color:var(--brick)}.equipment-card-name{font-size:14px;font-weight:600;margin-bottom:2px}.equipment-card-rate{color:#6b5b4e;color:var(--text-muted);font-size:13px}.summary-table{border-collapse:collapse;width:100%}.summary-table tr td{font-size:15px;padding:8px 0}.summary-table tr td:last-child{font-weight:500;text-align:right}.summary-table .divider td{border-top:1px solid #ddd5c8;border-top:1px solid var(--border);padding-top:12px}.summary-table .total-row td{border-top:2px solid #ddd5c8;border-top:2px solid var(--border);color:#8b2500;color:var(--brick);font-size:18px;font-weight:700;padding-top:12px}.summary-label{color:#6b5b4e;color:var(--text-muted)}.quote-preview{background:#fff;border:1px solid #ddd5c8;border:1px solid var(--border);border-radius:10px;border-radius:var(--radius);box-shadow:0 4px 16px #1c14101f;box-shadow:var(--shadow-md);margin:0 auto;max-width:680px;padding:32px}.preview-header{align-items:flex-start;border-bottom:3px solid #8b2500;border-bottom:3px solid var(--brick);display:flex;justify-content:space-between;margin-bottom:28px;padding-bottom:20px}.preview-logo-text{color:#6b1a00;color:var(--brick-dark);font-size:22px;font-weight:800;letter-spacing:-.02em}.preview-logo-sub{color:#6b5b4e;color:var(--text-muted);font-size:12px;margin-top:2px}.preview-quote-info{text-align:right}.preview-quote-num{color:#8b2500;color:var(--brick);font-size:18px;font-weight:700}.preview-quote-meta{color:#6b5b4e;color:var(--text-muted);font-size:12px;line-height:1.6;margin-top:4px}.preview-parties{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1fr;margin-bottom:24px}.preview-party-label{color:#6b5b4e;color:var(--text-muted);font-size:11px;font-weight:700;letter-spacing:.06em;margin-bottom:4px;text-transform:uppercase}.preview-party-name{font-size:15px;font-weight:600;margin-bottom:2px}.preview-party-detail{color:#6b5b4e;color:var(--text-muted);font-size:13px;line-height:1.6}.preview-table{border-collapse:collapse;margin-bottom:24px;width:100%}.preview-table th{background:#f5f0e8;background:var(--bg);border-bottom:2px solid #ddd5c8;border-bottom:2px solid var(--border);color:#6b5b4e;color:var(--text-muted);font-size:12px;font-weight:600;letter-spacing:.04em;padding:8px 12px;text-align:left;text-transform:uppercase}.preview-table th:last-child{text-align:right}.preview-table td{border-bottom:1px solid #ddd5c8;border-bottom:1px solid var(--border);font-size:14px;padding:9px 12px;vertical-align:top}.preview-table td:last-child{font-weight:500;text-align:right}.preview-table .section-row td{background:#f9ede8;background:var(--brick-light);color:#6b1a00;color:var(--brick-dark);font-size:12px;font-weight:600;letter-spacing:.04em;padding:6px 12px;text-transform:uppercase}.preview-totals{margin-left:auto;max-width:280px}.preview-total-row{display:flex;font-size:14px;justify-content:space-between;padding:5px 0}.preview-total-row.grand{border-top:2px solid #ddd5c8;border-top:2px solid var(--border);color:#8b2500;color:var(--brick);font-size:17px;font-weight:700;margin-top:4px;padding-top:10px}.preview-footer,.preview-total-label{color:#6b5b4e;color:var(--text-muted)}.preview-footer{border-top:1px solid #ddd5c8;border-top:1px solid var(--border);font-size:13px;line-height:1.7;margin-top:28px;padding-top:20px}.preview-locations{display:flex;flex-wrap:wrap;font-size:12px;gap:24px;margin-top:12px}.preview-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.dashboard-greeting{margin-bottom:24px}.dashboard-greeting h1{font-size:24px}.dashboard-greeting p{color:#6b5b4e;color:var(--text-muted);margin:0}.action-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-bottom:28px}@media (min-width:600px){.action-grid{grid-template-columns:repeat(4,1fr)}}.action-card{background:#fff;background:var(--bg-card);border:2px solid #0000;border-radius:10px;border-radius:var(--radius);box-shadow:0 2px 8px #1c14101a;box-shadow:var(--shadow);cursor:pointer;display:block;padding:20px 16px;text-align:center;transition:border-color .15s,transform .1s,box-shadow .15s}.action-card,.action-card:hover{color:#1c1410;color:var(--text);text-decoration:none}.action-card:hover{border-color:#8b2500;border-color:var(--brick);box-shadow:0 4px 16px #1c14101f;box-shadow:var(--shadow-md);transform:translateY(-2px)}.action-card-icon{display:block;font-size:30px;margin-bottom:10px}.action-card-label{font-size:13px;font-weight:600}.action-card-primary{background:#8b2500;background:var(--brick);border-color:#8b2500;border-color:var(--brick);color:#fff}.action-card-primary:hover{background:#a03010;background:var(--brick-hover);border-color:#a03010;border-color:var(--brick-hover);color:#fff}.action-card-primary .action-card-label{color:#fff}.quote-list-item{align-items:center;background:#fff;background:var(--bg-card);border-left:4px solid #ddd5c8;border-left:4px solid var(--border);border-radius:6px;border-radius:var(--radius-sm);cursor:pointer;display:flex;gap:12px;margin-bottom:10px;padding:14px 16px;transition:box-shadow .15s,border-left-color .15s}.quote-list-item:hover{border-left-color:#8b2500;border-left-color:var(--brick);box-shadow:0 2px 8px #1c14101a;box-shadow:var(--shadow)}.quote-list-item.status-approved{border-left-color:#2e7d32;border-left-color:var(--success)}.quote-list-item.status-sent{border-left-color:#1565c0;border-left-color:var(--info)}.quote-list-item.status-needs_review{border-left-color:#e65100;border-left-color:var(--warning)}.quote-list-item.status-draft{border-left-color:#ddd5c8;border-left-color:var(--border)}.quote-list-info{flex:1 1;min-width:0}.quote-list-num{color:#6b5b4e;color:var(--text-muted);font-size:12px;font-weight:600;letter-spacing:.03em;margin-bottom:2px;text-transform:uppercase}.quote-list-name{font-size:15px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quote-list-meta{color:#6b5b4e;color:var(--text-muted);font-size:12px;margin-top:2px}.quote-list-right{text-align:right;white-space:nowrap}.quote-list-total{color:#8b2500;color:var(--brick);font-size:16px;font-weight:700}.quote-list-date{color:#6b5b4e;color:var(--text-muted);font-size:12px;margin-top:2px}.stats-row{display:flex;gap:10px;margin-bottom:20px;overflow-x:auto;padding-bottom:4px}.stat-chip{background:#fff;background:var(--bg-card);border:1px solid #ddd5c8;border:1px solid var(--border);border-radius:20px;cursor:pointer;font-size:13px;padding:6px 14px;transition:all .15s;white-space:nowrap}.stat-chip.active{background:#8b2500;background:var(--brick);border-color:#8b2500;border-color:var(--brick);color:#fff}.stat-chip span{font-weight:700;margin-left:4px}.step-nav{background:#f5f0e8;background:var(--bg);border-top:1px solid #ddd5c8;border-top:1px solid var(--border);bottom:0;display:flex;gap:10px;justify-content:space-between;margin-top:8px;padding-bottom:16px;padding-top:20px;position:-webkit-sticky;position:sticky;z-index:10}.step-nav-right{display:flex;gap:10px;margin-left:auto}.empty-state{color:#6b5b4e;color:var(--text-muted);padding:40px 20px;text-align:center}.empty-state-icon{display:block;font-size:48px;margin-bottom:12px;opacity:.5}.divider{background:#ddd5c8;background:var(--border);height:1px;margin:20px 0}.input-group{display:flex;gap:8px}.input-group .form-control{flex:1 1}.inline-label{align-items:center;cursor:pointer;display:flex;font-size:14px;gap:8px}.inline-label input[type=checkbox]{accent-color:#8b2500;accent-color:var(--brick);cursor:pointer;height:18px;width:18px}.dollar-prefix{position:relative}.dollar-prefix:before{color:#6b5b4e;color:var(--text-muted);content:"$";font-size:15px;left:11px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);z-index:1}.dollar-prefix .form-control{padding-left:24px}.info-box{background:#e3f2fd;background:var(--info-bg);border-left:3px solid #1565c0;border-left:3px solid var(--info);color:#1565c0;color:var(--info)}.info-box,.warning-box{border-radius:6px;border-radius:var(--radius-sm);font-size:13px;margin-bottom:14px;padding:10px 14px}.warning-box{background:#fff3e0;background:var(--warning-bg);border-left:3px solid #e65100;border-left:3px solid var(--warning);color:#e65100;color:var(--warning)}.tag{background:#f5f0e8;background:var(--bg);border:1px solid #ddd5c8;border:1px solid var(--border);border-radius:4px;display:inline-block;font-size:12px;margin-right:4px;padding:2px 8px}.loading,.tag{color:#6b5b4e;color:var(--text-muted)}.loading{align-items:center;display:flex;gap:10px;justify-content:center;padding:40px}.toast{animation:slideUp .2s ease;background:#1c1410;border-radius:10px;border-radius:var(--radius);bottom:24px;box-shadow:0 4px 16px #1c14101f;box-shadow:var(--shadow-md);color:#fff;font-size:14px;font-weight:500;left:50%;padding:12px 24px;position:fixed;transform:translateX(-50%);z-index:999}@keyframes slideUp{0%{opacity:0;transform:translateX(-50%) translateY(20px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}@media print{.navbar,.preview-actions,.step-nav,.wizard-progress{display:none!important}.page,.page-wide{padding:0}.quote-preview{border:none;box-shadow:none;padding:0}}
/*# sourceMappingURL=main.d451c8a7.css.map*/