/* ==========================================================================
   osp-shop-items.css: magaza menusu urun kartlari + kategori sayfasi filtre
   satiri (theme1) · kp34/Y, 2026-10-30
   --------------------------------------------------------------------------
   Kapsam: yalniz `.restaurant-container.theme_1` altindaki kartlar ve
   kategori sayfasinin filtre satiri (`.single__cat__header`). theme_1 sinifi
   yalniz theme1/single_menu.php (menu) ve theme1/single_category.php
   (kategori sayfasi) kapsayicisinda var; theme3 (CafeDem, Cyprus Cajun) ve
   theme2 bu siniflari tasimaz, bu dosyadan etkilenmez (olculdu).
   Kart isaretlemesi: theme1/include/item_thumbs.php. Bu dosya isaretlemeyi
   DEGISTIRMEZ; JS'in kullandigi .quick_view, data-id, data-type, data-offer,
   .subcatItem, .categoryItem aynen kalir.

   Ne duzeltildi (canlida olculdu, 30 Eki):
     - Kart sabit 185px min-height (style.css .homeSingle_item) -> icerik
       185'in cok altinda, kartin alt ~67px'i bostu. Simdi yukseklik icerikten
       gelir; ayni satirdaki kartlar sutunu esneterek esitlenir, fiyat satiri
       kartin dibine yaslanir (bos alan kartin altinda degil, aciklama ile
       fiyat arasinda ve yalniz kisa icerikli kartta).
     - Fiyat #4e54c8 mor (koyu temada #39ea84 yesil) -> --osp-ink, 700.
     - "Ekle" acik mavi %10 zeminli kucuk hap -> rezervasyon sayfasinin ana
       eylemi gibi dolu --osp-brand-600 + --osp-on-brand.
     - Telefonda fiyat ortali mor, altinda tam genislik dugme ve buyuk bosluk
       (responsive.css column) -> fiyat solda, dugme sagda tek satir.
     - Filtre acilir listesi + Ara kutusu: rezervasyon formundaki alan dili
       (48px, 1px --osp-line-strong, --osp-r kose, odakta marka halkasi).

   Aciklama satiri her zaman basilir (omer 30 Eki: ad ile ayni olsa da
   gizlenmez); bu dosya aciklamayi gizlemez, yalniz 2 satirla sinirlar.

   Eski tarayici (Edge 16 / iOS 12 Safari / Chrome 58 / Firefox 60):
   flex `gap`, `inset`, `aspect-ratio`, `clamp()`, `:is/:where/:has` YOK.
   Bosluklar margin ile. Her var() yedek degerli (acik tema degeri, once duz
   bildirim). -webkit-line-clamp'i bilmeyen Firefox 60 icin max-height
   yedegi. :focus-within / :focus-visible iceren kurallar ayri yazildi;
   bilmeyen tarayici yalniz o kurali atar, :focus yedegi calisir.
   3:2 urun gorseli kp33/L (osp-theme.css) kuralidir; burada dokunulmaz.

   Ozgulluk: `body .restaurant-container.theme_1 ...` (0,3,1)+ satici
   kurallarini (en cok 0,4,0) asar. !important yalniz satici CSS'inin
   !important'ina ya da magaza renk katmanina karsi; yaninda gerekcesi var.
   ========================================================================== */

/* ------------------------------------------------------------ izgara ---- */
/* Satir esitleme: sutun flex kolon, kart flex:1. Bootstrap .row zaten flex
   (align-items: stretch), sutunlar satirin en uzun kartina esitlenir. jQuery
   .hide()/.show() (alt kategori suzgeci) satir ici display'i silip bu
   kurala geri doner. */
