/**
 * Cardstream Payment Method Customize Styles
 */
.visa-logo-container {
    margin-top: 15px;
    text-align: center;
    clear: both;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    width: 100%;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 0 !important;
    float: none !important;
    gap: 10px;
}

/* For left alignment, change justify-content: center to justify-content: flex-start */
.visa-logo-link {
    display: inline-block;
    text-decoration: none;
    cursor: pointer;
    transition: opacity 0.3s ease;
    vertical-align: middle;
    margin: 0 5px;
}

.visa-logo-link:hover {
    opacity: 0.8;
}

.visa-logo-image {
    max-width: 80px;
    height: auto;
    display: block;
    margin: 0;
    vertical-align: middle;
}

/* Product page specific styles */
.product-info-main .visa-logo-container {
    margin-top: 15px;
    margin-bottom: 0;
}

/* Ensure add to cart container layout maintains horizontal alignment */
.product-info-main .box-tocart {
    display: block;
    width: 100%;
}

/* Force horizontal layout for quantity and add to cart button */
.product-info-main .box-tocart .fieldset {
    display: flex !important;
    align-items: center;
    flex-wrap: nowrap;
    gap: 10px;
    margin: 0;
}

.product-info-main .box-tocart .fieldset .field.qty {
    margin: 0;
    flex-shrink: 0;
}

.product-info-main .box-tocart .fieldset .actions {
    margin: 0;
    flex-shrink: 0;
}

/* Ensure visa logo appears outside fieldset and centered/middle aligned */
.product-info-main .box-tocart .visa-logo-container {
    margin-top: 15px;
    margin-bottom: 0;
    margin-left: auto !important;
    margin-right: auto !important;
    clear: both !important;
    display: flex !important;
    justify-content: start !important; /* Change to flex-start for left alignment */
    align-items: center !important;
    width: 100% !important;
    text-align: center !important;
    float: none !important;
    position: static !important;
    left: auto !important;
    right: auto !important;
    padding: 0 !important;
    gap: 10px;
}

/* For left alignment, uncomment the following rule */
/*
.product-info-main .box-tocart .visa-logo-container {
    justify-content: flex-start !important;
    text-align: left !important;
}
*/

/* Override any inherited styles from fieldset or actions */
.product-info-main .box-tocart .visa-logo-container .visa-logo-link {
    display: inline-flex;
    align-items: center;
    margin: 0 5px;
    text-align: center;
    vertical-align: middle;
}

/* Ensure logos are properly aligned horizontally */
.product-info-main .box-tocart .visa-logo-container img,
.product-info-main .box-tocart .visa-logo-container .visa-logo-image {
    display: block;
    vertical-align: middle;
    margin: 0;
}

/* Cart page specific styles */
.checkout.cart .visa-logo-container {
    margin-top: 10px;
    margin-bottom: 10px;
}
