/*
Theme Name: ÇiçekEvi
Theme URI: https://cicekci.test
Author: ÇiçekEvi
Author URI: https://cicekci.test
Description: Çiçekçi dükkanı için çiçeksepeti.com görünümünde özel WooCommerce teması.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: cicekevi
Tags: e-commerce, woocommerce
*/

/* =========================================================
   ÖLÇÜ EŞLEŞTİRİLMİŞ YEDEK FONT (EMNİYET AĞI)
   Poppins artık TEMADAN sunulup preload edildiği için normalde swap hiç
   yaşanmaz (bkz. cicekevi_font_preload). Bu tanım yalnız font dosyaları
   herhangi bir sebeple gelmezse devreye girer.

   Poppins yedeklerden geniş olduğu için ölçü eşleştirmesi olmadan geçiş
   anında header yeniden akıyordu (ölçüldü: arama 509→473, Hesabım
   211→227, Sepetim 128→134 px; toplam ~59 px).

   Çözüm: yedek font, Poppins'in ölçülerine ayarlanmış bir @font-face ile
   yerel Arial'dan türetilir. size-adjust genişlik farkını (Poppins/Arial
   = 1.066; gerçek DOM ölçümü) kapatır;
   ascent/descent/line-gap Poppins'in metriklerine
   (1050/350/100, unitsPerEm 1000) eşitlenir — size-adjust ölçeklemesi
   sonrası doğru çıksın diye orana bölünmüş değerler yazılır.
   Yerel Arial bulunmayan sistemde bu tanım devre dışı kalır ve yığındaki
   sonraki font kullanılır — davranış eskisi gibi olur, kırılma yok.
   ========================================================= */
@font-face {
	font-family: "Poppins Fallback";
	src: local("Arial");
	size-adjust: 106.6%;
	ascent-override: 98.5%;
	descent-override: 32.83%;
	line-gap-override: 9.38%;
}

:root {
	/* Site genelinde tek ortak içerik genişliği — buradan değiştirilir. */
	--ce-container-width: 1500px;
	--ce-container-pad: 18px;
	--ce-green: #12a150;
	--ce-green-dark: #0d7d3e;
	--ce-green-light: #e7f6ee;
	/* Header üst şeridi ve "Tüm Kategoriler" butonu. Bu üç değer YALNIZ
	   yedektir: çalışma anında ÇiçekEvi > Genel > Marka Rengi'nden
	   türetilip ezilir (cicekevi_brand_color_css). */
	--ce-green-deep: #0f6135;
	--ce-green-chip: #2f8f57;
	--ce-text: #2d2d2d;
	--ce-muted: #757575;
	--ce-border: #e5e5e5;
	--ce-bg: #ffffff;
	--ce-bg-soft: #f7f7f7;
	--ce-star: #f4af11;
	--ce-danger: #e0234e;
	--ce-radius: 8px;
	--ce-shadow: 0 2px 10px rgba(0, 0, 0, 0.06);
	/* "Poppins Fallback": ölçüsü Poppins'e eşitlenmiş yerel yedek (yukarıda) —
	   font yüklenirken metin genişlikleri değişmez, düzen zıplamaz. */
	--ce-font: "Poppins", "Poppins Fallback", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

/* ---------- Reset / base ---------- */
*,
*::before,
*::after {
	box-sizing: border-box;
}

/* DİKEY KAYDIRMA ÇUBUĞU YERİ BAŞTAN AYRILIR.
   Sayfa ilk boyandığında gövde henüz kısa olabiliyor; çubuk yokken görüntü
   alanı 1400px, içerik gelip sayfa uzayınca çubuk çıkıyor ve alan 1385px'e
   düşüyordu. Bu 15px'lik daralma header'ın SAĞA yaslı her öğesini bir anda
   kaydırıyor, arama kutusunu daraltıyordu (kare kare ölçüldü: sepet kartı
   1248→1233, arama 488→473). Gutter baştan ayrılınca genişlik ilk kareden
   itibaren nihai değerinde olur, kayma olmaz.
   Üstü kaplayan (overlay) çubuk kullanan cihazlarda gutter 0'dır — mobil
   görünüm etkilenmez. */
html {
	scrollbar-gutter: stable;
}

/* Mobil dokunma vurgusu: dokununca çıkan mavi/gri flash tüm sitede kapalı
   (öğelerin kendi hover/aktif/seçili stilleri etkilenmez) */
* {
	-webkit-tap-highlight-color: transparent;
}

/* Dokunma/fare odağında mavi outline görünmesin; KLAVYE ile gezinen
   kullanıcı için :focus-visible ince yeşil odak göstergesi kalır
   (erişilebilirlik korunur) */
a:focus:not(:focus-visible),
button:focus:not(:focus-visible),
[role="button"]:focus:not(:focus-visible) {
	outline: none;
}

a:focus-visible,
button:focus-visible,
[role="button"]:focus-visible {
	outline: 2px solid var(--ce-green);
	outline-offset: 2px;
}

body {
	margin: 0;
	font-family: var(--ce-font);
	font-size: 14.5px;
	line-height: 1.6;
	color: var(--ce-text);
	background: var(--ce-bg);
}

/* Tüm form öğeleri ve başlıklar site fontunu kullanır */
input,
select,
textarea,
button {
	font-family: inherit;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: var(--ce-font);
	font-weight: 700;
}

img {
	max-width: 100%;
	height: auto;
}

a {
	color: inherit;
	text-decoration: none;
}

a:hover {
	color: var(--ce-green);
}

button {
	font-family: inherit;
	cursor: pointer;
}

.ce-container {
	max-width: var(--ce-container-width);
	margin: 0 auto;
	padding: 0 var(--ce-container-pad);
}

[hidden] {
	display: none !important;
}

/* ============================================================
   MOBİL BOŞLUK STANDARDI (≤768px): tek değer --ce-gap yönetir.
   Yan boşluk, bölümler arası dikey boşluk ve öğeler arası yatay
   boşluk hep bu değerden türer. Değiştirmek için sadece --ce-gap.
   (Kategori daireleri aralığı bilinçli olarak hariç.)
   ============================================================ */
@media (max-width: 768px) {
	:root {
		--ce-gap: 10px;
		--ce-container-pad: var(--ce-gap);
	}

	/* Yan boşluk: tüm sayfalardaki ortak konteynır */
	.ce-container {
		padding-left: var(--ce-container-pad) !important;
		padding-right: var(--ce-container-pad) !important;
	}

	/* Öğeler arası YATAY boşluklar */
	.ce-bannergrid {
		gap: var(--ce-gap) !important;
	}

	.ce-shelf__track {
		--ce-card-gap: var(--ce-gap);
	}

	.ce-product {
		gap: var(--ce-gap);
	}

	/* WooCommerce arşiv/kategori kartları: 2 sütun, 10px aralık */
	.woocommerce ul.products,
	.woocommerce-page ul.products {
		display: grid !important;
		grid-template-columns: repeat(2, 1fr);
		gap: var(--ce-gap) !important;
		margin: 0 0 var(--ce-gap) !important;
	}

	/* WooCommerce clearfix pseudo'ları grid hücresi işgal etmesin */
	.woocommerce ul.products::before,
	.woocommerce ul.products::after,
	.woocommerce-page ul.products::before,
	.woocommerce-page ul.products::after {
		display: none !important;
	}

	.woocommerce ul.products li.product,
	.woocommerce-page ul.products li.product {
		width: auto !important;
		margin: 0 !important;
		float: none !important;
	}

	/* Bölümlerin DİKEY (üst/alt) boşlukları */
	.ce-main {
		padding-top: var(--ce-gap);
		padding-bottom: calc(var(--ce-gap) * 3);
	}

	.ce-main--home .elementor-section {
		padding-top: var(--ce-gap) !important;
		padding-bottom: var(--ce-gap) !important;
	}

	.ce-footer {
		margin-top: var(--ce-gap);
	}

	.ce-product-extra {
		margin-top: calc(var(--ce-gap) * 2);
	}

	.ce-related {
		margin-top: calc(var(--ce-gap) * 2);
	}
}

.screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
	word-wrap: normal !important;
}

/* ---------- Üst bar (açık yeşil) ---------- */
.ce-topbar {
	background: #ddf2e6;
	font-size: 13px;
}

/* Üç bölgeli, ortası SABİT merkezli düzen: sol yazı / orta indirim / sağ
   linkler. 1fr-auto-1fr grid'inde yan sütunlar ne kadar genişlerse
   genişlesin orta öğe her zaman şeridin gerçek ortasında kalır. */
.ce-topbar__inner {
	max-width: var(--ce-container-width);
	margin: 0 auto;
	padding: 0 var(--ce-container-pad);
	min-height: 60px;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
	align-items: center;
	gap: 16px;
}

/* Sütunlar açıkça atanır: sol öğe yokken bile orta merkezden şaşmaz */
.ce-topbar__script {
	grid-column: 1;
	justify-self: start;
	max-width: 100%;
}

.ce-topbar__promo {
	grid-column: 2;
}

.ce-topbar__links {
	grid-column: 3;
	justify-self: end;
}

/* Sol sekmeler */
.ce-topbar__tabs {
	display: flex;
	align-items: stretch;
	gap: 8px;
	align-self: flex-end;
}

.ce-tab {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 1px;
	padding: 6px 16px;
	border-radius: 8px 8px 0 0;
	line-height: 1.2;
}

.ce-tab--active {
	background: #fff;
}

.ce-tab__name {
	color: var(--ce-green);
	font-weight: 800;
	font-size: 15px;
}

.ce-tab__sub {
	color: var(--ce-muted);
	font-size: 10px;
	white-space: nowrap;
}

.ce-tab--gift {
	background: #ffedd9;
	color: #f4813f;
	font-weight: 800;
	font-size: 14px;
	border-radius: 8px;
	margin: 7px 0;
	padding: 6px 16px;
	justify-content: center;
}

.ce-tab--gift:hover {
	color: #e06a24;
}

/* Orta: indirim metni */
.ce-topbar__promo {
	color: #1c5c38;
	font-size: 14px;
	font-weight: 600;
	text-align: center;
	white-space: nowrap;
}

.ce-topbar__promo strong {
	font-weight: 800;
}

.ce-topbar__code {
	display: inline-block;
	background: #c2e6d2;
	color: #14532d;
	font-weight: 800;
	font-size: 12.5px;
	border-radius: 12px;
	padding: 3px 10px;
	margin-left: 8px;
}

/* Sağ linkler */
.ce-topbar__links {
	display: flex;
	align-items: center;
	gap: 22px;
	white-space: nowrap;
}

.ce-topbar__links a {
	color: #33413a;
	font-size: 13px;
}

.ce-topbar__links a:hover {
	color: var(--ce-green);
}

/* Sosyal ikonlar: marka yeşili, hover'da koyulaşır; İletişim ile aralarında
   grubun 22px'lik dış boşluğu var (ikonlar arası 12px) */
.ce-topbar__social {
	display: flex;
	align-items: center;
	gap: 12px;
}

.ce-topbar__social a {
	display: flex;
	align-items: center;
	color: var(--ce-green);
	transition: color 0.15s;
}

.ce-topbar__social a:hover {
	color: var(--ce-green-dark);
}

.ce-topbar__social svg {
	width: 16px;
	height: 16px;
	fill: currentColor;
	display: block;
}

/* ---------- Main header ---------- */
.ce-header {
	background: #fff;
	border-bottom: 1px solid var(--ce-border);
}

.ce-header__inner {
	display: flex;
	align-items: center;
	gap: 24px;
	padding: 14px var(--ce-container-pad);
	max-width: var(--ce-container-width);
	margin: 0 auto;
}

.ce-logo {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 26px;
	font-weight: 800;
	color: var(--ce-green);
	line-height: 1;
}

.ce-logo:hover {
	color: var(--ce-green-dark);
}

.ce-logo svg {
	width: 30px;
	height: 30px;
	fill: var(--ce-green);
}

.ce-logo .custom-logo {
	max-height: 44px;
	width: auto;
}

/* Arama: geniş, hafif yuvarlak köşeli, sağda yeşil kare buton */
.ce-search {
	flex: 1;
	min-width: 0;
	max-width: 640px;
	margin: 0 auto;
}

.ce-search form {
	display: flex;
	position: relative;
}

.ce-search input[type="search"] {
	width: 100%;
	border: 1px solid #cfcfcf;
	border-radius: 8px;
	padding: 12px 60px 12px 16px;
	font-size: 14px;
	outline: none;
	color: var(--ce-text);
}

.ce-search input[type="search"]:focus {
	border-color: var(--ce-green);
}

.ce-search button {
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	width: 50px;
	border: 0;
	border-radius: 0 8px 8px 0;
	background: var(--ce-green);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
}

.ce-search button:hover {
	background: var(--ce-green-dark);
}

.ce-search button svg {
	width: 20px;
	height: 20px;
	fill: #fff;
}

/* Sağ aksiyonlar: ikon + yazı yan yana, sonda yeşil sepet butonu */
.ce-actions {
	display: flex;
	align-items: center;
	gap: 24px;
	flex-shrink: 0;
}

.ce-action {
	display: flex;
	align-items: center;
	gap: 7px;
	font-size: 14px;
	font-weight: 500;
	color: var(--ce-text);
}

.ce-action svg {
	width: 22px;
	height: 22px;
	fill: none;
	stroke: var(--ce-text);
	stroke-width: 1.7;
	flex-shrink: 0;
}

.ce-action__caret {
	width: 14px !important;
	height: 14px !important;
	margin-left: -2px;
}

.ce-action:hover {
	color: var(--ce-green);
}

.ce-action:hover svg {
	stroke: var(--ce-green);
}

.ce-cart-btn {
	position: relative;
	width: 48px;
	height: 48px;
	background: var(--ce-green);
	border-radius: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background 0.15s;
}

.ce-cart-btn:hover {
	background: var(--ce-green-dark);
}

.ce-cart-btn svg {
	width: 24px;
	height: 24px;
	fill: none;
	stroke: #fff;
	stroke-width: 1.8;
}

/* Adet rozeti — TEK tanım (masaüstü + mobil aynı). Çanta ikonunun SAĞ ÜST
   dış köşesine oturur; çapa ikon sarmalayıcısıdır (.ce-cart-btn__ico,
   position: relative — aşağıda, medya sorgusu DIŞINDA), buton değil.

   box-sizing: border-box ZORUNLU: content-box + border ile kutu, verilen
   height/min-width'in ÜSTÜNE çerçeve ve dolgu ekleyip şişiyordu (26px ikonun
   üstünde 34x24'lük rozet → ikon gövdesinin ortasını kapatıyordu). Ayırıcı
   beyaz halka artık border yerine box-shadow: kutu ölçüsünü DEĞİŞTİRMEZ,
   dolayısıyla konum hesabı bozulmaz.

   min-width = height → tek hane ve 0'da tam yuvarlak; çift hane (12) dolgu
   kadar genişleyip hap biçimini alır, rakam her hâlde ortalı kalır.

   Konum ve ölçü DEĞİŞKENDEN gelir: masaüstü değerleri burada, mobil
   ayarı (≤900px) tek yerden ezer — kural gövdesi kopyalanmaz. */
.ce-cart-btn {
	--ce-badge-size: 18px;
	--ce-badge-top: -8px;
	--ce-badge-right: -8px;
}

.ce-cart-btn .cart-count {
	position: absolute;
	top: var(--ce-badge-top);
	right: var(--ce-badge-right);
	box-sizing: border-box;
	min-width: var(--ce-badge-size);
	height: var(--ce-badge-size);
	padding: 0 5px;
	background: var(--ce-sale, #e0234e);
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
	border: 0;
	border-radius: 999px;
	box-shadow: 0 0 0 2px #fff;
	display: flex;
	align-items: center;
	justify-content: center;
}

/* Rozetin çapası: ikon sarmalayıcı. Mobilde de geçerli olsun diye medya
   sorgusunun dışında — aksi hâlde rozet 48px'lik butona göre konumlanıp
   ikonun üstüne kayıyordu. */
.ce-cart-btn__ico {
	position: relative;
	display: flex;
}

/* ---------- Category nav ---------- */
.ce-nav {
	/* Menü ritmi TEK KAYNAK: ikon kutusu ve ikon-metin arası boşluk yalnız
	   bu iki değişkenden gelir. Sığdırma kademeleri (is-smallico) ve dar
	   ekran ayarları değeri EZER; hiçbir kuralda sabit piksel yazılmaz. */
	--ce-nav-ico-size: 19px;
	--ce-nav-ico-gap: 7px;

	background: #fff;
	border-bottom: 1px solid var(--ce-border);
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.03);
}

/* Üst şerit UL'i (yalnızca doğrudan çocuk — sub-menu UL'leri bu kuralları
   ALMAZ). overflow: visible şart: açılır panel şeridin dışına taşar. */
.ce-nav > ul {
	list-style: none;
	margin: 0 auto;
	padding: 0 var(--ce-container-pad);
	max-width: var(--ce-container-width);
	display: flex;
	justify-content: center;
	gap: 0;
	overflow: visible;
}

.ce-nav li {
	flex-shrink: 0;
	display: flex;
	align-items: center;
}

/* Menü öğesi ikonu (Görünüm > Menüler > öğe > İkon).

   SABİT KARE KUTU: hangi ikon seçilirse seçilsin öğe aynı genişlikte
   yer kaplar — dar bir SVG (saat) ile geniş bir SVG (yüzde) metni farklı
   itmez. SVG kutuyu tamamen doldurur, tüm ikonlar 24x24 viewBox normunda.

   İKON-METİN BOŞLUĞU BURADA DEĞİL: aralığı bağlantının kendi `gap`ı verir
   (aşağıda). İkonda ayrıca margin olsaydı, alt menüsü olan öğelerde
   gap + margin üst üste binip boşluk iki katına çıkardı — kayma buydu.

   Ölçü medya sorgusuna bırakılmaz: 901px altındaki dar masaüstü/tablet
   penceresinde SVG varsayılan 300x150 boyutuna düşerdi. */
.ce-nav__ico {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: var(--ce-nav-ico-size);
	height: var(--ce-nav-ico-size);
}

.ce-nav__ico svg {
	width: 100%;
	height: 100%;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.5;
	stroke-linecap: round;
	stroke-linejoin: round;
}

/* Ayraç çizgiler yalnız üst şeritte */
.ce-nav > ul > li + li::before {
	content: "";
	width: 1px;
	height: 16px;
	background: #ececec;
}

.ce-nav a {
	display: block;
	padding: 11px 18px;
	font-size: 14.5px;
	font-weight: 500;
	color: var(--ce-text);
	white-space: nowrap;
}

/* Üst şerit bağlantısı: ikonlu da ikonsuz da AYNI kutu ve aynı ritim.
   Dolgu tüm öğelerde eşittir (yukarıdaki .ce-nav a) — ikon eklemek öğenin
   DIŞ boşluğunu değiştirmez, yalnız içeride tek bir gap açar. Alt menüsü
   olan öğelerde ok da aynı gap'i kullanır (tek değer, tek yer). */
.ce-nav > ul > li > a,
.ce-nav > .ce-nav-sale--pinned > a {
	display: flex;
	align-items: center;
	gap: var(--ce-nav-ico-gap);
}

.ce-nav a:hover,
.ce-nav .current-menu-item > a {
	/* Alt nav vurgusu da birincil aileden (buton hover'ıyla tutarlı). */
	color: var(--ce-primary, #12a150);
}

/* ---------- Açılır alt menü (masaüstü; mobilde .ce-nav zaten gizli) ---------- */
.ce-nav li.menu-item-has-children {
	position: relative;
}

.ce-nav .sub-menu {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 500;
	min-width: 230px;
	margin: 0;
	padding: 8px 0;
	list-style: none;
	background: #fff;
	border: 1px solid var(--ce-border);
	border-radius: 0 0 10px 10px;
	box-shadow: 0 12px 26px rgba(0, 0, 0, 0.1);
}

/* Hover VE tıklamayla (is-open) açılır */
.ce-nav li:hover > .sub-menu,
.ce-nav li:focus-within > .sub-menu {
	display: block;
}

.ce-nav .sub-menu li {
	display: block;
	position: relative;
}

.ce-nav .sub-menu li::before {
	display: none;
}

.ce-nav .sub-menu a {
	display: block;
	padding: 9px 18px;
	font-size: 13.5px;
	color: var(--ce-text);
}

.ce-nav .sub-menu a:hover {
	color: var(--ce-green);
	background: #f2faf6;
}

/* Torun seviyesi (ileride): sağa doğru açılır */
.ce-nav .sub-menu .sub-menu {
	top: -9px;
	left: 100%;
	border-radius: 10px;
}

/* ---------- Kategori / ürün arşivi sayfası ---------- */
.ce-archive .woocommerce-breadcrumb {
	font-size: 13px;
	color: var(--ce-muted);
	margin: 0 0 14px;
}

.ce-archive .woocommerce-breadcrumb a {
	color: var(--ce-muted);
}

.ce-archive .woocommerce-breadcrumb a:hover {
	color: var(--ce-green);
}

.ce-archive__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 12px 16px;
	margin-bottom: 6px;
}

.ce-archive__title {
	font-size: 24px;
	font-weight: 800;
	color: var(--ce-text);
	margin: 0;
}

.ce-archive .woocommerce-ordering {
	margin: 0;
}

.ce-archive .woocommerce-ordering select {
	border: 1px solid var(--ce-border);
	border-radius: 8px;
	padding: 9px 12px;
	font-family: inherit;
	font-size: 13.5px;
	color: var(--ce-text);
	background: #fff;
	outline: none;
	cursor: pointer;
}

.ce-archive .woocommerce-ordering select:focus {
	border-color: var(--ce-green);
}

.ce-archive__desc {
	font-size: 14px;
	color: var(--ce-muted);
	line-height: 1.6;
	margin: 0 0 6px;
}

/* --- Arşiv üst bölgesi: konum çubuğu + güven rozetleri --- */
.ce-arctop {
	display: flex;
	/* Konum paneli ile rozet paneli birbirine göre dikeyde ortalı */
	align-items: center;
	gap: 14px;
	margin: 10px 0 18px;
}

.ce-arctop__loc {
	flex: 1;
	min-width: 0;
	display: flex;
	/* Bayrak etiketi + konum çubuğu panelin içinde dikeyde ortalı */
	align-items: center;
	gap: 0;
	background: #fbf7f0;
	border: 1px solid #f3e8d8;
	border-radius: 12px;
	padding: 12px;
}

/* "BURADAN BAŞLAYIN" bayrak etiketi (sağa ok biçimli) */
.ce-arctop__flag {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	background: var(--ce-green);
	color: #fff;
	font-size: 12px;
	font-weight: 800;
	line-height: 1.25;
	padding: 8px 20px 8px 12px;
	max-width: 110px;
	clip-path: polygon(0 0, calc(100% - 12px) 0, 100% 50%, calc(100% - 12px) 100%, 0 100%);
	border-radius: 8px 0 0 8px;
	margin-right: 8px;
}

.ce-arctop__locwidget {
	flex: 1;
	min-width: 0;
	justify-content: center;
}

/* Adres seçiliyken .ce-locwrap içi boşalır (kutu/panel/sheet gizli) ama
   sütun flex'in 12px gap'i ölü alan bırakıp yeşil çubuğu aşağı itiyordu.
   Boş sarmalayıcı akıştan çıkarılır. Yalnız masaüstü: mobilde çubuk gizli,
   görünen öğe .ce-locwrap içindeki sheet düğmesidir. */
@media (min-width: 769px) {
	.ce-arctop__locwidget:has(> .ce-locbar:not([hidden])) > .ce-locwrap {
		display: none;
	}
}

/* Güven rozetleri kutusu (krem zemin) */
.ce-arctop__badges {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	gap: 22px;
	background: #fbf7f0;
	border: 1px solid #f3e8d8;
	border-radius: 12px;
	padding: 12px 22px;
}

.ce-arctop__badge {
	display: flex;
	align-items: center;
	gap: 9px;
	font-size: 12.5px;
	font-weight: 600;
	color: var(--ce-text);
	line-height: 1.3;
	max-width: 150px;
}

.ce-arctop__badge-icon {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #fff;
}

.ce-arctop__badge-icon svg {
	width: 20px;
	height: 20px;
	stroke: #e8833a;
	stroke-width: 1.7;
	fill: none;
}

/* Teslimat bölgesi uyarı şeridi: konum kartının DIŞINDA, üst bölüm ile
   filtre satırı arasında. Boşken hiç yer kaplamaz. */
.ce-arctop__notice:empty {
	display: none;
}

.ce-arctop__notice {
	margin: 0 0 16px;
}

/* Kutu kendi üst boşluğunu şeritten alır (kart içindeyken 10px'ti). */
.ce-arctop__notice .ce-validate-msg,
.ce-arctop__notice .ce-zonefee {
	margin-top: 0;
}

.ce-arctop__cats {
	margin: 0 0 14px;
}

/* --- Filtre çubuğu --- */
.ce-filterbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	margin: 0 0 30px;
}

.ce-filterbar__chips {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
	min-width: 0;
}

.ce-filterbar__chip {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: #fff;
	border: 1px solid var(--ce-border);
	border-radius: 999px;
	padding: 9px 14px;
	font-family: inherit;
	font-size: 13px;
	font-weight: 600;
	color: var(--ce-text);
	cursor: pointer;
	white-space: nowrap;
	transition: border-color 0.15s, color 0.15s;
}

.ce-filterbar__chip:hover {
	border-color: var(--ce-green);
	color: var(--ce-green);
}

.ce-filterbar__chip svg {
	width: 14px;
	height: 14px;
	stroke: currentColor;
	stroke-width: 1.8;
	fill: none;
	flex-shrink: 0;
}

.ce-filterbar__chip--accent {
	color: var(--ce-green);
	border-color: #cdebdb;
}

@media (max-width: 900px) {
	/* Rozetler dar ekranda gizlenir; konum tam genişlik */
	.ce-arctop__badges {
		display: none;
	}
}

@media (max-width: 768px) {
	.ce-arctop {
		margin: 6px 0 12px;
	}

	.ce-arctop__loc {
		padding: 8px;
	}

	.ce-arctop__flag {
		font-size: 10.5px;
		padding: 6px 16px 6px 10px;
		max-width: 92px;
	}

	/* Filtre çubuğu: yatay kaydırılabilir tek satır */
	.ce-filterbar {
		flex-wrap: wrap;
	}

	.ce-filterbar__chips {
		flex-wrap: nowrap;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
		max-width: 100%;
		padding-bottom: 2px;
	}

	.ce-filterbar__chips::-webkit-scrollbar {
		display: none;
	}
}

/* --- İşlevsel filtre çubuğu: dropdown, seçili çipler, çekmece --- */
.ce-flt {
	position: relative;
}

.ce-flt__btn.is-active,
.ce-flt-flag.is-active {
	border-color: var(--ce-green);
	color: var(--ce-green);
	background: #eefaf3;
}

.ce-flt__badge {
	min-width: 18px;
	height: 18px;
	border-radius: 999px;
	background: var(--ce-green);
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0 5px;
}

.ce-flt__panel {
	position: absolute;
	top: calc(100% + 8px);
	left: 0;
	z-index: 60;
	min-width: 230px;
	max-height: 320px;
	overflow: auto;
	background: #fff;
	border: 1px solid var(--ce-border);
	border-radius: 12px;
	box-shadow: 0 14px 34px rgba(0, 0, 0, 0.13);
	padding: 8px;
	display: none;
}

.ce-flt.is-open .ce-flt__panel {
	display: block;
}

/* Fiyat filtresi: En az / En fazla + Uygula (çubuk paneli, çekmece ve mobil
   panelde aynı bileşen) */
.ce-flt__panel--price {
	min-width: 268px;
	overflow: visible;
}

.ce-fltprice {
	padding: 4px 2px 2px;
}

.ce-fltprice__row {
	display: flex;
	align-items: center;
	gap: 8px;
}

.ce-fltprice__input {
	flex: 1 1 0;
	min-width: 0;
	width: 100%;
	box-sizing: border-box;
	border: 1px solid #dcdfe3;
	border-radius: 9px;
	padding: 10px 11px;
	font: 400 13.5px/1.3 var(--ce-font);
	color: var(--ce-text);
	background: #fff;
	-moz-appearance: textfield;
}

.ce-fltprice__input::-webkit-outer-spin-button,
.ce-fltprice__input::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.ce-fltprice__input::placeholder {
	color: #9aa0a6;
}

.ce-fltprice__input:focus {
	outline: none;
	border-color: var(--ce-green);
}

.ce-fltprice__sep {
	flex: 0 0 auto;
	color: var(--ce-muted);
	font-size: 14px;
}

.ce-fltprice__foot {
	display: flex;
	justify-content: flex-end;
	margin-top: 12px;
}

.ce-fltprice__apply {
	border: 0;
	border-radius: 9px;
	background: var(--ce-green);
	color: #fff;
	font: 600 13px/1.2 var(--ce-font);
	padding: 10px 20px;
	transition: background 0.15s ease;
}

.ce-fltprice__apply:hover {
	background: var(--ce-green-dark);
}

/* Mobil panelde form gövde iç boşluğuyla hizalanır */
.ce-mfp__group--price .ce-fltprice {
	padding: 14px;
}

.ce-mfp__search[hidden] {
	display: none;
}

.ce-flt__opt {
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 8px 9px;
	border-radius: 8px;
	font-size: 13px;
	font-weight: 500;
	cursor: pointer;
	white-space: nowrap;
}

.ce-flt__opt:hover {
	background: #f4faf6;
}

.ce-flt__opt input {
	accent-color: var(--ce-green);
	width: 15px;
	height: 15px;
	margin: 0;
	flex-shrink: 0;
}

.ce-flt__opt-name {
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
}

.ce-flt__count {
	margin-left: auto;
	color: #9aa0a6;
	font-size: 11px;
	font-weight: 600;
}

/* Seçili filtre çipleri */
.ce-flt-selected {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin: -16px 0 30px; /* çubuğun 30px alt boşluğunun içinde, banner'lardan önce */
}

.ce-flt-selected[hidden] {
	display: none;
}

.ce-flt-selected__chip {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: var(--ce-green);
	color: #fff;
	border-radius: 999px;
	padding: 6px 12px;
	font-size: 12px;
	font-weight: 600;
}

.ce-flt-selected__chip:hover {
	background: #0e8a45;
	color: #fff;
}

.ce-flt-selected__chip svg {
	width: 12px;
	height: 12px;
	stroke: currentColor;
	stroke-width: 2;
	fill: none;
}

.ce-flt-selected__clear {
	font-size: 12px;
	font-weight: 700;
	color: var(--ce-green);
	text-decoration: underline;
}

/* Sonuç bölgesi yüklenirken */
#ce-archive-results.is-loading {
	opacity: 0.45;
	pointer-events: none;
	transition: opacity 0.15s;
}

/* Kategori/arşiv "Daha Fazla Göster": ortalanmış geniş buton — yeşil
   çerçeveli, hover'da dolan (tema buton diliyle uyumlu); yüklenirken
   ok yerine dönen halka. Numaralı sayfalama kullanılmaz. */
.ce-loadmore {
	display: flex;
	justify-content: center;
	margin: 28px 0 10px;
}

.ce-loadmore__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-width: 320px;
	padding: 13px 34px;
	font-size: 15px;
	font-weight: 700;
	color: var(--ce-green);
	background: #fff;
	border: 1.5px solid var(--ce-green);
	border-radius: var(--ce-radius);
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.06);
	cursor: pointer;
	transition: background 0.15s, color 0.15s, box-shadow 0.15s;
}

.ce-loadmore__btn:hover:not(:disabled) {
	background: var(--ce-green);
	color: #fff;
	box-shadow: 0 4px 14px rgba(18, 161, 80, 0.25);
}

.ce-loadmore__btn:disabled {
	opacity: 0.7;
	cursor: default;
}

.ce-loadmore__btn svg {
	width: 18px;
	height: 18px;
	stroke: currentColor;
	stroke-width: 2;
	fill: none;
}

.ce-loadmore__btn.is-loading svg {
	display: none;
}

.ce-loadmore__btn.is-loading::before {
	content: "";
	width: 16px;
	height: 16px;
	border: 2px solid currentColor;
	border-top-color: transparent;
	border-radius: 50%;
	animation: ce-lm-spin 0.7s linear infinite;
}

@keyframes ce-lm-spin {
	to {
		transform: rotate(360deg);
	}
}

@media (max-width: 768px) {
	.ce-loadmore__btn {
		width: 100%;
		min-width: 0;
	}
}

/* Tüm Filtreler çekmecesi */
.ce-flt-overlay {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, 0.45);
	z-index: 1200;
	opacity: 0;
	transition: opacity 0.25s;
}

.ce-flt-overlay.is-open {
	opacity: 1;
}

/* Mobil filtre satırı: Filtrele / Sırala / Tasarlanabilir (masaüstünde gizli) */
.ce-fltmob {
	display: none;
	gap: 8px;
	width: 100%;
}

.ce-fltmob__btn {
	flex: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	background: #fff;
	border: 1px solid var(--ce-border);
	border-radius: 10px;
	padding: 10px 6px;
	font-family: inherit;
	font-size: 13px;
	font-weight: 600;
	color: var(--ce-text);
	cursor: pointer;
	white-space: nowrap;
}

.ce-fltmob__btn svg {
	width: 16px;
	height: 16px;
	stroke: currentColor;
	stroke-width: 1.8;
	fill: none;
	flex-shrink: 0;
}

.ce-fltmob__btn.is-active {
	border-color: var(--ce-green);
	color: var(--ce-green);
	background: #eefaf3;
}

/* Sırala alt paneli (bottom sheet) */
.ce-sortsheet {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1201;
	background: #fff;
	border-radius: 16px 16px 0 0;
	box-shadow: 0 -10px 34px rgba(0, 0, 0, 0.2);
	display: flex;
	flex-direction: column;
	max-height: 80vh;
	transform: translateY(100%);
	transition: transform 0.28s ease;
}

.ce-sortsheet.is-open {
	transform: translateY(0);
}

.ce-sortsheet__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 16px 18px;
	border-bottom: 1px solid var(--ce-border);
	font-size: 15px;
}

.ce-sortsheet__close {
	background: none;
	border: 0;
	padding: 6px;
	cursor: pointer;
	line-height: 0;
}

.ce-sortsheet__close svg {
	width: 18px;
	height: 18px;
	stroke: var(--ce-text);
	stroke-width: 2;
	fill: none;
}

.ce-sortsheet__body {
	flex: 1;
	overflow: auto;
	padding: 4px 12px;
}

.ce-sortsheet__opt {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 13px 6px;
	font-size: 14px;
	font-weight: 500;
	border-bottom: 1px solid #f3f3f3;
	cursor: pointer;
}

.ce-sortsheet__opt:last-child {
	border-bottom: 0;
}

.ce-sortsheet__opt input {
	accent-color: var(--ce-green);
	width: 18px;
	height: 18px;
	margin: 0;
	flex-shrink: 0;
}

.ce-sortsheet__foot {
	padding: 12px 16px calc(14px + env(safe-area-inset-bottom));
	border-top: 1px solid var(--ce-border);
}

.ce-sortsheet__apply {
	width: 100%;
	text-align: center;
}

/* Mobil çok ekranlı "Filtrele" paneli */
/* "Tüm Filtreler" paneli — tek bileşen, iki konum:
   masaüstünde soldan kayan yan panel, mobilde (≤768px) alttan açılan tam
   ekran sheet. İç düzen (iki ekranlı liste → seçenekler) ikisinde de aynı. */
.ce-mfp {
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	width: min(400px, 100vw);
	z-index: 1210;
	background: #fff;
	overflow: hidden;
	transform: translateX(-100%);
	transition: transform 0.28s ease;
	box-shadow: 12px 0 34px rgba(0, 0, 0, 0.18);
}

.ce-mfp.is-open {
	transform: translateX(0);
}

.ce-mfp__screen {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	background: #fff;
	transition: transform 0.28s ease;
}

.ce-mfp__screen--sub {
	transform: translateX(100%);
}

.ce-mfp.is-sub .ce-mfp__screen--main {
	transform: translateX(-30%);
}

.ce-mfp.is-sub .ce-mfp__screen--sub {
	transform: translateX(0);
}

.ce-mfp__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	padding: 14px 14px;
	border-bottom: 1px solid var(--ce-border);
}

.ce-mfp__title {
	font-size: 15px;
	text-align: center;
	flex: 1;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.ce-mfp__headbtn {
	width: 34px;
	height: 34px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: none;
	border: 0;
	padding: 0;
	cursor: pointer;
	line-height: 0;
	flex-shrink: 0;
}

.ce-mfp__headbtn svg {
	width: 19px;
	height: 19px;
	stroke: var(--ce-text);
	stroke-width: 2;
	fill: none;
}

.ce-mfp__body {
	flex: 1;
	overflow: auto;
	padding: 10px 14px 16px;
}

/* Seçili filtreler bloğu */
.ce-mfp__selhead {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 4px 0 10px;
	font-size: 14px;
}

.ce-mfp__clear {
	background: none;
	border: 0;
	padding: 0;
	font-family: inherit;
	font-size: 13px;
	font-weight: 700;
	color: var(--ce-green);
	text-decoration: underline;
	cursor: pointer;
}

.ce-mfp__chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	padding-bottom: 12px;
	border-bottom: 1px solid #f1f1f1;
	margin-bottom: 4px;
}

.ce-mfp__chip {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: #eefaf3;
	border: 1px solid #cdebdb;
	color: var(--ce-green);
	border-radius: 999px;
	padding: 6px 12px;
	font-family: inherit;
	font-size: 12px;
	font-weight: 600;
	cursor: pointer;
}

.ce-mfp__chip svg {
	width: 11px;
	height: 11px;
	stroke: currentColor;
	stroke-width: 2.2;
	fill: none;
}

/* Filtre satırları */
.ce-mfp__row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	width: 100%;
	background: none;
	border: 0;
	border-bottom: 1px solid #f1f1f1;
	padding: 15px 2px;
	font-family: inherit;
	font-size: 14px;
	font-weight: 600;
	color: var(--ce-text);
	cursor: pointer;
	text-align: left;
}

.ce-mfp__row svg {
	width: 16px;
	height: 16px;
	stroke: #9aa0a6;
	stroke-width: 2;
	fill: none;
	flex-shrink: 0;
}

.ce-mfp__rowcount {
	font-style: normal;
	color: var(--ce-green);
}

/* Hızlı anahtarlar kutusu */
.ce-mfp__quick {
	margin-top: 16px;
	border: 1px solid var(--ce-border);
	border-radius: 12px;
	padding: 2px 14px;
}

.ce-mfp__switchrow {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 13px 0;
	cursor: pointer;
}

.ce-mfp__switchrow + .ce-mfp__switchrow {
	border-top: 1px solid #f1f1f1;
}

.ce-mfp__switchlabel {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	font-weight: 600;
	min-width: 0;
}

.ce-mfp__switchlabel svg {
	width: 17px;
	height: 17px;
	stroke: var(--ce-green);
	stroke-width: 1.8;
	fill: none;
	flex-shrink: 0;
}

.ce-mfp__switchlabel .ce-mfp__info {
	stroke: #b6bcc2;
	width: 15px;
	height: 15px;
}

.ce-mfp__switchinput {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.ce-mfp__switch {
	width: 44px;
	height: 24px;
	border-radius: 999px;
	background: #d9dde1;
	position: relative;
	transition: background 0.2s;
	flex-shrink: 0;
}

.ce-mfp__switch::after {
	content: "";
	position: absolute;
	top: 2px;
	left: 2px;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.25);
	transition: transform 0.2s;
}

.ce-mfp__switchinput:checked ~ .ce-mfp__switch {
	background: var(--ce-green);
}

.ce-mfp__switchinput:checked ~ .ce-mfp__switch::after {
	transform: translateX(20px);
}

/* Alt buton */
.ce-mfp__foot {
	padding: 12px 14px calc(14px + env(safe-area-inset-bottom));
	border-top: 1px solid var(--ce-border);
	background: #fff;
}

.ce-mfp__mainbtn {
	width: 100%;
	text-align: center;
}

/* Ekran 2: arama + değer listesi */
.ce-mfp__search {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 10px 14px 0;
	border: 1px solid var(--ce-border);
	border-radius: 10px;
	padding: 9px 12px;
	background: #f7f8f9;
}

.ce-mfp__search svg {
	width: 16px;
	height: 16px;
	stroke: #9aa0a6;
	stroke-width: 2;
	fill: none;
	flex-shrink: 0;
}

.ce-mfp__search input {
	border: 0;
	background: none;
	outline: none;
	font-family: inherit;
	font-size: 14px;
	width: 100%;
	min-width: 0;
}

.ce-mfp__opt {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 13px 2px;
	font-size: 14px;
	font-weight: 500;
	border-bottom: 1px solid #f3f3f3;
	cursor: pointer;
}

.ce-mfp__opt input {
	accent-color: var(--ce-green);
	width: 18px;
	height: 18px;
	margin: 0;
	flex-shrink: 0;
}

.ce-mfp__optname {
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
}

.ce-mfp__opt .ce-flt__count {
	margin-left: auto;
}


@media (max-width: 768px) {
	/* Seçili filtre çipleri mobilde sayfa akışında görünmez; yalnız
	   "Filtrele" panelinin içindeki "Seçili Filtreler" bölümünde listelenir. */
	.ce-flt-selected {
		display: none;
	}

	/* Mobilde masaüstü çipleri ve sıralama select'i yerine 3 buton */
	.ce-filterbar .ce-filterbar__chips,
	.ce-archive .woocommerce-ordering {
		display: none;
	}

	.ce-fltmob {
		display: flex;
	}

	/* Filtre paneli mobilde alttan açılan tam ekran sheet olur */
	.ce-mfp {
		top: 0;
		right: 0;
		width: auto;
		box-shadow: none;
		transform: translateY(100%);
	}

	.ce-mfp.is-open {
		transform: translateY(0);
	}
}

/* --- Kategoriye özel bannerlar (Kategori Düzenle ekranından) --- */
.ce-catbanners {
	display: flex;
	flex-direction: column;
	gap: 16px;
	margin: 16px 0 6px;
}

.ce-catbanners__row {
	display: flex;
	justify-content: center; /* eksik slotta dolu görseller ortalanır */
	gap: 16px;
}

.ce-catbanners__item {
	display: block;
	min-width: 0;
	border-radius: 12px;
	overflow: hidden;
}

.ce-catbanners__img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 730 / 304; /* farklı boyutta yüklenen görsellerde satır yüksekliği sabit kalsın */
	object-fit: cover;
	transition: transform 0.25s; /* anasayfa banner grid'iyle (.ce-bannergrid) aynı hover zoom */
}

.ce-catbanners__item:hover .ce-catbanners__img {
	transform: scale(1.03);
}

/* Tip bazlı genişlikler: ikili/üçlü eşit paylaşır; tekli ortada, makul geniş */
.ce-catbanners__row--2 .ce-catbanners__item {
	flex: 0 1 calc((100% - 16px) / 2);
}

.ce-catbanners__row--3 .ce-catbanners__item {
	flex: 0 1 calc((100% - 32px) / 3);
}

.ce-catbanners__row--1 .ce-catbanners__item {
	flex: 0 1 740px;
	max-width: 100%;
}

@media (max-width: 768px) {
	.ce-catbanners {
		gap: 10px;
		margin: 12px 0 4px;
	}

	/* Çoklu satırlar mobilde alt alta, tam genişlik */
	.ce-catbanners__row {
		flex-direction: column;
		gap: 10px;
	}

	.ce-catbanners__row .ce-catbanners__item {
		flex: 1 1 auto;
		width: 100%;
	}
}

/* Ürün grid'i: anasayfa kartının aynısı, esnek sütunlar, sola dayalı.
   WC clearfix'i (.woocommerce::before/::after) grid hücresi OLMASIN. */
.ce-archive__grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
	gap: 26px 18px;
	align-items: start;
	justify-content: start;
	margin-top: 16px;
}

.ce-archive__grid::before,
.ce-archive__grid::after {
	content: none;
	display: none;
}

.ce-archive__grid .ce-card {
	width: 100%;
	flex: initial;
	min-width: 0;
}

/* (Kartların altları @card .ce-card__actions{margin-top:auto} ile hizalanır) */

/* Boş durum */
.ce-archive__empty {
	background: #fff;
	border: 1px solid var(--ce-border);
	border-radius: 12px;
	padding: 48px 20px;
	text-align: center;
	margin-top: 16px;
}

.ce-archive__empty svg {
	width: 40px;
	height: 40px;
	fill: #dcdcdc;
	margin-bottom: 10px;
}

.ce-archive__empty-title {
	font-size: 16px;
	font-weight: 700;
	color: var(--ce-text);
	margin: 0 0 6px;
}

.ce-archive__empty-text {
	font-size: 13.5px;
	color: var(--ce-muted);
	margin: 0 0 18px;
}

.ce-archive__empty-btn {
	display: inline-block;
	padding: 12px 28px;
}

/* Sayfalama */
.ce-archive .woocommerce-pagination {
	margin-top: 28px;
	text-align: center;
}

.ce-archive .woocommerce-pagination ul {
	display: inline-flex;
	gap: 6px;
	list-style: none;
	margin: 0;
	padding: 0;
	border: 0;
}

.ce-archive .woocommerce-pagination ul li {
	border: 0;
	margin: 0;
}

.ce-archive .woocommerce-pagination .page-numbers {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 38px;
	height: 38px;
	padding: 0 10px;
	border: 1px solid var(--ce-border);
	border-radius: 8px;
	background: #fff;
	color: var(--ce-text);
	font-weight: 600;
	font-size: 14px;
}

.ce-archive .woocommerce-pagination .page-numbers.current {
	background: var(--ce-green);
	border-color: var(--ce-green);
	color: #fff;
}

.ce-archive .woocommerce-pagination a.page-numbers:hover {
	border-color: var(--ce-green);
	color: var(--ce-green);
}

@media (max-width: 768px) {
	.ce-archive__title {
		font-size: 19px;
	}

	.ce-archive__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 20px 10px;
	}
}

/* ---------- Mega panel: kalabalık TEK SEVİYELİ alt menüler çok sütunlu ----------
   JS, 13+ öğeli ve torunsuz panellere .ce-meganav verir; az öğeli menüler
   (ör. Çiçek) tek kolon + flyout düzeninde kalır. */
.ce-nav .sub-menu.ce-meganav {
	width: 700px;
	max-width: calc(100vw - 40px);
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	column-gap: 12px;
	padding: 10px 12px 14px;
	/* Ekran boyunu aşmasın; sütunlar yetmezse SON ÇARE iç kaydırma */
	max-height: min(65vh, 540px);
	overflow-y: auto;
	overscroll-behavior: contain;
}

.ce-nav li:hover > .sub-menu.ce-meganav,
.ce-nav li:focus-within > .sub-menu.ce-meganav {
	display: grid;
}

/* Panel başı: üst kategorinin tüm ürünlerine giden bağlantı (tam satır) */
.ce-nav .ce-meganav__all {
	grid-column: 1 / -1;
	border-bottom: 1px solid var(--ce-border);
	margin-bottom: 6px;
	padding-bottom: 4px;
}

.ce-nav .ce-meganav__all a {
	font-weight: 700;
	color: var(--ce-green);
}

.ce-nav .ce-meganav__all a:hover {
	color: var(--ce-green-dark);
}

/* ---------- Alt menüsü olan öğelerde chevron göstergesi ----------
   WP, alt menüsü olan öğeye .menu-item-has-children verir — ok otomatik.
   Ok CSS ile çizilir (SVG/emoji yok), currentColor ile metin rengini izler
   (hover'da linkle birlikte yeşile döner). */
.ce-nav .menu-item-has-children > a {
	display: flex;
	align-items: center;
	/* AYNI değişken: ikonlu öğede ikon-metin arası, alt menüsü olan öğede
	   ok boşluğu — ikisi tek kaynaktan gelir, üst üste binmez. */
	gap: var(--ce-nav-ico-gap);
}

.ce-nav .menu-item-has-children > a::after {
	content: "";
	width: 7px;
	height: 7px;
	border-right: 1.8px solid currentColor;
	border-bottom: 1.8px solid currentColor;
	flex-shrink: 0;
	opacity: 0.6;
	/* Üst şerit: AŞAĞI bakan chevron */
	transform: translateY(-2px) rotate(45deg);
	transition: transform 0.15s;
}

/* Menü açıkken (hover ya da tıklama) ok yukarı döner */
.ce-nav > ul > li.menu-item-has-children:hover > a::after,
.ce-nav > ul > li.menu-item-has-children:focus-within > a::after {
	transform: translateY(2px) rotate(225deg);
}

/* Panel içi: torunu olan öğede SAĞA bakan chevron, satırın sağ ucunda —
   ikinci panelin sağa açılacağını gösterir. Torunu olmayanda ok yok. */
.ce-nav .sub-menu .menu-item-has-children > a {
	justify-content: space-between;
}

.ce-nav .sub-menu .menu-item-has-children > a::after {
	transform: rotate(-45deg);
	margin-left: 12px;
}

.ce-nav .sub-menu .menu-item-has-children:hover > a::after,
.ce-nav .sub-menu .menu-item-has-children:focus-within > a::after {
	transform: rotate(-45deg);
}

/* ---------- Content ---------- */
.ce-main {
	min-height: 55vh;
	padding: 24px 0 48px;
}

/* Elementor ile kurulan ana sayfa: header ile aynı genişlik/hizalama */
.ce-main--home {
	padding-top: 0;
}

.ce-main--home .elementor-section-boxed > .elementor-container,
.ce-main--home .e-con {
	max-width: var(--ce-container-width) !important;
	padding-left: var(--ce-container-pad);
	padding-right: var(--ce-container-pad);
}

/* Elementor'un varsayılan 10px sütun iç boşluğu içeriği header'dan dar gösteriyor — sıfırla. */
.ce-main--home .elementor-column-gap-default > .elementor-column > .elementor-element-populated,
.ce-main--home .elementor-column-gap-default > .elementor-row > .elementor-column > .elementor-element-populated {
	padding: 0;
}


/* Hero (front page) */
.ce-hero {
	background: linear-gradient(120deg, var(--ce-green) 0%, var(--ce-green-dark) 100%);
	color: #fff;
	border-radius: var(--ce-radius);
	padding: 56px 40px;
	text-align: center;
	margin-bottom: 40px;
}

.ce-hero h1 {
	margin: 0 0 10px;
	font-size: 34px;
}

.ce-hero p {
	margin: 0 0 24px;
	font-size: 17px;
	opacity: 0.92;
}

.ce-hero .ce-btn {
	background: #fff;
	color: var(--ce-green);
}

.ce-hero .ce-btn:hover {
	background: var(--ce-green-light);
	color: var(--ce-green-dark);
}

.ce-section-title {
	font-size: 24px;
	font-weight: 700;
	margin: 0 0 20px;
	text-align: center;
}

/* Generic button */
.ce-btn {
	display: inline-block;
	background: var(--ce-green);
	color: #fff;
	font-weight: 700;
	font-size: 15px;
	border: 0;
	border-radius: var(--ce-radius);
	padding: 12px 28px;
	transition: background 0.15s;
}

.ce-btn:hover {
	background: var(--ce-green-dark);
	color: #fff;
}

/* ---------- WooCommerce genel ---------- */
.woocommerce .button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
	background: var(--ce-green);
	color: #fff;
	border-radius: var(--ce-radius);
	font-weight: 700;
}

.woocommerce .button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
	background: var(--ce-green-dark);
	color: #fff;
}

.woocommerce span.onsale {
	background: var(--ce-danger);
	border-radius: 4px;
	line-height: 1.6;
	min-height: auto;
	min-width: auto;
	padding: 3px 10px;
}

.woocommerce .star-rating span::before,
.woocommerce .star-rating::before {
	color: var(--ce-star);
}

/* Arşiv/ilgili ürün kartları: görsel kart kenarına tam oturur, padding sadece yazıda */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
	background: #fff;
	border: 1px solid var(--ce-border);
	border-radius: var(--ce-radius);
	padding: 0 !important;
	overflow: hidden;
	position: relative;
	transition: box-shadow 0.15s;
}

.woocommerce ul.products li.product:hover {
	box-shadow: var(--ce-shadow);
}

.woocommerce ul.products li.product a img,
.woocommerce-page ul.products li.product a img {
	width: 100% !important;
	aspect-ratio: 280 / 308;
	object-fit: cover;
	margin: 0 !important;
	border-radius: 0;
	display: block;
}

/* Kart içerikleri sola hizalı; ad sabit yükseklik (fiyatlar aynı seviyede) */
.woocommerce ul.products li.product {
	text-align: left;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-size: 14px;
	font-weight: 600;
	padding: 0;
	margin: 10px 12px 6px;
	line-height: 1.4;
	height: 40px;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.woocommerce ul.products li.product .star-rating {
	margin: 0 0 8px 12px;
}

.woocommerce ul.products li.product .price {
	color: var(--ce-green);
	font-weight: 700;
	font-size: 16px;
	padding: 0 12px;
	display: block;
}

.woocommerce ul.products li.product .button {
	margin: 8px 12px 12px;
}

.woocommerce ul.products li.product .onsale {
	top: 8px;
	left: 8px;
	right: auto;
	width: max-content;
	margin: 0;
}

.woocommerce-message,
.woocommerce-info {
	border-top-color: var(--ce-green);
}

.woocommerce-message::before,
.woocommerce-info::before {
	color: var(--ce-green);
}

/* Boş sepetin üstündeki şerit: sert gri kutu yerine yumuşak yeşil karşılama */
.wc-empty-cart-message .cart-empty.woocommerce-info {
	background: var(--ce-green-light);
	border: 1px solid #cdebdb;
	border-radius: 14px;
	padding: 16px 20px 16px 52px;
	color: var(--ce-green-dark);
	font-size: 15px;
	font-weight: 600;
	line-height: 1.55;
}

.wc-empty-cart-message .cart-empty.woocommerce-info::before {
	content: "\e021"; /* WooCommerce ikon fontu: sepet */
	top: 50%;
	left: 20px;
	transform: translateY(-50%);
	color: var(--ce-green);
	font-size: 18px;
}

@media (max-width: 768px) {
	.wc-empty-cart-message .cart-empty.woocommerce-info {
		padding: 14px 16px 14px 46px;
		font-size: 14px;
	}

	.wc-empty-cart-message .cart-empty.woocommerce-info::before {
		left: 16px;
	}
}

/* ---------- Ürün sayfası ---------- */
.ce-breadcrumb,
.woocommerce .woocommerce-breadcrumb {
	font-size: 13px;
	color: var(--ce-muted);
	margin-bottom: 18px;
}

.ce-product {
	display: grid;
	grid-template-columns: minmax(0, 45fr) minmax(0, 55fr);
	gap: 36px;
	align-items: start;
}

/* Galeri */
.ce-gallery {
	display: flex;
	gap: 12px;
}

.ce-gallery__thumbs {
	display: flex;
	flex-direction: column;
	gap: 10px;
	width: 96px;
	flex-shrink: 0;
}

/* Kutulu thumbnail: beyaz zemin + ince gri kenarlık + iç boşluk */
.ce-gallery__thumb {
	width: 96px;
	height: 96px;
	border: 1px solid #dcdcdc;
	border-radius: 8px;
	padding: 6px;
	background: #fff;
	overflow: hidden;
	line-height: 0;
	cursor: pointer;
	transition: border-color 0.15s, box-shadow 0.15s;
}

.ce-gallery__thumb img {
	width: 100%;
	height: 100%;
	aspect-ratio: 1;
	object-fit: cover;
	border-radius: 5px;
}

.ce-gallery__thumb:hover {
	border-color: #b5b5b5;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.ce-gallery__thumb.is-active {
	border: 2px solid var(--ce-green);
	padding: 5px;
}

.ce-gallery__thumb.is-active:hover {
	border-color: var(--ce-green);
	box-shadow: none;
}

.ce-gallery__main {
	flex: 1;
	min-width: 0;
	border: 1px solid var(--ce-border);
	border-radius: var(--ce-radius);
	overflow: hidden;
	line-height: 0;
	position: relative;
	background: #f2f2f2;
}

.ce-gallery__track {
	display: flex;
	overflow-x: hidden;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
}

.ce-gallery__slide {
	flex: 0 0 100%;
	min-width: 100%;
	scroll-snap-align: start;
	line-height: 0;
}

.ce-gallery__slide img {
	width: 100%;
	aspect-ratio: 1;
	object-fit: cover;
}

/* Tıkla-zoom YALNIZ masaüstünde: görsel kendi karesi içinde büyür, taşmaz.
   Mobil galeri (kaydırma + noktalar) bu kurallardan etkilenmez. */
@media (min-width: 769px) {
	.ce-gallery__slide {
		overflow: hidden;
	}

	.ce-gallery__slide img {
		cursor: zoom-in;
	}

	.ce-gallery__slide.is-zoomed img {
		cursor: zoom-out;
		user-select: none;
		-webkit-user-drag: none;
	}
}

/* Mobil galeri öğeleri: masaüstünde gizli */
.ce-gallery__fav,
.ce-gallery__ratebadge,
.ce-gallery__dots {
	display: none;
}

/* WooCommerce'in varsayılan float/genişlik kurallarını etkisizleştir */
.woocommerce div.product.ce-product div.summary,
.woocommerce-page div.product.ce-product div.summary,
.ce-product .summary {
	float: none;
	width: 100%;
	min-width: 0;
	margin: 0;
}

.woocommerce div.product.ce-product div.images,
.woocommerce-page div.product.ce-product div.images {
	float: none;
	width: 100%;
	margin: 0;
}

/* Sağ sütun: bilgi paneli (referans: üstte çerçeveli başlık/fiyat kutusu) */
.ce-panel {
	display: flex;
	flex-direction: column;
	gap: 16px;
	min-width: 0;
}

.ce-panel__head {
	background: #fbfbfb;
	border: 1px solid var(--ce-border);
	border-radius: 10px;
	padding: 24px 26px;
	display: flex;
	flex-direction: column;
	gap: 22px;
}

.ce-summary .product_title {
	font-size: 30px;
	font-weight: 700;
	margin: 0;
	line-height: 1.3;
}

/* Fiyat satırı: solda indirim rozeti + fiyatlar, sağda puan */
.ce-panel__pricerow {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
}

.ce-pricebox {
	display: flex;
	align-items: center;
	gap: 14px;
}

.ce-pricebox__disc {
	background: var(--ce-danger);
	color: #fff;
	font-size: 21px;
	font-weight: 800;
	border-radius: 8px;
	padding: 13px 13px;
	line-height: 1;
}

.ce-pricebox__col {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.ce-pricebox__col del {
	color: var(--ce-muted);
	font-size: 17px;
	font-weight: 600;
}

.ce-pricebox__now {
	font-size: 36px;
	font-weight: 800;
	color: var(--ce-text);
	line-height: 1.05;
}

.ce-pricebox__now em {
	font-style: normal;
	color: var(--ce-green);
	font-size: 15px;
	font-weight: 700;
}

.ce-ratebox {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 5px;
	margin-left: auto;
}

.ce-ratebox .star-rating {
	font-size: 18px;
	margin: 0;
	/* Yıldızlar tema rengiyle (altın); boş yıldızlar soluk kalır. */
	color: var(--ce-star);
}

.ce-ratebox .star-rating::before {
	color: #dcdfe3;
}

.ce-ratebox__link {
	font-size: 14px;
	color: var(--ce-muted);
	text-decoration: underline;
}

.ce-ratebox__link:hover {
	color: var(--ce-green);
}

/* Varyant seçenekleri (değişken ürün) */
.ce-variants {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.ce-variant {
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
	background: #f4f4f4;
	border: 1.5px solid transparent;
	border-bottom: 1px solid #e7e7e7;
	border-radius: 8px;
	padding: 13px 16px;
	text-align: left;
	cursor: pointer;
	transition: border-color 0.15s, background 0.15s;
}

.ce-variant:hover {
	border-color: #cfe8da;
}

.ce-variant.is-active {
	border-color: var(--ce-green);
	background: #f2faf6;
}

.ce-variant__radio {
	width: 22px;
	height: 22px;
	flex-shrink: 0;
	border-radius: 6px;
	background: #fff;
	border: 1.5px solid #cfcfcf;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background 0.15s, border-color 0.15s;
}

.ce-variant.is-active .ce-variant__radio {
	background: var(--ce-green);
	border-color: var(--ce-green);
}

.ce-variant.is-active .ce-variant__radio::after {
	content: "";
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #fff;
}

.ce-variant__name {
	flex: 1;
	min-width: 0;
	font-size: 14.5px;
	font-weight: 500;
	color: var(--ce-text);
	line-height: 1.35;
}

.ce-variant__price {
	flex-shrink: 0;
	font-size: 18px;
	font-weight: 800;
	color: var(--ce-text);
	white-space: nowrap;
}

/* WooCommerce varyasyon formunun görünen kısımları gizli (listemiz yönetiyor) */
.ce-buy__form .variations,
.ce-buy__form .single_variation_wrap .woocommerce-variation,
.ce-buy__form .reset_variations {
	display: none !important;
}

.ce-buy__form .woocommerce-variation-add-to-cart .quantity {
	display: none;
}

/* Konum + tarih/saat akışı */
.ce-delivery-widget {
	display: flex;
	flex-direction: column;
	gap: 12px;
	/* Uzun adres metni kabı genişletemesin (flex min-width:auto tuzağı) */
	min-width: 0;
	max-width: 100%;
}

/* ---------- Teslimat kesim geri sayımı (ürün sayfası) ----------
   Aciliyet kartı: JS yalnız kesim penceresine girildiğinde DOM'a ekler,
   pencere dışında öğe hiç bulunmaz. Amber ailesi — tema yeşiline bağlı DEĞİL. */
.ce-countdown {
	--ce-countdown-bg: #fff8e6;
	--ce-countdown-border: #f3ddb0;
	--ce-countdown-fg: #7a4f05;
	--ce-countdown-accent: #d98a00;
	--ce-countdown-track: #f0e0bd;
	--ce-countdown-muted: #98703a;

	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 12px 14px;
	background: var(--ce-countdown-bg);
	border: 1px solid var(--ce-countdown-border);
	border-radius: 12px;
	/* Bilgi kartı: tıklanabilir değil */
	cursor: default;
	/* Boşluk .ce-panel'in gap'inden (16px) gelir; ayrıca margin YOK — banner
	   gizliyken (DOM'dan tamamen kaldırıldığı için) geride boşluk kalmaz. */
}

/* Yalnız YEDEK konumda (güven kartı kapalıyken, teslimat bölümünün altında):
   orada panel gap'i olmadığı için kendi üst boşluğunu verir. */
.ce-countdown--inline {
	margin-top: 12px;
}

.ce-countdown__icon {
	flex-shrink: 0;
	width: 22px;
	height: 22px;
	margin-top: 1px;
	fill: none;
	stroke: var(--ce-countdown-accent);
	stroke-width: 1.8;
	stroke-linecap: round;
}

.ce-countdown__body {
	flex: 1 1 auto;
	min-width: 0;
}

.ce-countdown__title {
	display: block;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.35;
	color: var(--ce-countdown-fg);
	/* Uzun metin sarar, taşmaz */
	overflow-wrap: anywhere;
}

.ce-countdown__bar {
	height: 6px;
	margin: 9px 0 7px;
	border-radius: 99px;
	background: var(--ce-countdown-track);
	overflow: hidden;
}

.ce-countdown__fill {
	display: block;
	height: 100%;
	width: 0;
	border-radius: 99px;
	background: var(--ce-countdown-accent);
	transition: width 0.6s linear;
}

.ce-countdown__note {
	margin: 0;
	font-size: 12px;
	line-height: 1.45;
	color: var(--ce-countdown-muted);
	overflow-wrap: anywhere;
}

@media (max-width: 768px) {
	.ce-countdown {
		gap: 10px;
		padding: 11px 12px;
	}

	.ce-countdown__icon {
		width: 20px;
		height: 20px;
	}

	.ce-countdown__title {
		font-size: 13.5px;
	}

	.ce-countdown__note {
		font-size: 11.5px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.ce-countdown__fill {
		transition: none;
	}
}

/* Ürün kartındaki "Hızlı Sipariş" ile gelindiğinde (?hizli=1): kaydırılan
   sipariş alanı 2 saniyeliğine belirginleşir — kullanıcı nereye geldiğini görür. */
.ce-quick-hl {
	animation: ce-quick-hl 2s ease-out 1;
	border-radius: 12px;
}

@keyframes ce-quick-hl {
	0%,
	60% {
		box-shadow: 0 0 0 3px rgba(46, 58, 89, 0.28);
	}

	100% {
		box-shadow: 0 0 0 3px rgba(46, 58, 89, 0);
	}
}

@media (prefers-reduced-motion: reduce) {
	.ce-quick-hl {
		animation: none;
	}
}

/* Konum seçici kutusu (boş durum: açık gri zemin + gri ikon/metin) */
.ce-locbox {
	display: flex;
	align-items: center;
	gap: 10px;
	background: #f5f5f5;
	border: 1px solid var(--ce-border);
	border-radius: 8px;
	padding: 0 0 0 14px;
	transition: border-color 0.15s;
}

.ce-locbox:hover,
.ce-locbox:focus-within {
	border-color: var(--ce-green);
}

.ce-locbox svg {
	width: 20px;
	height: 20px;
	fill: none;
	stroke: var(--ce-muted);
	stroke-width: 1.7;
	flex-shrink: 0;
}

.ce-locbox__input {
	flex: 1;
	min-width: 0;
	border: 0;
	background: transparent;
	padding: 17px 14px 17px 0;
	font-size: 15px;
	font-family: inherit;
	color: var(--ce-text);
	outline: none;
}

.ce-locbox__input::placeholder {
	color: var(--ce-muted);
}

/* Kayıtlı adresler paneli (konum kutusunun hemen altında, tam genişlik) */
.ce-locwrap {
	position: relative;
	min-width: 0;
	max-width: 100%;
}

.ce-locpanel {
	position: absolute;
	top: calc(100% + 4px);
	left: 0;
	right: 0;
	z-index: 30;
	background: #fff;
	border: 1px solid var(--ce-border);
	border-radius: 8px;
	box-shadow: 0 10px 26px rgba(0, 0, 0, 0.12);
	overflow: hidden;
}

.ce-locpanel__head {
	padding: 10px 14px;
	font-size: 12.5px;
	font-weight: 600;
	color: var(--ce-muted);
	background: #fafafa;
	border-bottom: 1px solid #f0f0f0;
}

.ce-locpanel__item {
	display: block;
	width: 100%;
	text-align: left;
	background: #fff;
	border: 0;
	border-bottom: 1px solid #f5f5f5;
	padding: 11px 14px;
	cursor: pointer;
	transition: background 0.12s;
}

.ce-locpanel__item:last-child {
	border-bottom: 0;
}

.ce-locpanel__item strong {
	display: block;
	font-size: 14px;
	font-weight: 600;
	color: var(--ce-text);
	line-height: 1.35;
}

.ce-locpanel__item span {
	display: block;
	font-size: 12.5px;
	color: var(--ce-muted);
	line-height: 1.4;
}

.ce-locpanel__item:hover,
.ce-locpanel__item:focus {
	background: #f2faf6;
	outline: none;
}

.ce-locpanel__item:hover strong,
.ce-locpanel__item:focus strong {
	color: var(--ce-green);
}

.ce-locpanel__empty {
	padding: 14px;
	font-size: 13px;
	color: var(--ce-muted);
	line-height: 1.5;
}

.ce-locpanel__add {
	display: inline-block;
	margin-top: 6px;
	color: var(--ce-green);
	font-weight: 700;
	font-size: 13px;
}

.ce-locpanel__add:hover {
	color: var(--ce-green-dark);
	text-decoration: underline;
}

/* Google Places öneri listesi (tema uyumlu).
   z-index sitedeki TÜM sabit katmanlardan (mobil Sipariş Ver çubuğu 999,
   header vb.) büyük olmalı; yoksa alttaki önerilere dokunuş çubuğa gider. */
.pac-container {
	z-index: 100000 !important;
	pointer-events: auto;
	touch-action: manipulation;
	border: 1px solid var(--ce-border);
	border-radius: 8px;
	box-shadow: 0 10px 26px rgba(0, 0, 0, 0.12);
	font-family: var(--ce-font);
	margin-top: 4px;
}

.pac-item {
	padding: 9px 12px;
	cursor: pointer;
	font-size: 12.5px;
	line-height: 1.4;
	border-top: 1px solid #f5f5f5;
	touch-action: manipulation;
}

.pac-item:first-child {
	border-top: 0;
}

.pac-item:hover,
.pac-item-selected {
	background: #f2faf6;
}

.pac-item-query {
	font-size: 13.5px;
	color: var(--ce-text);
}

/* Konum çubuğu (seçili durum - yeşil dolu) */
.ce-locbar {
	display: flex;
	align-items: center;
	gap: 10px;
	background: var(--ce-green);
	color: #fff;
	border-radius: 8px;
	padding: 16px;
	font-size: 15px;
	font-weight: 600;
	/* Uzun adres taşmasın: kap kendini aşamaz, metin ellipsis ile kesilir */
	min-width: 0;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	overflow: hidden;
}

.ce-locbar svg {
	width: 20px;
	height: 20px;
	fill: none;
	stroke: #fff;
	stroke-width: 1.7;
	flex-shrink: 0;
}

.ce-locbar__text {
	display: block;
	flex: 1 1 auto;
	width: 100%;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

/* Mobil kısa gösterim (isim + ilçe/il) — masaüstünde gizli */
.ce-locbar__short {
	display: none;
	flex: 1 1 auto;
	width: 100%;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

@media (max-width: 768px) {
	/* Mobilde uzun adres yerine yalnızca kısa bilgi gösterilir (kesme yok) */
	.ce-locbar__text {
		display: none;
	}

	.ce-locbar__short {
		display: block;
	}
}

.ce-locbar__clear {
	width: 26px;
	height: 26px;
	border: 0;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.22);
	color: #fff;
	font-size: 12px;
	line-height: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	transition: background 0.15s;
}

.ce-locbar__clear:hover {
	background: rgba(255, 255, 255, 0.38);
}

/* Tarih seçici: 4 kutu */
.ce-datetime {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.ce-dates {
	display: grid;
	/* minmax(0,1fr): uzun gün adları sütunu genişletemez — 4 kutu her zaman EŞİT */
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 8px;
}

/* Uygun saati kalmayan gün: soluk ve tıklanamaz */
.ce-date:disabled,
.ce-date.is-disabled {
	opacity: 0.45;
	cursor: default;
	pointer-events: none;
}

/* "Bugün için teslimat saati kalmadı." notu */
.ce-today-full {
	font-size: 12px;
	color: var(--ce-muted);
	line-height: 1.4;
	margin: 0;
}

/* "Seçtiğiniz teslimat saati doldu" uyarısı */
.ce-slot-expired {
	font-size: 12px;
	color: var(--ce-danger);
	font-weight: 600;
	line-height: 1.4;
	margin: 0;
}

.ce-date {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 4px;
	min-width: 0;
	/* Takvim kutusunun içeriği (ikon → seçilen tarih) değişince satır
	   yüksekliği zıplamasın diye taban yükseklik sabit. */
	min-height: 86px;
	background: #f1f1f1;
	border: 1.5px solid transparent;
	border-radius: 8px;
	padding: 18px 6px;
	line-height: 1.25;
	color: var(--ce-text);
	text-align: center;
	transition: background 0.15s, color 0.15s;
}

/* Uzun gün adları (Pazartesi/Çarşamba…) dar kutuda taşmasın. */
.ce-date > strong,
.ce-date > span {
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.ce-date strong {
	font-size: 16px;
	font-weight: 700;
}

.ce-date span {
	font-size: 13.5px;
	color: var(--ce-muted);
}

.ce-date:hover {
	border-color: var(--ce-green);
}

.ce-date.is-active {
	background: var(--ce-green);
	color: #fff;
}

.ce-date.is-active span,
.ce-date.is-active strong {
	color: #fff;
}

.ce-date--cal svg {
	width: 19px;
	height: 19px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.7;
}

.ce-date__custom input {
	width: 100%;
	border: 1.5px solid var(--ce-green);
	border-radius: 8px;
	padding: 11px 12px;
	font-size: 14px;
	font-family: inherit;
	color: var(--ce-text);
	background: #fff;
}

/* Saat seçimi:
   Masaüstü: tek yeşil "Saat Seçiniz ▾" açılır kutu — her zaman EN SOL sütunda sabit.
   Mobil (≤768): açılır kutu gizli; saat aralıkları sola hizalı ayrı kutular. */
.ce-dates .ce-timebox {
	position: relative;
	grid-row: 2;
	/* Seçili günün sütunu — JS --ce-times-col ile günceller */
	grid-column: var(--ce-times-col, 1);
	min-width: 0;
}

.ce-timebox__select {
	width: 100%;
	appearance: none;
	-webkit-appearance: none;
	border: 0;
	border-radius: 8px;
	background: var(--ce-green);
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	font-family: inherit;
	padding: 11px 30px 11px 12px;
	cursor: pointer;
	outline: none;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.ce-timebox__select:hover,
.ce-timebox__select:focus {
	background: var(--ce-green-dark);
}

.ce-timebox__select option {
	background: #fff;
	color: var(--ce-text);
}

.ce-timebox svg {
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	width: 15px;
	height: 15px;
	fill: none;
	stroke: #fff;
	stroke-width: 2;
	pointer-events: none;
}

/* Masaüstünde ayrı saat kutuları gizli */
.ce-dates .ce-times {
	display: none;
}

.ce-timeopt {
	background: #f1f1f1;
	border: 1.5px solid transparent;
	border-radius: 8px;
	padding: 10px 16px;
	font-size: 13px;
	font-weight: 600;
	color: var(--ce-text);
	white-space: nowrap;
	transition: background 0.15s, color 0.15s, border-color 0.15s;
}

.ce-timeopt:hover {
	border-color: var(--ce-green);
}

.ce-timeopt.is-active {
	background: var(--ce-green);
	color: #fff;
}

@media (max-width: 768px) {
	/* Tarih çipleri satırı (1. satır) ile saat şeridi (2. satır) arasındaki
	   DİKEY boşluk mobilde 15px. Sütun aralığı 8px kalır; ölçü konteynerin
	   kendi row-gap'inden verilir, öğelerin padding'ine dokunulmaz.
	   Masaüstü etkilenmez: orada .ce-dates gap'i @media (min-width: 769px)
	   bloğundan (10px) geliyor. Hızlı Sipariş popup'ı ayrı sınıf kullandığı
	   için (.ce-qo__dates / .ce-qo__times) bu kuraldan etkilenmez. */
	.ce-dates {
		row-gap: 15px;
	}

	.ce-dates .ce-timebox {
		display: none;
	}

	/* Saat şeridi: tek satır, yatay kaydırmalı (ok yok, scrollbar gizli) */
	.ce-dates .ce-times {
		display: flex;
		grid-row: 2;
		grid-column: 1 / -1;
		flex-wrap: nowrap;
		justify-content: flex-start;
		gap: 8px;
		min-width: 0;
		max-width: 100%;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
		cursor: grab;
		/* Sonraki bölümle ara tam 30px: 18px + panel gap 12px */
		margin-bottom: 18px;
	}

	.ce-dates .ce-times::-webkit-scrollbar {
		display: none;
	}

	/* Mouse ile sürüklerken: imleç + snap kapalı (bırakınca hizalanır) */
	.ce-dates .ce-times.is-dragging {
		cursor: grabbing;
		scroll-snap-type: none;
		scroll-behavior: auto;
	}

	.ce-dates .ce-times .ce-timeopt {
		flex: 0 0 110px;
		text-align: center;
		scroll-snap-align: start;
	}
}

/* Güven satırı */
.ce-trustrow {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px 28px;
	font-size: 14.5px;
	font-weight: 600;
	color: var(--ce-text);
}

.ce-trustrow span {
	display: flex;
	align-items: center;
	gap: 7px;
}

.ce-trustrow svg {
	width: 20px;
	height: 20px;
	fill: none;
	stroke: var(--ce-green);
	stroke-width: 1.7;
	flex-shrink: 0;
}

/* Sipariş Ver + favori kutusu */
.ce-buy {
	display: flex;
	/* Form bloğu üstten başlar; favori bloğu aşağıda butonun 60px hattına
	   sabitlenir — form altına not eklense bile kalp kaymaz */
	align-items: flex-start;
	gap: 14px;
}

/* Ürün detayında adet seçici HİÇBİR üründe görünmez; miktar arka planda 1
   olarak gönderilir (display:none input form gönderiminde yer alır) */
.ce-summary form.cart .quantity {
	display: none !important;
}

.ce-buy__form {
	flex: 1;
	min-width: 0;
}

.ce-buy__form form.cart {
	margin: 0;
	display: flex;
}

/* Referans düzeninde adet seçici yok */
.ce-buy__form form.cart div.quantity {
	display: none;
}

.ce-buy__form .single_add_to_cart_button,
.woocommerce .ce-buy__form button.single_add_to_cart_button,
.woocommerce .ce-buy__form button.single_add_to_cart_button.alt {
	width: 100%;
	height: 60px;
	font-size: 20px;
	font-weight: 700;
	border-radius: 8px;
	background: var(--ce-green) !important;
	color: #fff !important;
	line-height: 1;
	padding: 0 24px;
}

.ce-buy__form .single_add_to_cart_button:hover,
.woocommerce .ce-buy__form button.single_add_to_cart_button:hover,
.woocommerce .ce-buy__form button.single_add_to_cart_button.alt:hover {
	background: var(--ce-green-dark) !important;
}

.ce-favbox {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-shrink: 0;
	/* Butonla (60px) aynı hat: dikey merkezler çakışır (üstten değil ortadan) */
	align-self: flex-start;
	height: 60px;
}

.ce-fav {
	width: 60px;
	height: 60px;
	flex-shrink: 0;
	border: 1.5px solid #f3b9c6;
	border-radius: 8px;
	background: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: border-color 0.15s;
}

.ce-fav svg {
	width: 24px;
	height: 24px;
	fill: none;
	stroke: var(--ce-danger, #e0234e);
	stroke-width: 1.8;
	transition: fill 0.15s;
}

.ce-fav:hover,
.ce-fav.is-active {
	border-color: var(--ce-danger);
}

.ce-fav.is-active svg {
	fill: var(--ce-danger);
}

.ce-favbox__text {
	font-size: 13px;
	color: var(--ce-muted);
	line-height: 1.45;
}

/* Varyasyonlu ürün formu düzeni */
.ce-buy__form form.cart.variations_form {
	display: block;
}

.ce-buy__form form.cart.variations_form .woocommerce-variation-add-to-cart {
	display: flex;
	gap: 10px;
	align-items: stretch;
}

/* Ana bilgi kartı sarmalayıcısı: yalnız masaüstünde kart olur, mobilde yok sayılır. */
.ce-panel__main {
	display: contents;
}

/* Bilgi kutuları */
.ce-notice {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	border-radius: 8px;
	padding: 14px 16px;
	font-size: 14px;
	line-height: 1.55;
}

.ce-notice svg {
	width: 20px;
	height: 20px;
	flex-shrink: 0;
	margin-top: 2px;
	fill: none;
	stroke-width: 1.7;
}

.ce-notice p {
	margin: 0;
}

.ce-notice--green {
	background: var(--ce-green-light);
	color: #1c5c38;
}

.ce-notice--green svg {
	stroke: #1c5c38;
}

.ce-notice--green strong {
	font-weight: 800;
}

.ce-notice--gray {
	background: #fff;
	border: 1px solid var(--ce-border);
	color: var(--ce-muted);
}

.ce-notice--gray svg {
	stroke: var(--ce-muted);
}

/* Sipariş Ver zorunlu alan uyarıları: ilgili alanın altında tam genişlik şerit */
/* Bölge ek teslimat ücreti bilgi notu (konum çubuğunun altında) */
.ce-zonefee {
	width: 100%;
	box-sizing: border-box;
	background: #eefaf3;
	border: 1px solid #cdebdb;
	color: var(--ce-green-dark, #0d7d3e);
	font-size: 13px;
	font-weight: 600;
	padding: 9px 12px;
	border-radius: 8px;
	margin-top: 8px;
}

.ce-validate-msg {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	width: 100%;
	box-sizing: border-box;
	background: #fdecef;
	border: 1px solid #f5c2cc;
	color: var(--ce-danger);
	font-size: 13px;
	font-weight: 600;
	line-height: 1.45;
	padding: 11px 13px;
	border-radius: 8px;
	margin: 10px 0 0;
	overflow-wrap: anywhere;
}

.ce-validate-msg::before {
	content: "";
	flex: 0 0 16px;
	width: 16px;
	height: 16px;
	margin-top: 1px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23e0234e'%3E%3Cpath d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm-1 5h2v7h-2V7zm0 9h2v2h-2v-2z'/%3E%3C/svg%3E") no-repeat center / contain;
}

/* Güvenlik ağı: bir grid/flex kapsayıcının içine düşerse de tam satır kaplasın. */
.ce-dates .ce-validate-msg,
.ce-datetime .ce-validate-msg {
	grid-column: 1 / -1;
}

/* .ce-datetime flex column zaten 10px gap veriyor; çift boşluk olmasın. */
.ce-datetime .ce-validate-msg {
	margin-top: 0;
}

.ce-invalid {
	outline: 2px solid var(--ce-danger) !important;
	outline-offset: 2px;
	border-radius: 10px;
	animation: ce-invalid-shake 0.35s ease;
}

@keyframes ce-invalid-shake {
	0%, 100% { transform: translateX(0); }
	25% { transform: translateX(-4px); }
	50% { transform: translateX(4px); }
	75% { transform: translateX(-2px); }
}

/* ============ Sepet sayfası (çiçeksepeti düzeni) ============ */
.woocommerce-cart .ce-main article > h2 {
	display: none;
}

.ce-cart {
	padding: 22px 0 40px;
}

.ce-cart__title {
	font-size: 26px;
	font-weight: 700;
	color: var(--ce-text);
	margin: 0 0 16px;
}

.ce-cart__count {
	font-size: 16px;
	font-weight: 500;
	color: var(--ce-muted);
}

.ce-cart__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 300px;
	gap: 24px;
	align-items: start;
}

/* Sol: ürün listesi kartı */
.ce-cart__items {
	background: #fff;
	border: 1px solid var(--ce-border);
	border-radius: 10px;
	overflow: hidden;
}

.ce-cart__seller {
	padding: 14px 18px;
	font-size: 13px;
	color: var(--ce-muted);
	border-bottom: 1px solid var(--ce-border);
}

.ce-cart__seller strong {
	color: var(--ce-text);
	font-weight: 600;
}

.ce-cart__row {
	position: relative;
	display: grid;
	grid-template-columns: 117px minmax(0, 1fr) auto;
	gap: 16px;
	align-items: center;
	padding: 18px;
}

.ce-cart__row + .ce-cart__row {
	border-top: 1px solid var(--ce-border);
}

/* Görsel hücresi sabit 117×130; cover ile doldurur, oran hiç bozulmaz. */
.ce-cart__thumb {
	display: block;
	width: 117px;
	border-radius: 8px;
	overflow: hidden;
	align-self: start;
}

.ce-cart__thumb img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 117 / 130;
	object-fit: cover;
}

.ce-cart__info {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 5px;
	min-width: 0;
}

.ce-cart__name {
	font-size: 15px;
	font-weight: 600;
	color: var(--ce-text);
	text-decoration: none;
	padding-right: 28px;
}

.ce-cart__name:hover {
	color: var(--ce-green);
}

.ce-cart__free {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-size: 13px;
	font-weight: 600;
	color: #3ca735;
}

.ce-cart__delivery {
	font-size: 13px;
	color: var(--ce-muted);
}

.ce-cart__delivery strong {
	color: var(--ce-text);
	font-weight: 600;
}

.ce-cart__meta {
	font-size: 12px;
	color: var(--ce-muted);
}

.ce-cart__qty {
	display: inline-flex;
	align-items: center;
	border: 1px solid var(--ce-border);
	border-radius: 8px;
	overflow: hidden;
	margin-top: 4px;
}

.ce-cart__qtybtn {
	width: 30px;
	height: 30px;
	border: 0;
	background: #f7f7f7;
	color: var(--ce-text);
	font-size: 16px;
	line-height: 1;
	cursor: pointer;
}

.ce-cart__qtybtn:hover {
	background: #eef7f1;
	color: var(--ce-green);
}

.ce-cart__qty input {
	width: 40px;
	height: 30px;
	border: 0;
	text-align: center;
	font-family: inherit;
	font-size: 14px;
	font-weight: 600;
	color: var(--ce-text);
	-moz-appearance: textfield;
	appearance: textfield;
}

.ce-cart__qty input::-webkit-outer-spin-button,
.ce-cart__qty input::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.ce-cart__price {
	font-size: 18px;
	font-weight: 700;
	color: var(--ce-text);
	white-space: nowrap;
	align-self: center;
}

.ce-cart__remove {
	position: absolute;
	top: 14px;
	right: 14px;
	width: 26px;
	height: 26px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 18px;
	line-height: 1;
	color: #b0b0b0;
	text-decoration: none;
	border-radius: 50%;
}

.ce-cart__remove:hover {
	color: var(--ce-danger);
	background: #fdecef;
}

/* Sağ: sipariş özeti */
.ce-cart__side {
	display: flex;
	flex-direction: column;
	gap: 14px;
	position: sticky;
	top: 16px;
}

.ce-cart__summary,
.ce-cart__couponbox {
	background: #fff;
	border: 1px solid var(--ce-border);
	border-radius: 10px;
	padding: 18px;
}

.ce-cart__summary-title {
	font-size: 18px;
	font-weight: 700;
	color: var(--ce-text);
	margin: 0 0 10px;
}

.ce-cart__total {
	font-size: 26px;
	font-weight: 700;
	color: var(--ce-text);
	margin-bottom: 14px;
}

.ce-cart__checkout {
	display: block;
	width: 100%;
	text-align: center;
	background: var(--ce-green);
	color: #fff;
	font-size: 15px;
	font-weight: 600;
	text-decoration: none;
	padding: 13px 16px;
	border-radius: 8px;
	transition: background 0.15s ease;
	box-sizing: border-box;
}

.ce-cart__checkout:hover {
	background: var(--ce-green-dark, #0e8140);
	color: #fff;
}

.ce-cart__lines {
	margin-top: 14px;
	padding-top: 12px;
	border-top: 1px solid var(--ce-border);
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.ce-cart__line {
	display: flex;
	justify-content: space-between;
	gap: 10px;
	font-size: 13px;
	color: var(--ce-muted);
}

.ce-cart__line--coupon {
	color: #3ca735;
	font-weight: 600;
}

.ce-cart__coupon-remove {
	color: var(--ce-danger);
	text-decoration: none;
	font-size: 14px;
	margin-left: 4px;
}

/* Kupon kutusu */
.ce-cart__coupon-toggle {
	display: flex;
	width: 100%;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	border: 0;
	background: none;
	padding: 0;
	font-family: inherit;
	font-size: 14px;
	font-weight: 600;
	color: var(--ce-text);
	cursor: pointer;
}

.ce-cart__coupon-toggle svg {
	transition: transform 0.15s ease;
}

.ce-cart__coupon-toggle[aria-expanded="true"] svg {
	transform: rotate(180deg);
}

.ce-cart__coupon-body {
	display: flex;
	gap: 8px;
	margin-top: 12px;
}

.ce-cart__coupon-body[hidden] {
	display: none;
}

.ce-cart__coupon-input {
	flex: 1;
	min-width: 0;
	border: 1px solid var(--ce-border);
	border-radius: 8px;
	padding: 9px 12px;
	font-family: inherit;
	font-size: 13px;
}

.ce-cart__coupon-input:focus {
	outline: none;
	border-color: var(--ce-green);
}

.ce-cart__coupon-apply {
	border: 0;
	background: var(--ce-green);
	color: #fff;
	font-family: inherit;
	font-size: 13px;
	font-weight: 600;
	padding: 9px 16px;
	border-radius: 8px;
	cursor: pointer;
}

/* Boş sepet */
.ce-cart__emptybox {
	background: #fff;
	border: 1px solid var(--ce-border);
	border-radius: 10px;
	padding: 48px 20px;
	text-align: center;
	color: var(--ce-muted);
}

.ce-cart__emptybox svg {
	color: var(--ce-green);
	margin-bottom: 10px;
}

.ce-cart__emptybox h1 {
	font-size: 20px;
	font-weight: 700;
	color: var(--ce-text);
	margin: 0 0 6px;
}

.ce-cart__emptybox p {
	font-size: 14px;
	margin: 0 0 18px;
}

.ce-cart__emptybox .ce-cart__checkout {
	display: inline-block;
	width: auto;
	padding: 12px 34px;
}

@media (max-width: 768px) {
	/* Güvence: mobilde hiçbir öğe sepet sayfasını yana kaydıramaz (html +
	   body; yalnız body'ye vermek iOS'ta layout viewport genişlemesini
	   durdurmaz) */
	html:has(body.woocommerce-cart) {
		overflow-x: hidden;
	}

	body.woocommerce-cart {
		overflow-x: hidden;
		overflow-x: clip;
	}

	.ce-cart {
		padding: 14px 0 30px;
	}

	.ce-cart__title {
		font-size: 20px;
	}

	.ce-cart__count {
		font-size: 14px;
	}

	/* Özet mobilde alta iner. minmax(0,1fr): kolon min-width:auto ile
	   geniş içeriğin (ör. kupon satırı) doğal genişliğine açılamaz */
	.ce-cart__grid {
		grid-template-columns: minmax(0, 1fr);
		gap: var(--ce-gap, 10px);
	}

	.ce-cart__items,
	.ce-cart__side {
		min-width: 0;
	}

	.ce-cart__side {
		position: static;
	}

	/* Kupon input'u ≥16px: mobil tarayıcının odakta otomatik zoom'unu
	   (yana kayma görüntüsünün kaynağı) tamamen engeller */
	.ce-cart__coupon-input {
		font-size: 16px;
	}

	/* 117:130 oranı korunur, orantılı küçülür */
	.ce-cart__row {
		grid-template-columns: 88px minmax(0, 1fr);
		gap: 12px;
		padding: 14px 12px;
	}

	.ce-cart__thumb {
		width: 88px;
	}

	.ce-cart__price {
		grid-column: 2;
		justify-self: end;
		font-size: 16px;
	}

	.ce-cart__seller {
		padding: 12px;
	}
}

/* ============ Mobil konum seçimi: bottom sheet (yalnızca ≤768px) ============ */
.ce-locsheet-btn,
.ce-locsheet {
	display: none;
}

body.ce-sheet-open {
	overflow: hidden;
}

@media (max-width: 768px) {
	/* Masaüstü inline kutu/panel/yeşil çubuk mobilde gizlenir; düğme + sheet devrede */
	.ce-locwrap .ce-locbox,
	.ce-locwrap .ce-locpanel,
	.ce-delivery-widget .ce-locbar {
		display: none !important;
	}

	/* Sade düğme (boş durum): açık gri zemin, gri pin + gri metin + gri ok */
	.ce-locsheet-btn {
		display: flex;
		align-items: center;
		gap: 10px;
		width: 100%;
		max-width: 100%;
		min-width: 0;
		box-sizing: border-box;
		overflow: hidden;
		background: #f5f5f5;
		border: 1px solid var(--ce-border);
		border-radius: 12px;
		padding: 9px 12px;
		font-family: inherit;
		font-size: 14px;
		color: var(--ce-muted);
		text-align: left;
		cursor: pointer;
	}

	.ce-locsheet-btn__pin {
		width: 34px;
		height: 34px;
		flex: 0 0 auto;
		border-radius: 50%;
		background: #e8e8e8;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.ce-locsheet-btn__pin svg {
		width: 17px;
		height: 17px;
		stroke: var(--ce-muted);
		stroke-width: 1.8;
		fill: none;
	}

	.ce-locsheet-btn__label {
		display: block;
		flex: 1 1 auto;
		width: 100%;
		min-width: 0;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	.ce-locsheet-btn__chev {
		width: 16px;
		height: 16px;
		flex: 0 0 auto;
		stroke: var(--ce-muted);
		stroke-width: 2;
		fill: none;
	}

	.ce-locsheet-btn__clear {
		display: none;
		width: 26px;
		height: 26px;
		flex: 0 0 auto;
		align-items: center;
		justify-content: center;
		border-radius: 50%;
		color: var(--ce-muted);
		font-size: 14px;
		line-height: 1;
	}

	.ce-locsheet-btn__clear:active {
		background: #f2f4f3;
	}

	/* Seçili durum: yeşil zemin, beyaz metin/pin, beyaz × */
	.ce-locsheet-btn.is-selected {
		background: var(--ce-green);
		border-color: var(--ce-green);
		color: #fff;
		font-weight: 600;
	}

	.ce-locsheet-btn.is-selected .ce-locsheet-btn__pin {
		background: rgba(255, 255, 255, 0.22);
	}

	.ce-locsheet-btn.is-selected .ce-locsheet-btn__pin svg {
		stroke: #fff;
	}

	.ce-locsheet-btn.is-selected .ce-locsheet-btn__chev {
		display: none;
	}

	.ce-locsheet-btn.is-selected .ce-locsheet-btn__clear {
		display: flex;
		color: #fff;
		background: rgba(255, 255, 255, 0.22);
	}

	.ce-locsheet-btn.is-selected .ce-locsheet-btn__clear:active {
		background: rgba(255, 255, 255, 0.38);
	}

	/* Tam ekran sheet: MOBİLDE görünür olması bu medya kuralından gelir.
	   Masaüstünde panel yalnız .is-forced ile açılır (quick-order.css). */
	.ce-locsheet:not([hidden]) {
		display: block;
		position: fixed;
		inset: 0;
		z-index: 100002;
	}
}

/* ============================================================
   KONUM PANELİ İÇ STİLLERİ — MEDYA KURALININ DIŞINDA
   Panel iki bağlamda açılır:
     - mobil: bottom-sheet (≤768px)
     - masaüstü: Hızlı Sipariş popup'ının ÜSTÜNDE ortalanmış kutu
       (.ce-locsheet.is-forced — quick-order.css)
   Bu kurallar ≤768px bloğunun içinde kaldığında masaüstünde panel
   STİLSİZ/boş açılıyordu. Panel masaüstünde varsayılan olarak zaten
   display:none olduğundan bu stiller orada bir şey render etmez.
   ============================================================ */
.ce-locsheet__overlay {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.5);
}

.ce-locsheet__panel {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	top: 0;
	background: #fff;
	display: flex;
	flex-direction: column;
	animation: ce-sheet-up 0.25s ease;
}

@keyframes ce-sheet-up {
	from { transform: translateY(24%); opacity: 0.6; }
	to { transform: translateY(0); opacity: 1; }
}

.ce-locsheet__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 16px var(--ce-gap, 10px) 12px;
	border-bottom: 1px solid var(--ce-border);
}

.ce-locsheet__head h3 {
	font-size: 16px;
	font-weight: 700;
	color: var(--ce-text);
	margin: 0;
}

.ce-locsheet__close {
	border: 0;
	background: none;
	font-size: 18px;
	line-height: 1;
	color: var(--ce-muted);
	padding: 6px;
	cursor: pointer;
}

.ce-locsheet__body {
	flex: 1;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	padding: 12px var(--ce-gap, 10px) 24px;
}

.ce-locsheet__warn {
	background: #fff4e5;
	border: 1px solid #f8dcb2;
	color: #b25e09;
	font-size: 13px;
	line-height: 1.45;
	padding: 11px 12px;
	border-radius: 8px;
	margin-bottom: 12px;
}

.ce-locsheet__search {
	display: flex;
	align-items: center;
	gap: 8px;
	border: 1px solid var(--ce-green);
	border-radius: 10px;
	padding: 12px;
}

.ce-locsheet__search svg {
	width: 18px;
	height: 18px;
	flex: 0 0 auto;
	stroke: var(--ce-green);
	stroke-width: 1.8;
	fill: none;
}

.ce-locsheet__search input {
	flex: 1;
	min-width: 0;
	border: 0;
	outline: none;
	font-family: inherit;
	font-size: 14px;
	color: var(--ce-text);
}

.ce-locsheet__hint {
	font-size: 12px;
	color: var(--ce-muted);
	line-height: 1.5;
	margin: 8px 0 14px;
}

.ce-locsheet__searchwrap {
	position: relative;
}

/* Öneriler: Google tarzı, input'a bitişik dropdown */
.ce-locsheet__results {
	display: none;
}

.ce-locsheet__searchwrap.is-open .ce-locsheet__search {
	border-radius: 10px 10px 0 0;
}

.ce-locsheet__searchwrap.is-open .ce-locsheet__results {
	display: block;
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	z-index: 5;
	margin-top: -1px;
	background: #fff;
	border: 1px solid var(--ce-green);
	border-top-color: var(--ce-border);
	border-radius: 0 0 10px 10px;
	box-shadow: 0 10px 24px rgba( 0, 0, 0, 0.12 );
	max-height: 55vh;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}

.ce-locsheet__result {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 2px;
	width: 100%;
	border: 0;
	border-bottom: 1px solid var(--ce-border);
	background: none;
	padding: 12px;
	font-family: inherit;
	text-align: left;
	cursor: pointer;
}

.ce-locsheet__result:last-child {
	border-bottom: 0;
}

.ce-locsheet__result strong {
	font-size: 14px;
	font-weight: 600;
	color: var(--ce-text);
}

.ce-locsheet__result span {
	font-size: 12px;
	color: var(--ce-muted);
}

.ce-locsheet__result:active {
	background: #f2faf6;
}

.ce-locsheet__saved h4 {
	font-size: 14px;
	font-weight: 700;
	color: var(--ce-text);
	margin: 6px 0 8px;
}

.ce-locsheet__item {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 3px;
	width: 100%;
	border: 1px solid var(--ce-border);
	border-radius: 10px;
	background: #fff;
	padding: 12px;
	margin-bottom: 8px;
	font-family: inherit;
	text-align: left;
	cursor: pointer;
}

.ce-locsheet__item:active {
	border-color: var(--ce-green);
	background: #f2faf6;
}

.ce-locsheet__item strong {
	font-size: 14px;
	font-weight: 600;
	color: var(--ce-text);
}

.ce-locsheet__item span {
	font-size: 12px;
	color: var(--ce-muted);
	line-height: 1.4;
}

.ce-locsheet__empty {
	font-size: 13px;
	color: var(--ce-muted);
	line-height: 1.5;
}

.ce-locsheet__empty a {
	color: var(--ce-green);
	font-weight: 600;
	text-decoration: none;
}

/* ---------- Konum paneli iç stilleri SONU ---------- */

/* Mobil sabit alt satın alma çubuğu (yalnızca ≤768px) */
.ce-stickybuy {
	display: none;
}

@media (max-width: 768px) {
	/* Sayfadaki olası yatay taşmalar sabit çubuğu kaydırmasın */
	html,
	body {
		overflow-x: clip;
	}

	/* Çubuğun yüksekliği TEK KAYNAK: çubuğun ÜSTÜNDE durması gereken yüzen
	   öğeler (Sipariş Asistanı butonu) bu değeri okur, kendi sabitini
	   yazmaz. 48px buton + 10+10 dolgu + 1px üst çizgi = 69px; güvenli
	   alan (safe-area) buna DAHİL DEĞİL, okuyan taraf ayrıca ekler. */
	:root {
		--ce-stickybuy-h: 69px;
	}

	.ce-stickybuy {
		position: fixed;
		left: 0;
		right: auto;
		bottom: 0;
		width: 100vw;
		max-width: 100%;
		z-index: 999;
		display: flex;
		align-items: center;
		gap: 12px;
		background: #fff;
		border-top: 1px solid var(--ce-border);
		padding: 10px 14px calc(10px + env(safe-area-inset-bottom));
		box-shadow: 0 -4px 16px rgba(0, 0, 0, 0.08);
	}

	.ce-stickybuy__price {
		display: flex;
		align-items: center;
		gap: 9px;
		min-width: 0;
	}

	.ce-stickybuy__disc {
		background: var(--ce-danger);
		color: #fff;
		font-size: 14px;
		font-weight: 800;
		border-radius: 6px;
		padding: 8px 8px;
		line-height: 1;
		flex-shrink: 0;
	}

	.ce-stickybuy__col {
		display: flex;
		flex-direction: column;
		line-height: 1.15;
		min-width: 0;
	}

	.ce-stickybuy__col del {
		font-size: 11.5px;
		color: var(--ce-muted);
		font-weight: 500;
	}

	/* Sepet çubuğu: fiyatın üstündeki küçük gri "Toplam" etiketi */
	.ce-stickybuy__label {
		font-size: 11px;
		font-weight: 600;
		color: var(--ce-muted);
		line-height: 1.2;
	}

	.ce-stickybuy__now {
		font-size: 18px;
		font-weight: 800;
		color: var(--ce-text);
		white-space: nowrap;
	}

	.ce-stickybuy__now em {
		display: block;
		font-style: normal;
		color: var(--ce-green);
		font-size: 11px;
		font-weight: 700;
	}

	/* Sepet çubuğu: fiyat ile "& Ücretsiz Teslimat" arasına ufak nefes payı */
	.woocommerce-cart .ce-stickybuy__now em {
		margin-top: 4px;
	}

	.ce-stickybuy__btn {
		margin-left: auto;
		flex-shrink: 0;
		height: 48px;
		display: flex;
		align-items: center;
		padding: 0 26px;
		font-size: 16px;
		border-radius: 8px;
		white-space: nowrap;
	}

	/* İçerik sabit çubuğun altında kalmasın */
	body.single-product {
		padding-bottom: 96px;
	}

	/* --- Mobil ürün sayfası düzeni --- */
	/* Yan boşluk standart 10px konteynırdan gelir (--ce-container-pad) */
	body.single-product .ce-main {
		padding-top: 8px;
	}

	body.single-product .woocommerce-breadcrumb {
		padding: 0;
		margin-bottom: 10px;
	}

	/* --- Breadcrumb: mobilde ferahlat (masaüstünde zaten flex + 8px gap var) ---
	   Kap flex olunca metin parçaları ve › ayraçları ayrı öğe olur; gap hem
	   ayraçların iki yanına yatay boşluk hem de alta kayan satırlar arasına
	   dikey boşluk verir. */
	.woocommerce-breadcrumb {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 4px 6px;
		line-height: 1.6;
	}

	/* Ayraç metinden bir ton açık: hiyerarşi daha okunur olur. */
	.woocommerce-breadcrumb .ce-crumbsep {
		color: #b7bcb9;
	}

	.ce-product-extra {
		padding: 0;
	}

	.ce-product {
		grid-template-columns: 1fr;
		gap: 8px;
	}

	.ce-gallery {
		flex-direction: column;
		gap: 0;
	}

	.ce-gallery__thumbs {
		display: none;
	}

	/* Görsel, 10px konteynır boşluğuyla tam genişlik */
	.ce-gallery__main {
		border: 0;
		border-radius: 12px;
	}

	/* Elle kaydırmalı galeri */
	.ce-gallery__track {
		overflow-x: auto;
		scrollbar-width: none;
	}

	.ce-gallery__track::-webkit-scrollbar {
		display: none;
	}

	.ce-gallery__fav {
		position: absolute;
		top: 10px;
		right: 10px;
		width: 38px;
		height: 38px;
		border-radius: 50%;
		background: #fff;
		box-shadow: 0 1px 8px rgba(0, 0, 0, 0.15);
		display: flex;
		align-items: center;
		justify-content: center;
		z-index: 1;
		cursor: pointer;
	}

	.ce-gallery__fav svg {
		width: 19px;
		height: 19px;
		fill: none;
		stroke: #9a9a9a;
		stroke-width: 1.8;
		transition: fill 0.15s, stroke 0.15s;
	}

	.ce-gallery__fav.is-active svg {
		fill: var(--ce-danger);
		stroke: var(--ce-danger);
	}

	.ce-gallery__ratebadge {
		position: absolute;
		right: 10px;
		bottom: 10px;
		z-index: 1;
		display: flex;
		align-items: center;
		gap: 4px;
		background: #fff;
		border-radius: 16px;
		/* Dokunma alanı parmak için yeterli kalsın (yorumlara götürür) */
		min-height: 34px;
		padding: 6px 12px;
		font-size: 12.5px;
		font-weight: 700;
		color: var(--ce-text);
		line-height: 1;
		text-decoration: none;
		box-shadow: 0 1px 8px rgba(0, 0, 0, 0.15);
	}

	.ce-gallery__ratebadge:hover,
	.ce-gallery__ratebadge:active {
		color: var(--ce-text);
	}

	.ce-gallery__ratecount {
		font-weight: 600;
		color: var(--ce-muted);
	}

	/* Rozetteki 5 yıldız: masaüstüyle aynı bileşen, küçük boyutta */
	.ce-gallery__stars {
		display: inline-flex;
		align-items: center;
		flex: 0 0 auto;
	}

	.ce-gallery__stars .star-rating {
		font-size: 9px;
		margin: 0;
		color: var(--ce-star);
	}

	.ce-gallery__stars .star-rating::before {
		color: #d6dad8;
	}

	.ce-gallery__star {
		color: var(--ce-star);
		font-size: 14px;
	}

	.ce-gallery__dots {
		display: flex;
		justify-content: center;
		gap: 6px;
		padding: 8px 0 0;
	}

	.ce-gallery__dot {
		width: 7px;
		height: 7px;
		border-radius: 50%;
		border: 0;
		padding: 0;
		background: #d7d7d7;
		transition: background 0.15s, width 0.15s;
	}

	.ce-gallery__dot.is-active {
		background: var(--ce-green);
		width: 18px;
		border-radius: 4px;
	}

	/* Panel: başlık sade, fiyat gizli (fiyat sabit alt çubukta) */
	.ce-panel {
		gap: 12px;
		padding: 0;
	}

	.ce-panel__head {
		background: none;
		border: 0;
		border-radius: 0;
		padding: 0;
		gap: 0;
	}

	.ce-panel__pricerow {
		display: none;
	}

	.ce-summary .product_title {
		font-size: 20px;
	}

	/* Sayfa içi Sipariş Ver + favori kutusu mobilde gizli (sabit çubukta var) */
	.ce-buy {
		display: none;
	}

	/* Gün kutuları: 4 eşit sütun, dikeyde dolgun (kareye yakın), yazı ortalı */
	.ce-date {
		padding: 22px 4px;
		gap: 5px;
	}

	.ce-date strong {
		font-size: 12.5px;
		max-width: 100%;
		overflow: hidden;
	}

	.ce-date span {
		font-size: 11px;
	}

	.ce-timebox__select {
		font-size: 12px;
		padding: 10px 26px 10px 10px;
	}

	/* Uzun adres/mekan adı sayfayı yatayda kaydırmasın */
	body {
		overflow-x: hidden;
	}

	.ce-main {
		max-width: 100%;
	}

	/* Güven satırı: küçük yazı + orantılı ikon, ikisi tek satırda yan yana */
	.ce-trustrow {
		font-size: 10px;
		flex-wrap: nowrap;
		justify-content: flex-start;
		gap: 14px;
		/* Sonraki bölümle ara tam 30px: 18px + panel gap 12px */
		margin-bottom: 18px;
	}

	.ce-trustrow span {
		gap: 5px;
		white-space: nowrap;
	}

	.ce-trustrow svg {
		width: 14px;
		height: 14px;
	}

}

@media (max-width: 480px) {
	/* Buton 46px'e düşüyor: 46 + 10 + 10 + 1 = 67px. */
	:root {
		--ce-stickybuy-h: 67px;
	}

	.ce-stickybuy {
		gap: 8px;
		padding-left: 10px;
		padding-right: 10px;
	}

	.ce-stickybuy__now {
		font-size: 16px;
	}

	.ce-stickybuy__btn {
		padding: 0 16px;
		font-size: 15px;
		height: 46px;
	}
}

/* ---------- Tasarlanabilir ürün ---------- */
.ce-designbadge {
	position: absolute;
	top: 10px;
	left: 10px;
	z-index: 2;
	background: var(--ce-green);
	color: #fff;
	font-size: 11.5px;
	font-weight: 800;
	letter-spacing: 0.6px;
	padding: 6px 10px;
	border-radius: 6px;
	line-height: 1.2;
}

/* Kart varyantı: sol ALT köşe — sol üstü artık ürün kodu (SKU) rozeti,
   sağ üstü favori kalbi kullanıyor; üçü de çakışmaz.

   z-index 0 (temel rozetteki 2 DEĞİL): "Sepete Eklendi" örtüsü (.ce-card__added,
   z-index 1) aktifken bu rozet örtünün ALTINDA kalır ve görünmez. Örtünün
   ÜSTÜNDE kalacak yalnız iki öğe var — SKU rozeti (2) ve favori kalbi (3).
   0 hâlâ konumlandırılmış bir katman olduğu için rozet ürün görselinin üstünde
   durur; örtü kapanınca (ürün sepetten çıkınca) normal yerinde görünür.
   Tek kural, tüm kart kullanımları için: büyük/küçük dikey kart (.ce-card),
   yatay kart (.ce-rowcard) ve arşiv kartları aynı sınıfı kullanır. */
.ce-designbadge--card {
	top: auto;
	bottom: 8px;
	left: 8px;
	z-index: 0;
	font-size: 9px;
	letter-spacing: 0.4px;
	padding: 4px 7px;
	border-radius: 5px;
}

/* Yatay kart (Benzer Ürünler listesi): daha da kompakt, SOL ÜST köşede.
   bottom: auto ZORUNLU — bu rozet .ce-designbadge--card ile birlikte
   kullanılıyor ve o varyant bottom: 8px veriyor. Sıfırlanmazsa öğe hem
   top hem bottom'a bağlanıp DİKEY OLARAK GERİLİR ve görseli kaplar
   (yatay kartta görsel kart yüksekliği kadar uzun olduğu için mobilde
   kocaman yeşil blok olarak görünüyordu). */
.ce-designbadge--row {
	top: 5px;
	bottom: auto;
	left: 5px;
	font-size: 7.5px;
	padding: 3px 5px;
}

/* Arşiv kartında "İndirim!" rozetiyle üst üste binmesin */
.woocommerce ul.products li.product:has(.ce-designbadge) .onsale {
	top: 38px;
}

@media (max-width: 768px) {
	.ce-designbadge--card {
		font-size: 8px;
		padding: 3px 6px;
	}
}

.ce-design-go {
	margin: 0;
}

.ce-designbtn {
	width: 100%;
	height: 60px;
	font-size: 20px;
	border-radius: 8px;
}

.ce-design-note {
	margin: 8px 0 0;
	font-size: 12.5px;
	color: var(--ce-muted);
}

/* Kişiselleştirme adımı */
.ce-design {
	max-width: 1100px;
	margin: 0 auto;
}

.ce-design__title {
	font-size: 24px;
	font-weight: 800;
	margin: 8px 0 20px;
}

.ce-design__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 280px;
	gap: 24px;
	align-items: start;
}

.ce-design__form {
	background: #fff;
	border: 1px solid var(--ce-border);
	border-radius: 10px;
	padding: 22px;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.ce-design__field {
	margin: 0;
}

.ce-design__field label {
	display: block;
	font-weight: 600;
	font-size: 14px;
	margin-bottom: 6px;
	color: var(--ce-text);
}

.ce-req {
	color: var(--ce-danger);
}

.ce-design__field input,
.ce-design__field textarea {
	width: 100%;
	border: 1px solid #cfcfcf;
	border-radius: 8px;
	padding: 11px 12px;
	font-family: inherit;
	font-size: 14px;
	color: var(--ce-text);
	outline: none;
	resize: vertical;
}

.ce-design__field input:focus,
.ce-design__field textarea:focus {
	border-color: var(--ce-green);
}

.ce-design__hint {
	display: block;
	font-size: 12px;
	color: var(--ce-muted);
	margin-top: 4px;
}

/* Zorunlu alan / limit uyarısı: alanın ALTINDA, checkout alanlarıyla aynı dil. */
.ce-design__err {
	display: block;
	margin-top: 5px;
	font-size: 12.5px;
	line-height: 1.4;
	color: var(--ce-danger, #e0234e);
}

.ce-design__err[hidden] {
	display: none;
}

.ce-design__field.is-invalid input,
.ce-design__field.is-invalid textarea {
	border-color: var(--ce-danger, #e0234e);
}

/* Sağ sütun: üstte Devam Et, altında "Ürün Bilgisi" başlığı + sade kart */
.ce-design__side {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.ce-design__infotitle {
	margin: 6px 0 0;
	font-size: 17px;
	font-weight: 800;
	color: var(--ce-text);
	text-align: left;
}

.ce-design__product {
	background: #fff;
	border: 1px solid var(--ce-border);
	border-radius: 12px;
	padding: 14px;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.ce-design__product img {
	width: 100%;
	aspect-ratio: 1;
	object-fit: cover;
	border-radius: 8px;
	display: block;
	margin: 0 auto;
}

.ce-design__product span {
	font-size: 14px;
	font-weight: 600;
	color: var(--ce-text);
	line-height: 1.4;
	text-align: left;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.ce-design__submit {
	width: 100%;
	height: 52px;
	font-size: 17px;
	border-radius: 8px;
}

@media (max-width: 768px) {
	.ce-design__grid {
		grid-template-columns: 1fr;
	}

	.ce-design__title {
		font-size: 20px;
	}
}

/* Sekmeler + ilgili ürünler */
.ce-product-extra {
	margin-top: 48px;
}

.ce-related {
	margin-top: 40px;
	/* Bölüm ile sonrasında gelen içerik arası boşluk */
	margin-bottom: 30px;
}

/* Benzer ürünler: masaüstünde dikey kart GRID'i, mobilde yatay liste */
.ce-related__mobile {
	display: none;
}

.ce-cardgrid__title {
	font-size: 22px;
	font-weight: 800;
	margin: 0 0 16px;
	color: var(--ce-text);
}

.ce-cardgrid__items {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 16px;
}

@media (max-width: 768px) {
	.ce-related__desktop {
		display: none;
	}

	.ce-related__mobile {
		display: block;
	}

	/* Benzer Seçenekler başlığı: 12px ve ortalı (yalnız mobil liste) */
	.ce-related__mobile .ce-rowlist__title {
		font-size: 12px;
		text-align: center;
	}

	/* Yorumlar başlığı: mobilde 12px (hiza mevcut haliyle) */
	.ce-product-extra .woocommerce-Reviews-title {
		font-size: 12px;
	}
}

/* SIRALAMA (masaüstü + mobil): Benzer Seçenekler, Ürün Açıklaması'nın HEMEN
   arkasına gelir. Değerlendirme vb. paneller sekme sarmalayıcısının içinde
   olduğundan hook ile araya girilemez; sarmalayıcı display:contents yapılıp
   tüm bölümler tek flex bağlamında order ile dizilir. DOM sırası değişmez. */
.ce-product-extra {
	display: flex;
	flex-direction: column;
}

.ce-product-extra > .woocommerce-tabs {
	display: contents;
}

.ce-product-extra .woocommerce-tabs ul.tabs {
	order: 0;
}

/* Diğer paneller (değerlendirmeler, ek bilgiler) en sona */
.ce-product-extra .woocommerce-tabs .woocommerce-Tabs-panel {
	order: 4;
}

.ce-product-extra .woocommerce-tabs .woocommerce-Tabs-panel--description {
	order: 1;
}

.ce-product-extra .woocommerce-tabs .ce-desc-more {
	order: 2;
}

.ce-product-extra > .ce-related {
	order: 3;
}

/* ---------- Yorumlar bölümü: kart görünümlü form + yıldızlı puanlama ---------- */
#reviews #review_form_wrapper {
	background: #fff;
	border: 1px solid var(--ce-border);
	border-radius: 10px;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
	padding: 24px;
	margin-top: 16px;
}

#reviews .comment-reply-title {
	display: block;
	font-size: 14px;
	font-weight: 700;
	color: var(--ce-text);
	margin-bottom: 16px;
}

#reviews .comment-form label {
	display: block;
	font-size: 13px;
	font-weight: 600;
	color: var(--ce-text);
	margin-bottom: 6px;
}

#reviews .comment-form p {
	margin: 0 0 14px;
}

/* Rating select gizli ama DOM'da (name="rating" WooCommerce'a gider) */
#reviews .comment-form-rating .ce-rating-select {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	border: 0;
	overflow: hidden;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	white-space: nowrap;
}

/* Yıldızlar: klasik altın sarısı, hover/seçimde dolar */
.ce-stars {
	display: flex;
	gap: 4px;
}

.ce-star {
	border: 0;
	background: none;
	padding: 2px;
	line-height: 0;
	cursor: pointer;
}

.ce-star svg {
	width: 28px;
	height: 28px;
	fill: none;
	stroke: #c9c9c9;
	stroke-width: 1.5;
	transition: fill 0.12s, stroke 0.12s;
}

.ce-star.is-filled svg,
.ce-star.is-hover svg {
	fill: #f5a623;
	stroke: #f5a623;
}

/* Alanlar: tam genişlik, odakta marka yeşili çerçeve */
#reviews .comment-form textarea,
#reviews .comment-form input[type="text"],
#reviews .comment-form input[type="email"],
#reviews .comment-form input[type="url"] {
	width: 100%;
	box-sizing: border-box;
	border: 1px solid var(--ce-border);
	border-radius: 8px;
	padding: 11px 12px;
	font-family: inherit;
	font-size: 14px;
	color: var(--ce-text);
	background: #fff;
	outline: none;
	transition: border-color 0.15s;
}

#reviews .comment-form textarea {
	min-height: 120px;
	resize: vertical;
}

#reviews .comment-form textarea:focus,
#reviews .comment-form input[type="text"]:focus,
#reviews .comment-form input[type="email"]:focus,
#reviews .comment-form input[type="url"]:focus {
	border-color: var(--ce-green);
}

/* Çerez onayı satırı: kutucuk + metin yan yana */
#reviews .comment-form-cookies-consent {
	display: flex;
	align-items: flex-start;
	gap: 8px;
}

#reviews .comment-form-cookies-consent label {
	display: inline;
	font-weight: 400;
	font-size: 12.5px;
	color: var(--ce-muted);
	margin: 0;
}

/* Gönder butonu: yeşil dolgu, sağa hizalı (mobilde tam genişlik) */
#reviews .form-submit {
	display: flex;
	justify-content: flex-end;
	margin: 4px 0 0;
}

#reviews .comment-form .submit {
	background: var(--ce-green);
	color: #fff;
	border: 0;
	border-radius: 8px;
	padding: 12px 30px;
	font-family: inherit;
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
	transition: background 0.15s;
}

#reviews .comment-form .submit:hover {
	background: var(--ce-green-dark);
}

/* Boş durum metni: sade ve gri */
#reviews .woocommerce-noreviews {
	font-size: 13px;
	color: var(--ce-muted);
	margin: 0 0 6px;
}

/* Yorum listesi (çiçeksepeti düzeni): tüm liste tek kart, satırlar arası
   ince ayraç. Solda yıldız + maskeli isim + şehir + tarih, sağda gri
   zeminli yorum kutusu + Faydalı butonu. */
#reviews .commentlist {
	list-style: none;
	margin: 0 0 18px;
	padding: 0;
	background: #fff;
	border: 1px solid var(--ce-border);
	border-radius: 10px;
	overflow: hidden;
}

#reviews .commentlist li.ce-review {
	padding: 16px;
	margin: 0;
	border-bottom: 1px solid var(--ce-border);
}

#reviews .commentlist li.ce-review:last-child {
	border-bottom: 0;
}

.ce-review__side {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 4px;
	margin-bottom: 10px;
}

.ce-review__side .ce-stars--static .ce-star svg {
	width: 18px;
	height: 18px;
}

.ce-review__side .ce-stars--static .ce-star:not(.is-filled) svg {
	stroke: #d9d9d9;
}

.ce-review__name {
	font-size: 14px;
	font-weight: 700;
	color: var(--ce-text);
}

.ce-review__city {
	font-size: 11.5px;
	font-weight: 600;
	letter-spacing: 0.02em;
	color: var(--ce-muted);
}

.ce-review__date {
	font-size: 12px;
	color: var(--ce-muted);
}

.ce-review__text {
	background: #f5f5f5;
	border-radius: 10px;
	padding: 20px;
	font-size: 14px;
	line-height: 1.65;
	color: var(--ce-text);
}

.ce-review__text p {
	margin: 0 0 8px;
}

.ce-review__text p:last-child {
	margin-bottom: 0;
}

.ce-review__actions {
	display: flex;
	justify-content: flex-end;
	margin-top: 10px;
}

.ce-review__helpful {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: #fff;
	border: 1px solid var(--ce-border);
	border-radius: 8px;
	padding: 7px 14px;
	font-family: inherit;
	font-size: 12.5px;
	font-weight: 600;
	color: var(--ce-muted);
	cursor: pointer;
	transition: border-color 0.15s, color 0.15s;
}

.ce-review__helpful:hover {
	border-color: var(--ce-green);
	color: var(--ce-green);
}

/* Beğenilmiş durum: yeşil vurgu + dolu başparmak */
.ce-review__helpful.is-liked {
	border-color: var(--ce-green);
	color: var(--ce-green);
	background: #f2faf6;
}

.ce-review__helpful.is-liked svg {
	fill: currentColor;
}

.ce-review__helpful:disabled {
	opacity: 0.6;
	cursor: default;
}

/* Mobil-özel yorum öğeleri masaüstünde hiç görünmez */
.ce-review__mtop,
.ce-review__mbottom,
.ce-review__more,
.ce-review__text--short {
	display: none;
}

.ce-review__helpful svg {
	width: 15px;
	height: 15px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.7;
	flex-shrink: 0;
}

/* Masaüstü: sol dar sütun (~180px) + sağ geniş sütun YAN YANA.
   WooCommerce çekirdek CSS'i (.woocommerce #reviews #comments ol.commentlist li)
   iki id ile daha özgül olduğundan seçiciler aynı güçte yazıldı; hücreler
   grid-column/row ile açıkça sabitlendi — içerik yanlış hücreye düşemez. */
@media (min-width: 769px) {
	/* Dış kart: içeriğe nefes payı + diğer bölümlerle rahat dikey boşluk */
	#reviews .commentlist {
		padding: 30px;
		margin: 24px 0;
	}

	.woocommerce #reviews #comments ol.commentlist li.ce-review,
	#reviews .commentlist li.ce-review {
		display: grid;
		grid-template-columns: 180px 1fr;
		grid-auto-flow: row;
		gap: 24px;
		align-items: start;
		position: relative;
		/* Yan boşluğu dış kart verir; tam-genişlik alt çizgi masaüstünde kapalı */
		padding: 20px 0;
		border-bottom: 0;
		width: 100%;
		box-sizing: border-box;
	}

	#reviews .commentlist li.ce-review:first-child {
		padding-top: 0;
	}

	#reviews .commentlist li.ce-review:last-child {
		padding-bottom: 0;
	}

	/* Ayırıcı: yalnız yorumların ARASINDA — kenarlara değmeyen, uçları
	   yumuşayan ince çizgi + ortada minik romb vurgusu */
	.woocommerce #reviews #comments ol.commentlist li.ce-review + li.ce-review::before,
	#reviews .commentlist li.ce-review + li.ce-review::before {
		content: "";
		position: absolute;
		top: 0;
		left: 24px;
		right: 24px;
		height: 1px;
		background: linear-gradient(to right, transparent, var(--ce-border) 15%, var(--ce-border) 85%, transparent);
	}

	.woocommerce #reviews #comments ol.commentlist li.ce-review + li.ce-review::after,
	#reviews .commentlist li.ce-review + li.ce-review::after {
		content: "";
		position: absolute;
		top: -2px;
		left: 50%;
		width: 5px;
		height: 5px;
		background: var(--ce-border);
		transform: translateX(-50%) rotate(45deg);
	}

	.woocommerce #reviews #comments ol.commentlist li.ce-review > .ce-review__side,
	#reviews .commentlist li.ce-review > .ce-review__side {
		grid-column: 1;
		grid-row: 1;
		margin: 0;
	}

	.woocommerce #reviews #comments ol.commentlist li.ce-review > .ce-review__main,
	#reviews .commentlist li.ce-review > .ce-review__main {
		grid-column: 2;
		grid-row: 1;
		min-width: 0;
		width: auto;
		margin: 0;
	}

	/* Faydalı butonu: metin kutusunun altında, sağa yaslı */
	.ce-review__actions {
		justify-content: flex-end;
	}

	.ce-review__helpful {
		margin-left: auto;
	}
}

@media (max-width: 768px) {
	#reviews #review_form_wrapper {
		padding: 16px;
	}

	#reviews .comment-form .submit {
		width: 100%;
	}

	/* --- Mobil yorum listesi (çiçeksepeti düzeni): tek sütun, kartlı --- */
	.woocommerce #reviews #comments ol.commentlist,
	#reviews .commentlist {
		border: 0;
		border-radius: 0;
		overflow: visible;
		margin: 0 0 14px;
	}

	/* Her yorum KENDİ KARTINDA: açık gri zemin, yuvarlak köşe; ayrım
	   çizgiyle değil kartlar arası boşlukla (referanstaki gibi).
	   Seçici, WooCommerce çekirdeğinin iki ID'li kuralıyla
	   (.woocommerce #reviews #comments ol.commentlist li { background:0 0;
	   padding:0; margin:0 0 20px }) AYNI zinciri kullanır — özgüllük eşit,
	   tema CSS'i sonra yüklendiği için kazanır. */
	.woocommerce #reviews #comments ol.commentlist li.ce-review,
	#reviews .commentlist li.ce-review {
		position: relative;
		background: #f7f7f7;
		border-radius: 10px;
		padding: 16px;
		margin: 0 0 12px;
		border: 0;
	}

	.woocommerce #reviews #comments ol.commentlist li.ce-review:last-child,
	#reviews .commentlist li.ce-review:last-child {
		margin-bottom: 0;
	}

	/* Masaüstü blokları mobilde gizli */
	#reviews .commentlist .ce-review__side,
	#reviews .commentlist .ce-review__actions {
		display: none;
	}

	/* Üst satır: yıldız solda, tarih sağda — aynı satırda dikey ortalı */
	.ce-review__mtop {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 10px;
		margin-bottom: 10px;
	}

	.ce-review__mtop .ce-stars {
		gap: 3px;
		align-items: center;
	}

	.ce-review__mtop .ce-stars--static .ce-star {
		padding: 0;
		display: flex;
		align-items: center;
	}

	.ce-review__mtop .ce-stars--static .ce-star svg {
		width: 19px;
		height: 19px;
		display: block;
	}

	/* Referanstaki gibi: boş yıldızlar kontur değil, DOLU açık gri */
	.ce-review__mtop .ce-stars--static .ce-star:not(.is-filled) svg {
		fill: #d9d9d9;
		stroke: #d9d9d9;
	}

	.ce-review__mtop .ce-review__date {
		font-size: 12.5px;
		color: #8b8b8b;
		white-space: nowrap;
		line-height: 1;
	}

	/* Metin: düz blok (gri kutu yok), referanstaki orta gri ton;
	   uzun yorumda 3 satır + "Devamını Oku" */
	.ce-review__text {
		background: none;
		border-radius: 0;
		padding: 0;
		font-size: 14px;
		line-height: 1.5;
		color: #5f5f5f;
	}

	/* Kapalı hal: kısa sürüm (280 kr, kelime sonunda "…") görünür, tam gizli;
	   "Devamını Oku" ile yer değiştirirler */
	#reviews .commentlist li.ce-review--clamp:not(.is-open) .ce-review__text--full {
		display: none;
	}

	#reviews .commentlist li.ce-review--clamp:not(.is-open) .ce-review__text--short {
		display: block;
	}

	#reviews .commentlist li.ce-review--clamp .ce-review__more {
		display: inline-block;
		background: none;
		border: 0;
		padding: 0;
		margin-top: 6px;
		color: var(--ce-green);
		font-family: inherit;
		font-size: 14px;
		font-weight: 700;
		text-decoration: underline;
		text-underline-offset: 3px;
		cursor: pointer;
	}

	/* Alt satır: üstünde kart İÇİ ince ayırıcı (metinle arası 12px, isimle
	   arası 12px); solda ikon + isim | bölge, sağda Faydalı — TEK satır */
	.ce-review__mbottom {
		display: flex;
		justify-content: space-between;
		align-items: center;
		gap: 10px;
		margin-top: 12px;
		padding-top: 12px;
		border-top: 1px solid #e8e8e8;
		font-size: 12.5px;
		color: #9b9b9b;
		letter-spacing: 0.02em;
	}

	.ce-review__muserwrap {
		display: flex;
		align-items: center;
		gap: 6px;
		min-width: 0;
	}

	.ce-review__usericon {
		width: 15px;
		height: 15px;
		fill: #b3b3b3;
		stroke: #b3b3b3;
		stroke-width: 1;
		flex-shrink: 0;
	}

	.ce-review__muser {
		min-width: 0;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	/* Sade Faydalı: zeminsiz/çerçevesiz, gri başparmak + gri sayı */
	.ce-review__helpful--m {
		background: none;
		border: 0;
		border-radius: 0;
		padding: 4px 4px;
		gap: 5px;
		font-size: 12.5px;
		color: #9b9b9b;
		min-height: 32px;
		align-items: center;
	}

	.ce-review__helpful--m:not(.is-liked) svg {
		width: 15px;
		height: 15px;
		fill: #b3b3b3;
		stroke: #b3b3b3;
		stroke-width: 1;
	}

	/* Beğenilmiş: yalnız ikon dolgusu yeşilleşir — kutu/zemin yok */
	.ce-review__helpful--m.is-liked {
		background: none;
		border: 0;
		color: var(--ce-green);
	}

	.ce-review__helpful--m.is-liked svg {
		width: 15px;
		height: 15px;
		fill: currentColor;
		stroke: currentColor;
		stroke-width: 1;
	}
}

/* ---------- Sipariş detayı: ürün başına değerlendirme ---------- */
.ce-orev {
	margin-top: 28px;
}

.ce-orev__title {
	font-size: 18px;
	font-weight: 800;
	color: var(--ce-text);
	margin: 0 0 14px;
}

.ce-orev__item {
	background: #fff;
	border: 1px solid var(--ce-border);
	border-radius: 10px;
	padding: 16px;
	margin-bottom: 12px;
}

.ce-orev__prod {
	/* inline-flex: link yalnız görsel + ad genişliğinde — satırın geri kalan
	   boşluğu tıklanabilir değildir (blok flex tüm satırı kaplıyordu) */
	display: inline-flex;
	max-width: 100%;
	align-items: center;
	gap: 12px;
	text-decoration: none;
	color: var(--ce-text);
	font-size: 14px;
	font-weight: 600;
	margin-bottom: 12px;
}

.ce-orev__prod img {
	width: 56px;
	height: 56px;
	object-fit: cover;
	border-radius: 8px;
	flex-shrink: 0;
}

.ce-orev__form {
	display: flex;
	flex-direction: column;
	gap: 10px;
	align-items: flex-start;
}

.ce-orev__form .ce-stars {
	margin: 0;
}

.ce-orev__form textarea {
	width: 100%;
	box-sizing: border-box;
	border: 1px solid var(--ce-border);
	border-radius: 8px;
	padding: 11px 12px;
	font-family: inherit;
	font-size: 14px;
	color: var(--ce-text);
	min-height: 80px;
	resize: vertical;
	outline: none;
	transition: border-color 0.15s;
}

.ce-orev__form textarea:focus {
	border-color: var(--ce-green);
}

.ce-orev__msg {
	margin: 0;
	font-size: 12.5px;
	font-weight: 600;
	color: var(--ce-danger);
}

.ce-orev__submit {
	background: var(--ce-green);
	color: #fff;
	border: 0;
	border-radius: 8px;
	padding: 11px 26px;
	font-family: inherit;
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
	transition: background 0.15s;
}

.ce-orev__submit:hover {
	background: var(--ce-green-dark);
}

.ce-orev__submit:disabled {
	opacity: 0.6;
	cursor: default;
}

/* Daha önce değerlendirilmiş ürün: statik yıldız + kendi yorumu */
.ce-stars--static .ce-star {
	cursor: default;
	padding: 0;
}

.ce-stars--static .ce-star svg {
	width: 20px;
	height: 20px;
}

.ce-orev__donetext {
	margin: 6px 0 2px;
	font-size: 13.5px;
	font-weight: 600;
	color: var(--ce-text);
}

.ce-orev__quote {
	margin: 0;
	font-size: 13px;
	color: var(--ce-muted);
}

/* Sipariş listesindeki "Değerlendir" rozeti yeşil olsun */
.woocommerce-MyAccount-content .button.ce-review {
	background: var(--ce-green);
	color: #fff;
}

@media (max-width: 768px) {
	.ce-orev__item {
		padding: 14px;
	}

	.ce-orev__submit {
		width: 100%;
	}
}

/* Benzer Seçenekler başlığı: SADECE masaüstünde 21px ve ortalı */
@media (min-width: 769px) {
	.ce-related__desktop .ce-cardgrid__title {
		font-size: 21px;
		text-align: center;
	}

	/* Yorumlar başlığı: masaüstünde 21px ve ortalı */
	.ce-product-extra .woocommerce-Reviews-title {
		font-size: 21px;
		text-align: center;
	}
}

/* ---------- Yatay ürün kartı listesi (Benzer Ürünler) ---------- */
.ce-rowlist__title {
	font-size: 22px;
	font-weight: 800;
	margin: 0 0 14px;
	color: var(--ce-text);
}

.ce-rowlist__items {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.ce-rowcard {
	display: flex;
	align-items: stretch;
	gap: 14px;
	min-height: 118px;
	background: #fff;
	border: 1px solid var(--ce-border);
	border-radius: 10px;
	padding: 0;
	overflow: hidden;
	box-shadow: 0 1px 6px rgba(0, 0, 0, 0.05);
	color: var(--ce-text);
	transition: box-shadow 0.15s;
}

.ce-rowcard:hover {
	box-shadow: 0 3px 14px rgba(0, 0, 0, 0.1);
	color: var(--ce-text);
}

/* Görsel: kartın sol tarafını üstten alta TAM kaplar (kenarlara yapışık) */
.ce-rowcard__img {
	position: relative;
	width: 38%;
	min-width: 118px;
	max-width: 190px;
	align-self: stretch;
	flex-shrink: 0;
	border-radius: 0;
	overflow: hidden;
	line-height: 0;
	background: var(--ce-bg-soft);
}

.ce-rowcard__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	margin: 0;
}

.ce-rowcard__fav {
	position: absolute;
	top: 5px;
	right: 5px;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 1px 5px rgba(0, 0, 0, 0.15);
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 1;
	cursor: pointer;
}

.ce-rowcard__fav svg {
	width: 13px;
	height: 13px;
	fill: none;
	stroke: #9a9a9a;
	stroke-width: 1.8;
	transition: fill 0.15s, stroke 0.15s;
}

.ce-rowcard__fav.is-active svg {
	fill: var(--ce-danger);
	stroke: var(--ce-danger);
}

/* İç boşluk sadece sağ bilgi bölümünde */
.ce-rowcard__info {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 7px;
	padding: 12px 14px 12px 0;
}

.ce-rowcard__title {
	font-size: 14px;
	font-weight: 600;
	color: var(--ce-text);
	line-height: 1.35;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.ce-rowcard__ship {
	display: flex;
	align-items: center;
	gap: 5px;
	font-size: 12px;
	font-weight: 700;
	color: var(--ce-green);
	line-height: 1.2;
}

.ce-rowcard__ship svg {
	width: 15px;
	height: 15px;
	fill: none;
	stroke: var(--ce-green);
	stroke-width: 1.7;
	flex-shrink: 0;
}

.ce-rowcard__rating {
	display: flex;
	align-items: center;
	gap: 5px;
	font-size: 12px;
	color: var(--ce-muted);
	min-height: 16px;
}

.ce-rowcard__rating .star-rating {
	font-size: 12px;
	margin: 0;
}

.ce-rowcard__rating em {
	font-style: normal;
}

.ce-rowcard__pricerow {
	display: flex;
	align-items: center;
	gap: 8px;
	line-height: 1.2;
}

.ce-rowcard__disc {
	background: var(--ce-danger);
	color: #fff;
	font-size: 12px;
	font-weight: 800;
	border-radius: 4px;
	padding: 3px 6px;
	line-height: 1;
}

.ce-rowcard__pricerow del {
	font-size: 12.5px;
	font-weight: 500;
	color: var(--ce-muted);
}

.ce-rowcard__price {
	font-size: 17px;
	font-weight: 800;
	color: var(--ce-text);
}

.woocommerce div.product .woocommerce-tabs ul.tabs,
.ce-product-extra .woocommerce-tabs ul.tabs {
	list-style: none;
	display: flex;
	padding: 0;
	margin: 0 0 20px;
	border-bottom: 2px solid var(--ce-border);
}

.woocommerce div.product .woocommerce-tabs ul.tabs::before,
.ce-product-extra .woocommerce-tabs ul.tabs::before {
	display: none;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li,
.ce-product-extra .woocommerce-tabs ul.tabs li {
	list-style: none;
	background: none;
	border: 0;
	border-radius: 0;
	margin: 0;
	padding: 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after,
.ce-product-extra .woocommerce-tabs ul.tabs li::before,
.ce-product-extra .woocommerce-tabs ul.tabs li::after {
	display: none;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a,
.ce-product-extra .woocommerce-tabs ul.tabs li a {
	display: block;
	padding: 10px 18px;
	font-weight: 700;
	color: var(--ce-muted);
	border-bottom: 3px solid transparent;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a,
.ce-product-extra .woocommerce-tabs ul.tabs li.active a {
	color: var(--ce-green);
	border-bottom-color: var(--ce-green);
}

.woocommerce .related.products > h2,
.woocommerce .up-sells > h2 {
	font-size: 22px;
	margin-bottom: 18px;
}

/* ---------- Hesabım (My Account) ---------- */
/* Izgara, nav+içeriğin GERÇEK ebeveynine uygulanır (aradaki sarmalayıcı ne olursa olsun) */
.woocommerce-account .ce-main *:has(> .woocommerce-MyAccount-navigation) {
	display: grid;
	grid-template-columns: 260px minmax(0, 1fr);
	gap: 24px;
	align-items: start;
}

.woocommerce-account .ce-main .woocommerce-notices-wrapper {
	grid-column: 1 / -1;
}

.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content {
	float: none !important;
	width: auto !important;
}

/* Yerleşimi açıkça sabitle: nav sol sütun, içerik sağ sütun */
.woocommerce-account .woocommerce-MyAccount-navigation {
	grid-column: 1;
	grid-row: 1;
}

.woocommerce-account .woocommerce-MyAccount-content {
	grid-column: 2;
	grid-row: 1;
}

/* Sol menü */
.woocommerce-MyAccount-navigation {
	background: #fff;
	border: 1px solid var(--ce-border);
	border-radius: 12px;
	overflow: hidden;
}

.woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 8px;
}

.woocommerce-MyAccount-navigation li {
	margin: 2px 0;
}

.woocommerce-MyAccount-navigation li a {
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 11px 12px;
	border-radius: 8px;
	font-size: 14px;
	font-weight: 500;
	color: var(--ce-text);
	transition: background 0.12s, color 0.12s;
}

.woocommerce-MyAccount-navigation li a::before {
	content: "";
	width: 19px;
	height: 19px;
	flex-shrink: 0;
	background-color: currentColor;
	-webkit-mask: var(--icon) no-repeat center / contain;
	mask: var(--icon) no-repeat center / contain;
}

.woocommerce-MyAccount-navigation li a:hover {
	background: #f5f5f5;
}

.woocommerce-MyAccount-navigation li.is-active a {
	background: var(--ce-green-light);
	color: var(--ce-green-dark);
	font-weight: 700;
}

.woocommerce-MyAccount-navigation-link--dashboard a { --icon: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 3h8v8H3zM13 3h8v8h-8zM3 13h8v8H3zM13 13h8v8h-8z"/></svg>'); }
.woocommerce-MyAccount-navigation-link--orders a { --icon: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 2l9 4.5v11L12 22l-9-4.5v-11L12 2zm0 2.2L5.6 7.3 12 10.4l6.4-3.1L12 4.2zM5 9v7.2l6 3V12L5 9zm14 0l-6 3v7.2l6-3V9z"/></svg>'); }
.woocommerce-MyAccount-navigation-link--indirimlerim a { --icon: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M21.4 11.6l-9-9C12 2.2 11.5 2 11 2H4a2 2 0 0 0-2 2v7c0 .5.2 1 .6 1.4l9 9a2 2 0 0 0 2.8 0l7-7a2 2 0 0 0 0-2.8zM6.5 8A1.5 1.5 0 1 1 8 6.5 1.5 1.5 0 0 1 6.5 8z"/></svg>'); }
.woocommerce-MyAccount-navigation-link--adreslerim a { --icon: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 2a7 7 0 0 1 7 7c0 5.25-7 13-7 13S5 14.25 5 9a7 7 0 0 1 7-7zm0 9.5A2.5 2.5 0 1 0 12 6.5a2.5 2.5 0 0 0 0 5z"/></svg>'); }
.woocommerce-MyAccount-navigation-link--favorilerim a { --icon: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 20.5s-7.5-4.7-9.3-9A5.2 5.2 0 0 1 12 6.6a5.2 5.2 0 0 1 9.3 4.9c-1.8 4.3-9.3 9-9.3 9z"/></svg>'); }
.woocommerce-MyAccount-navigation-link--edit-account a { --icon: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 12a4 4 0 1 0-4-4 4 4 0 0 0 4 4zm0 2c-4.4 0-8 2.2-8 5v1h16v-1c0-2.8-3.6-5-8-5z"/></svg>'); }
.woocommerce-MyAccount-navigation-link--customer-logout a { --icon: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M16 13v-2H7V8l-5 4 5 4v-3h9zM20 3h-8v2h8v14h-8v2h8a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2z"/></svg>'); }

/* Masaüstü sol nav (çiçeksepeti referansı): çerçevesiz beyaz zemin,
   seyrek dizilmiş tam genişlik yuvarlak pill satırlar. Varsayılan gri
   ikon + koyu etiket; hover'da aktiften daha soft açık yeşil dolgu ve
   yeşil ikon; aktifte açık yeşil dolgu + yeşil semibold etiket.
   Mobil çip şeridi (≤900px) yukarıdaki taban stillerle aynen kalır. */
@media (min-width: 901px) {
	.woocommerce-MyAccount-navigation {
		background: transparent;
		border: 0;
		border-radius: 0;
		overflow: visible;
	}

	.woocommerce-MyAccount-navigation ul {
		padding: 0;
	}

	.woocommerce-MyAccount-navigation li {
		margin: 8px 0;
	}

	.woocommerce-MyAccount-navigation li a {
		padding: 15px 18px;
		border-radius: 999px;
		transition: background 0.18s, color 0.18s;
	}

	.woocommerce-MyAccount-navigation li a::before {
		background-color: var(--ce-muted);
		transition: background-color 0.18s;
	}

	.woocommerce-MyAccount-navigation li a:hover {
		background: rgba(18, 161, 80, 0.07);
	}

	.woocommerce-MyAccount-navigation li a:hover::before {
		background-color: var(--ce-green);
	}

	.woocommerce-MyAccount-navigation li.is-active a {
		background: var(--ce-green-light);
		color: var(--ce-green);
		font-weight: 600;
	}

	.woocommerce-MyAccount-navigation li.is-active a::before {
		background-color: var(--ce-green);
	}

	/* Çıkış: yıkıcı/ayrı bir aksiyon olduğu için yeşil değil, aynı
	   yumuşaklıkta kırmızı — açık zemin + koyu metin/ikon dengesi
	   diğer öğelerdeki aktif yeşille birebir aynı orandadır.
	   Aktif durumda da yeşile dönmez. Yalnız masaüstü sol nav
	   (mobil çip şeridi bu media query'nin dışında, etkilenmez). */
	.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a,
	.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout.is-active a {
		background: #fdeaec;
		color: #d64550;
	}

	.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a::before,
	.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout.is-active a::before {
		background-color: #d64550;
	}

	.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a:hover {
		background: #f8dcdf;
		color: #c0392b;
	}

	.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a:hover::before {
		background-color: #c0392b;
	}
}

/* Sağ içerik */
.woocommerce-MyAccount-content {
	background: #fff;
	border: 1px solid var(--ce-border);
	border-radius: 12px;
	padding: 26px;
	min-height: 320px;
}

.woocommerce-MyAccount-content > p:first-of-type {
	margin-top: 0;
}

/* Siparişlerim bileşenleri (ce-ord__*) hariç: onların link renkleri kendi
   stillerinden gelir — aksi halde dolu yeşil "Detay" butonunda yazı da
   yeşile boyanıp görünmez oluyordu. */
/* Kupon kartındaki "Sipariş Ver" hariç: bu genel kural yüksek özgüllüklü
   olduğu için hover'da yazıyı yeşile zorluyor ve yeşil zeminde metin
   kayboluyordu; buton kendi renklerini kullanır. */
.woocommerce-MyAccount-content a:not(.ce-btn):not(.button):not([class*="ce-ord__"]):not(.ce-cpn__order) {
	color: var(--ce-green);
	font-weight: 600;
}

.woocommerce-MyAccount-content table.shop_table {
	border: 1px solid var(--ce-border);
	border-radius: 10px;
	border-collapse: separate;
	border-spacing: 0;
	width: 100%;
}

.woocommerce-MyAccount-content table.shop_table th,
.woocommerce-MyAccount-content table.shop_table td {
	padding: 12px 14px;
	border-bottom: 1px solid #f0f0f0;
	text-align: left;
}

/* (Eski pano özet kartı stilleri kaldırıldı — pano ce-dash-* kullanır.) */

/* İndirimlerim kupon kartı */
/* =========================================================
   İNDİRİMLERİM (Kuponlarım) — sarı kampanya şeridi, 3 sekme,
   bilet görünümlü kupon kartları. Veri WooCommerce kuponlarından
   gelir (salt görüntüleme).
   ========================================================= */

/* Sarı kampanya şeridi */
.ce-cpn__promo {
	display: flex;
	align-items: center;
	gap: 18px;
	background: #ffc72c;
	border-radius: 12px;
	padding: 16px 22px;
	margin-bottom: 20px;
}

.ce-cpn__promo-icon {
	flex-shrink: 0;
	width: 64px;
	height: 48px;
	display: block;
}

.ce-cpn__promo-icon svg {
	width: 100%;
	height: 100%;
	fill: #fff;
	stroke: #e0a800;
	stroke-width: 1.5;
	stroke-linejoin: round;
}

.ce-cpn__promo p {
	margin: 0;
	font-size: 16px;
	font-weight: 600;
	color: var(--ce-text);
	line-height: 1.45;
}

.ce-cpn__promo a {
	color: var(--ce-text);
	font-weight: 700;
	text-decoration: underline;
}

/* Sekmeler */
.ce-cpn__tabs {
	display: flex;
	gap: 26px;
	border-bottom: 1px solid var(--ce-border);
	margin-bottom: 20px;
	overflow-x: auto;
	scrollbar-width: none;
}

.ce-cpn__tabs::-webkit-scrollbar {
	display: none;
}

.ce-cpn__tab {
	background: none;
	border: 0;
	border-bottom: 2px solid transparent;
	margin-bottom: -1px;
	padding: 10px 2px;
	font-family: inherit;
	font-size: 14.5px;
	font-weight: 600;
	color: var(--ce-muted);
	white-space: nowrap;
	cursor: pointer;
	transition: color 0.15s, border-color 0.15s;
}

.ce-cpn__tab:hover {
	color: var(--ce-text);
}

.ce-cpn__tab.is-active {
	color: var(--ce-green);
	border-bottom-color: var(--ce-green);
}

.ce-cpn__sectitle {
	margin: 0 0 16px;
	font-size: 18px;
	font-weight: 800;
	color: var(--ce-text);
}

.ce-cpn__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

/* Bilet kartı: üst/alt yarım, aradaki kesikli çizgide yarım daire çentikler
   (çentik rengi sayfa zemini = beyaz) */
.ce-cpn__card {
	position: relative;
	background: #fdf3d9;
	border: 1px solid #f3dca2;
	border-radius: 10px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
}

.ce-cpn__top {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	padding: 14px 14px 16px;
	/* Artan yükseklik üst bölüme gider → tutar satırı ve tarih şeridi
	   yan yana kartlarda aynı hizada kalır. */
	flex: 1 1 auto;
}

.ce-cpn__shop {
	flex-shrink: 0;
	width: 34px;
	height: 34px;
	border-radius: 8px;
	background: #fff;
	border: 1px solid #f0dcae;
	display: flex;
	align-items: center;
	justify-content: center;
}

.ce-cpn__shop svg {
	width: 18px;
	height: 18px;
	fill: none;
	stroke: var(--ce-text);
	stroke-width: 1.6;
	stroke-linejoin: round;
}

.ce-cpn__info {
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 3px;
}

.ce-cpn__name {
	font-size: 14.5px;
	font-weight: 700;
	color: var(--ce-text);
	overflow-wrap: anywhere;
}

.ce-cpn__scope {
	font-size: 13px;
	color: #6f6550;
}

.ce-cpn__min {
	font-size: 12.5px;
	color: #8a7c5e;
}

/* Kesikli ayraç + çentikler */
.ce-cpn__mid {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	flex-wrap: wrap;
	padding: 14px;
	border-top: 1px dashed #d9c188;
}

.ce-cpn__mid::before,
.ce-cpn__mid::after {
	content: "";
	position: absolute;
	top: -9px;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: var(--ce-bg);
	border: 1px solid #f3dca2;
}

.ce-cpn__mid::before {
	left: -9px;
}

.ce-cpn__mid::after {
	right: -9px;
}

.ce-cpn__amount {
	font-size: 17px;
	font-weight: 800;
	color: var(--ce-text);
}

.ce-cpn__actions {
	display: flex;
	align-items: center;
	gap: 8px;
}

/* Kupon kodu + kopyala */
.ce-cpn__copy {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	max-width: 150px;
	background: #fff;
	border: 1px dashed #cbb47e;
	border-radius: 6px;
	padding: 5px 8px;
	font-family: inherit;
	font-size: 11.5px;
	font-weight: 700;
	letter-spacing: 0.3px;
	color: #7a6a45;
	cursor: pointer;
	transition: border-color 0.15s, color 0.15s;
}

.ce-cpn__copy:hover {
	border-color: var(--ce-green);
	color: var(--ce-green-dark);
}

.ce-cpn__copy svg {
	width: 13px;
	height: 13px;
	flex-shrink: 0;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linejoin: round;
}

.ce-cpn__copytext {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.ce-cpn__copy.is-copied {
	border-color: var(--ce-green);
	color: var(--ce-green-dark);
	border-style: solid;
}

.ce-cpn__order {
	flex-shrink: 0;
	border: 1px solid var(--ce-green);
	border-radius: 6px;
	padding: 7px 14px;
	font-size: 13px;
	font-weight: 700;
	color: var(--ce-green);
	background: #fff;
	transition: background 0.15s, color 0.15s;
}

/* Hover: dolu yeşil zemin + BEYAZ yazı (metin zemine karışmasın) */
.ce-cpn__order:hover,
.ce-cpn__order:focus-visible {
	background: var(--ce-green);
	color: #fff;
}

/* Alt gri şerit: tarih + (i) */
.ce-cpn__foot {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 8px 14px;
	background: #f2f2f2;
	border-top: 1px solid #e6e6e6;
	font-size: 12.5px;
	color: var(--ce-muted);
}

.ce-cpn__tipwrap {
	position: relative;
	flex-shrink: 0;
}

.ce-cpn__infobtn {
	width: 20px;
	height: 20px;
	border-radius: 50%;
	border: 0;
	background: #cfcfcf;
	color: #fff;
	font-family: inherit;
	font-size: 12px;
	font-weight: 700;
	line-height: 20px;
	padding: 0;
	cursor: pointer;
	transition: background 0.15s;
}

.ce-cpn__infobtn:hover,
.ce-cpn__infobtn[aria-expanded="true"] {
	background: var(--ce-green);
}

.ce-cpn__tip {
	position: absolute;
	right: 0;
	bottom: 28px;
	z-index: 5;
	width: 240px;
	display: flex;
	flex-direction: column;
	gap: 5px;
	background: #fff;
	border: 1px solid var(--ce-border);
	border-radius: 8px;
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.14);
	padding: 10px 12px;
	font-size: 12px;
	line-height: 1.5;
	color: var(--ce-text);
	text-align: left;
}

/* Kullanılmış / süresi dolmuş kartlar soluk */
.ce-cpn__card--used,
.ce-cpn__card--expired {
	opacity: 0.72;
}

/* Boş durum */
.ce-cpn__empty {
	text-align: center;
	padding: 40px 20px;
	color: var(--ce-muted);
}

.ce-cpn__empty svg {
	width: 46px;
	height: 46px;
	fill: none;
	stroke: #d8d8d8;
	stroke-width: 1.4;
	stroke-linejoin: round;
	margin-bottom: 10px;
}

.ce-cpn__empty p {
	margin: 0;
	font-size: 14.5px;
}

@media (max-width: 1100px) {
	.ce-cpn__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 768px) {
	/* Kartlar tam genişlik alt alta */
	.ce-cpn__grid {
		grid-template-columns: 1fr;
	}

	.ce-cpn__promo {
		gap: 12px;
		padding: 14px 16px;
	}

	.ce-cpn__promo-icon {
		width: 46px;
		height: 34px;
	}

	.ce-cpn__promo p {
		font-size: 14px;
	}

	.ce-cpn__tabs {
		gap: 18px;
	}

	.ce-cpn__order {
		padding: 9px 16px;
	}

	/* Tam genişlik kartta kod kısaltmaya gerek yok */
	.ce-cpn__copy {
		max-width: none;
	}

	.ce-cpn__tip {
		width: min(260px, calc(100vw - 60px));
	}
}

/* Adreslerim */
.ce-addr__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 18px;
	flex-wrap: wrap;
}

.ce-addr__lead {
	margin: 0;
	font-size: 13.5px;
	color: var(--ce-muted);
	max-width: 480px;
}

.ce-addr__new {
	flex-shrink: 0;
	padding: 10px 18px;
	font-size: 14px;
}

.ce-addr__empty {
	background: #fafafa;
	border: 1px dashed #d5d5d5;
	border-radius: 10px;
	padding: 22px;
	text-align: center;
	color: var(--ce-muted);
	font-size: 14px;
}

.ce-addr__grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 14px;
}

.ce-addr__card {
	border: 1px solid var(--ce-border);
	border-radius: 12px;
	padding: 16px;
	display: flex;
	flex-direction: column;
	gap: 6px;
	background: #fff;
}

.ce-addr__card.is-default {
	border-color: var(--ce-green);
	box-shadow: 0 0 0 1px var(--ce-green);
}

.ce-addr__top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
}

.ce-addr__title {
	font-size: 12px;
	font-weight: 700;
	color: var(--ce-muted);
	text-transform: uppercase;
	letter-spacing: 0.4px;
}

.ce-addr__badge {
	background: var(--ce-green);
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	border-radius: 10px;
	padding: 2px 9px;
}

.ce-addr__name {
	font-size: 15px;
	color: var(--ce-text);
}

.ce-addr__line {
	font-size: 13px;
	color: var(--ce-muted);
	line-height: 1.45;
}

.ce-addr__note {
	font-size: 12.5px;
	color: var(--ce-muted);
	font-style: italic;
}

.ce-addr__actions {
	display: flex;
	gap: 14px;
	margin-top: 8px;
	padding-top: 10px;
	border-top: 1px solid #f0f0f0;
	font-size: 13px;
}

.ce-addr__actions a {
	font-weight: 700;
	color: var(--ce-green);
}

.ce-addr__actions .ce-addr__delete {
	color: var(--ce-danger);
}

/* Adres formu */
.ce-addr__formtitle {
	margin: 0;
	font-size: 18px;
	font-weight: 800;
}

.ce-addr__back {
	font-size: 13.5px;
	font-weight: 600;
	color: var(--ce-green);
}

.ce-addr__form p {
	margin: 0 0 14px;
}

.ce-addr__form label {
	display: block;
	font-size: 13.5px;
	font-weight: 600;
	margin-bottom: 5px;
	color: var(--ce-text);
}

.ce-addr__form input[type="text"],
.ce-addr__form input[type="tel"],
.ce-addr__form textarea {
	width: 100%;
	border: 1px solid #cfcfcf;
	border-radius: 8px;
	padding: 10px 12px;
	font-family: inherit;
	font-size: 14px;
	outline: none;
}

.ce-addr__form input:focus,
.ce-addr__form textarea:focus {
	border-color: var(--ce-green);
}

.ce-addr__row--2 {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px;
}

.ce-addr__row--2 p {
	margin: 0 0 14px;
}

.ce-addr__defaultrow label {
	display: flex;
	align-items: center;
	gap: 8px;
	font-weight: 600;
	cursor: pointer;
}

.ce-addr__save {
	padding: 13px 28px;
	font-size: 15px;
}

/* Ödeme sayfası adres seçici */
.ce-checkout-picker label {
	font-weight: 700;
	display: block;
	margin-bottom: 6px;
}

.ce-checkout-picker select {
	width: 100%;
	border: 1.5px solid var(--ce-green);
	border-radius: 8px;
	padding: 10px 12px;
	font-family: inherit;
}

/* Hesabım responsive */
@media (max-width: 900px) {
	/* minmax(0,1fr): içerik kolonu min-width:auto ile geniş içeriğin
	   (ör. filtre çipleri) doğal genişliğine açılıp ekranı taşıramaz */
	.woocommerce-account .ce-main *:has(> .woocommerce-MyAccount-navigation) {
		grid-template-columns: minmax(0, 1fr);
	}

	.woocommerce-account .woocommerce-MyAccount-content {
		min-width: 0;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation {
		grid-column: 1;
		grid-row: 1;
	}

	.woocommerce-account .woocommerce-MyAccount-content {
		grid-column: 1;
		grid-row: 2;
	}

	/* Mobilde menü az yer kaplasın: yatay, tek satır, KENDİ İÇİNDE kaydırılan
	   çip şeridi (masaüstünde dikey sol menü aynen kalır) */
	.woocommerce-MyAccount-navigation ul {
		display: flex;
		overflow-x: auto;
		gap: 4px;
		padding: 8px;
		scrollbar-width: none;
	}

	.woocommerce-MyAccount-navigation ul::-webkit-scrollbar {
		display: none;
	}

	.woocommerce-MyAccount-navigation li {
		flex-shrink: 0;
		margin: 0;
	}

	.woocommerce-MyAccount-navigation li a {
		white-space: nowrap;
		padding: 9px 12px;
	}

	.ce-addr__grid {
		grid-template-columns: 1fr;
	}

	.ce-addr__row--2 {
		grid-template-columns: 1fr;
		gap: 0;
	}
}

/* ---------- Footer (çok sütunlu) ---------- */
.ce-footer {
	background: var(--ce-bg-soft);
	border-top: 1px solid var(--ce-border);
	margin-top: 48px;
	font-size: 14px;
}

.ce-footer__top {
	padding: 40px 0 32px;
}

.ce-footer__grid {
	display: grid;
	grid-template-columns: 1.5fr 1fr 1fr 1.3fr 1.4fr;
	gap: 36px;
}

.ce-footer__col h4 {
	margin: 0 0 14px;
	font-size: 14px;
	font-weight: 800;
	color: var(--ce-text);
	text-transform: uppercase;
	letter-spacing: 0.4px;
}

.ce-footer__col ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 9px;
}

.ce-footer__col ul a {
	color: var(--ce-muted);
	font-size: 13.5px;
	transition: color 0.15s;
}

.ce-footer__col ul a:hover {
	color: var(--ce-green);
}

/* Marka sütunu */
.ce-footer__logo {
	display: inline-flex;
	margin-bottom: 12px;
	font-size: 24px;
}

.ce-footer__logo .custom-logo {
	max-height: 40px;
	width: auto;
}

.ce-footer__desc {
	margin: 0 0 16px;
	color: var(--ce-muted);
	font-size: 13.5px;
	line-height: 1.6;
	max-width: 300px;
}

.ce-footer__social {
	display: flex;
	gap: 10px;
}

.ce-footer__social a {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: #fff;
	border: 1px solid var(--ce-border);
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background 0.15s, border-color 0.15s;
}

.ce-footer__social svg {
	width: 17px;
	height: 17px;
	fill: var(--ce-muted);
	transition: fill 0.15s;
}

.ce-footer__social a:hover {
	background: var(--ce-green);
	border-color: var(--ce-green);
}

.ce-footer__social a:hover svg {
	fill: #fff;
}

/* İletişim sütunu */
.ce-footer__contact li {
	display: flex;
	align-items: flex-start;
	gap: 9px;
	color: var(--ce-muted);
	font-size: 13.5px;
	line-height: 1.5;
}

.ce-footer__contact svg {
	width: 17px;
	height: 17px;
	flex-shrink: 0;
	fill: none;
	stroke: var(--ce-green);
	stroke-width: 1.7;
	margin-top: 1px;
}

/* Bülten */
.ce-footer__col--news p {
	margin: 0 0 12px;
	color: var(--ce-muted);
	font-size: 13.5px;
	line-height: 1.55;
}

.ce-footer__newsletter {
	display: flex;
	gap: 8px;
}

.ce-footer__newsletter input {
	flex: 1;
	min-width: 0;
	border: 1px solid #cfcfcf;
	border-radius: 8px;
	padding: 10px 12px;
	font-size: 13.5px;
	font-family: inherit;
	outline: none;
	background: #fff;
}

.ce-footer__newsletter input:focus {
	border-color: var(--ce-green);
}

.ce-footer__newsletter .ce-btn {
	padding: 10px 18px;
	font-size: 13.5px;
	flex-shrink: 0;
}

/* Alt şerit */
.ce-footer__bottom {
	border-top: 1px solid var(--ce-border);
	padding: 16px 0;
	font-size: 13px;
	color: var(--ce-muted);
}

.ce-footer__bottomrow {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
}

.ce-footer__copy {
	flex-shrink: 0;
}

.ce-footer__pay {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
}

.ce-paybadge {
	background: #fff;
	border: 1px solid var(--ce-border);
	border-radius: 6px;
	padding: 5px 12px;
	font-size: 11.5px;
	font-weight: 700;
	color: var(--ce-muted);
	letter-spacing: 0.3px;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-height: 30px;
}

.ce-paybadge--visa { color: #1a1f71; }
.ce-paybadge--mc { color: #eb001b; }
.ce-paybadge--troy { color: #0f6cbd; }
.ce-paybadge--amex { color: #2e77bb; }

/* Özelleştirici'den yüklenen rozet görselleri: yazılı rozetlerle aynı
   yükseklikte, oranı korunur; şerit gerektiğinde alta sarar. */
.ce-paybadge--img {
	padding: 4px 8px;
}

.ce-paybadge__img {
	display: block;
	height: 20px;
	width: auto;
	max-width: 92px;
	object-fit: contain;
}

.ce-paybadge--taksit {
	color: var(--ce-green-dark);
	background: var(--ce-green-light);
	border-color: var(--ce-green-light);
}

.ce-paybadge--ssl {
	color: var(--ce-green-dark);
	background: var(--ce-green-light);
	border-color: var(--ce-green-light);
}

.ce-paybadge--ssl svg {
	width: 15px;
	height: 15px;
	fill: none;
	stroke: var(--ce-green-dark);
	stroke-width: 1.8;
}

/* ---------- Responsive ---------- */
@media (max-width: 900px) {
	.ce-product {
		grid-template-columns: 1fr;
		gap: 24px;
	}

	.ce-header__inner {
		flex-wrap: wrap;
		gap: 12px;
	}

	.ce-search {
		order: 3;
		flex-basis: 100%;
		max-width: none;
	}

	.ce-actions {
		margin-left: auto;
		gap: 16px;
	}

	.ce-topbar__links {
		display: none;
	}

	/* Mobil: grid yerine eski flex akışı (ce-tm-* görünürlük kuralları ve
	   "ikisi alt alta" modu bu akışa göre çalışır) */
	.ce-topbar__inner {
		display: flex;
		justify-content: center;
	}

	.ce-footer__grid {
		grid-template-columns: 1fr 1fr;
		gap: 28px;
	}

	.ce-footer__col--brand {
		grid-column: 1 / -1;
	}
}

@media (max-width: 600px) {

	.ce-hero {
		padding: 36px 20px;
	}

	.ce-hero h1 {
		font-size: 25px;
	}

	/* ---- Mobil footer: tek sütun + her şey ortalanır ----
	   Masaüstü/tablet düzeni (sola hizalı, çok sütunlu) etkilenmez. */
	.ce-footer__grid {
		grid-template-columns: 1fr;
		gap: 24px;
		text-align: center;
	}

	/* Logo: inline-flex kutusu ortalanır */
	.ce-footer__logo {
		justify-content: center;
		align-self: center;
	}

	.ce-footer__col--brand {
		display: flex;
		flex-direction: column;
		align-items: center;
	}

	.ce-footer__desc {
		max-width: 320px;
		margin-left: auto;
		margin-right: auto;
	}

	.ce-footer__social {
		justify-content: center;
	}

	/* İletişim: ikon + metin ikilisi tek satırda ortalı blok gibi dursun */
	.ce-footer__contact li {
		justify-content: center;
		align-items: center;
	}

	.ce-footer__contact svg {
		margin-top: 0;
	}

	/* Bülten formu: input üstte tam genişlik, buton altında tam genişlik
	   (yan yana sıkışıp taşmasın; buton metni Özelleştirici'den uzatılsa da) */
	.ce-footer__newsletter {
		flex-direction: column;
		gap: 10px;
	}

	.ce-footer__newsletter input,
	.ce-footer__newsletter .ce-btn {
		width: 100%;
	}

	.ce-footer__bottomrow {
		flex-direction: column;
		justify-content: center;
		text-align: center;
	}

	.ce-footer__pay {
		justify-content: center;
	}

	.ce-action span {
		display: none;
	}

	.ce-topbar__tabs,
	.ce-action__caret {
		display: none;
	}

	.ce-topbar__promo {
		white-space: normal;
		font-size: 13px;
		padding: 8px 0;
	}

	.ce-summary .product_title {
		font-size: 20px;
	}

	.ce-pricebox__now {
		font-size: 24px;
	}

	.ce-favbox__text {
		display: none;
	}
}

/* ---------- Mobil header (çiçeksepeti düzeni) ---------- */
/* Mobil-only öğeler masaüstünde yok */
.ce-mnav-toggle,
.ce-search-toggle,
.ce-topbar__close,
.ce-mnav {
	display: none;
}

body.ce-mnav-open {
	overflow: hidden;
}

@media (max-width: 768px) {
	/* Üst şerit: ince tek satır, solda × (masaüstündeki 60px burada geçersiz) */
	.ce-topbar__inner {
		justify-content: center;
		min-height: 0;
	}

	.ce-topbar__promo {
		position: relative;
		width: 100%;
		text-align: center;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
		font-size: 12px;
		padding: 7px 26px;
	}

	.ce-topbar__close {
		display: flex;
		align-items: center;
		justify-content: center;
		position: absolute;
		left: 0;
		top: 50%;
		transform: translateY(-50%);
		width: 24px;
		height: 24px;
		border: 0;
		background: none;
		color: inherit;
		font-size: 12px;
		line-height: 1;
		cursor: pointer;
		padding: 0;
	}

	/* Ana bar: solda ☰, ortada logo, sağda büyüteç + sepet — hepsi aynı
	   yatay eksende dikey ortalı; kompakt yükseklik, eşit kenar boşluğu */
	.ce-header__inner {
		flex-wrap: wrap;
		align-items: center;
		gap: 8px;
		padding: 8px 12px;
		min-height: 56px;
	}

	.ce-header {
		border-bottom: 1px solid var(--ce-border);
	}

	.ce-mnav-toggle {
		display: flex;
		align-items: center;
		justify-content: center;
		position: relative;
		width: 44px;
		height: 44px;
		border: 0;
		background: none;
		cursor: pointer;
		padding: 0;
		flex-shrink: 0;
	}

	/* Ferah hamburger: ~24px genişlikte 3 eşit aralıklı ince çizgi,
	   koyu renk, yuvarlak uçlar. İki ikon üst üste durur; menü açılınca
	   ☰ yumuşakça ×'e döner. */
	.ce-mnav-toggle svg {
		position: absolute;
		left: 50%;
		top: 50%;
		width: 28px;
		height: 28px;
		stroke: #444;
		stroke-width: 1.9;
		stroke-linecap: round;
		fill: none;
		transform: translate(-50%, -50%);
		transition: opacity 0.22s ease-out, transform 0.22s ease-out;
	}

	.ce-mnav-toggle .ce-mnav-toggle__x {
		opacity: 0;
		transform: translate(-50%, -50%) rotate(-90deg);
	}

	body.ce-mnav-open .ce-mnav-toggle .ce-mnav-toggle__bars {
		opacity: 0;
		transform: translate(-50%, -50%) rotate(90deg);
	}

	body.ce-mnav-open .ce-mnav-toggle .ce-mnav-toggle__x {
		opacity: 1;
		transform: translate(-50%, -50%) rotate(0deg);
	}

	/* Menü açıkken itilen header karartmanın üstünde kalsın: × net görünür
	   ve doğrudan tıklanabilir (toggle kapatır). Header'ın beyaz zemini ve
	   ayraç çizgisi bu durumda ŞEFFAF yapılır — × karanlık overlay üzerinde
	   kutu/çıkıntı olmadan durur. */
	body.ce-mnav-open .ce-header {
		position: relative;
		z-index: 1300;
		background: transparent;
		border-bottom-color: transparent;
		box-shadow: none;
	}

	/* × butonu: tamamen şeffaf zemin (dokunma alanı 44x44 padding'le korunur),
	   ikon beyaz — koyu overlay üzerinde net okunur */
	body.ce-mnav-open .ce-mnav-toggle {
		background: transparent;
		border: 0;
		border-radius: 0;
		box-shadow: none;
	}

	body.ce-mnav-open .ce-mnav-toggle svg {
		stroke: #fff;
	}

	.ce-logo {
		flex: 1;
		min-width: 0;
		justify-content: center;
		font-size: 20px;
	}

	.ce-logo svg {
		width: 24px;
		height: 24px;
	}

	.ce-logo .custom-logo {
		max-height: 36px;
	}

	/* Arama kutusu gizli; büyüteçle açılır (tam satır) */
	.ce-search {
		display: none;
	}

	.ce-search.is-open {
		display: block;
		order: 4;
		flex-basis: 100%;
		max-width: none;
	}

	/* Favorilerim / Siparişlerim / Hesabım üst bardan kalkar (menüde);
	   büyüteç + sepet dikey ortalı, dengeli aralıklı */
	.ce-actions {
		margin-left: 0;
		gap: 8px;
		flex-shrink: 0;
		display: flex;
		align-items: center;
	}

	.ce-actions .ce-action {
		display: none;
	}

	.ce-search-toggle {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 40px;
		height: 40px;
		border: 0;
		background: none;
		cursor: pointer;
		padding: 0;
	}

	.ce-search-toggle svg {
		width: 22px;
		height: 22px;
		fill: var(--ce-text);
	}

	.ce-cart-btn {
		width: 42px;
		height: 42px;
	}

	/* Yatay kategori menüsü mobilde gizli (yan menüye taşındı) */
	.ce-nav {
		display: none;
	}

	/* Yan menü: soldan açılan tam yükseklik panel */
	.ce-mnav:not([hidden]) {
		display: block;
		position: fixed;
		inset: 0;
		z-index: 1200;
	}

	/* Overlay yumuşak fade ile gelir/gider */
	.ce-mnav__overlay {
		position: absolute;
		inset: 0;
		background: rgba(0, 0, 0, 0.45);
		opacity: 0;
		transition: opacity 0.28s ease-out;
	}

	.ce-mnav.is-open .ce-mnav__overlay {
		opacity: 1;
	}

	/* Push efekti: panel açılırken sayfa içeriği de birlikte sağa itilir */
	body > *:not(.ce-mnav):not(#wpadminbar) {
		transition: transform 0.28s ease-out;
	}

	body.ce-mnav-open > *:not(.ce-mnav):not(#wpadminbar) {
		transform: translateX(min(80vw, 360px));
	}

	/* Panel soldan kayarak açılır, ters yönde kayarak kapanır */
	.ce-mnav__panel {
		position: absolute;
		left: 0;
		top: 0;
		bottom: 0;
		width: 80%;
		max-width: 360px;
		background: #fff;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		/* Panel sonuna gelince kaydırma hareketi arkadaki sayfaya geçmesin */
		overscroll-behavior: contain;
		padding: 14px 14px 28px;
		box-shadow: 2px 0 18px rgba(0, 0, 0, 0.18);
		transform: translateX(-100%);
		transition: transform 0.28s ease-out;
	}

	.ce-mnav.is-open .ce-mnav__panel {
		transform: translateX(0);
	}

	/* 3'lü hızlı erişim kutuları */
	.ce-mnav__quick {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 8px;
		margin-bottom: 18px;
	}

	.ce-mnav__qitem {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 6px;
		border: 1px solid var(--ce-border);
		border-radius: 10px;
		padding: 12px 4px;
		text-decoration: none;
		color: var(--ce-text);
		font-size: 11.5px;
		font-weight: 600;
		text-align: center;
	}

	.ce-mnav__qitem svg {
		width: 22px;
		height: 22px;
		stroke: var(--ce-green);
		stroke-width: 1.7;
		fill: none;
	}

	.ce-mnav__title {
		font-size: 14px;
		font-weight: 700;
		color: var(--ce-text);
		margin: 0 0 10px;
	}

	/* 3 sütunlu görselli kategori grid'i */
	.ce-mnav__cats {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 10px 8px;
		margin-bottom: 18px;
	}

	/* Kategori kartı: tatlı kare çerçeve — içinde kare görsel + ortalı ad */
	.ce-mnav__cat {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 6px;
		text-decoration: none;
		color: var(--ce-text);
		min-width: 0;
		background: #fff;
		border: 1px solid #ececec;
		border-radius: 12px;
		padding: 7px 7px 9px;
		box-shadow: 0 1px 5px rgba(0, 0, 0, 0.04);
	}

	.ce-mnav__cat:active {
		border-color: #cde8d9;
	}

	.ce-mnav__catimg {
		display: block;
		width: 100%;
		aspect-ratio: 1;
		border-radius: 9px;
		overflow: hidden;
		background: #f5f5f5;
	}

	.ce-mnav__catimg img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		display: block;
	}

	.ce-mnav__catname {
		font-size: 11.5px;
		font-weight: 600;
		text-align: center;
		line-height: 1.3;
		width: 100%;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	/* Alt satırlar: Bize Ulaşın, Giriş/Çıkış */
	.ce-mnav__row {
		display: flex;
		align-items: center;
		gap: 10px;
		padding: 13px 2px;
		border-top: 1px solid var(--ce-border);
		text-decoration: none;
		color: var(--ce-text);
		font-size: 13.5px;
		font-weight: 600;
	}

	.ce-mnav__row svg {
		width: 20px;
		height: 20px;
		stroke: var(--ce-green);
		stroke-width: 1.7;
		fill: none;
		flex-shrink: 0;
	}
}

/* ---------- Anasayfa: "En Son Favoriye Eklediğiniz Ürünler" şeridi ----------
   Ortak raf bileşeninin (ce-shelf) KOMPAKT hali: aynı kart, masaüstünde tam
   8 kart/görünüm. Genişlik raf formülüyle esnek hesaplanır:
   kart = (100% - 7×gap) / 8 — 8. kart taşmadan sığar, fazlası kaydırılır. */
.ce-favstrip .ce-shelf__track {
	--ce-cards: 8;
	--ce-card-gap: 10px;
}

/* Kart bileşeni burada da AYNEN kullanılır (ürün adı, puan, fiyat, butonlar
   dahil). Dar karta göre küçülme widgets.css'teki @container kurallarından
   gelir — burada ayrıca ölçü ezmeye gerek yok. */

@media (max-width: 768px) {
	.ce-favstrip .ce-shelf__track {
		/* Mobil: 2.4 kart görünür (kesirli değer kaydırılabilirliği belli eder) */
		--ce-cards: 2.4;
		--ce-card-gap: 10px;
	}
}

/* ---------- Hesabım > Favorilerim: anasayfa kartlarıyla responsive grid ---------- */
/* WC çekirdek clearfix'i (.woocommerce-account .woocommerce::before/::after,
   content:" " display:table) grid'de GERÇEK bir hücreye dönüşüp 1. kutuyu
   işgal ediyordu — kartlar sağa kayıyordu. Aynı özgüllükle kapatılır.
   (woocommerce sınıfı kalıyor: karttaki .star-rating stili ona bağlı.) */
.woocommerce-account .ce-favgrid::before,
.woocommerce-account .ce-favgrid::after,
.ce-favgrid::before,
.ce-favgrid::after {
	content: none;
	display: none;
}

.ce-favgrid {
	display: grid;
	/* Alana sığan kadar eşit sütun; SOL kenardan başlar, sağda düzensiz boşluk yok */
	grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
	/* satır arası 24px, sütun arası 20px */
	gap: 24px 20px;
	align-items: start;
	justify-content: start;
	justify-items: stretch;
	width: 100%;
	margin: 0;
	padding: 0;
	text-align: left;
}

/* Kart bileşeni anasayfadakiyle AYNI — yalnız DIŞ ölçüsü grid hücresine uyar
   (raftaki flex-basis ölçüsü burada geçersiz kılınır) */
.ce-favgrid .ce-card {
	width: 100%;
	flex: initial;
	min-width: 0;
}

/* (Kartların altları .ce-card__actions{margin-top:auto} ile hizalanır) */

@media (max-width: 768px) {
	.ce-favgrid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 20px 12px;
	}
}

/* ---------- Sepetten çıkarma onay popup'ı ---------- */
.ce-rmodal:not([hidden]) {
	position: fixed;
	inset: 0;
	z-index: 1400;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 10px;
}

.ce-rmodal__overlay {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.5);
}

.ce-rmodal__box {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
	text-align: center;
	background: #fff;
	border-radius: 14px;
	padding: 30px 22px 22px;
	width: 100%;
	max-width: 340px;
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.2);
}

.ce-rmodal__close {
	position: absolute;
	top: 6px;
	right: 6px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border: 0;
	background: none;
	cursor: pointer;
	padding: 0;
}

.ce-rmodal__close svg {
	width: 17px;
	height: 17px;
	stroke: #8b8b8b;
	stroke-width: 1.8;
	stroke-linecap: round;
	fill: none;
}

.ce-rmodal__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	border-radius: 50%;
	background: #f1f1f1;
}

.ce-rmodal__icon svg {
	width: 26px;
	height: 26px;
	stroke: var(--ce-muted);
	stroke-width: 1.6;
	stroke-linecap: round;
	fill: none;
}

.ce-rmodal__title {
	margin: 0 0 4px;
	font-size: 15px;
	font-weight: 600;
	color: var(--ce-text);
	line-height: 1.5;
}

.ce-rmodal__fav,
.ce-rmodal__del {
	width: 100%;
	border-radius: 8px;
	padding: 13px;
	font-family: inherit;
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
	transition: background 0.15s, border-color 0.15s;
}

.ce-rmodal__fav {
	background: var(--ce-green);
	color: #fff;
	border: 0;
}

.ce-rmodal__fav:hover {
	background: var(--ce-green-dark);
}

.ce-rmodal__del {
	background: #fff;
	color: var(--ce-text);
	border: 1px solid var(--ce-border);
}

.ce-rmodal__del:hover {
	border-color: #b5b5b5;
}

/* Sepet: adet kontrolü ("− 1 +") HİÇBİR görünümde yok (masaüstü + mobil).
   Yalnızca görsel gizleme — display:none input yine form/AJAX ile gönderilir;
   miktar 1 kalır, ara toplam doğru hesaplanır, ürün silme (×) çalışır. */
.ce-cart__qty {
	display: none;
}

/* Sepet MOBİL: "Teslimat Adresi" ve tasarım alanı ("Ürüne Eklenecek Harf" vb.)
   satırları yalnızca görsel olarak gizlenir — veri sepet öğesinde durur,
   checkout/sipariş akışına aynen taşınır. Masaüstünde görünmeye devam eder. */
@media (max-width: 768px) {
	.ce-cart__meta {
		display: none;
	}

	/* Sipariş Özeti kartı mobilde gizli — yerine alta sabit satın alma çubuğu.
	   (Ara Toplam satırı da bu kartın içinde; veri hesaplanmaya devam eder.)
	   "İndirim Kodu Kullan" kutusu ayrı blok, sayfada kalır. */
	.ce-cart__summary {
		display: none;
	}

	/* Son içerik (İndirim Kodu) sabit çubuğun arkasında kalmasın */
	.woocommerce-cart .ce-main {
		padding-bottom: 92px;
	}
}

/* ---------- Mobil: Ürün Açıklaması kısaltma + tam ekran panel ---------- */
/* Masaüstünde bu öğeler hiç görünmez; açıklama tam uzunlukta kalır */
.ce-desc-more,
.ce-descmodal {
	display: none;
}

@media (max-width: 768px) {
	/* Kapalı hal: PHP'de ~500 görünür karakterde kesilmiş sürüm gösterilir;
	   yükseklik kesimi yok, fade + buton aynı yerleşimde */
	.woocommerce-Tabs-panel--description.ce-desc-collapsed {
		position: relative;
	}

	.woocommerce-Tabs-panel--description.ce-desc-collapsed::after {
		content: "";
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		height: 70px;
		background: linear-gradient(to bottom, rgba(255, 255, 255, 0), #fff);
		pointer-events: none;
	}

	/* Tam genişlik, yeşil çerçeveli beyaz buton */
	.ce-desc-more {
		display: block;
		width: 100%;
		margin: 10px 0 0;
		padding: 12px;
		background: #fff;
		border: 1.5px solid var(--ce-green);
		border-radius: 10px;
		color: var(--ce-green);
		font-family: inherit;
		font-size: 14px;
		font-weight: 700;
		text-align: center;
		cursor: pointer;
	}

	.ce-desc-more[hidden] {
		display: none;
	}

	/* Panel katmanı: header'ın altından başlar; header net görünmeye devam eder.
	   --ce-desc-top JS'te açılış anında header'ın alt kenarından ölçülür. */
	.ce-descmodal:not([hidden]) {
		display: block;
		position: fixed;
		inset: 0;
		z-index: 1250;
	}

	/* Karartma: header'ın hemen altından ekranın dibine; sayfa ve sabit
	   Sipariş Ver çubuğu koyulaşmış halde görünür, tıklanınca panel kapanır */
	.ce-descmodal__overlay {
		position: absolute;
		top: var(--ce-desc-top, 0px);
		left: 0;
		right: 0;
		bottom: 0;
		background: rgba(0, 0, 0, 0.5);
		opacity: 0;
		transition: opacity 0.28s ease-out;
	}

	.ce-descmodal.is-open .ce-descmodal__overlay {
		opacity: 1;
	}

	/* Beyaz panel: header + 14px boşluk altından başlar, üst köşeler yuvarlak,
	   alttan yukarı kayarak açılır; yükseklik boşluğa göre calc ile daralır */
	.ce-descmodal__panel {
		position: absolute;
		left: 0;
		right: 0;
		top: calc(var(--ce-desc-top, 0px) + 14px);
		height: calc(100dvh - var(--ce-desc-top, 0px) - 14px);
		display: flex;
		flex-direction: column;
		background: #fff;
		border-radius: 16px 16px 0 0;
		overflow: hidden;
		transform: translateY(100%);
		transition: transform 0.28s ease-out;
	}

	.ce-descmodal.is-open .ce-descmodal__panel {
		transform: translateY(0);
	}

	/* Sabit başlık şeridi: ortada başlık, sağda ×, altta ince ayraç */
	.ce-descmodal__head {
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		flex-shrink: 0;
		padding: 14px 52px;
		background: #fff;
		border-bottom: 1px solid var(--ce-border);
	}

	.ce-descmodal__head h3 {
		margin: 0;
		font-size: 15px;
		font-weight: 700;
		color: var(--ce-text);
	}

	.ce-descmodal__close {
		position: absolute;
		right: 4px;
		top: 50%;
		transform: translateY(-50%);
		display: flex;
		align-items: center;
		justify-content: center;
		width: 44px;
		height: 44px;
		border: 0;
		background: transparent;
		cursor: pointer;
		padding: 0;
	}

	.ce-descmodal__close svg {
		width: 22px;
		height: 22px;
		stroke: var(--ce-text);
		stroke-width: 1.9;
		stroke-linecap: round;
		fill: none;
	}

	/* Kaydırılabilir içerik: tam açıklama HTML'i, biçim korunur */
	.ce-descmodal__body {
		flex: 1;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		overscroll-behavior: contain;
		padding: 14px 16px 32px;
		font-size: 14px;
		line-height: 1.65;
		color: var(--ce-text);
	}

	/* Panel başlığı zaten üst şeritte; kopyalanan içerikteki ilk başlığı gizle */
	.ce-descmodal__body > h2:first-child {
		display: none;
	}

	.ce-descmodal__body ul,
	.ce-descmodal__body ol {
		padding-left: 20px;
		margin: 10px 0;
	}
}


/* =========================================================
   ÇOK ADIMLI CHECKOUT (ce-co-*): sade header + stepper +
   adım kartları + sabit sipariş özeti. Yalnız checkout
   sayfasında kullanılır (woocommerce/checkout-steps.php).
   ========================================================= */

.ce-co-body {
	background: #fff;
	font-family: var(--ce-font);
	color: var(--ce-text);
}

/* --- Sade üst bar: yalnız logo, ortada --- */
.ce-co-header {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 16px var(--ce-container-pad);
	border-bottom: 1px solid #f0f0f0;
}

.ce-co-header__logo img {
	max-height: 52px;
	width: auto;
	display: block;
}

.ce-co-header__logo {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	text-decoration: none;
	color: var(--ce-green);
	font-size: 26px;
	font-weight: 700;
}

.ce-co-header__logo svg {
	width: 34px;
	height: 34px;
	fill: var(--ce-green);
}

/* --- Sayfa düzeni --- */
.ce-co {
	max-width: var(--ce-container-width);
	margin: 0 auto;
	padding: 22px var(--ce-container-pad) 60px;
}

/* Yalnız adım göstergesini taşır; gösterge kendi başına ortalanır (eskiden
   sol "Geri Dön" linkini dengelemek için 1fr auto 1fr grid ve sağda görünmez
   bir dolgu vardı — ikisi de kalktı). */
.ce-co__topbar {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	margin-bottom: 26px;
}

/* --- Stepper --- */
.ce-co-stepper {
	display: flex;
	align-items: flex-start;
	list-style: none;
	margin: 0;
	padding: 0;
}

.ce-co-stepper__step {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	width: 108px;
	text-align: center;
}

/* Noktalar arası çizgi */
.ce-co-stepper__step + .ce-co-stepper__step::before {
	content: "";
	position: absolute;
	top: 9px;
	right: calc(50% + 14px);
	width: calc(100% - 28px);
	height: 2px;
	background: #e2e4e8;
	border-radius: 2px;
}

.ce-co-stepper__step.is-done + .ce-co-stepper__step::before,
.ce-co-stepper__step.is-active::before {
	background: var(--ce-green);
}

.ce-co-stepper__dot {
	width: 19px;
	height: 19px;
	border-radius: 50%;
	background: #d4d7dc;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 0 0 0 rgba(18, 161, 80, 0.15);
	transition: background 0.2s, box-shadow 0.2s;
}

.ce-co-stepper__dot svg {
	width: 11px;
	height: 11px;
	stroke: #fff;
	stroke-width: 3;
	stroke-linecap: round;
	stroke-linejoin: round;
	opacity: 0;
}

.ce-co-stepper__step.is-active .ce-co-stepper__dot {
	background: var(--ce-green);
	box-shadow: 0 0 0 4px rgba(18, 161, 80, 0.15);
}

.ce-co-stepper__step.is-done .ce-co-stepper__dot {
	background: var(--ce-green);
}

.ce-co-stepper__step.is-done .ce-co-stepper__dot svg {
	opacity: 1;
}

.ce-co-stepper__step.is-done {
	cursor: pointer;
}

.ce-co-stepper__name {
	font-size: 12.5px;
	font-weight: 500;
	line-height: 1.3;
	color: #a5aab1;
	max-width: 92px;
}

.ce-co-stepper__step.is-active .ce-co-stepper__name,
.ce-co-stepper__step.is-done .ce-co-stepper__name {
	color: var(--ce-green);
	font-weight: 600;
}

/* --- Ana ızgara: form + özet --- */
.ce-co__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 360px;
	gap: 28px;
	align-items: start;
}

.ce-co-card {
	background: #fff;
	border: 1px solid #ececec;
	border-radius: 12px;
	padding: 24px 26px;
}

.ce-co-card__title {
	margin: 0 0 16px;
	font-size: 16.5px;
	font-weight: 600;
	color: var(--ce-text);
}

/* --- Form alanları --- */
.ce-co-field {
	margin-bottom: 14px;
}

.ce-co-field input[type="text"],
.ce-co-field input[type="tel"],
.ce-co-field textarea {
	width: 100%;
	border: 1px solid #dcdfe3;
	border-radius: 10px;
	padding: 13px 14px;
	font: 400 13.5px/1.45 var(--ce-font);
	color: var(--ce-text);
	background: #fff;
	transition: border-color 0.15s, box-shadow 0.15s;
}

.ce-co-field textarea {
	resize: vertical;
	min-height: 96px;
}

.ce-co-field input::placeholder,
.ce-co-field textarea::placeholder {
	color: #9aa0a6;
}

.ce-co-field input:focus,
.ce-co-field textarea:focus,
.ce-co-select:focus-within {
	outline: none;
	border-color: var(--ce-green);
	box-shadow: 0 0 0 3px rgba(18, 161, 80, 0.1);
}

/* Kutulu select: içinde küçük gri etiket + değer (referans görseldeki gibi).
   Gerçek <select> kutunun TAMAMINI kaplar (absolute + tam yükseklik): etiket
   ve iç boşluklar dahil nereye tıklanırsa native dropdown açılır. Etiket
   select'in şeffaf zemininin altında görünür kalır. */
.ce-co-select {
	position: relative;
	display: block;
	border: 1px solid #dcdfe3;
	border-radius: 10px;
	padding: 7px 40px 5px 14px;
	min-height: 47px;
	background: #fff;
	cursor: pointer;
	transition: border-color 0.15s, box-shadow 0.15s;
}


.ce-co-select select {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
	border-radius: 10px;
	/* Değer metni eski konumunda: üstte etiket payı, solda kutu iç boşluğu */
	padding: 21px 40px 5px 14px;
	font: 500 13.5px/1.4 var(--ce-font);
	color: var(--ce-text);
	background: transparent;
	appearance: none;
	-webkit-appearance: none;
	cursor: pointer;
}

.ce-co-select select:focus {
	outline: none;
}

.ce-co-select select:disabled {
	color: #b6bbc1;
	cursor: not-allowed;
}

.ce-co-select__caret {
	position: absolute;
	right: 14px;
	top: 50%;
	transform: translateY(-50%);
	width: 17px;
	height: 17px;
	stroke: #6b7075;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
	pointer-events: none;
}

/* Masaüstü: select'lerin özel açılır listesi — max yükseklik + iç scroll
   (native popup sınırlanamadığından JS kutunun altına bu paneli açar).
   Mobilde panel hiç oluşturulmaz, native seçici çalışır. */
@media (min-width: 901px) {
	.ce-co-droplist {
		position: absolute;
		top: calc(100% + 6px);
		left: 0;
		right: 0;
		z-index: 40;
		background: #fff;
		border: 1px solid #dcdfe3;
		border-radius: 10px;
		box-shadow: 0 10px 26px rgba(0, 0, 0, 0.1);
		max-height: 300px;
		overflow-y: auto;
		padding: 6px;
		scrollbar-width: thin;
		scrollbar-color: #c9cdd2 transparent;
	}

	.ce-co-droplist::-webkit-scrollbar {
		width: 6px;
	}

	.ce-co-droplist::-webkit-scrollbar-thumb {
		background: #c9cdd2;
		border-radius: 6px;
	}

	.ce-co-droplist::-webkit-scrollbar-track {
		background: transparent;
	}

	.ce-co-droplist__item {
		display: block;
		width: 100%;
		text-align: left;
		border: 0;
		background: none;
		padding: 9px 10px;
		border-radius: 8px;
		font: 400 13.5px/1.3 var(--ce-font);
		color: var(--ce-text);
		cursor: pointer;
	}

	.ce-co-droplist__item:hover {
		background: var(--ce-bg-soft);
	}

	.ce-co-droplist__item.is-selected {
		background: var(--ce-green-light);
		color: var(--ce-green-dark);
		font-weight: 600;
	}

	.ce-co-select.is-open {
		border-color: var(--ce-green);
		box-shadow: 0 0 0 3px rgba(18, 161, 80, 0.1);
	}

	.ce-co-select.is-open .ce-co-select__caret {
		transform: translateY(-50%) rotate(180deg);
	}
}

/* Hata durumu */
.ce-co-field.is-invalid input,
.ce-co-field.is-invalid textarea,
.ce-co-field.is-invalid .ce-co-select {
	border-color: var(--ce-danger);
	box-shadow: 0 0 0 3px rgba(224, 35, 78, 0.08);
}

.ce-co-field__err {
	display: block;
	margin: 5px 2px 0;
	font-size: 12px;
	color: var(--ce-danger);
}

/* Bölge uyarısı / ek ücret bilgisi */
.ce-co-zonewarn {
	margin: 2px 0 14px;
	padding: 11px 14px;
	border: 1px solid #f3c2cf;
	background: #fdf1f4;
	border-radius: 10px;
	font-size: 12.5px;
	font-weight: 500;
	color: var(--ce-danger);
}

.ce-co-zonewarn.is-shake {
	animation: ce-co-shake 0.4s;
}

@keyframes ce-co-shake {
	0%, 100% { transform: translateX(0); }
	25% { transform: translateX(-5px); }
	75% { transform: translateX(5px); }
}

.ce-co-zoneinfo {
	margin: 2px 0 14px;
	padding: 11px 14px;
	border: 1px solid #bfe6d0;
	background: var(--ce-green-light);
	border-radius: 10px;
	font-size: 12.5px;
	font-weight: 500;
	color: var(--ce-green-dark);
}


/* Kayıtlı fatura adresi seçici (Adım 2 üstü): tam satır genişliği —
   sol/sağ kenarları alttaki Kişi + Telefon alanlarının dış kenarlarıyla
   hizalı (aynı ebeveynin tam genişlikli çocukları). Mobil zaten tam
   genişlikti; davranış değişmez. */
.ce-co-fbill-saved {
	margin-bottom: 18px;
}

/* Fatura adresini kaydetme onay popup'ı */
.ce-co-fbmodal {
	position: fixed;
	inset: 0;
	z-index: 90;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
}

.ce-co-fbmodal__overlay {
	position: absolute;
	inset: 0;
	background: rgba(20, 25, 30, 0.5);
}

.ce-co-fbmodal__box {
	position: relative;
	background: #fff;
	border-radius: 14px;
	box-shadow: 0 18px 50px rgba(0, 0, 0, 0.2);
	padding: 28px 26px 22px;
	width: 100%;
	max-width: 380px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
	text-align: center;
}

.ce-co-fbmodal__icon {
	width: 52px;
	height: 52px;
	border-radius: 50%;
	background: var(--ce-green-light);
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.ce-co-fbmodal__icon svg {
	width: 26px;
	height: 26px;
	stroke: var(--ce-green);
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.ce-co-fbmodal__title {
	margin: 0;
	font-size: 14.5px;
	font-weight: 500;
	line-height: 1.5;
	color: var(--ce-text);
}

.ce-co-fbmodal__add {
	width: 100%;
	border: 0;
	border-radius: 10px;
	background: var(--ce-green);
	color: #fff;
	font: 600 14px/1 var(--ce-font);
	padding: 13px 18px;
	cursor: pointer;
	transition: background 0.15s;
}

.ce-co-fbmodal__add:hover {
	background: var(--ce-green-dark);
}

.ce-co-fbmodal__skip {
	width: 100%;
	border: 1px solid #dcdfe3;
	border-radius: 10px;
	background: #fff;
	color: var(--ce-muted);
	font: 600 14px/1 var(--ce-font);
	padding: 12px 18px;
	cursor: pointer;
	transition: border-color 0.15s, color 0.15s;
}

.ce-co-fbmodal__skip:hover {
	border-color: var(--ce-muted);
	color: var(--ce-text);
}

/* Katlanır "Fatura bilgilerimi düzenle" bağlantısı */
.ce-co-bill-toggle {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	border: 0;
	background: none;
	padding: 0;
	margin: 8px 0 16px;
	font: 600 13.5px/1.4 var(--ce-font);
	color: var(--ce-green);
	cursor: pointer;
}

.ce-co-bill-toggle:hover {
	color: var(--ce-green-dark);
}

.ce-co-bill-toggle svg {
	width: 16px;
	height: 16px;
	stroke: currentColor;
	stroke-width: 2.2;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
	transition: transform 0.18s;
}

.ce-co-bill-toggle.is-open svg {
	transform: rotate(180deg);
}

/* Kişi / Şirket radyoları */
.ce-co-bill-type {
	display: flex;
	gap: 26px;
	margin-bottom: 16px;
}

.ce-co-radio {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 13.5px;
	font-weight: 500;
	color: var(--ce-text);
	cursor: pointer;
}

.ce-co-radio input {
	width: 17px;
	height: 17px;
	margin: 0;
	accent-color: var(--ce-green);
	cursor: pointer;
}

/* --- Adım 3: Mesaj Kartı --- */
.ce-co-check {
	display: flex;
	align-items: center;
	gap: 9px;
	font-size: 13.5px;
	font-weight: 500;
	color: var(--ce-text);
	cursor: pointer;
	margin-bottom: 12px;
}

.ce-co-check input {
	width: 17px;
	height: 17px;
	margin: 0;
	flex-shrink: 0;
	accent-color: var(--ce-green);
	cursor: pointer;
}

.ce-co-nocard {
	margin-bottom: 18px;
}

/* "Kart notu istemiyorum" işaretliyken form + önizleme pasif */
.ce-co-cardwrap.is-disabled {
	opacity: 0.45;
	pointer-events: none;
	user-select: none;
}

/* Tema seçimi: yatay kaydırılabilir küçük kartlar */
.ce-co-themes {
	display: flex;
	gap: 10px;
	overflow-x: auto;
	padding-bottom: 8px;
	margin-bottom: 16px;
	scrollbar-width: thin;
	scrollbar-color: #c9cdd2 transparent;
}

.ce-co-themes::-webkit-scrollbar {
	height: 6px;
}

.ce-co-themes::-webkit-scrollbar-thumb {
	background: #c9cdd2;
	border-radius: 6px;
}

.ce-co-theme {
	flex: 0 0 auto;
	width: 96px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
	border: 2px solid transparent;
	border-radius: 12px;
	background: none;
	padding: 5px;
	cursor: pointer;
	transition: border-color 0.15s;
}

.ce-co-theme img {
	width: 100%;
	aspect-ratio: 640 / 420;
	object-fit: cover;
	border-radius: 8px;
	border: 1px solid #eee;
	display: block;
}

.ce-co-theme span {
	font-size: 11px;
	line-height: 1.25;
	color: var(--ce-muted);
	text-align: center;
}

.ce-co-theme:hover {
	border-color: #cde8d9;
}

.ce-co-theme.is-active {
	border-color: var(--ce-green);
}

.ce-co-theme.is-active span {
	color: var(--ce-green-dark);
	font-weight: 600;
}

/* Karakter sayacı */
.ce-co-charcount {
	display: block;
	text-align: right;
	font-size: 11.5px;
	color: var(--ce-muted);
	margin-top: 4px;
}

/* Hazır mesaj çipleri */
.ce-co-tpls {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 16px;
}

.ce-co-tpl {
	border: 1px solid #dcdfe3;
	border-radius: 999px;
	background: #fff;
	padding: 8px 13px;
	font: 400 12px/1.35 var(--ce-font);
	color: var(--ce-text);
	text-align: left;
	cursor: pointer;
	transition: border-color 0.15s, background 0.15s;
}

.ce-co-tpl:hover {
	border-color: var(--ce-green);
	background: var(--ce-green-light);
	color: var(--ce-green-dark);
}

/* Anonim işaretliyken Kimden alanı gizli */
.ce-co-field--from.is-off {
	display: none;
}

/* Anonim seçilince "Kimden" alanı gizlenir ve "İsmim görünmesin" satırı
   önizleme kartının dibine yapışırdı; o durumda boşluğu buradan veriyoruz. */
.ce-co-field--from.is-off + .ce-co-check {
	margin-top: 16px;
}

/* Gönderen alanı önizleme kartının hemen altında (kartla aynı genişlik/hiza) */
.ce-co-field--prevfrom {
	margin-top: 14px;
}

/* Canlı önizleme: tema görseli üstünde not + kimden */
.ce-co-cardprev {
	position: relative;
	border-radius: 14px;
	overflow: hidden;
	border: 1px solid #ececec;
	box-shadow: var(--ce-shadow);
}

.ce-co-cardprev img {
	width: 100%;
	display: block;
}

.ce-co-cardprev__text {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 11% 12%;
	text-align: center;
}

.ce-co-cardprev__text p {
	margin: 0;
	font-size: clamp(13px, 1.6vw, 17px);
	line-height: 1.55;
	color: #4a453c;
	white-space: pre-wrap;
	word-break: break-word;
	overflow: hidden;
	max-height: 100%;
}

.ce-co-cardprev__text p.is-hint {
	color: #b3aa99;
	font-style: italic;
}

#ce-co-cardprev-from {
	align-self: flex-end;
	font-size: 13.5px;
	font-style: italic;
	font-weight: 500;
	color: #6b665c;
}

/* --- Adım 4: Ödeme --- */

/* Alan üstü küçük etiket + alan altı gri not */
/* İkonlu input kutusu (fatura adımındaki kutuyla aynı görsel dil) */
/* Yöntem ikonları (jenerik: banka/nakit/kart) */
/* Güvenli Ödeme paneli */
.ce-co-trust {
	border: 1px solid #d8ecdf;
	background: #f6fbf8;
	border-radius: 12px;
	padding: 20px 22px;
}

.ce-co-trust__title {
	display: flex;
	align-items: center;
	gap: 9px;
	margin: 0 0 14px;
	font-size: 14.5px;
	font-weight: 600;
	color: var(--ce-green-dark);
}

.ce-co-trust__title svg {
	width: 21px;
	height: 21px;
	stroke: var(--ce-green);
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}

.ce-co-trust__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.ce-co-trust__list li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	font-size: 13px;
	line-height: 1.5;
	color: #4a5560;
}

.ce-co-trust__list svg {
	flex-shrink: 0;
	width: 18px;
	height: 18px;
	margin-top: 1px;
	stroke: var(--ce-green);
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}

.ce-co-payerrors {
	margin-bottom: 16px;
	padding: 12px 16px;
	border: 1px solid #f3c2cf;
	background: #fdf1f4;
	border-radius: 10px;
	font-size: 13px;
	color: var(--ce-danger);
}

.ce-co-payerrors ul {
	margin: 0;
	padding-left: 18px;
}

.ce-co-payerrors .woocommerce-error {
	list-style: none;
	padding: 0;
	margin: 0;
}

.ce-co-continue:disabled {
	background: #a7d9bf;
	cursor: wait;
}

/* (Yer tutucu adım stilleri kaldırıldı — tüm adımlar gerçek içerikli.) */

/* --- Sağ sütun: Devam Et + özet + kupon --- */
.ce-co__side {
	position: sticky;
	top: 18px;
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.ce-co-continue {
	width: 100%;
	border: 0;
	border-radius: 10px;
	background: var(--ce-green);
	color: #fff;
	font: 600 15px/1 var(--ce-font);
	padding: 15px 18px;
	cursor: pointer;
	transition: background 0.15s;
}

.ce-co-continue:hover {
	background: var(--ce-green-dark);
}

.ce-co-summary {
	padding: 20px 22px;
}

.ce-co-summary__title {
	margin: 0 0 10px;
	font-size: 16px;
	font-weight: 600;
}

.ce-co-summary__total {
	font-size: 26px;
	font-weight: 700;
	color: var(--ce-text);
	margin-bottom: 12px;
}

.ce-co-summary__total .woocommerce-Price-amount {
	font-size: inherit;
	font-weight: inherit;
}

.ce-co-summary__lines {
	border-top: 1px solid #f1f1f1;
	padding-top: 12px;
	display: flex;
	flex-direction: column;
	gap: 9px;
}

.ce-co-summary__line {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	font-size: 13px;
	color: #5a5f66;
}

.ce-co-summary__line--coupon {
	color: var(--ce-green-dark);
	font-weight: 600;
}

.ce-co-summary__couponcheck {
	width: 13px;
	height: 13px;
	vertical-align: -1.5px;
	stroke: var(--ce-green);
	stroke-width: 3;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.ce-co-coupon-remove {
	border: 0;
	background: none;
	color: var(--ce-danger);
	font-size: 15px;
	line-height: 1;
	cursor: pointer;
	padding: 0 2px;
}

.ce-co-summary__feenote {
	margin: 12px 0 0;
	padding: 10px 12px;
	border-radius: 8px;
	background: var(--ce-green-light);
	font-size: 12px;
	font-weight: 500;
	color: var(--ce-green-dark);
}

/* Kupon kutusu */
.ce-co-couponbox {
	padding: 0;
	overflow: hidden;
}

.ce-co-coupon-toggle {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
	border: 0;
	background: #fff;
	padding: 15px 18px;
	font: 600 13.5px/1 var(--ce-font);
	color: var(--ce-text);
	cursor: pointer;
}

.ce-co-coupon-toggle svg {
	width: 16px;
	height: 16px;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
	transition: transform 0.18s;
}

.ce-co-coupon-toggle.is-open svg {
	transform: rotate(180deg);
}

/* hidden attribute'u display:flex'i ezemez (author > UA); açıkça kapat. */
.ce-co-coupon-body[hidden],
.ce-co-fbmodal[hidden] {
	display: none;
}

.ce-co-coupon-body {
	display: flex;
	gap: 8px;
	padding: 0 18px 15px;
}

.ce-co-coupon-body input {
	flex: 1;
	min-width: 0;
	border: 1px solid #dcdfe3;
	border-radius: 8px;
	padding: 10px 12px;
	font: 400 13px/1.4 var(--ce-font);
}

.ce-co-coupon-body input:focus {
	outline: none;
	border-color: var(--ce-green);
}

.ce-co-coupon-apply {
	flex-shrink: 0;
	white-space: nowrap;
	border: 1px solid var(--ce-green);
	background: #fff;
	color: var(--ce-green);
	border-radius: 8px;
	padding: 10px 16px;
	font: 600 13px/1 var(--ce-font);
	cursor: pointer;
	transition: background 0.15s, color 0.15s;
}

.ce-co-coupon-apply:hover {
	background: var(--ce-green);
	color: #fff;
}

/* Mobil kompakt uygulanan-kupon bloğu: masaüstünde gizli (özet kartı
   zaten gösteriyor); mobil media query içinde görünür yapılır */
.ce-co-coupon-applied {
	display: none;
}

.ce-co-coupon-msg {
	margin: 0;
	padding: 0 18px 14px;
	font-size: 12px;
	color: var(--ce-danger);
}

.ce-co-coupon-msg.is-ok {
	color: var(--ce-green-dark);
}

/* Mobil sabit alt çubuk (masaüstünde gizli) */
/* --- Mobil düzen --- */
@media (max-width: 900px) {
	/* Güvence: mobilde hiçbir öğe sayfayı yana kaydıramaz (html + body;
	   yalnız body'ye vermek iOS'ta layout viewport genişlemesini durdurmaz) */
	html:has(.ce-co-body) {
		overflow-x: hidden;
	}

	.ce-co-body {
		overflow-x: hidden;
		overflow-x: clip;
	}

	/* Grid çocukları içerikleri yüzünden kolonu genişletemez (min-width:auto
	   varsayılanı taşmaya izin verir) */
	.ce-co__main,
	.ce-co__side {
		min-width: 0;
	}

	/* Kupon input'u ≥16px: mobil tarayıcının odakta otomatik zoom'unu
	   (yana kayma görüntüsünün kaynağı) tamamen engeller */
	.ce-co-coupon-body input {
		font-size: 16px;
	}

	.ce-co {
		padding-bottom: 96px;
	}

	.ce-co__topbar {
		margin-bottom: 18px;
	}

	.ce-co-stepper__step {
		width: 84px;
	}

	.ce-co-stepper__name {
		font-size: 11px;
	}

	.ce-co__grid {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	.ce-co-card {
		padding: 18px 16px;
	}

	.ce-co-bill-type {
		gap: 18px;
		flex-wrap: wrap;
	}

	.ce-co__side {
		position: static;
	}

	/* Mobilde TÜM adımlarda Sipariş Özeti kartı gizli (toplam/ara toplam
	   sabit çubukta görünür); kupon kutusu kompakt blok olarak kalır.
	   Kart DOM'da durur: sticky toplam ve kupon senkronu oradan beslenir. */
	.ce-co-summary {
		display: none;
	}

	/* Uygulanan kupon satırları (özet kartından kopyalanır) mobilde
	   kupon kutusunun içinde görünür */
	.ce-co-coupon-applied:not(:empty) {
		display: block;
		padding: 0 18px 13px;
	}

	/* Adım 3 (Mesaj Kartı): mobilde kupon kutusu gizli — indirim girişi
	   diğer adımlarda/sepette yapılır; uygulanmış indirim tutara işlemeye
	   devam eder (sabit çubuktaki Toplam indirimli tutardır). */
	body[data-co-step="3"] .ce-co-couponbox {
		display: none;
	}

}

/* =========================================================
   FATURA ADRESLERİM (Hesabım > Adreslerim alt bölümü) —
   kartlar/form mevcut .ce-addr bileşenlerini aynen kullanır.
   ========================================================= */

.ce-addr--billing {
	margin-top: 36px;
	padding-top: 28px;
	border-top: 1px solid var(--ce-border);
}

.ce-addr__sectitle {
	margin: 0 0 4px;
	font-size: 17px;
	font-weight: 600;
	color: var(--ce-text);
}

.ce-addr__typerow {
	display: flex;
	gap: 24px;
	margin: 0 0 16px;
	flex-wrap: wrap;
}

.ce-addr__typerow label {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-weight: 500;
	color: var(--ce-text);
	cursor: pointer;
}

.ce-addr__typerow input {
	width: 16px;
	height: 16px;
	margin: 0;
	accent-color: var(--ce-green);
	cursor: pointer;
}


/* =========================================================
   ÖDEME SONRASI UÇ NOKTALAR (ce-coe-*): teşekkür / sipariş
   ödeme / hata ekranları — checkout ile aynı sade kabuk.
   ========================================================= */

.ce-coe {
	max-width: 900px;
	padding-top: 26px;
}

.ce-coe-card {
	background: #fff;
	border: 1px solid #ececec;
	border-radius: 14px;
	padding: 32px 30px;
	text-align: center;
	margin-bottom: 18px;
}

.ce-coe-card--error {
	border-color: #f3c2cf;
}

.ce-coe-icon {
	width: 64px;
	height: 64px;
	border-radius: 50%;
	background: var(--ce-green-light);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 14px;
}

.ce-coe-icon svg {
	width: 34px;
	height: 34px;
	stroke: var(--ce-green);
	stroke-width: 2;
	fill: none;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.ce-coe-icon--error {
	background: #fdf1f4;
}

.ce-coe-icon--error svg {
	stroke: var(--ce-danger);
}

.ce-coe-title {
	margin: 0 0 8px;
	font-size: 24px;
	font-weight: 700;
	color: var(--ce-text);
}

.ce-coe-text {
	margin: 0 auto;
	max-width: 520px;
	font-size: 14px;
	color: var(--ce-muted);
}

.ce-coe-meta {
	list-style: none;
	display: flex;
	justify-content: center;
	gap: 34px;
	flex-wrap: wrap;
	margin: 22px 0 0;
	padding: 18px 0 0;
	border-top: 1px solid #f1f1f1;
}

.ce-coe-meta li {
	display: flex;
	flex-direction: column;
	gap: 3px;
}

.ce-coe-meta span {
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	color: var(--ce-muted);
}

.ce-coe-meta strong {
	font-size: 14.5px;
	color: var(--ce-text);
}

/* Özet + teslimat iki sütun */
.ce-coe-grid {
	display: grid;
	grid-template-columns: 1.2fr 1fr;
	gap: 18px;
	margin-bottom: 18px;
}

.ce-coe-grid .ce-coe-card {
	text-align: left;
	margin-bottom: 0;
	padding: 22px 24px;
}

.ce-coe-subtitle {
	margin: 0 0 12px;
	font-size: 15px;
	font-weight: 600;
	color: var(--ce-text);
}

.ce-coe-subtitle + .ce-coe-subtitle,
.ce-coe-addr + .ce-coe-subtitle {
	margin-top: 18px;
}

.ce-coe-item {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 10px 0;
	border-bottom: 1px solid #f4f4f4;
}

.ce-coe-item__thumb {
	flex-shrink: 0;
}

.ce-coe-item__thumb img {
	width: 58px;
	height: 58px;
	object-fit: cover;
	border-radius: 10px;
	border: 1px solid #eee;
	display: block;
}

.ce-coe-item__info {
	flex: 1;
	min-width: 0;
}

.ce-coe-item__row {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	font-size: 13.5px;
	font-weight: 500;
	color: var(--ce-text);
}

.ce-coe-item__name em {
	font-style: normal;
	color: var(--ce-muted);
}

/* wc_display_item_meta çıktısı (teslimat tarihi/saat/konum, tasarım) */
.ce-coe-item .wc-item-meta {
	list-style: none;
	margin: 6px 0 0;
	padding: 0;
	font-size: 12px;
	color: var(--ce-muted);
}

.ce-coe-item .wc-item-meta li {
	display: flex;
	gap: 5px;
}

.ce-coe-item .wc-item-meta p {
	display: inline;
	margin: 0;
}

.ce-coe-lines {
	margin-top: 12px;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.ce-coe-line {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	font-size: 13px;
	color: #5a5f66;
}

.ce-coe-line--discount {
	color: var(--ce-green-dark);
	font-weight: 600;
}

.ce-coe-line--total {
	border-top: 1px solid #f1f1f1;
	padding-top: 10px;
	font-weight: 700;
	font-size: 15px;
	color: var(--ce-text);
}

.ce-coe-addr {
	display: flex;
	flex-direction: column;
	gap: 4px;
	margin: 0;
	font-size: 13.5px;
	color: var(--ce-text);
}

.ce-coe-addr span {
	color: #5a5f66;
}

.ce-coe-cardnote {
	margin: 0;
	padding: 12px 14px;
	background: var(--ce-bg-soft);
	border-radius: 10px;
	font-size: 13px;
	font-style: italic;
	color: #555;
}

.ce-coe-cardnote em {
	display: block;
	margin-top: 6px;
	text-align: right;
	font-weight: 600;
}

/* Butonlar */
.ce-coe-actions {
	display: flex;
	justify-content: center;
	gap: 10px;
	flex-wrap: wrap;
	margin-top: 20px;
}

.ce-coe-actions--page {
	margin: 6px 0 34px;
}

.ce-coe-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--ce-green);
	color: #fff;
	border-radius: 10px;
	padding: 13px 26px;
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
	transition: background 0.15s;
}

.ce-coe-btn:hover {
	background: var(--ce-green-dark);
	color: #fff;
}

.ce-coe-btn--ghost {
	background: #fff;
	border: 1px solid #dcdfe3;
	color: var(--ce-text);
}

.ce-coe-btn--ghost:hover {
	background: var(--ce-bg-soft);
	color: var(--ce-text);
}

/* Geçit talimatları (Havale banka bilgileri vb.) */
.ce-coe-instructions {
	text-align: left;
	font-size: 13.5px;
	color: var(--ce-text);
}

.ce-coe-instructions h2,
.ce-coe-instructions h3 {
	margin: 0 0 10px;
	font-size: 15px;
	font-weight: 600;
	color: var(--ce-text);
}

.ce-coe-instructions p {
	margin: 0 0 10px;
	color: var(--ce-muted);
}

.ce-coe-instructions ul {
	list-style: none;
	margin: 0 0 10px;
	padding: 0;
}

.ce-coe-instructions .wc-bacs-bank-details li {
	padding: 6px 0;
	border-bottom: 1px solid #f4f4f4;
}

/* WC bildirimleri: kabuk içinde ve checkout adımlarında Rosses kartı */
.ce-coe .woocommerce-error,
.ce-coe .woocommerce-info,
.ce-coe .woocommerce-message,
.ce-co-wcnotices .woocommerce-error,
.ce-co-wcnotices .woocommerce-info,
.ce-co-wcnotices .woocommerce-message {
	list-style: none;
	margin: 0 0 16px;
	padding: 13px 16px;
	border-radius: 10px;
	font-size: 13.5px;
	border: 1px solid #cdebdb;
	background: var(--ce-green-light);
	color: var(--ce-green-dark);
}

.ce-coe .woocommerce-error,
.ce-co-wcnotices .woocommerce-error {
	border-color: #f3c2cf;
	background: #fdf1f4;
	color: var(--ce-danger);
}

.ce-coe .woocommerce-error li,
.ce-co-wcnotices .woocommerce-error li {
	margin: 0;
}

/* order-pay: WC ödeme formu Rosses düzeninde */
.ce-coe #order_review,
.ce-coe .woocommerce-checkout-review-order {
	background: #fff;
	border: 1px solid #ececec;
	border-radius: 14px;
	padding: 22px 24px;
}

.ce-coe table.shop_table {
	width: 100%;
	border-collapse: collapse;
	border: 0;
	font-size: 13.5px;
	margin-bottom: 16px;
}

.ce-coe table.shop_table th,
.ce-coe table.shop_table td {
	border: 0;
	border-bottom: 1px solid #f4f4f4;
	padding: 10px 6px;
	text-align: left;
	color: var(--ce-text);
}

.ce-coe table.shop_table tfoot tr:last-child th,
.ce-coe table.shop_table tfoot tr:last-child td {
	border-bottom: 0;
	font-weight: 700;
}

.ce-coe #payment {
	background: transparent;
}

.ce-coe #payment ul.wc_payment_methods {
	list-style: none;
	margin: 0 0 14px;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.ce-coe #payment ul.wc_payment_methods li {
	border: 1px solid #dcdfe3;
	border-radius: 12px;
	padding: 12px 16px;
	background: #fff;
}

.ce-coe #payment ul.wc_payment_methods li label {
	font-weight: 600;
	font-size: 14px;
	cursor: pointer;
}

.ce-coe #payment input[type="radio"] {
	accent-color: var(--ce-green);
	margin-right: 8px;
}

.ce-coe #payment div.payment_box {
	margin-top: 8px;
	font-size: 13px;
	color: var(--ce-muted);
	background: var(--ce-bg-soft);
	border-radius: 8px;
	padding: 10px 12px;
}

.ce-coe #payment button#place_order,
.ce-coe .button.alt {
	background: var(--ce-green);
	border: 0;
	border-radius: 10px;
	color: #fff;
	font: 600 14px/1 var(--ce-font);
	padding: 14px 28px;
	cursor: pointer;
	transition: background 0.15s;
}

.ce-coe #payment button#place_order:hover,
.ce-coe .button.alt:hover {
	background: var(--ce-green-dark);
}

/* Misafir sipariş görüntüleme: WC e-posta doğrulama formu (kabuk stili) */
.ce-coe .woocommerce-verify-email {
	background: #fff;
	border: 1px solid #ececec;
	border-radius: 14px;
	padding: 24px 26px;
	max-width: 520px;
	margin: 0 auto 30px;
	font-size: 13.5px;
}

.ce-coe .woocommerce-verify-email .form-row {
	margin: 0 0 12px;
}

.ce-coe .woocommerce-verify-email label {
	display: block;
	margin-bottom: 6px;
	font-size: 12.5px;
	font-weight: 600;
}

.ce-coe .woocommerce-verify-email input.input-text {
	width: 100%;
	border: 1px solid #dcdfe3;
	border-radius: 10px;
	padding: 12px 14px;
	font: 400 13.5px/1.45 var(--ce-font);
}

.ce-coe .woocommerce-verify-email input.input-text:focus {
	outline: none;
	border-color: var(--ce-green);
	box-shadow: 0 0 0 3px rgba(18, 161, 80, 0.1);
}

.ce-coe .woocommerce-verify-email .woocommerce-button {
	background: var(--ce-green);
	border: 0;
	border-radius: 10px;
	color: #fff;
	font: 600 14px/1 var(--ce-font);
	padding: 13px 26px;
	cursor: pointer;
}

.ce-coe .woocommerce-verify-email .woocommerce-button:hover {
	background: var(--ce-green-dark);
}

/* Sipariş detayları tablosu: ürün satırında küçük görsel (teşekkür +
   Hesabım sipariş görüntüleme — order-details-item.php override'ı) */
.ce-od-prod {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	min-width: 0;
}

.ce-od-thumb {
	flex-shrink: 0;
}

.ce-od-thumb img {
	width: 56px;
	height: 56px;
	object-fit: cover;
	border-radius: 10px;
	border: 1px solid #eee;
	display: block;
}

.ce-od-info {
	flex: 1;
	min-width: 0;
}

.ce-od-info a {
	color: var(--ce-text);
	text-decoration: none;
	font-weight: 600;
}

.ce-od-info a:hover {
	color: var(--ce-green-dark);
}

/* Ödeme sayfasına dönüş bağlantısı */
.ce-coe-backrow {
	text-align: center;
	margin: 16px 0 30px;
}

.ce-coe-backlink {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-size: 13.5px;
	font-weight: 500;
	color: var(--ce-green-dark);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.ce-coe-backlink svg {
	width: 15px;
	height: 15px;
	stroke: currentColor;
	stroke-width: 2.2;
	fill: none;
	stroke-linecap: round;
	stroke-linejoin: round;
}

/* Checkout adımlarındaki WC bildirimleri (geçit reddi dönüşü) */
.ce-co-wcnotices {
	margin-bottom: 18px;
}

/* Mobil */
@media (max-width: 900px) {
	.ce-coe-grid {
		grid-template-columns: 1fr;
	}

	.ce-coe-card {
		padding: 24px 18px;
	}

	.ce-coe-meta {
		gap: 18px 26px;
	}

	.ce-coe-actions--page {
		margin-bottom: 40px;
	}
}


/* =========================================================
   HESABIM > SİPARİŞLERİM (ce-ord-*): çiçeksepeti düzeni —
   bilgi şeridi, sekmeler, durum çipleri, sıralama ve ürün
   görselli sipariş kartları.
   ========================================================= */

.ce-ord {
	display: flex;
	flex-direction: column;
	gap: 0;
}

/* Bilgi şeridi */
.ce-ord__notice {
	display: flex;
	align-items: center;
	gap: 10px;
	background: var(--ce-bg-soft);
	border: 1px solid #ececec;
	border-radius: 12px;
	padding: 14px 16px;
	font-size: 13px;
	color: var(--ce-muted);
	margin-bottom: 18px;
}

.ce-ord__notice svg {
	flex-shrink: 0;
	width: 18px;
	height: 18px;
	stroke: var(--ce-green);
	stroke-width: 1.8;
	stroke-linecap: round;
	fill: none;
}

/* Sekmeler */
.ce-ord__tabs {
	display: flex;
	gap: 22px;
	border-bottom: 1px solid #ececec;
	margin-bottom: 16px;
}

.ce-ord__tab {
	padding: 10px 2px 12px;
	font-size: 14px;
	font-weight: 500;
	color: var(--ce-muted);
	text-decoration: none;
	border-bottom: 2px solid transparent;
	margin-bottom: -1px;
	white-space: nowrap;
}

.ce-ord__tab:hover {
	color: var(--ce-text);
}

.ce-ord__tab.is-active {
	color: var(--ce-green-dark);
	font-weight: 600;
	border-bottom-color: var(--ce-green);
}

/* Çipler + sıralama satırı */
.ce-ord__bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	margin-bottom: 16px;
}

.ce-ord__chips {
	display: flex;
	gap: 8px;
	overflow-x: auto;
	padding-bottom: 4px;
	scrollbar-width: thin;
	scrollbar-color: #c9cdd2 transparent;
}

.ce-ord__chip {
	flex-shrink: 0;
	border: 1px solid #dcdfe3;
	border-radius: 999px;
	padding: 8px 15px;
	font-size: 12.5px;
	font-weight: 500;
	color: var(--ce-text);
	text-decoration: none;
	background: #fff;
	transition: border-color 0.15s, color 0.15s;
}

.ce-ord__chip:hover {
	border-color: var(--ce-green);
	color: var(--ce-green-dark);
}

.ce-ord__chip.is-active {
	border: 2px solid var(--ce-green);
	color: var(--ce-green-dark);
	font-weight: 600;
	padding: 7px 14px;
}

.ce-ord__sort {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	border: 1px solid #dcdfe3;
	border-radius: 10px;
	padding: 8px 12px;
	background: #fff;
	cursor: pointer;
}

.ce-ord__sort svg {
	width: 16px;
	height: 16px;
	stroke: var(--ce-muted);
	stroke-width: 1.9;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}

.ce-ord__sort select {
	border: 0;
	background: transparent;
	font: 500 13px/1.3 var(--ce-font);
	color: var(--ce-text);
	cursor: pointer;
}

.ce-ord__sort select:focus {
	outline: none;
}

/* Sipariş kartı */
.ce-ord__card {
	border: 1px solid #ececec;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 1px 6px rgba(0, 0, 0, 0.03);
	margin-bottom: 14px;
	overflow: hidden;
	cursor: pointer;
	transition: border-color 0.15s, box-shadow 0.15s;
}

.ce-ord__card:hover {
	border-color: #cde8d9;
	box-shadow: 0 4px 16px rgba(18, 161, 80, 0.08);
}

.ce-ord__cardtop {
	display: flex;
	align-items: center;
	gap: 10px 26px;
	flex-wrap: wrap;
	padding: 14px 18px;
	border-bottom: 1px solid #efefef;
	background: #f7f7f7;
}

.ce-ord__fact {
	font-size: 13px;
	color: var(--ce-text);
}

.ce-ord__fact em {
	font-style: normal;
	color: var(--ce-muted);
}

.ce-ord__detail {
	margin-left: auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--ce-green);
	color: #fff;
	border-radius: 9px;
	padding: 9px 24px;
	font-size: 13px;
	line-height: 1.2;
	font-weight: 600;
	text-decoration: none;
	transition: background 0.15s;
}

.ce-ord__detail:hover,
.ce-ord__detail:focus {
	background: var(--ce-green-dark);
	color: #fff;
}

.ce-ord__cardbody {
	display: flex;
	align-items: center;
	gap: 22px;
	padding: 16px 18px;
}

.ce-ord__thumb img {
	width: 72px;
	height: 72px;
	object-fit: cover;
	border-radius: 10px;
	border: 1px solid #eee;
	display: block;
}

.ce-ord__stats {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin: 0;
}

.ce-ord__stats div {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 13px;
}

.ce-ord__stats dt {
	color: var(--ce-muted);
	min-width: 110px;
}

.ce-ord__stats dt::after {
	content: ":";
	margin-left: 4px;
}

.ce-ord__stats dd {
	margin: 0;
	font-weight: 600;
	color: var(--ce-text);
}

/* Durum rozetleri */
.ce-ord__badge {
	display: inline-block;
	border-radius: 7px;
	padding: 4px 10px;
	font-size: 12px;
	font-weight: 600;
}

.ce-ord__badge--ok {
	background: var(--ce-green-light);
	color: var(--ce-green-dark);
}

.ce-ord__badge--busy {
	background: #eef4fd;
	color: #2563ad;
}

.ce-ord__badge--wait {
	background: #fdf6e7;
	color: #a8730a;
}

.ce-ord__badge--bad {
	background: #fdf0f3;
	color: var(--ce-danger);
}

.ce-ord__badge--muted {
	background: #f1f2f4;
	color: #5a5f66;
}

/* Sayfalama */
.ce-ord__paging {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 16px;
	margin-top: 6px;
}

.ce-ord__pagebtn {
	border: 1px solid #dcdfe3;
	border-radius: 9px;
	padding: 8px 16px;
	font-size: 13px;
	font-weight: 500;
	color: var(--ce-text);
	text-decoration: none;
}

.ce-ord__pagebtn:hover {
	border-color: var(--ce-green);
	color: var(--ce-green-dark);
}

.ce-ord__pageinfo {
	font-size: 13px;
	color: var(--ce-muted);
}

/* Boş durum */
.ce-ord__empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
	padding: 46px 20px;
	text-align: center;
	border: 1px dashed #dcdfe3;
	border-radius: 14px;
	color: var(--ce-muted);
}

.ce-ord__empty svg {
	width: 40px;
	height: 40px;
	stroke: #c8ccd1;
	stroke-width: 1.6;
	stroke-linecap: round;
	fill: none;
}

.ce-ord__empty p {
	margin: 0;
	font-size: 13.5px;
}

.ce-ord__shopbtn {
	background: var(--ce-green);
	color: #fff;
	border-radius: 9px;
	padding: 10px 22px;
	font-size: 13px;
	font-weight: 600;
	text-decoration: none;
}

.ce-ord__shopbtn:hover {
	background: var(--ce-green-dark);
	color: #fff;
}

/* Mobil: kartlar tam genişlik, üst satır bilgileri alt alta, Detay kendi
   satırında tam genişlik; hiçbir öğe yatay taşma yaratamaz */
@media (max-width: 768px) {
	.ce-ord {
		max-width: 100%;
		min-width: 0;
	}

	.ce-ord__bar {
		flex-direction: column;
		align-items: stretch;
	}

	.ce-ord__chips {
		width: 100%;
	}

	.ce-ord__sort {
		align-self: flex-end;
		max-width: 100%;
	}

	.ce-ord__card {
		width: 100%;
	}

	/* Üst şerit: bilgiler solda kompakt alt alta, KÜÇÜK "Detay" butonu sağda
	   (üç satıra dikey ortalı) — tam genişlik dev buton yok */
	.ce-ord__cardtop {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		align-items: center;
		gap: 3px 12px;
		padding: 11px 14px;
	}

	.ce-ord__fact {
		grid-column: 1;
		font-size: 12.5px;
		line-height: 1.45;
		overflow-wrap: anywhere;
	}

	.ce-ord__detail {
		grid-column: 2;
		grid-row: 1 / span 3;
		align-self: center;
		width: auto;
		margin: 0;
		padding: 8px 18px;
		font-size: 12.5px;
		white-space: nowrap;
	}

	/* Alt alan: küçük görsel + bilgiler yanında, dengeli boşluk */
	.ce-ord__cardbody {
		gap: 12px;
		padding: 12px 14px;
		flex-wrap: wrap;
	}

	.ce-ord__thumb img {
		width: 56px;
		height: 56px;
	}

	.ce-ord__stats {
		gap: 6px;
	}

	.ce-ord__stats div {
		font-size: 12.5px;
	}

	.ce-ord__stats {
		flex: 1;
		min-width: 0;
	}

	.ce-ord__stats div {
		flex-wrap: wrap;
	}

	.ce-ord__stats dt {
		min-width: 96px;
	}

	.ce-ord__paging {
		flex-wrap: wrap;
	}
}


/* =========================================================
   HESABIM > SİPARİŞ DETAYI (ce-vo-*): çiçeksepeti düzeni —
   özet şeridi, yeşil teslimat şeridi, ürün kartları,
   mesaj kartı ve teslimat/ödeme sütunları.
   ========================================================= */

.ce-vo {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.ce-vo__back {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	align-self: flex-start;
	font-size: 13px;
	font-weight: 500;
	color: var(--ce-green-dark) !important;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.ce-vo__back svg {
	width: 14px;
	height: 14px;
	stroke: currentColor;
	stroke-width: 2.2;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}

.ce-vo__title {
	margin: -6px 0 2px;
	font-size: 21px;
	font-weight: 700;
	color: var(--ce-text);
}

/* Sipariş Özeti şeridi */
.ce-vo__summary {
	background: var(--ce-bg-soft);
	border: 1px solid #ececec;
	border-radius: 14px;
	padding: 18px 22px;
}

.ce-vo__summary h3,
.ce-vo__msgcard h3,
.ce-vo__col h3 {
	margin: 0 0 12px;
	font-size: 14.5px;
	font-weight: 600;
	color: var(--ce-text);
}

.ce-vo__summarygrid {
	display: flex;
	gap: 20px 56px;
	flex-wrap: wrap;
}

.ce-vo__summarygrid div,
.ce-vo__delgrid div {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.ce-vo__summarygrid span,
.ce-vo__delgrid span {
	font-size: 12px;
	color: var(--ce-muted);
}

.ce-vo__summarygrid strong,
.ce-vo__delgrid strong {
	font-size: 13.5px;
	color: var(--ce-text);
}

/* --- Müşteri sipariş iptali --- */
.ce-ocx {
	margin-top: 18px;
	padding-top: 16px;
	border-top: 1px solid var(--ce-border);
}

.ce-ocx__open {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 9px 16px;
	border: 1px solid #f2c2ce;
	border-radius: 999px;
	background: #fff5f7;
	color: var(--ce-danger);
	font-size: 13px;
	font-weight: 600;
	line-height: 1.2;
	transition: background 0.15s ease, border-color 0.15s ease;
}

.ce-ocx__open:hover {
	background: var(--ce-danger);
	border-color: var(--ce-danger);
	color: #fff;
}

.ce-ocx__open svg {
	width: 16px;
	height: 16px;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
}

.ce-ocx__done {
	margin-top: 18px;
	padding: 12px 16px;
	border: 1px solid #cdebdb;
	border-radius: 10px;
	background: var(--ce-green-light);
	color: var(--ce-green-dark);
	font-size: 13.5px;
	font-weight: 600;
}

/* Modal */
.ce-ocx__modal[hidden] {
	display: none !important;
}

.ce-ocx__modal {
	position: fixed;
	inset: 0;
	z-index: 100000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
}

.ce-ocx__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.45);
}

.ce-ocx__box {
	position: relative;
	width: 100%;
	max-width: 440px;
	max-height: calc(100vh - 40px);
	overflow-y: auto;
	background: var(--ce-bg);
	border-radius: 16px;
	padding: 26px 24px 22px;
	box-shadow: 0 18px 50px rgba(0, 0, 0, 0.22);
}

.ce-ocx__x {
	position: absolute;
	top: 14px;
	right: 14px;
	width: 30px;
	height: 30px;
	display: grid;
	place-items: center;
	border: 0;
	border-radius: 50%;
	background: var(--ce-bg-soft);
	color: var(--ce-muted);
}

.ce-ocx__x:hover {
	background: #ececec;
	color: var(--ce-text);
}

.ce-ocx__x svg {
	width: 15px;
	height: 15px;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
}

.ce-ocx__title {
	margin: 0 0 6px;
	font-size: 17px;
	font-weight: 700;
	color: var(--ce-text);
}

.ce-ocx__lead {
	margin: 0 0 16px;
	font-size: 13px;
	color: var(--ce-muted);
}

.ce-ocx__reasons {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.ce-ocx__reason {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 11px 14px;
	border: 1px solid var(--ce-border);
	border-radius: 10px;
	font-size: 13.5px;
	cursor: pointer;
	transition: border-color 0.15s ease, background 0.15s ease;
}

.ce-ocx__reason:hover {
	border-color: #cfcfcf;
	background: var(--ce-bg-soft);
}

.ce-ocx__reason input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.ce-ocx__dot {
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	border: 2px solid #c9c9c9;
	border-radius: 50%;
	position: relative;
	transition: border-color 0.15s ease;
}

.ce-ocx__reason input:checked ~ .ce-ocx__dot {
	border-color: var(--ce-green);
}

.ce-ocx__reason input:checked ~ .ce-ocx__dot::after {
	content: "";
	position: absolute;
	inset: 3px;
	border-radius: 50%;
	background: var(--ce-green);
}

.ce-ocx__reason:has(input:checked) {
	border-color: var(--ce-green);
	background: var(--ce-green-light);
}

.ce-ocx__reason input:focus-visible ~ .ce-ocx__dot {
	outline: 2px solid var(--ce-green);
	outline-offset: 2px;
}

.ce-ocx__otherwrap[hidden] {
	display: none !important;
}

.ce-ocx__otherwrap {
	margin-top: 10px;
}

.ce-ocx__other {
	width: 100%;
	box-sizing: border-box;
	padding: 10px 12px;
	border: 1px solid var(--ce-border);
	border-radius: 10px;
	font-family: inherit;
	font-size: 13.5px;
	resize: vertical;
}

.ce-ocx__other:focus {
	outline: none;
	border-color: var(--ce-green);
}

.ce-ocx__error[hidden] {
	display: none !important;
}

.ce-ocx__error {
	margin: 12px 0 0;
	padding: 10px 12px;
	border-radius: 8px;
	background: #fdecef;
	color: #a3183a;
	font-size: 12.5px;
}

.ce-ocx__actions {
	display: flex;
	gap: 10px;
	margin-top: 20px;
}

.ce-ocx__btn {
	flex: 1 1 0;
	padding: 12px 14px;
	border-radius: 10px;
	border: 1px solid transparent;
	font-size: 13.5px;
	font-weight: 600;
	line-height: 1.2;
	transition: background 0.15s ease, border-color 0.15s ease, opacity 0.15s ease;
}

.ce-ocx__btn--ghost {
	background: var(--ce-bg);
	border-color: var(--ce-border);
	color: var(--ce-text);
}

.ce-ocx__btn--ghost:hover {
	background: var(--ce-bg-soft);
}

.ce-ocx__btn--danger {
	background: var(--ce-danger);
	color: #fff;
}

.ce-ocx__btn--danger:hover:not(:disabled) {
	background: #c31c42;
}

.ce-ocx__btn--danger:disabled {
	opacity: 0.45;
	cursor: not-allowed;
}

body.ce-ocx-open {
	overflow: hidden;
}

@media (max-width: 600px) {
	.ce-ocx__modal {
		align-items: flex-end;
		padding: 0;
	}

	.ce-ocx__box {
		max-width: none;
		border-radius: 16px 16px 0 0;
		max-height: 88vh;
		padding: 24px 18px 20px;
	}

	.ce-ocx__open {
		width: 100%;
		justify-content: center;
	}
}

/* Yeşil teslimat şeridi */
.ce-vo__delivery {
	display: flex;
	align-items: flex-start;
	gap: 16px;
	background: var(--ce-green-light);
	border: 1px solid #cdebdb;
	border-radius: 14px;
	padding: 18px 22px;
}

.ce-vo__delicon {
	flex-shrink: 0;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: var(--ce-green);
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.ce-vo__delicon svg {
	width: 24px;
	height: 24px;
	stroke: #fff;
	stroke-width: 1.7;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}

.ce-vo__delbody h3 {
	margin: 0 0 8px;
	font-size: 15px;
	font-weight: 700;
	color: var(--ce-text);
}

.ce-vo__delgrid {
	display: flex;
	gap: 14px 56px;
	flex-wrap: wrap;
}

/* Ürün kartı */
.ce-vo__product {
	display: flex;
	align-items: flex-start;
	gap: 18px;
	border: 1px solid #ececec;
	border-radius: 14px;
	background: #fff;
	padding: 20px 22px;
}

.ce-vo__prodthumb img {
	width: 96px;
	height: 96px;
	object-fit: cover;
	border-radius: 12px;
	border: 1px solid #eee;
	display: block;
}

.ce-vo__prodinfo {
	flex: 1;
	min-width: 0;
}

.ce-vo__prodname {
	margin: 0 0 8px;
	font-size: 15px;
	font-weight: 600;
}

.ce-vo__prodname a {
	color: var(--ce-text) !important;
	text-decoration: none;
}

.ce-vo__prodname a:hover {
	color: var(--ce-green-dark) !important;
}

.ce-vo__prodinfo p {
	margin: 0 0 5px;
	font-size: 13px;
	color: var(--ce-text);
}

.ce-vo__prodinfo p em,
.ce-vo__col p em,
.ce-vo__designlist em {
	font-style: normal;
	color: var(--ce-muted);
}

/* Kişiselleştirme */
.ce-vo__design {
	margin-top: 10px;
	padding-top: 10px;
	border-top: 1px dashed #e8e8e8;
}

.ce-vo__design h4 {
	margin: 0 0 4px;
	font-size: 13px;
	font-weight: 600;
	color: var(--ce-text);
}

.ce-vo__designtoggle {
	border: 0;
	background: none;
	padding: 0;
	font: 500 12.5px/1.4 var(--ce-font);
	color: var(--ce-green-dark);
	text-decoration: underline;
	text-underline-offset: 3px;
	cursor: pointer;
}

.ce-vo__designlist {
	list-style: none;
	margin: 8px 0 0;
	padding: 10px 12px;
	background: var(--ce-bg-soft);
	border-radius: 10px;
	font-size: 12.5px;
	display: flex;
	flex-direction: column;
	gap: 5px;
}

.ce-vo__designlist a {
	color: var(--ce-green-dark) !important;
}

/* Ürün kartı aksiyonları */
.ce-vo__prodactions {
	flex-shrink: 0;
	display: flex;
	flex-direction: column;
	gap: 9px;
	width: 180px;
}

.ce-vo__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--ce-green);
	border: 1px solid var(--ce-green);
	color: #fff !important;
	border-radius: 9px;
	padding: 10px 14px;
	font: 600 13px/1.2 var(--ce-font);
	text-decoration: none;
	cursor: pointer;
	transition: background 0.15s, color 0.15s;
}

.ce-vo__btn:hover {
	background: var(--ce-green-dark);
}

/* Değerlendirilmemiş ürün: davetkâr açık sarı zemin + koyu metin */
.ce-vo__btn--rate {
	background: #ffe08a;
	border-color: #f0c75c;
	color: #6b4e00 !important;
}

.ce-vo__btn--rate:hover {
	background: #f8d570;
	border-color: #e6b944;
}

.ce-vo__btn--ghost {
	background: #fff;
	color: var(--ce-green-dark) !important;
}

.ce-vo__btn--ghost:hover:not(:disabled) {
	background: var(--ce-green-light);
}

.ce-vo__btn:disabled {
	opacity: 0.55;
	cursor: not-allowed;
}

.ce-vo__more {
	position: relative;
}

.ce-vo__more summary {
	list-style: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	width: 100%;
	background: #fff;
	border: 1px solid var(--ce-green);
	color: var(--ce-green-dark);
	border-radius: 9px;
	padding: 10px 14px;
	font: 600 13px/1.2 var(--ce-font);
	cursor: pointer;
}

.ce-vo__more summary::-webkit-details-marker {
	display: none;
}

.ce-vo__more summary svg {
	width: 15px;
	height: 15px;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
	transition: transform 0.15s;
}

.ce-vo__more[open] summary svg {
	transform: rotate(180deg);
}

.ce-vo__moremenu {
	position: absolute;
	top: calc(100% + 6px);
	right: 0;
	left: 0;
	z-index: 20;
	background: #fff;
	border: 1px solid #e4e6ea;
	border-radius: 10px;
	box-shadow: 0 8px 22px rgba(0, 0, 0, 0.1);
	padding: 6px;
	display: flex;
	flex-direction: column;
}

.ce-vo__moremenu a {
	padding: 9px 11px;
	border-radius: 7px;
	font-size: 13px;
	font-weight: 500;
	color: var(--ce-text) !important;
	text-decoration: none;
}

.ce-vo__moremenu a:hover {
	background: var(--ce-green-light);
	color: var(--ce-green-dark) !important;
}

/* Mesaj Kartı */
.ce-vo__msgcard {
	border: 1px solid #ececec;
	border-radius: 14px;
	background: #fff;
	padding: 18px 22px;
}

.ce-vo__msgquote {
	margin: 0;
	padding: 12px 14px;
	background: var(--ce-bg-soft);
	border-radius: 10px;
	font-size: 13px;
	font-style: italic;
	color: #555;
}

.ce-vo__msgquote em {
	display: block;
	margin-top: 6px;
	text-align: right;
	font-weight: 600;
}

.ce-vo__msgempty {
	margin: 0;
	font-size: 13px;
	color: var(--ce-muted);
}

/* Alt sütunlar */
.ce-vo__cols {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
}

.ce-vo__col {
	background: var(--ce-bg-soft);
	border: 1px solid #ececec;
	border-radius: 14px;
	padding: 18px 22px;
}

.ce-vo__col p {
	margin: 0 0 7px;
	font-size: 13px;
	color: var(--ce-text);
}

.ce-vo__total {
	border-top: 1px solid #e5e5e5;
	padding-top: 9px;
	margin-top: 10px !important;
	font-weight: 700;
}

/* Mobil (çiçeksepeti mobil referansı: tek sütun, tam genişlik kartlar,
   "Etiket: değer" satırları, ürün butonları kartın altında) */
@media (max-width: 768px) {
	/* 2) Sipariş Özeti: satırlar alt alta, "Etiket: değer" (etiket koyu) */
	.ce-vo__summarygrid {
		flex-direction: column;
		gap: 8px;
	}

	.ce-vo__summarygrid div,
	.ce-vo__delgrid div {
		flex-direction: row;
		align-items: baseline;
		gap: 6px;
		flex-wrap: wrap;
	}

	/* Yalnız ETİKET span'ı (doğrudan çocuk) hedeflenir: değer içindeki
	   span'lara (fiyat para birimi, durum rozeti) ":" sızmaz */
	.ce-vo__summarygrid > div > span,
	.ce-vo__delgrid > div > span {
		font-size: 13px;
		font-weight: 600;
		color: var(--ce-text);
	}

	.ce-vo__summarygrid > div > span::after,
	.ce-vo__delgrid > div > span::after {
		content: ":";
	}

	.ce-vo__summarygrid strong,
	.ce-vo__delgrid strong {
		font-weight: 400;
	}

	/* 3) Teslimat şeridi: satırlar alt alta */
	.ce-vo__delivery {
		padding: 16px;
		gap: 12px;
	}

	.ce-vo__delgrid {
		flex-direction: column;
		gap: 7px;
	}

	/* 4) Ürün kartı: üstte görsel + bilgiler yan yana; butonlar ALTTA —
	   Fatura (solda, çerçeveli) + Değerlendir (sağda, dolu) yan yana,
	   Diğer İşlemler altta tam genişlik */
	.ce-vo__product {
		flex-wrap: wrap;
		padding: 16px;
	}

	.ce-vo__prodthumb img {
		width: 72px;
		height: 72px;
	}

	.ce-vo__prodinfo {
		flex: 1;
		min-width: 0;
	}

	.ce-vo__prodactions {
		width: 100%;
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 10px;
	}

	/* Fatura (ghost) referansta solda: DOM'da Değerlendir'den sonra gelir,
	   order ile sola alınır. Değerlendir yoksa (teslim edilmemiş sipariş)
	   ghost ilk çocuktur → tek başına tam genişlik. */
	.ce-vo__prodactions .ce-vo__btn--ghost {
		order: -1;
	}

	.ce-vo__prodactions .ce-vo__btn--ghost:first-child {
		grid-column: 1 / -1;
	}

	.ce-vo__more {
		grid-column: 1 / -1;
	}

	/* 7) Teslimat / Ödeme kartları alt alta tam genişlik */
	.ce-vo__cols {
		grid-template-columns: 1fr;
	}

	.ce-vo__summary,
	.ce-vo__msgcard,
	.ce-vo__col {
		padding: 16px;
	}
}

/* Siparişlerim + Sipariş Detayı: içeriği saran dış Hesabım kartı SADECE bu
   sayfalarda kaldırılır (şeffaf, çerçevesiz, padding'siz) — iç kartlar
   (liste kartları / özet, teslimat şeridi, ürün, mesaj, sütunlar) alanın
   tam genişliğine yayılır. Diğer Hesabım sekmelerinde dış kart aynen kalır. */
/* Sipariş Özeti'ndeki durum satırı: "N Ürün" + ortak rozet yan yana */
.ce-vo__statusline {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
}

/* Değerlendirme kartına kaydırma: header payı + varış vurgusu */
.ce-orev__item {
	scroll-margin-top: 90px;
}

.ce-orev__item.is-flash {
	animation: ce-orev-flash 1.6s ease-out;
	border-radius: 12px;
}

@keyframes ce-orev-flash {
	0% {
		box-shadow: 0 0 0 3px rgba(18, 161, 80, 0.5);
		background: #eefaf3;
	}
	100% {
		box-shadow: 0 0 0 0 rgba(18, 161, 80, 0);
		background: transparent;
	}
}

/* Değerlendirme: salt-okunur görünüm + düzenleme formu geçişi */
.ce-orev__donehead {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	flex-wrap: wrap;
	margin-bottom: 8px;
}

.ce-orev__donehead .ce-orev__donetext {
	margin: 0;
}

.ce-orev__editbtn {
	border: 1px solid var(--ce-green);
	background: #fff;
	color: var(--ce-green-dark);
	border-radius: 9px;
	padding: 8px 16px;
	font: 600 12.5px/1.2 var(--ce-font);
	cursor: pointer;
	transition: background 0.15s;
}

.ce-orev__editbtn:hover {
	background: var(--ce-green-light);
}

.ce-orev__oknote {
	margin: 8px 0 0;
	font-size: 12.5px;
	font-weight: 600;
	color: var(--ce-green-dark);
}

.ce-orev__formactions {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
}

.ce-orev__cancel {
	border: 1px solid #dcdfe3;
	background: #fff;
	color: var(--ce-muted);
	border-radius: 9px;
	padding: 9px 18px;
	font: 600 13px/1.2 var(--ce-font);
	cursor: pointer;
}

.ce-orev__cancel:hover {
	border-color: var(--ce-muted);
	color: var(--ce-text);
}

/* İlk değerlendirmede (henüz kayıt yokken) Vazgeç anlamsız — gizli */
.ce-orev__form[data-mode="new"] .ce-orev__cancel {
	display: none;
}

.ce-orev__msg.is-ok {
	color: var(--ce-green-dark);
	font-weight: 600;
}

/* Hesap sayfalarının büyük sayfa başlığı artık ŞABLONDA hiç basılmıyor
   (index.php, is_account_page koşulu) — eski CSS display:none kuralları
   sayfa geçişlerinde bir anlık parlamaya (FOUC) yol açtığı için kaldırıldı. */

/* Siparişlerim + Sipariş Detayı + Adreslerim + Pano + Favorilerim: dış
   Hesabım kartı yalnız bu sayfalarda kaldırılır; iç kartlar (favorilerde
   ürün grid'i) alanın tam genişliğine yayılır. */
.woocommerce-account .woocommerce-MyAccount-content:has(.ce-vo),
.woocommerce-account .woocommerce-MyAccount-content:has(.ce-ord),
.woocommerce-account .woocommerce-MyAccount-content:has(.ce-addr),
.woocommerce-account .woocommerce-MyAccount-content:has(.ce-dash),
.woocommerce-account .woocommerce-MyAccount-content:has(.ce-acctedit),
.woocommerce-account .woocommerce-MyAccount-content:has(.ce-cpn),
.woocommerce-account .woocommerce-MyAccount-content:has(.ce-favgrid) {
	background: transparent;
	border: 0;
	border-radius: 0;
	padding: 0;
	box-shadow: none;
	min-height: 0;
}

/* =========================================================
   HEADER "HESABIM" AÇILIR MENÜSÜ (ce-acct-*) + misafir
   "Giriş Yap / Üye Ol" görünümü.
   ========================================================= */

.ce-acct {
	position: relative;
}

.ce-acct__btn {
	display: flex;
	align-items: center;
	gap: 7px;
	background: none;
	border: 0;
	padding: 0;
	font: 500 14px/1.4 var(--ce-font);
	color: inherit;
	cursor: pointer;
}

.ce-acct .ce-action__caret {
	transition: transform 0.15s;
}

.ce-acct.is-open .ce-action__caret {
	transform: rotate(180deg);
}

.ce-acct__menu {
	position: absolute;
	top: calc(100% + 12px);
	right: -6px;
	z-index: 90;
	min-width: 200px;
	background: #fff;
	border: 1px solid #e8e8e8;
	border-radius: 12px;
	box-shadow: 0 12px 32px rgba(0, 0, 0, 0.12);
	padding: 8px;
	display: flex;
	flex-direction: column;
}

/* Menü ile buton arasındaki boşlukta hover kopmasın diye köprü */
.ce-acct__menu::before {
	content: "";
	position: absolute;
	top: -12px;
	left: 0;
	right: 0;
	height: 12px;
}

.ce-acct__menu a {
	padding: 10px 12px;
	border-radius: 8px;
	font-size: 13.5px;
	font-weight: 500;
	color: var(--ce-text);
	text-decoration: none;
	white-space: nowrap;
}

.ce-acct__menu a:hover {
	background: var(--ce-green-light);
	color: var(--ce-green-dark);
}

.ce-acct__logout {
	margin-top: 4px;
	border-top: 1px solid #f1f1f1;
	border-radius: 0 0 8px 8px !important;
	color: var(--ce-danger) !important;
}

.ce-acct__logout:hover {
	background: #fdf0f3 !important;
	color: var(--ce-danger) !important;
}

/* Misafir: kişi ikonu + ALT ALTA "Giriş Yap" / "Kayıt ol".
   İkon metne YAKIN durur (sıkı gap) ve iki satırın dikey ORTASINA
   hizalanır — hizalamayı .ce-action'ın align-items: center'ı verir. */
.ce-acct--guest {
	gap: 6px;
	align-items: center;
}

.ce-acct__guesticon {
	display: inline-flex;
	align-items: center;
	color: inherit;
}

.ce-acct__guestlinks {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 1px;
	line-height: 1.25;
}

.ce-acct__guestlinks a {
	font-size: 13px;
	font-weight: 600;
	color: var(--ce-text);
	text-decoration: none;
	white-space: nowrap;
}

.ce-acct__guestreg {
	font-size: 12px;
	font-weight: 500;
	color: var(--ce-muted);
}

.ce-acct__guestlinks a:hover {
	color: var(--ce-green);
}

/* =========================================================
   HESABIM > PANO (ce-dash-*): karşılama kartı, istatistik
   kutuları, aktif sipariş şeridi, görselli son siparişler,
   hızlı kısayollar ve kampanya şeridi.
   ========================================================= */

.ce-dash {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

/* Karşılama kartı */
.ce-dash__hero {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	background: linear-gradient(120deg, #f2faf5, #e7f6ee);
	border: 1px solid #d8ecdf;
	border-radius: 16px;
	padding: 24px 28px;
}

.ce-dash__hero-text h2 {
	margin: 0 0 6px;
	font-size: 21px;
	font-weight: 700;
	color: var(--ce-text);
}

.ce-dash__hero-text p {
	margin: 0 0 10px;
	font-size: 13.5px;
	color: #4a5560;
	max-width: 460px;
}

.ce-dash__since {
	display: inline-block;
	background: #fff;
	border: 1px solid #cdebdb;
	border-radius: 999px;
	padding: 5px 13px;
	font-size: 12px;
	font-weight: 600;
	color: var(--ce-green-dark);
}

.ce-dash__notyou {
	display: block;
	margin-top: 10px;
	font-size: 12px;
	color: var(--ce-muted);
}

.ce-dash__notyou a {
	color: var(--ce-green-dark) !important;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.ce-dash__hero-art {
	flex-shrink: 0;
}

.ce-dash__hero-art svg {
	width: 84px;
	height: 84px;
	fill: var(--ce-green);
	opacity: 0.22;
}

/* Aktif sipariş takip şeridi */
.ce-dash__active {
	display: flex;
	align-items: center;
	gap: 12px;
	background: #fff;
	border: 1px solid #cdebdb;
	border-left: 4px solid var(--ce-green);
	border-radius: 12px;
	padding: 13px 16px;
	font-size: 13.5px;
	color: var(--ce-text) !important;
	text-decoration: none;
}

.ce-dash__active svg {
	flex-shrink: 0;
	width: 22px;
	height: 22px;
	stroke: var(--ce-green);
	stroke-width: 1.7;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}

.ce-dash__active-text {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
	min-width: 0;
	font-weight: 500;
}

.ce-dash__active-link {
	margin-left: auto;
	flex-shrink: 0;
	font-weight: 600;
	color: var(--ce-green-dark);
}

/* İstatistik kutuları */
.ce-dash__stats {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
}

.ce-dash__stat {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
	background: #fff;
	border: 1px solid #ececec;
	border-radius: 14px;
	padding: 18px 12px;
	text-decoration: none;
	transition: transform 0.15s, box-shadow 0.15s, border-color 0.15s;
}

.ce-dash__stat:hover {
	transform: translateY(-2px);
	border-color: #cde8d9;
	box-shadow: 0 8px 20px rgba(18, 161, 80, 0.1);
}

.ce-dash__stat svg {
	width: 26px;
	height: 26px;
	stroke: var(--ce-green);
	stroke-width: 1.7;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}

.ce-dash__stat strong {
	font-size: 21px;
	font-weight: 700;
	color: var(--ce-text);
	line-height: 1;
}

.ce-dash__stat span {
	font-size: 12.5px;
	font-weight: 500;
	color: var(--ce-muted);
}

/* Son siparişler */
.ce-dash__orders {
	background: #fff;
	border: 1px solid #ececec;
	border-radius: 14px;
	padding: 18px 20px;
}

.ce-dash__sechead {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 10px;
}

.ce-dash__sechead h3 {
	margin: 0;
	font-size: 15px;
	font-weight: 600;
	color: var(--ce-text);
}

.ce-dash__sechead a {
	font-size: 12.5px;
	font-weight: 600;
	color: var(--ce-green-dark) !important;
	text-decoration: none;
}

.ce-dash__order {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 10px 0;
	border-top: 1px solid #f4f4f4;
	text-decoration: none;
	color: var(--ce-text) !important;
}

.ce-dash__order:hover .ce-dash__order-go {
	background: var(--ce-green-dark);
}

.ce-dash__order-thumb {
	flex-shrink: 0;
}

.ce-dash__order-thumb img {
	width: 48px;
	height: 48px;
	object-fit: cover;
	border-radius: 9px;
	border: 1px solid #eee;
	display: block;
}

.ce-dash__order-info {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
	flex: 1;
}

.ce-dash__order-info strong {
	font-size: 13.5px;
	font-weight: 600;
}

.ce-dash__order-info em {
	font-style: normal;
	font-size: 12px;
	color: var(--ce-muted);
}

.ce-dash__order-total {
	font-size: 13.5px;
	font-weight: 700;
	white-space: nowrap;
}

.ce-dash__order-go {
	flex-shrink: 0;
	background: var(--ce-green);
	color: #fff;
	border-radius: 8px;
	padding: 7px 16px;
	font-size: 12px;
	font-weight: 600;
	transition: background 0.15s;
}

/* Hızlı kısayollar */
.ce-dash__quick {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
}

.ce-dash__quickbtn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: #fff;
	border: 1px solid var(--ce-green);
	color: var(--ce-green-dark) !important;
	border-radius: 10px;
	padding: 11px 18px;
	font-size: 13px;
	font-weight: 600;
	text-decoration: none;
	transition: background 0.15s;
}

.ce-dash__quickbtn:hover {
	background: var(--ce-green-light);
}

.ce-dash__quickbtn svg {
	width: 17px;
	height: 17px;
	stroke: currentColor;
	stroke-width: 1.9;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}

.ce-dash__quickbtn--primary {
	background: var(--ce-green);
	border-color: var(--ce-green);
	color: #fff !important;
}

.ce-dash__quickbtn--primary:hover {
	background: var(--ce-green-dark);
}

/* Kampanya şeridi */
/* Kupon şeridi: birden çok kupon alt alta listelenir (görünüm aynı kalır). */
.ce-dash__promo {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 10px;
	background: #fffbeb;
	border: 1px solid #f3e3b2;
	border-radius: 12px;
	padding: 12px 16px;
	font-size: 13px;
	font-weight: 500;
	color: #7a5c10;
}

.ce-dash__promo-row {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
}

.ce-dash__promo-row + .ce-dash__promo-row {
	border-top: 1px dashed #f0dfae;
	padding-top: 10px;
}

.ce-dash__promo-text {
	flex: 1 1 auto;
	min-width: 0;
}

.ce-dash__promo-text strong {
	font-weight: 700;
	margin-right: 4px;
}

.ce-dash__promo-all {
	align-self: flex-end;
	font-size: 12.5px;
	font-weight: 700;
	color: #7a5c10;
	text-decoration: underline;
}

.ce-dash__promo-all:hover {
	color: var(--ce-green-dark);
}

.ce-dash__promo svg {
	flex-shrink: 0;
	width: 19px;
	height: 19px;
	stroke: #c9992d;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}

.ce-dash__promo code {
	background: #fff;
	border: 1px dashed #d9b64a;
	border-radius: 7px;
	padding: 3px 10px;
	font-weight: 700;
	color: #7a5c10;
}

/* Mobil */
@media (max-width: 768px) {
	.ce-dash__hero {
		padding: 18px;
		gap: 12px;
	}

	.ce-dash__hero-art svg {
		width: 56px;
		height: 56px;
	}

	.ce-dash__stats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}

	/* Son sipariş satırı: iki kademeli grid — solda görsel (2 satırı kapsar),
	   üstte #no + tek satır tarih, altta rozet + tutar + Detay. İç içe
	   binme/taşma olmaz. */
	.ce-dash__order {
		display: grid;
		grid-template-columns: 48px auto minmax(0, 1fr) auto;
		grid-template-rows: auto auto;
		align-items: center;
		column-gap: 12px;
		row-gap: 7px;
		padding: 12px 0;
	}

	.ce-dash__order-thumb {
		grid-column: 1;
		grid-row: 1 / span 2;
	}

	.ce-dash__order-info {
		grid-column: 2 / -1;
		grid-row: 1;
		flex-direction: row;
		align-items: baseline;
		gap: 8px;
		min-width: 0;
	}

	.ce-dash__order-info strong {
		flex-shrink: 0;
	}

	/* Tarih tek satırda kalır; sığmazsa üç nokta ile kısalır */
	.ce-dash__order-info em {
		min-width: 0;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
		font-size: 11.5px;
	}

	.ce-dash__order .ce-ord__badge {
		grid-column: 2;
		grid-row: 2;
		justify-self: start;
	}

	.ce-dash__order-total {
		grid-column: 3;
		grid-row: 2;
		justify-self: start;
		font-size: 13px;
	}

	.ce-dash__order-go {
		grid-column: 4;
		grid-row: 2;
		padding: 6px 14px;
	}

	.ce-dash__quickbtn {
		flex: 1;
		justify-content: center;
	}
}

/* =========================================================
   ÜST ŞERİT EL YAZISI: "Sevdiklerinizi düşünmek güzeldir" —
   Dancing Script fontu, sayfa açılışında bir kez soldan sağa
   "yazılıyormuş gibi" beliren maske animasyonu.
   ========================================================= */

/* Kap: sözler aynı hücrede üst üste (inline-grid) — genişlik en uzun söze
   göre sabittir, rotasyonda düzen kaymaz */
.ce-topbar__script {
	display: inline-grid;
	font-family: "Dancing Script", cursive;
	font-size: 21px;
	font-weight: 600;
	line-height: 1.2;
	color: var(--ce-green-dark);
	flex-shrink: 0;
	min-width: 0;
}

.ce-topbar__script-line {
	grid-area: 1 / 1;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	visibility: hidden;
}

/* Aktif söz: "yazılıyormuş gibi" belirir (negatif dikey inset: el yazısının
   kuyruk/çıkıntıları kırpılmaz) */
.ce-topbar__script-line.is-active {
	visibility: visible;
	clip-path: inset(-30% 100% -30% 0);
	animation: ce-script-write 2.4s ease-out 0.2s forwards;
}

/* Sıradaki söze geçerken yumuşak kaybolma */
.ce-topbar__script-line.is-leaving {
	visibility: visible;
	clip-path: none;
	animation: ce-script-fade 0.5s ease forwards;
}

@keyframes ce-script-write {
	to {
		clip-path: inset(-30% -2% -30% 0);
	}
}

@keyframes ce-script-fade {
	to {
		opacity: 0;
	}
}

/* Ayardan kapatma: yazılma animasyonsuz (statik belirir; rotasyon sürer) */
.ce-topbar__script.no-anim .ce-topbar__script-line.is-active {
	animation: none;
	clip-path: none;
}

/* Hareket azaltma tercihi: animasyonsuz; rotasyon JS'i de devreye girmez */
@media (prefers-reduced-motion: reduce) {
	.ce-topbar__script-line.is-active {
		animation: none;
		clip-path: none;
	}
}

@media (max-width: 768px) {
	.ce-topbar__script {
		font-size: 16px;
		max-width: 58vw;
	}
}

/* =========================================================
   ÜST ŞERİT — MOBİL GÖRÜNÜM SEÇİMİ (ce-tm-*): Özelleştirici >
   Header Üst Yazı > "Mobilde göster". Masaüstü etkilenmez.
   ========================================================= */

@media (max-width: 900px) {
	/* İndirim şeridi seçili: el yazısı sözler gizli */
	body.ce-tm-promo .ce-topbar__script {
		display: none;
	}

	/* El yazısı sözler seçili: indirim şeridi (kapatma dahil) gizli */
	body.ce-tm-script .ce-topbar__promo {
		display: none;
	}

	/* İkisi: iki ince satır alt alta, ortalı, taşmasız */
	body.ce-tm-both .ce-topbar__inner {
		flex-direction: column;
		justify-content: center;
		gap: 2px;
		min-height: 0;
		padding-top: 8px;
		padding-bottom: 8px;
	}

	body.ce-tm-both .ce-topbar__promo {
		padding: 0;
	}
}

/* ============ Giriş / Üye Ol kartı (my-account, giriş yapılmamış) ============ */
/* Büyük "Hesabım" başlığı hesap sayfalarında şablonda hiç basılmaz (index.php). */

.ce-auth {
	display: flex;
	justify-content: center;
	padding: 44px 0 64px;
}

.ce-auth__card {
	width: 100%;
	max-width: 500px;
	background: #fff;
	border: 1px solid var(--ce-border);
	border-radius: 14px;
	box-shadow: 0 6px 24px rgba(0, 0, 0, 0.05);
	padding: 30px 34px 34px;
}

/* Bildirimler (hata/başarı) kart genişliğinde, kartın üstünde ortalanır */
.woocommerce-account article:has(.ce-auth) .woocommerce-notices-wrapper {
	max-width: 500px;
	margin: 24px auto -24px;
}

.woocommerce-account article:has(.ce-auth) .woocommerce-error,
.woocommerce-account article:has(.ce-auth) .woocommerce-message,
.woocommerce-account article:has(.ce-auth) .woocommerce-info {
	list-style: none;
	margin: 0 0 12px;
	padding: 13px 16px;
	border: 0;
	border-radius: 12px;
	font-size: 14px;
	line-height: 1.55;
	overflow-wrap: anywhere;
}

/* WooCommerce'in ikon fontlu ::before'u kapatılır (kırık glif çıkmasın);
   ikonlar aşağıda inline SVG (data URI) olarak basılır. */
.woocommerce-account article:has(.ce-auth) .woocommerce-error::before {
	content: none;
}

/* Hata: yumuşak pembe zemin + ince kırmızı sol şerit */
.woocommerce-account article:has(.ce-auth) .woocommerce-error {
	background: #fdf2f2;
	border-left: 4px solid #e05252;
	color: #9c3a3a;
}

.woocommerce-account article:has(.ce-auth) .woocommerce-error li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin: 0 0 8px;
}

.woocommerce-account article:has(.ce-auth) .woocommerce-error li:last-child {
	margin-bottom: 0;
}

.woocommerce-account article:has(.ce-auth) .woocommerce-error li::before {
	content: "";
	flex: 0 0 20px;
	width: 20px;
	height: 20px;
	margin-top: 1px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e05252' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cline x1='12' y1='7.5' x2='12' y2='13'/%3E%3Ccircle cx='12' cy='16.6' r='1.1' fill='%23e05252' stroke='none'/%3E%3C/svg%3E") no-repeat center / contain;
}

/* "Hata:" ön eki gizlenir — mesajın kendisi aynen kalır */
.woocommerce-account article:has(.ce-auth) .woocommerce-error li > strong:first-child {
	display: none;
}

/* Başarı: yumuşak yeşil zemin + onay ikonu */
.woocommerce-account article:has(.ce-auth) .woocommerce-message {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	background: #f0f8ef;
	border-left: 4px solid var(--ce-green);
	color: #2e6b2a;
}

.woocommerce-account article:has(.ce-auth) .woocommerce-message::before {
	content: "";
	position: static;
	flex: 0 0 20px;
	width: 20px;
	height: 20px;
	margin: 1px 0 0;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233ca735' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M8.2 12.3l2.6 2.6 5-5.4'/%3E%3C/svg%3E") no-repeat center / contain;
}

/* Uyarı/bilgi: nötr yumuşak ton + bilgi ikonu */
.woocommerce-account article:has(.ce-auth) .woocommerce-info {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	background: #f6f7f8;
	border-left: 4px solid #b9c0c7;
	color: #4a5560;
}

.woocommerce-account article:has(.ce-auth) .woocommerce-info::before {
	content: "";
	position: static;
	flex: 0 0 20px;
	width: 20px;
	height: 20px;
	margin: 1px 0 0;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b7681' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cline x1='12' y1='11' x2='12' y2='16.5'/%3E%3Ccircle cx='12' cy='7.4' r='1.1' fill='%236b7681' stroke='none'/%3E%3C/svg%3E") no-repeat center / contain;
}

/* Bildirim içi bağlantılar metinle aynı tonda, altı çizili */
.woocommerce-account article:has(.ce-auth) .woocommerce-error a,
.woocommerce-account article:has(.ce-auth) .woocommerce-message a,
.woocommerce-account article:has(.ce-auth) .woocommerce-info a {
	color: inherit;
	font-weight: 600;
	text-decoration: underline;
}

/* WooCommerce çekirdeği form.login/form.register'a kendi iç çerçevesini
   (border + 20px padding + 2em margin) basar — kartın içinde ikinci bir
   kutu gibi görünür. Sıfırlanır: alanlar dış kartı ferah kullanır. */
.woocommerce-account .ce-auth form.login,
.woocommerce-account .ce-auth form.register {
	border: 0;
	padding: 0;
	margin: 0;
	border-radius: 0;
}

/* Sekmeler */
.ce-auth__tabs {
	display: grid;
	grid-template-columns: 1fr 1fr;
	margin-bottom: 26px;
}

.ce-auth__tab {
	border: 0;
	background: none;
	font-family: inherit;
	font-size: 16px;
	font-weight: 600;
	color: var(--ce-muted);
	padding: 10px 6px 12px;
	cursor: pointer;
	border-bottom: 2px solid var(--ce-border);
	transition: color 0.15s;
}

.ce-auth__tab.is-active {
	color: var(--ce-green);
	border-bottom-color: var(--ce-green);
}

/* Kart başlığı + açıklama + geri linki (Şifremi Unuttum / Yeni Şifre) */
.ce-auth__title {
	font-size: 20px;
	font-weight: 700;
	color: var(--ce-text);
	margin: 0 0 8px;
	text-align: center;
}

.ce-auth__desc {
	font-size: 14px;
	color: var(--ce-muted);
	line-height: 1.55;
	margin: 0 0 20px;
	text-align: center;
}

.ce-auth__back {
	margin: 18px 0 0;
	text-align: center;
	font-size: 13px;
}

.ce-auth__back a {
	color: var(--ce-muted);
	font-weight: 600;
	text-decoration: none;
}

.ce-auth__back a:hover {
	color: var(--ce-green);
}

/* Üye Ol: Bireysel / Kurumsal tip seçici */
.ce-auth__regtypes {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
	margin-bottom: 18px;
}

.ce-auth__regtype {
	border: 1px solid var(--ce-border);
	border-radius: 8px;
	background: #fff;
	font-family: inherit;
	font-size: 14px;
	font-weight: 600;
	color: var(--ce-muted);
	padding: 11px 10px;
	cursor: pointer;
	transition: border-color 0.15s, color 0.15s, background 0.15s;
}

.ce-auth__regtype.is-active {
	border-color: var(--ce-green);
	color: var(--ce-green);
	background: #f0f8ef;
}

/* Kurumsal: vergi alanları yan yana (mobilde tek kolon) */
.ce-auth__taxgrid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0 12px;
}

.ce-auth__taxgrid[hidden] {
	display: none;
}

/* Zorunlu işareti + sözleşme notu */
.ce-auth__req {
	color: var(--ce-danger, #e0234e);
	font-weight: 700;
}

.ce-auth__terms {
	margin: 0 0 16px;
	font-size: 12px;
	color: var(--ce-muted);
}

.ce-auth__terms a {
	color: var(--ce-green);
	font-weight: 600;
}

/* Form alanları */
.ce-auth__row {
	margin: 0 0 16px;
}

.ce-auth__row label {
	display: block;
	font-size: 14px;
	font-weight: 600;
	color: var(--ce-text);
	margin-bottom: 7px;
}

.ce-auth__input {
	width: 100%;
	border: 1px solid var(--ce-border);
	border-radius: 8px;
	padding: 12px 14px;
	font-family: inherit;
	font-size: 16px;
	color: var(--ce-text);
}

.ce-auth__input::placeholder {
	color: #b5b5b5;
}

.ce-auth__input:focus {
	outline: none;
	border-color: var(--ce-green);
}

/* Şifre alanı + göz ikonu */
.ce-auth__pwwrap {
	position: relative;
	display: block;
}

.ce-auth__pwwrap .ce-auth__input {
	padding-right: 46px;
}

.ce-auth__eye {
	position: absolute;
	top: 50%;
	right: 8px;
	transform: translateY(-50%);
	display: flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	border: 0;
	background: none;
	color: #666;
	cursor: pointer;
}

.ce-auth__eye:hover {
	color: #333;
}

.ce-auth__eye svg[hidden] {
	display: none;
}

/* WooCommerce'in kendi JS'i şifre alanına ayrıca bir göz butonu enjekte eder
   (.show-password-input) — bizimkiyle üst üste binip kırık bir şekil gibi
   görünür. Bizim inline SVG göz kullanılır, WC'ninki tamamen gizlenir. */
.ce-auth .show-password-input {
	display: none !important;
}

/* Şifremi Unuttum */
.ce-auth__forgot {
	margin: -6px 0 18px;
	text-align: right;
}

.ce-auth__forgot a {
	font-size: 13px;
	font-weight: 600;
	color: #2160c4;
	text-decoration: none;
}

.ce-auth__forgot a:hover {
	text-decoration: underline;
}

/* KVKK onayı */
.ce-auth__consent {
	display: flex;
	margin: 0 0 16px;
}

.ce-auth__consent label {
	display: flex;
	align-items: flex-start;
	gap: 9px;
	font-size: 13px;
	color: var(--ce-muted);
	cursor: pointer;
}

.ce-auth__consent input {
	margin-top: 2px;
	accent-color: var(--ce-green);
}

.ce-auth__consent a {
	color: var(--ce-green);
	font-weight: 600;
}

.ce-auth__note {
	margin: 0 0 16px;
	font-size: 13px;
	color: var(--ce-muted);
}

/* Gönder butonu */
.ce-auth__submitrow {
	margin: 0;
}

.ce-auth__submit {
	width: 100%;
	border: 0;
	background: var(--ce-green);
	color: #fff;
	font-family: inherit;
	font-size: 15px;
	font-weight: 700;
	padding: 13px 16px;
	border-radius: 8px;
	cursor: pointer;
	transition: background 0.15s;
}

.ce-auth__submit:hover {
	background: var(--ce-green-dark);
}

/* Sosyal giriş (tasarım; eklenti kurulunca bağlanacak) */
.ce-auth__social {
	margin-top: 26px;
}

.ce-auth__social-title {
	text-align: center;
	font-size: 14px;
	color: var(--ce-text);
	margin-bottom: 14px;
}

.ce-auth__social-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: 100%;
	border: 1px solid var(--ce-border);
	border-radius: 8px;
	padding: 11px 14px;
	margin-bottom: 10px;
	font-size: 14px;
	font-weight: 600;
	color: var(--ce-text);
	text-decoration: none;
	background: #fff;
	transition: background 0.15s;
}

.ce-auth__social-btn:hover {
	background: #f7f7f7;
}

.ce-auth__social-btn:last-child {
	margin-bottom: 0;
}

@media (max-width: 768px) {
	.ce-auth {
		padding: 18px 0 40px;
	}

	.ce-auth__card {
		border-radius: 12px;
		padding: 22px 18px 26px;
	}

	.ce-auth__taxgrid {
		grid-template-columns: 1fr;
		gap: 0;
	}
}

/* =========================================================
   DÜZ İÇERİK SAYFALARI (Mesafeli Satış Sözleşmesi, Gizlilik /
   KVKK vb.): WooCommerce/Elementor dışındaki statik sayfalar
   okunaklı dar sütunda akar; başlık + gövde tipografisi.
   ========================================================= */

body.page:not(.woocommerce-page):not(.woocommerce-account):not(.elementor-page) .ce-main article {
	max-width: 760px;
	margin: 0 auto;
}

body.page:not(.woocommerce-page):not(.woocommerce-account):not(.elementor-page) .ce-main article > h2 {
	font-size: 24px;
	margin: 8px 0 18px;
}

body.page:not(.woocommerce-page):not(.woocommerce-account):not(.elementor-page) .ce-main article > h2 a {
	color: var(--ce-text);
	text-decoration: none;
}

body.page:not(.woocommerce-page):not(.woocommerce-account):not(.elementor-page) .ce-main article p {
	line-height: 1.75;
	margin: 0 0 16px;
	color: var(--ce-text);
}

/* =========================================================
   DOKÜMAN BOTTOM-SHEET (ce-docsheet): Üye Ol formundaki
   politika/sözleşme linkleri (.ce-doclink) mobilde alttan
   açılan panelde okunur. Görsel dil sortsheet/filtre
   çekmecesiyle birebir aynıdır (overlay, radius, gölge).
   ========================================================= */

.ce-docsheet__overlay {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, 0.45);
	z-index: 1200;
	opacity: 0;
	transition: opacity 0.25s;
}

.ce-docsheet__overlay.is-open {
	opacity: 1;
}

.ce-docsheet {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1201;
	background: #fff;
	border-radius: 16px 16px 0 0;
	box-shadow: 0 -10px 34px rgba(0, 0, 0, 0.2);
	display: flex;
	flex-direction: column;
	max-height: 82vh;
	transform: translateY(100%);
	transition: transform 0.28s ease;
}

.ce-docsheet.is-open {
	transform: translateY(0);
}

.ce-docsheet__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 16px 18px;
	border-bottom: 1px solid var(--ce-border);
	font-size: 15px;
}

.ce-docsheet__title {
	min-width: 0;
}

.ce-docsheet__close {
	background: none;
	border: 0;
	padding: 6px;
	cursor: pointer;
	line-height: 0;
	flex-shrink: 0;
}

.ce-docsheet__close svg {
	width: 18px;
	height: 18px;
	stroke: var(--ce-text);
	stroke-width: 2;
	fill: none;
}

.ce-docsheet__body {
	flex: 1;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	padding: 14px 18px calc(18px + env(safe-area-inset-bottom));
	font-size: 14px;
}

.ce-docsheet__body p {
	line-height: 1.7;
	margin: 0 0 14px;
	color: var(--ce-text);
}

.ce-docsheet__body h2,
.ce-docsheet__body h3 {
	font-size: 16px;
	margin: 18px 0 8px;
}

.ce-docsheet__loading {
	color: var(--ce-muted);
	text-align: center;
	padding: 24px 0;
}

/* =========================================================
   HESAP DETAYLARI (edit-account) — iki kartlı düzen
   Adreslerim/Siparişlerim kart diliyle aynı: beyaz kart, ince
   çerçeve, 12px köşe; yeşil aksan; input'lar diğer hesap
   formlarıyla aynı (16px → mobilde zoom yok).
   ========================================================= */

.ce-acctedit {
	display: flex;
	flex-direction: column;
	gap: 18px;
}

.ce-acctedit__card {
	background: #fff;
	border: 1px solid var(--ce-border);
	border-radius: 12px;
	padding: 20px 22px 6px;
	margin-bottom: 18px;
}

.ce-acctedit__card:last-of-type {
	margin-bottom: 0;
}

.ce-acctedit__head {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 18px;
}

.ce-acctedit__badge {
	width: 34px;
	height: 34px;
	flex-shrink: 0;
	border-radius: 50%;
	background: var(--ce-green-light);
	display: flex;
	align-items: center;
	justify-content: center;
}

.ce-acctedit__badge svg {
	width: 18px;
	height: 18px;
	fill: none;
	stroke: var(--ce-green);
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.ce-acctedit__title {
	margin: 0;
	font-size: 16px;
	font-weight: 800;
	color: var(--ce-text);
}

/* Satırlar + etiketler */
.ce-acctedit__row {
	margin: 0 0 16px;
	display: block;
	float: none !important;
	width: auto !important;
}

.ce-acctedit__row label {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 13.5px;
	font-weight: 600;
	color: var(--ce-text);
	margin-bottom: 6px;
}

.ce-acctedit__row label svg {
	width: 15px;
	height: 15px;
	flex-shrink: 0;
	fill: none;
	stroke: var(--ce-muted);
	stroke-width: 1.7;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.ce-acctedit__row .required {
	color: var(--ce-danger, #d63638);
	text-decoration: none;
}

.ce-acctedit__input {
	width: 100%;
	box-sizing: border-box;
	border: 1px solid #cfcfcf;
	border-radius: 8px;
	padding: 11px 12px;
	font-family: inherit;
	/* 16px: mobil tarayıcılar odakta sayfayı yakınlaştırmasın */
	font-size: 16px;
	line-height: 1.4;
	color: var(--ce-text);
	background: #fff;
	outline: none;
	transition: border-color 0.15s, box-shadow 0.15s;
}

.ce-acctedit__input:focus {
	border-color: var(--ce-green);
	box-shadow: 0 0 0 3px rgba(18, 161, 80, 0.12);
}

.ce-acctedit__note {
	display: block;
	margin-top: 6px;
	font-size: 12.5px;
	line-height: 1.5;
	color: var(--ce-muted);
	font-style: normal;
}

/* Ad + Soyad yan yana (mobilde alt alta) */
.ce-acctedit__grid2 {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0 16px;
}

/* Parola alanı + göz ikonu */
.ce-acctedit__pwwrap {
	position: relative;
	display: block;
}

.ce-acctedit__pwwrap .ce-acctedit__input {
	padding-right: 44px;
}

.ce-acctedit__eye {
	position: absolute;
	top: 50%;
	right: 8px;
	transform: translateY(-50%);
	width: 32px;
	height: 32px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: none;
	border: 0;
	padding: 0;
	cursor: pointer;
	color: var(--ce-muted);
	transition: color 0.15s;
}

.ce-acctedit__eye:hover {
	color: var(--ce-green);
}

/* WooCommerce'in kendi göz ikonu bizimkiyle üst üste binmesin */
.ce-acctedit .show-password-input {
	display: none !important;
}

/* WC'nin kendi güç göstergesi gizlenir (davranışı sürer), görsel bizimki */
.ce-acctedit .woocommerce-password-strength,
.ce-acctedit .woocommerce-password-hint {
	display: none !important;
}

/* Parola gücü göstergesi (yalnız görsel ipucu) */
.ce-acctedit__meter {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-top: 8px;
}

.ce-acctedit__meterbar {
	flex: 1;
	height: 6px;
	border-radius: 99px;
	background: #ececec;
	overflow: hidden;
}

.ce-acctedit__meterfill {
	display: block;
	height: 100%;
	width: 0;
	border-radius: 99px;
	background: var(--ce-muted);
	transition: width 0.25s, background 0.25s;
}

.ce-acctedit__metertext {
	font-size: 12.5px;
	font-weight: 600;
	white-space: nowrap;
	color: var(--ce-muted);
}

.ce-acctedit__meter.is-weak .ce-acctedit__meterfill { width: 33%; background: #d63638; }
.ce-acctedit__meter.is-weak .ce-acctedit__metertext { color: #d63638; }
.ce-acctedit__meter.is-medium .ce-acctedit__meterfill { width: 66%; background: #dba617; }
.ce-acctedit__meter.is-medium .ce-acctedit__metertext { color: #b3860f; }
.ce-acctedit__meter.is-strong .ce-acctedit__meterfill { width: 100%; background: var(--ce-green); }
.ce-acctedit__meter.is-strong .ce-acctedit__metertext { color: var(--ce-green-dark); }

/* Parola eşleşme ipucu */
.ce-acctedit__match {
	display: block;
	margin-top: 7px;
	font-size: 12.5px;
	font-weight: 600;
}

.ce-acctedit__match.is-ok { color: var(--ce-green-dark); }
.ce-acctedit__match.is-error { color: #d63638; }

/* Parola alanlarını saran fieldset: tarayıcı varsayılan çerçevesi kart
   içinde ikinci bir kutu gibi görünmesin */
.ce-acctedit__fieldset {
	border: 0;
	margin: 0;
	padding: 0;
	min-width: 0;
}

/* Kaydet butonu */
.ce-acctedit__actions {
	margin: 18px 0 0;
}

.ce-acctedit__save {
	padding: 13px 30px;
	font-size: 15px;
	cursor: pointer;
}

/* WC'nin clear div'leri bu düzende gereksiz */
.ce-acctedit .clear {
	display: none;
}

@media (max-width: 768px) {
	.ce-acctedit__card {
		padding: 18px 16px 4px;
	}

	/* Ad + Soyad alt alta */
	.ce-acctedit__grid2 {
		grid-template-columns: 1fr;
		gap: 0;
	}

	.ce-acctedit__save {
		width: 100%;
	}
}

/* ============================================================
   İLETİŞİM SAYFASI (içerik ÇiçekEvi Ayarları > İletişim sekmesinden)
   Solda dar bilgi sütunu, sağda ziyaret/harita kartı + mesaj formu.
   ============================================================ */
.ce-contact {
	padding: 34px 0 64px;
}

.ce-contact__layout {
	display: grid;
	grid-template-columns: minmax(0, 460px) minmax(0, 1fr);
	gap: 30px;
	align-items: start;
}

.ce-contact__layout.is-single {
	grid-template-columns: minmax(0, 1fr);
	max-width: 560px;
}

/* --- Sol sütun başlığı --- */
.ce-contact__head {
	margin: 0 0 24px;
}

.ce-contact__eyebrow {
	margin: 0 0 10px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.12em;
	color: var(--ce-green);
}

.ce-contact__title {
	margin: 0;
	font-size: 42px;
	line-height: 1.12;
	font-weight: 800;
	letter-spacing: -0.02em;
	color: #1c1c1c;
	text-wrap: balance;
}

.ce-contact__rule {
	display: block;
	width: 46px;
	height: 4px;
	margin: 16px 0 18px;
	border-radius: 999px;
	background: var(--ce-green);
}

.ce-contact__intro {
	margin: 0;
	max-width: 34ch;
	font-size: 14.5px;
	line-height: 1.65;
	color: var(--ce-muted);
}

/* --- Bilgi kartları --- */
.ce-contact__cards {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.ce-contact__card {
	position: relative;
	display: flex;
	align-items: flex-start;
	gap: 14px;
	padding: 20px 22px;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 6px 22px rgba(19, 44, 30, 0.07);
	overflow: hidden;
}

.ce-contact__icon {
	flex: 0 0 auto;
	width: 42px;
	height: 42px;
	display: grid;
	place-items: center;
	border-radius: 50%;
	background: #e6f4ec;
	color: var(--ce-green);
}

.ce-contact__icon svg {
	width: 20px;
	height: 20px;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}

.ce-contact__body {
	position: relative;
	z-index: 1;
	min-width: 0;
	flex: 1 1 auto;
}

.ce-contact__label {
	margin: 0 0 6px;
	font-size: 15px;
	font-weight: 700;
	color: #1c1c1c;
}

.ce-contact__text {
	margin: 0;
	font-size: 14px;
	line-height: 1.6;
	color: #5f6b64;
}

/* Kartın sağındaki soluk filigran çizim */
.ce-contact__wm {
	position: absolute;
	right: 10px;
	bottom: 6px;
	width: 108px;
	pointer-events: none;
	color: #cfe3d7;
	opacity: 0.55;
}

.ce-contact__wm svg {
	width: 100%;
	height: auto;
	display: block;
	stroke: currentColor;
	stroke-width: 3;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}

/* Telefonlar */
.ce-contact__phones {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.ce-contact__sub {
	display: block;
	margin-bottom: 1px;
	font-size: 12.5px;
	color: #8a9490;
}

.ce-contact__num {
	font-size: 16px;
	font-weight: 700;
	color: var(--ce-green-dark);
	letter-spacing: 0.01em;
	font-variant-numeric: tabular-nums;
}

a.ce-contact__num:hover {
	color: var(--ce-green);
}

.ce-contact__mail {
	font-size: 14px;
	color: #5f6b64;
	word-break: break-word;
}

.ce-contact__mail:hover {
	color: var(--ce-green);
}

/* Çalışma saatleri: gün solda, saat sağa yaslı */
.ce-contact__hours {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 7px;
}

.ce-contact__hours li {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 16px;
	font-size: 14px;
	color: #5f6b64;
}

.ce-contact__hours strong {
	font-weight: 700;
	color: #1c1c1c;
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}

/* --- WhatsApp + sosyal şeridi --- */
/* WhatsApp butonu tam genişlikte tek başına; sosyal ikonlar altındaki satırda. */
.ce-contact__actions {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 14px;
	margin-top: 16px;
}

.ce-contact__wa {
	width: 100%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 60px;
	padding: 14px 22px;
	border-radius: 14px;
	background: var(--ce-green);
	color: #fff;
	font-size: 15.5px;
	font-weight: 700;
	box-shadow: 0 6px 18px rgba(18, 161, 80, 0.28);
	transition: background 0.15s ease;
}

.ce-contact__wa:hover {
	background: var(--ce-green-dark);
	color: #fff;
}

.ce-contact__wa svg {
	width: 22px;
	height: 22px;
	stroke: currentColor;
	stroke-width: 1.7;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}

.ce-contact__social {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.ce-contact__soc {
	flex: 0 0 auto;
	width: 60px;
	height: 60px;
	display: grid;
	place-items: center;
	border-radius: 14px;
	background: #fff;
	color: #1c1c1c;
	box-shadow: 0 6px 22px rgba(19, 44, 30, 0.07);
	transition: color 0.15s ease, background 0.15s ease;
}

.ce-contact__soc:hover {
	background: #e6f4ec;
	color: var(--ce-green-dark);
}

.ce-contact__soc svg {
	width: 22px;
	height: 22px;
	stroke: currentColor;
	stroke-width: 1.7;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}

/* --- Sağ sütun --- */
.ce-contact__main {
	display: flex;
	flex-direction: column;
	gap: 26px;
	min-width: 0;
}

/* Ziyaret + harita kartı */
.ce-contact__visit {
	display: grid;
	grid-template-columns: minmax(260px, 0.85fr) minmax(0, 1.15fr);
	align-items: stretch;
	border-radius: 18px;
	background: #eef7f1;
	overflow: hidden;
	box-shadow: 0 6px 22px rgba(19, 44, 30, 0.07);
	min-height: 400px;
}

.ce-contact__visit.is-nomap {
	grid-template-columns: minmax(0, 1fr);
	min-height: 0;
}

.ce-contact__visitbody {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	gap: 14px;
	padding: 38px 34px;
}

.ce-contact__badge {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 7px 14px;
	border-radius: 999px;
	background: #d8ecdf;
	color: var(--ce-green-dark);
	font-size: 12.5px;
	font-weight: 700;
}

.ce-contact__badge svg {
	width: 15px;
	height: 15px;
	stroke: currentColor;
	stroke-width: 1.9;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}

.ce-contact__visittitle {
	margin: 0;
	font-size: 27px;
	font-weight: 800;
	letter-spacing: -0.01em;
	color: #1c1c1c;
}

.ce-contact__visittext {
	margin: 0;
	max-width: 30ch;
	font-size: 14px;
	line-height: 1.65;
	color: #5f6b64;
}

.ce-contact__dir {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	margin-top: 6px;
	padding: 12px 22px;
	border: 1.5px solid var(--ce-green);
	border-radius: 12px;
	background: transparent;
	color: var(--ce-green-dark);
	font-size: 14px;
	font-weight: 700;
	transition: background 0.15s ease, color 0.15s ease;
}

.ce-contact__dir:hover {
	background: var(--ce-green);
	color: #fff;
}

.ce-contact__dir svg {
	width: 17px;
	height: 17px;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}

.ce-contact__map {
	position: relative;
	line-height: 0;
	min-height: 400px;
}

.ce-contact__map iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	display: block;
	border: 0;
}

/* --- Mesaj formu --- */
.ce-contact__form {
	padding: 30px 32px 32px;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 6px 22px rgba(19, 44, 30, 0.07);
}

.ce-contact__formhead {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-bottom: 22px;
}

.ce-contact__formicon {
	width: 46px;
	height: 46px;
	display: grid;
	place-items: center;
	border-radius: 50%;
	background: #e6f4ec;
	color: var(--ce-green);
}

.ce-contact__formicon svg {
	width: 21px;
	height: 21px;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}

.ce-contact__formtitle {
	margin: 0;
	font-size: 21px;
	font-weight: 800;
	letter-spacing: -0.01em;
	color: #1c1c1c;
}

.ce-contact__note {
	margin: 0 0 18px;
	padding: 12px 15px;
	border-radius: 11px;
	font-size: 13.5px;
	font-weight: 600;
}

.ce-contact__note.is-ok {
	background: var(--ce-green-light);
	border: 1px solid #cdebdb;
	color: var(--ce-green-dark);
}

.ce-contact__note.is-err {
	background: #fdecef;
	border: 1px solid #f2c2ce;
	color: #a3183a;
}

.ce-contact__row {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
}

.ce-contact__field {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin-bottom: 18px;
}

.ce-contact__field > span {
	font-size: 13.5px;
	font-weight: 700;
	color: #1c1c1c;
}

.ce-contact__field input,
.ce-contact__field textarea {
	width: 100%;
	box-sizing: border-box;
	border: 1px solid #e3e7e5;
	border-radius: 11px;
	padding: 14px 16px;
	font: 400 14px/1.5 var(--ce-font);
	color: var(--ce-text);
	background: #fff;
	resize: vertical;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.ce-contact__field input::placeholder,
.ce-contact__field textarea::placeholder {
	color: #a7b0ab;
}

.ce-contact__field input:focus,
.ce-contact__field textarea:focus {
	outline: none;
	border-color: var(--ce-green);
	box-shadow: 0 0 0 3px rgba(18, 161, 80, 0.1);
}

/* Bal küpü: ekranda görünmez */
.ce-contact__hp {
	position: absolute;
	left: -9999px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.ce-contact__formfoot {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	margin-top: 4px;
}

.ce-contact__assure {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	font-size: 13.5px;
	color: #5f6b64;
}

.ce-contact__assure svg {
	flex: 0 0 auto;
	width: 17px;
	height: 17px;
	stroke: var(--ce-green);
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}

.ce-contact__submit {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	border: 0;
	border-radius: 12px;
	background: #0f6b36;
	color: #fff;
	font-size: 14.5px;
	font-weight: 700;
	padding: 14px 26px;
	transition: background 0.15s ease;
}

.ce-contact__submit:hover {
	background: #0b5429;
}

.ce-contact__submit svg {
	width: 17px;
	height: 17px;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}

/* --- Duyarlı --- */
@media (max-width: 1100px) {
	.ce-contact__layout {
		grid-template-columns: minmax(0, 380px) minmax(0, 1fr);
		gap: 22px;
	}

	.ce-contact__visit {
		grid-template-columns: minmax(0, 1fr);
		min-height: 0;
	}

	.ce-contact__map,
	.ce-contact__map iframe {
		position: relative;
		min-height: 320px;
		height: 320px;
	}
}

@media (max-width: 900px) {
	.ce-contact {
		padding: 20px 0 44px;
	}

	.ce-contact__layout,
	.ce-contact__layout.is-single {
		grid-template-columns: minmax(0, 1fr);
		max-width: none;
		gap: 24px;
	}

	.ce-contact__title {
		font-size: 32px;
	}

	.ce-contact__intro {
		max-width: none;
	}

	.ce-contact__visitbody {
		padding: 26px 22px;
	}

	.ce-contact__visittext {
		max-width: none;
	}
}

@media (max-width: 768px) {
	.ce-contact__row {
		grid-template-columns: minmax(0, 1fr);
		gap: 0;
	}

	.ce-contact__form {
		padding: 22px 18px 24px;
	}

	.ce-contact__formfoot {
		flex-direction: column;
		align-items: stretch;
		gap: 14px;
	}

	.ce-contact__assure {
		justify-content: center;
	}

	.ce-contact__submit {
		justify-content: center;
		width: 100%;
	}

	.ce-contact__wm {
		width: 88px;
		opacity: 0.4;
	}

	.ce-contact__map,
	.ce-contact__map iframe {
		min-height: 260px;
		height: 260px;
	}
}

/* ============================================================
   HEADER CANLI ARAMA ÖNERİLERİ + ARAMA SONUÇ SAYFASI
   ============================================================ */
.ce-search {
	position: relative;
}

/* --- Arama kutusu temizle (X) butonu --- */
/* Tarayıcının kendi X'i gizlenir; tek bir temizle butonu kalır. */
.ce-search input[type="search"]::-webkit-search-cancel-button,
.ce-search input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
	appearance: none;
}

/* .ce-search button kuralından etkilenmemesi için daha yüksek özgüllük. */
.ce-search .ce-search__clear {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 50px;
	width: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: #9aa0a6;
	padding: 0;
	cursor: pointer;
	transition: color 0.15s ease;
}

.ce-search .ce-search__clear:hover {
	color: var(--ce-text);
}

.ce-search .ce-search__clear svg {
	width: 16px;
	height: 16px;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
	fill: none;
}

/* Kutu boşken (yer tutucu görünürken) X gizli; yazınca çıkar. */
.ce-search input[type="search"]:placeholder-shown ~ .ce-search__clear {
	display: none;
}

/* Metin varken sağdaki X'in altına girmesin diye ek iç boşluk. */
.ce-search input[type="search"]:not(:placeholder-shown) {
	padding-right: 96px;
}

/* =========================================================
   MOBİL / TABLET ARAMA KUTUSU (≤900px)

   Masaüstü düzeni (≥901px) .ce-search__box'a kendi flex kurallarını
   veriyor; bu genişliklerin ALTINDA ise kutuya hiç kural yoktu:
   <span> daralıp içeriği kadar kalıyor, ikonlar ise .ce-search form'un
   (tek konumlandırma bağlamı oydu) sağ kenarına yapışıyordu. Sonuç:
   kutu yarım genişlikte, büyüteç kutunun DIŞINDA, yazınca çıkan X ise
   metnin üstüne biniyordu.

   Çözüm: TEK konumlandırma bağlamı .ce-search__box olur (position:
   relative + tam genişlik), ikonlar ona göre mutlak konumlanır, metin
   boşluğu da ikon genişliklerinden türetilir. Ölçüler değişkenden;
   masaüstü kuralları (min-width: 901px) bu bloktan etkilenmez.
   ========================================================= */
@media (max-width: 900px) {
	.ce-search {
		--ce-search-h: 44px;      /* kutu yüksekliği */
		--ce-search-go: 46px;     /* büyüteç butonu genişliği */
		--ce-search-x: 36px;      /* temizle (X) butonu genişliği */
		--ce-search-pad: 14px;    /* metnin sol iç boşluğu */
	}

	.ce-search form {
		display: flex;
		align-items: stretch;
	}

	/* Kutu satırın TAMAMINI kaplar ve ikonların bağlamı olur. */
	.ce-search__box {
		position: relative;
		display: flex;
		flex: 1 1 auto;
		min-width: 0;
		width: 100%;
	}

	.ce-search__box input[type="search"] {
		flex: 1 1 auto;
		min-width: 0;
		width: 100%;
		height: var(--ce-search-h);
		/* Dikey dolgu yok: yükseklik sabit, ikonlar top/bottom: 0 ile
		   tam ortalanır — kutu boşken de yazıyken de OYNAMAZ. */
		padding: 0 calc(var(--ce-search-go) + 8px) 0 var(--ce-search-pad);
	}

	/* Yazı varken X de devrede: metin iki ikonun da altına girmesin. */
	.ce-search__box input[type="search"]:not(:placeholder-shown) {
		padding-right: calc(var(--ce-search-go) + var(--ce-search-x) + 4px);
	}

	/* Büyüteç: kutunun İÇİNDE, sağ uçta, dikeyde tam ortalı. */
	.ce-search form .ce-search__go {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		width: var(--ce-search-go);
		border-radius: 0 8px 8px 0;
	}

	/* Temizle (X): büyütecin hemen solunda, aynı bağlamda. */
	.ce-search form .ce-search__clear {
		right: var(--ce-search-go);
		width: var(--ce-search-x);
	}

	/* Öneri paneli (.ce-sug) zaten .ce-search'e göre left/right: 0 ile
	   açılıyor; kutu tam genişlik olunca ikisi birebir hizalanır —
	   ayrıca bir genişlik kuralı GEREKMEZ. */
}

.ce-sug[hidden] {
	display: none !important;
}

.ce-sug {
	position: absolute;
	top: calc(100% + 8px);
	left: 0;
	right: 0;
	z-index: 1150;
	max-height: min(70vh, 520px);
	overflow-y: auto;
	background: #fff;
	border: 1px solid var(--ce-border);
	border-radius: 14px;
	box-shadow: 0 16px 40px rgba(19, 44, 30, 0.16);
	padding: 6px;
}

.ce-sug__group + .ce-sug__group {
	border-top: 1px solid #f1f3f2;
	margin-top: 6px;
	padding-top: 6px;
}

.ce-sug__title {
	margin: 6px 10px 4px;
	font-size: 11.5px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--ce-muted);
}

.ce-sug__row {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 9px 10px;
	border-radius: 10px;
	color: var(--ce-text);
	text-decoration: none;
	transition: background 0.12s ease;
}

.ce-sug__row:hover,
.ce-sug__row.is-active {
	background: var(--ce-green-light);
	color: var(--ce-text);
}

/* Kategori satırı */
.ce-sug__row--cat {
	justify-content: space-between;
}

.ce-sug__catname {
	font-size: 14px;
	font-weight: 600;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.ce-sug__tag {
	flex: 0 0 auto;
	padding: 3px 9px;
	border-radius: 999px;
	background: #eef2f0;
	color: var(--ce-muted);
	font-size: 11px;
	font-weight: 600;
}

.ce-sug__row--cat:hover .ce-sug__tag,
.ce-sug__row--cat.is-active .ce-sug__tag {
	background: #fff;
	color: var(--ce-green-dark);
}

/* Ürün satırı */
.ce-sug__thumb {
	flex: 0 0 auto;
	width: 48px;
	height: 48px;
	border-radius: 8px;
	overflow: hidden;
	background: var(--ce-bg-soft);
}

.ce-sug__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.ce-sug__info {
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 3px;
}

.ce-sug__name {
	font-size: 13.5px;
	font-weight: 500;
	line-height: 1.35;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.ce-sug__price {
	font-size: 13.5px;
	font-weight: 700;
	color: var(--ce-green-dark);
}

.ce-sug__price del {
	margin-right: 6px;
	font-weight: 500;
	color: var(--ce-muted);
}

/* Durum satırları */
.ce-sug__state {
	padding: 20px 14px;
	text-align: center;
	font-size: 13.5px;
	color: var(--ce-muted);
}

.ce-sug__state--empty {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.ce-sug__state--empty strong {
	font-size: 14px;
	color: var(--ce-text);
}

/* Tüm sonuçlar */
.ce-sug__all {
	justify-content: center;
	gap: 6px;
	margin-top: 4px;
	border-top: 1px solid #f1f3f2;
	border-radius: 0 0 10px 10px;
	font-size: 13.5px;
	font-weight: 700;
	color: var(--ce-green-dark);
}

.ce-sug__all svg {
	width: 15px;
	height: 15px;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}

/* --- Arama sonuç sayfası --- */
.ce-search-results {
	padding: 24px 0 60px;
}

.ce-search-results__head {
	margin-bottom: 22px;
}

.ce-search-results__title {
	margin: 0 0 6px;
	font-size: 26px;
	font-weight: 700;
	color: var(--ce-text);
	text-wrap: balance;
}

.ce-search-results__count {
	margin: 0;
	font-size: 13.5px;
	color: var(--ce-muted);
}

.ce-search-results__list {
	display: flex;
	flex-direction: column;
	gap: 18px;
}

.ce-search-results__item h2 {
	margin: 0 0 6px;
	font-size: 17px;
}

.ce-search-results__empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	padding: 56px 20px;
	text-align: center;
}

.ce-search-results__empty svg {
	width: 44px;
	height: 44px;
	stroke: var(--ce-green);
	stroke-width: 1.6;
	stroke-linecap: round;
	fill: none;
}

.ce-search-results__empty h2 {
	margin: 4px 0 0;
	font-size: 19px;
	font-weight: 700;
}

.ce-search-results__empty p {
	margin: 0 0 8px;
	font-size: 14px;
	color: var(--ce-muted);
}

@media (max-width: 768px) {
	/* Panel ekranı kaplamasın: daha kısa, kendi içinde kayan kompakt liste */
	.ce-sug {
		top: calc(100% + 6px);
		max-height: min(60vh, 400px);
		border-radius: 12px;
		padding: 4px;
	}

	.ce-sug__title {
		margin: 5px 8px 2px;
		font-size: 11px;
	}

	.ce-sug__group + .ce-sug__group {
		margin-top: 4px;
		padding-top: 4px;
	}

	.ce-sug__row {
		gap: 10px;
		padding: 7px 8px;
		border-radius: 9px;
	}

	.ce-sug__thumb {
		width: 40px;
		height: 40px;
	}

	.ce-sug__name {
		font-size: 13px;
		-webkit-line-clamp: 1;
	}

	.ce-sug__price,
	.ce-sug__catname {
		font-size: 13px;
	}

	.ce-sug__info {
		gap: 1px;
	}

	.ce-sug__state {
		padding: 16px 12px;
	}

	/* Liste kayarken "Tüm Sonuçları Göster" görünür kalır */
	.ce-sug__all {
		position: sticky;
		bottom: -4px;
		margin-top: 2px;
		padding: 11px 8px;
		background: #fff;
		box-shadow: 0 -6px 10px -6px rgba(19, 44, 30, 0.18);
	}

	.ce-search-results {
		padding: 16px 0 44px;
	}

	.ce-search-results__title {
		font-size: 21px;
	}
}

/* ============================================================
   ÜRÜN DETAY — MASAÜSTÜ YERLEŞİMİ (referans tasarım)
   Yalnız ≥769px; mobil ürün detayı bu bloktan etkilenmez.
   ============================================================ */
@media (min-width: 769px) {

	/* Breadcrumb: ">" ayraç, ev ikonu, aktif sayfa yeşil */
	.woocommerce .woocommerce-breadcrumb {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		gap: 8px;
		font-size: 13.5px;
		font-weight: 500;
		color: var(--ce-green-dark);
		margin-bottom: 22px;
	}

	.woocommerce .woocommerce-breadcrumb::before {
		content: "";
		width: 17px;
		height: 17px;
		flex: 0 0 auto;
		background: currentColor;
		color: var(--ce-muted);
		-webkit-mask: var(--ce-home-icon) center/contain no-repeat;
		mask: var(--ce-home-icon) center/contain no-repeat;
	}

	.woocommerce .woocommerce-breadcrumb a {
		color: var(--ce-muted);
		text-decoration: none;
	}

	.woocommerce .woocommerce-breadcrumb a:hover {
		color: var(--ce-green);
	}

	/* Sol sütun: galeri + altı + güven şeridi; sağ sütun tüm satırları kapsar */
	.ce-product {
		grid-template-columns: minmax(0, 45fr) minmax(0, 55fr);
		/* Sağ sütun 3 satırı birden kapsadığı için fazla yüksekliği son satıra
		   bırakıyoruz; yoksa satırlara eşit dağılıp galeri altındaki grubu
		   görselden gereğinden fazla uzaklaştırıyor. */
		grid-template-rows: auto auto 1fr;
		gap: 18px 30px;
		align-items: start;
	}

	.ce-product > .ce-gallery {
		grid-column: 1;
		grid-row: 1;
	}

	.ce-product > .ce-galunder {
		grid-column: 1;
		grid-row: 2;
	}

	.ce-product > .ce-guarantee {
		grid-column: 1;
		grid-row: 3;
	}

	.ce-product > .ce-summary {
		grid-column: 2;
		grid-row: 1 / span 3;
	}

	/* --- Galeri --- */
	.ce-gallery__thumb {
		border-radius: 12px;
		overflow: hidden;
	}

	.ce-gallery__main {
		border-radius: 16px;
		border-color: #eceeed;
	}

	/* Ana görselde favori kalbi (mobildeki bileşenin masaüstü hali) */
	.ce-gallery__fav {
		display: flex;
		position: absolute;
		top: 16px;
		right: 16px;
		width: 46px;
		height: 46px;
		align-items: center;
		justify-content: center;
		border-radius: 50%;
		background: #fff;
		box-shadow: 0 4px 14px rgba(19, 44, 30, 0.16);
		z-index: 2;
		cursor: pointer;
	}

	.ce-gallery__fav svg {
		width: 22px;
		height: 22px;
		fill: none;
		stroke: #b8bdba;
		stroke-width: 1.8;
		transition: fill 0.15s, stroke 0.15s;
	}

	.ce-gallery__fav.is-active svg {
		fill: var(--ce-danger);
		stroke: var(--ce-danger);
	}

	/* --- Galeri altı: ok + küçük rozetler --- */
	.ce-galunder {
		display: flex;
		align-items: stretch;
		gap: 12px;
	}

	.ce-galunder__more {
		flex: 0 0 96px;
		width: 96px;
		min-height: 46px;
		display: flex;
		align-items: center;
		justify-content: center;
		border: 1px solid var(--ce-border);
		border-radius: 12px;
		background: #fff;
		color: var(--ce-muted);
		cursor: pointer;
		transition: border-color 0.15s ease, color 0.15s ease;
	}

	.ce-galunder__more:hover {
		border-color: var(--ce-green);
		color: var(--ce-green-dark);
	}

	.ce-galunder__more svg {
		width: 18px;
		height: 18px;
		stroke: currentColor;
		stroke-width: 2;
		stroke-linecap: round;
		stroke-linejoin: round;
		fill: none;
	}

	.ce-galbadges {
		flex: 1 1 auto;
		display: flex;
		gap: 10px;
		min-width: 0;
	}

	.ce-galbadge {
		flex: 1 1 0;
		min-width: 0;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 7px;
		padding: 12px 10px;
		border: 1px solid var(--ce-border);
		border-radius: 12px;
		background: #fff;
		font-size: 12.5px;
		font-weight: 600;
		color: var(--ce-text);
		white-space: nowrap;
	}

	.ce-galbadge svg {
		flex: 0 0 auto;
		width: 16px;
		height: 16px;
		stroke: var(--ce-green);
		stroke-width: 1.7;
		stroke-linecap: round;
		stroke-linejoin: round;
		fill: none;
	}

	/* --- Alt güven şeridi (4'lü) --- */
	.ce-guarantee {
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		background: #fafbfa;
		border: 1px solid #eef0ef;
		border-radius: 14px;
		padding: 20px 8px;
	}

	.ce-guarantee__item {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 9px;
		padding: 0 10px;
		text-align: center;
	}

	.ce-guarantee__item + .ce-guarantee__item {
		border-left: 1px solid #e8ebe9;
	}

	.ce-guarantee__item svg {
		width: 26px;
		height: 26px;
		stroke: var(--ce-green);
		stroke-width: 1.6;
		stroke-linecap: round;
		stroke-linejoin: round;
		fill: none;
	}

	.ce-guarantee__item em {
		font-style: normal;
		font-size: 12.5px;
		font-weight: 600;
		line-height: 1.4;
		color: var(--ce-text);
	}

	/* --- Sağ sütun: üç ayrı kart (ana bilgi / garanti / uyarı) ---
	   Sarmalayıcı yalnızca kartları dizer; kart görünümü alt bloklarda. */
	.ce-panel {
		display: flex;
		flex-direction: column;
		gap: 16px;
		background: transparent;
		border: 0;
		border-radius: 0;
		box-shadow: none;
		padding: 0;
	}

	/* 1) Ana bilgi kartı: ürün adı → Sipariş Ver + favori */
	.ce-panel__main {
		display: block;
		background: #fff;
		border: 1px solid #eef0ef;
		border-radius: 18px;
		box-shadow: 0 6px 22px rgba(19, 44, 30, 0.07);
		padding: 28px 30px 30px;
	}

	/* 2) ve 3) kartlar: garanti kutusu + teslimat süresi uyarısı */
	.ce-summary > .ce-notice {
		border-radius: 18px;
		box-shadow: 0 6px 22px rgba(19, 44, 30, 0.07);
		padding: 20px 22px;
	}

	.ce-summary > .ce-notice--green {
		border: 1px solid #d8ecdf;
	}

	.ce-summary > .ce-notice--gray {
		border: 1px solid #eef0ef;
	}

	.ce-panel__head {
		background: transparent;
		border: 0;
		border-radius: 0;
		padding: 0;
		gap: 18px;
		margin-bottom: 20px;
	}

	.ce-summary .product_title {
		font-size: 32px;
		font-weight: 800;
		letter-spacing: -0.01em;
	}

	/* Varyantlar, teslimat, güven satırı ve satın alma bloğu arası ritim */
	.ce-panel__main > .ce-variants,
	.ce-panel__main > .ce-delivery-widget,
	.ce-panel__main > .ce-trustrow,
	.ce-panel__main > .ce-buy {
		margin-bottom: 18px;
	}

	.ce-panel__main > .ce-buy {
		margin-bottom: 0;
	}

	/* Fiyat satırı ile yeşil adres/konum çubuğu arası tam 45px olsun.
	   Kart blok konteyner olduğu için bu margin, başlık bloğunun 20px alt
	   boşluğuyla çakışır (collapse) ve büyük olan geçerli olur → 45px.
	   Adres SEÇİLİYKEN .ce-locwrap 0 yükseklikte kalıp aradaki 12px flex gap'i
	   yine de ürettiğinden o gap çubukta geri alınır; böylece adres seçili ya
	   da seçilmemiş her iki durumda da aralık 45px'te sabit kalır. */
	.ce-panel__head + .ce-delivery-widget {
		margin-top: 45px;
	}

	.ce-panel .ce-delivery-widget > .ce-locwrap + .ce-locbar {
		margin-top: -12px;
	}

	/* Yeşil adres/konum çubuğu ile teslimat günü butonları arası tam 25px:
	   widget'ın 12px flex gap'i üzerine 13px eklenir (.ce-dates, .ce-datetime'ın
	   boşluksuz ilk çocuğu olduğundan aralık doğrudan buradan gelir). */
	.ce-panel .ce-delivery-widget > .ce-datetime {
		margin-top: 13px;
	}

	/* Teslimat günü butonları ile "Saat Seçiniz" kutusu arası tam 22px.
	   Saat kutusu .ce-dates grid'inin 2. satırında; aradaki 10px row-gap'e
	   12px eklenir (grid öğesi olduğu için margin çakışması olmaz). */
	.ce-panel .ce-dates > .ce-timebox {
		margin-top: 12px;
	}

	/* "Saat Seçiniz" kutusu ile altındaki bilgi satırı arası tam 30px.
	   Saat kutusu teslimat bölümünün en alt öğesi olduğundan aralık bu
	   bölümün alt boşluğundan gelir. */
	.ce-panel__main > .ce-delivery-widget {
		margin-bottom: 30px;
	}

	/* Bilgi satırı ile ana buton satırı (Sipariş Ver/TASARLA + favori) arası 22px. */
	.ce-panel__main > .ce-trustrow {
		margin-bottom: 22px;
	}

	/* --- Adres/konum çubuğu: açık yeşil --- */
	.ce-panel .ce-locwrap .ce-loc,
	.ce-panel .ce-loc {
		background: #eef7f1;
		border-color: #d8ecdf;
		border-radius: 12px;
	}

	.ce-panel .ce-loc svg {
		stroke: var(--ce-green);
	}

	/* --- Teslimat gün kartları --- */
	.ce-dates {
		gap: 10px;
	}

	.ce-date {
		background: #fafbfa;
		border: 1.5px solid #eceeed;
		/* Gün kutuları ve saat kutusu aynı köşe yuvarlaklığını paylaşır. */
		border-radius: 14px;
		padding: 24px 10px;
		gap: 5px;
		/* Takvim kutusuna tarih yazılınca satır yüksekliği değişmesin. */
		min-height: 92px;
	}

	.ce-date strong {
		font-size: 14.5px;
		font-weight: 700;
	}

	.ce-date span {
		font-size: 12.5px;
		color: var(--ce-muted);
	}

	.ce-date.is-active {
		background: #f2fbf6;
		border-color: var(--ce-green);
	}

	/* Açık zeminde beyaz yazı okunmaz: koyu yeşile çevrilir. */
	.ce-date.is-active,
	.ce-date.is-active strong {
		color: var(--ce-green-dark);
	}

	.ce-date.is-active span {
		color: var(--ce-green-dark);
	}

	/* --- Adres çubuğu: koyu yeşil yerine açık yeşil (referans) --- */
	.ce-panel .ce-locbar {
		background: #eef7f1;
		border: 1px solid #d8ecdf;
		border-radius: 12px;
		color: var(--ce-green-dark);
		font-size: 14px;
	}

	.ce-panel .ce-locbar svg {
		stroke: var(--ce-green);
	}

	/* Temizle kontrolü referanstaki "Değiştir" hapı gibi görünür; öğe, olayı
	   ve aria etiketi aynı kalır (yalnız görünüm). */
	.ce-panel .ce-locbar__clear {
		width: auto;
		height: auto;
		font-size: 0;
		background: #fff;
		border: 1px solid #d8ecdf;
		border-radius: 999px;
		padding: 7px 15px;
		color: var(--ce-green-dark);
	}

	.ce-panel .ce-locbar__clear::before {
		content: "Değiştir";
		font-size: 12.5px;
		font-weight: 700;
		line-height: 1;
	}

	.ce-panel .ce-locbar__clear:hover {
		background: #e2f1e9;
	}

	/* --- Saat hapı: açık zemin --- */
	.ce-panel .ce-timebox__select {
		background: #fafbfa;
		color: var(--ce-text);
	}

	/* Seçili günde onay işareti (referanstaki gibi sağ altta) */
	.ce-date.is-active::after {
		content: "";
		position: absolute;
		right: 10px;
		bottom: 10px;
		width: 16px;
		height: 16px;
		border-radius: 50%;
		background: var(--ce-green) var(--ce-check-icon) center/10px 10px no-repeat;
	}

	.ce-date {
		position: relative;
	}

	.ce-date--cal svg {
		stroke: var(--ce-text);
	}

	/* --- Saat seçimi: gün kutularıyla aynı tasarım dili ---
	   Aynı köşe yuvarlaklığı, aynı çerçeve/zemin; dikey padding gün
	   kutularınınkiyle aynı ritimde (tek satır içerik olduğu için kutu
	   doğal olarak daha alçak kalır). */
	.ce-timebox {
		border-radius: 14px;
		border: 1.5px solid #eceeed;
		background: #fafbfa;
	}

	.ce-timebox__select {
		border-radius: 14px;
		padding-top: 14px;
		padding-bottom: 14px;
		font-weight: 600;
	}

	/* Açılır ok: taban kural yeşil hap varsayıp stroke:#fff veriyor, açık
	   zeminli masaüstü kutusunda görünmez kalıyordu. */
	.ce-panel .ce-timebox svg:not(.ce-timebox__clock) {
		stroke: var(--ce-muted);
	}

	/* --- Küçük güven satırı --- */
	.ce-trustrow {
		gap: 22px;
		font-weight: 600;
	}

	.ce-trustrow svg {
		stroke: var(--ce-green);
	}

	/* --- Sipariş Ver + favori --- */
	.ce-buy__form .single_add_to_cart_button,
	.ce-buy__form .ce-btn,
	.ce-buy__form .ce-designbtn {
		border-radius: 12px;
		font-size: 17px;
		font-weight: 700;
		letter-spacing: 0.01em;
		box-shadow: 0 6px 18px rgba(18, 161, 80, 0.24);
	}

	.ce-fav {
		border-radius: 12px;
	}

	.ce-favbox__text {
		font-size: 13.5px;
		color: var(--ce-text);
	}

	/* --- Bilgi kutuları --- */
	.ce-notice {
		border-radius: 14px;
		padding: 16px 18px;
	}

	.ce-notice--green {
		background: #eef7f1;
		border-color: #d8ecdf;
	}
}

/* İkonlar (maske olarak kullanılır) */
:root {
	--ce-home-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 10.5L12 3l9 7.5'/%3E%3Cpath d='M5 9.5V21h14V9.5'/%3E%3C/svg%3E");
	--ce-check-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7'/%3E%3C/svg%3E");
}

/* Masaüstü blokları mobilde hiç görünmez */
@media (max-width: 768px) {
	.ce-galunder,
	.ce-guarantee {
		display: none;
	}
}

/* ============================================================
   ÜRÜN DETAY — saat ikonu + garanti kutusu yaprak süsü
   ============================================================ */

/* Saat kutusunun sol başındaki saat ikonu (dekoratif). */
.ce-timebox__clock {
	position: absolute;
	left: 12px;
	top: 50%;
	transform: translateY(-50%);
	width: 16px;
	height: 16px;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
	pointer-events: none;
	color: #fff;
	z-index: 1;
}

/* İkon geldiği için metin sağa kayar (sağda zaten ok var). */
.ce-timebox__select {
	padding-left: 36px;
}

/* .ce-timebox svg kuralı stroke:#fff ve right:10px dayatıyor; saat ikonu için
   ikisini de açıkça geçiyoruz (yoksa sağa kaçar ve beyaz kalır). */
.ce-timebox .ce-timebox__clock {
	right: auto;
	stroke: currentColor;
}

/* Açık zeminli masaüstü hapında ikon koyu yeşil olur (beyaz görünmezdi). */
@media (min-width: 769px) {
	.ce-panel .ce-timebox .ce-timebox__clock {
		color: var(--ce-green);
		stroke: var(--ce-green);
	}
}

/* ============================================================
   MARKALI TARİH SEÇİCİ (.ce-cal)
   Native <input type="date"> picker'ı tarayıcıya ait ve stillenemediği için
   JS bağımsız bir panel çizer; input değer taşıyıcısı olarak gizli kalır.
   ============================================================ */

.ce-datetime {
	position: relative;
}

/* Panel, tıklanan "Takvim" kartına bağlı bir popover'dır; top/left değerleri
   JS tarafından kartın konumuna göre yazılır (akışı itmez, üstte yüzer). */
.ce-date__custom.is-enhanced {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 40;
	width: 320px;
	max-width: 100%;
}

.ce-date__custom.is-enhanced input[type="date"] {
	display: none;
}

.ce-cal {
	position: relative;
	background: #fff;
	border: 1px solid #eef0ef;
	border-radius: 16px;
	box-shadow: 0 14px 34px rgba(19, 44, 30, 0.16);
	padding: 14px;
	-webkit-user-select: none;
	user-select: none;
}

/* Takvim kartına işaret eden küçük ok — panelin karta ait olduğunu belli eder.
   Yatay konumu JS'in yazdığı --ce-cal-arrow ile kartın ortasına hizalanır. */
.ce-cal::before {
	content: "";
	position: absolute;
	top: -7px;
	left: var(--ce-cal-arrow, 50%);
	width: 12px;
	height: 12px;
	background: #fff;
	border-left: 1px solid #eef0ef;
	border-top: 1px solid #eef0ef;
	border-radius: 3px 0 0 0;
	transform: translateX(-50%) rotate(45deg);
}

.ce-cal__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	margin-bottom: 10px;
}

.ce-cal__title {
	font-size: 15px;
	font-weight: 800;
	color: var(--ce-text);
	letter-spacing: -0.01em;
}

.ce-cal__nav {
	width: 32px;
	height: 32px;
	flex: 0 0 32px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--ce-border);
	border-radius: 10px;
	background: #fff;
	color: var(--ce-green);
	cursor: pointer;
	transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}

.ce-cal__nav svg {
	width: 16px;
	height: 16px;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}

.ce-cal__nav:hover:not(:disabled) {
	border-color: var(--ce-green);
	background: #f2fbf6;
}

.ce-cal__nav:disabled {
	color: var(--ce-muted);
	opacity: 0.4;
	cursor: default;
}

.ce-cal__week {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	gap: 2px;
	margin-bottom: 4px;
}

.ce-cal__week span {
	text-align: center;
	padding: 4px 0;
	font-size: 11.5px;
	font-weight: 700;
	color: var(--ce-muted);
}

.ce-cal__grid {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	gap: 2px;
}

.ce-cal__day {
	aspect-ratio: 1 / 1;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	border: 1.5px solid transparent;
	border-radius: 50%;
	background: transparent;
	font-family: inherit;
	font-size: 13.5px;
	font-weight: 600;
	color: var(--ce-text);
	cursor: pointer;
	transition: background 0.12s ease, color 0.12s ease, border-color 0.12s ease;
}

/* Hafta sonu yalnız çok hafif bir zeminle ayrılır; soluk METİN kullanılmaz,
   yoksa seçilebilir günler pasif günlerle karıştırılıyor. */
.ce-cal__day.is-weekend:not(:disabled):not(.is-selected) {
	background: #f6f8f7;
}

.ce-cal__day.is-weekend:not(:disabled):not(.is-selected):hover {
	background: #eef7f1;
}

.ce-cal__day:hover:not(:disabled) {
	background: #eef7f1;
	color: var(--ce-green-dark);
}

.ce-cal__day:focus-visible {
	outline: 2px solid var(--ce-green);
	outline-offset: 1px;
}

.ce-cal__day.is-today {
	border-color: var(--ce-green);
	color: var(--ce-green-dark);
}

.ce-cal__day.is-selected,
.ce-cal__day.is-selected:hover {
	background: var(--ce-green);
	border-color: var(--ce-green);
	color: #fff;
}

.ce-cal__day:disabled {
	color: #c9cecb;
	background: transparent;
	cursor: default;
}

.ce-cal__foot {
	display: flex;
	gap: 8px;
	margin-top: 12px;
	padding-top: 12px;
	border-top: 1px solid #f0f2f1;
}

.ce-cal__btn {
	flex: 1 1 0;
	min-height: 38px;
	border: 1px solid transparent;
	border-radius: 10px;
	font-family: inherit;
	font-size: 13.5px;
	font-weight: 700;
	cursor: pointer;
	transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.ce-cal__btn--ghost {
	background: #fff;
	border-color: var(--ce-border);
	color: var(--ce-muted);
}

.ce-cal__btn--ghost:hover {
	border-color: var(--ce-green);
	color: var(--ce-green-dark);
}

.ce-cal__btn--main {
	background: var(--ce-green);
	color: #fff;
}

.ce-cal__btn--main:hover {
	background: var(--ce-green-dark);
}

@media (max-width: 768px) {
	.ce-cal__day {
		font-size: 14.5px;
	}

	.ce-cal__btn {
		min-height: 44px;
		font-size: 14px;
	}
}

/* --- "Taze Çiçek Garantisi!" kutusundaki yaprak süsü --- */
.ce-notice--green {
	position: relative;
	overflow: hidden;
}

.ce-notice--green > p {
	position: relative;
	z-index: 1;
	/* Süsün altına girmesin */
	padding-right: 90px;
}

/* .ce-notice svg (20px) kuralını geçmesi için daha yüksek özgüllük.
   Yapraklar yarı saydam dolgulu (üst üste binince koyulaşsınlar diye
   opaklık SVG'nin tamamına değil, dolguya verilir); sap + damarlar
   yaprakların üstünde daha koyu yeşil çizgi. */
.ce-notice--green .ce-notice__leaf {
	position: absolute;
	right: 18px;
	top: 50%;
	transform: translateY(-50%);
	width: 64px;
	height: 64px;
	margin-top: 0;
	stroke: none;
	pointer-events: none;
	z-index: 0;
}

.ce-notice--green .ce-notice__leaf .ce-notice__leaves {
	fill: var(--ce-green);
	fill-opacity: 0.2;
}

.ce-notice--green .ce-notice__leaf .ce-notice__leafstem {
	fill: none;
	stroke: var(--ce-green);
	stroke-opacity: 0.52;
	stroke-width: 1.5;
	stroke-linecap: round;
}

.ce-notice--green .ce-notice__leaf .ce-notice__leafvein {
	fill: none;
	stroke: var(--ce-green);
	stroke-opacity: 0.42;
	stroke-width: 1.2;
	stroke-linecap: round;
}

@media (max-width: 768px) {
	.ce-notice--green .ce-notice__leaf {
		width: 52px;
		height: 52px;
		right: 10px;
	}

	.ce-notice--green .ce-notice__leaf .ce-notice__leaves {
		fill-opacity: 0.17;
	}

	.ce-notice--green .ce-notice__leaf .ce-notice__leafstem {
		stroke-opacity: 0.5;
	}

	.ce-notice--green .ce-notice__leaf .ce-notice__leafvein {
		stroke-opacity: 0.36;
	}

	.ce-notice--green > p {
		padding-right: 66px;
	}
}

/* =========================================================
   "İKİNCİ ÜRÜN" POPUP'I — ürün sayfasında sepete ekleme sonrası.
   Kabuk checkout modalleriyle (fatura kaydet / konum) aynı dili konuşur:
   aynı overlay tonu, yarıçap, gölge ve iç boşluk ölçüleri.
   ========================================================= */
.ce-second {
	position: fixed;
	inset: 0;
	z-index: 95;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 20px;
}

.ce-second.is-open {
	display: flex;
}

.ce-second__ov {
	position: absolute;
	inset: 0;
	background: rgba(20, 25, 30, 0.5);
}

.ce-second__card {
	position: relative;
	width: 100%;
	max-width: 440px;
	background: #fff;
	border-radius: 14px;
	box-shadow: 0 18px 50px rgba(0, 0, 0, 0.2);
	padding: 28px 26px 22px;
	text-align: center;
}

/* Üstte yuvarlak açık zeminli sepet ikonu */
.ce-second__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	margin-bottom: 14px;
	border-radius: 50%;
	background: var(--ce-green-light, #e7f6ee);
}

.ce-second__icon svg {
	width: 26px;
	height: 26px;
	fill: none;
	stroke: var(--ce-green, #12a150);
	stroke-width: 1.7;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.ce-second__title {
	margin: 0 0 14px;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.35;
	color: var(--ce-text);
}

/* Opsiyonel bilgi şeridi — metin admin ayarından; boşsa hiç basılmaz. */
.ce-second__note {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin: 0 0 18px;
	padding: 10px 14px;
	border-radius: 10px;
	background: var(--ce-green-light, #e7f6ee);
	font-size: 13.5px;
	line-height: 1.4;
	color: var(--ce-green-dark, #0d7d3e);
}

.ce-second__note svg {
	flex: 0 0 auto;
	width: 17px;
	height: 17px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
}

.ce-second__actions {
	display: flex;
	gap: 10px;
}

.ce-second__btn {
	flex: 1 1 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 0 14px;
	border-radius: 10px;
	font-size: 14.5px;
	font-weight: 600;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.ce-second__btn--yes {
	background: var(--ce-green, #12a150);
	border: 1px solid var(--ce-green, #12a150);
	color: #fff;
}

.ce-second__btn--yes:hover {
	background: var(--ce-green-dark, #0d7d3e);
	border-color: var(--ce-green-dark, #0d7d3e);
	color: #fff;
}

.ce-second__btn--no {
	background: #fff;
	border: 1px solid var(--ce-border, #e6e9f0);
	color: var(--ce-text);
}

.ce-second__btn--no:hover {
	border-color: var(--ce-green, #12a150);
	color: var(--ce-green-dark, #0d7d3e);
}

/* Mobil: tam genişliğe yakın kart, dokunma hedefi ≥44px (46px kalıyor). */
@media (max-width: 480px) {
	.ce-second {
		padding: 14px;
	}

	.ce-second__card {
		padding: 24px 18px 18px;
	}

	.ce-second__title {
		font-size: 16.5px;
	}

	.ce-second__actions {
		flex-direction: column;
	}
}

/* Modal gecisi kisa tutulur (<=150ms): "gec acildi" hissi olusmasin. */
.ce-second[hidden] {
	display: none;
}

.ce-second.is-open .ce-second__card {
	animation: ce-second-in 0.12s ease-out;
}

@keyframes ce-second-in {
	from { transform: scale(0.98); opacity: 0; }
	to { transform: scale(1); opacity: 1; }
}

/* "Sipariş Ver" yukleniyor durumu: tiklama aninda geri bildirim. */
.single_add_to_cart_button.is-busy,
.ce-buy__form button.is-busy {
	opacity: 0.75;
	cursor: wait;
}

/* Sepete ekleme hatasi: satir ici uyari (alert() yerine). */
.ce-second__err {
	margin: 10px 0 0;
	padding: 10px 12px;
	border: 1px solid var(--ce-danger, #e0234e);
	border-radius: 8px;
	background: #fff5f7;
	font-size: 13.5px;
	line-height: 1.45;
	color: var(--ce-danger, #e0234e);
}

.ce-second__err[hidden] {
	display: none;
}

/* =========================================================
   HEADER YENİDEN TASARIM (masaüstü mockup)
   Üç katman: koyu yeşil üst şerit / beyaz ana satır / nav satırı.
   MOBİL header düzenine dokunulmaz — bu blok 901px ve üstünde
   uygulanır; ortak (renk/ikon) kurallar breakpoint dışıdır.
   ========================================================= */

/* ---------- Üst şerit: koyu yeşil, beyaz metin ---------- */
.ce-topbar {
	background: var(--ce-green-deep);
	color: var(--ce-topbar-fg, #fff);
	font-size: 14px;
}

.ce-topbar__inner {
	min-height: 56px;
}

.ce-topbar__ico {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
}

.ce-topbar__ico svg {
	width: 19px;
	height: 19px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.6;
	stroke-linecap: round;
	stroke-linejoin: round;
}

/* SOL: hediye ikonu + slogan (düz metin; el yazısı/daktilo YOK). */
.ce-topbar__script {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	font-family: inherit;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.3;
	color: var(--ce-topbar-fg, #fff);
}

.ce-topbar__lines {
	display: inline-grid;
	min-width: 0;
}

.ce-topbar__script-line {
	grid-area: 1 / 1;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	visibility: hidden;
	opacity: 0;
	transition: opacity 0.35s ease;
}

.ce-topbar__script-line.is-active {
	visibility: visible;
	opacity: 1;
	/* Daktilo animasyonu kaldırıldı: yalnız yumuşak geçiş. */
	animation: none;
	clip-path: none;
}

.ce-topbar__script-line.is-leaving {
	visibility: visible;
	opacity: 0;
	animation: none;
	clip-path: none;
}

/* Çift tırnaklı bölüm: kalın italik. */
.ce-topbar__script-line em {
	font-style: italic;
	font-weight: 700;
}

/* ORTA: etiket ikonu + indirim metni + kupon rozeti. */
.ce-topbar__promo {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	color: var(--ce-topbar-fg, #fff);
	font-size: 15px;
	font-weight: 600;
}

.ce-topbar__promo strong {
	color: var(--ce-topbar-fg, #fff);
	font-weight: 700;
}

.ce-topbar__code {
	background: var(--ce-green-chip);
	color: var(--ce-chip-fg, #fff);
	border: 0;
	border-radius: 999px;
	padding: 5px 14px;
	font-size: 12.5px;
	font-weight: 700;
	letter-spacing: 0.02em;
	text-transform: uppercase;
}

/* SAĞ: sosyal + takip metni | İletişim. */
.ce-topbar__links {
	display: flex;
	align-items: center;
	gap: 12px;
	color: var(--ce-topbar-fg, #fff);
}

.ce-topbar__links a,
.ce-topbar__follow {
	color: var(--ce-topbar-fg, #fff);
	font-size: 14px;
}

.ce-topbar__links a:hover {
	color: var(--ce-topbar-fg, #fff);
	opacity: 0.85;
}

.ce-topbar__social a {
	color: var(--ce-topbar-fg, #fff);
	background: none;
	border: 0;
}

.ce-topbar__social svg {
	fill: currentColor;
	stroke: none;
}

.ce-topbar__sep {
	display: inline-block;
	width: 1px;
	height: 16px;
	background: color-mix(in srgb, var(--ce-topbar-fg, #fff) 35%, transparent);
}

.ce-topbar__close {
	color: var(--ce-topbar-fg, #fff);
}

/* ---------- Ana satır ---------- */
@media (min-width: 901px) {
	.ce-header__inner {
		gap: 26px;
		padding-top: 14px;
		padding-bottom: 14px;
	}

	/* Arama: kategori seçici + koyu yeşil büyüteç. */
	.ce-search form {
		position: relative;
		display: flex;
		align-items: stretch;
		background: #fff;
		border: 1px solid #dfe6e1;
		border-radius: 12px;
		overflow: hidden;
	}

	.ce-search input[type="search"] {
		flex: 1 1 auto;
		min-width: 0;
		height: 56px;
		border: 0;
		border-radius: 0;
		padding: 0 16px;
		font-size: 15px;
	}

	.ce-search__cat {
		position: relative;
		flex: 0 0 auto;
		display: flex;
		align-items: center;
		border-left: 1px solid #e6ece8;
	}

	.ce-search__catbtn {
		display: flex;
		align-items: center;
		gap: 6px;
		height: 100%;
		padding: 0 14px;
		background: none;
		border: 0;
		font-size: 14.5px;
		font-weight: 600;
		color: var(--ce-text);
		cursor: pointer;
		white-space: nowrap;
	}

	.ce-search__catbtn svg {
		width: 16px;
		height: 16px;
		stroke: currentColor;
		stroke-width: 2;
		stroke-linecap: round;
		stroke-linejoin: round;
	}

	.ce-search__catmenu {
		position: absolute;
		top: calc(100% + 6px);
		right: 0;
		z-index: 60;
		min-width: 200px;
		max-height: 320px;
		overflow-y: auto;
		display: flex;
		flex-direction: column;
		padding: 6px;
		background: #fff;
		border: 1px solid var(--ce-border);
		border-radius: 10px;
		box-shadow: 0 10px 26px rgba(0, 0, 0, 0.12);
	}

	.ce-search__catmenu[hidden] {
		display: none;
	}

	.ce-search__catmenu button {
		padding: 9px 10px;
		background: none;
		border: 0;
		border-radius: 7px;
		font-size: 14px;
		text-align: left;
		color: var(--ce-text);
		cursor: pointer;
	}

	.ce-search__catmenu button:hover {
		background: var(--ce-green-light);
		color: var(--ce-green-dark);
	}

	.ce-search form .ce-search__go {
		flex: 0 0 auto;
		position: static;
		width: 74px;
		background: var(--ce-green);
		border: 0;
		border-radius: 0;
		color: #fff;
		cursor: pointer;
	}

	.ce-search form .ce-search__go:hover {
		background: var(--ce-green-dark);
	}

	.ce-search form .ce-search__go svg {
		width: 22px;
		height: 22px;
		fill: currentColor;
	}

	/* Sağdaki üç kart. */
	.ce-actions {
		gap: 10px;
	}

	/* a) Sipariş Asistanı — açık yeşil pill kart. */
	/* Asistan pill: TÜM renkleri --ce-primary türevi; sabit yeşil yok. */
	.ce-header .ce-assist-btn {
		display: flex;
		align-items: center;
		gap: 10px;
		min-height: 60px;
		padding: 9px 18px;
		background: color-mix(in srgb, var(--ce-primary, #12a150) 10%, #fff);
		border: 1px solid color-mix(in srgb, var(--ce-primary, #12a150) 26%, #fff);
		border-radius: 12px;
		color: var(--ce-primary, #12a150);
		cursor: pointer;
		transition: background 0.15s ease, border-color 0.15s ease;
	}

	.ce-header .ce-assist-btn:hover,
	.ce-header .ce-assist-btn:focus-visible {
		background: color-mix(in srgb, var(--ce-primary, #12a150) 18%, #fff);
		border-color: color-mix(in srgb, var(--ce-primary, #12a150) 40%, #fff);
		color: var(--ce-primary, #12a150);
	}

	.ce-header .ce-assist-btn svg {
		width: 24px;
		height: 24px;
		stroke: var(--ce-primary, #12a150);
		stroke-width: 1.7;
	}

	.ce-header .ce-assist-btn > span {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		gap: 1px;
		font-size: 15px;
		font-weight: 700;
		line-height: 1.2;
		color: var(--ce-primary, #12a150);
	}

	/* Alt satır: birincilin soluk hâli. */
	.ce-header .ce-assist-btn > span::after {
		content: attr(data-sub);
		font-size: 12.5px;
		font-weight: 500;
		color: color-mix(in srgb, var(--ce-primary, #12a150) 62%, #6b7280);
	}

	/* b) Hesabım (giriş yapılmış) ve misafir bloğu AYNI kart ölçüsünde.
	   Misafirde dolgu artık İÇ bağlantıda değil, kabın kendisinde:
	   ikon ile metin arasında yalnız gap kalır (fazla boşluk yok). */
	.ce-acct__btn,
	.ce-acct--guest {
		display: flex;
		align-items: center;
		gap: 10px;
		min-height: 60px;
		padding: 9px 12px;
		background: none;
		border: 0;
		cursor: pointer;
	}

	.ce-acct__btn > svg,
	.ce-acct__guesticon svg {
		width: 26px;
		height: 26px;
		stroke: var(--ce-text);
		stroke-width: 1.6;
	}

	.ce-acct__txt {
		display: flex;
		flex-direction: column;
		gap: 1px;
		text-align: left;
	}

	.ce-acct__txt strong {
		display: flex;
		align-items: center;
		gap: 4px;
		font-size: 15px;
		font-weight: 700;
		color: var(--ce-text);
		line-height: 1.2;
	}

	.ce-acct__txt em {
		font-style: normal;
		font-size: 12.5px;
		color: var(--ce-muted);
		max-width: 130px;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	/* Misafir: iki satır alt alta; ölçüler "Hesabım" kartıyla aynı ailede. */
	.ce-acct__guestlinks {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		gap: 1px;
		text-align: left;
	}

	.ce-acct__guestlogin {
		font-size: 15px;
		font-weight: 700;
		line-height: 1.2;
		color: var(--ce-text);
	}

	.ce-acct__guestreg {
		font-size: 12.5px;
		font-weight: 500;
		line-height: 1.2;
		color: var(--ce-muted);
	}

	.ce-acct--guest .ce-acct__guesticon {
		display: flex;
		align-items: center;
		padding-right: 0;
	}

	/* c) Sepetim — çerçeveli kart, rozet + tutar. */
	.ce-header .ce-cart-btn {
		display: flex;
		align-items: center;
		gap: 10px;
		width: auto;
		height: auto;
		min-height: 60px;
		padding: 9px 16px;
		background: #fff;
		border: 1px solid #dfe6e1;
		border-radius: 12px;
		color: var(--ce-text);
	}

	.ce-header .ce-cart-btn:hover {
		background: #fff;
		border-color: var(--ce-green);
	}

	.ce-header .ce-cart-btn__ico svg {
		width: 26px;
		height: 26px;
		stroke: var(--ce-text);
		stroke-width: 1.6;
	}

	.ce-cart-btn__txt {
		display: flex;
		flex-direction: column;
		gap: 1px;
		line-height: 1.2;
	}

	.ce-cart-btn__txt strong {
		font-size: 15px;
		font-weight: 700;
		color: var(--ce-text);
	}

	.ce-cart-btn__txt em {
		font-style: normal;
		font-size: 12.5px;
		color: var(--ce-muted);
	}

	.ce-cart-btn__txt em .amount {
		font-size: inherit;
		color: inherit;
	}

	/* ---------- Nav satırı ---------- */
	.ce-nav {
		position: relative;
	}

	.ce-nav > .ce-nav__list {
		gap: 4px;
	}

	/* "TÜM KATEGORİLER" — koyu yeşil dolu buton. */
	.ce-nav__all {
		flex: 0 0 auto;
		display: flex;
		align-items: center;
		gap: 10px;
		height: 50px;
		margin-right: 18px;
		padding: 0 20px;
		/* Zemin ve hover BİRİNCİL renkten; metin otomatik kontrast. */
		background: var(--ce-primary, #12a150);
		border: 0;
		border-radius: 10px;
		color: var(--ce-on-primary, #fff);
		font-size: 14.5px;
		font-weight: 700;
		letter-spacing: 0.02em;
		cursor: pointer;
	}

	.ce-nav__all:hover {
		background: var(--ce-primary-hover, #0d7d3e);
		color: var(--ce-on-primary, #fff);
	}

	.ce-nav__allico svg,
	.ce-nav__allcaret {
		width: 18px;
		height: 18px;
		fill: none;
		stroke: currentColor;
		stroke-width: 1.8;
		stroke-linecap: round;
		stroke-linejoin: round;
	}

	.ce-nav__allico svg {
		fill: currentColor;
		stroke: none;
	}

	/* Menü öğesi ikonlarının ölçüsü artık TABAN kuralda (medya sorgusu
	   dışında); burada yalnız düzen kuralları kalır. */
	.ce-nav__list > li > a {
		display: inline-flex;
		align-items: center;
		font-size: 15px;
	}

	/* İndirim vurgusu: açık kırmızı hap, satırın sağına yaslanır. */
	.ce-nav__list > li.ce-nav-sale {
		margin-left: auto;
	}

		.ce-nav__list > li.ce-nav-sale > a {
		background: color-mix(in srgb, var(--ce-sale, #e0234e) 12%, #fff);
		color: var(--ce-sale, #e0234e);
		border-radius: 10px;
		padding: 10px 18px;
		font-weight: 600;
	}

	.ce-nav__list > li.ce-nav-sale > a:hover {
		background: color-mix(in srgb, var(--ce-sale, #e0234e) 20%, #fff);
		color: var(--ce-sale, #e0234e);
	}

	/* TÜM KATEGORİLER paneli — mevcut mega görünümüyle aynı dil. */
	.ce-allcats {
		position: absolute;
		top: calc(100% - 4px);
		left: var(--ce-container-pad);
		z-index: 70;
		display: grid;
		grid-template-columns: repeat(4, minmax(180px, 1fr));
		gap: 18px 28px;
		max-width: min(1000px, calc(100vw - 40px));
		max-height: 70vh;
		overflow-y: auto;
		padding: 20px 24px;
		background: #fff;
		border: 1px solid var(--ce-border);
		border-radius: 12px;
		box-shadow: 0 18px 40px rgba(0, 0, 0, 0.14);
	}

	.ce-allcats[hidden] {
		display: none;
	}

	.ce-allcats__head {
		display: block;
		margin-bottom: 6px;
		font-size: 14.5px;
		font-weight: 700;
		color: var(--ce-green-dark);
	}

	.ce-allcats__col ul {
		list-style: none;
		margin: 0;
		padding: 0;
		display: flex;
		flex-direction: column;
		gap: 3px;
	}

	.ce-allcats__col a {
		font-size: 13.5px;
		color: var(--ce-text);
	}

	.ce-allcats__col a:hover {
		color: var(--ce-green);
	}
}

/* ---------- Mobil üst şerit: yalnız indirim + rozet ---------- */
@media (max-width: 900px) {
	.ce-topbar__script,
	.ce-topbar__links {
		display: none;
	}

	.ce-topbar__inner {
		grid-template-columns: minmax(0, 1fr);
		min-height: 46px;
	}

	.ce-topbar__promo {
		grid-column: 1;
		font-size: 13px;
	}

	.ce-topbar__code {
		padding: 4px 10px;
		font-size: 11px;
	}
}

/* =========================================================
   HEADER — MOCKUP HİZALAMA DÜZELTMELERİ
   ========================================================= */

@media (min-width: 901px) {
	/* --- 2) Ana satır: logo sola, arama ortada esner, kartlar sağa --- */
	.ce-header__inner {
		gap: 20px;
	}

	.ce-header__inner .ce-logo {
		flex: 0 0 auto;
		margin-right: 8px;
	}

	.ce-header__inner .ce-search {
		flex: 1 1 auto;
		max-width: 760px;
		margin: 0 auto;
	}

	.ce-header__inner .ce-actions {
		flex: 0 0 auto;
		margin-left: auto;
	}

	/* --- 3) Arama: beyaz kutu (metin + "Tümü") + AYRI yeşil büyüteç --- */
	.ce-search form {
		display: flex;
		align-items: stretch;
		gap: 10px;
		background: none;
		border: 0;
		border-radius: 0;
		overflow: visible;
	}

	.ce-search__box {
		flex: 1 1 auto;
		min-width: 0;
		display: flex;
		align-items: stretch;
		background: #fff;
		border: 1px solid #dfe6e1;
		border-radius: 12px;
		overflow: visible;
	}

	.ce-search__box input[type="search"] {
		flex: 1 1 auto;
		min-width: 0;
		height: 56px;
		background: none;
		border: 0;
		border-radius: 12px 0 0 12px;
		padding: 0 16px;
		font-size: 15px;
	}

	.ce-search__box input[type="search"]:focus {
		border: 0;
		box-shadow: none;
	}

	/* Temizle (X) kutunun içinde, kategori bölümünün solunda durur. */
	.ce-search form .ce-search__clear {
		position: absolute;
		right: 150px;
	}

	/* Kategori bölümü: ince sol ayraç + "Tümü ⌄" (mutlak konum YOK —
	   .ce-search button kuralı bu butonu da yakalıyordu). */
	.ce-search form .ce-search__cat {
		position: relative;
		flex: 0 0 auto;
		display: flex;
		align-items: center;
		border-left: 1px solid #e6ece8;
	}

	.ce-search form .ce-search__catbtn {
		position: static;
		width: auto;
		height: auto;
		display: flex;
		align-items: center;
		gap: 6px;
		padding: 0 16px;
		background: none;
		border: 0;
		border-radius: 0;
		color: var(--ce-text);
		font-size: 14.5px;
		font-weight: 600;
		white-space: nowrap;
	}

	.ce-search form .ce-search__catbtn:hover {
		background: none;
		color: var(--ce-green-dark);
	}

	.ce-search form .ce-search__catbtn svg {
		width: 16px;
		height: 16px;
		fill: none;
		stroke: currentColor;
		stroke-width: 2;
	}

	/* Büyüteç: kutunun DIŞINDA, kendi yuvarlak köşeleriyle. */
	.ce-search form .ce-search__go {
		position: static;
		flex: 0 0 auto;
		width: 74px;
		height: 56px;
		border-radius: 12px;
		background: var(--ce-green);
	}

	/* Öneri paneli kutunun altında hizalanır. */
	.ce-sug {
		top: calc(100% + 6px);
		right: 84px;
	}

	/* --- 4) Alt nav TEK SATIR --- */
	.ce-nav {
		display: flex;
		align-items: center;
		gap: 18px;
		max-width: var(--ce-container-width);
		margin: 0 auto;
		padding: 8px var(--ce-container-pad);
	}

	.ce-nav > ul {
		flex: 1 1 auto;
		min-width: 0;
		margin: 0;
		padding: 0;
		max-width: none;
		justify-content: flex-start;
		flex-wrap: nowrap;
		/* Sığmazsa yatay kaydırma — ikinci satıra KIRILMAZ. */
		overflow-x: auto;
		overflow-y: visible;
		scrollbar-width: none;
	}

	.ce-nav > ul::-webkit-scrollbar {
		display: none;
	}

	.ce-nav > ul > li {
		flex: 0 0 auto;
	}

	.ce-nav__all {
		margin-right: 0;
	}

	/* Panel nav satırına göre konumlanır. */
	.ce-allcats {
		left: var(--ce-container-pad);
		top: calc(100% + 2px);
	}

	/* Dar masaüstünde aralıklar daralır. */
	@media (max-width: 1500px) {
		.ce-nav > ul > li > a {
			padding-left: 10px;
			padding-right: 10px;
		}

		.ce-header__inner .ce-search {
			max-width: 620px;
		}
	}
}

/* --- 1) Slogan: ilk söz sunucudan basılı gelir; kap daralınca kırpılmaz --- */
.ce-topbar__lines {
	min-width: 0;
}

.ce-topbar__script-line {
	/* JS hiç çalışmasa bile ilk söz görünür (sunucu is-active veriyor). */
	max-width: 100%;
}

/* Söz listesi boşsa ikon da basılmaz (kap zaten hidden). */
.ce-topbar__script[hidden] {
	display: none;
}

/* İndirim vurgusu menünün dışına alınır (JS): satırın sağ kenarında
   sabit kalır, menü kaydırılsa bile kaymaz. */
@media (min-width: 901px) {
	.ce-nav > .ce-nav-sale--pinned {
		flex: 0 0 auto;
		list-style: none;
		margin: 0;
		padding: 0;
	}

	.ce-nav > .ce-nav-sale--pinned > a {
		display: inline-flex;
		align-items: center;
		background: color-mix(in srgb, var(--ce-sale, #e0234e) 12%, #fff);
		color: var(--ce-sale, #e0234e);
		border-radius: 10px;
		padding: 10px 18px;
		font-weight: 600;
		white-space: nowrap;
	}

	.ce-nav > .ce-nav-sale--pinned > a:hover {
		background: color-mix(in srgb, var(--ce-sale, #e0234e) 20%, #fff);
		color: var(--ce-sale, #e0234e);
	}

	/* Menü öğeleri sığsın diye dar ekranda aralık daha da kısalır. */
	@media (max-width: 1700px) {
		.ce-nav > ul > li > a {
			padding-left: 9px;
			padding-right: 9px;
			font-size: 14.5px;
		}

		/* Ölçü tek yerden: kutu da SVG de değişkeni izler. */
		.ce-nav {
			--ce-nav-ico-size: 17px;
		}
	}
}

/* Mobil: sepet kartı yine küçük kare buton — metin bloğu basılmaz
   (rozet ikonun üstünde kalır, mobil düzen değişmez). */
@media (max-width: 900px) {
	.ce-cart-btn__txt {
		display: none;
	}

	.ce-cart-btn__ico {
		align-items: center;
		justify-content: center;
	}

	/* Rozet ikonun SAĞ-ÜST köşesine oturur. Çapa yine .ce-cart-btn__ico
	   (24px'lik ikon kutusu); mobil butonun 42px'lik gövdesi değil.

	   Ofset yarıçaptan biraz büyük seçildi (17/2 = 8.5 → 11): rozetin
	   merkezi köşenin bir tık DIŞINA düşer, yani ikonun köşesine biner —
	   masaüstündeki -8 değerine göre 3px sağa, 3px yukarı. Sağ kenar
	   butonun 2px dışına taşar, beyaz halkayla 4px; header'ın sağ
	   konteyner dolgusu (10px) bunu fazlasıyla karşılar, taşma olmaz.

	   Ölçü 18 → 17: 42px'lik butonda rozet ikonu ezmez. Rakam flex ile
	   ortalı; çift hanede kutu SOLA doğru genişler, sağ hiza korunur. */
	.ce-cart-btn {
		--ce-badge-size: 17px;
		--ce-badge-top: -11px;
		--ce-badge-right: -11px;
	}
}

/* =========================================================
   ÜST ŞERİT SLOGANI — KESİLME YOK
   Ellipsis kaldırıldı: uzun sözde font bir kademe küçülür ve gerekirse
   satır sarar; söz ASLA kırpılmaz. Ok/gezinme öğesi yoktur — rotasyon
   yalnız otomatik fade'dir.
   ========================================================= */

.ce-topbar__script {
	/* Özelleştirici boyutu üst sınır; dar ekranda kademeli küçülür. */
	/* Ayar üst sınırdır: geniş ekranda seçilen boyut aynen uygulanır,
	   dar ekranda kademeli küçülür. */
	font-size: min(var(--ce-script-fs, 15px), max(13px, 1.35vw));
	line-height: 1.25;
}

.ce-topbar__lines {
	min-width: 0;
}

.ce-topbar__script-line {
	white-space: normal;
	overflow: visible;
	text-overflow: clip;
}

@media (min-width: 901px) {
	.ce-topbar__inner {
		align-items: center;
		padding-top: 6px;
		padding-bottom: 6px;
	}
}

@media (max-width: 768px) {
	.ce-topbar__script {
		font-size: clamp(12px, 3.2vw, var(--ce-script-fs-m, 14px));
	}
}

/* =========================================================
   ÜST ŞERİT SLOGANI — FONT / ANİMASYON AYARLARI
   Varsayılan: düz yazı, animasyonsuz (yumuşak fade). El yazısı fontu
   seçilince .is-hand, yazılma animasyonu açılınca .is-anim sınıfı
   sunucudan gelir; eski daktilo efekti YALNIZ .is-anim ile çalışır.
   ========================================================= */

/* Yazılma animasyonu AÇIK: eski davranış (tek satır + clip-path). */
.ce-topbar__script.is-anim .ce-topbar__script-line {
	white-space: nowrap;
	overflow: hidden;
}

.ce-topbar__script.is-anim .ce-topbar__script-line.is-active {
	clip-path: inset(-30% 100% -30% 0);
	animation: ce-script-write 2.4s ease-out 0.2s forwards;
}

.ce-topbar__script.is-anim .ce-topbar__script-line.is-leaving {
	clip-path: none;
	animation: ce-script-fade 0.5s ease forwards;
}

@media (prefers-reduced-motion: reduce) {
	.ce-topbar__script.is-anim .ce-topbar__script-line.is-active {
		animation: none;
		clip-path: none;
	}
}

/* El yazısı fontta satır aralığı biraz daha ferah (kuyruklar kırpılmaz). */
.ce-topbar__script.is-hand {
	line-height: 1.4;
}

.ce-topbar__script.is-hand .ce-topbar__script-line {
	overflow: visible;
}

/* --- Dikey hiza: ikon ve söz aynı merkezde, şerit metne göre esner --- */
.ce-topbar__inner {
	min-height: 56px;
	height: auto;
	align-items: center;
}

.ce-topbar__script {
	align-items: center;
}

.ce-topbar__ico {
	align-self: center;
}

.ce-topbar__lines {
	align-items: center;
}

.ce-topbar__script-line {
	align-self: center;
}

/* --- Alt nav: METİN GİZLENMEZ; sığmazsa yatay kaydırma --- */
@media (min-width: 901px) {
	.ce-nav__label {
		display: inline;
		overflow: visible;
		text-overflow: clip;
		white-space: nowrap;
	}

	.ce-nav > ul > li > a {
		white-space: nowrap;
	}

	/* Kaydırma olduğu belli olsun: sağ kenarda yumuşak solma.
	   DİKKAT: bu solma eskiden listenin kendisine mask-image olarak
	   veriliyordu. Maske, elemanın VE TÜM ALT AĞACININ boyamasını maske
	   alanına kırpar — bu yüzden aşağı açılan alt/mega menü hiç
	   görünmüyordu (z-index veya overflow ile çözülemez, çünkü kırpma
	   maske katmanında olur). Solma artık listeyi maskelemeyen AYRI bir
	   örtü katmanı: .ce-nav üzerinde ::after, tıklamayı geçirir ve
	   panelin (z-index 500) altında kalır. */
	.ce-nav > ul {
		scroll-behavior: smooth;
	}

	/* Yalnız liste gerçekten kaydırılabilirken görünür (JS sınıfı). */
	.ce-nav.is-scrollfade::after {
		content: "";
		position: absolute;
		top: 8px;
		bottom: 8px;
		right: var(--ce-navfade-right, 0px);
		width: 26px;
		background: linear-gradient(to right, rgba(255, 255, 255, 0), #fff);
		pointer-events: none;
		z-index: 2;
	}
}

/* Alt nav sığdırma kademeleri (JS: .is-tight / .is-tighter).
   Metin ASLA gizlenmez; önce aralıklar, sonra ikonlar feda edilir. */
@media (min-width: 901px) {
	.ce-nav.is-tight > ul > li > a {
		padding-left: 7px;
		padding-right: 7px;
		font-size: 14px;
	}

	.ce-nav.is-tight {
		gap: 12px;
	}

	.ce-nav.is-tight .ce-nav__all {
		padding-left: 14px;
		padding-right: 14px;
		font-size: 13.5px;
	}

	/* Sığdırma kademesi: kutu ve boşluk BİRLİKTE küçülür (tek kaynak). */
	.ce-nav.is-smallico {
		--ce-nav-ico-size: 15px;
		--ce-nav-ico-gap: 5px;
	}

	/* Son çare: ikonlar kalkar — METİN her zaman kalır. */
	.ce-nav.is-noico .ce-nav__ico {
		display: none;
	}

	.ce-nav.is-noico > ul > li > a {
		padding-left: 6px;
		padding-right: 6px;
	}
}

/* =========================================================
   MEGA MENÜ — "Tüm Kategoriler" paneli (ÇiçekEvi > Mega Menü)
   4 sütun (liste ya da görsel kart) + altta güven rozetleri.
   Ayar boşsa bu blok hiç basılmaz; panel eski Ana Menü davranışına
   düşer.
   ========================================================= */

/* :not([hidden]) ZORUNLU — FOUC kaynağıydı.

   Bu kural MEDYA SORGUSU DIŞINDA (her genişlikte) geçerli; panelin
   "kapalı" ve "mutlak konumlu" hâlini veren kurallar ise yalnız
   @media (min-width: 901px) içinde. Guard olmadan `display: block`,
   öğedeki `hidden` özniteliğini (tarayıcı varsayılanı) EZİYORDU:
   tema CSS'i geç/kısmi uygulandığı her anda (kritik-CSS çıkarımı,
   LiteSpeed "CSS async", yavaş bağlantı) mega panelin ham içeriği
   akışın içinde, "TÜM KATEGORİLER" butonunun hemen altında görünüp
   CSS tamamlanınca kayboluyordu. Aynı boşluk 769–900px aralığında
   (nav görünür, 901px kuralları yok) panelin sürekli açık kalmasına
   da yol açıyordu.

   Bu kalıp temada zaten var: .ce-mnav:not([hidden]) — aynısı. */
.ce-allcats--mega:not([hidden]) {
	display: block;
	grid-template-columns: none;
	padding: 0;
	max-width: min(1400px, calc(100vw - 40px));
}

.ce-mega__cols {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0;
}

.ce-mega__col {
	min-width: 0;
	padding: 20px 22px;
	border-right: 1px solid var(--ce-border);
}

.ce-mega__col:last-child {
	border-right: 0;
}

.ce-mega__title {
	display: flex;
	align-items: center;
	gap: 9px;
	margin: 0 0 14px;
	font-size: 15.5px;
	font-weight: 700;
	color: var(--ce-green-dark);
}

.ce-mega__titleico {
	display: inline-flex;
	width: 30px;
	height: 30px;
	align-items: center;
	justify-content: center;
	border-radius: 9px;
	background: var(--ce-green-light);
}

.ce-mega__titleico svg,
.ce-mega__ico svg {
	width: 17px;
	height: 17px;
	fill: none;
	stroke: var(--ce-green);
	stroke-width: 1.6;
	stroke-linecap: round;
	stroke-linejoin: round;
}

/* ---------- Liste sütunu ---------- */
.ce-mega__list {
	list-style: none;
	margin: 0;
	padding: 2px 0;
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.ce-mega__list a {
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 8px 10px;
	border: 1px solid transparent;
	border-radius: 10px;
	font-size: 14px;
	color: var(--ce-text);
	transition: background 0.14s ease, border-color 0.14s ease;
}

.ce-mega__list a:hover {
	background: var(--ce-green-light);
	border-color: #d7ecdf;
	color: var(--ce-green-dark);
}

.ce-mega__ico {
	flex: 0 0 auto;
	width: 34px;
	height: 34px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 10px;
	background: var(--ce-green-light);
	overflow: hidden;
}

.ce-mega__ico img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.ce-mega__name {
	flex: 1 1 auto;
	min-width: 0;
	overflow-wrap: anywhere;
}

.ce-mega__go {
	flex: 0 0 auto;
	width: 15px;
	height: 15px;
	stroke: var(--ce-muted);
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.ce-mega__more {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-top: 12px;
	padding: 6px 10px;
	font-size: 14px;
	font-weight: 700;
	color: var(--ce-green-dark);
}

.ce-mega__more svg {
	width: 15px;
	height: 15px;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.ce-mega__more:hover {
	color: var(--ce-green);
}

.ce-mega__cards {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

/* Kart: kategori görseli kartın TAMAMINI kaplar; ad görselin üstünde
   sol altta, alttan yukarı koyu degrade sayesinde her görselde okunur. */
.ce-nav .ce-mega__card {
	position: relative;
	display: flex;
	align-items: flex-end;
	min-height: 132px;
	border-radius: 14px;
	background: var(--ce-green-light);
	box-shadow: 0 1px 3px rgba(23, 51, 31, 0.08);
	overflow: hidden;
	transition: box-shadow 0.18s ease;
}

.ce-nav .ce-mega__card:hover {
	box-shadow: 0 6px 18px rgba(23, 51, 31, 0.18);
}

.ce-mega__cardimg {
	position: absolute;
	inset: 0;
	display: block;
	overflow: hidden;
}

.ce-mega__cardimg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.25s ease;
}

.ce-mega__card:hover .ce-mega__cardimg img {
	transform: scale(1.03);
}

/* Okunabilirlik degradesi — yalnız görselli kartta. */
.ce-mega__card:not(.is-noimg)::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(
		to top,
		rgba(10, 32, 20, 0.68) 0%,
		rgba(10, 32, 20, 0.28) 42%,
		rgba(10, 32, 20, 0) 72%
	);
	transition: background 0.18s ease;
	pointer-events: none;
}

.ce-mega__card:not(.is-noimg):hover::after {
	background: linear-gradient(
		to top,
		rgba(10, 32, 20, 0.78) 0%,
		rgba(10, 32, 20, 0.38) 45%,
		rgba(10, 32, 20, 0.06) 75%
	);
}

.ce-mega__cardname {
	position: relative;
	z-index: 2;
	display: block;
	width: 100%;
	margin: 0;
	padding: 12px 14px;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.25;
	color: #fff;
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.45);
	overflow-wrap: anywhere;
}

/* Görselsiz kategori: açık yeşil zemin + ortada ikon + koyu yeşil ad. */
.ce-nav .ce-mega__card.is-noimg {
	align-items: flex-end;
	justify-content: center;
}

.ce-mega__card.is-noimg .ce-mega__cardimg {
	display: flex;
	align-items: center;
	justify-content: center;
	bottom: 34px;
}

.ce-mega__card.is-noimg .ce-mega__cardimg svg {
	width: 34px;
	height: 34px;
	fill: none;
	stroke: var(--ce-green);
	stroke-width: 1.5;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.ce-mega__card.is-noimg .ce-mega__cardname {
	color: var(--ce-green-dark);
	text-align: center;
	text-shadow: none;
}


/* ---------- Alt güven rozetleri ---------- */
.ce-mega__badges {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
	padding: 16px 22px;
	border-top: 1px solid var(--ce-border);
	background: var(--ce-bg-soft);
}

.ce-mega__badge {
	display: flex;
	align-items: center;
	gap: 11px;
	min-width: 0;
}

.ce-mega__badgeico {
	flex: 0 0 auto;
	width: 38px;
	height: 38px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: var(--ce-green-light);
}

.ce-mega__badgeico svg {
	width: 19px;
	height: 19px;
	fill: none;
	stroke: var(--ce-green-dark);
	stroke-width: 1.6;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.ce-mega__badgetxt {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}

.ce-mega__badgetxt strong {
	font-size: 14px;
	font-weight: 700;
	color: var(--ce-text);
}

.ce-mega__badgetxt em {
	font-style: normal;
	font-size: 12px;
	line-height: 1.35;
	color: var(--ce-muted);
}

/* ---------- Mobil: sütunlar alt alta ---------- */
@media (max-width: 900px) {
	.ce-mega__cols,
	.ce-mega__badges {
		grid-template-columns: minmax(0, 1fr);
	}

	.ce-mega__col {
		border-right: 0;
		border-bottom: 1px solid var(--ce-border);
	}

	.ce-mega__col:last-child {
		border-bottom: 0;
	}

	/* Mobilde kartlar tek sütun; görsel yine tam kaplar. */
	.ce-nav .ce-mega__card {
		min-height: 118px;
	}
}

/* Asistan pill'i her genişlikte birincil renkten beslenir (mobilde de
   sabit koyu zemin kalmaz). Geometri ana blokta, renk burada. */
.ce-header .ce-assist-btn {
	background: color-mix(in srgb, var(--ce-primary, #12a150) 10%, #fff);
	border: 1px solid color-mix(in srgb, var(--ce-primary, #12a150) 26%, #fff);
	color: var(--ce-primary, #12a150);
}

.ce-header .ce-assist-btn:hover,
.ce-header .ce-assist-btn:focus-visible {
	background: color-mix(in srgb, var(--ce-primary, #12a150) 18%, #fff);
	border-color: color-mix(in srgb, var(--ce-primary, #12a150) 40%, #fff);
	color: var(--ce-primary, #12a150);
}

.ce-header .ce-assist-btn svg {
	stroke: var(--ce-primary, #12a150);
}

/* =========================================================
   ARAMA KUTUSU — SADE: kategori dropdown'u yok, büyüteç kutunun İÇİNDE
   Tek parça beyaz kutu; büyüteç sağ uçta ikon buton (ayrı yeşil buton
   kaldırıldı). İkon rengi birincil renk değişkeninden.
   ========================================================= */

@media (min-width: 901px) {
	.ce-search form {
		gap: 0;
	}

	.ce-search__box {
		position: relative;
		border-radius: 12px;
	}

	.ce-search__box input[type="search"] {
		/* Sağda büyüteç için yer bırakılır. */
		border-radius: 12px;
		padding-right: 56px;
	}

	/* Temizle (X) büyütecin solunda. */
	.ce-search form .ce-search__clear {
		position: absolute;
		right: 52px;
	}

	/* Büyüteç: kutunun içinde, zeminsiz ikon buton. */
	.ce-search form .ce-search__go {
		position: absolute;
		right: 4px;
		top: 50%;
		transform: translateY(-50%);
		width: 44px;
		height: 44px;
		display: flex;
		align-items: center;
		justify-content: center;
		background: none;
		border: 0;
		border-radius: 10px;
		cursor: pointer;
		transition: background 0.15s ease;
	}

	.ce-search form .ce-search__go:hover {
		background: color-mix(in srgb, var(--ce-primary, #12a150) 10%, #fff);
	}

	.ce-search form .ce-search__go svg {
		width: 21px;
		height: 21px;
		fill: var(--ce-primary, #12a150);
	}

	/* Öneri paneli kutuyla hizalı. */
	.ce-sug {
		right: 0;
	}
}

/* =========================================================
   ARAMA KUTUSU İÇİ İKON BUTONLARI (X + büyüteç)
   İkisi de sade: dolu zemin yok, ikon tonu nötr/birincil. Kurallar
   breakpoint dışıdır ki mobilde de aynı dil geçerli olsun.
   ========================================================= */

.ce-search form .ce-search__clear {
	width: 40px;
	height: 40px;
	top: 50%;
	bottom: auto;
	transform: translateY(-50%);
	/* Dolu koyu zemin YOK: şeffaf + gri ikon (placeholder tonu). */
	background: transparent;
	border: 0;
	border-radius: 50%;
	color: #9aa0a6;
	transition: background 0.15s ease, color 0.15s ease;
}

.ce-search form .ce-search__clear:hover,
.ce-search form .ce-search__clear:focus-visible {
	/* Nötr, hafif gri daire — marka rengiyle boyanmaz. */
	background: rgba(23, 26, 30, 0.08);
	color: var(--ce-text, #2d2d2d);
}

.ce-search form .ce-search__clear svg {
	width: 15px;
	height: 15px;
	fill: none;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
}

/* Büyüteç de her genişlikte sade ikon (mobilde dolu yeşil kare kalmaz). */
.ce-search form .ce-search__go {
	position: absolute;
	right: 4px;
	top: 50%;
	bottom: auto;
	transform: translateY(-50%);
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: none;
	border: 0;
	border-radius: 50%;
	cursor: pointer;
	transition: background 0.15s ease;
}

.ce-search form .ce-search__go:hover {
	background: color-mix(in srgb, var(--ce-primary, #12a150) 10%, #fff);
}

.ce-search form .ce-search__go svg {
	width: 21px;
	height: 21px;
	fill: var(--ce-primary, #12a150);
}

/* =========================================================
   ANA SATIR BOŞLUKLARI — logo | arama | sağ kartlar
   Üç bölge birbirine yapışmasın: aralarda en az 32px nefes payı.
   Arama esneyen orta alan olarak kalır, boşluğu kendi genişliğinden
   verir. Sağ kartların kendi aralığı korunur. Yalnız masaüstü.
   ========================================================= */

@media (min-width: 901px) {
	.ce-header__inner {
		gap: 32px;
	}

	.ce-header__inner .ce-logo {
		margin-right: 0;
	}

	.ce-header__inner .ce-search {
		/* Komşulara yapışmaması için kendi payı; ortada esner. */
		margin-left: 8px;
		margin-right: 8px;
		max-width: 700px;
	}

	/* Sağ kartların kendi aralığı değişmez. */
	.ce-header__inner .ce-actions {
		gap: 10px;
	}
}

@media (min-width: 901px) and (max-width: 1500px) {
	.ce-header__inner {
		gap: 26px;
	}

	.ce-header__inner .ce-search {
		max-width: 560px;
		margin-left: 6px;
		margin-right: 6px;
	}
}

/* =========================================================
   HEADER — ÜÇ KATMAN DA 1500px KONTEYNERDE
   Üst şerit (.ce-topbar__inner), ana satır (.ce-header__inner) ve alt nav
   (.ce-nav) AYNI ölçüleri kullanır: max-width: var(--ce-container-width)
   (1500px) + margin: 0 auto + padding: 0 var(--ce-container-pad) — yani
   site geneliyle (arşiv, checkout) birebir aynı hiza.

   Bu blok önceki İKİ kararı da geri alır: ne 100vw/tam genişlik içerik,
   ne de "zemin tam genişlik + içerik konteynerde" padding hesabı kaldı.
   .ce-nav'ın kendi kuralı (max-width + margin: auto) yeniden geçerli;
   burada yalnız öğe dağılımı tanımlanır.
   ========================================================= */

@media (min-width: 901px) {
	/* Menü öğeleri 1500px'lik konteyner içinde DAĞILIR: her öğe artan
	   boşluktan eşit pay alır (grow 1) ama ASLA daralmaz (shrink 0) —
	   sığmadığında doğal genişliğinde kalır ve liste kendi içinde yatay
	   kayar (gövdede yatay scroll olmaz).
	   Bağlantı da esner ve içeriğini ortalar: öğeler arasındaki ayraç
	   çizgi iki metnin ortasında durur, bir metne yapışmaz. */
	.ce-nav > .ce-nav__list > li {
		flex: 1 0 auto;
	}

	.ce-nav > .ce-nav__list > li > a {
		flex: 1 1 auto;
		justify-content: center;
	}

	/* ---------- ALT NAV: ÇİZGİLER TAM GENİŞLİK, İÇERİK 1500px ----------
	   Önceki "çizgiler de 1500px'te bitsin" kararının YERİNE geçer ve
	   YALNIZ menü satırını kapsar. İki ince ayırıcı ekranın sol kenarından
	   sağ kenarına uzanır:

	   - ÜST çizgi: .ce-header'ın border-bottom'ı (zemin katmanı 0..100%).
	     4.5.5'te .ce-header__inner'a taşınmıştı; geri alınır.
	   - ALT çizgi: .ce-nav'ın kendi border-bottom'ı. Bunun için .ce-nav
	     yeniden tam genişlik ZEMİN katmanı olur.

	   İçerik hizası DEĞİŞMEZ: nav artık genişlese de yatay dolgusu
	   "kalan boşluğun yarısı + standart konteyner dolgusu" olarak
	   hesaplanır, yani içerik tam olarak 1500px konteynerin bulunduğu
	   yerde durur (üst şerit ve ana satırla birebir). Yüzde, gövde
	   genişliğine göre çözülür — 100vw DEĞİL — bu yüzden kaydırma çubuğu
	   genişliği hesaba katılır ve gövdede yatay scroll oluşmaz.

	   Üst şeridin (.ce-topbar) kendi alt çizgisi yoktur; ona dokunulmadı. */
	.ce-header {
		border-bottom: 1px solid var(--ce-border);
	}

	.ce-header__inner {
		border-bottom: 0;
	}

	.ce-nav {
		box-sizing: border-box;
		max-width: none;
		margin: 0;
		padding-left: max(
			var(--ce-container-pad),
			calc((100% - var(--ce-container-width)) / 2 + var(--ce-container-pad))
		);
		padding-right: max(
			var(--ce-container-pad),
			calc((100% - var(--ce-container-width)) / 2 + var(--ce-container-pad))
		);
	}

	/* Panel de nav İÇERİĞİYLE aynı sol kenardan açılır: yüzde,
	   konumlandıran .ce-nav'ın dolgu kutusuna göre çözülür. */
	.ce-allcats {
		left: max(
			var(--ce-container-pad),
			calc((100% - var(--ce-container-width)) / 2 + var(--ce-container-pad))
		);
	}

	/* ---------- AÇILIR/MEGA PANEL KIRPILMASIN ----------
	   .ce-nav__list yatay kaydırma için overflow-x: auto taşıyor. CSS'te
	   overflow'un yalnız bir ekseni "visible" kalamaz: diğer eksen
	   kaydırma değeri alınca "visible" da otomatik olarak kaydırmaya
	   döner. Bu yüzden liste DİKEYDE de kırpan bir kutu oluyor ve aşağı
	   açılan panel (kapsayıcı bloğu, listenin içindeki öğeydi) görünmez
	   hâle geliyordu.

	   Çözüm: üst seviye öğe position: static olur; panelin kapsayıcı
	   bloğu listenin DIŞINDAKİ .ce-nav'a (position: relative,
	   overflow: visible) çıkar. Kapsayıcı bloğu kaydırıcının dışında
	   kalan mutlak konumlu öğe o kaydırıcı tarafından KIRPILMAZ.
	   Yatay konumu theme.js yazar (--ce-sub-left), böylece panel yine
	   kendi öğesinin altında açılır ve menü kaydırılınca onu izler.
	   Alt seviye (torun) menüler listenin içinde değil panelin içinde
	   olduğu için kendi position: relative düzenlerini korur. */
	.ce-nav > .ce-nav__list > li.menu-item-has-children {
		position: static;
	}

	.ce-nav > .ce-nav__list > li > .sub-menu {
		top: 100%;
		left: var(--ce-sub-left, 0px);
	}

	/* Dikey kaydırma çubuğu çıkmasın; panel zaten kutunun dışında. */
	.ce-nav > .ce-nav__list {
		overflow-y: hidden;
	}

	/* ---------- HOVER KÖPRÜSÜ + GECİKMELİ KAPANMA ----------
	   Panel nav'ın alt kenarına oturduğu için öğenin altıyla panelin üstü
	   arasında birkaç piksellik boşluk kalıyor; fare oradan geçerken
	   :hover kopup panel kapanıyordu.

	   a) GÖRÜNMEZ KÖPRÜ: panelin üst kenarına, öğeye kadar uzanan
	      tıklanamaz bir şerit eklenir. Panel öğenin DOM ÇOCUĞU olduğu
	      için köprünün üstündeyken hover zinciri hiç kopmaz.
	   b) GECİKMELİ KAPANMA: theme.js fare öğeden/panelden çıkınca paneli
	      hemen kapatmaz (~200ms); tekrar girilirse iptal eder. Açık durum
	      .is-hoveropen sınıfıyla tutulur — JS çalışmasa bile saf :hover
	      davranışı yedek olarak yerinde kalır. */
	.ce-nav > .ce-nav__list > li > .sub-menu::before {
		content: "";
		position: absolute;
		left: 0;
		right: 0;
		bottom: 100%;
		height: 16px;
	}

	.ce-nav > .ce-nav__list > li.is-hoveropen > .sub-menu {
		display: block;
	}

	.ce-nav > .ce-nav__list > li.is-hoveropen > .sub-menu.ce-meganav {
		display: grid;
	}

	.ce-nav > .ce-nav__list > li.is-hoveropen > a::after {
		transform: translateY(2px) rotate(225deg);
	}
}
