/**
 * Order Pay Page Styles
 * Styles for the order-pay (pay for order) page only
 * Version: 1.0.0
 */

/* ========================================
   PAYMENT METHODS CONTAINER
   ======================================== */

/* Main payment container - more padding and rounded corners */
body.woocommerce-order-pay .lavie-payment-section #payment {
  background: #fff;
  border: 1px solid var(--lavie-border, #C9E1EB);
  border-radius: 24px;
  padding: 32px;
  margin-top: 16px;
}

/* Payment methods list */
body.woocommerce-order-pay .lavie-payment-section .wc_payment_methods.payment_methods {
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
}

/* Individual payment method item - more rounded */
body.woocommerce-order-pay .lavie-payment-section .wc_payment_methods.payment_methods li.wc_payment_method {
  background: var(--lavie-bg, #F6F9FF);
  border: 2px solid var(--lavie-border, #C9E1EB);
  border-radius: 20px !important;
  padding: 24px !important;
  margin-bottom: 16px !important;
}

body.woocommerce-order-pay .lavie-payment-section .wc_payment_methods.payment_methods li.wc_payment_method:last-child {
  margin-bottom: 0 !important;
}

/* ========================================
   ORDER TABLE STYLING (like checkout review table)
   ======================================== */

/* Main table container */
body.woocommerce-order-pay .lavie-order-pay-wrap .shop_table {
  border-radius: 20px;
  border: 1px solid var(--lavie-border, #C9E1EB);
  background: #fff;
}

/* Hide table header like in checkout */
body.woocommerce-order-pay .lavie-order-pay-wrap .shop_table thead {
  display: none;
}

/* Body as flex column */
body.woocommerce-order-pay .lavie-order-pay-wrap .shop_table tbody {
  display: flex;
  flex-direction: column;
}

/* Order item row */
body.woocommerce-order-pay .lavie-order-pay-wrap .shop_table tbody tr.order_item {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 20px 24px;
  border-bottom: 1px solid var(--lavie-border, #C9E1EB);
}

/* Product name cell */
body.woocommerce-order-pay .lavie-order-pay-wrap .shop_table tbody tr.order_item td.product-name {
  flex: 1;
  font-family: Nunito, sans-serif;
  font-weight: 700;
  font-size: 16px;
  color: var(--lavie-text, #063043);
  border: none;
  padding: 0;
}

/* Hide quantity column (shown inline with name) */
body.woocommerce-order-pay .lavie-order-pay-wrap .shop_table tbody tr.order_item td.product-quantity {
  display: none;
}

/* Price cell */
body.woocommerce-order-pay .lavie-order-pay-wrap .shop_table tbody tr.order_item td.product-subtotal {
  font-family: Nunito, sans-serif;
  font-weight: 700;
  font-size: 16px;
  color: var(--lavie-text, #063043);
  text-align: right;
  border: none;
  padding: 0;
}

/* Hide wc-item-meta details */
body.woocommerce-order-pay .lavie-order-pay-wrap .shop_table tbody .wc-item-meta {
  display: none !important;
}

/* Show quantity inline */
body.woocommerce-order-pay .lavie-order-pay-wrap .shop_table tbody .product-quantity strong {
  font-weight: 700;
  color: var(--lavie-text, #063043);
}

/* Tfoot styling */
body.woocommerce-order-pay .lavie-order-pay-wrap .shop_table tfoot {
  display: flex;
  flex-direction: column;
}

body.woocommerce-order-pay .lavie-order-pay-wrap .shop_table tfoot tr {
  display: flex;
  justify-content: space-between;
  padding: 12px 24px;
  border: none;
}

body.woocommerce-order-pay .lavie-order-pay-wrap .shop_table tfoot th,
body.woocommerce-order-pay .lavie-order-pay-wrap .shop_table tfoot td {
  border: none;
  padding: 0;
  font-family: Nunito, sans-serif;
  font-size: 14px;
}

body.woocommerce-order-pay .lavie-order-pay-wrap .shop_table tfoot th {
  font-weight: 600;
  color: var(--lavie-muted, rgba(6,48,67,0.6));
}

body.woocommerce-order-pay .lavie-order-pay-wrap .shop_table tfoot td {
  font-weight: 700;
  color: var(--lavie-text, #063043);
  text-align: right;
}

/* Total row */
body.woocommerce-order-pay .lavie-order-pay-wrap .shop_table tfoot .order-total th,
body.woocommerce-order-pay .lavie-order-pay-wrap .shop_table tfoot .order-total td {
  font-size: 18px;
  color: var(--lavie-primary, #1882B1);
  font-weight: 700;
}

body.woocommerce-order-pay .lavie-order-pay-wrap .shop_table tfoot .order-total td small.includes_tax {
  display: block;
  font-size: 12px;
  color: var(--lavie-muted, rgba(6,48,67,0.6));
  font-weight: 400;
  margin-top: 4px;
}

/* ========================================
   MOBILE ADJUSTMENTS
   ======================================== */

@media (max-width: 720px) {
  /* Payment container */
  body.woocommerce-order-pay .lavie-payment-section #payment {
    padding: 20px;
    border-radius: 16px;
  }
  
  /* Payment method items */
  body.woocommerce-order-pay .lavie-payment-section .wc_payment_methods.payment_methods li.wc_payment_method {
    padding: 16px !important;
    border-radius: 16px !important;
  }
  
  /* Table rows */
  body.woocommerce-order-pay .lavie-order-pay-wrap .shop_table tbody tr.order_item {
    flex-direction: column;
    gap: 8px;
    padding: 16px;
  }
  
  body.woocommerce-order-pay .lavie-order-pay-wrap .shop_table tbody tr.order_item td.product-name,
  body.woocommerce-order-pay .lavie-order-pay-wrap .shop_table tbody tr.order_item td.product-subtotal {
    width: 100%;
    text-align: left;
  }
  
  /* Tfoot */
  body.woocommerce-order-pay .lavie-order-pay-wrap .shop_table tfoot tr {
    padding: 10px 16px;
  }
  
  body.woocommerce-order-pay .lavie-order-pay-wrap .shop_table tfoot th,
  body.woocommerce-order-pay .lavie-order-pay-wrap .shop_table tfoot td {
    font-size: 13px;
  }
}

/* ========================================
   STANDARD ORDER-PAY PAGE (not LaVie template)
   For https://lavie.bio/fr/validation-de-la-commande/order-pay/
   ======================================== */

/* Main container padding */
body.woocommerce-order-pay .woocommerce {
  max-width: 900px;
  margin: 0 auto;
  padding: 40px 20px;
}

/* Table styling - more padding and rounded corners */
body.woocommerce-order-pay .shop_table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  background: #fff;
  border: 1px solid var(--lavie-border, #C9E1EB);
  border-radius: 20px;
  overflow: hidden;
  margin-bottom: 32px;
}

/* Table header */
body.woocommerce-order-pay .shop_table thead {
  background: var(--lavie-bg, #F6F9FF);
}

body.woocommerce-order-pay .shop_table thead th {
  padding: 16px 24px;
  font-family: Nunito, sans-serif;
  font-weight: 600;
  font-size: 14px;
  color: var(--lavie-muted, rgba(6,48,67,0.6));
  border-bottom: 1px solid var(--lavie-border, #C9E1EB);
  text-align: left;
}

/* Table body cells */
body.woocommerce-order-pay .shop_table tbody td {
  padding: 16px 24px;
  font-family: Nunito, sans-serif;
  font-size: 14px;
  color: var(--lavie-text, #063043);
  border-bottom: 1px solid var(--lavie-border, #C9E1EB);
}

body.woocommerce-order-pay .shop_table tbody tr:last-child td {
  border-bottom: none;
}

/* Product name */
body.woocommerce-order-pay .shop_table tbody td.product-name {
  font-weight: 700;
}

/* Quantity cell */
body.woocommerce-order-pay .shop_table tbody td.product-quantity {
  font-weight: 700;
}

/* Price/subtotal */
body.woocommerce-order-pay .shop_table tbody td.product-total,
body.woocommerce-order-pay .shop_table tbody td.product-subtotal {
  font-weight: 700;
  color: var(--lavie-text, #063043);
}

/* Table footer (totals) */
body.woocommerce-order-pay .shop_table tfoot {
  background: var(--lavie-bg, #F6F9FF);
}

body.woocommerce-order-pay .shop_table tfoot th,
body.woocommerce-order-pay .shop_table tfoot td {
  padding: 12px 24px;
  font-family: Nunito, sans-serif;
  font-size: 14px;
  border-top: 1px solid var(--lavie-border, #C9E1EB);
}

body.woocommerce-order-pay .shop_table tfoot th {
  font-weight: 600;
  color: var(--lavie-muted, rgba(6,48,67,0.6));
}

body.woocommerce-order-pay .shop_table tfoot td {
  font-weight: 700;
  color: var(--lavie-text, #063043);
}

/* Order total row */
body.woocommerce-order-pay .shop_table tfoot .order-total th,
body.woocommerce-order-pay .shop_table tfoot .order-total td {
  font-size: 16px;
  font-weight: 700;
  color: var(--lavie-primary, #1882B1);
}

body.woocommerce-order-pay .shop_table tfoot .order-total td small.includes_tax {
  font-size: 12px;
  color: var(--lavie-muted, rgba(6,48,67,0.6));
  font-weight: 400;
}

/* Payment section (#payment) - more padding and rounded corners */
body.woocommerce-order-pay #payment.woocommerce-checkout-payment {
  background: #fff;
  border: 1px solid var(--lavie-border, #C9E1EB);
  border-radius: 20px;
  padding: 32px;
  margin-top: 24px;
}

/* Payment methods list */
body.woocommerce-order-pay #payment .wc_payment_methods {
  list-style: none;
  padding: 0;
  margin: 0;
}

/* Individual payment method */
body.woocommerce-order-pay #payment .wc_payment_methods li.wc_payment_method {
  background: var(--lavie-bg, #F6F9FF);
  border: 2px solid var(--lavie-border, #C9E1EB);
  border-radius: 16px;
  padding: 20px 24px;
  margin-bottom: 16px;
}

body.woocommerce-order-pay #payment .wc_payment_methods li.wc_payment_method:last-child {
  margin-bottom: 0;
}

/* Payment method label */
body.woocommerce-order-pay #payment .wc_payment_methods li.wc_payment_method label {
  font-family: Nunito, sans-serif;
  font-weight: 700;
  font-size: 16px;
  color: var(--lavie-text, #063043);
}

/* Payment box (description) */
body.woocommerce-order-pay #payment .payment_box {
  margin-top: 16px;
  padding: 16px;
  background: rgba(201, 225, 235, 0.15);
  border-radius: 12px;
  font-family: Nunito, sans-serif;
  font-size: 14px;
  color: var(--lavie-muted, rgba(6,48,67,0.8));
}

/* Place order button container */
body.woocommerce-order-pay #payment .place-order {
  margin-top: 24px;
}

/* Submit button */
body.woocommerce-order-pay #payment #place_order {
  width: 100%;
  padding: 20px 32px;
  background: var(--lavie-primary, #1882B1);
  color: #fff;
  border: none;
  border-radius: 70px;
  font-family: Nunito, sans-serif;
  font-weight: 700;
  font-size: 18px;
  cursor: pointer;
  transition: all 0.2s ease;
}

body.woocommerce-order-pay #payment #place_order:hover {
  background: var(--lavie-primary-dark, #0E78A7);
  transform: translateY(-2px);
}

/* Terms and conditions wrapper */
body.woocommerce-order-pay .woocommerce-terms-and-conditions-wrapper {
  margin: 24px 0;
  padding: 20px 24px;
  background: var(--lavie-bg, #F6F9FF);
  border: 1px solid var(--lavie-border, #C9E1EB);
  border-radius: 16px;
}

/* Privacy policy text */
body.woocommerce-order-pay .woocommerce-privacy-policy-text {
  font-family: Nunito, sans-serif;
  font-size: 14px;
  color: var(--lavie-muted, rgba(6,48,67,0.6));
  margin-bottom: 16px;
}

body.woocommerce-order-pay .woocommerce-privacy-policy-text a {
  color: var(--lavie-primary, #1882B1);
  text-decoration: underline;
}

/* Terms and conditions content */
body.woocommerce-order-pay .woocommerce-terms-and-conditions {
  padding: 20px;
  background: #fff;
  border: 1px solid var(--lavie-border, #C9E1EB);
  border-radius: 12px;
  font-family: Nunito, sans-serif;
  font-size: 13px;
  line-height: 1.6;
  color: var(--lavie-text, #063043);
}

/* Mobile adjustments for standard order-pay */
@media (max-width: 720px) {
  body.woocommerce-order-pay .woocommerce {
    padding: 20px 16px;
  }
  
  body.woocommerce-order-pay .shop_table {
    border-radius: 16px;
  }
  
  body.woocommerce-order-pay .shop_table thead th,
  body.woocommerce-order-pay .shop_table tbody td,
  body.woocommerce-order-pay .shop_table tfoot th,
  body.woocommerce-order-pay .shop_table tfoot td {
    padding: 12px 16px;
  }
  
  body.woocommerce-order-pay #payment.woocommerce-checkout-payment {
    padding: 20px;
    border-radius: 16px;
  }
  
  body.woocommerce-order-pay #payment .wc_payment_methods li.wc_payment_method {
    padding: 16px;
    border-radius: 12px;
  }
  
  body.woocommerce-order-pay .woocommerce-terms-and-conditions-wrapper {
    padding: 16px;
    border-radius: 12px;
  }
}
