/*
 * Tam Benlik — mobil katman.
 *
 * Yalnızca 1024 px altında yüklenir (functions.php, media="(max-width: 1023.98px)"); masaüstü görünümü style.css ve
 * theme.json'da olduğu gibi kalır. Telefon (768 px altı) kuralları kendi medya sorgusunda. Dosya style.css'ten sonra
 * yüklenir; aynı seçiciler burada onu ezer. Satır içi blok stilleri (padding) için !important zorunlu.
 *
 * Yapı: yapışkan kompakt üst bilgi (arama aşağı kaydırınca gizlenir, mobil.js), alt gezinme çubuğu (functions.php
 * tbk_bottom_nav), yatay kaydırmalı kutucuk ve kart bantları, ürün sayfasında kapak → başlık → satın alma sırası,
 * kategori sayfasında yan yana Filtrele / Sırala.
 */

:root {
	--tbk-nav-h: 60px;
	--tbk-header-h: 112px;
	--tbk-safe-b: env(safe-area-inset-bottom, 0px);
	--tbk-bleed-l: var(--wp--style--root--padding-left, 1rem);
	--tbk-bleed-r: var(--wp--style--root--padding-right, 1rem);
}

html {
	scroll-padding-top: calc(var(--tbk-header-h) + 0.5rem);
}

/* Yatay kaydırıcıların ortak kuralı: kaydırma çubuğu gizli, kenarlara taşar, kenar boşluğuna kadar kayar. */
.tbk-scroller {
	display: flex;
	flex-wrap: nowrap;
	overflow-x: auto;
	overscroll-behavior-x: contain;
	scroll-snap-type: x mandatory;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
	margin-left: calc(-1 * var(--tbk-bleed-l));
	margin-right: calc(-1 * var(--tbk-bleed-r));
	padding-left: var(--tbk-bleed-l);
	padding-right: var(--tbk-bleed-r);
	scroll-padding-left: var(--tbk-bleed-l);
	scroll-padding-right: var(--tbk-bleed-r);
}

.tbk-scroller::-webkit-scrollbar {
	display: none;
}

/* ── Üst bilgi: yapışkan ve kompakt ──────────────────────── */

/* Yapışkanlık şablon parçası sarmalayıcısına (header.wp-block-template-part); .tbk-header'ın kendisi sarmalayıcıyla aynı boyda olduğundan yapışamaz. */
header.wp-block-template-part {
	position: sticky;
	top: var(--wp-admin--admin-bar--height, 0px);
	z-index: 40;
	background: var(--wp--preset--color--zemin);
	transition: box-shadow 0.2s var(--tbk-ease);
}

header.wp-block-template-part.is-scrolled {
	box-shadow: 0 2px 14px rgba(22, 33, 58, 0.09);
}

header.wp-block-template-part.is-scrolled .tbk-header {
	border-bottom-color: transparent;
}

/* Aşağı kaydırırken arama satırı gizlenir; sarmalayıcıya mobil.js'in verdiği alt boşluk sayfanın zıplamasını önler. */
header.wp-block-template-part.is-collapsed .tbk-header__search {
	display: none;
}

.tbk-header__top {
	row-gap: 0.5rem;
}

.tbk-header {
	padding-top: 0.5rem !important;
	padding-bottom: 0.625rem !important;
}

.tbk-header__search.wp-block-search {
	margin: 0;
}

.tbk-header nav.tbk-menu {
	top: 0.5rem !important;
}

.tbk-logo img {
	height: 36px;
}

/* Arama: gri hap, içinde yuvarlak lacivert düğme */
.tbk-header__search .wp-block-search__inside-wrapper {
	align-items: center;
	padding: 2px 2px 2px 0;
	border: 1px solid transparent;
	border-radius: 999px;
	background: var(--wp--preset--color--zemin-alt);
	transition: background-color 0.15s, border-color 0.15s, box-shadow 0.15s;
}

.tbk-header__search .wp-block-search__inside-wrapper:focus-within {
	border-color: var(--wp--preset--color--gok);
	background: var(--wp--preset--color--zemin);
	box-shadow: 0 0 0 3px var(--wp--preset--color--gok-acik);
}

.tbk-header__search .wp-block-search__input {
	min-height: 38px;
	padding: 0 0.5rem 0 1rem;
	border: 0;
	border-radius: 999px;
	background: transparent;
	font-size: 0.9375rem;
}

.tbk-header__search .wp-block-search__input:focus {
	border-color: transparent;
	box-shadow: none;
}

.tbk-header__search .wp-block-search__button {
	min-width: 38px;
	min-height: 38px;
	padding: 0;
	border-radius: 999px;
}

