/*
 * AzaKit mağaza düzeni (Faz 10a): ürün kartı, ızgara araç çubuğu, ürün detay ve mini sepet çekmecesi.
 * woocommerce.css'ten SONRA yüklenir; çekirdekle aynı özgüllükteki seçiciler burada sonra geldiği için kazanır.
 * Şablon kopyası yok: yalnızca WooCommerce'in kendi sınıfları ve temanın `azk-` sınıfları.
 */

/* Görsel oranı gövde sınıfından gelir (ayar: Mağaza → Ürün görseli oranı). */
.azk-ratio-kare { --azk-card-ratio: 1 / 1; --azk-card-n: 1; }
.azk-ratio-portre { --azk-card-ratio: 4 / 5; --azk-card-n: .8; }
.azk-ratio-kitap { --azk-card-ratio: 3 / 4; --azk-card-n: .75; }
.azk-ratio-yatay { --azk-card-ratio: 4 / 3; --azk-card-n: 1.3333; }

/* ------------------------------------------------------------------ Ürün kartı */
/* Kart iki satırlı ızgaradır: bağlantı (görsel, ad, puan, fiyat) ve düğme. Bağlantı gerçek bir kutudur (klavye odağı
   alır); "üzerine gelince" düğmesi görselin alt kenarına, kartın genişliğinden hesaplanan yükseklikle oturur. */
.woocommerce ul.products[class*="columns-"] li.product,
.woocommerce-page ul.products[class*="columns-"] li.product {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	grid-template-rows: 1fr auto;
	position: relative;
	container-type: inline-size;
	text-align: left;
}
.woocommerce ul.products li.product .woocommerce-LoopProduct-link { display: grid; grid-template-columns: minmax(0, 1fr); grid-row: 1; align-content: start; flex: none; color: var(--azk-color-text); text-decoration: none; }
.woocommerce ul.products li.product .woocommerce-LoopProduct-link:focus-visible { outline: 0; }
.woocommerce ul.products li.product .woocommerce-LoopProduct-link:focus-visible .azk-card__media { outline: 3px solid var(--azk-color-focus); outline-offset: -3px; }
.woocommerce ul.products li.product .woocommerce-LoopProduct-link:focus-visible .woocommerce-loop-product__title { text-decoration: underline; text-underline-offset: .2em; }

.azk-card__media {
	position: relative;
	display: block;
	grid-row: 1;
	overflow: hidden;
	aspect-ratio: var(--azk-card-ratio, 1 / 1);
	background: var(--azk-color-surface);
}
.woocommerce ul.products li.product a .azk-card__media img {
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	aspect-ratio: auto;
	object-fit: cover;
	transition: transform 450ms ease, opacity 350ms ease;
}
.woocommerce ul.products li.product:hover a .azk-card__media img { transform: scale(1.04); }
.woocommerce ul.products li.product a .azk-card__media .azk-card__img-hover { position: absolute; inset: 0; opacity: 0; }
@media (hover: hover) {
	.azk-card-hover-img ul.products li.product:hover .azk-card__media .azk-card__img-hover,
	.azk-card-hover-img ul.products li.product:focus-within .azk-card__media .azk-card__img-hover { opacity: 1; }
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	grid-row: 2;
	margin: var(--azk-space-3) 0 var(--azk-space-1);
	padding: 0 var(--azk-space-4);
	font-size: max(14px, 1rem);
	line-height: 1.35;
	text-decoration: none;
}
.woocommerce ul.products li.product .star-rating { grid-row: 3; margin: 0 var(--azk-space-4) var(--azk-space-1); }
.woocommerce ul.products li.product .price { grid-row: 4; margin: 0 0 var(--azk-space-3); }
/* Çekirdek eski fiyatı `opacity: .5` ile soldurur; soluk gri zeminde kontrast 4,5'in altına düşer (canlı 10j axe). */
.woocommerce ul.products li.product .price del { margin-right: var(--azk-space-2); font-size: .9em; color: var(--azk-color-muted); opacity: 1; }
.woocommerce ul.products li.product a.azk-card__cta,
.woocommerce ul.products li.product .button.azk-card__cta {
	grid-row: 2;
	align-self: end;
	justify-self: start;
	margin: 0 var(--azk-space-4) var(--azk-space-4);
}
/* WooCommerce sepete ekleyince düğmenin ardına "Sepetim" bağlantısını koyar; ızgarada kenara yapışık üçüncü satır olurdu. */
.woocommerce ul.products li.product a.added_to_cart.wc-forward {
	grid-row: 3;
	justify-self: start;
	display: inline-flex;
	align-items: center;
	gap: var(--azk-space-1);
	min-height: 2.75rem;
	margin: calc(-1 * var(--azk-space-2)) var(--azk-space-4) var(--azk-space-3);
	padding: 0;
	color: var(--azk-color-brand);
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: .2em;
}
.woocommerce ul.products li.product a.added_to_cart.wc-forward:focus-visible { outline: 3px solid var(--azk-color-focus); outline-offset: 2px; }

