/**
 * EMPORAS — WooCommerce Product Page Styles
 *
 * @package EMPORAS
 */

/* ============================================
   BREADCRUMBS
   ============================================ */
.emporas-breadcrumb,
.woocommerce-breadcrumb {
	font-family: var(--font-mono);
	font-size: 12px;
	color: var(--emporas-steel);
	text-transform: uppercase;
	letter-spacing: 0.5px;
	padding: 24px 0;
	margin-bottom: 16px;
}
.emporas-breadcrumb a,
.woocommerce-breadcrumb a {
	color: var(--emporas-steel);
	text-decoration: none;
}
.emporas-breadcrumb a:hover { color: var(--emporas-navy); }

/* ============================================
   SITE MAIN — PRODUCT
   ============================================ */
.site-main--product {
	padding-top: 0;
	padding-bottom: 80px;
}

/* ============================================
   PRODUCT MAIN LAYOUT (gallery + summary)
   ============================================ */
.emporas-product__main {
	display: grid;
	grid-template-columns: 1.2fr 1fr;
	gap: 64px;
	margin-bottom: 80px;
	align-items: flex-start;
}

/* ============================================
   GALLERY (left)
   ============================================ */
.emporas-product__gallery .woocommerce-product-gallery {
	width: 100% !important;
	float: none !important;
	margin: 0 !important;
}
.emporas-product__gallery .woocommerce-product-gallery__image img {
	border: 1px solid var(--concrete);
	border-radius: var(--radius-md);
}
.emporas-product__gallery .flex-control-thumbs {
	display: grid !important;
	grid-template-columns: repeat(5, 1fr);
	gap: 8px;
	margin-top: 16px;
	padding: 0 !important;
	list-style: none;
}
.emporas-product__gallery .flex-control-thumbs li {
	width: 100% !important;
	margin: 0 !important;
}
.emporas-product__gallery .flex-control-thumbs img {
	border: 1px solid var(--concrete);
	border-radius: var(--radius-sm);
	opacity: 0.6;
	transition: all 0.15s ease;
	cursor: pointer;
}
.emporas-product__gallery .flex-control-thumbs img:hover,
.emporas-product__gallery .flex-control-thumbs img.flex-active {
	opacity: 1;
	border-color: var(--emporas-navy);
}

/* Sale badge */
.emporas-product .onsale,
.emporas-product__gallery .onsale {
	background: var(--danger-red) !important;
	color: var(--white) !important;
	font-family: var(--font-mono);
	font-size: 11px !important;
	font-weight: 600 !important;
	padding: 6px 12px !important;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	border-radius: var(--radius-sm) !important;
	min-height: auto !important;
	min-width: auto !important;
	line-height: 1 !important;
	border: none !important;
	top: 16px !important;
	left: 16px !important;
	right: auto !important;
}

/* ============================================
   SUMMARY (right)
   ============================================ */
.emporas-product__summary {
	width: 100% !important;
	float: none !important;
	margin: 0 !important;
}

.emporas-product__brand {
	display: inline-block;
	font-family: var(--font-mono);
	font-size: 11px;
	font-weight: 600;
	color: var(--emporas-navy);
	text-transform: uppercase;
	letter-spacing: 1px;
	margin-bottom: 12px;
	padding: 4px 10px;
	border: 1px solid var(--emporas-navy);
	border-radius: var(--radius-sm);
}

.emporas-product__summary .product_title,
.emporas-product__summary h1.entry-title {
	font-family: var(--font-display);
	font-size: 36px;
	font-weight: 700;
	line-height: 1.15;
	color: var(--charcoal);
	margin: 0 0 12px;
	letter-spacing: 0.5px;
	text-transform: none;
}

.emporas-product__sku {
	font-family: var(--font-mono);
	font-size: 12px;
	color: var(--emporas-steel);
	text-transform: uppercase;
	letter-spacing: 0.5px;
	margin-bottom: 16px;
}
.emporas-product__sku span {
	color: var(--charcoal);
	font-weight: 500;
	margin-left: 6px;
}

.emporas-product__summary .woocommerce-product-rating {
	margin-bottom: 16px;
}

.emporas-product__summary .woocommerce-product-details__short-description {
	color: var(--graphite);
	font-size: 15px;
	line-height: 1.7;
	margin-bottom: 24px;
	padding-bottom: 24px;
	border-bottom: 1px solid var(--concrete);
}

/* ============================================
   PRICING BLOCK
   ============================================ */
