/* ============================================================
   PREMIER LINE PEPTIDES — WooCommerce integration skin
   Maps WooCommerce markup onto the storefront design system
   (uses the tokens defined in core.css :root)
   ============================================================ */

/* ---- generic buttons ---- */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,
.woocommerce button.button.alt {
	display:inline-flex; align-items:center; justify-content:center; gap:10px;
	font-family:var(--body); font-weight:600; font-size:14.5px; letter-spacing:.5px;
	padding:13px 28px; border-radius:50px; border:none; cursor:pointer; line-height:1;
	background:linear-gradient(135deg,var(--gold),var(--gold-2)); color:var(--navy);
	transition:.25s ease;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover {
	transform:translateY(-2px); box-shadow:0 12px 30px -10px rgba(210,157,124,.6); color:var(--navy);
}
.woocommerce a.button.outline, .woocommerce .button.wc-backward {
	background:transparent; color:var(--ivory); border:1px solid var(--line);
}

/* ---- page title / breadcrumb ---- */
.woocommerce .woocommerce-breadcrumb {
	color:var(--muted); font-size:13px; letter-spacing:.5px; margin-bottom:24px;
}
.woocommerce .woocommerce-breadcrumb a { color:var(--gold-2); }

/* ---- result count / ordering ---- */
.woocommerce .woocommerce-result-count { color:var(--muted); font-size:14px; }
.woocommerce .woocommerce-ordering select,
.woocommerce select {
	background:var(--ink); border:1px solid var(--line); color:var(--ivory);
	border-radius:10px; padding:10px 14px; font-family:var(--body);
}

/* ---- product grid ---- */
.woocommerce ul.products,
.woocommerce-page ul.products {
	display:grid !important; grid-template-columns:repeat(4,1fr); gap:24px; margin:0; list-style:none;
}
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
	width:auto !important; margin:0 !important; float:none !important; padding:0 !important;
	background:linear-gradient(180deg,var(--navy-3),var(--card));
	border:1px solid var(--line); border-radius:var(--r); overflow:hidden;
	display:flex; flex-direction:column; transition:.3s; text-align:left;
}
.woocommerce ul.products li.product:hover {
	transform:translateY(-6px); border-color:rgba(229,184,160,.5); box-shadow:var(--shadow);
}
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link {
	display:block; background:radial-gradient(120% 85% at 50% 38%,rgba(210,157,124,.12),transparent 62%),linear-gradient(180deg,#101015,#0b0b0e);
	padding:18px; aspect-ratio:1/1.02; display:flex; align-items:center; justify-content:center;
}
.woocommerce ul.products li.product img {
	margin:0 auto; height:100%; width:auto; max-width:86%; object-fit:contain;
	filter:drop-shadow(0 20px 28px rgba(0,0,0,.6));
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-family:var(--display); font-weight:600; font-size:22px; color:var(--ivory);
	padding:18px 20px 0; line-height:1.15;
}
.woocommerce ul.products li.product .price {
	color:var(--gold-2) !important; font-family:var(--display); font-size:23px; font-weight:600;
	padding:8px 20px 0; display:block;
}
.woocommerce ul.products li.product .price del { color:var(--muted); font-size:16px; }
.woocommerce ul.products li.product .price ins { text-decoration:none; }
.woocommerce ul.products li.product .button {
	margin:16px 20px 20px; align-self:flex-start;
}
.woocommerce span.onsale {
	background:rgba(210,157,124,.16); color:var(--gold-2); border:1px solid var(--line);
	border-radius:50px; min-height:0; min-width:0; padding:5px 12px; font-size:11px;
	letter-spacing:1.5px; text-transform:uppercase; font-weight:600; top:12px; left:12px; margin:0;
}

/* ---- single product ---- */
.woocommerce div.product { display:grid; grid-template-columns:1fr 1.1fr; gap:48px; align-items:start; }
.woocommerce div.product .woocommerce-product-gallery {
	border:1px solid var(--line); border-radius:var(--r);
	background:radial-gradient(120% 85% at 50% 38%,rgba(210,157,124,.12),transparent 62%),linear-gradient(180deg,#101015,#0b0b0e);
	padding:18px; width:100% !important;
}
.woocommerce div.product .product_title {
	font-family:var(--display); font-size:clamp(34px,4.5vw,52px); color:var(--ivory); margin:6px 0 8px;
}
.woocommerce div.product p.price,
.woocommerce div.product span.price {
	color:var(--gold-2); font-family:var(--display); font-size:36px; margin:14px 0 18px;
}
.woocommerce div.product .woocommerce-product-details__short-description { color:var(--muted); font-size:16px; line-height:1.8; }
.woocommerce div.product form.cart { margin:24px 0; display:flex; gap:14px; align-items:center; flex-wrap:wrap; }
.woocommerce div.product .quantity .qty {
	background:var(--ink); border:1px solid var(--line); color:var(--ivory);
	border-radius:10px; padding:12px; width:80px; font-family:var(--body);
}
.woocommerce div.product .woocommerce-tabs ul.tabs { padding:0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li {
	background:var(--navy-2); border:1px solid var(--line); border-radius:50px; margin:0 8px 0 0;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a { color:var(--ivory-2); }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { background:var(--gold); }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color:var(--navy); }
.woocommerce div.product .woocommerce-tabs ul.tabs::before { border-color:var(--line); }

/* ---- forms (checkout / account / login) ---- */
.woocommerce form .form-row label,
.woocommerce-account .woocommerce label,
.woocommerce-checkout label { color:var(--ivory-2); font-size:13px; letter-spacing:.5px; }
.woocommerce form .input-text,
.woocommerce form input[type="text"],
.woocommerce form input[type="email"],
.woocommerce form input[type="tel"],
.woocommerce form input[type="password"],
.woocommerce form input[type="number"],
.woocommerce form textarea,
.woocommerce .select2-selection,
.woocommerce form select {
	background:var(--ink) !important; border:1px solid var(--line) !important; color:var(--ivory) !important;
	border-radius:10px !important; padding:13px 15px !important; font-family:var(--body); font-size:15px;
}
.woocommerce form .input-text:focus,
.woocommerce form select:focus,
.woocommerce form textarea:focus { outline:none; border-color:var(--gold) !important; }
.woocommerce .select2-dropdown,
.woocommerce .select2-results__option { background:var(--navy-3); color:var(--ivory); }

/* ---- cart & checkout tables / totals ---- */
.woocommerce table.shop_table {
	background:linear-gradient(180deg,var(--navy-3),var(--card)); border:1px solid var(--line);
	border-radius:14px; color:var(--ivory-2); border-collapse:separate;
}
.woocommerce table.shop_table th { color:var(--gold-2); font-family:var(--body); }
.woocommerce table.shop_table td,
.woocommerce table.shop_table th { border-top:1px solid var(--line); }
.woocommerce .cart-collaterals .cart_totals,
.woocommerce-checkout #order_review {
	background:linear-gradient(180deg,var(--navy-3),var(--card)); border:1px solid var(--line);
	border-radius:16px; padding:24px;
}
.woocommerce-checkout #payment { background:transparent; border-radius:14px; }
.woocommerce-checkout #payment ul.payment_methods { background:var(--navy-2); border:1px solid var(--line); border-radius:12px; }
.woocommerce-info, .woocommerce-message, .woocommerce-error {
	background:var(--navy-2); border-top:3px solid var(--gold); color:var(--ivory-2); border-radius:8px;
}
.woocommerce-info::before, .woocommerce-message::before { color:var(--gold-2); }

/* ---- my account ---- */
.woocommerce-account .woocommerce-MyAccount-navigation ul {
	background:linear-gradient(180deg,var(--navy-3),var(--card)); border:1px solid var(--line);
	border-radius:14px; padding:10px; list-style:none;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li a { color:var(--ivory-2); }
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a { color:var(--gold-2); }

/* ---- headings/links inside woo ---- */
.woocommerce h1, .woocommerce h2, .woocommerce h3 { font-family:var(--display); color:var(--ivory); }
.woocommerce a { color:var(--gold-2); }
.woocommerce a:hover { color:var(--gold); }

/* ---- responsive ---- */
@media(max-width:980px){
	.woocommerce ul.products, .woocommerce-page ul.products { grid-template-columns:repeat(2,1fr); }
	.woocommerce div.product { grid-template-columns:1fr; }
}
@media(max-width:560px){
	.woocommerce ul.products, .woocommerce-page ul.products { grid-template-columns:1fr 1fr; gap:14px; }
}