body .restaurant-container.theme_1 .row > .q-sm {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

/* -------------------------------------------------------------- kart ---- */
body .restaurant-container.theme_1 .homeSingle_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  min-height: 0;
  margin: 0 0 16px;
  padding: 0;
  overflow: hidden;
  border: 1px solid rgba(15, 23, 42, .10);
  border: 1px solid var(--osp-line, rgba(15, 23, 42, .10));
  border-radius: 14px;
  border-radius: var(--osp-r, 14px);
  background-color: #fff;
  background-color: var(--osp-surface, #fff);
  color: #0f1b33;
  color: var(--osp-ink, #0f1b33);
  -webkit-transition: border-color 200ms cubic-bezier(.16, .84, .44, 1), box-shadow 200ms cubic-bezier(.16, .84, .44, 1);
  transition: border-color 200ms cubic-bezier(.16, .84, .44, 1), box-shadow 200ms cubic-bezier(.16, .84, .44, 1);
}

/* Kategori sayfasi: style.css `div#showCatItem .homeSingle_item{margin-bottom:15px}`
   (1,1,1) yukaridaki kurali geciyordu; menu sayfasiyla ayni aralik. */
body .restaurant-container.theme_1 #showCatItem .homeSingle_item {
  margin-bottom: 16px;
}

/* !important GEREKCE: style.css `.homeSingle_item{box-shadow:... !important}`. */
body .restaurant-container.theme_1 .homeSingle_item {
  box-shadow: 0 1px 2px rgba(15, 23, 42, .05), 0 10px 26px -20px rgba(15, 23, 42, .30) !important;
  box-shadow: var(--osp-shadow-1, 0 1px 2px rgba(15, 23, 42, .05), 0 10px 26px -20px rgba(15, 23, 42, .30)) !important;
}

body .restaurant-container.theme_1 .homeSingle_item:hover {
  border-color: rgba(15, 23, 42, .18);
  border-color: var(--osp-line-strong, rgba(15, 23, 42, .18));
}

/* Gorselli kart: gorsel ustte, kenara yasli (kp33/L 3:2 kutusu aynen). */
body .restaurant-container.theme_1 .homeSingle_item > .item_images {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  width: 100%;
  overflow: hidden;
}

body .restaurant-container.theme_1 .homeSingle_item .homeSingleImg.menu-img {
  margin: 0;
  border-radius: 0;
  box-shadow: none;
}

/* Detay blogu: kalan yuksekligi doldurur, fiyat satiri dibe yaslanir.
   Satici min-height'lari (151 / 160 / 112 / 127px) kaldirildi: bos alanin
   kaynagi onlardi. */
body .restaurant-container.theme_1 .homeSingle_item .homeItemDetails.list_view {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  width: 100%;
  min-height: 0;
  padding: 16px;
  overflow: visible;
}

body .restaurant-container.theme_1 .homeSingle_item .homeItem_left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  width: 100%;
  height: auto;
  min-height: 0;
}

/* ------------------------------------------------------------- baslik --- */
body .restaurant-container.theme_1 .homeSingle_item .topTitle {
  margin: 0;
}