/* Rozetler: tükendi, indirim, yeni, popüler; en çok ikisi. */
.azk-badges {
	position: absolute;
	z-index: 2;
	top: var(--azk-space-3);
	left: var(--azk-space-3);
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: .35rem;
	pointer-events: none;
}
.azk-badge {
	display: inline-block;
	padding: .25rem .6rem;
	border: var(--azk-border-w) solid transparent;
	border-radius: var(--azk-btn-radius);
	font-size: .8125rem;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: .02em;
}
.azk-badge--sale { background: var(--azk-color-danger); color: #fff; }
.azk-badge--new { background: var(--azk-color-brand); color: var(--azk-color-on-brand); }
.azk-badge--hot { background: var(--azk-color-text); color: var(--azk-color-bg); }
.azk-badge--soldout { border-color: var(--azk-color-border); background: var(--azk-color-surface); color: var(--azk-color-text); }

/* Ek eylem alanı (Faz 10b istek listesi, karşılaştırma, hızlı bakış düğmeleri bu kapsayıcıya gelir). */
.azk-card__actions {
	position: absolute;
	z-index: 3;
	top: var(--azk-space-3);
	right: var(--azk-space-3);
	display: flex;
	flex-direction: column;
	gap: var(--azk-space-2);
	opacity: 0;
	transform: translateX(8px);
	transition: opacity 250ms ease, transform 250ms ease;
}
.woocommerce ul.products li.product:hover .azk-card__actions,
.woocommerce ul.products li.product:focus-within .azk-card__actions { opacity: 1; transform: none; }
@media (hover: none) {
	.azk-card__actions { opacity: 1; transform: none; }
}

/* Kart biçimleri. Kutu varsayılandır (çerçeveli, düğme altta). */
/* Açık ve ortalı: çerçevesiz, düğme görselin alt kenarına çıkar (üzerine gelince ya da odakta). */
.azk-card-acik ul.products[class*="columns-"] li.product,
.azk-card-ortali ul.products[class*="columns-"] li.product {
	border-color: transparent;
	background: transparent;
	box-shadow: none;
	overflow: visible;
}
.azk-card-acik ul.products li.product .azk-card__media,
.azk-card-ortali ul.products li.product .azk-card__media { border-radius: var(--azk-radius); }
.azk-card-acik ul.products li.product .woocommerce-loop-product__title,
.azk-card-acik ul.products li.product .star-rating,
.azk-card-acik ul.products li.product .price,
.azk-card-ortali ul.products li.product .woocommerce-loop-product__title,
.azk-card-ortali ul.products li.product .price { padding-inline: 0; margin-inline: 0; }
.azk-card-ortali ul.products li.product { text-align: center; }
.azk-card-ortali ul.products li.product .star-rating { margin-inline: auto; }
.azk-card-ortali ul.products li.product a.azk-card__cta { justify-self: center; }
.azk-card-acik ul.products li.product a.azk-card__cta,
.azk-card-ortali ul.products li.product a.azk-card__cta { margin-inline: 0; }
.azk-card-reveal.azk-card-acik ul.products li.product a.azk-card__cta,
.azk-card-reveal.azk-card-ortali ul.products li.product a.azk-card__cta {
	position: absolute;
	grid-area: 1 / 1 / -1 / -1;
	z-index: 3;
	left: 50%;
	top: calc(100cqw / var(--azk-card-n, 1) - var(--azk-space-3));
	translate: -50% -100%;
	margin: 0;
	opacity: 0;
	transform: translateY(10px);
	transition: opacity 250ms ease, transform 250ms ease, background-color 200ms ease;
}
.azk-card-reveal.azk-card-acik ul.products li.product:hover a.azk-card__cta,
.azk-card-reveal.azk-card-ortali ul.products li.product:hover a.azk-card__cta,
.azk-card-reveal.azk-card-acik ul.products li.product a.azk-card__cta:focus-visible,
.azk-card-reveal.azk-card-ortali ul.products li.product a.azk-card__cta:focus-visible { opacity: 1; transform: none; }
@media (hover: none) {
	/* Dokunmatik ekranda üzerine gelme yok: düğme kartın altında hep görünür. */
	.azk-card-reveal.azk-card-acik ul.products li.product a.azk-card__cta,
	.azk-card-reveal.azk-card-ortali ul.products li.product a.azk-card__cta { position: static; translate: none; grid-row: 2; justify-self: center; margin: 0 0 var(--azk-space-3); opacity: 1; transform: none; }
}
/* Kompakt: sıkı boşluk, tam genişlik düğme. */
.azk-card-kompakt ul.products li.product .woocommerce-loop-product__title { padding-inline: var(--azk-space-3); font-size: max(14px, .95rem); }
.azk-card-kompakt ul.products li.product .price { padding-inline: var(--azk-space-3); }
.azk-card-kompakt ul.products li.product .star-rating { margin-inline: var(--azk-space-3); }
.azk-card-kompakt ul.products li.product a.azk-card__cta { justify-self: stretch; margin: 0 var(--azk-space-3) var(--azk-space-3); }

/* ------------------------------------------------------------------ Izgara araç çubuğu */
.azk-shop-bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--azk-space-3) var(--azk-space-5); margin: 0 0 var(--azk-space-5); }
.azk-shop-bar .woocommerce-result-count,
.azk-shop-bar .woocommerce-ordering { margin: 0; }
.azk-shop-bar .woocommerce-result-count { order: 1; }
.azk-shop-bar .azk-cols { order: 2; margin-left: auto; }
.azk-shop-bar .woocommerce-ordering { order: 3; }
.azk-cols { display: none; gap: var(--azk-space-1); }
.azk-cols[hidden] { display: none; }
@media (min-width: 64rem) {
	.azk-cols:not([hidden]) { display: inline-flex; }
}
.azk-cols__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	min-height: 44px;
	padding: 0;
	border: var(--azk-border-w) solid transparent;
	border-radius: var(--azk-btn-radius);
	background: transparent;
	color: var(--azk-color-muted);
	cursor: pointer;
}
.azk-cols__btn:hover { color: var(--azk-color-text); background: transparent; }
.azk-cols__btn[aria-pressed="true"] { border-color: var(--azk-color-border); color: var(--azk-color-text); }
.azk-cols__icon { display: block; height: 16px; background: repeating-linear-gradient(90deg, currentcolor 0 4px, transparent 4px 7px); }
.azk-cols__icon[data-n="2"] { width: 11px; }
.azk-cols__icon[data-n="3"] { width: 18px; }
.azk-cols__icon[data-n="4"] { width: 25px; }

