/* Visa2Pay – classic checkout card form styles */
.visa2pay-card-form {
    border: 0;
    padding: 12px 0;
    margin: 0;
}
.visa2pay-card-form input[type="text"] {
    width: 100%;
    padding: 10px 12px;
    font-size: 15px;
    box-sizing: border-box;
    border: 1px solid #c7cdd3;
    border-radius: 4px;
    background: #fff;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    letter-spacing: 0.02em;
}
.visa2pay-card-form input[type="text"]:focus {
    outline: 0;
    border-color: #4a6cf7;
    box-shadow: 0 0 0 3px rgba( 74, 108, 247, 0.18 );
}
.visa2pay-card-form .form-row { margin-bottom: 12px; }
.visa2pay-card-form label {
    display: block;
    font-size: 13px;
    color: #555;
    margin-bottom: 4px;
}

/* Brand hint */
#visa2pay-card-number {
    background-repeat: no-repeat;
    background-position: right 12px center;
    background-size: 36px auto;
    padding-right: 56px;
}
.visa2pay-card-form.brand-visa #visa2pay-card-number {
    background-image: url( "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 24'><text x='0' y='18' font-family='Arial' font-weight='700' font-size='18' fill='%231a1f71'>VISA</text></svg>" );
}
.visa2pay-card-form.brand-mastercard #visa2pay-card-number {
    background-image: url( "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 22'><circle cx='13' cy='11' r='9' fill='%23eb001b'/><circle cx='23' cy='11' r='9' fill='%23f79e1b' fill-opacity='0.85'/></svg>" );
}

/* Blocks layout helpers */
.visa2pay-blocks-fields .visa2pay-row { margin: 8px 0; }
.visa2pay-blocks-fields .visa2pay-row label {
    display: block;
    font-size: 13px;
    margin-bottom: 4px;
    color: #555;
}
.visa2pay-blocks-fields .visa2pay-row input {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid #c7cdd3;
    border-radius: 4px;
    font-size: 15px;
    box-sizing: border-box;
}
.visa2pay-blocks-fields .visa2pay-row-2col {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}
