.woocommerce {
    max-width: var(--wp--style--global--wide-size, 1200px);
}

/* Hide site header (menu) on checkout page */
body.woocommerce-checkout.woocommerce-page:not(.woocommerce-order-received):not(.woocommerce-thankyou) 
header,
body.woocommerce-checkout.woocommerce-page:not(.woocommerce-order-received):not(.woocommerce-thankyou) 
.header-wrapper,
body.woocommerce-checkout.woocommerce-page:not(.woocommerce-order-received):not(.woocommerce-thankyou) 
.site-header {
    display: none !important;
}

/* Remove standard WP top margin */
body.woocommerce-checkout main[data-page="checkout"], .entry-content {
    margin-top: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    /* max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important; */
}

/* Hide standard checkout coupon popup */
.woocommerce-form-coupon-toggle {
    display: none;
}

/* Hide all WooCommerce store notices */
/* .wc-block-store-notices, .woocommerce-notices-wrapper */
.wc-block-components-notice-banner {
    /* display: none; */
}

.woocommerce-shipping-fields:not(:has(.shipping_address)) {
    display: none !important;
}

/* Always render the shipping_address box as display none on page load. Woocommerce (or some plugin) */
/* Uses JS to hide it, causing flickering in some cases */
.woocommerce-shipping-fields .shipping_address {
    display: none;
}

/* General card layout */
.woocommerce-billing-fields,
.woocommerce-shipping-fields,
.woocommerce-additional-fields {
  background: #fff;
  border: 1px solid #e2e2e2;
  border-radius: 12px;
  padding: 1.5rem 2rem;
  margin-bottom: 2rem;
  box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

/* Headings inside cards */
.woocommerce-billing-fields h3,
.woocommerce-shipping-fields h3,
.woocommerce-additional-fields h3 {
  margin-top: 0;
  font-size: 1.25rem;
  color: #333;
  border-bottom: 1px solid #eee;
  padding-bottom: 0.5rem;
  margin-bottom: 1rem;
}


.woocommerce-shipping-fields h3 {
    border-bottom: 0px;
}

/* Input fields spacing and look */
.woocommerce-billing-fields p.form-row,
.woocommerce-shipping-fields p.form-row,
.woocommerce-additional-fields p.form-row {
  margin-bottom: 1rem;
}

/* Better label and input styling */
.woocommerce-billing-fields label,
.woocommerce-shipping-fields label,
.woocommerce-additional-fields label {
  font-weight: 600;
  color: #333;
}

.input-text.thwcfe-input-field {
  border-radius: 8px;
  border: 1px solid #ccc;
  padding: 10px 12px;
  width: 100%;
  font-size: 15px;
}

/* Focus state */
.input-text.thwcfe-input-field:focus {
  border-color: #007cba;
  box-shadow: 0 0 0 2px rgba(0,124,186,0.15);
  outline: none;
}

.thwmsc-tab-panel {
    background: none !important;
}

.thwmsc-tab-panel.billing {
    padding: 0;
}

.thwmsc-tab-panel.order_review {
    padding: 0;
}

table.shop_table.woocommerce-checkout-review-order-table {
    width: 100% !important;
    display: none !important;
}

/* ========================= */
/* SHIP TO DIFFERENT ADDRESS */
/* ========================= */
#ship-to-different-address {
  display: flex;
  align-items: center;
  gap: 12px;
  background: #f9f9f9;
  padding: 16px 20px;
  border-radius: 8px;
  border: 1px solid #e2e2e2;
  margin-bottom: 0px;
  transition: all 0.3s ease;
}

#ship-to-different-address:has(input[type="checkbox"]:checked) {
  margin-bottom: 25px;
}

#ship-to-different-address:hover {
  background: #f0f0f0;
  border-color: #ccc;
}

#ship-to-different-address .woocommerce-form__label {
  display: flex;
  align-items: center;
  cursor: pointer;
  gap: 10px;
  font-weight: 500;
  font-size: 16px;
  color: #333;
  margin: 0;
}

#ship-to-different-address input[type="checkbox"] {
  width: 20px;
  height: 20px;
  accent-color: #0073aa; /* Matches WP blue — customize this */
  cursor: pointer;
}

#ship-to-different-address span {
  line-height: 1;
}


/* ========================= */
/* PREV / NEXT BUTTONS       */
/* ========================= */
.thwmsc-btn {
  padding: 10px 20px;
  border: none;
  border-radius: 6px;
  font-size: 16px;
  cursor: pointer;
  transition: all 0.2s ease;
  color: #fff;
  background-color: #0073aa; /* default active color */
}

/* Hover effect for clickable buttons */
.thwmsc-btn:not(:disabled):hover {
  background-color: #005f8d;
  transform: translateY(-1px);
  box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

/* Disabled state */
.thwmsc-btn:disabled {
  background-color: #ccc;
  color: #888;
  cursor: not-allowed;
  transform: none;
  box-shadow: none;
}


/* Mobile / small screens */
@media (max-width: 1024px) {
    .thwmsc-accordion-label {
        margin-bottom: 0px !important;
    }

    .thwmsc-tab-content form, 
    .thwmsc-tab-content .woocommerce-billing-fields,
    .thwmsc-tab-content .woocommerce-checkout-payment {
        margin-top: 0px !important;
        border-radius: 0px 0px 5px 5px !important;
    }


    .thwmsc-tab-content .woocommerce-account-fields,
    .thwmsc-tab-content .woocommerce-shipping-fields,
    .thwmsc-tab-content .woocommerce-additional-fields {
        border-radius: 5px !important;
    }
}

/* Extra small screens (<480px) */
@media (max-width: 480px) {
}