.tbk-header__search .wp-block-search__button svg {
	width: 20px;
	height: 20px;
}

/* Hamburger menü katmanı: uygulama görünümü; sınıf alt menüleri iki sütunlu çipler */
.tbk-menu .wp-block-navigation__responsive-container.is-menu-open {
	padding: 1rem 1.25rem 2rem !important;
}

.tbk-menu .wp-block-navigation__responsive-container-close {
	min-width: 44px;
	min-height: 44px;
	border-radius: 999px;
}

.tbk-menu .is-menu-open .wp-block-navigation__container {
	gap: 0;
	width: 100%;
}

.tbk-menu .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item {
	width: 100%;
	border-bottom: 1px solid var(--wp--preset--color--cizgi);
}

.tbk-menu .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content {
	width: 100%;
	min-height: 56px;
	padding: 0;
	font-size: 1.0625rem;
}

.tbk-menu .is-menu-open .wp-block-navigation-submenu__toggle {
	width: 100%;
	justify-content: space-between;
}

.tbk-menu .is-menu-open .wp-block-navigation__submenu-container {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.5rem;
	width: 100% !important;
	min-width: 0 !important;
	padding: 0.25rem 0 1rem !important;
}

.tbk-menu .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item {
	width: auto;
	border: 0;
}

.tbk-menu .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	justify-content: center;
	width: 100%;
	min-height: 44px;
	padding: 0 0.75rem !important;
	border: 1px solid var(--wp--preset--color--cizgi);
	border-radius: 10px;
	background: var(--wp--preset--color--zemin-alt);
	font-family: var(--wp--preset--font-family--body);
	font-size: 0.9375rem;
	font-weight: 600;
	text-align: center;
}

/* ── Alt gezinme çubuğu (functions.php: tbk_bottom_nav) ─── */

/* style.css çubuğu her genişlikte gizler; yalnız 768 px altında açılır (aşağıdaki telefon bloğu). */
.tbk-bottomnav {
	position: fixed;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 45;
	align-items: stretch;
	height: calc(var(--tbk-nav-h) + var(--tbk-safe-b));
	margin: 0;
	padding: 0 0.25rem var(--tbk-safe-b);
	border-top: 1px solid var(--wp--preset--color--cizgi);
	background: rgba(255, 255, 255, 0.96);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	box-shadow: 0 -4px 16px rgba(22, 33, 58, 0.06);
}

.tbk-bottomnav__item {
	position: relative;
	display: flex;
	flex: 1 1 0;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 3px;
	min-width: 0;
	min-height: var(--tbk-nav-h);
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: none;
	color: var(--wp--preset--color--metin-ikincil);
	font-family: var(--wp--preset--font-family--body);
	font-size: 0.6875rem;
	font-weight: 600;
	line-height: 1;
	text-decoration: none;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent;
}

.tbk-bottomnav__item svg {
	width: 24px;
	height: 24px;
}

.tbk-bottomnav__item[aria-current],
.tbk-bottomnav__item.is-active {
	color: var(--wp--preset--color--lacivert);
}

.tbk-bottomnav__item[aria-current] svg path {
	stroke-width: 2.2;
}

.tbk-bottomnav__item:focus-visible {
	outline-offset: -3px;
	border-radius: 10px;
}

.tbk-bottomnav__badge {
	position: absolute;
	top: 6px;
	left: calc(50% + 4px);
	min-width: 18px;
	height: 18px;
	padding: 0 5px;
	border-radius: 999px;
	background: var(--wp--preset--color--gok);
	color: #fff;
	font-size: 0.6875rem;
	font-weight: 800;
	line-height: 18px;
	text-align: center;
}

/* Sayfa altı çubuğun arkasında kalmasın (gövde sınıfı functions.php'den; ödeme sayfasında çubuk ve boşluk yok);
   ürün sayfasında yapışkan satın alma çubuğu açıkken alt gezinme gizlenir. */
@media (max-width: 767.98px) {
	.tbk-bottomnav {
		display: flex;
	}

	body.tbk-has-bottomnav {
		padding-bottom: calc(var(--tbk-nav-h) + var(--tbk-safe-b));
	}

	body.tbk-has-stickybar .tbk-bottomnav {
		display: none;
	}
}

body.tbk-has-stickybar {
	padding-bottom: calc(64px + var(--tbk-safe-b));
}

.tbk-stickybar {
	height: calc(64px + var(--tbk-safe-b));
	padding-bottom: var(--tbk-safe-b);
}

.tbk-stickybar__button {
	min-height: 48px;
	flex: 0 0 auto;
	padding: 0 1.5rem;
}

