/* A compact, calm card form that fits both classic checkout and Checkout Block. */
.indexpays-card-form,.indexpays-card-form *{box-sizing:border-box;font-family:inherit}.indexpays-card-form{width:100%;margin:10px 0 2px;padding:2px 0;color:#243447;background:transparent;border:0;border-radius:0;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(210px,.9fr);gap:16px 24px}
.indexpays-card-form .indexpays-field{display:block;min-width:0;margin:0!important}
.indexpays-card-form .indexpays-field-number{grid-column:1/-1}
.indexpays-card-form .indexpays-field-expiry{grid-column:1}
.indexpays-card-form .indexpays-field-cvv{grid-column:2}
.indexpays-card-form .indexpays-field:last-child{margin-bottom:0!important}
.indexpays-field>label,.indexpays-field-label{display:block;margin:0 0 6px!important;font-size:14px;font-weight:700;line-height:1.35;color:#172b4d}
.indexpays-required{color:#b42318;font-weight:600}
.indexpays-card-form .indexpays-input{box-sizing:border-box;display:block;width:100%!important;min-width:0;height:46px!important;margin:0!important;border:1px solid #cbd5e1!important;border-radius:6px!important;background-color:#fff!important;padding:10px 13px!important;font:inherit!important;font-size:15px!important;line-height:24px!important;color:#1f2937!important;box-shadow:0 1px 2px #172b4d0a!important;transition:border-color .15s,box-shadow .15s}
.indexpays-field-number .indexpays-input{background-image:url('../images/card.svg');background-repeat:no-repeat;background-position:14px center;background-size:30px auto;padding-left:56px!important}
.indexpays-card-form .indexpays-input::placeholder{color:#94a3b8;opacity:1}
.indexpays-card-form select.indexpays-input{appearance:none!important;-webkit-appearance:none!important;padding-right:42px!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%23334155' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 14px center!important;background-size:12px 8px!important}
.indexpays-card-form .indexpays-input:focus{outline:0!important;border-color:#2563eb!important;box-shadow:0 0 0 3px #2563eb1f!important}
.indexpays-card-form .indexpays-input[aria-invalid=true]{border-color:#b91c1c!important;box-shadow:0 0 0 3px #b91c1c14!important}
.indexpays-expiry-controls{display:grid;grid-template-columns:1fr 1fr;gap:10px;min-width:0}
.indexpays-cvv-controls{display:block;min-width:0}
.indexpays-cvv-controls .indexpays-input{width:100%!important}
.indexpays-cvv-hint{font-size:12px;line-height:1.5;color:#64748b}
.indexpays-method-icon{width:210px!important;height:auto!important;max-height:38px!important;object-fit:contain}
.indexpays-method-label{display:flex;align-items:center;gap:10px;flex-wrap:wrap;width:100%;font-size:14px;font-weight:600;color:#334155}.indexpays-method-label .indexpays-method-icon{margin-left:auto!important}
.indexpays-field-error{grid-column:2;font-size:12px;color:#b91c1c;font-weight:400}
@media(max-width:600px){.indexpays-card-form{display:block;padding:2px 0}.indexpays-card-form .indexpays-field{margin-bottom:14px!important}.indexpays-card-form .indexpays-field:last-child{margin-bottom:0!important}.indexpays-field-error{grid-column:1}.indexpays-expiry-controls{gap:8px}}
@media(prefers-reduced-motion:reduce){.indexpays-card-form .indexpays-input{transition:none}}

/* Keep the classic WooCommerce payment box at its roomier size; the compact
   rules above are intended for Checkout Block layouts. */
#payment .payment_box .indexpays-card-form{margin:14px 0 4px;padding:4px 0;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(220px,.9fr);gap:22px 28px}
#payment .payment_box .indexpays-field>label,#payment .payment_box .indexpays-field-label{margin-bottom:8px!important;font-size:16px}
#payment .payment_box .indexpays-input{height:56px!important;padding:14px 16px!important;font-size:17px!important;line-height:26px!important}
#payment .payment_box .indexpays-field-number .indexpays-input{background-position:18px center;background-size:35px auto;padding-left:66px!important}
#payment .payment_box .indexpays-expiry-controls{gap:12px}
#payment .payment_box .indexpays-method-icon{width:230px!important;max-height:42px!important}
@media(max-width:600px){#payment .payment_box .indexpays-card-form{display:block;padding:4px 0}#payment .payment_box .indexpays-field>label,#payment .payment_box .indexpays-field-label{font-size:16px}#payment .payment_box .indexpays-field{margin-bottom:18px!important}}
.indexpays-payment-view{max-width:860px;margin:32px auto;padding:20px;font:16px system-ui;color:#243a4a}.indexpays-payment-view iframe{border:1px solid #dde3e9;border-radius:12px;width:100%;min-height:650px;background:white}.indexpays-submit-status{color:#243a4a;display:flex;gap:8px;align-items:center}.indexpays-submit-status:before{content:"";width:16px;height:16px;border:2px solid #d7e0e7;border-top-color:#243a4a;border-radius:50%;animation:indexpays-spin 1s linear infinite}@keyframes indexpays-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.indexpays-submit-status:before{animation:none}}