.emporas-product__pricing {
	background: var(--light-grey);
	padding: 24px;
	border-radius: var(--radius-md);
	border-left: 4px solid var(--emporas-navy);
	margin-bottom: 24px;
}
.emporas-product__price-label {
	font-family: var(--font-mono);
	font-size: 11px;
	color: var(--emporas-steel);
	text-transform: uppercase;
	letter-spacing: 1px;
	margin-bottom: 8px;
}
.emporas-product__price {
	font-family: var(--font-display);
	font-size: 36px;
	font-weight: 700;
	color: var(--charcoal);
	line-height: 1;
}
.emporas-product__price .woocommerce-Price-amount {
	font-family: var(--font-display);
	font-size: 36px;
	font-weight: 700;
	color: var(--charcoal);
}
.emporas-product__price del {
	font-size: 18px;
	color: var(--emporas-steel);
	font-weight: 400;
	margin-right: 12px;
	display: inline-block;
}
.emporas-product__price del .woocommerce-Price-amount {
	font-size: 18px;
	color: var(--emporas-steel);
	font-weight: 400;
}
.emporas-product__price ins {
	background: transparent;
	text-decoration: none;
}

/* Locked price prompt for guests */
.emporas-price-locked {
	background: var(--white);
	padding: 16px;
	border-radius: var(--radius-sm);
	margin-top: 16px;
	text-align: center;
	border: 1px dashed var(--concrete);
}
.emporas-price-locked__text {
	font-size: 13px;
	color: var(--graphite);
	margin-bottom: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
}
.emporas-price-locked__icon {
	font-size: 16px;
}
.emporas-price-locked__link {
	color: var(--emporas-navy);
	font-weight: 600;
	text-decoration: none;
	font-size: 14px;
}
.emporas-price-locked__link:hover {
	color: var(--emporas-navy-dark);
	text-decoration: underline;
}

/* ============================================
   STOCK STATUS
   ============================================ */
.emporas-product__stock {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	font-weight: 500;
	margin-bottom: 24px;
}
.emporas-product__stock--in { color: var(--success-green); }
.emporas-product__stock--out { color: var(--danger-red); }
.emporas-stock-dot {
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: var(--success-green);
	box-shadow: 0 0 0 3px rgba(22, 163, 74, 0.2);
}
/* Hide WC default stock indicator since we render our own */
.emporas-product__summary > p.stock { display: none; }

/* ============================================
   ADD TO CART
   ============================================ */
.emporas-product__summary .cart {
	display: flex;
	gap: 12px;
	align-items: stretch;
	margin-bottom: 24px;
	flex-wrap: wrap;
}
.emporas-product__summary .quantity {
	display: flex;
	align-items: center;
	border: 2px solid var(--charcoal);
	border-radius: var(--radius-md);
	overflow: hidden;
}
.emporas-product__summary .quantity input.qty {
	width: 80px;
	padding: 14px 12px;
	border: none;
	font-family: var(--font-body);
	font-size: 16px;
	font-weight: 600;
	text-align: center;
	background: var(--white);
	color: var(--charcoal);
	-moz-appearance: textfield;
}
.emporas-product__summary .quantity input.qty::-webkit-outer-spin-button,
.emporas-product__summary .quantity input.qty::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.emporas-product__summary .single_add_to_cart_button,
.emporas-product__summary button.single_add_to_cart_button {
	flex: 1;
	background: var(--emporas-navy) !important;
	color: var(--white) !important;
	border: none !important;
	padding: 14px 32px !important;
	font-family: var(--font-body) !important;
	font-weight: 600 !important;
	font-size: 14px !important;
	text-transform: none !important;
	letter-spacing: 0.3px !important;
	border-radius: var(--radius-md) !important;
	cursor: pointer;
	transition: all 0.15s ease !important;
	min-width: 200px;
}
.emporas-product__summary .single_add_to_cart_button:hover {
	background: var(--emporas-navy-dark) !important;
	transform: translateY(-1px);
}
.emporas-product__summary .single_add_to_cart_button:disabled {
	opacity: 0.5;
	cursor: not-allowed;
}

/* ============================================
   META (categories, tags)
   ============================================ */
.emporas-product__summary .product_meta {
	font-size: 13px;
	color: var(--emporas-steel);
	padding: 16px 0;
	border-top: 1px solid var(--concrete);
	border-bottom: 1px solid var(--concrete);
	margin-bottom: 24px;
}
.emporas-product__summary .product_meta > span {
	display: block;
	padding: 4px 0;
}
.emporas-product__summary .product_meta a {
	color: var(--emporas-navy);
	text-decoration: none;
}
.emporas-product__summary .product_meta a:hover { text-decoration: underline; }

