/* CannaBloom — WooCommerce overrides
 * Loaded after brand.css. Checkout pattern lifted from feedback_flatsome_checkout_pattern.md.
 */

/* ===== CHECKOUT — Flatsome bordered Your Order pattern ===== */
.woocommerce-checkout .entry-title,
.woocommerce-checkout h1.page-title,
.woocommerce-checkout .wp-block-post-title,
.woocommerce-checkout .page-title-inner{display:none !important}

.woocommerce-checkout form.checkout{display:grid;grid-template-columns:1.2fr 1fr;gap:64px;padding:64px 56px 96px;max-width:1320px;margin:0 auto;align-items:flex-start}
@media (max-width:1024px){.woocommerce-checkout form.checkout{grid-template-columns:1fr;padding:40px 24px 64px;gap:40px}}

.woocommerce-checkout .col2-set{display:contents}
.woocommerce-checkout .col-1, .woocommerce-checkout .col-2{width:100%;float:none;padding:0;max-width:none}

.woocommerce-checkout h3{font:700 14px var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--ink);border-bottom:1px solid rgba(31,26,18,.12);padding-bottom:14px;margin:0 0 28px}

.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:18px 16px}
.woocommerce-checkout .form-row-wide,
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row-wide,
.woocommerce-checkout #billing_country_field,
.woocommerce-checkout #billing_state_field,
.woocommerce-checkout #billing_postcode_field,
.woocommerce-checkout #billing_phone_field,
.woocommerce-checkout #billing_email_field,
.woocommerce-checkout #order_comments_field,
.woocommerce-checkout #ship-to-different-address{grid-column:1 / -1}

.woocommerce-checkout label{font:700 14px var(--font-body);color:var(--ink);text-transform:none;letter-spacing:0;margin-bottom:8px;display:block}
.woocommerce-checkout label .required{color:var(--terracotta);text-decoration:none;border:0}

.woocommerce-checkout input[type="text"],
.woocommerce-checkout input[type="email"],
.woocommerce-checkout input[type="tel"],
.woocommerce-checkout input[type="number"],
.woocommerce-checkout input[type="password"],
.woocommerce-checkout input[type="date"],
.woocommerce-checkout select,
.woocommerce-checkout textarea,
.woocommerce-checkout .select2-selection{
  height:50px;border-radius:4px !important;background:var(--paper);
  border:1px solid rgba(31,26,18,.15) !important;
  padding:0 16px;font:400 14px var(--font-body);color:var(--ink);width:100%;box-shadow:none;
}
.woocommerce-checkout input[type="date"]::-webkit-datetime-edit{color:var(--ink)}
.woocommerce-checkout input[type="date"]::-webkit-datetime-edit-fields-wrapper{color:var(--ink)}
.woocommerce-checkout input[type="date"]::-webkit-datetime-edit-text{color:var(--ink);opacity:.5}
.woocommerce-checkout input[type="date"]::-webkit-calendar-picker-indicator{opacity:.6;cursor:pointer}
/* WPLoyalty birthday field rendered outside classic checkout wrapper */
input[name="birth_date"],#wlr-birth-date{
  height:50px;border-radius:4px !important;background:var(--paper);
  border:1px solid rgba(31,26,18,.15) !important;
  padding:0 16px;font:400 14px var(--font-body);color:var(--ink);width:100%;box-shadow:none;
}
input[name="birth_date"]::-webkit-datetime-edit,
#wlr-birth-date::-webkit-datetime-edit{color:var(--ink)}
input[name="birth_date"]::-webkit-datetime-edit-fields-wrapper,
#wlr-birth-date::-webkit-datetime-edit-fields-wrapper{color:var(--ink)}
input[name="birth_date"]::-webkit-calendar-picker-indicator,
#wlr-birth-date::-webkit-calendar-picker-indicator{opacity:.6;cursor:pointer}
.woocommerce-checkout textarea{height:auto;padding:14px 16px;min-height:100px}
.woocommerce-checkout .select2-selection{display:flex;align-items:center}
.woocommerce-checkout input:focus, .woocommerce-checkout select:focus, .woocommerce-checkout textarea:focus,
.woocommerce-checkout .select2-container--focus .select2-selection{
  border-color:var(--terracotta) !important;
  box-shadow:0 0 0 3px rgba(158,80,43,.18) !important;
  outline:0;
}