body .restaurant-container.theme_1 .homeSingle_item .top___title {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

/* En cok 2 satir; Firefox 60 line-clamp bilmez -> max-height yedegi
   (2 x 22px). */
body .restaurant-container.theme_1 .homeSingle_item .topTitle h4 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  max-height: 44px;
  margin: 0;
  overflow: hidden;
  font-family: inherit;
  font-size: 16px;
  font-weight: 600;
  line-height: 22px;
  letter-spacing: 0;
  color: #0f1b33;
  color: var(--osp-ink, #0f1b33);
  overflow-wrap: break-word;
  word-wrap: break-word;
}

/* Vegan / vejetaryen noktasi: basligin ilk satiriyla hizali. */
body .restaurant-container.theme_1 .homeSingle_item .top___title .veg_type {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  margin: 6px 0 0 8px;
  font-size: 10px;
}

/* ---------------------------------------------------------- aciklama --- */
body .restaurant-container.theme_1 .homeSingle_item .price_section {
  margin: 0;
}

body .restaurant-container.theme_1 .homeSingle_item .price_section p.details {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  max-height: 40px;
  margin: 4px 0 0;
  overflow: hidden;
  font-size: 14px;
  line-height: 20px;
  color: #5a6a89;
  color: var(--osp-muted, #5a6a89);
}

/* ------------------------------------------------- fiyat + Ekle satiri -- */
/* responsive.css 767px altinda bu satiri column + ortali yapiyordu. */
body .restaurant-container.theme_1 .homeSingle_item .port_d_flex.home_view {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  /* Uzun fiyat (indirimli iki fiyat, 320px) sigmazsa dugme alt satira, saga. */
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: auto;
  padding-top: 14px;
}

body .restaurant-container.theme_1 .homeSingle_item .priceGroup {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  min-width: 0;
  margin-right: 12px;
  gap: 0;
  font-variant-numeric: tabular-nums;
}

/* style.css `.priceGroup{gap:11px}` -> margin (eski motorda gap yok). */
body .restaurant-container.theme_1 .homeSingle_item .priceGroup > span {
  margin: 0 8px 0 0;
  font-size: 17px;
  font-weight: 700;
  line-height: 24px;
  white-space: nowrap;
  color: #0f1b33;
  color: var(--osp-ink, #0f1b33);
}

body .restaurant-container.theme_1 .homeSingle_item .priceGroup > span:last-child {
  margin-right: 0;
}

/* Indirimli urunde eski fiyat. !important GEREKCE: style.css
   `.previous_price{color:#fe696a !important}` beyaz uzerinde 2,9:1 (AA alti);
   --osp-muted 5,44:1 (koyu: #9fb0cc / #111c33 ~8:1). Ustu cizili kalir. */
body .restaurant-container.theme_1 .homeSingle_item .priceGroup > span.previous_price {
  font-size: 13px;
  font-weight: 500;
  text-decoration: line-through;
  color: #5a6a89 !important;
  color: var(--osp-muted, #5a6a89) !important;
}

/* Ekle: rezervasyon sayfasinin ana eylemi gibi dolu marka rengi.
   !important GEREKCE: zemin/yazi/cerceve style.css `.port_d_flex.home_view a`
   + magaza renk katmanindan (--dcolor, %10 zemin) geliyor ve :hover'da
   style.css #29c7ac + #fff yaziyor; acik/koyu temada yazi ve ikon rengi
   --osp-on-brand olmali (koyu: #061024 / #7aa2ff = 7,62:1; acik: #fff /
   #2a5fe6 = 5,42:1). getComputedStyle ile olculdu. */
body .restaurant-container.theme_1 .homeSingle_item .port_d_flex.home_view a.quick_view {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  min-height: 40px;
  margin: 0 0 0 auto;
  padding: 0 16px;
  border: 1px solid transparent !important;
  border-radius: 999px;
  border-radius: var(--osp-r-pill, 999px);
  background-color: #2a5fe6 !important;
  background-color: var(--osp-brand-600, #2a5fe6) !important;
  color: #fff !important;
  color: var(--osp-on-brand, #fff) !important;
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
  box-shadow: none;
  -webkit-transition: background-color 200ms cubic-bezier(.16, .84, .44, 1), box-shadow 200ms cubic-bezier(.16, .84, .44, 1), -webkit-transform 200ms cubic-bezier(.16, .84, .44, 1);
  transition: background-color 200ms cubic-bezier(.16, .84, .44, 1), box-shadow 200ms cubic-bezier(.16, .84, .44, 1), transform 200ms cubic-bezier(.16, .84, .44, 1);
}

body .restaurant-container.theme_1 .homeSingle_item .port_d_flex.home_view a.quick_view i {
  margin-right: 6px;
  font-size: 14px;
  color: #fff !important;
  color: var(--osp-on-brand, #fff) !important;
}

body .restaurant-container.theme_1 .homeSingle_item .port_d_flex.home_view a.quick_view span {
  display: inline;
  color: inherit !important;
}

body .restaurant-container.theme_1 .homeSingle_item .port_d_flex.home_view a.quick_view:hover {
  background-color: #1e4fd8 !important;
  background-color: var(--osp-brand-700, #1e4fd8) !important;
  color: #fff !important;
  color: var(--osp-on-brand, #fff) !important;
  border-color: transparent !important;
  box-shadow: 0 12px 30px -12px rgba(47, 107, 255, .45);
  box-shadow: var(--osp-shadow-brand, 0 12px 30px -12px rgba(47, 107, 255, .45));
}

body .restaurant-container.theme_1 .homeSingle_item .port_d_flex.home_view a.quick_view:active {
  -webkit-transform: translateY(1px);
  transform: translateY(1px);
}

/* Klavye odagi: :focus her motorda; :focus-visible'i bilen tarayici fare
   odaginda gizler (ayri kural: bilmeyen motor yalniz onu atar). */
body .restaurant-container.theme_1 .homeSingle_item .port_d_flex.home_view a.quick_view:focus {
  outline: 3px solid #2f6bff;
  outline: 3px solid var(--osp-brand, #2f6bff);
  outline-offset: 2px;
}

body .restaurant-container.theme_1 .homeSingle_item .port_d_flex.home_view a.quick_view:focus:not(:focus-visible) {
  outline: none;
}

/* ------------------------------------------------------------- telefon -- */
/* 2 sutunda kart ~150-180px: fiyat solda, dugme sagda yuvarlak ikon.
   "Ekle" yazisi gorsel olarak gizlenir ama ekran okuyucuda kalir (style.css
   display:none yapiyordu; o zaman ad yalniz Ingilizce title'dan geliyordu). */
@media (max-width: 575.98px) {
  body .restaurant-container.theme_1 .homeSingle_item,
  body .restaurant-container.theme_1 #showCatItem .homeSingle_item {
    margin-bottom: 10px;
  }

  body .restaurant-container.theme_1 .homeSingle_item .homeItemDetails.list_view {
    padding: 12px;
  }

  body .restaurant-container.theme_1 .homeSingle_item .topTitle h4 {
    font-size: 15px;
    line-height: 20px;
    max-height: 40px;
  }

  body .restaurant-container.theme_1 .homeSingle_item .top___title .veg_type {
    margin-top: 5px;
  }

  body .restaurant-container.theme_1 .homeSingle_item .price_section p.details {
    font-size: 13px;
    line-height: 18px;
    max-height: 36px;
  }

  body .restaurant-container.theme_1 .homeSingle_item .port_d_flex.home_view {
    padding-top: 10px;
  }

  body .restaurant-container.theme_1 .homeSingle_item .priceGroup {
    margin-right: 8px;
  }

  body .restaurant-container.theme_1 .homeSingle_item .priceGroup > span {
    font-size: 15px;
    line-height: 22px;
  }

  body .restaurant-container.theme_1 .homeSingle_item .priceGroup > span.previous_price {
    font-size: 12px;
  }

  body .restaurant-container.theme_1 .homeSingle_item .port_d_flex.home_view a.quick_view {
    width: 40px;
    min-width: 40px;
    height: 40px;
    min-height: 40px;
    padding: 0;
  }

  body .restaurant-container.theme_1 .homeSingle_item .port_d_flex.home_view a.quick_view i {
    margin-right: 0;
    font-size: 15px;
  }

  body .restaurant-container.theme_1 .homeSingle_item .port_d_flex.home_view a.quick_view span {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
  }
}

/* ===================================================== kategori sayfasi == */
/* Filtre satiri: kategori acilir listesi + Ara kutusu (theme1/single_category.php).
   Sayfanin ust bandi (include/banner.php) bu dosyanin isi degil. */
body .restaurant-container.theme_1 .single__cat__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0;
  padding: 32px 0 24px;
}

/* style.css flex `gap:10px` + kp33/V yedegi `> * + *{margin-left:10px}`
   yerine her motorda ayni margin. */
body .restaurant-container.theme_1 .single__cat__header > * + * {
  margin-left: 12px;
}

/* Acilir liste: rezervasyon formundaki alan (osp-theme § 4 + osp-reservation
   .form-control). !important GEREKCE: style.css `select.ci-select{color:
   var(--color) !important}` ve :focus'ta border/renk !important. */
body .restaurant-container.theme_1 .single__cat__header select.ci-select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: auto;
  min-width: 220px;
  max-width: 320px;
  height: 48px;
  margin: 0;
  padding: 0 44px 0 14px;
  border: 1px solid rgba(15, 23, 42, .18) !important;
  border: 1px solid var(--osp-line-strong, rgba(15, 23, 42, .18)) !important;
  border-radius: 14px;
  border-radius: var(--osp-r, 14px);
  background-color: #fff;
  background-color: var(--osp-surface, #fff);
  /* Ok: --osp-muted #5a6a89 tek renkli SVG; koyu temada asagida acik ton. */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%235a6a89' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 16px center;
  background-size: 12px 8px;
  color: #0f1b33 !important;
  color: var(--osp-ink, #0f1b33) !important;
  font-family: inherit;
  font-size: 16px;
  font-weight: 500;
  line-height: 46px;
  cursor: pointer;
  box-shadow: none;
  -webkit-transition: border-color 140ms cubic-bezier(.16, .84, .44, 1), box-shadow 140ms cubic-bezier(.16, .84, .44, 1);
  transition: border-color 140ms cubic-bezier(.16, .84, .44, 1), box-shadow 140ms cubic-bezier(.16, .84, .44, 1);
}

/* Edge 16 / IE yerel okunu gizle (appearance:none'u bilmez). */
body .restaurant-container.theme_1 .single__cat__header select.ci-select::-ms-expand {
  display: none;
}

body .restaurant-container.theme_1 .single__cat__header select.ci-select:hover {
  border-color: #2a5fe6 !important;
  border-color: var(--osp-brand-600, #2a5fe6) !important;
}

body .restaurant-container.theme_1 .single__cat__header select.ci-select:focus {
  border-color: #2a5fe6 !important;
  border-color: var(--osp-brand-600, #2a5fe6) !important;
  box-shadow: 0 0 0 4px rgba(47, 107, 255, .10);
  box-shadow: 0 0 0 4px var(--osp-brand-tint, rgba(47, 107, 255, .10));
  outline: none;
}

body .restaurant-container.theme_1 .single__cat__header select.ci-select option {
  background-color: #fff;
  background-color: var(--osp-surface, #fff);
  color: #0f1b33;
  color: var(--osp-ink, #0f1b33);
}

body.theme-dark .restaurant-container.theme_1 .single__cat__header select.ci-select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%239fb0cc' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

/* Ara kutusu: style.css mutlak konumlu, golgeli (!important), 5px koseli
   kutu + sabit 250px girdi. Akista, cizgili alan + icinde ikon dugmesi. */
body .restaurant-container.theme_1 .single__cat__header .searchSection {
  -webkit-box-flex: 0;
  -ms-flex: 0 1 380px;
  flex: 0 1 380px;
  min-width: 0;
}

body .restaurant-container.theme_1 .single__cat__header .itemSearch-2 {
  margin: 0;
}

body .restaurant-container.theme_1 .single__cat__header .searchBar-2 {
  position: relative;
  width: 100%;
  min-width: 0;
  height: auto;
  margin: 0;
}

/* !important GEREKCE: style.css `.search-box-2{box-shadow:... !important}`. */
body .restaurant-container.theme_1 .single__cat__header .search-box-2 {
  position: relative;
  top: auto;
  left: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 48px;
  padding: 0 4px 0 14px;
  -webkit-transform: none;
  transform: none;
  border: 1px solid rgba(15, 23, 42, .18);
  border: 1px solid var(--osp-line-strong, rgba(15, 23, 42, .18));
  border-radius: 14px;
  border-radius: var(--osp-r, 14px);
  background-color: #fff;
  background-color: var(--osp-surface, #fff);
  box-shadow: none !important;
  -webkit-transition: border-color 140ms cubic-bezier(.16, .84, .44, 1), box-shadow 140ms cubic-bezier(.16, .84, .44, 1);
  transition: border-color 140ms cubic-bezier(.16, .84, .44, 1), box-shadow 140ms cubic-bezier(.16, .84, .44, 1);
}

body .restaurant-container.theme_1 .single__cat__header .search-box-2:hover {
  border-color: #2a5fe6;
  border-color: var(--osp-brand-600, #2a5fe6);
}

/* Odak cercevesi kutunun tamaminda (:focus-within). Ayri kural: bilmeyen
   motor (Edge 16, Chrome 58) yalniz bunu atar; asagidaki girdi :focus
   yedegi onlarda halkayi cizer. !important GEREKCE: kutu golgesi satici
   kuralinda !important. */
body .restaurant-container.theme_1 .single__cat__header .search-box-2:focus-within {
  border-color: #2a5fe6;
  border-color: var(--osp-brand-600, #2a5fe6);
  box-shadow: 0 0 0 4px rgba(47, 107, 255, .10) !important;
  box-shadow: 0 0 0 4px var(--osp-brand-tint, rgba(47, 107, 255, .10)) !important;
}

body .restaurant-container.theme_1 .single__cat__header .search-txt-2 {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  width: auto;
  min-width: 0;
  height: 46px;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: #0f1b33;
  color: var(--osp-ink, #0f1b33);
  font-family: inherit;
  font-size: 16px;
  line-height: 46px;
}

/* Eski motor yedegi: kutu halkasi yoksa girdinin kendisi cerceve alir. */
body .restaurant-container.theme_1 .single__cat__header .search-txt-2:focus {
  outline: 2px solid #2f6bff;
  outline: 2px solid var(--osp-brand, #2f6bff);
  outline-offset: 2px;
}

/* :focus-within'i bilen motorda halka kutuda; girdi cercevesi gereksiz. */
body .restaurant-container.theme_1 .single__cat__header .search-box-2:focus-within .search-txt-2 {
  outline: none;
}

body .restaurant-container.theme_1 .single__cat__header .search-txt-2::-webkit-input-placeholder {
  color: #5a6a89;
  color: var(--osp-muted, #5a6a89);
  opacity: 1;
}

body .restaurant-container.theme_1 .single__cat__header .search-txt-2::-moz-placeholder {
  color: #5a6a89;
  color: var(--osp-muted, #5a6a89);
  opacity: 1;
}

body .restaurant-container.theme_1 .single__cat__header .search-txt-2:-ms-input-placeholder {
  color: #5a6a89;
  color: var(--osp-muted, #5a6a89);
}

body .restaurant-container.theme_1 .single__cat__header .search-txt-2::placeholder {
  color: #5a6a89;
  color: var(--osp-muted, #5a6a89);
  opacity: 1;
}

body .restaurant-container.theme_1 .single__cat__header .search-btn {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 40px;
  flex: 0 0 40px;
  width: 40px;
  height: 40px;
  margin: 0 0 0 4px;
  padding: 0;
  border: 0;
  border-radius: 10px;
  border-radius: var(--osp-r-sm, 10px);
  background-color: transparent;
  color: #5a6a89;
  color: var(--osp-muted, #5a6a89);
  font-size: 18px;
  cursor: pointer;
  -webkit-transition: background-color 140ms cubic-bezier(.16, .84, .44, 1), color 140ms cubic-bezier(.16, .84, .44, 1);
  transition: background-color 140ms cubic-bezier(.16, .84, .44, 1), color 140ms cubic-bezier(.16, .84, .44, 1);
}

body .restaurant-container.theme_1 .single__cat__header .search-btn:hover {
  background-color: rgba(47, 107, 255, .10);
  background-color: var(--osp-brand-tint, rgba(47, 107, 255, .10));
  color: #2a5fe6;
  color: var(--osp-brand-600, #2a5fe6);
}

body .restaurant-container.theme_1 .single__cat__header .search-btn:focus {
  outline: 3px solid #2f6bff;
  outline: 3px solid var(--osp-brand, #2f6bff);
  outline-offset: 0;
}

body .restaurant-container.theme_1 .single__cat__header .search-btn:focus:not(:focus-visible) {
  outline: none;
}

/* Telefon / dar tablet: alt alta, tam genislik. */
@media (max-width: 767.98px) {
  body .restaurant-container.theme_1 .single__cat__header {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    padding: 20px 0 16px;
  }

  body .restaurant-container.theme_1 .single__cat__header > * + * {
    margin-left: 0;
    margin-top: 12px;
  }

  body .restaurant-container.theme_1 .single__cat__header select.ci-select {
    width: 100%;
    min-width: 0;
    max-width: none;
  }

  body .restaurant-container.theme_1 .single__cat__header .searchSection {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 100%;
  }
}

/* ------------------------------------------------- eski tarayici ---- */
/* style.css kp33/V yedekleri flex gap yerine `> * + *:not(#kp33v)` margin'i
   veriyor (1,2,0); yalniz eski motorda calisir ve bu dosyanin margin'lerine
   eklenirdi (telefonda Ara kutusu 10px saga kayardi, eski fiyat 19px
   uzakta dururdu). Ayni vekil kosul (inset: Chrome 87 / Safari 14.1 /
   Firefox 66), :not(#kp34y) ile (1,3,1). Modern tarayicida hic uygulanmaz. */
@supports not (inset: 0) {
  body .restaurant-container.theme_1 .single__cat__header > * + *:not(#kp34y) {
    margin-left: 12px;
  }

  body .restaurant-container.theme_1 .homeSingle_item .priceGroup > * + *:not(#kp34y) {
    margin-left: 0;
  }
}

@media (max-width: 767.98px) {
  @supports not (inset: 0) {
    body .restaurant-container.theme_1 .single__cat__header > * + *:not(#kp34y) {
      margin-left: 0;
    }
  }
}

/* ------------------------------------------------------- hareket azalt -- */
@media (prefers-reduced-motion: reduce) {
  body .restaurant-container.theme_1 .homeSingle_item,
  body .restaurant-container.theme_1 .homeSingle_item .port_d_flex.home_view a.quick_view,
  body .restaurant-container.theme_1 .single__cat__header select.ci-select,
  body .restaurant-container.theme_1 .single__cat__header .search-box-2,
  body .restaurant-container.theme_1 .single__cat__header .search-btn {
    -webkit-transition: none;
    transition: none;
  }

  body .restaurant-container.theme_1 .homeSingle_item .port_d_flex.home_view a.quick_view:active {
    -webkit-transform: none;
    transform: none;
  }
}
