/* ==========================================================================
   Dikmen Bal — modern tema katmani
   So Cakeshop (masaustu) + So Mobile (mobil) temalarinin USTUNE yuklenir.
   Tema dosyalarina dokunmaz; admin > Dikmen Modulleri > Site Iyilestirmeleri
   "Modern tema katmani" kapatilirsa site eski gorunume doner.
   ========================================================================== */

:root {
	--dk-green: #116735;
	--dk-green-dark: #0a3b1e;
	--dk-green-soft: #edf8f1;
	--dk-honey: #f2b01e;
	--dk-honey-ink: #4a2c00;
	--dk-ink: #1f2a22;
	--dk-text: #3b4540;
	--dk-muted: #5b6660;
	--dk-line: #e6e9e4;
	--dk-cream: #faf7f0;
	--dk-radius: 12px;
	--dk-radius-sm: 8px;
	--dk-shadow: 0 1px 2px rgba(16, 40, 24, .06), 0 4px 14px rgba(16, 40, 24, .06);
	--dk-shadow-hover: 0 2px 4px rgba(16, 40, 24, .08), 0 12px 28px rgba(16, 40, 24, .12);
	--dk-font: "Poppins", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
}

/* ---------- Tipografi: tek aile, okunur boyut ---------- */
body,
#wrapper,
button,
input,
select,
textarea,
.font-custom,
.modtitle,
.modtitle span,
.tilte h2,
.tilte h3,
.tilte p,
h1, h2, h3, h4, h5, h6 {
	font-family: var(--dk-font) !important;
}

body {
	color: var(--dk-text);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}

/* Gövde metni 13px -> 15px (35+ kitle icin) */
#content p,
#content li,
.tab-content,
.tab-content p,
.product-description,
.article-description,
.article-description p,
.box-footer li a,
.footer-container p {
	font-size: 15px;
	line-height: 1.65;
}

/* El yazisi basliklar -> sade, guclu basliklar */
.modtitle,
.modtitle span,
h3.font-custom,
.font-custom {
	font-weight: 700 !important;
	letter-spacing: -.01em;
	color: var(--dk-ink);
	font-style: normal !important;
}
.so-extraslider-ltr > .modtitle,
.so-latest-blog > .modtitle {
	font-size: 26px !important;
	line-height: 1.25;
}
.bn .cont h3.font-custom { font-size: 24px !important; line-height: 1.25; }
.socials h3.font-custom { font-size: 20px !important; color: #fff; }

/* Ana slider buyuk baslik (Lobster) */
.sohomeslider-description .tilte h2,
.modtitle-sl11 h2 {
	font-weight: 800 !important;
	letter-spacing: -.02em;
	text-transform: none !important;
	line-height: 1.1 !important;
	text-shadow: 0 2px 12px rgba(0, 0, 0, .35);
}
.sohomeslider-description .tilte h3,
.sohomeslider-description .tilte p { text-shadow: 0 1px 8px rgba(0, 0, 0, .35); }

/* ---------- Butonlar ---------- */
.btn,
.btn-button,
input[type="button"].btn,
input[type="submit"].btn {
	border-radius: var(--dk-radius-sm) !important;
	transition: background-color .15s ease, border-color .15s ease, color .15s ease, box-shadow .15s ease;
}
#button-cart,
.btn-mega,
.product-detail #button-cart {
	min-height: 48px;
	padding-left: 28px !important;
	padding-right: 28px !important;
	background: var(--dk-green) !important;
	border-color: var(--dk-green) !important;
	color: #fff !important;
	font-weight: 700;
	letter-spacing: .02em;
}
#button-cart:hover,
#button-cart:focus { background: var(--dk-green-dark) !important; border-color: var(--dk-green-dark) !important; }

/* Klavye odagi belirgin (WCAG 2.4.7) */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
.btn:focus-visible {
	outline: 3px solid rgba(17, 103, 53, .45) !important;
	outline-offset: 2px;
}

/* Bal sarisi zeminde beyaz yazi okunmuyordu (1.9:1) -> koyu yazi (7:1) */
.bn .cont .btn,
.bn .cont a[class*="btn"] { color: var(--dk-honey-ink) !important; font-weight: 600; }