.azk-loadmore { display: flex; flex-direction: column; align-items: center; gap: var(--azk-space-3); margin: 0 0 var(--azk-space-6); }
.azk-loadmore[hidden], .azk-loadmore__done[hidden], .azk-loadmore__btn[hidden] { display: none !important; }
.azk-loadmore__done { margin: 0; color: var(--azk-color-muted); }
.azk-loadmore.is-busy .azk-loadmore__btn { opacity: .6; pointer-events: none; }
.azk-loadmore[data-mode="infinite"] .azk-loadmore__btn { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }

/* ------------------------------------------------------------------ Ürün detay */
.woocommerce div.product { position: relative; align-items: start; }
.woocommerce div.product > .azk-badges { top: var(--azk-space-4); left: var(--azk-space-4); z-index: 4; }
.woocommerce div.product div.images .woocommerce-product-gallery__image img,
.woocommerce div.product div.images .woocommerce-product-gallery__image a { display: block; }
.woocommerce div.product div.images .woocommerce-product-gallery__image img { width: 100%; height: auto; }
.woocommerce div.product div.images .woocommerce-product-gallery__trigger {
	top: var(--azk-space-3);
	right: var(--azk-space-3);
	border-radius: 50%;
	background: var(--azk-color-bg);
	box-shadow: var(--azk-shadow-card);
}
.woocommerce div.product div.images .flex-control-thumbs {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: var(--azk-space-2);
	margin: var(--azk-space-3) 0 0;
	padding: 0;
	list-style: none;
}
.woocommerce div.product div.images .flex-control-thumbs li { float: none; width: auto; margin: 0; }
.woocommerce div.product div.images .flex-control-thumbs li img {
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border: var(--azk-border-w) solid transparent;
	border-radius: calc(var(--azk-radius) / 2);
	opacity: .6;
	cursor: pointer;
	transition: opacity 200ms ease, border-color 200ms ease;
}
.woocommerce div.product div.images .flex-control-thumbs li img:hover { opacity: 1; }
.woocommerce div.product div.images .flex-control-thumbs li img.flex-active { border-color: var(--azk-color-brand); opacity: 1; }
.woocommerce div.product div.images .flex-control-thumbs li img:focus-visible { outline: 3px solid var(--azk-color-focus); outline-offset: 2px; }

