.ifcs-quote-consent {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin: 18px 0;
  color: #111827;
  font-size: 15px;
  line-height: 1.55;
}
.ifcs-quote-consent input { width: 18px; height: 18px; margin-top: 2px; }
.ifcs-quote-consent a { color: #1769e8; text-decoration: underline; }
.ifcs-quote-status { margin-top: 16px; padding: 14px 16px; border: 1px solid; font-size: 15px; font-weight: 600; }
.ifcs-quote-status.is-success { border-color: #15803d; background: #f0fdf4; color: #14532d; }
.ifcs-quote-status.is-error { border-color: #dc2626; background: #fef2f2; color: #7f1d1d; }
body.ifcs-payment-preview-active #root { display: none !important; }
#ifcs-payment-preview { min-height: 100vh; display: grid; place-items: center; padding: 40px 20px; background: #f7f9fc; color: #111827; }
.ifcs-payment-preview-hero { width: min(760px, 100%); border-top: 5px solid #1769e8; background: #fff; padding: 48px; box-shadow: 0 18px 50px rgba(15, 23, 42, .12); }
.ifcs-payment-preview-hero img { width: 62px; height: 62px; object-fit: contain; }
.ifcs-payment-preview-hero > p:first-of-type { margin: 24px 0 8px; color: #1769e8; font-size: 13px; font-weight: 800; letter-spacing: 0; }
.ifcs-payment-preview-hero h1 { margin: 0; font-size: 56px; line-height: 1.05; }
.ifcs-payment-preview-copy { margin: 22px 0; max-width: 640px; font-size: 18px; line-height: 1.65; }
.ifcs-payment-preview-security { display: grid; gap: 5px; margin: 28px 0; border-left: 4px solid #1769e8; background: #eef5ff; padding: 18px 20px; }
.ifcs-payment-preview-hero a { display: inline-flex; padding: 14px 20px; background: #1769e8; color: #fff; font-weight: 750; text-decoration: none; }
@media (max-width: 600px) { .ifcs-payment-preview-hero { padding: 30px 22px; } .ifcs-payment-preview-hero h1 { font-size: 34px; } }
