.citigate-card-form,
.citigate-card-fields,
.citigate-block-fields {
    max-width: 560px;
}

.citigate-card-form {
    margin: 0 auto 24px;
}

.citigate-card-fields .form-row,
.citigate-block-field,
.citigate-block-fields label,
.citigate-block-fields input {
    display: block;
    width: 100%;
}

.citigate-card-fields input.input-text,
.citigate-block-fields input.input-text {
    width: 100%;
    min-height: 44px;
    box-sizing: border-box;
    padding: 0.75em 1em;
    margin-bottom: 10px;
}

.citigate-field-row {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 12px;
}

.citigate-field-error {
    display: none;
    color: #cc2f2f;
    font-size: 13px;
    margin: -6px 0 10px;
}

.citigate-field-error.is-visible {
    display: block;
}

.citigate-card-fields .woocommerce-invalid input.input-text,
.citigate-card-fields input.input-text.woocommerce-invalid,
.citigate-block-field.woocommerce-invalid input.input-text,
.citigate-block-fields input.input-text.woocommerce-invalid {
    border-color: #cc1818 !important;
    box-shadow: 0 0 0 1px #cc1818 !important;
}

.citigate-card-fields .woocommerce-validated input.input-text,
.citigate-card-fields input.input-text.woocommerce-validated,
.citigate-block-field.woocommerce-validated input.input-text,
.citigate-block-fields input.input-text.woocommerce-validated {
    border-color: #0f834d !important;
    box-shadow: 0 0 0 1px #0f834d !important;
}

.citigate-submit {
    width: 100%;
    justify-content: center;
    text-align: center;
    border: none;
    cursor: pointer;
}

@media (max-width: 600px) {
    .citigate-field-row {
        grid-template-columns: 1fr;
    }
}


.citigate-card-number-wrap {
    position: relative;
}

.citigate-card-number-wrap input.input-text {
    padding-right: 72px;
}

.citigate-card-type {
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 11px;
    font-weight: 600;
    color: #111;
    opacity: .65;
    letter-spacing: .05em;
    pointer-events: none;
    text-transform: uppercase;
}

.payment_method_citigategateway > label[for="payment_method_citigategateway"] {
    display: flex;
    align-items: center;
    width: 100%;
    gap: 12px;
}

.payment_method_citigategateway > label[for="payment_method_citigategateway"] > img {
    float: none !important;
    width: 42px !important;
    height: 20px !important;
    max-height: none !important;
    margin: 0 0 0 auto !important;
    object-fit: contain;
}

.citigate-payment-method-label {
    display: flex;
    align-items: center;
    width: 100%;
    min-width: 0;
    gap: 12px;
}

.citigate-payment-method-label > :first-child {
    min-width: 0;
}

.citigate-payment-method-icon {
    display: block;
    flex: 0 0 auto;
    width: 42px;
    height: 28px;
    margin-left: auto;
    object-fit: contain;
}
