/* ==========================================================================
   mobil.css - Mobil / tablet iyileştirmeleri (tüm sayfalar ve alt sayfalar)
   main.php ve yeni.css'ten sonra yüklenir. Kurallar media query içindedir; masaüstü görünümü değişmez
   (yalnız "0. Genel güvenlik" bölümü tüm ekranlarda zararsız sınırlar koyar).
   Bölümler: 0 genel · 1 üst alan/menü · 2 gezinti · 3 başlıklar · 4 ürün listeleri · 5 ürün detay · 6 sepet/ödeme
             7 hesap · 8 formlar · 9 içerik sayfaları · 10 footer · 11 sabit çubuklar/çerez · 12 çok küçük/yatay ekran
   ========================================================================== */

/* ---- 0. Genel güvenlik ---- */
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
img, svg, video, canvas, iframe, embed, object { max-width: 100%; }
/* yatay kayan WOW animasyonları (fadeInLeft/Right) yüklenirken sayfayı geçici olarak genişletiyordu */
html, body { overflow-x: clip; }
a, button, .btn, .button, [role="button"], input[type="submit"], label[for] { touch-action: manipulation; }
.single-content, .entry-content, .page-content { overflow-wrap: anywhere; }
.single-content img, .entry-content img, .page-content .entry-main-content img { max-width: 100%; height: auto !important; }
.single-content table, .entry-content table, .entry-main-content table, .page-content .content-table table {
	display: block; max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch;
}
.single-content iframe[src*="youtube"], .single-content iframe[src*="youtu.be"], .single-content iframe[src*="vimeo"],
.entry-content iframe[src*="youtube"], .entry-content iframe[src*="vimeo"], .entry-main-content iframe[src*="youtube"] {
	width: 100% !important; height: auto !important; aspect-ratio: 16 / 9;
}

/* dokunmatik ekranda "hover" efektleri dokunuştan sonra takılı kalmasın */
@media (hover: none) {
	.hover-up:hover, .product-cart-wrap:hover, .banner-img:hover { transform: none !important; }
}

/* ---- Tablet ve altı (<= 991px) ---- */
@media (max-width: 991px) {
	.section-padding { padding-top: 40px; padding-bottom: 40px; }
	.page-header.breadcrumb-wrap { padding: 14px 0; }
}

