#root{min-height:100vh}.auth-page,.center-card{place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{background:#fff;border:1px solid #dbe3ee;border-radius:20px;width:min(440px,100%);padding:32px;box-shadow:0 18px 50px #1c2d481a}.app-shell{width:min(1120px,100% - 32px);margin:0 auto;padding:28px 0 64px}.topbar,.toolbar,.status-row,.vendor-card,.visit-card,.profile-heading,.section-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.topbar{margin-bottom:20px}.eyebrow,.vendor-code{color:#22634d;letter-spacing:.08em;text-transform:uppercase;margin:0 0 4px;font-size:.78rem;font-weight:800}.muted{color:#657085}.stack{gap:16px;display:grid}.status-row{background:#eef4f7;border-radius:12px;justify-content:flex-start;margin-bottom:16px;padding:12px 14px;font-size:.9rem}.status{text-transform:capitalize;border-radius:999px;align-items:center;width:fit-content;padding:5px 9px;font-size:.76rem;font-weight:800;display:inline-flex}.status.online{color:#145b43;background:#d7f5e8}.status.offline{color:#81331f;background:#fee2d7}.status.neutral{color:#3e4d66;background:#e8edf4}.message{background:#effaf6;border:1px solid #bed8ce;border-radius:12px;padding:12px 14px}.toolbar{margin:18px 0}.search-form{gap:8px;width:min(620px,100%);display:flex}.search-form input{flex:1}.panel,.vendor-card,.visit-card,.empty-state{background:#fff;border:1px solid #dbe3ee;border-radius:16px}.panel{margin-bottom:20px;padding:22px}.vendor-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.full-width{grid-column:1/-1}.form-actions{justify-content:flex-end;display:flex}.vendor-list,.visit-list{gap:12px;display:grid}.vendor-card,.visit-card,.offering-card{align-items:flex-start;padding:18px}.vendor-card h2,.vendor-card p,.visit-card h3,.visit-card p,.panel h2,.topbar h1{margin-top:0}.vendor-card p,.visit-card p{margin-bottom:6px}.offering-section,.quote-section,.evidence-section{margin-top:34px}.compact-status{flex-wrap:wrap}.product-picker{position:relative}.product-suggestions{background:#fff;border:1px solid #bac5d4;border-radius:10px;max-height:320px;margin-top:6px;display:grid;overflow-y:auto;box-shadow:0 12px 28px #1c2d481f}.product-option{color:#172033;text-align:left;background:#fff;border:0;border-bottom:1px solid #e5eaf0;border-radius:0;min-height:auto;padding:11px 12px;display:grid}.product-option:hover,.product-option:focus{background:#effaf6}.product-option:last-child{border-bottom:0}.product-option span,.selected-product span{color:#657085;font-size:.82rem;font-weight:500}.unclassified-button{margin-top:8px}.selected-product{background:#effaf6;border:1px solid #bed8ce;border-radius:10px;gap:3px;margin-top:8px;padding:12px;display:grid}.dynamic-field-groups{gap:12px;display:grid}.field-group{border:1px solid #dbe3ee;border-radius:12px;overflow:hidden}.field-group summary{cursor:pointer;background:#f7f9fb;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;font-weight:800;display:flex}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:16px;display:grid}.field-label-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.field-badge{color:#536078;white-space:nowrap;background:#edf1f6;border-radius:999px;padding:3px 7px;font-size:.65rem;font-weight:800}.field-badge.required{color:#7b2d1d;background:#fee2d7}.choice-field{border:1px solid #dbe3ee;border-radius:10px;min-width:0;margin:0;padding:12px}.choice-field legend{color:#39465c;width:100%;padding:0 4px;font-size:.9rem;font-weight:700}.choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;margin-top:8px;display:grid}.choice-grid .checkbox-label{font-weight:500}.queue-error{color:#7b2d1d;background:#fff2ed;border:1px solid #f1c1b5;border-radius:10px;padding:10px 12px}.offering-list{gap:12px;display:grid}.offering-card{background:#fff;border:1px solid #dbe3ee;border-radius:16px;justify-content:space-between;gap:16px;display:flex}.offering-card h3,.offering-card p{margin-top:0}.offering-card p{margin-bottom:6px}.compact-empty{margin-bottom:12px;padding:28px 20px}.quote-readiness{background:#f7f9fb;border:1px solid #dbe3ee;border-radius:12px;gap:12px;padding:14px;display:grid}.quote-readiness>div:first-child,.prior-price-strip{gap:3px;display:grid}.readiness-good,.readiness-warning{border-radius:10px;margin:0;padding:11px 12px}.readiness-good{color:#145b43;background:#dff6ec}.readiness-warning{color:#7b3f16;background:#fff3dd;border:1px solid #eed3a3}.readiness-warning ul{margin:7px 0;padding-left:20px}.prior-price-strip{border-top:1px solid #dbe3ee;padding-top:10px;font-size:.88rem}.extra-charge-grid{border:1px solid #dbe3ee;border-radius:12px;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:16px;display:grid}.extra-charge-grid h3{grid-column:1/-1;margin:0}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.quote-list,.evidence-list{gap:12px;display:grid}.evidence-card{background:#fff;border:1px solid #dbe3ee;border-radius:16px;justify-content:space-between;align-items:center;gap:16px;padding:18px;display:flex}.evidence-card h3,.evidence-card p{margin-top:0}.evidence-card p{margin-bottom:6px}.pending-card{border-style:dashed}.selected-file{background:#effaf6;border:1px solid #bed8ce;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin:0;padding:12px;display:flex}.quote-card{background:#fff;border:1px solid #dbe3ee;border-radius:16px;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px;display:flex}.quote-card h3,.quote-card p{margin-top:0}.quote-card p{margin-bottom:6px}.quote-price{color:#145b43;margin:3px 0 7px;font-size:1.45rem;font-weight:850}.price-history-callout{color:#1b3f35;background:#effaf6;border:1px solid #bed8ce;border-radius:10px;padding:10px 12px;margin-top:12px!important}.quote-statuses{justify-items:end;gap:7px;display:grid}.profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.profile-summary{grid-column:1/-1}.profile-heading{align-items:flex-start}.section-heading{margin:24px 0 14px}.section-heading h2{margin:0}.location-row{border-bottom:1px solid #e5eaf0;gap:3px;padding:10px 0;display:grid}.location-row:last-child{border-bottom:0}.checkbox-label{align-items:center;gap:10px;display:flex}.checkbox-label input{width:auto}.location-capture{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.back-button{min-height:auto;margin-bottom:12px}.empty-state{text-align:center;padding:40px 20px}.secondary{color:#1b3f35;background:#fff;border-color:#b9c9c3}.text-button{color:#175b46;background:0 0;border:0;padding:4px}@media (width<=700px){.app-shell{width:min(100% - 20px,1120px);padding-top:16px}.topbar,.toolbar{flex-direction:column;align-items:stretch}.search-form{width:100%}.vendor-form,.field-grid,.choice-grid,.extra-charge-grid,.service-grid{grid-template-columns:1fr}.extra-charge-grid h3{grid-column:auto}.profile-grid{grid-template-columns:1fr}.full-width,.profile-summary{grid-column:auto}.vendor-card,.visit-card,.offering-card,.quote-card,.evidence-card,.profile-heading,.section-heading{flex-direction:column;align-items:stretch}.quote-statuses{justify-items:start}}.pwa-toast{z-index:1000;color:#172033;background:#fff;border:1px solid #bed8ce;border-radius:14px;gap:10px;width:min(390px,100% - 36px);padding:16px;display:grid;position:fixed;bottom:18px;right:18px;box-shadow:0 18px 48px #10233a33}.pwa-toast span{color:#657085;line-height:1.45}.pwa-error{border-color:#efb7aa}.pwa-actions{flex-wrap:wrap;gap:10px;display:flex}@media (width<=520px){.pwa-toast{width:calc(100% - 20px);bottom:10px;right:10px}.pwa-actions button{flex:1}}:root{color:#1f2937;font-synthesis:none;text-rendering:optimizelegibility;background:#f4f7fa;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}button{color:#fff;cursor:pointer;background:#176b50;border:1px solid #176b50;border-radius:10px;min-height:42px;padding:10px 16px;font-weight:750}button:disabled{cursor:not-allowed;opacity:.55}label{color:#39465c;gap:6px;font-size:.9rem;font-weight:700;display:grid}input,textarea,select{color:#172033;background:#fff;border:1px solid #bac5d4;border-radius:9px;width:100%;padding:11px 12px}input:focus,textarea:focus,select:focus{border-color:#176b50;outline:3px solid #176b5024}h1,h2{color:#172033}
