/* BenchPeptides shop UX + light/professional shop skin (Coach K, 2026-05-27).
 * Goal: the cinematic dark hero stays the brand statement on the HOMEPAGE, but the
 * SHOP / PRODUCT / CART / CHECKOUT pages go light/white like the real selling
 * peptide stores (uk-peptides / Core Peptides). Plus cart-drawer, wishlist, progress. */

/* ---------------- LIGHT SHOP SKIN ---------------- */
body.woocommerce, body.woocommerce-page,
body.woocommerce-shop, body.single-product,
body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-account,
body.post-type-archive-product, body.tax-product_cat {
  background: #ffffff !important;
  color: #1a2230 !important;
}
body.woocommerce .site, body.woocommerce-page .site { background:#ffffff !important; }
body.woocommerce a, body.woocommerce-page a { color:#0e7490; }
body.woocommerce h1, body.woocommerce h2, body.woocommerce-page h1,
body.woocommerce-page h2, .woocommerce-products-header__title,
body.single-product .product_title { color:#0f172a !important; }

/* Product cards — clean white, soft border, hover lift */
.woocommerce ul.products li.product, .woocommerce-page ul.products li.product {
  background:#fff; border:1px solid #e6eaf0; border-radius:14px; padding:16px;
  box-shadow:0 1px 2px rgba(16,24,40,.04); transition:box-shadow .25s, transform .25s; text-align:center;
}
.woocommerce ul.products li.product:hover { box-shadow:0 10px 30px rgba(16,24,40,.10); transform:translateY(-3px); }
.woocommerce ul.products li.product img { border-radius:10px; background:#f6f8fb; margin-bottom:12px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-size:15px; font-weight:600; color:#0f172a; padding:.4em 0; }
.woocommerce ul.products li.product .price { color:#0f172a !important; font-weight:700; }
.woocommerce ul.products li.product .price del { color:#94a3b8 !important; font-weight:400; }

/* Purity badge helper (printed by theme if available) */
.bp-purity { display:inline-block; font:600 11px/1 ui-monospace,monospace; letter-spacing:.04em;
  color:#067647; background:#ecfdf3; border:1px solid #abefc6; border-radius:999px; padding:5px 9px; margin:6px 0; }

/* Buttons — solid accent */
.woocommerce a.button, .woocommerce button.button, .woocommerce .button,
.woocommerce a.button.alt, .woocommerce #respond input#submit {
  background:#1e3a5f !important; color:#fff !important; border-radius:10px !important;
  font-weight:600 !important; text-transform:none !important; box-shadow:none !important;
  padding:.7em 1.3em !important; border:0 !important; transition:background .2s;
}
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce .button:hover { background:#152b46 !important; }
.woocommerce .added_to_cart { display:inline-block; margin-top:6px; font-size:12px; }

/* ---------------- FLOATING TRIGGERS (cart + wishlist) — bottom-right FAB ---------- */
/* Only rendered on single-product / cart / checkout pages (PHP guard in shop-features.php) */
.bp-cart-trigger, .bp-wishlist-trigger {
  position:fixed; bottom:20px; top:auto; z-index:9000; width:44px; height:44px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  background:#1e3a5f; color:#fff; opacity:.85;
  border:0; cursor:pointer; box-shadow:0 3px 12px rgba(30,58,95,.28); text-decoration:none;
  transition:transform .2s, box-shadow .2s, opacity .2s;
}
.bp-cart-trigger:hover, .bp-wishlist-trigger:hover {
  transform:translateY(-3px); opacity:1;
  box-shadow:0 7px 22px rgba(30,58,95,.38);
}
.bp-cart-trigger  { right:18px; }
.bp-wishlist-trigger { right:72px; }
.bp-cart-count, .bp-wishlist-count {
  position:absolute; top:-4px; right:-4px; min-width:19px; height:19px; padding:0 5px;
  background:#e11d48; color:#fff; border-radius:999px; font:700 11px/19px ui-monospace,monospace; text-align:center;
}
.bp-wishlist-count[hidden]{ display:none; }

/* ---------------- CART DRAWER ---------------- */
/* CRITICAL: [hidden] must always win — display:flex would otherwise override it */
.bp-cart-drawer[hidden], .bp-drawer-overlay[hidden] { display:none !important; }

.bp-drawer-overlay { position:fixed; inset:0; background:rgba(8,12,20,.5); z-index:9500; }
.bp-cart-drawer {
  position:fixed; top:0; right:0; height:100%; width:min(420px,92vw); background:#fff; color:#0f172a;
  z-index:9600; box-shadow:-10px 0 40px rgba(0,0,0,.25); display:flex; flex-direction:column;
  transform:translateX(0); animation:bpSlide .28s ease; overflow-y:auto;
}
@keyframes bpSlide { from{ transform:translateX(100%);} to{ transform:translateX(0);} }
.bp-drawer-head { display:flex; align-items:center; justify-content:space-between; padding:18px 20px; border-bottom:1px solid #eef1f5; }
.bp-drawer-head strong { font-size:17px; }
.bp-drawer-x { background:none; border:0; font-size:26px; line-height:1; cursor:pointer; color:#64748b; }
.bp-cart-drawer .widget_shopping_cart_content { padding:14px 20px; }
.bp-cart-drawer .woocommerce-mini-cart__total { border-top:1px solid #eef1f5; padding-top:12px; }
.bp-cart-drawer .button { display:block; text-align:center; margin-top:8px; }
body.bp-drawer-open { overflow:hidden; }

/* ---------------- FREE-SHIP PROGRESS ---------------- */
.bp-ship-progress { padding:14px 20px; }
.bp-ship-msg { font-size:13px; font-weight:600; color:#0f766e; margin-bottom:8px; }
.bp-ship-bar { height:8px; border-radius:999px; background:#e6eaf0; overflow:hidden; }
.bp-ship-bar span { display:block; height:100%; background:linear-gradient(90deg,#0f766e,#10b981); transition:width .4s; }
.bp-gift-tag { display:inline-block; background:#ecfdf3; color:#067647; border:1px solid #abefc6;
  font:700 10px/1 ui-monospace,monospace; padding:3px 7px; border-radius:999px; margin-left:6px; letter-spacing:.04em; }

/* ---------------- WISHLIST HEART ---------------- */
.bp-wishlist-btn {
  display:inline-flex; align-items:center; gap:6px; background:#fff; border:1px solid #e6eaf0; color:#475569;
  border-radius:10px; padding:8px 12px; cursor:pointer; font:600 12px/1 system-ui,sans-serif; transition:all .2s; margin-top:8px;
}
.bp-wishlist-btn:hover { border-color:#fda4af; color:#e11d48; }
.bp-wishlist-btn.is-active { border-color:#e11d48; color:#e11d48; background:#fff1f2; }
.bp-wishlist-btn.is-active svg { fill:#e11d48; }
.bp-wishlist-loop { position:absolute; top:10px; right:10px; margin:0; padding:8px; border-radius:50%; width:38px; height:38px; justify-content:center; }
.woocommerce ul.products li.product { position:relative; }

/* ---------------- FAVORITES PAGE ---------------- */
.bp-favorites-page { max-width:1100px; margin:0 auto; padding:30px 16px; }
.bp-fav-empty { text-align:center; color:#64748b; padding:40px 0; }
.bp-fav-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(200px,1fr)); gap:18px; }
.bp-fav-card { border:1px solid #e6eaf0; border-radius:14px; padding:14px; text-align:center; background:#fff; }
.bp-fav-card img { width:100%; border-radius:10px; background:#f6f8fb; margin-bottom:10px; }
.bp-fav-name { display:block; font-weight:600; color:#0f172a; text-decoration:none; }
.bp-fav-price { color:#0f766e; font-weight:700; margin:6px 0; }

/* intl-tel-input on checkout */
.iti { width:100%; }
.bp-phone-row .iti__flag-container { z-index:5; }
