/**
 * Bolt termékkártya – B változat (képközpontú, kompakt)
 * Értékek a Bolt design system tokenjeiből.
 */

.bk-card {
	--bk-brand-red: #d80e1d;
	--bk-action-red: #cc2d3c;
	--bk-action-red-hover: #a82432;
	--bk-ink: #333333;
	--bk-ink-strong: #242424;
	--bk-ink-black: #212121;
	--bk-ink-muted: #666666;
	--bk-surface: #ffffff;
	--bk-surface-soft: #f9f9f9;
	--bk-surface-muted: #f5f5f5;
	--bk-line-soft: #f0f0f0;
	--bk-line-variation: #24242466;
	--bk-chip: #fbe7e8;
	--bk-success-ink: #166534;
	--bk-disabled: #cccccc;

	display: flex;
	flex-direction: column;
	height: 100%;
	overflow: hidden;
	background: var(--bk-surface);
	border-radius: 14px;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
	font-family: "Poppins", sans-serif;
	color: #070707;
	transition: all 0.3s ease;
}
.bk-card *, .bk-card *::before, .bk-card *::after { box-sizing: border-box; }

/* Kép és jelvények */
.bk-media { position: relative; }
.bk-image { display: block; background: var(--bk-surface-muted); }
.bk-image img {
	display: block;
	width: 100%;
	height: 260px !important;
	object-fit: cover;
	border-radius: 0 !important;
	margin: 0 !important;
}
.bk-card.is-out .bk-image img { opacity: 0.45; filter: grayscale(1); }
/* Elfogyott: szalag a fotó alján, halvány név és ár, szürke nyíl */
.bk-elfogyott-sav { position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; padding: 10px 12px; background: rgba(36, 36, 36, 0.86); color: #fff; font-size: 13px; font-weight: 600; line-height: 1.3; text-align: center; letter-spacing: 0.02em; pointer-events: none; }
.bk-card.is-out .bk-title a { color: #666666; }
.bk-price__now.is-elfogyott { color: #999999; }
.bk-card .bk-cart.bk-cart--elfogyott { background: #eeeeee; color: #242424 !important; }
.bk-card .bk-cart.bk-cart--elfogyott:hover { background: #e0e0e0; color: #242424 !important; }
@media (max-width: 767px) { .bk-elfogyott-sav { padding: 8px 10px; font-size: 12px; } }

.bk-badges {
	position: absolute; top: 12px; left: 12px; right: 12px;
	display: flex; align-items: center; gap: 8px;
	pointer-events: none;
}
.bk-badges__spacer { flex-grow: 1; }
.bk-badge {
	font-size: 12px; line-height: 1.3; font-weight: 600;
	padding: 5px 10px; border-radius: 50px;
}
.bk-badge[hidden] { display: none; }
.bk-badge--sale { background: var(--bk-action-red); color: var(--bk-surface); font-weight: 700; }
.bk-badge--out { background: var(--bk-ink); color: var(--bk-surface); }
.bk-badge--kicker { background: var(--bk-surface); color: var(--bk-ink-strong); box-shadow: 0 2px 8px rgba(0, 0, 0, 0.11); }

/* Tartalom */
.bk-body {
	display: flex; flex-direction: column; gap: 8px;
	padding: 16px 18px 18px; flex-grow: 1;
}
.bk-cat {
	font-size: 10px; line-height: 1.4; font-weight: 700; letter-spacing: 0.08em;
	text-transform: uppercase; color: var(--bk-brand-red); text-decoration: none;
}
.bk-cat:hover { color: #b70a18; }
.bk-title { margin: 0 !important; font-size: 17px !important; line-height: 25px !important; font-weight: 600 !important; }
.bk-title a { color: var(--bk-ink-strong); text-decoration: none; }
.bk-title a:hover { color: var(--bk-brand-red); }

.bk-chips { display: flex; flex-wrap: wrap; gap: 5px; }
.bk-chip {
	font-size: 11px; line-height: 1.4; font-weight: 500;
	color: var(--bk-ink-strong); background: var(--bk-chip);
	padding: 3px 9px; border-radius: 50px; text-decoration: none;
}
a.bk-chip:hover { color: var(--bk-brand-red); }

/* Kiszerelés */
.bk-variations { display: flex; flex-direction: column; gap: 6px; margin-top: 4px; }
.bk-variations__label { font-size: 12px; font-weight: 600; color: var(--bk-ink-strong); }
.bk-variations__list { display: flex; flex-wrap: wrap; gap: 6px; }
.bk-var {
	min-width: 64px; min-height: 40px; padding: 0 12px;
	font-family: "Poppins", sans-serif; font-size: 13px; font-weight: 500; line-height: 1.2;
	color: var(--bk-ink-strong); background: var(--bk-surface);
	border: 1px solid var(--bk-line-variation); border-radius: 50px;
	cursor: pointer; transition: all 0.3s ease;
}
.bk-var:hover:not(:disabled), .bk-var.is-selected {
	background: var(--bk-action-red); border-color: var(--bk-action-red); color: var(--bk-surface);
}
.bk-var:disabled { opacity: 0.35; text-decoration: line-through; cursor: not-allowed; }
.bk-var:focus-visible { outline: 2px solid var(--bk-ink-strong); outline-offset: 2px; }
.bk-variations__hint { font-size: 12px; color: var(--bk-ink-muted); }
.bk-variations__hint[hidden] { display: none; }

/* Ár és kosár */
.bk-buy {
	display: flex; align-items: center; justify-content: space-between; gap: 10px;
	margin-top: auto; padding-top: 8px;
}
.bk-price { display: flex; flex-direction: column; flex: 1 1 auto; min-width: 0; line-height: 1.2; }
.bk-price__was { font-size: 13px; color: var(--bk-ink-muted); text-decoration: line-through; }
.bk-price__was[hidden] { display: none; }
.bk-price__now { font-size: 22px; font-weight: 700; color: var(--bk-ink-black); white-space: nowrap; }
.bk-price__now.is-sale { color: var(--bk-action-red); }
.bk-price .woocommerce-Price-amount { color: inherit; font-weight: inherit; }
.bk-price__tol { font-size: 14px; font-weight: 600; }
/* Variációs termék: csak finom jelzés, a kiszerelést a termékoldalon választja */
.bk-kisz {
	display: flex; align-items: center; gap: 5px; margin-top: 5px;
	font-size: 12px; font-weight: 500; line-height: 1.3; color: var(--bk-ink-muted);
}
.bk-kisz .ti { flex-shrink: 0; font-size: 14px; }
.bk-kisz > span { white-space: normal; }
/* Keskeny kártyán (pl. tablet, 3 oszlop) az ár kisebb, hogy a kosár gomb ne lógjon ki. */
@media (min-width: 768px) and (max-width: 1024px) { .bk-price__now { font-size: 19px; } }

.bk-cart {
	flex-shrink: 0; width: 48px; height: 48px;
	display: flex; align-items: center; justify-content: center;
	border-radius: 50px; background: var(--bk-action-red); color: var(--bk-surface) !important;
	font-size: 22px; text-decoration: none; cursor: pointer; transition: all 0.3s ease;
}
.bk-cart:hover { background: var(--bk-action-red-hover); }
.bk-cart:focus-visible { outline: 2px solid var(--bk-ink-strong); outline-offset: 2px; }
.bk-cart.is-disabled { background: var(--bk-disabled); cursor: not-allowed; }
.bk-cart.is-loading { opacity: 0.6; pointer-events: none; }
.bk-cart.is-added { background: var(--bk-success-ink); }

.bk-more {
	display: flex; align-items: center; justify-content: center;
	width: 100%; min-height: 48px; padding: 0 16px;
	border: 1px solid var(--bk-ink-strong); border-radius: 50px;
	background: var(--bk-surface); color: var(--bk-ink-strong) !important;
	font-size: 14px; font-weight: 600; text-decoration: none; transition: all 0.3s ease;
}
.bk-more:hover { background: var(--bk-ink-strong); color: var(--bk-surface) !important; }

.bk-error { margin: 0; font-size: 12px; color: #991b1b; }
.bk-error[hidden] { display: none; }

/* Bizalmi sáv */
.bk-trust {
	list-style: none; margin: 0 !important; padding: 12px 18px !important;
	display: flex; flex-direction: column; gap: 8px;
	background: var(--bk-surface-soft); border-top: 1px solid var(--bk-line-soft);
}
.bk-trust li {
	display: flex; align-items: center; gap: 6px; margin: 0;
	font-size: 12px; line-height: 1.35; font-weight: 500; color: var(--bk-ink);
}
.bk-trust .ti { flex-shrink: 0; font-size: 16px; color: var(--bk-action-red); }

@media (max-width: 767px) {
	.bk-image img { height: 180px !important; }
	.bk-body { padding: 12px 12px 14px; }
	.bk-trust { padding: 10px 12px !important; }
	.bk-title { font-size: 15px !important; line-height: 22px !important; }
	.bk-price__now { font-size: 18px; }
	.bk-cart { width: 44px; height: 44px; font-size: 20px; }
	.bk-kisz__tobb { display: none; }
}

/* -------------------------------------------------------------------------
 * WooCommerce termékarchívum (bolt oldal, kategóriák) rácsa
 * ---------------------------------------------------------------------- */
.modul-bk-archivum ul.products {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	gap: 20px;
	margin: 0 0 30px !important;
	padding: 0 !important;
	list-style: none;
}
.modul-bk-archivum ul.products::before,
.modul-bk-archivum ul.products::after { display: none !important; content: none !important; }
.modul-bk-archivum ul.products li.product.bk-li {
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
	clear: none !important;
	text-align: left;
	display: flex;
	flex-direction: column;
}
.modul-bk-archivum ul.products li.product.bk-li > .bk-card { flex-grow: 1; }

@media (max-width: 767px) {
	.modul-bk-archivum ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
}