.woocommerce div.product div.summary > * + * { margin-top: var(--azk-space-3); }
.woocommerce div.product .product_title { margin: 0; }
.woocommerce div.product .woocommerce-product-rating { display: flex; align-items: center; gap: var(--azk-space-3); }
.woocommerce div.product .woocommerce-product-rating .star-rating { margin: 0; }
.woocommerce div.product p.price ins, .woocommerce div.product span.price ins { color: var(--azk-color-brand); }
.woocommerce div.product p.price del, .woocommerce div.product span.price del { margin-right: var(--azk-space-2); font-size: .75em; color: var(--azk-color-muted); opacity: 1; }
.woocommerce div.product .woocommerce-product-details__short-description { color: var(--azk-color-muted); }
.woocommerce div.product p.stock { margin: 0; font-weight: 600; }
.woocommerce div.product p.stock.in-stock { color: var(--azk-color-success); }
.woocommerce div.product p.stock.out-of-stock { color: var(--azk-color-danger); }
.woocommerce div.product form.cart .single_add_to_cart_button { flex: 1 1 12rem; min-height: 3rem; }
.woocommerce div.product form.cart table.variations { width: 100%; margin: 0 0 var(--azk-space-3); border: 0; }
.woocommerce div.product form.cart table.variations th,
.woocommerce div.product form.cart table.variations td { display: block; padding: 0 0 var(--azk-space-2); border: 0; background: none; text-align: left; }
.woocommerce div.product form.cart table.variations label { font-weight: 600; }
.woocommerce div.product form.cart table.variations select { width: 100%; min-height: var(--azk-control-h); }
.woocommerce div.product form.cart .reset_variations { display: inline-block; margin-top: var(--azk-space-2); font-size: .875rem; }
.woocommerce div.product .product_meta { display: grid; gap: var(--azk-space-1); padding-top: var(--azk-space-4); border-top: var(--azk-border-w) solid var(--azk-color-border); }
.woocommerce div.product .product_meta > span { display: block; }
.woocommerce div.product .woocommerce-tabs .panel { margin: 0; padding: var(--azk-space-2) 0 var(--azk-space-4); }
.woocommerce div.product .woocommerce-tabs .panel > h2:first-child { display: none; }
.woocommerce div.product .related > h2,
.woocommerce div.product .upsells > h2 { margin: var(--azk-space-6) 0 var(--azk-space-5); font-size: clamp(1.4rem, 1.2rem + .8vw, 1.9rem); }
.woocommerce div.product .related ul.products,
.woocommerce div.product .upsells ul.products { margin-bottom: 0; }

