.zyntrodata-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin:12px 0; padding:16px; border-radius:6px; background:#fff; color:#1f2937; color-scheme:light; font-size:15px; line-height:1.5; }
.zyntrodata-fields [hidden], .zyntrodata-fields .zyntrodata-error:empty, .zyntrodata-fields .zyntrodata-note:empty, .zyntrodata-fields .zyntrodata-instructions:empty { display:none !important; }
.zyntrodata-fields .zyntrodata-field { min-width:0; margin:0; padding:0; }
.zyntrodata-fields .zyntrodata-field-wide, .zyntrodata-fields .zyntrodata-error, .zyntrodata-fields .zyntrodata-note, .zyntrodata-fields .zyntrodata-instructions, .zyntrodata-fields .zyntrodata-reload { grid-column:1 / -1; }
.zyntrodata-fields label { display:block; margin:0 0 6px; font-size:13px; font-weight:600; }
.zyntrodata-fields input, .zyntrodata-fields select { display:block; width:100%; min-height:44px; box-sizing:border-box; padding:10px 12px; border:1px solid #949494; border-radius:4px; background:#fff; color:#1f2937; font:inherit; }
.zyntrodata-fields :is(input,select,button):focus-visible { outline:2px solid currentColor; outline-offset:3px; }
.zyntrodata-fields .zyntrodata-instructions, .zyntrodata-fields .zyntrodata-note { border:1px solid #949494; border-radius:6px; padding:18px; margin:0; }
.zyntrodata-fields .zyntrodata-instructions img { display:block; margin:0 auto 18px; background:white; padding:8px; box-sizing:border-box; }
.zyntrodata-fields dl, .zyntrodata-receipt dl { margin:0; }
.zyntrodata-fields dl > div, .zyntrodata-receipt dl > div { display:grid; grid-template-columns:minmax(90px,1fr) minmax(0,2fr); gap:12px; padding:7px 0; }
.zyntrodata-fields dt, .zyntrodata-receipt dt { font-size:13px; font-weight:600; }
.zyntrodata-fields dd, .zyntrodata-receipt dd { margin:0; overflow-wrap:anywhere; white-space:pre-line; }
.zyntrodata-fields .zyntrodata-help { font-size:13px; border-top:1px solid #949494; padding-top:14px; margin:14px 0 0; }
.zyntrodata-fields .zyntrodata-reload { justify-self:start; padding:6px 0; border:0; background:transparent; color:inherit; text-decoration:underline; font:inherit; font-size:13px; cursor:pointer; }
.zyntrodata-fields .zyntrodata-error { margin:0; border-left:3px solid #b32d2e; padding:10px 12px; }
.zyntrodata-receipt { border:1px solid #949494; border-radius:8px; padding:24px; margin:24px 0; font-size:15px; line-height:1.6; }
.zyntrodata-receipt h2 { font-size:22px; margin:12px 0 8px; }
.zyntrodata-receipt p { margin:0 0 18px; }
.zyntrodata-receipt .zyntrodata-status { display:inline-block; border:1px solid currentColor; border-radius:4px; padding:2px 8px; font-size:12px; font-weight:600; }
@media (max-width:480px) {
    .zyntrodata-fields { grid-template-columns:minmax(0,1fr); }
    .zyntrodata-fields dl > div, .zyntrodata-receipt dl > div { grid-template-columns:minmax(0,1fr); gap:2px; }
    .zyntrodata-receipt { padding:18px; }
}

/* Pair foreground and background colors inside our panel, independent of the checkout theme. */
.zyntrodata-fields,
.zyntrodata-fields .zyntrodata-instructions,
.zyntrodata-fields .zyntrodata-note,
.zyntrodata-fields input,
.zyntrodata-fields select,
.zyntrodata-fields select option { background:#fff !important; color:#1f2937 !important; }
.zyntrodata-fields :is(label, p, dl, dt, dd, .zyntrodata-reload) { color:#1f2937 !important; }
.zyntrodata-fields .zyntrodata-reload { background:transparent !important; }
.zyntrodata-fields input::placeholder { color:#4b5563 !important; opacity:1; }
