/* =====================================================================
   DM Medicine — Mağaza düzeltmeleri (26.10.2026, v1.0.8)
   Eklenti: dm-magaza-fix (otomatik yüklenir)
   ===================================================================== */

/* ------------------------------------------------------------------
   1) Trendyol / Hepsiburada mağaza butonları — logo + aralık
   Logo dosyaları: Medya kütüphanesine "hepsiburada-logo.png" ve
   "trendyol-logo.png" adıyla yükleyin; eklenti URL'leri otomatik bulur
   (--dm-logo-hb / --dm-logo-ty değişkenleri).
   ------------------------------------------------------------------ */
.wp-block-buttons .wp-block-button__link[href*="hepsiburada.com"],
.wp-block-buttons .wp-block-button__link[href*="trendyol.com"] {
	display: inline-flex;
	align-items: center;
	gap: 0.65rem;
	padding-inline: 1.1rem 1.4rem;
	background: #fff;
	color: #1d2b2a;
	border: 1px solid rgba(0, 0, 0, 0.08);
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.12);
	white-space: nowrap;
}

.wp-block-buttons .wp-block-button__link[href*="hepsiburada.com"]::before,
.wp-block-buttons .wp-block-button__link[href*="trendyol.com"]::before {
	content: "";
	display: inline-block;
	block-size: 22px;
	flex: 0 0 auto;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	border-inline-end: 1px solid rgba(0, 0, 0, 0.12);
	padding-inline-end: 0.65rem;
	box-sizing: content-box;
}

/* Logo kutuları markanın yatay oranına göre (wordmark) */
.wp-block-buttons .wp-block-button__link[href*="hepsiburada.com"]::before {
	inline-size: 118px;
	background-image: var(--dm-logo-hb, none);
}

.wp-block-buttons .wp-block-button__link[href*="trendyol.com"]::before {
	inline-size: 54px;
	background-image: var(--dm-logo-ty, none);
}


/* Üç buton birbirine yapışmasın */
.wp-block-buttons.is-content-justification-center {
	column-gap: 1rem;
	row-gap: 0.75rem;
}

/* ------------------------------------------------------------------
   2) Sabit (yüzen) sepet — sayfa kaydırılsa da sağ üstte
   Çıktı HTML'i dm-magaza-fix.js üretir.
   ------------------------------------------------------------------ */