/* ---------- Form alanlari ---------- */
.form-group > .form-control,
.form-group > div > .form-control,
.form-group > div > select.form-control {
	min-height: 44px;
	border: 1px solid #d5dbd6 !important;
	border-radius: var(--dk-radius-sm) !important;
	box-shadow: none !important;
	color: var(--dk-ink);
	font-size: 15px;
}
textarea.form-control { min-height: 96px; }
.form-group .form-control:focus {
	border-color: var(--dk-green) !important;
	box-shadow: 0 0 0 3px rgba(17, 103, 53, .15) !important;
}
.control-label { color: var(--dk-ink); font-weight: 500; }

/* ---------- Urun kartlari (masaustu listeler + kategori) ---------- */
.product-layout .product-item-container {
	overflow: hidden;
	border: 1px solid var(--dk-line) !important;
	border-radius: var(--dk-radius) !important;
	background: #fff;
	box-shadow: var(--dk-shadow);
	transition: box-shadow .2s ease, transform .2s ease;
}
.product-layout .product-item-container:hover {
	box-shadow: var(--dk-shadow-hover);
	transform: translateY(-2px);
}
.product-layout .product-item-container .left-block img { transition: transform .35s ease; }
.product-layout .product-item-container:hover .left-block img { transform: scale(1.03); }

.product-layout .right-block h4,
.product-layout .caption h4 {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	min-height: 2.7em;
	margin-bottom: 6px;
	font-size: 16px !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;
	white-space: normal !important;
	text-overflow: clip !important;
}
.product-layout .right-block h4 a,
.product-layout .caption h4 a { color: var(--dk-ink) !important; font-size: inherit !important; }
.product-layout .right-block h4 a:hover { color: var(--dk-green) !important; }

/* Fiyat: indirimli yesil ve kalin, eski fiyat gri */
.price .price-new,
.price-new,
.product_page_price .price-new,
#price-special {
	color: var(--dk-green) !important;
	font-weight: 700 !important;
}
.product-layout .price .price-new { font-size: 17px; }
.product_page_price .price-new,
.product_page_price #price-special { font-size: 28px !important; line-height: 1.2; }

/* Kart fiyat satiri tasmasin, kartlar esit yukseklikte kalsin */
.product-layout .price {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: baseline;
	gap: 2px 8px;
}
.product-layout .price .price-old { font-size: 12px; }
.price .price-old,
.price-old { color: var(--dk-muted) !important; font-weight: 400; }

/* Yorumu olmayan urunlerde bos yildizlar */
.rating-box:not(:has(i.fa-star)),
.rate-history:not(:has(i.fa-star)),
.box-review:not(:has(i.fa-star)),
.product-layout .rating:not(:has(i.fa-star)) { display: none !important; }

/* ---------- Bolum ritmi ---------- */
.so-extraslider-ltr,
.so-latest-blog { margin-bottom: 8px; }

/* Blog kartlarindaki soluk tarih/yorum metni ve acik gri paragraflar (AA 4.5:1) */
.media-date-added,
.media-comment,
#content > p { color: var(--dk-muted) !important; }

/* ---------- Header sadelestirme ---------- */
/* Gereksiz "Dosta Layik Bal'a Hosgeldiniz !" satiri */
.header-top .welcome-msg { display: none !important; }
/* Kirmizi telefon -> koyu, okunur */
.telephone .hotline a,
.telephone .hotline .content,
.telephone .shipping .content { color: var(--dk-ink) !important; font-weight: 600; }

/* Menu ikonlari tek olcu; stil disi Blog (Blogger logosu) ve Iletisim ikonu bal tonuna */
.megamenu > li > a strong img,
ul.megamenu > li > a img {
	width: 36px !important;
	height: 36px !important;
	object-fit: contain;
}
.megamenu > li > a img[data-src*="menu-icon-blog"],
.megamenu > li > a img[src*="menu-icon-blog"],
.megamenu > li > a img[data-src*="menu-icon-iletisim"],
.megamenu > li > a img[src*="menu-icon-iletisim"] {
	filter: grayscale(1) sepia(1) saturate(2.4) hue-rotate(-12deg) brightness(.95);
}
.megamenu > li > a strong { font-weight: 500; }
.megamenu > li > a:hover strong { color: var(--dk-green) !important; }

