.quote-dialog{width:min(720px,calc(100% - 28px));max-height:90vh;max-height:90dvh;margin:auto;padding:32px;border:1px solid #e5e9ed;border-radius:24px;background:#fff;color:var(--primary-color);overflow-y:auto;box-shadow:0 24px 80px #15263833}
.quote-dialog::backdrop{background:#08111ccc}
.quote-close{position:absolute;inset-inline-end:14px;top:10px;border:0;background:transparent;font-size:30px;line-height:1;width:38px;height:38px;color:var(--primary-color)}
.quote-product{display:flex;align-items:center;gap:22px;margin-bottom:24px;padding-inline-end:20px}
.quote-product img{width:140px;height:110px;object-fit:contain;flex-shrink:0;background:#f5f8fb;border-radius:14px}
.quote-product h2{font-size:25px;line-height:1.2;margin-bottom:8px}
.quote-product p{font-size:14px;line-height:1.5;margin:0;color:#64748b}
.quote-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.quote-fields label{display:block;font-size:14px;font-weight:600;min-width:0}
.quote-fields input,.quote-fields textarea{display:block;width:100%;margin-top:6px;border:1px solid #dce3e9;border-radius:10px;padding:11px 13px;background:#f8fafc;color:#293442;font:inherit;font-weight:400;box-sizing:border-box}
.quote-fields input:focus,.quote-fields textarea:focus{outline:2px solid var(--accent-color);outline-offset:2px;background:#fff}
.quote-fields textarea{resize:vertical;min-height:105px}
.quote-message{grid-column:1/-1}
.quote-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.quote-status{margin:18px 0 12px;font-size:14px;line-height:1.6}
.quote-status[data-state=error]{color:#b42318}
.quote-status[data-state=success]{color:#187047}
.quote-submit:disabled{opacity:.6;cursor:wait}
@media(max-width:575px){.quote-dialog{padding:26px 18px}.quote-product{gap:12px}.quote-product img{width:90px;height:90px}.quote-product h2{font-size:21px}.quote-fields{grid-template-columns:1fr;gap:12px}.quote-submit{width:100%}}
