:root{--accent: #0033cc;--accent-dark: #235a94;--accent-soft: #ebf3fb;--ink: #1a202c;--ink-soft: #4a5568;--line: #d7dde5;--bg: #f7f9fb;--danger: #b83232;--radius: 12px;--tap: 56px}#quote-app{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:var(--bg);min-height:100dvh;-webkit-font-smoothing:antialiased}#quote-app *,#quote-app *:before,#quote-app *:after{box-sizing:border-box}#quote-app button,#quote-app a,#quote-app input,#quote-app select,#quote-app label,#capture-app button,#capture-app a,#capture-app input,#capture-app label{touch-action:manipulation}.wizard{max-width:480px;margin:0 auto;padding:16px 16px 48px}.wizard-header{display:flex;align-items:center;justify-content:space-between;min-height:48px;margin-bottom:4px}.back-btn{width:48px;height:48px;border:none;background:none;font-size:22px;color:var(--ink-soft);cursor:pointer;border-radius:50%}.back-btn:active{background:var(--accent-soft)}.back-spacer{width:48px}.dots{display:flex;gap:10px}.dot{width:10px;height:10px;border-radius:50%;background:var(--line);transition:background .2s,transform .2s}.dot.done{background:var(--accent);opacity:.45}.dot.active{background:var(--accent);transform:scale(1.25)}.step-title{font-size:24px;font-weight:700;line-height:1.25;margin:8px 0 20px;text-align:center}.step-error{background:#fdecec;color:var(--danger);border-radius:var(--radius);padding:12px 16px;font-size:15px;margin:0 0 16px}.step{display:flex;flex-direction:column;gap:16px}.hp-field{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0;pointer-events:none}.field{display:flex;flex-direction:column;gap:6px}.field-label{font-size:14px;font-weight:600;color:var(--ink-soft)}.field-label .optional{font-weight:400;font-style:normal;color:#8a94a3}.field input,.field textarea{width:100%;min-height:var(--tap);padding:14px 16px;font-size:16px;font-family:inherit;color:var(--ink);background:#fff;border:1.5px solid var(--line);border-radius:var(--radius);-webkit-appearance:none;-moz-appearance:none;appearance:none}.field textarea{resize:vertical}.suggest{position:relative}.suggest-list{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:20;margin:0;padding:6px;list-style:none;background:#fff;border:1.5px solid var(--line);border-radius:var(--radius);box-shadow:0 12px 28px #1a202c24;max-height:280px;overflow-y:auto}.suggest-list li{padding:12px;border-radius:8px;cursor:pointer;font-size:15px;color:var(--ink)}.suggest-list li.active,.suggest-list li:hover{background:var(--accent-soft)}.field input:focus,.field textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #2b6cb026}.btn{min-height:var(--tap);border-radius:var(--radius);font-size:17px;font-weight:600;font-family:inherit;cursor:pointer;border:none;padding:14px 20px}a.btn{display:inline-flex;align-items:center;justify-content:center;text-align:center;text-decoration:none}.btn-primary{background:var(--accent);color:#fff;width:100%}.btn-primary:active{background:var(--accent-dark)}.btn-primary:disabled{background:#b9c6d4;cursor:not-allowed}.btn-link{background:none;color:var(--accent);text-decoration:underline;font-size:15px;font-weight:500}.chip{min-height:44px;padding:10px 16px;border-radius:999px;border:1.5px solid var(--line);background:#fff;color:var(--ink);font-size:15px;font-weight:500;font-family:inherit;cursor:pointer}.chip.selected{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-dark)}.chip-wide{width:100%;min-height:var(--tap)}.chip-row{display:flex;flex-wrap:wrap;gap:8px}.card-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.size-card{min-height:84px;padding:14px 12px;border:1.5px solid var(--line);border-radius:var(--radius);background:#fff;font-family:inherit;cursor:pointer;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;text-align:left}.size-card.selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent)}.size-card-label{font-size:16px;font-weight:700;color:var(--ink)}.size-card-hint{font-size:12.5px;color:var(--ink-soft);line-height:1.3}.stepper-row{display:flex;align-items:center;justify-content:space-between;min-height:var(--tap);background:#fff;border:1.5px solid var(--line);border-radius:var(--radius);padding:6px 6px 6px 16px}.stepper-label{font-size:15px;font-weight:500}.stepper{display:flex;align-items:center;gap:4px}.stepper-btn{width:44px;height:44px;border-radius:10px;border:none;background:var(--accent-soft);color:var(--accent-dark);font-size:22px;font-weight:600;-webkit-user-select:none;user-select:none;cursor:pointer;line-height:1}.stepper-btn:disabled{opacity:.35;cursor:not-allowed}.stepper-value{min-width:44px;text-align:center;font-size:17px;font-weight:600;font-variant-numeric:tabular-nums}.disclosure{background:none;border:none;color:var(--accent);font-size:15px;font-weight:500;font-family:inherit;cursor:pointer;padding:12px 0;min-height:48px;text-decoration:underline;text-underline-offset:3px}.details-block,.tubs-block{display:flex;flex-direction:column;gap:12px}.confirmation{display:flex;flex-direction:column;align-items:center;gap:16px;padding-top:40px;text-align:center}.confirm-icon{width:64px;height:64px;border-radius:50%;background:var(--accent);color:#fff;font-size:32px;display:flex;align-items:center;justify-content:center}.confirm-copy{font-size:16px;color:var(--ink-soft);line-height:1.5;margin:0;max-width:40ch}.summary-card{width:100%;background:#fff;border:1.5px solid var(--line);border-radius:var(--radius);padding:16px;display:flex;flex-direction:column;gap:12px;text-align:left}.summary-row{display:flex;gap:12px;font-size:15px}.summary-label{flex:0 0 52px;font-weight:600;color:var(--ink-soft)}.summary-value{color:var(--ink);overflow-wrap:anywhere}.office-line{font-size:14px;color:var(--ink-soft);margin:8px 0 0}.office-line a{color:var(--accent);font-weight:600}.call-line{font-size:14px;color:var(--ink-soft);text-align:center;margin:20px 0 0}.call-line a{color:var(--accent);font-weight:600}.details-hint{font-size:14px;color:var(--ink-soft);margin:0 0 8px}.walkthrough-cta{background:#f0f6ff;border:1px solid #c3d7f7;border-radius:12px;padding:16px;margin:16px 0;text-align:left}.walkthrough-title{font-size:17px;margin:0 0 4px}.walkthrough-privacy{font-size:13px;color:var(--ink-soft);margin:8px 0 0}@media (min-width: 480px){.wizard{padding-top:40px}}