/* Hero: ust seritteki kampanya mesajinin tekrari olan slayt yazisi */
.sohomeslider-description { display: none !important; }

/* Blog kartlarinda "0 Yorum" */
.so-latest-blog .media-comment { display: none !important; }

/* Footer: OpenCart'tan kalan, kullanilmayan linkler */
.box-footer a[href*="product/manufacturer"],
.box-footer a[href*="account/voucher"],
.box-footer a[href*="affiliate"] { display: none !important; }
.box-footer li:has(> a[href*="product/manufacturer"]),
.box-footer li:has(> a[href*="account/voucher"]),
.box-footer li:has(> a[href*="affiliate"]) { display: none !important; }

/* ---------- Footer ---------- */
.box-footer .modtitle,
.box-footer .module > h3.modtitle,
.footer-container .modtitle { font-size: 17px !important; letter-spacing: 0; }
#column-left .modtitle,
#column-right .modtitle,
aside .module > h3.modtitle { font-size: 16px !important; }
.box-footer li a { color: var(--dk-text); }
.box-footer li a:hover { color: var(--dk-green); }

/* ==========================================================================
   Mobil sablon (So Mobile)
   ========================================================================== */
body[class*="mobilelayout"] { font-size: 15px; color: var(--dk-text); }

/* Turuncu fiyatlar -> marka yesili */
body[class*="mobilelayout"] .price,
body[class*="mobilelayout"] .price-new,
body[class*="mobilelayout"] p.price,
body[class*="mobilelayout"] .product_page_price { color: var(--dk-green) !important; }
body[class*="mobilelayout"] .price-old { color: var(--dk-muted) !important; }

/* Neon yesil/koyu butonlar -> marka renkleri */
body[class*="mobilelayout"] .btn-default.inverse,
body[class*="mobilelayout"] .btn-default.grid.active,
body[class*="mobilelayout"] .btn-default.list.active {
	background: var(--dk-green) !important;
	border-color: var(--dk-green) !important;
	color: #fff !important;
}
body[class*="mobilelayout"] .btn-default.list:not(.active),
body[class*="mobilelayout"] .btn-default.grid:not(.active) {
	background: #fff !important;
	border: 1px solid #d5dbd6 !important;
	color: var(--dk-ink) !important;
}

/* Mobil arac cubugu (gorunum / filtrele / sirala) ayni yukseklik */
body[class*="mobilelayout"] .btn-default.grid,
body[class*="mobilelayout"] .btn-default.list,
body[class*="mobilelayout"] .open-sidebar,
body[class*="mobilelayout"] #input-sort,
body[class*="mobilelayout"] #input-limit { min-height: 44px; height: 44px; }

/* Mobil kartlar */
body[class*="mobilelayout"] .product-layout .product-item-container,
body[class*="mobilelayout"] .product-thumb {
	border-radius: var(--dk-radius) !important;
}
body[class*="mobilelayout"] .product-layout .right-block h4,
body[class*="mobilelayout"] .product-layout .caption h4,
body[class*="mobilelayout"] .product-thumb .caption h4 {
	font-size: 15px !important;
	min-height: 2.7em;
}
/* Bal icin anlamsiz "karsilastir" ikonu mobil kartlardan kalkar */
body[class*="mobilelayout"] .product-layout .compare,
body[class*="mobilelayout"] .product-thumb .compare { display: none !important; }

/* Mobil modul basliklari */
body[class*="mobilelayout"] .module > h3.modtitle,
body[class*="mobilelayout"] .modtitle {
	font-size: 18px !important;
	letter-spacing: 0;
	text-transform: none !important;
}

/* Alt sekme cubugu: etkin sekme yesil */
body[class*="mobilelayout"] .bar-tab .tab-item.active,
body[class*="mobilelayout"] .bar-tab .tab-item.active .tab-label,
body[class*="mobilelayout"] .bar-tab .tab-item.active .icon { color: var(--dk-green) !important; }

@media (prefers-reduced-motion: reduce) {
	.product-layout .product-item-container,
	.product-layout .product-item-container .left-block img { transition: none; }
	.product-layout .product-item-container:hover,
	.product-layout .product-item-container:hover .left-block img { transform: none; }
}