/* ---- Telefon (<= 767px) ---- */
@media (max-width: 767px) {
	/* 1. Üst alan / menü */
	/* min-height: yazı tipi yüklenince 2 satırdan 1 satıra inen bar, tüm sayfayı kaydırıyordu (CLS) */
	.mobile-promotion { padding: 6px 12px; min-height: 42px; display: flex; align-items: center; justify-content: center; }
	.mobile-promotion span { display: block; font-size: 12.5px; line-height: 1.35; }
	.header-area .header-bottom { padding: 10px 0; }
	.header-area .header-bottom .logo img { max-height: 46px; width: auto; }
	/* dokunma alanı: görünüm değişmeden simge çevresinde 44px'lik görünmez alan */
	.header-area .header-action-2 .header-action-icon-2 > a::after { content: ""; position: absolute; top: -10px; bottom: -10px; left: -6px; right: -6px; }
	.header-area .header-action-icon-2.d-block.d-lg-none:not(.header-action-right) { padding: 10px 4px; cursor: pointer; }
	.mobile-header-wrapper-style { width: min(380px, 92vw); }
	.mobile-header-wrapper-style .mobile-header-wrapper-inner { padding-bottom: 80px; }
	.mobile-menu li a, .mobile-menu li > a { padding-top: 12px; padding-bottom: 12px; }
	.mobile-header-content-area .mobile-header-info-wrap .single-mobile-header-info a { display: flex; align-items: center; min-height: 44px; }
	.mobile-lang-wrap { padding: 14px 0 6px; }
	.mobile-lang-wrap .mobile-lang-satir { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-bottom: 10px; }
	.mobile-lang-wrap .mobile-lang-bas { font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; color: #7e7e7e; flex: 0 0 100%; }
	.mobile-lang-wrap .mobile-lang-btn, .mobile-lang-wrap ul.language-dropdown li a {
		display: inline-flex; align-items: center; gap: 6px; min-height: 40px; padding: 0 14px; border: 1px solid #e2e6ee; border-radius: 22px;
		background: #fff; color: #253d4e; font-size: 13px; font-weight: 600; text-decoration: none;
	}
	.mobile-lang-wrap .mobile-lang-btn.mobile-lang-aktif, .mobile-lang-wrap ul.language-dropdown li a.active, .mobile-lang-wrap ul.language-dropdown li.active a { border-color: #253d4e; background: #f4f6fa; box-shadow: inset 0 0 0 1px #253d4e; }
	.mobile-lang-wrap ul.language-dropdown {
		position: static !important; display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; background: transparent;
		visibility: visible !important; opacity: 1 !important; transform: none !important; box-shadow: none; min-width: 0; width: auto;
	}
	.mobile-lang-wrap ul.language-dropdown li { margin: 0; padding: 0; }

	/* 2. Gezinti / sayfa yolu */
	.page-header.breadcrumb-wrap { padding: 10px 0; }
	.page-header .breadcrumb { display: flex; flex-wrap: wrap; align-items: center; gap: 0 4px; line-height: 1.3; }
	.page-header .breadcrumb a { display: inline-flex; align-items: center; min-height: 34px; padding: 4px 0; }
	.pagination, .pagination-area ul.pagination { flex-wrap: wrap; gap: 6px; justify-content: center; }
	.pagination .page-item { margin: 0; }
	.pagination .page-link { min-width: 40px; min-height: 40px; display: inline-flex; align-items: center; justify-content: center; padding: 0 10px; border-radius: 8px; }

	/* 3. Başlıklar */
	main h1, main .h1, main .heading-2, .page-content h1 { font-size: clamp(24px, 7vw, 32px); line-height: 1.2; overflow-wrap: anywhere; }
	main h2, main .h2 { font-size: clamp(20px, 5.6vw, 26px); line-height: 1.25; }
	main .section-title, main .section-title.style-1 { font-size: clamp(20px, 5.6vw, 26px); }
	.page-content .pt-50, .page-content.pt-50 { padding-top: 24px !important; }
	main .mt-60 { margin-top: 36px !important; }

	/* 4. Ürün listeleri (2 sütun) */
	.product-grid > [class*="col-"] { padding-left: 6px; padding-right: 6px; }
	.product-grid { margin-left: -6px; margin-right: -6px; }
	.product-grid > .col-12.col-sm-6 { flex: 0 0 50%; max-width: 50%; }
	.product-grid > .col-12.text-center { flex: 0 0 100%; max-width: 100%; }
	.product-cart-wrap { margin-bottom: 14px !important; border-radius: 12px; }
	.product-cart-wrap .product-img-action-wrap .product-img { aspect-ratio: 1 / 1; overflow: hidden; }
	.product-cart-wrap .product-img-action-wrap .product-img img { width: 100%; height: 100%; object-fit: cover; }
	.product-cart-wrap .product-content-wrap { padding: 10px 10px 12px; }
	.product-cart-wrap .product-content-wrap .product-category a { font-size: 11px; }
	.product-cart-wrap .product-content-wrap h2 { margin: 2px 0 6px; font-size: 14px; line-height: 1.3; }
	.product-cart-wrap .product-content-wrap h2 a {
		display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 2.6em;
	}
	.product-cart-wrap .product-price { font-size: 15px; }
	.product-cart-wrap .product-price span { font-size: inherit; }
	.product-cart-wrap .product-price .old-price { font-size: 12px; margin-left: 6px; }
	.product-cart-wrap .product-action-1 a.action-btn, .product-cart-wrap .product-action-1 a { width: 38px; height: 38px; line-height: 38px; }
	.product-cart-wrap .product-badges span { font-size: 11px; padding: 3px 8px; }
	.shop-product-fillter { display: flex; flex-direction: column; align-items: stretch; gap: 10px; }
	.shop-product-fillter .sort-by-product-area { width: 100%; display: grid; grid-template-columns: 1fr; gap: 10px; }
	.shop-product-fillter .sort-by-cover { margin: 0 !important; min-width: 0; }
	.shop-product-fillter .sort-by-product-wrap { width: 100%; min-height: 48px; }
	.shop-product-fillter .sort-by-dropdown { min-width: 180px; max-width: 86vw; }
	.shop-product-fillter .sort-by-dropdown ul li a { padding: 10px 12px; }
	.related-products .product-cart-wrap { margin-bottom: 10px !important; }

	/* 5. Ürün detay */
	.detail-info.pr-30, .detail-info.pl-30 { padding-left: 4px !important; padding-right: 4px !important; }
	.detail-info .title-detail { margin-top: 14px; }
	.product-detail .detail-gallery { margin-bottom: 10px; }
	.product-detail .product-price-cover { margin-bottom: 8px; }
	.product-detail .short-desc { margin-bottom: 16px !important; }
	.variant-option-label { min-height: 42px; display: inline-flex !important; align-items: center; padding: 0 16px; border-radius: 22px; }
	.detail-extralink { display: flex; flex-wrap: wrap; align-items: stretch; gap: 10px; position: sticky; bottom: 0; z-index: 30; background: #fff; margin: 0 -12px; padding: 10px 12px; box-shadow: 0 -6px 16px rgba(0, 0, 0, .08); }
	.detail-extralink .detail-qty { flex: 0 0 auto; margin: 0; width: 104px; }
	.detail-extralink .product-extra-link2 { flex: 1 1 200px; display: flex; gap: 10px; align-items: stretch; margin: 0; }
	.detail-extralink .product-extra-link2 .button-add-to-cart { flex: 1 1 auto; min-height: 48px; justify-content: center; padding: 0 14px; font-size: 14px; }
	.detail-extralink .product-extra-link2 .wishlist-btn, .detail-extralink .product-extra-link2 a.action-btn { flex: 0 0 48px; width: 48px; height: 48px; display: inline-flex; align-items: center; justify-content: center; }
	.detail-extralink .btn-whatsapp { flex: 1 1 100%; display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 46px; margin: 0; }
	body:has(.api) .detail-extralink, body.mek-bar .detail-extralink { bottom: 50px; }
	.product-info .tab-style3 .nav-tabs { flex-wrap: nowrap; overflow-x: auto; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
	.product-info .tab-style3 .nav-tabs::-webkit-scrollbar { display: none; }
	.product-info .tab-style3 .nav-tabs .nav-link { white-space: nowrap; }
	.product-info .tab-style3 .nav-tabs .nav-item { flex: 0 0 auto; }
	.product-info .entry-main-content { padding: 18px 14px; }

	/* 6. Sepet / ödeme */
	.table-wishlist td { padding: 8px 12px; }
	.table-wishlist .product-thumbnail img { max-width: 96px; }
	.table-wishlist .detail-qty { margin-left: 0; }
	.payment-options .form-check { padding-top: 4px; padding-bottom: 4px; }
	.payment-options .form-check-label { padding-left: 4px; }

	/* 7. Hesabım */
	.dashboard-menu { padding: 12px !important; height: auto !important; }
	.dashboard-menu .user-profile { display: flex !important; align-items: center; justify-content: flex-start; gap: 12px; text-align: left !important; margin-bottom: 12px !important; }
	.dashboard-menu .user-profile i { font-size: 2rem !important; }
	.dashboard-menu .user-profile h5 { margin: 0 !important; }
	.dashboard-menu .nav.flex-column { flex-direction: row !important; flex-wrap: nowrap; overflow-x: auto; gap: 8px; padding-bottom: 4px; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
	.dashboard-menu .nav.flex-column::-webkit-scrollbar { display: none; }
	.dashboard-menu .nav-item { flex: 0 0 auto; margin: 0 !important; }
	.dashboard-menu .nav-link { white-space: nowrap; padding: 10px 14px; min-height: 44px; display: inline-flex; align-items: center; }

	/* 8. Formlar (iOS'ta odaklanınca yakınlaştırmayı önlemek için 16px) */
	input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):not([type="file"]),
	select, textarea, .form-control, .form-select { font-size: 16px; }
	input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):not([type="file"]):not(.qty-val),
	select, .form-control, .form-select { min-height: 46px; }
	textarea, textarea.form-control { min-height: 110px; }
	.btn, .button, button[type="submit"] { min-height: 46px; }
	.form-check-input { width: 1.25rem; height: 1.25rem; margin-top: .15rem; }
	.form-check-label { padding-left: 6px; }
	.form-group, .mb-3 { margin-bottom: 16px; }
	.card .card-header { padding: 12px 14px; }
	.card .card-body { padding: 16px 14px; }

	/* 9. İçerik sayfaları */
	.entry-bottom { display: block; }
	.entry-bottom .tags { display: flow-root; width: 100% !important; max-width: 100%; margin-bottom: 14px; }
	.entry-bottom .tags a { float: none; display: inline-block; max-width: 100%; margin: 0 8px 8px 0; white-space: normal; text-align: left; }
	.share-buttons { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
	.share-buttons a { flex: 0 0 40px; margin: 0; }
	.single-content, .entry-content { font-size: 16px; line-height: 1.65; }
	.single-content h2, .entry-content h2 { font-size: 22px; line-height: 1.3; }
	.single-content h3, .entry-content h3 { font-size: 19px; }
	.single-content p, .entry-content p { margin-bottom: 14px; }
	iframe[src*="google.com/maps"], .map-container iframe { height: 320px !important; width: 100% !important; }
	.single-header h1, .single-header .entry-title { font-size: clamp(24px, 7vw, 30px); }
	.post-thumb img, .single-content figure img { border-radius: 10px; }
	.accordion-button { padding: 14px 16px; font-size: 15px; line-height: 1.35; }

	/* 10. Footer */
	footer.main .section-padding, footer.main .footer-mid { padding-top: 28px; padding-bottom: 12px; }
	footer.main .featured.section-padding { padding-top: 24px; padding-bottom: 10px; }
	footer.main .footer-mid .row > .footer-link-widget.col { flex: 0 0 50%; max-width: 50%; width: 50%; }
	footer.main .footer-mid .row > .widget-install-app.col { flex: 0 0 100%; max-width: 100%; width: 100%; }
	footer.main .widget-title { font-size: 16px; margin-bottom: 12px; padding-bottom: 8px; }
	footer.main .footer-list { min-width: 0; }
	footer.main .footer-list li { margin-bottom: 2px; }
	footer.main .footer-list li a { display: inline-block; padding: 6px 0; font-size: 14px; }
	footer.main .widget-about .logo img { max-width: 210px !important; }
	footer.main .contact-infor li { margin-bottom: 10px; line-height: 1.45; }
	footer.main .featured .banner-left-icon { padding: 14px; margin-bottom: 12px; }
	footer.main .whatsapp-box { margin-top: 8px; }
	footer.main .footer-bottom { margin-bottom: 12px; }
	footer.main .container.pb-30 { padding-bottom: 16px !important; text-align: center; }
	footer.main .container.pb-30 .text-end { text-align: center !important; }

	/* 11. Sabit çubuklar / çerez kutusu / yukarı çık */
	#cookie-alert-popup { left: 10px !important; right: 10px !important; bottom: 10px !important; }
	body:has(.api) #cookie-alert-popup, body.mek-bar #cookie-alert-popup { bottom: 60px !important; }
	#cookie-alert-popup .alert-popup__card { width: 100% !important; border-radius: 10px; }
	#cookie-alert-popup .alert-popup__content { padding: 14px 14px 16px !important; }
	#cookie-alert-popup h3 { font-size: 15px !important; margin: 0 0 2px !important; }
	#cookie-alert-popup p { font-size: 12.5px !important; margin: 8px 0 12px !important; line-height: 1.45 !important; }
	#cookie-alert-popup button { height: 40px !important; line-height: 40px !important; padding: 0 26px !important; border-radius: 6px; }
	body:has(.api) { padding-bottom: calc(50px + env(safe-area-inset-bottom)); }
	body:has(.api) #scrollUp { bottom: calc(62px + env(safe-area-inset-bottom)) !important; }
	.api { padding-bottom: env(safe-area-inset-bottom); }
	.api a { min-height: 44px; }
	/* gizli (visibility) bile olsa mutlak konumlu ipucu kutusu sağa taşıp sayfayı genişletiyordu (dokunmatikte ipucu da işe yaramaz) */
	.api .tooltiptext, .mek-ucan .mek-tip { display: none !important; }
	#scrollUp { right: 12px; }
	/* küçük dokunma hedefleri: görünür boyut aynı, dokunma alanı büyür */
	.slick-dots li button { position: relative; }
	.slick-dots li button::after { content: ""; position: absolute; top: -9px; left: -9px; right: -9px; bottom: -9px; }
	.mobile-menu-close .close-style, .mobile-menu-close button { min-width: 44px; min-height: 44px; }
	a#clear-cart, a.remove-item, .table-wishlist a.text-body { display: inline-flex; align-items: center; justify-content: center; min-height: 40px; min-width: 40px; }
	footer.main .widget-about .logo > a { display: inline-block; padding: 4px 0; }
	.mek-ucan.mek-mobil-cubuk { padding-bottom: env(safe-area-inset-bottom); }
}

/* ---- Çok küçük ekranlar (<= 359px) ---- */
@media (max-width: 359px) {
	.header-area .header-bottom .logo img { max-height: 40px; }
	.product-cart-wrap .product-content-wrap { padding: 8px 8px 10px; }
	.product-cart-wrap .product-content-wrap h2 { font-size: 13px; }
	.product-cart-wrap .product-price { font-size: 14px; }
	.shop-product-fillter .sort-by-product-area { grid-template-columns: 1fr; }
	footer.main .footer-mid .row > .footer-link-widget.col { flex-basis: 100%; max-width: 100%; width: 100%; }
	.detail-extralink .detail-qty { width: 96px; }
}

/* ---- Yatay (landscape) telefon: alçak ekranda sabit öğeler içeriği kapatmasın ---- */
@media (max-height: 480px) and (orientation: landscape) and (max-width: 991px) {
	#cookie-alert-popup { max-height: 78vh; overflow: auto; }
	#cookie-alert-popup .alert-popup__content { padding: 10px 14px !important; }
	#cookie-alert-popup p { margin: 4px 0 8px !important; }
	.detail-extralink { position: static; box-shadow: none; margin: 0; padding: 0; }
	.mobile-promotion { display: none; }
	.header-area .header-bottom { padding: 6px 0; }
	.mobile-header-wrapper-style .mobile-header-wrapper-inner { padding-bottom: 40px; }
}

/* ---- Tablet (768-991px) ---- */
@media (min-width: 768px) and (max-width: 991px) {
	.product-cart-wrap .product-content-wrap h2 { font-size: 15px; }
	.detail-info.pr-30, .detail-info.pl-30 { padding-left: 14px !important; padding-right: 0 !important; }
	footer.main .footer-mid .row > .footer-link-widget.col { flex: 0 0 33.3333%; max-width: 33.3333%; }
	footer.main .footer-mid .row > .col-md-4 { flex: 0 0 50%; max-width: 50%; }
}
