/* ==========================================================================
   inBordo — site içi arama: başlıktaki düğme, arama penceresi, yan panel formu, sonuç sayfası.
   Renk ve ölçüler main.css'teki değişkenlerden gelir.
   ========================================================================== */

/* --------------------------------------------------------------------------
   Başlıktaki arama düğmesi (yalnızca ikon; tıklama alanı 44px, görünür boyut diğer ikonlarla aynı)
   -------------------------------------------------------------------------- */

.inb-header__action--search {
	justify-content: center;
	min-width: 44px;
	min-height: 44px;
	margin: -10px;
	padding: 10px;
	border: 0;
	background: none;
	font: inherit;
	cursor: pointer;
	-webkit-appearance: none;
	appearance: none;
}
.inb-header .inb-header__action--search .inb-icon { width: 24px; height: 24px; }

/* 1201–1500px'te başlık zaten dar (menü yazıları ve "Hesabım" / bilet metni birlikte görünüyor). Düğmenin kapladığı
   ~54px, menü ve ikon aralıklarından 8'er px geri alınır; böylece başlık eskisinden daha fazla sıkışmaz. */
@media (min-width: 1201px) and (max-width: 1440px) {
	.inb-nav__menu { gap: 26px; }       /* main.css: 34px */
	.inb-header__actions { gap: 22px; } /* main.css: 30px */
}
@media (min-width: 1441px) and (max-width: 1500px) {
	.inb-nav__menu { gap: 44px; }       /* main.css: 52px */
	.inb-header__actions { gap: 36px; } /* main.css: 44px */
}

/* --------------------------------------------------------------------------
   Arama penceresi
   -------------------------------------------------------------------------- */

/* Kapalıyken tamamen gizli: içindeki bağlantılar klavyeyle odak almasın (yan panel ile aynı yöntem). */
.inb-search {
	position: fixed;
	inset: 0;
	z-index: 9993;
	pointer-events: none;
	visibility: hidden;
	transition: visibility 0s .3s;
}
.inb-search.is-open { pointer-events: auto; visibility: visible; transition-delay: 0s; }
.inb-search__overlay {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, .6);
	opacity: 0;
	transition: opacity .3s;
}
.inb-search.is-open .inb-search__overlay { opacity: 1; }

.inb-search__panel {
	position: relative;
	display: flex;
	flex-direction: column;
	max-height: calc(100vh - var(--wp-admin--admin-bar--height, 0px));
	max-height: calc(100dvh - var(--wp-admin--admin-bar--height, 0px));
	margin-top: var(--wp-admin--admin-bar--height, 0px);
	background: #fff;
	color: var(--inb-black);
	box-shadow: 0 24px 60px rgba(0, 0, 0, .25);
	opacity: 0;
	transform: translateY(-24px);
	transition: transform .4s var(--inb-ease), opacity .25s;
}
.inb-search.is-open .inb-search__panel { opacity: 1; transform: none; }

.inb-search__inner {
	width: min(var(--inb-container), 100% - 2 * var(--inb-gutter));
	margin-inline: auto;
}

