.quote-preview { box-sizing: border-box; width: min(1400px, 96vw); height: 94dvh; max-width: 96vw; max-height: 94dvh; padding: 0; border: 0; border-radius: 15px; color: #183451; background: #fff; font: 14px 'DM Sans', sans-serif; box-shadow: 0 25px 80px #142a4455; }
.quote-preview[open] { display: flex; flex-direction: column; }
.quote-preview::backdrop { background: #122340b3; }
.quote-preview__header { display: flex; justify-content: space-between; align-items: flex-start; gap: 15px; padding: 16px 20px 8px; }
.quote-preview__header h2 { font-size: 20px; margin: 0 0 5px; }
.quote-preview__status { margin: 0; color: #64748b; font-size: 12px; overflow-wrap: anywhere; }
.quote-preview__toolbar { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 8px 20px 12px; }
.quote-preview__zoom { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.quote-preview__content { flex: 1; min-height: 0; overflow: auto; background: #e9edf3; position: relative; }
.quote-preview__content img { display: block; width: auto; height: auto; max-width: 100%; max-height: 100%; object-fit: contain; margin: 0 auto; background: #fff; }
.quote-preview__content img.is-zoomed { max-width: none; max-height: none; object-fit: fill; margin: 0; }
.quote-preview__content iframe { display: block; width: 100%; height: 100%; border: 0; background: #fff; }
.quote-preview__help { padding: 8px 20px; margin: 0; font-size: 11px; color: #64748b; }
.quote-preview [hidden] { display: none !important; }
#requirementAuthorizationPreview[hidden] { display: none !important; }
@media (max-width: 600px) { .quote-preview__header { padding: 12px; } .quote-preview__toolbar { padding: 8px 12px; flex-wrap: wrap; } .quote-preview__header h2 { font-size: 17px; } }