@media (min-width: 64rem) {
	.azk-single-sticky div.product div.summary { position: sticky; top: 6.5rem; }
	/* Küçük görseller solda: sütun, ana görselin yanında. */
	.azk-gallery-sol div.product div.woocommerce-product-gallery { display: grid; grid-template-columns: 5.5rem minmax(0, 1fr); gap: var(--azk-space-3); align-items: start; }
	.azk-gallery-sol div.product div.images .flex-viewport,
	.azk-gallery-sol div.product div.images .woocommerce-product-gallery__wrapper { grid-column: 2; grid-row: 1; }
	.azk-gallery-sol div.product div.images .flex-control-thumbs { grid-column: 1; grid-row: 1; grid-template-columns: minmax(0, 1fr); align-content: start; margin: 0; }
}

/* Adet düğmeleri (JS ekler; JS yokken düz sayı alanı). */
.azk-qty { display: inline-flex; align-items: stretch; border: var(--azk-border-w) solid var(--azk-color-border); border-radius: var(--azk-btn-radius); overflow: hidden; }
.azk-qty .qty { width: 3.25rem; min-height: var(--azk-control-h); border: 0; border-radius: 0; padding: 0; text-align: center; appearance: textfield; -moz-appearance: textfield; }
.azk-qty .qty::-webkit-outer-spin-button, .azk-qty .qty::-webkit-inner-spin-button { margin: 0; appearance: none; }
.azk-qty__btn { display: inline-flex; align-items: center; justify-content: center; width: 2.75rem; min-height: var(--azk-control-h); padding: 0; border: 0; border-radius: 0; background: var(--azk-color-surface); color: var(--azk-color-text); font-size: 1.25rem; line-height: 1; cursor: pointer; }
.azk-qty__btn:hover { background: var(--azk-color-border); color: var(--azk-color-text); }

/* ------------------------------------------------------------------ Mini sepet çekmecesi */
.azk-minicart { position: fixed; inset: 0; z-index: 1010; visibility: hidden; pointer-events: none; transition: visibility 0s linear 300ms; }
.azk-minicart.is-open { visibility: visible; pointer-events: auto; transition-delay: 0s; }
.azk-minicart__overlay { position: absolute; inset: 0; background: rgb(0 0 0 / 45%); opacity: 0; transition: opacity 250ms ease; }
.azk-minicart.is-open .azk-minicart__overlay { opacity: 1; }
.azk-minicart__panel {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	display: flex;
	flex-direction: column;
	width: min(26rem, 100%);
	background: var(--azk-color-bg);
	color: var(--azk-color-text);
	box-shadow: -12px 0 40px rgb(0 0 0 / 18%);
	transform: translateX(100%);
	transition: transform 300ms cubic-bezier(.2, .7, .2, 1);
}
.azk-minicart__panel:focus { outline: 0; }
.azk-minicart.is-open .azk-minicart__panel { transform: none; }
.azk-minicart__head { display: flex; align-items: center; justify-content: space-between; gap: var(--azk-space-3); padding: var(--azk-space-4) var(--azk-space-5); border-bottom: var(--azk-border-w) solid var(--azk-color-border); }
.azk-minicart__title { margin: 0; font-size: 1.15rem; }
.azk-minicart__close { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0; border: 0; border-radius: 50%; background: transparent; color: var(--azk-color-text); font-size: 1.75rem; line-height: 1; cursor: pointer; }
.azk-minicart__close:hover { background: var(--azk-color-surface); color: var(--azk-color-text); }
.azk-minicart__body { flex: 1; min-height: 0; overflow-y: auto; padding: var(--azk-space-4) var(--azk-space-5); }
.azk-minicart__body .widget_shopping_cart_content { display: flex; flex-direction: column; min-height: 100%; }
.azk-minicart__foot { padding: var(--azk-space-3) var(--azk-space-5) var(--azk-space-4); border-top: var(--azk-border-w) solid var(--azk-color-border); }
.azk-minicart__continue { width: 100%; min-height: var(--azk-control-h); border: 0; background: none; color: var(--azk-color-link); font: inherit; font-weight: 600; text-decoration: underline; text-underline-offset: .2em; cursor: pointer; }
.azk-minicart__continue:hover { background: none; color: var(--azk-color-link); }
html.azk-minicart-lock { overflow: hidden; }