/* Arama satırı */
.inb-search__bar { position: relative; flex: none; border-bottom: 1px solid var(--inb-line); }
.inb-search__bar-inner { display: flex; align-items: center; gap: 18px; height: 104px; }
.inb-search__form { display: flex; flex: 1; align-items: center; gap: 16px; min-width: 0; height: 100%; }
.inb-search__form .inb-search__icon { width: 30px; height: 30px; color: var(--inb-bordo); }
.inb-search .inb-search__input {
	flex: 1;
	min-width: 0;
	height: 64px;
	min-height: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	color: var(--inb-black);
	font-family: var(--inb-font);
	font-size: 42px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: -0.02em;
	-webkit-appearance: none;
	appearance: none;
}
.inb-search .inb-search__input:focus { border: 0; box-shadow: none; outline: 0; }
.inb-search .inb-search__input::placeholder { color: #bdb8b5; }
.inb-search__input::-webkit-search-decoration { -webkit-appearance: none; }
/* Kutuda odak çizgisi yerine satırın altı bordo olur. */
.inb-search__bar::before {
	content: "";
	position: absolute;
	left: 0; right: 0; bottom: -1px;
	height: 2px;
	background: var(--inb-bordo);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform .35s var(--inb-ease);
}
.inb-search__bar:focus-within::before { transform: scaleX(1); }
.inb-search .inb-search__submit { flex: none; padding: 14px 28px 13px; font-size: 17px; }
.inb-search__close {
	display: grid;
	flex: none;
	place-items: center;
	width: 48px;
	height: 48px;
	margin-right: -10px;
	padding: 0;
	border: 0;
	background: none;
	color: var(--inb-black);
	cursor: pointer;
	transition: color .2s;
}
.inb-search__close:hover { color: var(--inb-bordo); }
.inb-search__close .inb-icon { width: 26px; height: 26px; }

/* Yükleniyor: satırın altında kayan ince çizgi */
.inb-search__bar::after {
	content: "";
	position: absolute;
	left: 0; bottom: -1px;
	width: 30%;
	height: 2px;
	background: var(--inb-black);
	opacity: 0;
	transition: opacity .2s;
}
.inb-search.is-loading .inb-search__bar::after { opacity: 1; animation: inb-search-load 1s var(--inb-ease) infinite; }
@keyframes inb-search-load { from { left: -30%; } to { left: 100%; } }

/* Sonuçlar */
.inb-search__body { flex: 1 1 auto; min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding: 26px 0 44px; }
.inb-search__status { min-height: 20px; margin: 0 0 16px; color: var(--inb-gray); font-size: 14px; line-height: 20px; letter-spacing: .04em; text-transform: uppercase; }
.inb-search__status:empty { min-height: 0; margin: 0; } /* gizlenmez: canlı bölge ekran okuyucuda hep hazır kalsın */
.inb-search.is-empty .inb-search__status { color: var(--inb-black); font-size: 20px; line-height: 1.3; letter-spacing: 0; text-transform: none; }

.inb-search__results { columns: 2 380px; column-gap: 56px; }
.inb-search__group { break-inside: avoid; margin: 0 0 30px; }
.inb-search__group-head {
	display: flex;
	align-items: baseline;
	gap: 10px;
	margin-bottom: 6px;
	padding-bottom: 8px;
	border-bottom: 2px solid var(--inb-black);
	font-size: 15px;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: .05em;
	text-transform: uppercase;
}
.inb-search__group-count { color: var(--inb-bordo); }

.inb-search__item {
	display: grid;
	grid-template-columns: 56px minmax(0, 1fr) auto;
	grid-template-areas: "thumb info price";
	align-items: center;
	gap: 4px 16px;
	margin: 0 -10px;
	padding: 9px 10px;
	color: var(--inb-black);
	transition: background-color .15s;
}
.inb-search__item:hover { color: var(--inb-black); }
.inb-search__item.is-active { background: var(--inb-bg); box-shadow: inset 3px 0 0 var(--inb-bordo); }
.inb-search__thumb {
	grid-area: thumb;
	display: grid;
	place-items: center;
	width: 56px;
	height: 56px;
	overflow: hidden;
	background: #f1eeec;
}
.inb-search__thumb img { display: block; width: 100%; height: 100%; object-fit: cover; }
.inb-search__thumb:is([data-type="product"], [data-type="menu"]) img { padding: 4px; background: #fff; object-fit: contain; }
.inb-search__thumb:is([data-type="antrenor"], [data-type="diyetisyen"]) img { object-position: center 20%; }
.inb-search__info { grid-area: info; display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.inb-search__title {
	display: -webkit-box;
	overflow: hidden;
	font-size: 19px;
	font-weight: 600;
	line-height: 1.15;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}
.inb-search__meta { color: var(--inb-gray); font-size: 13px; line-height: 1.3; letter-spacing: .04em; text-transform: uppercase; }
.inb-search__excerpt {
	display: -webkit-box;
	overflow: hidden;
	color: #5f5a57;
	font-size: 15px;
	line-height: 1.35;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
}
.inb-search__price { grid-area: price; font-size: 17px; font-weight: 600; white-space: nowrap; }
.inb-search__price del { margin-right: 4px; color: var(--inb-gray); font-size: 14px; font-weight: 400; }
.inb-search mark,
.inb-sr mark { background: none; color: var(--inb-bordo); }
.inb-search__more {
	display: inline-flex;
	margin: 6px -10px 0;
	padding: 6px 10px;
	color: var(--inb-bordo);
	font-size: 14px;
	font-weight: 600;
	letter-spacing: .04em;
	text-transform: uppercase;
}
.inb-search__more.is-active { background: var(--inb-bg); text-decoration: underline; }
.inb-search__foot { margin: 6px 0 0; }

/* Öneriler (boş kutu / sonuç yok) */
.inb-search__suggest { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 30px 56px; }
.inb-search [hidden] { display: none !important; } /* display: grid / flex, [hidden] özniteliğini ezmesin */
.inb-search__label,
.inb-sr__label {
	margin: 0 0 14px;
	color: var(--inb-gray);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: .06em;
	text-transform: uppercase;
}
.inb-search__chips,
.inb-sr__chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.inb-search__chips a,
.inb-sr__suggest .inb-sr__chips a {
	display: inline-flex;
	align-items: center;
	height: 40px;
	padding: 0 16px;
	border: 1px solid var(--inb-line);
	background: #fff;
	color: var(--inb-black);
	font-size: 16px;
	font-weight: 600;
	letter-spacing: .02em;
	text-transform: uppercase;
	transition: border-color .2s, color .2s;
}
.inb-search__chips a:hover,
.inb-sr__suggest .inb-sr__chips a:hover { border-color: var(--inb-bordo); color: var(--inb-bordo); }
.inb-search__links { columns: 2 180px; column-gap: 30px; margin: 0; padding: 0; list-style: none; }
.inb-search__links li { break-inside: avoid; }
.inb-search__links a { display: inline-flex; align-items: center; gap: 8px; padding: 6px 0; font-size: 18px; font-weight: 600; line-height: 1.2; }
.inb-search__links .inb-icon { width: 16px; height: 16px; color: var(--inb-bordo); transition: transform .25s var(--inb-ease); }
.inb-search__links a:hover .inb-icon { transform: translateX(3px); }

@media (max-width: 1024px) {
	.inb-search__bar-inner { height: 84px; }
	.inb-search .inb-search__input { font-size: 32px; }
}
@media (max-width: 680px) {
	/* Mobilde tam ekran */
	.inb-search__panel { height: calc(100vh - var(--wp-admin--admin-bar--height, 0px)); height: calc(100dvh - var(--wp-admin--admin-bar--height, 0px)); box-shadow: none; }
	.inb-search__bar-inner { gap: 10px; height: 64px; }
	.inb-search__form { gap: 10px; }
	.inb-search__form .inb-search__icon { width: 22px; height: 22px; }
	.inb-search .inb-search__input { height: 48px; font-size: 24px; }
	.inb-search .inb-search__submit { display: none; } /* klavyedeki "Ara" tuşu gönderir */
	.inb-search__body { padding: 18px 0 32px; }
	.inb-search__suggest { grid-template-columns: minmax(0, 1fr); gap: 26px; }
	.inb-search__item { grid-template-columns: 48px minmax(0, 1fr); grid-template-areas: "thumb info" "thumb price"; gap: 2px 12px; padding: 8px 10px; }
	.inb-search__thumb { width: 48px; height: 48px; }
	.inb-search__title { font-size: 17px; }
	.inb-search__price { font-size: 15px; }
	.inb-search__foot .inb-search__all { width: 100%; }
}

/* --------------------------------------------------------------------------
   Arama formları: yan panel (koyu) ve sonuç sayfası (büyük)
   -------------------------------------------------------------------------- */

.inb-search-form input[type="search"] { min-width: 0; }
.inb-search-form input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

.inb-drawer__search { margin-top: 30px; }
.inb-search-form--drawer { max-width: none; margin: 0; }
.inb-drawer .inb-search-form--drawer input {
	height: 50px;
	min-height: 0;
	border-color: rgba(255, 255, 255, .28);
	background: rgba(255, 255, 255, .08);
	color: #fff;
}
.inb-drawer .inb-search-form--drawer input::placeholder { color: rgba(255, 255, 255, .55); }
.inb-drawer .inb-search-form--drawer input:focus { border-color: #fff; box-shadow: none; }
.inb-search-form--drawer button { flex: none; width: 52px; }

.inb-search-form--page { max-width: 760px; margin: 0 0 30px; }
.inb-search-form--page input[type="search"] { height: 62px; padding: 0 22px; font-size: 22px; }
.inb-search-form--page button { flex: none; width: 66px; transition: background .2s; }
.inb-search-form--page button:hover { background: var(--inb-black); }
.inb-search-form--page .inb-icon { width: 24px; height: 24px; }

/* --------------------------------------------------------------------------
   Sonuç sayfası
   -------------------------------------------------------------------------- */

.inb-sr { padding: 64px 0 var(--inb-section); }

/* Tür filtreleri */
.inb-sr__filter { margin: 0 0 56px; }
.inb-sr__chip {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	height: 42px;
	padding: 0 16px;
	border: 1px solid var(--inb-line);
	background: #fff;
	color: var(--inb-black);
	font-size: 16px;
	font-weight: 600;
	letter-spacing: .02em;
	text-transform: uppercase;
	white-space: nowrap;
	transition: border-color .2s, color .2s, background .2s;
}
.inb-sr__chip:hover { border-color: var(--inb-bordo); color: var(--inb-bordo); }
.inb-sr__chip-count { color: var(--inb-gray); font-size: 14px; font-weight: 500; }
.inb-sr__chip.is-active { border-color: var(--inb-bordo); background: var(--inb-bordo); color: #fff; }
.inb-sr__chip.is-active .inb-sr__chip-count { color: rgba(255, 255, 255, .75); }

/* Gruplar */
.inb-sr__group + .inb-sr__group { margin-top: 76px; }
.inb-sr__head {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: 12px 24px;
	margin-bottom: 30px;
	padding-bottom: 16px;
	border-bottom: 2px solid var(--inb-black);
}
.inb-sr__title { display: flex; align-items: center; gap: 14px; margin: 0; font-size: 40px; line-height: 1; }
.inb-sr__count {
	display: inline-grid;
	place-items: center;
	min-width: 34px;
	height: 30px;
	padding: 0 9px;
	background: var(--inb-bordo);
	color: #fff;
	font-size: 16px;
	letter-spacing: 0;
}
.inb-sr__head .inb-card__more { margin: 0; padding: 0 0 4px; }
.inb-sr__back .inb-icon { order: -1; }
.inb-sr__back:hover .inb-icon { transform: translateX(-4px); }

/* Ürünler: mağaza ızgarası (woocommerce.css) aynen kullanılır. */
.inb-sr .inb-pagination { margin-top: 56px; }

/* Markalar: görselli kart */
.inb-sr__cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--inb-card-gap); }
.inb-sr-card .inb-card__media { aspect-ratio: 16 / 10; }
.inb-sr-card .inb-card__media img,
.inb-sr-card .inb-card__placeholder { width: 100%; height: 100%; object-fit: cover; }
.inb-sr-card .inb-card__body { padding: 22px 26px 26px; }
.inb-sr-card .inb-card__title { font-size: 28px; }
.inb-sr-card .inb-card__text {
	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
}

/* Antrenör / diyetisyen: portre kartı */
.inb-sr__people { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--inb-card-gap); }
.inb-sr-person { display: flex; flex-direction: column; }
.inb-sr-person__media { display: block; overflow: hidden; aspect-ratio: 600 / 760; background: #e9e6e4; }
.inb-sr-person__media img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .8s var(--inb-ease); }
.inb-sr-person:hover .inb-sr-person__media img { transform: scale(1.04); }
.inb-sr-person__name { margin: 16px 0 4px; font-size: 24px; line-height: 1.05; }
.inb-sr-person__name a:hover { color: var(--inb-bordo); }
.inb-sr-person__role { margin: 0; color: var(--inb-gray); font-size: 14px; letter-spacing: .04em; text-transform: uppercase; }

/* Sayfalar ve restoran menüsü: satır listesi (başlık bağlantısı tüm satırı kaplar) */
.inb-sr__list { display: grid; gap: 2px; margin: 0; padding: 0; list-style: none; }
.inb-sr-row {
	position: relative;
	display: grid;
	grid-template-columns: 72px minmax(0, 1fr) auto auto;
	align-items: center;
	gap: 22px;
	padding: 16px 22px;
	background: #fff;
	transition: box-shadow .2s;
}
.inb-sr-row:hover { box-shadow: inset 3px 0 0 var(--inb-bordo); }
.inb-sr-row__thumb { display: grid; place-items: center; width: 72px; height: 72px; overflow: hidden; background: #f1eeec; }
.inb-sr-row__thumb img { display: block; width: 100%; height: 100%; object-fit: cover; }
.inb-sr-row__thumb[data-type="menu"] img { padding: 4px; background: #fff; object-fit: contain; }
.inb-sr-row__body { min-width: 0; }
.inb-sr-row__meta { display: block; margin-bottom: 4px; color: var(--inb-gray); font-size: 13px; letter-spacing: .04em; text-transform: uppercase; }
.inb-sr-row__title { margin: 0; font-size: 24px; line-height: 1.1; letter-spacing: -0.01em; text-transform: none; }
.inb-sr-row__title a::after { content: ""; position: absolute; inset: 0; }
.inb-sr-row:hover .inb-sr-row__title a { color: var(--inb-bordo); }
.inb-sr-row__text {
	display: -webkit-box;
	overflow: hidden;
	margin: 6px 0 0;
	color: #5f5a57;
	font-size: 16px;
	line-height: 1.4;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}
.inb-sr-row__price { font-size: 19px; font-weight: 600; white-space: nowrap; }
.inb-sr-row__price del { margin-right: 6px; color: var(--inb-gray); font-weight: 400; }
.inb-sr-row__price ins { text-decoration: none; }
.inb-sr-row__arrow { width: 22px; height: 22px; color: var(--inb-bordo); transition: transform .25s var(--inb-ease); }
.inb-sr-row:hover .inb-sr-row__arrow { transform: translateX(4px); }

/* Görseli olmayan sonuçlarda türün simgesi (pencere ve sonuç sayfası ortak) */
.inb-search__thumb:empty::before,
.inb-sr-row__thumb:empty::before {
	content: "";
	width: 42%;
	height: 42%;
	background: var(--inb-bordo);
	opacity: .5;
	-webkit-mask: var(--inb-search-ph) center / contain no-repeat;
	mask: var(--inb-search-ph) center / contain no-repeat;
}
:is(.inb-search__thumb, .inb-sr-row__thumb) { --inb-search-ph: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H6v18h12V7z'/%3E%3Cpath d='M14 3v4h4M9 12h6M9 16h6'/%3E%3C/svg%3E"); }
:is(.inb-search__thumb, .inb-sr-row__thumb):is([data-type="product"], [data-type="menu"]) { --inb-search-ph: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 7h12l-1 13H7L6 7z'/%3E%3Cpath d='M9 7a3 3 0 0 1 6 0'/%3E%3C/svg%3E"); }
:is(.inb-search__thumb, .inb-sr-row__thumb):is([data-type="antrenor"], [data-type="diyetisyen"]) { --inb-search-ph: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 20c0-4 8-4 8-4s8 0 8 4'/%3E%3C/svg%3E"); }

/* Sonuç yok / boş arama */
.inb-sr__empty { max-width: 860px; padding: 20px 0 0; }
.inb-sr__empty-icon { display: grid; place-items: center; width: 64px; height: 64px; margin-bottom: 22px; background: var(--inb-bordo); color: #fff; }
.inb-sr__empty-icon .inb-icon { width: 28px; height: 28px; }
.inb-sr__empty-title { margin: 0 0 12px; font-size: 44px; }
.inb-sr__empty > p { max-width: 640px; margin: 0 0 40px; font-size: 20px; line-height: 1.45; }
.inb-sr__suggest { display: grid; gap: 34px; }
.inb-sr__links { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 2px; margin: 0; padding: 0; list-style: none; }
.inb-sr__links a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	height: 100%;
	padding: 16px 18px;
	background: #fff;
	font-size: 19px;
	font-weight: 600;
	line-height: 1.15;
}
.inb-sr__links .inb-icon { width: 18px; height: 18px; color: var(--inb-bordo); transition: transform .25s var(--inb-ease); }
.inb-sr__links a:hover .inb-icon { transform: translateX(4px); }

@media (max-width: 1024px) {
	.inb-sr__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.inb-sr__people { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 680px) {
	.inb-sr { padding-top: 40px; }
	.inb-search-form--page input[type="search"] { height: 54px; padding: 0 16px; font-size: 19px; }
	.inb-search-form--page button { width: 56px; }
	.inb-sr__filter { margin-bottom: 40px; }
	.inb-sr__chip { height: 38px; padding: 0 12px; font-size: 15px; }
	.inb-sr__group + .inb-sr__group { margin-top: 56px; }
	.inb-sr__title { font-size: 30px; }
	.inb-sr__cards { grid-template-columns: minmax(0, 1fr); }
	.inb-sr__people { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.inb-sr-person__name { font-size: 20px; }
	.inb-sr-row { grid-template-columns: 56px minmax(0, 1fr); gap: 4px 14px; padding: 14px; }
	.inb-sr-row__thumb { grid-row: span 2; width: 56px; height: 56px; }
	.inb-sr-row__title { font-size: 20px; }
	.inb-sr-row__text { font-size: 15px; }
	.inb-sr-row__price { grid-column: 2; font-size: 17px; }
	.inb-sr-row__arrow { display: none; }
	.inb-sr__empty-title { font-size: 34px; }
	.inb-sr__empty > p { font-size: 18px; }
}