#order_review{
  background:var(--paper);
  border:1.5px solid var(--terracotta);
  border-radius:4px;
  padding:32px 32px 24px;
  position:sticky;top:100px;
}
#order_review::before{
  content:'Your Order';
  font:700 14px var(--font-body);
  letter-spacing:.14em;
  text-transform:uppercase;
  border-bottom:1px solid rgba(31,26,18,.12);
  padding-bottom:16px;
  margin-bottom:24px;
  display:block;
  color:var(--ink);
}
#order_review table.shop_table{border:0;background:transparent}
#order_review table.shop_table th, #order_review table.shop_table td{border:0;border-bottom:1px solid rgba(31,26,18,.08);padding:14px 0;background:transparent}
#order_review table.shop_table tr:last-child td{border:0}
#order_review .product-name{font-family:var(--font-display);font-size:18px;color:var(--ink)}
#order_review .product-total, #order_review .order-total{font-family:var(--font-display);font-size:18px;color:var(--ink)}
#order_review tr.order-total .amount{font-size:24px}

#payment{background:transparent}
#payment ul.payment_methods{padding:0;border:0;margin-bottom:18px}
#payment ul.payment_methods li{border-bottom:1px solid rgba(31,26,18,.08);padding:14px 0;background:transparent}
#payment ul.payment_methods li:last-child{border:0}
#payment ul.payment_methods li label{display:flex;align-items:center;gap:10px;margin:0;font:600 14px var(--font-body);text-transform:none;letter-spacing:0}
#payment ul.payment_methods li label img{max-height:22px;width:auto}
#payment .payment_box{background:var(--linen-warm);border-radius:6px;padding:16px;margin-top:10px;font-size:13.5px;border:0}

#place_order{
  width:100%;
  background:var(--terracotta) !important;
  color:var(--paper) !important;
  border-radius:999px !important;
  padding:20px !important;
  font:700 14px var(--font-body) !important;
  letter-spacing:.18em !important;
  text-transform:uppercase !important;
  border:0;
  box-shadow:0 2px 0 rgba(122,61,31,.2);
  transition:background .2s, transform .15s;
}
#place_order:hover{background:var(--terracotta-deep) !important;transform:translateY(-1px)}

/* ===== CART ===== */
.woocommerce-cart .woocommerce{max-width:1280px;margin:0 auto;padding:64px 56px 96px}
.woocommerce-cart table.cart{border:0;background:transparent}
.woocommerce-cart table.cart th{font:600 11.5px var(--font-body);letter-spacing:.22em;text-transform:uppercase;color:var(--ink);background:transparent;border-bottom:1px solid rgba(31,26,18,.12);padding:14px 0}
.woocommerce-cart table.cart td{border:0;border-bottom:1px solid rgba(31,26,18,.08);padding:18px 8px;background:transparent}
.woocommerce-cart .cart_totals{background:var(--paper);border:1.5px solid var(--terracotta);border-radius:4px;padding:32px}
.woocommerce-cart .cart_totals h2{font:700 14px var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--ink);border-bottom:1px solid rgba(31,26,18,.12);padding-bottom:14px;margin:0 0 22px}

/* ===== MY ACCOUNT INNER PAGES ===== */
.woocommerce-account .woocommerce{max-width:1280px;margin:0 auto;padding:48px 56px 96px;display:grid;grid-template-columns:260px 1fr;gap:48px;align-items:flex-start}
.woocommerce-account.woocommerce-page:not(.woocommerce-edit-account):not(.woocommerce-orders):not(.woocommerce-view-order):not(.woocommerce-downloads):not(.woocommerce-edit-address):not(.woocommerce-payment-methods) .woocommerce{grid-template-columns:1fr;padding:0}
.woocommerce-MyAccount-content{min-width:0}
.woocommerce-account table.shop_table{border:0;background:transparent;width:100%}
.woocommerce-account table.shop_table th{font:600 11.5px var(--font-body);letter-spacing:.22em;text-transform:uppercase;color:var(--ink);background:transparent;border-bottom:1px solid rgba(31,26,18,.12);padding:14px 12px;text-align:left}
.woocommerce-account table.shop_table td{border-bottom:1px solid rgba(31,26,18,.08);padding:16px 12px;background:transparent;font-size:14px}
@media (max-width:1024px){.woocommerce-account .woocommerce{grid-template-columns:1fr;padding:24px;gap:24px}}