.azk-minicart .woocommerce-mini-cart { margin: 0; padding: 0; list-style: none; }
.azk-minicart .woocommerce-mini-cart-item {
	position: relative;
	display: grid;
	grid-template-columns: 4.5rem minmax(0, 1fr);
	column-gap: var(--azk-space-3);
	align-items: start;
	margin: 0;
	padding: var(--azk-space-4) 2.5rem var(--azk-space-4) 0;
	border-bottom: var(--azk-border-w) solid var(--azk-color-border);
}
.azk-minicart .woocommerce-mini-cart-item > a:not(.remove) { display: contents; color: var(--azk-color-text); font-weight: 600; line-height: 1.35; text-decoration: none; }
.azk-minicart .woocommerce-mini-cart-item img { grid-row: 1 / span 3; width: 4.5rem; height: 4.5rem; margin: 0; border-radius: calc(var(--azk-radius) / 2); object-fit: cover; }
.azk-minicart .woocommerce-mini-cart-item dl.variation { grid-column: 2; margin: var(--azk-space-1) 0 0; color: var(--azk-color-muted); font-size: .875rem; }
.azk-minicart .woocommerce-mini-cart-item dl.variation p { display: inline; margin: 0; }
.azk-minicart .woocommerce-mini-cart-item .quantity { grid-column: 2; margin-top: var(--azk-space-1); color: var(--azk-color-muted); font-size: .9375rem; }
.azk-minicart .woocommerce-mini-cart-item a.remove {
	position: absolute;
	top: var(--azk-space-3);
	right: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: transparent;
	color: var(--azk-color-muted) !important;
	font-size: 1.5rem;
	font-weight: 400;
	line-height: 1;
	text-decoration: none;
}
.azk-minicart .woocommerce-mini-cart-item a.remove:hover { background: var(--azk-color-danger); color: #fff !important; }
.azk-minicart .woocommerce-mini-cart__total { display: flex; justify-content: space-between; margin: var(--azk-space-4) 0 var(--azk-space-3); font-size: 1.05rem; }
.azk-minicart .woocommerce-mini-cart__buttons { display: grid; gap: var(--azk-space-2); margin: 0; }
.azk-minicart .woocommerce-mini-cart__buttons .button { width: 100%; margin: 0; }
.azk-minicart .woocommerce-mini-cart__buttons .button:not(.checkout) { background: transparent; color: var(--azk-color-brand); }
.azk-minicart .woocommerce-mini-cart__buttons .button:not(.checkout):hover { background: var(--azk-color-surface); color: var(--azk-color-brand); }
.azk-minicart .woocommerce-mini-cart__empty-message { margin: var(--azk-space-6) 0; color: var(--azk-color-muted); text-align: center; }
.azk-minicart .woocommerce-mini-cart__buttons { margin-top: auto; }

/* ---------------------------------------------------------------- Faz 10c: süzgeç kutusu */
.azk-filter-box { margin: 0 0 var(--azk-space-5); border: 1px solid color-mix(in srgb, currentColor 18%, transparent); border-radius: var(--azk-radius, 8px); }
.azk-filter-box__toggle { display: flex; align-items: center; min-height: 44px; padding: 0 var(--azk-space-4); font-weight: 700; cursor: pointer; }
.azk-filter-box__toggle:focus-visible { outline: 2px solid currentColor; outline-offset: -2px; }
.azk-filter-box__body { padding: var(--azk-space-4); border-top: 1px solid color-mix(in srgb, currentColor 18%, transparent); }
@media (min-width: 900px) { .azk-filter-box__body .azakit-filter { grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr)); align-items: start; } }
