.coupon .input-text {
    background-color: white !important;
    color: #1F2937 !important;
    font-weight: 400 !important; /* using font-semibold instead of font-normal */
    border: 1px solid #D1D5DB !important;
    border-radius: 1.5rem !important; /* !rounded-3xl */
    padding: 0.5rem 1rem !important; /* !py-2 and !px-4 */
    width: 100% !important; /* !w-full */
    font-size: 1rem !important; /* !text-base */
}
.coupon .button {
    background-color: #FFF8FA !important;
    color: #F18DBA !important;
    font-weight: 600 !important; /* using font-semibold instead of font-normal */
    border: none !important;
    border-radius: 1.5rem !important; /* !rounded-3xl */
    padding: 0.5rem 1rem !important; /* !py-2 and !px-4 */
    width: 100% !important; /* !w-full */
    font-size: 1rem !important; /* !text-base */
}


.cart_totals h2 {
    margin-bottom: 0 !important;
}

/* ------------------------------------------------------------------------- */
/* Proceed-to-checkout button style */
/* ------------------------------------------------------------------------- */

.cart_totals .wc-proceed-to-checkout a.checkout-button {
    background-color: #E31B74 !important;
    color: #fff !important;
    font-weight: 600 !important;
    border: none !important;
    border-radius: 1.5rem !important;
    padding: 1rem 1rem !important;
    width: 100% !important;
    font-size: 1rem !important;
    display: block;       /* ensures the button takes full width */
    text-align: center;
}
.cart_totals .wc-proceed-to-checkout a.checkout-button.adding {
    background-color: #f18dba !important;
}

/* ------------------------------------------------------------------------- */
/* Table styling for basket totals */
/* ------------------------------------------------------------------------- */
.cart_totals table.shop_table {
    width: 100%;
    border-collapse: collapse;
    border: none;
}

/* Remove backgrounds and borders, add spacing as needed */
.cart_totals table.shop_table th,
.cart_totals table.shop_table td {
    background: transparent !important;
    border: none !important;
    font-size: 1.1rem;
    padding: 0.5rem 0rem;  /* adjust as desired */
}

/* Align text: left for header cells, right for data cells */
.cart_totals table.shop_table th {
    text-align: left;
    font-weight: 400 !important;
}

.cart_totals table.shop_table td {
    text-align: right;
}

/* Ensure all table rows have a transparent background and no borders */
.cart_totals table.shop_table tr {
    background: transparent !important;
    border: none !important;
}

/* The order-total row should be bold */
.cart_totals table.shop_table tr.order-total th,
.cart_totals table.shop_table tr.order-total td {
    font-weight: bold !important;
    background: transparent !important;
    border: none !important;
}

@media (max-width: 768px) {
    .wc-proceed-to-checkout {
        position: fixed;
        bottom: 0;
        left: 0;
        width: 100%;
        z-index: 99;
        backdrop-filter: blur(8px);
        padding: 1em 1em 0 1em !important;
    }
}

.cart_totals {
    float: none !important;
    width: 100% !important;
}