/* Çerez çubuğu alt gezinmenin üstünde dursun (eklenti çubuğu alta sabit). */
#kscc-root .kscc-banner,
#kscc-root .kscc-bar,
#kscc-root [class*="kscc-banner"] {
	bottom: calc(var(--tbk-nav-h) + var(--tbk-safe-b)) !important;
}

/* ── Kategori sayfası: Filtrele | Sırala yan yana ─────────── */

/* Sütunlar ve araç çubuğu ızgara ögesine çözülür: filtre düğmesi, sıralama, sonuç sayısı, ürün ızgarası. */
.tbk-shop {
	display: grid !important;
	grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
	gap: 0.75rem 0.5rem !important;
}

.tbk-shop > .wp-block-column,
.tbk-shop .tbk-toolbar {
	display: contents;
}

.tbk-filters.wc-block-product-filters {
	display: block;
	order: 1;
	min-width: 0;
}

.tbk-filters .wc-block-product-filters__open-overlay {
	display: flex;
	justify-content: center;
	gap: 0.375rem;
	width: 100%;
	min-height: 44px;
	padding: 0 0.75rem;
	font-size: 0.875rem;
	white-space: nowrap;
}

.tbk-filters .wc-block-product-filters__open-overlay svg {
	width: 20px;
	height: 20px;
	flex-shrink: 0;
}

.tbk-shop .wc-block-catalog-sorting,
.tbk-shop .woocommerce-ordering {
	order: 2;
	min-width: 0;
	margin: 0;
}

.tbk-shop .woocommerce-ordering {
	width: 100%;
}

.tbk-shop .woocommerce-ordering select {
	width: 100%;
	min-height: 44px;
	padding: 0 2.25rem 0 1rem;
	border: 1px solid var(--wp--preset--color--cizgi);
	border-radius: 999px;
	font-size: 0.9375rem;
}

.tbk-shop .wc-block-product-results-count {
	order: 3;
	grid-column: 1 / -1;
	margin: 0;
	font-size: 0.8125rem;
	color: var(--wp--preset--color--metin-ikincil);
}

.tbk-shop .tbk-grid {
	order: 4;
	grid-column: 1 / -1;
	min-width: 0;
}

/* Alt kategori çipleri tek satırda yatay kayar. */
.tbk-chips .wp-block-term-template {
	flex-wrap: nowrap !important;
	overflow-x: auto;
	overscroll-behavior-x: contain;
	scrollbar-width: none;
	margin-left: calc(-1 * var(--tbk-bleed-l));
	margin-right: calc(-1 * var(--tbk-bleed-r));
	padding-left: var(--tbk-bleed-l);
	padding-right: var(--tbk-bleed-r);
	padding-bottom: 2px;
}

.tbk-chips .wp-block-term-template::-webkit-scrollbar {
	display: none;
}

.tbk-chips .wp-block-term-template > li {
	flex: 0 0 auto;
}

.tbk-chips .wp-block-term-name a {
	white-space: nowrap;
}

/* ── Dokunmatik: hover yükselmesi yok ─────────────────────── */

@media (hover: none) {
	.tbk-card:hover,
	.tbk-tiles a:hover,
	.tbk-hero__covers a:hover {
		transform: none;
		box-shadow: var(--tbk-shadow-sm);
		border-color: var(--wp--preset--color--cizgi);
	}

	.tbk-card:hover .tbk-card__cover img {
		transform: none;
	}

	.wp-element-button:hover,
	.wp-block-button__link:hover {
		transform: none;
		box-shadow: none;
	}
}

/* ══ Telefon (768 px altı) ═════════════════════════════════ */