/* ============================================
   TRUST MINI-ICONS
   ============================================ */
.emporas-product__trust {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 12px;
	padding: 20px;
	background: var(--light-grey);
	border-radius: var(--radius-md);
}
.emporas-product__trust-item {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 12px;
	font-weight: 500;
	color: var(--charcoal);
}
.emporas-product__trust-item svg {
	color: var(--emporas-navy);
	flex-shrink: 0;
}

/* ============================================
   TABS (description, additional info, reviews, specs)
   ============================================ */
.emporas-product__tabs.woocommerce-tabs,
.woocommerce div.product .woocommerce-tabs {
	margin-bottom: 80px;
	background: var(--white);
	border: 1px solid var(--concrete);
	border-radius: var(--radius-md);
	overflow: hidden;
}
.woocommerce-tabs ul.tabs {
	display: flex !important;
	background: var(--charcoal) !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none;
	border-bottom: none !important;
}
.woocommerce-tabs ul.tabs::before { display: none !important; }
.woocommerce-tabs ul.tabs li {
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}
.woocommerce-tabs ul.tabs li::before,
.woocommerce-tabs ul.tabs li::after { display: none !important; }
.woocommerce-tabs ul.tabs li a {
	display: block;
	padding: 18px 32px !important;
	color: var(--white) !important;
	font-family: var(--font-display) !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	text-transform: none;
	letter-spacing: 0.5px;
	text-decoration: none;
	border-bottom: 3px solid transparent;
	transition: all 0.15s ease;
}
.woocommerce-tabs ul.tabs li a:hover {
	background: var(--anthracite) !important;
	border-bottom-color: var(--emporas-navy);
}
.woocommerce-tabs ul.tabs li.active a {
	background: var(--white) !important;
	color: var(--charcoal) !important;
	border-bottom-color: var(--emporas-navy);
}
.woocommerce-tabs .panel {
	padding: 32px !important;
	background: var(--white);
	margin: 0 !important;
}
.woocommerce-tabs .panel h2 {
	font-family: var(--font-display);
	font-size: 24px;
	font-weight: 700;
	margin-top: 0;
	margin-bottom: 16px;
}

/* Specs / additional info table */
.woocommerce-product-attributes,
table.shop_attributes {
	width: 100%;
	border-collapse: collapse;
	font-size: 14px;
}
.woocommerce-product-attributes tr,
table.shop_attributes tr {
	border-bottom: 1px solid var(--concrete);
}
.woocommerce-product-attributes tr:last-child,
table.shop_attributes tr:last-child { border-bottom: none; }
.woocommerce-product-attributes-item__label,
.woocommerce-product-attributes th,
table.shop_attributes th {
	background: var(--light-grey) !important;
	color: var(--emporas-steel) !important;
	font-weight: 500 !important;
	padding: 14px 20px !important;
	text-align: left !important;
	width: 35% !important;
	font-style: normal !important;
}
.woocommerce-product-attributes-item__value,
.woocommerce-product-attributes td,
table.shop_attributes td {
	padding: 14px 20px !important;
	font-family: var(--font-mono) !important;
	color: var(--charcoal) !important;
	font-style: normal !important;
}
.woocommerce-product-attributes-item__value p,
table.shop_attributes td p { margin: 0 !important; padding: 0 !important; }

/* ============================================
   RELATED PRODUCTS
   ============================================ */
.emporas-product__related,
.related.products {
	margin-bottom: 60px;
}
.related.products > h2 {
	font-family: var(--font-display);
	font-size: 32px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1px;
	margin-bottom: 32px;
	padding-bottom: 16px;
	border-bottom: 2px solid var(--charcoal);
}

/* ============================================
   RESPONSIVE
   ============================================ */
@media (max-width: 1024px) {
	.emporas-product__main {
		grid-template-columns: 1fr;
		gap: 32px;
	}
	.emporas-product__summary .product_title,
	.emporas-product__summary h1.entry-title { font-size: 28px; }
	.emporas-product__price,
	.emporas-product__price .woocommerce-Price-amount { font-size: 28px; }
}

@media (max-width: 768px) {
	.emporas-product__trust { grid-template-columns: 1fr; }
	.emporas-product__summary .cart { flex-direction: column; }
	.emporas-product__summary .quantity input.qty { width: 100%; }
	.woocommerce-tabs ul.tabs { flex-wrap: wrap; }
	.woocommerce-tabs ul.tabs li a { padding: 14px 20px !important; font-size: 14px !important; }
	.woocommerce-tabs .panel { padding: 20px !important; }
}
