.musqet-ec-container {
    margin-top: 16px;
    text-align: center;
}

.musqet-ec-divider {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
}

.musqet-ec-divider::before,
.musqet-ec-divider::after {
    content: '';
    flex: 1;
    height: 1px;
    background: #e0e0e0;
}

.musqet-ec-divider-text {
    font-size: 13px;
    color: #888;
    text-transform: lowercase;
    white-space: nowrap;
}

.musqet-ec-buttons {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.musqet-ec-gpay-wrapper {
    min-height: 48px;
}

/* Isolate Google Pay button from Magento theme styles.
   The GPay SDK sizes its button content proportionally to the button's font-size.
   Magento Luma sets large font-size + hover changes on all buttons. */
.musqet-ec-gpay-wrapper {
    min-height: 48px;
    font-size: 11px;
}

.musqet-ec-gpay-wrapper button,
.musqet-ec-gpay-wrapper button:hover,
.musqet-ec-gpay-wrapper button:focus,
.musqet-ec-gpay-wrapper button:active,
.musqet-ec-gpay-wrapper button:visited {
    font-size: inherit !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    min-height: 48px !important;
    width: 100% !important;
    cursor: pointer !important;
    transform: none !important;
    box-shadow: none !important;
    letter-spacing: normal !important;
    line-height: normal !important;
    text-transform: none !important;
    background-size: auto 70% !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
}

.musqet-ec-applepay-wrapper {
    min-height: 48px;
}

.musqet-ec-applepay-btn {
    -webkit-appearance: -apple-pay-button;
    -apple-pay-button-type: checkout;
    -apple-pay-button-style: black;
    width: 100%;
    height: 48px;
    border: none;
    cursor: pointer;
    border-radius: 4px;
}

.musqet-ec-error {
    margin-top: 10px;
    padding: 10px;
    background: #fef2f2;
    border: 1px solid #fecaca;
    border-radius: 4px;
    color: #dc2626;
    font-size: 13px;
    text-align: center;
}

/* Mini-cart specific */
.musqet-ec-minicart {
    padding: 0 16px 16px;
}

.musqet-ec-minicart .musqet-ec-divider-text {
    font-size: 12px;
}