@media (max-width: 767.98px) {
	/* Üst bilgi: hesap simgesi alt gezinmede; üstte yalnız menü, logo, sepet */
	.tbk-header__actions .wp-block-woocommerce-customer-account {
		display: none;
	}

	/* Kırıntı tek satır, yatay kayar (dış blok kenara taşar; içindeki nav olduğu gibi) */
	.wc-block-breadcrumbs {
		white-space: nowrap;
		overflow-x: auto;
		scrollbar-width: none;
		max-width: none !important;
		margin-left: calc(-1 * var(--tbk-bleed-l)) !important;
		margin-right: calc(-1 * var(--tbk-bleed-r)) !important;
		padding-left: var(--tbk-bleed-l);
		padding-right: var(--tbk-bleed-r);
		font-size: 0.8125rem;
	}

	.wc-block-breadcrumbs::-webkit-scrollbar {
		display: none;
	}

	.wc-block-breadcrumbs .woocommerce-breadcrumb {
		margin: 0;
		padding: 0;
		white-space: nowrap;
	}

	/* Bölüm boşlukları daha sıkı */
	.tbk-section {
		padding-top: 1.75rem !important;
		padding-bottom: 0.75rem !important;
	}

	.tbk-section + .tbk-section {
		padding-top: 1.25rem !important;
	}

	.tbk-section h2,
	.tbk-product__section h2,
	.tbk-band--ozdebir h2 {
		font-size: 1.25rem;
	}

	.tbk-section__head {
		gap: 0.25rem 0.75rem;
	}

	.tbk-section__links {
		font-size: 0.875rem;
	}

	.tbk-band__lead {
		font-size: 0.9375rem;
	}

	/* ── Kahraman ── */
	.tbk-hero {
		padding-top: 1.5rem !important;
		padding-bottom: 1.5rem !important;
	}

	.tbk-hero .wp-block-columns {
		gap: 1.25rem !important;
	}

	.tbk-hero .tbk-eyebrow {
		font-size: 0.75rem;
	}

	.tbk-hero h1 {
		font-size: 1.625rem;
		line-height: 1.15;
	}

	.tbk-hero p {
		font-size: 0.9375rem;
	}

	.tbk-hero .wp-block-buttons {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0.5rem;
	}

	.tbk-hero .wp-block-button {
		margin: 0;
	}

	.tbk-hero .wp-block-button__link {
		width: 100%;
		min-height: 46px;
		padding-left: 0.5rem;
		padding-right: 0.5rem;
		font-size: 0.9375rem;
		white-space: nowrap;
	}

	.tbk-hero__covers {
		max-width: 300px;
		padding: 0.75rem 0 0.25rem;
	}

	/* ── Güven şeridi: 2×2 kompakt ── */
	.tbk-trust {
		padding-top: 0.875rem !important;
		padding-bottom: 0.875rem !important;
	}

	.tbk-trust__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0.625rem 0.75rem;
	}

	.tbk-trust__item {
		gap: 0.5rem;
		font-size: 0.8125rem;
		line-height: 1.3;
	}

	.tbk-trust__item svg {
		width: 18px;
		height: 18px;
		padding: 7px;
	}

	.tbk-trust__item:last-child {
		grid-column: 1 / -1;
	}

	/* ── Sınıf kutucukları: iki satırlı yatay kaydırıcı ── */
	/* Kısıtlı düzenin doğrudan çocuğu (margin auto !important); kenara taşma için !important şart. */
	.tbk-tiles {
		display: grid;
		grid-auto-flow: column;
		grid-template-columns: none;
		grid-template-rows: repeat(2, auto);
		grid-auto-columns: 7rem;
		gap: 0.5rem;
		overflow-x: auto;
		overscroll-behavior-x: contain;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
		max-width: none !important;
		margin-left: calc(-1 * var(--tbk-bleed-l)) !important;
		margin-right: calc(-1 * var(--tbk-bleed-r)) !important;
		padding: 2px var(--tbk-bleed-r) 0.5rem var(--tbk-bleed-l);
		scroll-padding-left: var(--tbk-bleed-l);
	}

	.tbk-tiles::-webkit-scrollbar {
		display: none;
	}

	.tbk-tiles li {
		scroll-snap-align: start;
	}

	.tbk-tiles a {
		min-height: 56px;
		padding: 0.5rem;
		border-radius: 12px;
		font-size: 0.9375rem;
	}

	/* ── Ana sayfa ve ürün sayfası bantları: yatay kart kaydırıcısı (kategori ızgarası 2 sütun kalır) ── */
	:is(.tbk-section, .tbk-product__section) .tbk-grid .wc-block-product-template {
		display: flex;
		flex-wrap: nowrap;
		gap: 0.625rem;
		overflow-x: auto;
		overscroll-behavior-x: contain;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
		margin-left: calc(-1 * var(--tbk-bleed-l));
		margin-right: calc(-1 * var(--tbk-bleed-r));
		padding: 4px var(--tbk-bleed-r) 0.75rem var(--tbk-bleed-l);
		scroll-padding-left: var(--tbk-bleed-l);
	}

	:is(.tbk-section, .tbk-product__section) .tbk-grid .wc-block-product-template::-webkit-scrollbar {
		display: none;
	}

	:is(.tbk-section, .tbk-product__section) .tbk-grid .wc-block-product-template > li {
		flex: 0 0 min(46vw, 200px);
		width: auto;
		scroll-snap-align: start;
	}

	/* ── Kitap kartı: daha sıkı ── */
	.tbk-grid .wc-block-product-template {
		gap: 0.75rem 0.5rem;
	}

	.tbk-card {
		padding: 0.5rem 0.5rem 0.625rem;
		border-radius: 12px;
	}

	.tbk-card__cover {
		padding: 0.5rem;
		border-radius: 10px;
	}

	.tbk-card__cover img {
		filter: drop-shadow(0 4px 8px rgba(22, 33, 58, 0.14));
	}

	.tbk-card__title {
		font-size: 0.875rem;
		line-height: 1.35;
	}

	.tbk-card__brand {
		font-size: 0.75rem;
	}

	.tbk-card__price {
		font-size: 1rem;
	}

	.tbk-card__price del {
		font-size: 0.75rem;
		margin-right: 0.25rem;
	}

	.tbk-card__button .wp-block-button__link,
	.tbk-card__button .wc-block-components-product-button__button {
		min-height: 40px;
		padding-left: 0.5rem;
		padding-right: 0.5rem;
		font-size: 0.875rem;
	}

	.tbk-badge {
		top: 0.5rem;
		left: 0.5rem;
		padding: 0.2rem 0.5rem;
		font-size: 0.6875rem;
	}

	.tbk-badge--sk {
		top: auto;
		bottom: 0.5rem;
	}

	.tbk-card .wc-block-components-product-sale-badge {
		top: 0.5rem;
		right: 0.5rem;
		font-size: 0.6875rem;
	}

	/* ── Kapılar ── */
	.tbk-gate .wp-block-button__link {
		min-height: 40px;
		padding-left: 1rem;
		padding-right: 1rem;
		font-size: 0.875rem;
	}

	/* ── Ürün sayfası: kapak → başlık → satın alma (DOM sırası değişmez, görsel sıra) ── */
	main.tbk-product {
		display: flex;
		flex-direction: column;
		gap: 1rem;
		padding-top: 0.75rem !important;
		padding-bottom: 2rem !important;
	}

	main.tbk-product > :not(.tbk-stickybar),
	main.tbk-product .tbk-product__top > .wp-block-column {
		width: 100%;
		max-width: none;
		margin-top: 0 !important;
		margin-bottom: 0 !important;
	}

	main.tbk-product .tbk-product__top {
		display: contents;
	}

	main.tbk-product > .wc-block-breadcrumbs {
		order: 1;
	}

	main.tbk-product .tbk-product__gallery {
		order: 2;
	}

	main.tbk-product > .wp-block-woocommerce-store-notices,
	main.tbk-product > .tbk-product__head {
		order: 3;
	}

	main.tbk-product .tbk-product__side {
		order: 4;
	}

	main.tbk-product > .tbk-product__section,
	main.tbk-product > .tbk-kunye,
	main.tbk-product > .tbk-ornek,
	main.tbk-product > .tbk-stickybar {
		order: 5;
	}

	.tbk-product__head h1 {
		font-size: 1.25rem;
		line-height: 1.3;
	}

	.tbk-product__brand,
	.tbk-product__meta {
		font-size: 0.875rem;
	}

	.tbk-gallery {
		padding: 0.5rem !important;
		border: 0;
		border-radius: 14px;
	}

	.tbk-gallery .wc-block-product-gallery-large-image img {
		max-height: 54vh;
	}

	.tbk-buybox {
		padding: 1rem !important;
	}

	.tbk-buybox__price,
	.tbk-buybox__price .wc-block-components-product-price {
		font-size: 1.75rem;
	}

	.tbk-product__section {
		margin-top: 0.5rem;
	}

	.tbk-kunye__table th,
	.tbk-kunye__table td {
		padding: 0.625rem 0.75rem;
		font-size: 0.9375rem;
	}

	/* ── Sepet ve ödeme ── */
	.wc-block-cart__submit-button,
	.wc-block-components-checkout-place-order-button {
		width: 100%;
	}

	/* ── Alt bilgi: Alışveriş ve Yasal yan yana ── */
	.tbk-footer {
		padding-top: 2rem !important;
		padding-bottom: 1.5rem !important;
	}

	.tbk-footer .wp-block-columns:not(.is-not-stacked-on-mobile) {
		gap: 1.25rem 1rem !important;
	}

	.tbk-footer .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column:nth-child(n+2) {
		flex-basis: calc(50% - 0.5rem) !important;
	}

	.tbk-footer h2 {
		font-size: 1rem;
	}

	.tbk-footer-list li + li {
		margin-top: 0.5rem;
	}

	.tbk-footer-list a,
	.tbk-footer-list .kscc-shortcode-button {
		min-height: 28px;
		line-height: 28px;
	}
}