.dm-float-cart {
	position: fixed;
	inset-block-start: 0.9rem;
	inset-inline-end: 0.9rem;
	z-index: 9999;
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	padding: 0.55rem 0.9rem 0.55rem 0.75rem;
	border-radius: 999px;
	background: var(--wp--preset--color--magaza-turuncu, #e08a3c);
	color: #fff;
	font-weight: 700;
	font-size: 0.9rem;
	line-height: 1;
	text-decoration: none;
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.22);
	transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.dm-float-cart:hover,
.dm-float-cart:focus-visible {
	color: #fff;
	transform: translateY(-1px);
	box-shadow: 0 8px 22px rgba(0, 0, 0, 0.28);
}

.dm-float-cart svg {
	inline-size: 20px;
	block-size: 20px;
	fill: none;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.dm-float-cart__count {
	display: inline-grid;
	place-items: center;
	min-inline-size: 1.4rem;
	block-size: 1.4rem;
	padding-inline: 0.3rem;
	border-radius: 999px;
	background: #fff;
	color: var(--wp--preset--color--magaza-orman, #0d3b2e);
	font-size: 0.75rem;
	font-weight: 800;
}

.dm-float-cart--bump {
	animation: dm-cart-bump 0.35s ease;
}

@keyframes dm-cart-bump {
	0% { transform: scale(1); }
	40% { transform: scale(1.15); }
	100% { transform: scale(1); }
}

/* Yönetici çubuğu açıkken (giriş yapmış kullanıcı) çubuğun altına in */
body.admin-bar .dm-float-cart {
	inset-block-start: calc(0.9rem + 32px);
}

@media (max-width: 782px) {
	body.admin-bar .dm-float-cart {
		inset-block-start: calc(0.6rem + 46px);
	}
}

/* Header'daki eski "Sepet" menü öğesi ile çift görünmesin */
.dm-header .wp-block-navigation-item__content[href*="/sepet"] {
	display: none;
}

/* ------------------------------------------------------------------
   3) Sepete eklenen ürün kartı — "Sepette" durumu
   ------------------------------------------------------------------ */
.woocommerce ul.products li.product .button.dm-in-cart,
.woocommerce ul.products li.product .button.added {
	background: var(--wp--preset--color--magaza-orman, #0d3b2e);
	color: #fff;
	border-color: transparent;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.4rem;
}

.woocommerce ul.products li.product .button.dm-in-cart::before,
.woocommerce ul.products li.product .button.added::before {
	content: "";
	inline-size: 14px;
	block-size: 14px;
	background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>") center/contain no-repeat;
}

/* WooCommerce'in eklediği "Sepeti görüntüle" bağlantısı */
.woocommerce ul.products li.product a.added_to_cart {
	display: block;
	margin-block-start: 0.4rem;
	font-size: 0.8rem;
	text-decoration: underline;
	color: var(--wp--preset--color--magaza-orman, #0d3b2e);
}

/* Kartta "Sepette" rozeti (görsel köşesi) */
li.product.dm-product-in-cart {
	position: relative;
}

li.product.dm-product-in-cart::after {
	content: "Sepette";
	position: absolute;
	inset-block-start: 0.6rem;
	inset-inline-start: 0.6rem;
	z-index: 2;
	padding: 0.2rem 0.55rem;
	border-radius: 999px;
	background: var(--wp--preset--color--magaza-orman, #0d3b2e);
	color: #fff;
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.02em;
}

/* ------------------------------------------------------------------
   4) Ürün görselleri — tam ortalı, tek tip kare alan, eşit kart boyu
   ------------------------------------------------------------------ */
.woocommerce ul.products li.product {
	display: flex;
	flex-direction: column;
}

.woocommerce ul.products li.product > a.woocommerce-loop-product__link:first-child {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
}

.woocommerce ul.products li.product a.woocommerce-loop-product__link img,
.woocommerce ul.products li.product .attachment-woocommerce_thumbnail {
	display: block;
	inline-size: 100%;
	aspect-ratio: 1 / 1;
	block-size: auto;
	object-fit: contain;
	object-position: center;
	background: #fff;
	padding: 6%;
	box-sizing: border-box;
	margin: 0 auto 0.75rem;
}

/* Görseli olmayan ürünlerdeki "Yer tutucu" da aynı kare alan */
.woocommerce ul.products li.product img.woocommerce-placeholder {
	object-fit: contain;
}

/* Başlık yüksekliği sınırlandırılsın: 3 satır + "…" */
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	line-height: 1.35;
	min-block-size: calc(1.35em * 3);
	max-block-size: calc(1.35em * 3);
}

/* Fiyat + buton bloğu her kartta en altta */
.woocommerce ul.products li.product > p:last-of-type {
	margin-block-start: auto;
	padding-block-start: 0.5rem;
}

.woocommerce ul.products li.product .button {
	inline-size: 100%;
	text-align: center;
}

/* ------------------------------------------------------------------
   5) TranslatePress yüzen dil seçici — içerikle çakışmasın
   ------------------------------------------------------------------ */
.trp-language-switcher.trp-floating-switcher {
	inset-block-start: auto !important;
	inset-block-end: 1rem !important;
	inset-inline-start: 1rem !important;
	inset-inline-end: auto !important;
	transform: scale(0.85);
	transform-origin: bottom left;
	opacity: 0.9;
}

/* ------------------------------------------------------------------
   6) Mobil optimizasyon
   ------------------------------------------------------------------ */
@media (max-width: 37.4375em) {

	/* Hero (koyu zemin grubu): mobilde 96px alt/üst boşluk fazla */
	.wp-block-cover,
	.dm-hero,
	main .wp-block-group.alignfull.is-style-koyu-zemin:has(.wp-block-buttons) {
		min-block-size: auto !important;
		padding-block: 2.75rem !important;
	}

	/* Butonlar tam genişlik, alt alta, eşit boşluk */
	.wp-block-buttons.is-content-justification-center {
		flex-direction: column;
		align-items: stretch;
		row-gap: 0.6rem;
	}

	.wp-block-buttons.is-content-justification-center .wp-block-button,
	.wp-block-buttons.is-content-justification-center .wp-block-button__link {
		inline-size: 100%;
		margin-block-start: 0 !important;
		justify-content: center;
		display: inline-flex;
	}

	/* Güven şeridi: 2 sütun, taşmasın */
	.has-magaza-metin-color.has-kucuk-font-size {
		font-size: 0.8rem;
	}

	/* Ürün grid: temanın 2 sütunlu grid'i korunur; kartlar eşit yükseklikte */
	.woocommerce ul.products li.product {
		margin: 0;
		min-inline-size: 0;
	}

	.woocommerce ul.products li.product .woocommerce-loop-product__title {
		font-size: 0.85rem;
		line-height: 1.3;
		min-block-size: calc(1.3em * 3);
		max-block-size: calc(1.3em * 3);
	}

	.woocommerce ul.products li.product .price {
		font-size: 0.95rem;
	}

	.woocommerce ul.products li.product .button {
		font-size: 0.8rem;
		padding-inline: 0.5rem;
	}

	/* Yüzen sepet: mobilde sağ altta (duyuru barıyla çakışmaz, başparmak erişimi) */
	.dm-float-cart,
	body.admin-bar .dm-float-cart {
		inset-block-start: auto;
		inset-block-end: 1rem;
		inset-inline-end: 0.9rem;
		padding: 0.65rem 0.8rem;
		font-size: 0.85rem;
	}

	.dm-float-cart__label {
		display: none;
	}

	/* Marka logo şeridi: taşma ve yatay kaydırma olmasın */
	html,
	body {
		overflow-x: hidden;
	}

	.dm-brand-strip img,
	.wp-block-group img[alt*="Foods"],
	.wp-block-group img[alt*="Brand Logo"] {
		max-block-size: 56px;
		inline-size: auto;
	}

	/* Sıralama / marka filtresi select'leri tam genişlik */
	.woocommerce .woocommerce-ordering select,
	.woocommerce form select {
		inline-size: 100%;
		max-inline-size: 100%;
	}
}

/* ------------------------------------------------------------------
   7) Ürün sayfası bilgi bloğu (kargo / teslimat / güvenli ödeme)
   ------------------------------------------------------------------ */
.dm-pinfo {
	margin-block: 1rem 1.25rem;
	padding: 0.85rem 1rem;
	border: 1px solid rgba(13, 59, 46, 0.14);
	border-radius: var(--wp--custom--radius--sm, 8px);
	background: rgba(13, 59, 46, 0.04);
	font-size: 0.9rem;
	line-height: 1.45;
}

.dm-pinfo__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 0.5rem;
}

.dm-pinfo__list li {
	display: flex;
	align-items: flex-start;
	gap: 0.6rem;
	margin: 0;
}

.dm-pinfo__list svg {
	flex: 0 0 20px;
	inline-size: 20px;
	block-size: 20px;
	margin-block-start: 0.1rem;
	fill: none;
	stroke: var(--wp--preset--color--magaza-orman, #0d3b2e);
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.dm-pinfo .woocommerce-Price-amount {
	font-weight: 700;
}

@media (max-width: 37.4375em) {
	.dm-pinfo {
		font-size: 0.85rem;
		padding: 0.75rem 0.85rem;
	}
}

/* ------------------------------------------------------------------
   Fiyat gösterimi: liste fiyatı çizili + %15 rozeti + kart fiyatı
   ------------------------------------------------------------------ */
.dm-price {
	display: inline-flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.15rem;
	line-height: 1.2;
}

.dm-price__top {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
}

.dm-price del {
	opacity: 0.6;
	font-size: 0.85em;
	font-weight: 400;
	text-decoration: line-through;
}

.dm-price del .amount {
	color: inherit;
}

.dm-price__badge {
	display: inline-block;
	padding: 0.1rem 0.4rem;
	border-radius: 4px;
	background: #d93025;
	color: #fff;
	font-size: 0.7rem;
	font-weight: 800;
	letter-spacing: 0.02em;
}

.dm-price__now,
.dm-price__now .amount {
	text-decoration: none;
	font-weight: 800;
	font-size: 1.05em;
	color: var(--wp--preset--color--magaza-orman, #0d3b2e);
}

.dm-price__note {
	font-size: 0.7rem;
	font-weight: 500;
	opacity: 0.75;
}

.woocommerce ul.products li.product .price .dm-price,
.woocommerce div.product p.price .dm-price {
	margin-block-end: 0.35rem;
}

.woocommerce div.product p.price .dm-price__now,
.woocommerce div.product p.price .dm-price__now .amount {
	font-size: 1.5rem;
}

/* ------------------------------------------------------------------
   WhatsApp destek butonu
   ------------------------------------------------------------------ */
.dm-wa {
	position: fixed;
	inset-block-end: 1.25rem;
	inset-inline-end: 1.25rem;
	z-index: 9998;
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	padding: 0.6rem 1rem 0.6rem 0.7rem;
	border-radius: 999px;
	background: #25d366;
	color: #fff;
	font-weight: 700;
	font-size: 0.9rem;
	line-height: 1;
	text-decoration: none;
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.22);
	transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.dm-wa:hover,
.dm-wa:focus-visible {
	color: #fff;
	transform: translateY(-1px);
	box-shadow: 0 8px 22px rgba(0, 0, 0, 0.28);
}

.dm-wa svg {
	inline-size: 26px;
	block-size: 26px;
	fill: currentColor;
	flex: 0 0 26px;
}

@media (max-width: 37.4375em) {
	/* Mobilde sepet sağ altta; WhatsApp onun üstünde, yalnızca ikon */
	.dm-wa {
		inset-block-end: 4.6rem;
		inset-inline-end: 0.9rem;
		padding: 0.55rem;
	}

	.dm-wa__label {
		display: none;
	}
}

/* ------------------------------------------------------------------
   Sonsuz kaydırma
   ------------------------------------------------------------------ */
.dm-infinite {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.5rem;
	padding: 1.5rem 0 2rem;
	text-align: center;
}

.dm-infinite__btn {
	padding: 0.7rem 1.4rem;
	border: 2px solid var(--wp--preset--color--magaza-orman, #0d3b2e);
	border-radius: 999px;
	background: #fff;
	color: var(--wp--preset--color--magaza-orman, #0d3b2e);
	font-weight: 700;
	cursor: pointer;
}

.dm-infinite__btn:disabled {
	opacity: 0.6;
	cursor: wait;
}

.dm-infinite__status {
	font-size: 0.85rem;
	opacity: 0.75;
}

/* ------------------------------------------------------------------
   Güven şeridi: Visa / Mastercard görseli ortada
   ------------------------------------------------------------------ */
.wp-block-group.is-layout-grid > figure.wp-block-image:has(img.wp-image-1478) {
	grid-column: 1 / -1;
	justify-self: center;
	text-align: center;
	margin-inline: auto;
}

figure.wp-block-image img.wp-image-1478 {
	display: block;
	margin: 0.5rem auto 0;
	max-inline-size: 420px;
	inline-size: 100%;
	block-size: auto;
}

@media (max-width: 37.4375em) {
	figure.wp-block-image img.wp-image-1478 {
		max-inline-size: 260px;
	}
}

/* =====================================================================
   20) Anahtar kelimeler (ürün detay)
   ===================================================================== */
.dm-keywords {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.4rem;
	margin: 0.9rem 0 0.25rem;
	font-size: 0.85rem;
}
.dm-keywords__label {
	color: #6b7280;
	margin-inline-end: 0.15rem;
}
.dm-keywords__chip {
	display: inline-block;
	padding: 0.22rem 0.65rem;
	border: 1px solid #d1d5db;
	border-radius: 999px;
	background: #f9fafb;
	color: #1f2937;
	text-decoration: none;
	line-height: 1.3;
}
.dm-keywords__chip:hover,
.dm-keywords__chip:focus-visible {
	border-color: #2563eb;
	color: #1d4ed8;
	background: #eff6ff;
}
/* WooCommerce meta bloğundaki "Etiketler:" satırı çiplerle çift olmasın */
.product_meta .tagged_as { display: none; }

/* =====================================================================
   22-23) Stokta yok · Son N adet · [−] adet [+] kontrolü
   ===================================================================== */
.woocommerce ul.products li.product { position: relative; }

.woocommerce ul.products li.product .button.dm-oos {
	background: #fdecec;
	color: #c62828;
	border: 1px solid #f5c2c2;
	cursor: default;
	pointer-events: none;
}

.woocommerce ul.products li.product .dm-last {
	position: absolute;
	inset-block-start: 0.6rem;
	inset-inline-end: 0.6rem;
	z-index: 2;
	padding: 0.2rem 0.55rem;
	border-radius: 999px;
	background: #d93025;
	color: #fff;
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.02em;
}

.woocommerce ul.products li.product .add_to_cart_button.dm-hidden { display: none !important; }

.woocommerce ul.products li.product .dm-qty {
	display: inline-flex;
	align-items: stretch;
	margin-block-start: 0.5rem;
	border: 2px solid var(--wp--preset--color--magaza-orman, #0d3b2e);
	border-radius: 999px;
	overflow: hidden;
	background: #fff;
	min-inline-size: 7.5rem;
}
.woocommerce ul.products li.product .dm-qty__btn {
	appearance: none;
	border: 0;
	background: var(--wp--preset--color--magaza-orman, #0d3b2e);
	color: #fff;
	font-size: 1.15rem;
	font-weight: 700;
	line-height: 1;
	inline-size: 2.4rem;
	min-block-size: 2.4rem;
	cursor: pointer;
	padding: 0;
	margin: 0;
	border-radius: 0;
}
.woocommerce ul.products li.product .dm-qty__btn:hover { filter: brightness(1.15); }
.woocommerce ul.products li.product .dm-qty__btn:disabled {
	background: #c8ccc9;
	cursor: not-allowed;
	filter: none;
}
.woocommerce ul.products li.product .dm-qty__n {
	flex: 1 1 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-inline-size: 2.6rem;
	padding: 0 0.5rem;
	font-weight: 700;
	font-size: 1rem;
	color: var(--wp--preset--color--magaza-orman, #0d3b2e);
}
.woocommerce ul.products li.product .dm-qty--busy { opacity: 0.6; pointer-events: none; }
