.quote-dialog{width:min(920px,100vw - 2rem);max-height:calc(100svh - 2rem);color:var(--foreground);background:var(--surface);border:0;border-radius:8px;margin:auto;padding:0;overflow:hidden auto;box-shadow:0 28px 90px #05123057}.quote-dialog::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#050e24b8}.quote-dialog[open]{animation:.22s ease-out quoteEnter}.quote-header{color:#fff;background:#10285d;justify-content:space-between;gap:2rem;padding:clamp(1.6rem,3vw,2.5rem) clamp(1.3rem,4vw,3rem) 1.5rem;display:flex}.quote-header h2{color:#fff;letter-spacing:0;text-wrap:balance;max-width:680px;margin-bottom:.55rem;font-size:clamp(1.7rem,3vw,2.55rem)}.quote-header p:last-child{color:#dce6ff;max-width:620px}.quote-kicker{color:#ff7075;letter-spacing:.02em;margin-bottom:.55rem;font-size:.82rem;font-weight:700}.quote-close{color:#fff;background:#ffffff1f;border-radius:50%;flex:0 0 42px;place-items:center;width:42px;height:42px;transition:background .16s,transform .16s;display:grid}.quote-close:hover{background:#ffffff38;transform:rotate(4deg)}.quote-progress{background:var(--surface);padding:1.2rem clamp(1.3rem,4vw,3rem) 0}.quote-progress-copy{color:#536078;justify-content:space-between;gap:1rem;margin-bottom:.65rem;font-size:.82rem;font-weight:700;display:flex}.dark .quote-progress-copy{color:#cbd5e1}.quote-progress-track{background:var(--border);border-radius:4px;height:4px;overflow:hidden}.quote-progress-track span{background:var(--primary);height:100%;transition:width .26s;display:block}.quote-form{padding:clamp(1.4rem,3vw,2.3rem) clamp(1.3rem,4vw,3rem) clamp(1.5rem,3vw,2.5rem)}.quote-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.2rem;animation:.18s ease-out quoteStep;display:grid}.quote-field{flex-direction:column;gap:.42rem;min-width:0;display:flex}.quote-field-wide{grid-column:1/-1}.quote-field label,.quote-radio-group legend{color:var(--foreground);font-size:.9rem;font-weight:700}.quote-field label span{color:var(--primary)}.quote-field input,.quote-field textarea{width:100%;color:var(--foreground);background:var(--background);font:inherit;border:1px solid #cbd3df;border-radius:6px;padding:.82rem .9rem;transition:border-color .16s,box-shadow .16s,background .16s}.quote-field textarea{resize:vertical;min-height:170px}.quote-field input:focus,.quote-field textarea:focus{border-color:var(--secondary);background:var(--surface);outline:none;box-shadow:0 0 0 3px #223d7b24}.quote-upload{background:color-mix(in srgb, var(--secondary-light) 36%, var(--surface));border:1px dashed #aab6ca;border-radius:6px;flex-direction:column;gap:.45rem;padding:1rem;display:flex}.quote-upload label{color:var(--foreground);font-size:.9rem;font-weight:700}.quote-upload label span,.quote-upload p{color:#5b6780;font-size:.82rem;font-weight:400}.dark .quote-upload label span,.dark .quote-upload p{color:#cbd5e1}.quote-upload input{width:100%;color:var(--foreground);font:inherit}.quote-upload input::file-selector-button{color:#fff;background:var(--secondary);font:inherit;cursor:pointer;border:0;border-radius:4px;margin-right:.8rem;padding:.58rem .78rem;font-weight:700}.quote-radio-group{border:0;flex-wrap:wrap;grid-column:1/-1;gap:.75rem;padding:0;display:flex}.quote-radio-group legend{width:100%;margin-bottom:.35rem}.quote-radio-group label{border:1px solid var(--border);cursor:pointer;border-radius:6px;align-items:center;gap:.55rem;min-width:110px;padding:.75rem 1rem;font-weight:700;display:flex}.quote-radio-group input{width:18px;height:18px;accent-color:var(--primary)}.quote-error{border-left:3px solid var(--primary);color:#8f1016;background:var(--primary-light);margin-top:1rem;padding:.8rem 1rem;font-weight:650}.dark .quote-error{color:#ffd7d9}.quote-actions{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;margin-top:1.5rem;padding-top:1.25rem;display:flex}.quote-actions .btn,.quote-back{justify-content:center;align-items:center;gap:.55rem;min-height:48px;display:inline-flex}.quote-actions .btn{font-size:.94rem;font-weight:700}.quote-actions .btn:disabled,.quote-close:disabled,.quote-back:disabled{cursor:wait;opacity:.66}.quote-back{color:var(--secondary);font-weight:750}.dark .quote-back{color:#dce6ff}.quote-success{text-align:center;background:linear-gradient(180deg, #10285d0a, transparent 60%), var(--surface);flex-direction:column;justify-content:center;align-items:center;min-height:480px;padding:clamp(2rem,6vw,5rem);display:flex}.quote-success-icon{color:#fff;background:var(--secondary);border-radius:50%;place-items:center;width:72px;height:72px;margin-bottom:1.4rem;display:grid;box-shadow:0 12px 32px #223d7b42}.quote-success h2{margin-bottom:.8rem;font-size:clamp(2rem,4vw,3.4rem)}.quote-success>p:not(.quote-kicker){color:#536078;max-width:580px;margin-bottom:1.7rem;font-size:1.06rem}.dark .quote-success>p:not(.quote-kicker){color:#cbd5e1}.quote-spinner{animation:.8s linear infinite quoteSpin}@keyframes quoteEnter{0%{opacity:0;transform:translateY(14px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes quoteStep{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:translate(0)}}@keyframes quoteSpin{to{transform:rotate(360deg)}}@media (max-width:680px){.quote-dialog{width:calc(100vw - 1rem);max-height:calc(100svh - 1rem)}.quote-header{gap:1rem}.quote-fields{grid-template-columns:1fr}.quote-field-wide{grid-column:auto}.quote-actions{flex-direction:column-reverse;align-items:stretch}.quote-actions>span{display:none}.quote-actions .btn,.quote-back{width:100%}}@media (prefers-reduced-motion:reduce){.quote-dialog[open],.quote-fields,.quote-spinner{animation:none}}
