/* BARQ Peptides — dark navy / gold styling for WooCommerce's own Cart,
   Checkout, and Account blocks, rendered natively inside this theme's own
   header.php/footer.php (see functions.php). No foreign theme or page
   builder CSS to out-specificity here — this is the only stylesheet
   touching these pages. */

body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-account {
  background: #0a0e1f !important;
}

/* Broad safety net: WooCommerce Blocks ship their own default backgrounds
   (several are hardcoded white, e.g. the cart/checkout sidebar wrapper) and
   a default font on every [class*="wc-block"] element. Reset all of them to
   transparent + our font first — the more specific rules further down (card
   containers, buttons, etc.) then intentionally re-add real backgrounds
   where wanted, instead of fixing these one at a time as they're found. */
body.woocommerce-cart [class*="wc-block"], body.woocommerce-checkout [class*="wc-block"], body.woocommerce-account [class*="wc-block"] {
  background: transparent !important;
  font-family: 'Manrope', 'Helvetica Neue', system-ui, sans-serif !important;
}
body.woocommerce-cart #content, body.woocommerce-checkout #content, body.woocommerce-account #content {
  background: #0a0e1f !important;
  color: #f5f3ec !important;
  font-family: 'Manrope', 'Helvetica Neue', system-ui, sans-serif !important;
}
body.woocommerce-cart h1, body.woocommerce-checkout h1, body.woocommerce-account h1,
body.woocommerce-cart .page-title, body.woocommerce-checkout .page-title, body.woocommerce-account .page-title {
  font-family: 'Montserrat', 'Helvetica Neue', system-ui, sans-serif !important;
  color: #f5f3ec !important;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  font-weight: 700 !important;
}
body.woocommerce-cart a, body.woocommerce-checkout a, body.woocommerce-account a { color: #d8bc82; }
body.woocommerce-cart a:hover, body.woocommerce-checkout a:hover, body.woocommerce-account a:hover { color: #c3a468; }

/* ================= WooCommerce Blocks: Cart + Checkout (shared) ================= */

body.woocommerce-cart .wc-block-components-checkout-step__heading-content,
body.woocommerce-checkout .wc-block-components-checkout-step__heading-content,
body.woocommerce-cart .wc-block-cart__totals-title,
body.woocommerce-checkout .wc-block-components-checkout-order-summary__title-text,
body.woocommerce-checkout h2, body.woocommerce-cart h2 {
  font-family: 'Montserrat', 'Helvetica Neue', system-ui, sans-serif !important;
  color: #f5f3ec !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  font-weight: 700 !important;
}

/* Native checkboxes (age/research-use gate, purchase-agreement, WC Blocks terms)
   render with the browser's plain default appearance — recolor to match brand
   instead of a bare white/blue box. */
body.woocommerce-cart input[type="checkbox"],
body.woocommerce-checkout input[type="checkbox"],
body.woocommerce-account input[type="checkbox"] {
  accent-color: #c3a468 !important;
}

/* Step / panel containers (Contact info, Shipping address, Shipping options,
   Payment options, Order summary sidebar) */
body.woocommerce-cart .wc-block-components-checkout-step,
body.woocommerce-checkout .wc-block-components-checkout-step,
body.woocommerce-cart .wc-block-cart-items,
body.woocommerce-checkout .wc-block-components-checkout-order-summary__content,
body.woocommerce-cart .wc-block-components-totals-wrapper,
body.woocommerce-checkout .wc-block-components-totals-wrapper {
  background: #131a31 !important;
  border: 1px solid rgba(195, 164, 104, 0.16) !important;
  border-radius: 10px !important;
  color: #f5f3ec !important;
}

/* Mobile "Order summary ⌄ total" collapsed toggle bar (its own separate
   element, not covered by the sidebar content rule above) */
body.woocommerce-checkout .wc-block-components-checkout-order-summary__title {
  background: #131a31 !important;
  border: 1px solid rgba(195, 164, 104, 0.16) !important;
  border-radius: 10px !important;
  color: #f5f3ec !important;
}
body.woocommerce-checkout .wc-block-components-checkout-order-summary__title-text,
body.woocommerce-checkout .wc-block-components-checkout-order-summary__title-price,
body.woocommerce-checkout .wc-block-components-checkout-order-summary__title-icon {
  color: #f5f3ec !important;
}
body.woocommerce-cart .wc-block-components-checkout-step,
body.woocommerce-checkout .wc-block-components-checkout-step {
  padding: 22px 24px !important;
  margin-bottom: 16px !important;
}
body.woocommerce-cart .wc-block-components-checkout-step__content,
body.woocommerce-checkout .wc-block-components-checkout-step__content {
  border-top: 1px solid rgba(195, 164, 104, 0.16) !important;
  margin-top: 14px !important;
  padding-top: 14px !important;
}

/* Cart line items + checkout order-summary items */
body.woocommerce-cart .wc-block-cart-items__header,
body.woocommerce-cart .wc-block-cart-items__row {
  border-color: rgba(195, 164, 104, 0.16) !important;
  color: #f5f3ec !important;
}
body.woocommerce-cart .wc-block-components-product-name,
body.woocommerce-checkout .wc-block-components-product-name,
body.woocommerce-checkout .wc-block-components-checkout-order-summary-item__description,
body.woocommerce-checkout .wc-block-components-order-summary-item__description {
  color: #f5f3ec !important;
}
body.woocommerce-cart .wc-block-components-product-metadata,
body.woocommerce-checkout .wc-block-components-product-metadata,
body.woocommerce-cart .wc-block-components-product-price,
body.woocommerce-checkout .wc-block-components-product-price {
  color: #b7bdd2 !important;
}
body.woocommerce-cart .wc-block-cart-item__remove-link { color: #8b92ae !important; }
body.woocommerce-cart .wc-block-cart-item__remove-link:hover { color: #e0715c !important; }

/* Quantity stepper */
body.woocommerce-cart .wc-block-components-quantity-selector {
  border: 1px solid rgba(195, 164, 104, 0.34) !important;
  background: #0f1428 !important;
  border-radius: 6px;
}
body.woocommerce-cart .wc-block-components-quantity-selector__input {
  background: transparent !important;
  color: #f5f3ec !important;
}
body.woocommerce-cart .wc-block-components-quantity-selector__button {
  color: #b7bdd2 !important;
  background: transparent !important;
}
body.woocommerce-cart .wc-block-components-quantity-selector__button:hover { color: #c3a468 !important; }

/* Totals rows (subtotal / delivery / total) — used on both cart + checkout */
body.woocommerce-cart .wc-block-components-totals-item,
body.woocommerce-checkout .wc-block-components-totals-item {
  color: #f5f3ec !important;
  border-top: 1px solid rgba(195, 164, 104, 0.16) !important;
}
body.woocommerce-cart .wc-block-components-totals-item__label,
body.woocommerce-checkout .wc-block-components-totals-item__label,
body.woocommerce-cart .wc-block-components-totals-item__description,
body.woocommerce-checkout .wc-block-components-totals-item__description {
  color: #b7bdd2 !important;
}
body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
body.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
body.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
  color: #d8bc82 !important;
  font-weight: 700 !important;
  font-size: 1.05em;
}
body.woocommerce-cart .wc-block-components-formatted-money-amount,
body.woocommerce-checkout .wc-block-components-formatted-money-amount {
  color: inherit !important;
}

/* "Add coupons" accordion */
body.woocommerce-cart .wc-block-components-panel__button,
body.woocommerce-checkout .wc-block-components-panel__button {
  color: #d8bc82 !important;
  font-family: 'Montserrat', 'Helvetica Neue', system-ui, sans-serif !important;
  letter-spacing: 0.06em;
}
body.woocommerce-cart .wc-block-components-totals-coupon__content,
body.woocommerce-checkout .wc-block-components-totals-coupon__content {
  padding-top: 10px;
}

/* Text inputs (address fields, coupon field, email) */
body.woocommerce-cart .wc-block-components-text-input,
body.woocommerce-checkout .wc-block-components-text-input {
  background: #0f1428 !important;
  border: 1px solid rgba(195, 164, 104, 0.34) !important;
  border-radius: 6px !important;
}
body.woocommerce-cart .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-text-input input {
  color: #f5f3ec !important;
}
body.woocommerce-cart .wc-block-components-text-input label,
body.woocommerce-checkout .wc-block-components-text-input label {
  color: #8b92ae !important;
}
body.woocommerce-cart .wc-block-components-text-input.is-active label,
body.woocommerce-checkout .wc-block-components-text-input.is-active label {
  color: #d8bc82 !important;
}
body.woocommerce-checkout .wc-block-components-text-input.has-error,
body.woocommerce-checkout .wc-block-components-text-input.has-error input {
  border-color: #e0715c !important;
}

/* Country / state select */
body.woocommerce-checkout .wc-blocks-components-select__container {
  background: #0f1428 !important;
  border: 1px solid rgba(195, 164, 104, 0.34) !important;
  border-radius: 6px !important;
}
body.woocommerce-checkout .wc-blocks-components-select__select,
body.woocommerce-checkout .wc-blocks-components-select__label {
  color: #f5f3ec !important;
  background: transparent !important;
}

/* Checkboxes (create account, T&Cs, age confirmation, etc.) */
body.woocommerce-cart .wc-block-components-checkbox__label,
body.woocommerce-checkout .wc-block-components-checkbox__label {
  color: #b7bdd2 !important;
}
body.woocommerce-cart .wc-block-components-checkbox__mark,
body.woocommerce-checkout .wc-block-components-checkbox__mark {
  fill: #c3a468 !important;
}

/* Shipping options + Payment methods (radio list) */
body.woocommerce-checkout .wc-block-components-radio-control__option,
body.woocommerce-cart .wc-block-components-radio-control__option {
  background: #0f1428 !important;
  border: 1px solid rgba(195, 164, 104, 0.16) !important;
  border-radius: 6px !important;
  color: #f5f3ec !important;
}
body.woocommerce-checkout .wc-block-components-radio-control__option--checked,
body.woocommerce-checkout .wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control__option[aria-checked="true"] {
  border-color: #c3a468 !important;
  background: rgba(195, 164, 104, 0.08) !important;
}
body.woocommerce-checkout .wc-block-components-radio-control__label,
body.woocommerce-checkout .wc-block-components-radio-control__secondary-label {
  color: #f5f3ec !important;
}

/* Buttons: Proceed to checkout / Place order — match .btn-primary */
body.woocommerce-cart .wc-block-cart__submit-button,
body.woocommerce-cart .wc-block-components-button:not(.wc-block-components-button--tertiary),
body.woocommerce-checkout .wc-block-components-checkout-place-order-button {
  background: #c3a468 !important;
  color: #101529 !important;
  border: none !important;
  border-radius: 4px !important;
  font-family: 'Montserrat', 'Helvetica Neue', system-ui, sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
}
body.woocommerce-cart .wc-block-cart__submit-button:hover,
body.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover {
  box-shadow: 0 0 0 1px rgba(195, 164, 104, 0.6), 0 12px 30px -8px rgba(195, 164, 104, 0.35) !important;
  color: #101529 !important;
}

/* Notices / snackbars */
body.woocommerce-cart .wc-block-components-notice-banner,
body.woocommerce-checkout .wc-block-components-notice-banner {
  background: rgba(195, 164, 104, 0.1) !important;
  border-color: #c3a468 !important;
  color: #f5f3ec !important;
  border-radius: 6px;
}
body.woocommerce-cart .wc-block-components-notice-banner.is-error,
body.woocommerce-checkout .wc-block-components-notice-banner.is-error {
  background: rgba(224, 113, 92, 0.1) !important;
  border-color: #e0715c !important;
}

/* ================= Classic templates (My Account dashboard, legacy fallback) ================= */

body.woocommerce-account table.shop_table {
  border: 1px solid rgba(195, 164, 104, 0.16) !important;
  border-radius: 8px;
  overflow: hidden;
  background: #0f1428 !important;
  color: #f5f3ec !important;
}
body.woocommerce-account table.shop_table th {
  background: #182039 !important;
  color: #b7bdd2 !important;
  border-bottom: 1px solid rgba(195, 164, 104, 0.16) !important;
}
body.woocommerce-account table.shop_table td {
  border-top: 1px solid rgba(195, 164, 104, 0.16) !important;
  color: #f5f3ec !important;
  background: transparent !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation ul {
  border: 1px solid rgba(195, 164, 104, 0.16) !important;
  border-radius: 8px;
  overflow: hidden;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li {
  background: #0f1428 !important;
  border-bottom: 1px solid rgba(195, 164, 104, 0.16) !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
body.woocommerce-account .woocommerce-MyAccount-navigation li a:hover {
  color: #d8bc82 !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li a {
  color: #b7bdd2 !important;
  font-family: 'Montserrat', 'Helvetica Neue', system-ui, sans-serif !important;
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
body.woocommerce-account .button, body.woocommerce-account input[type="submit"],
body.woocommerce-account form.login .button, body.woocommerce-account form.register .button {
  background: #c3a468 !important;
  color: #101529 !important;
  border: none !important;
  border-radius: 4px !important;
  font-family: 'Montserrat', 'Helvetica Neue', system-ui, sans-serif !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
}
body.woocommerce-account input.input-text,
body.woocommerce-account input[type="text"], body.woocommerce-account input[type="email"], body.woocommerce-account input[type="password"] {
  background: #0f1428 !important;
  border: 1px solid rgba(195, 164, 104, 0.34) !important;
  color: #f5f3ec !important;
  border-radius: 6px !important;
}



/* ================= Classic Cart/Checkout templates (shortcode-based:
   [woocommerce_cart] / [woocommerce_checkout]) — plain HTML WooCommerce has
   used for years, no component-library defaults to fight, unlike Blocks. ================= */

body.woocommerce-cart .woocommerce-cart-form,
body.woocommerce-checkout .woocommerce {
  color: #f5f3ec;
}

/* Cart line-items table + checkout order-review table */
body.woocommerce-cart table.shop_table,
body.woocommerce-checkout table.shop_table {
  width: 100%;
  border: 1px solid rgba(195, 164, 104, 0.16) !important;
  border-radius: 10px;
  overflow: hidden;
  border-collapse: separate;
  background: #131a31 !important;
  color: #f5f3ec !important;
}
body.woocommerce-cart table.shop_table th,
body.woocommerce-checkout table.shop_table th {
  background: #182039 !important;
  color: #b7bdd2 !important;
  font-family: 'Montserrat', 'Helvetica Neue', system-ui, sans-serif !important;
  font-size: 11px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  border-bottom: 1px solid rgba(195, 164, 104, 0.16) !important;
  padding: 14px !important;
}
body.woocommerce-cart table.shop_table td,
body.woocommerce-checkout table.shop_table td {
  border-top: 1px solid rgba(195, 164, 104, 0.16) !important;
  color: #f5f3ec !important;
  background: transparent !important;
  padding: 14px !important;
}
body.woocommerce-cart table.shop_table .product-name a,
body.woocommerce-checkout table.shop_table .product-name a { color: #f5f3ec !important; }
body.woocommerce-cart .product-remove a.remove {
  color: #8b92ae !important; background: transparent !important;
}
body.woocommerce-cart .product-remove a.remove:hover { color: #e0715c !important; }
body.woocommerce-cart .quantity .qty,
body.woocommerce-checkout .quantity .qty {
  background: #0f1428 !important;
  border: 1px solid rgba(195, 164, 104, 0.34) !important;
  color: #f5f3ec !important;
  border-radius: 6px !important;
  padding: 8px !important;
}

/* Cart totals box + checkout order-review section heading */
body.woocommerce-cart .cart_totals,
body.woocommerce-checkout #order_review {
  background: #131a31 !important;
  border: 1px solid rgba(195, 164, 104, 0.16) !important;
  border-radius: 10px;
  padding: 24px !important;
  color: #f5f3ec !important;
}
body.woocommerce-cart .cart_totals h2,
body.woocommerce-checkout #order_review_heading {
  font-family: 'Montserrat', 'Helvetica Neue', system-ui, sans-serif !important;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #f5f3ec !important;
}
body.woocommerce-cart .order-total .amount,
body.woocommerce-checkout .order-total .amount {
  color: #d8bc82 !important;
  font-weight: 700 !important;
}

/* Checkout billing/shipping fields + coupon field */
body.woocommerce-checkout input.input-text,
body.woocommerce-checkout select,
body.woocommerce-checkout textarea,
body.woocommerce-cart .coupon input.input-text {
  background: #0f1428 !important;
  border: 1px solid rgba(195, 164, 104, 0.34) !important;
  color: #f5f3ec !important;
  border-radius: 6px !important;
  padding: 12px 14px !important;
}
body.woocommerce-checkout input.input-text:focus,
body.woocommerce-checkout select:focus,
body.woocommerce-checkout textarea:focus {
  border-color: #c3a468 !important;
  outline: none !important;
  box-shadow: 0 0 0 1px rgba(195, 164, 104, 0.4) !important;
}
body.woocommerce-checkout label,
body.woocommerce-cart label {
  color: #b7bdd2 !important;
}
body.woocommerce-checkout .select2-container .select2-selection--single {
  background: #0f1428 !important;
  border: 1px solid rgba(195, 164, 104, 0.34) !important;
  height: 46px !important;
}
body.woocommerce-checkout .select2-selection__rendered { color: #f5f3ec !important; line-height: 44px !important; }
body.woocommerce-checkout .select2-dropdown {
  background: #0f1428 !important;
  border: 1px solid rgba(195, 164, 104, 0.34) !important;
  color: #f5f3ec !important;
}

/* Payment methods box */
body.woocommerce-checkout ul.payment_methods { border: none !important; }
body.woocommerce-checkout ul.payment_methods li {
  border-top: 1px solid rgba(195, 164, 104, 0.16) !important;
  color: #f5f3ec !important;
  padding: 14px 0 !important;
}
body.woocommerce-checkout .payment_box {
  background: #0f1428 !important;
  color: #b7bdd2 !important;
  border-radius: 6px;
}
body.woocommerce-checkout .payment_box::before { border-bottom-color: #0f1428 !important; }

/* Buttons: Update Cart / Proceed to Checkout / Place Order */
body.woocommerce-cart .button, body.woocommerce-cart input[type="submit"],
body.woocommerce-checkout .button, body.woocommerce-checkout input[type="submit"], body.woocommerce-checkout #place_order {
  background: #c3a468 !important;
  color: #101529 !important;
  border: none !important;
  border-radius: 4px !important;
  font-family: 'Montserrat', 'Helvetica Neue', system-ui, sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  padding: 15px 26px !important;
}
body.woocommerce-cart .button:hover,
body.woocommerce-checkout .button:hover, body.woocommerce-checkout #place_order:hover {
  box-shadow: 0 0 0 1px rgba(195, 164, 104, 0.6), 0 12px 30px -8px rgba(195, 164, 104, 0.35) !important;
  color: #101529 !important;
}

/* Notices (coupon applied, validation errors, etc.) */
body.woocommerce-cart .woocommerce-message, body.woocommerce-cart .woocommerce-error,
body.woocommerce-checkout .woocommerce-message, body.woocommerce-checkout .woocommerce-error {
  background: rgba(195, 164, 104, 0.1) !important;
  border-top-color: #c3a468 !important;
  color: #f5f3ec !important;
}
body.woocommerce-checkout .woocommerce-error { border-top-color: #e0715c !important; }

/* Same broad-reset pattern as the Blocks section above, applied to Classic's
   own default white wrapper columns/boxes (billing fields column, order
   review column, login notice) — WooCommerce ships these white by default
   regardless of active theme. */
body.woocommerce-checkout .woocommerce-notices-wrapper,
body.woocommerce-checkout .col2-set,
body.woocommerce-checkout .col2-set .col-1,
body.woocommerce-checkout .col2-set .col-2,
body.woocommerce-checkout #customer_details,
body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-shipping-fields,
body.woocommerce-checkout .woocommerce-additional-fields,
body.woocommerce-account .woocommerce > div,
body.woocommerce-account .u-columns,
body.woocommerce-account .u-column1,
body.woocommerce-account .u-column2 {
  background: transparent !important;
}
body.woocommerce-checkout #order_review_heading {
  color: #f5f3ec !important;
}
body.woocommerce-checkout .woocommerce-info {
  background: rgba(195, 164, 104, 0.1) !important;
  border-top-color: #c3a468 !important;
  color: #f5f3ec !important;
}

/* ================= Old-site plugin injections on Cart/Checkout ==================
   These aren't WooCommerce core — they're old plugins hooked into the cart/checkout
   sidebar (a "research use" notice box, an age-gate checkbox plugin, and a
   purchase-agreement checkbox plugin) that still ship their old white-box styling,
   some of it inline on the element itself, so overrides need !important here too. */
body.woocommerce-cart .barq-notice,
body.woocommerce-checkout .barq-notice,
body.woocommerce-account .barq-notice {
  background: rgba(195, 164, 104, 0.1) !important;
  border: 1px solid rgba(195, 164, 104, 0.34) !important;
  border-radius: 6px !important;
  padding: 14px 16px !important;
}
body.woocommerce-cart .barq-notice-row,
body.woocommerce-checkout .barq-notice-row,
body.woocommerce-account .barq-notice-row {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  background: transparent !important;
}
body.woocommerce-cart .barq-notice-row strong,
body.woocommerce-checkout .barq-notice-row strong,
body.woocommerce-account .barq-notice-row strong {
  color: #f5f3ec !important;
}
body.woocommerce-cart .barq-notice-content,
body.woocommerce-cart .barq-notice-content span,
body.woocommerce-checkout .barq-notice-content,
body.woocommerce-checkout .barq-notice-content span,
body.woocommerce-account .barq-notice-content,
body.woocommerce-account .barq-notice-content span {
  background: transparent !important;
  color: #b7bdd2 !important;
}
body.woocommerce-cart .barq-notice-icon,
body.woocommerce-checkout .barq-notice-icon,
body.woocommerce-account .barq-notice-icon {
  background: transparent !important;
}

body.woocommerce-cart label[for="moon_age_check"],
body.woocommerce-cart label[for="moon_research_check"],
body.woocommerce-checkout label[for="moon_age_check"],
body.woocommerce-checkout label[for="moon_research_check"],
body.woocommerce-account label[for="moon_age_check"],
body.woocommerce-account label[for="moon_research_check"] {
  color: #f5f3ec !important;
  font-family: 'Manrope', 'Helvetica Neue', system-ui, sans-serif !important;
}

body.woocommerce-cart #i-agree-to-purchase-these_field,
body.woocommerce-checkout #i-agree-to-purchase-these_field,
body.woocommerce-account #i-agree-to-purchase-these_field {
  background: transparent !important;
}
body.woocommerce-cart #i-agree-to-purchase-these_field label,
body.woocommerce-checkout #i-agree-to-purchase-these_field label,
body.woocommerce-account #i-agree-to-purchase-these_field label {
  color: #f5f3ec !important;
}
