/* =====================================================================================================
 *  kingstur-alanlar.css  —  Sorgu alanları: konum listesi · yolcu sayacı · takvim · select · anahtarlar
 * -----------------------------------------------------------------------------------------------------
 *  Bağımsız çalışır. kingstur-premium.css / kingstur-secim.css varsa değişkenlerini devralır.
 *  HTML'e dokunulmadı — tüm görünüm buradan geliyor.
 *
 *  SIRALAMA: sorgu-alanlari.css, yenistil.min.css ve flatpickr.min.css'ten SONRA yüklenmeli.
 * ===================================================================================================== */

:root {
  --ka-brand:      var(--kt-brand, var(--kp-brand, #e01b22));
  --ka-brand-dark: #b8151b;
  --ka-brand-soft: rgba(224, 27, 34, .09);
  --ka-brand-ring: rgba(224, 27, 34, .18);
  --ka-navy:       #171a52;
  --ka-ink:        var(--kt-ink,   #12131a);
  --ka-ink-2:      var(--kt-ink-2, #63656f);
  --ka-ink-3:      #9a9ca6;
  --ka-surface:    #ffffff;
  --ka-surface-2:  #f7f7f9;
  --ka-line:       #e8e8ed;
  --ka-line-2:     #d9d9e1;
  --ka-r-sm: 10px;
  --ka-r-md: 14px;
  --ka-r-lg: 18px;
  --ka-pill: 999px;
  --ka-fast: .16s cubic-bezier(.22, .61, .36, 1);
  --ka-sh-1: 0 1px 2px rgba(16, 20, 40, .05), 0 4px 14px rgba(16, 20, 40, .06);
  --ka-sh-2: 0 10px 30px rgba(16, 20, 40, .12), 0 2px 6px rgba(16, 20, 40, .06);
  --ka-sh-3: 0 22px 60px rgba(10, 14, 30, .18), 0 3px 10px rgba(10, 14, 30, .08);
}

/* =====================================================================================================
   1) ALAN SATIRI  —  Nereden / Nereye / Tarih / Yolcu
   ===================================================================================================== */

body .custom-search-form__list {
  border: 0 !important;
  border-radius: var(--ka-r-lg) !important;
  background: var(--ka-surface);
  padding: 6px !important;
  gap: 6px !important;
  height: auto !important;
  box-shadow: inset 0 0 0 1px var(--ka-line);
}

body .custom-search-form__list__item { padding: 0 !important; }

/* Her alan kendi kutusu — dikey çizgi yerine yumuşak zemin */
body .custom-search-form__list__item__label {
  border-radius: var(--ka-r-md) !important;
  background: var(--ka-surface-2);
  transition: background var(--ka-fast), box-shadow var(--ka-fast);
  min-height: 62px;
}
body .custom-search-form__list__item__label > label {
  padding: 8px 14px !important;
  gap: 10px !important;
}
body .custom-search-form__list__item__label:hover { background: #f1f1f5; }
body .custom-search-form__list__item__label:focus-within {
  background: var(--ka-surface);
  box-shadow: 0 0 0 2px var(--ka-brand), 0 0 0 5px var(--ka-brand-ring);
}

/* Eski dikey ayraç çizgileri artık gereksiz */
body .custom-search-form__list__item__label--departure::after,
body .custom-search-form__list__item__label--arrival::after,
body .custom-search-form__list__item__label--date::after,
body .custom-search-form__list__item__label--passenger-count::after,
body .custom-search-form__container--car .custom-search-form__list__item--date.car-date::after {
  content: none !important;
}

body .custom-search-form__list__item__label__title {
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: .01em;
  color: var(--ka-ink-2) !important;
  text-transform: none;
}

body .custom-search-form__list__item__label input {
  background: transparent !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  color: var(--ka-ink) !important;
  padding: 2px 0 0 !important;
  height: auto !important;
  line-height: 1.35 !important;
}
body .custom-search-form__list__item__label input::placeholder {
  color: var(--ka-ink-3) !important;
  font-weight: 400 !important;
}

body .custom-search-form-icon_div {
  width: 34px !important;
  height: 34px;
  min-width: 34px;
  margin-top: 0 !important;
  border-radius: var(--ka-r-sm);
  background: var(--ka-surface);
  box-shadow: inset 0 0 0 1px var(--ka-line);
  display: flex !important;
  align-items: center;
  justify-content: center;
  transition: background var(--ka-fast), color var(--ka-fast);
}
body .custom-search-form-icon_div i {
  font-size: 15px !important;
  color: var(--ka-brand) !important;
  width: auto !important;
}
body .custom-search-form__list__item__label:focus-within .custom-search-form-icon_div {
  background: var(--ka-brand);
  box-shadow: none;
}
body .custom-search-form__list__item__label:focus-within .custom-search-form-icon_div i { color: #fff !important; }

/* Ara düğmesi */
body .custom-search-form__list__btn { padding: 0 !important; }
body .custom-search-form__list__btn button {
  border-radius: var(--ka-r-md) !important;
  background: var(--ka-navy) !important;
  font-size: 15.5px !important;
  font-weight: 600 !important;
  letter-spacing: -.01em;
  min-height: 62px !important;
  box-shadow: 0 6px 18px rgba(23, 26, 82, .26);
  transition: background var(--ka-fast), transform var(--ka-fast), box-shadow var(--ka-fast);
}
body .custom-search-form__list__btn button:hover {
  background: #10133f !important;
  box-shadow: 0 8px 22px rgba(23, 26, 82, .34);
}
body .custom-search-form__list__btn button:active { transform: scale(.985); }

/* Uçuş ekle / yolculuk sil */
body .custom-search-form__list__add-flight { color: var(--ka-brand) !important; font-size: 14.5px !important; }
body .custom-search-form__list__item--close i { color: var(--ka-ink-3) !important; transition: color var(--ka-fast); }
body .custom-search-form__list__item--close:hover i { color: var(--ka-brand) !important; }

/* =====================================================================================================
   2) TEK YÖN / GİDİŞ-DÖNÜŞ  radyoları
   ===================================================================================================== */

body .custom-search-form__radio-btn { gap: 8px !important; margin-bottom: 12px !important; }

/* Radyolar beyaz kartın içinde duruyor — bu yüzden koyu metin */
body .custom-search-form__radio-btn label {
  gap: 8px !important;
  border-radius: var(--ka-pill);
  font-size: 14.5px !important;
  font-weight: 500 !important;
  color: var(--ka-ink-2) !important;
  cursor: pointer;
  transition: background var(--ka-fast), color var(--ka-fast);
}
body .custom-search-form__radio-btn label::before {
  width: 18px !important;
  height: 18px !important;
  border-width: 2px !important;
  border-color: var(--ka-line-2) !important;
  background: transparent !important;
  flex: 0 0 auto;
  transition: border-color var(--ka-fast), background var(--ka-fast), box-shadow var(--ka-fast);
}
body .custom-search-form__radio-btn label:hover {
  background: rgba(18, 19, 26, .045);
  color: var(--ka-ink) !important;
}

body .custom-search-form__radio-btn input[type='radio']:checked + label {
  background: var(--ka-brand-soft);
  color: var(--ka-brand) !important;
  font-weight: 600 !important;
}
body .custom-search-form__radio-btn input[type='radio']:checked + label::before {
  border-color: var(--ka-brand) !important;
  background: #fff !important;
  box-shadow: inset 0 0 0 4px var(--ka-brand);
}
body .custom-search-form__radio-btn input[type='radio']:checked + label::after { content: none !important; }

/* =====================================================================================================
   3) "SADECE AKTARMASIZ UÇUŞLAR" anahtarı
   ===================================================================================================== */

body .transfer-options { padding-top: 14px !important; }
body .transfer-options label .transfer-label {
  color: var(--ka-ink-2) !important;
  font-size: 14.5px;
  font-weight: 500;
  padding-left: 56px !important;
}
body .transfer-options label .transfer-label::after {
  width: 44px !important;
  height: 26px !important;
  background-color: #dcdce4 !important;
  transition: background-color var(--ka-fast) !important;
}
body .transfer-options label .transfer-label::before {
  width: 20px !important;
  height: 20px !important;
  left: 3px !important;
  box-shadow: 0 1px 3px rgba(16, 20, 40, .22);
  transition: left var(--ka-fast) !important;
}
body .transfer-options label input:checked + .transfer-label { color: var(--ka-ink) !important; font-weight: 600; }
body .transfer-options label input:checked + .transfer-label::after { background-color: var(--ka-brand) !important; }
body .transfer-options label input:checked + .transfer-label::before { left: 21px !important; }

html[dir="rtl"] body .transfer-options label .transfer-label { padding-left: 0 !important; padding-right: 56px; }

/* =====================================================================================================
   4) KONUM ARAMA AÇILIR LİSTESİ  (.dropdown-content2 / .dropyazi)
   ===================================================================================================== */

body .dropdown-content2 {
  width: min(460px, calc(100vw - 32px)) !important;
  display:none;
  max-height: 340px !important;
  margin-top: 8px;
  padding: 6px !important;
  border: 0 !important;
  border-radius: var(--ka-r-lg) !important;
  background: var(--ka-surface) !important;
  box-shadow: var(--ka-sh-3) !important;
  z-index: 1200 !important;
  scrollbar-width: thin;
  scrollbar-color: var(--ka-line-2) transparent;
}
body .dropdown-content2::-webkit-scrollbar { width: 10px !important; }
body .dropdown-content2::-webkit-scrollbar-track { background: transparent !important; }
body .dropdown-content2::-webkit-scrollbar-thumb {
  background: var(--ka-line-2) !important;
  border-radius: var(--ka-pill) !important;
  border: 3px solid #fff;
  background-clip: padding-box !important;
}
body .dropdown-content2::-webkit-scrollbar-thumb:hover { background: #c3c3ce !important; }

body .dropdown-content2 .dropyazi {
  gap: 12px;
  padding: 10px 12px !important;
  border-radius: var(--ka-r-md);
  color: var(--ka-ink) !important;
  transition: background var(--ka-fast);
}
body .dropdown-content2 .dropyazi + .dropyazi { margin-top: 2px; }

body .dropdown-content2 .dropyazi:hover,
body .dropdown-content2 .dropyazi.active {
  background: var(--ka-brand-soft) !important;
}

/* İkon — yumuşak kare rozet */
body .dropdown-content2 .dropyazi > div:first-child,
body .dropdown-content2 .dropyazi > i {
  flex: 0 0 auto;
  width: 34px;
  height: 34px;
  margin-right: 0 !important;
  border-radius: var(--ka-r-sm);
  background: var(--ka-surface-2);
  box-shadow: inset 0 0 0 1px var(--ka-line);
  display: flex;
  align-items: center;
  justify-content: center;
}
body .dropdown-content2 .dropyazi i {
  font-size: 14px !important;
  color: var(--ka-brand) !important;
  margin: 0 !important;
}
body .dropdown-content2 .dropyazi:hover i,
body .dropdown-content2 .dropyazi.active i { color: var(--ka-brand-dark) !important; }
body .dropdown-content2 .dropyazi:hover > div:first-child,
body .dropdown-content2 .dropyazi.active > div:first-child,
body .dropdown-content2 .dropyazi:hover > i,
body .dropdown-content2 .dropyazi.active > i {
  background: #fff;
  box-shadow: inset 0 0 0 1px var(--ka-brand-ring);
}

body .dropdown-content2 .dropyazi .result-location,
body .dropdown-content2 .dropyazi > span {
  min-width: 0;
  font-size: 14.5px;
  line-height: 1.35 !important;
  overflow: hidden;
  text-overflow: ellipsis;
}
body .dropdown-content2 .dropyazi .result-location > span { font-weight: 500; }
body .dropdown-content2 .dropyazi .result-location small {
  display: block;
  font-size: 12.5px;
  color: var(--ka-ink-2) !important;
  margin-top: 1px;
}

/* Aranan kelimenin vurgusu (JS <b> veya <mark> basıyor) */
body .dropdown-content2 .dropyazi b,
body .dropdown-content2 .dropyazi strong,
body .dropdown-content2 .dropyazi mark {
  background: transparent !important;
  color: var(--ka-brand) !important;
  font-weight: 700;
  padding: 0;
}

/* Otel sayısı rozeti */
body .dropdown-content2 .result-hotel-count {
  flex: 0 0 auto;
  padding: 3px 9px;
  border-radius: var(--ka-pill);
  background: var(--ka-surface-2);
  color: var(--ka-ink-2) !important;
  font-size: 12px;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
}
body .dropdown-content2 .dropyazi:hover .result-hotel-count,
body .dropdown-content2 .dropyazi.active .result-hotel-count {
  background: #fff;
  color: var(--ka-brand) !important;
}

/* =====================================================================================================
   5) YOLCU / MİSAFİR SAYACI  (.dropdown-menu.kisi-sayisi)
   ===================================================================================================== */

body .custom-search-form .dropdown-menu,
body .dropdown-menu.kisi-sayisi {
  width: min(320px, calc(100vw - 32px)) !important;
  margin-top: 8px !important;
  padding: 6px !important;
  border: 0 !important;
  border-radius: var(--ka-r-lg) !important;
  background: var(--ka-surface) !important;
  box-shadow: var(--ka-sh-3) !important;
  z-index: 1200 !important;
}

body .dropdown-menu .items-wrapper { padding: 0 !important; }

body .dropdown-menu .dropdown-item {
  gap: 12px;
  margin: 0 !important;
  padding: 11px 12px !important;
  border: 0 !important;
  border-radius: var(--ka-r-md);
  background: transparent !important;
  color: var(--ka-ink) !important;
  font-size: 14.5px;
  font-weight: 500;
  cursor: default;
}
body .dropdown-menu .dropdown-item + .dropdown-item { box-shadow: inset 0 1px 0 var(--ka-line); border-radius: 0; }
body .dropdown-menu .dropdown-item:hover,
body .dropdown-menu .dropdown-item.active,
body .dropdown-menu .dropdown-item:active { background: transparent !important; color: var(--ka-ink) !important; }

/* "Çocuk 2-12" gibi yaş açıklaması küçük ve soluk olsun */
body .dropdown-menu .dropdown-item > span { line-height: 1.3; }
body .dropdown-menu .dropdown-item > span small,
body .dropdown-menu .dropdown-item > span span { color: var(--ka-ink-3); font-weight: 400; }

body .dropdown-menu .butonlar {
  display: flex;
  align-items: center;
  gap: 4px;
  flex: 0 0 auto;
}

/* +/- düğmeleri */
body .dropdown-menu .arttirbuton {
  width: 32px;
  height: 32px;
  padding: 0 !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--ka-brand) !important;
  border-radius: var(--ka-pill) !important;
  background: #fff !important;
  color: var(--ka-brand) !important;
  font-size: 17px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  opacity: 1 !important;
  cursor: pointer;
  transition: background var(--ka-fast), color var(--ka-fast),
              border-color var(--ka-fast), transform var(--ka-fast);
  -webkit-tap-highlight-color: transparent;
}
body .dropdown-menu .arttirbuton:hover:not(:disabled) {
  background: var(--ka-brand) !important;
  color: #fff !important;
}
body .dropdown-menu .arttirbuton:active:not(:disabled) { transform: scale(.9); }

/* Düz tire yerine gerçek eksi işareti — düğmenin ortasında dengeli durur */
body .dropdown-menu .arttirbuton { font-size: 0 !important; }
body .dropdown-menu .arttirbuton::before {
  font-size: 19px;
  line-height: 1;
  font-weight: 400;
}
body .dropdown-menu .kisi-decrement::before { content: "\2212"; }   /* − */
body .dropdown-menu .kisi-increment::before { content: "\002B"; }   /* + */

/* Pasif: gri zemin yerine soluk kenarlık — "bozuk" görünmesin */
body .dropdown-menu .arttirbuton:disabled,
body .dropdown-menu .kisi-decrement:disabled,
body .dropdown-menu .kisi-increment:disabled {
  border-color: var(--ka-line-2) !important;
  background: var(--ka-surface-2) !important;
  color: #a9abb6 !important;
  cursor: not-allowed;
  opacity: 1 !important;
}

body .dropdown-menu .kisi-count {
  min-width: 34px !important;
  font-size: 15px !important;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  color: var(--ka-ink);
}

/* =====================================================================================================
   5b) ODA YÖNETİMİ  —  "Odalar" kutusu kalktı, odalar açılır listenin içinde
   ===================================================================================================== */

/* Satırdan kaldırılan "Odalar" alanı (select DOM'da kalıyor, sadece görünmüyor).
   display:none olduğu için flex payını da bırakır; kalan alanlar düğmeye kadar uzar. */
body .custom-search-form__list__item.kt-gizli-alan { display: none !important; }

/* "Odalar" gidince otelde 2.5'lik pay boşaldı. Otel adları uzun olabildiği için
   "Nereye ?" alanına biraz daha geniş pay veriyoruz. */
body .custom-search-form__container--hotel .custom-search-form__list__item--dep-arr { flex-grow: 6 !important; }
body .custom-search-form__container--hotel .custom-search-form__list__item--date     { flex-grow: 5 !important; }
body .custom-search-form__container--hotel .custom-search-form__list__item--passenger { flex-grow: 2.6 !important; }

/* Eski sayfalama okları */
body .dropdown-menu .dropdown-pagination.kt-gizli { display: none !important; }

body .dropdown-menu.kt-oda-modu {
  width: min(360px, calc(100vw - 24px)) !important;
  padding: 6px 6px 0 !important;
}

/* Yatay kaydırmalı sayfalama yerine dikey liste */
body .dropdown-menu.kt-oda-modu .pagination-wrapper {
  display: block !important;
  flex-wrap: nowrap;
  transform: none !important;
  transition: none !important;
  max-height: min(56vh, 460px);
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
}
body .dropdown-menu.kt-oda-modu .pagination-wrapper::-webkit-scrollbar { width: 10px; }
body .dropdown-menu.kt-oda-modu .pagination-wrapper::-webkit-scrollbar-thumb {
  background: var(--ka-line-2);
  border: 3px solid #fff;
  background-clip: padding-box;
  border-radius: var(--ka-pill);
}

body .dropdown-menu.kt-oda-modu .items-wrapper {
  display: none;
  flex: none !important;
  width: 100% !important;
  padding: 0 !important;
}
body .dropdown-menu.kt-oda-modu .items-wrapper.kt-oda-acik { display: block; }
body .dropdown-menu.kt-oda-modu .items-wrapper[data-disabled="true"] { display: none !important; }

/* Odalar arası ayraç */
body .dropdown-menu.kt-oda-modu .items-wrapper.kt-oda-acik ~ .items-wrapper.kt-oda-acik {
  border-top: 1px solid var(--ka-line);
  margin-top: 4px;
  padding-top: 4px !important;
}

/* --- Oda başlığı --- */
body .kt-oda-bas {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 10px 12px 4px;
}
body .dropdown-menu.kt-tek-oda .kt-oda-bas { display: none; }

body .kt-oda-ad {
  font-size: 14.5px;
  font-weight: 700;
  letter-spacing: -.01em;
  color: var(--ka-ink);
}

body .kt-oda-sil {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 4px 9px;
  border: 0;
  border-radius: var(--ka-pill);
  background: transparent;
  color: var(--ka-ink-2);
  font-size: 12.5px;
  font-weight: 500;
  line-height: 1;
  cursor: pointer;
  transition: background var(--ka-fast), color var(--ka-fast);
}
body .kt-oda-sil span { font-size: 14px; line-height: 1; }
body .kt-oda-sil:hover { background: var(--ka-brand-soft); color: var(--ka-brand); }

/* --- Alt bar: oda ekle + tamam --- */
body .kt-oda-alt {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 6px 8px;
  margin-top: 2px;
  border-top: 1px solid var(--ka-line);
  background: #fff;
  position: sticky;
  bottom: 0;
}

body .kt-oda-ekle {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 9px 12px;
  border: 0;
  border-radius: var(--ka-r-sm);
  background: transparent;
  color: var(--ka-brand);
  font-size: 13.5px;
  font-weight: 600;
  line-height: 1;
  cursor: pointer;
  transition: background var(--ka-fast);
}
body .kt-oda-ekle span { font-size: 16px; line-height: 1; }
body .kt-oda-ekle:hover { background: var(--ka-brand-soft); }

body .kt-oda-tamam {
  margin-inline-start: auto;
  padding: 10px 22px;
  border: 0;
  border-radius: var(--ka-r-sm);
  background: var(--ka-navy);
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
  cursor: pointer;
  transition: background var(--ka-fast), transform var(--ka-fast);
}
body .kt-oda-tamam:hover { background: #10133f; }
body .kt-oda-tamam:active { transform: scale(.97); }

/* --- Çocuk yaşı satırları --- */
body .dropdown-menu .dropdown-item.custom-item {
  padding: 8px 12px !important;
  font-size: 13.5px;
  color: var(--ka-ink-2) !important;
}
body .dropdown-menu .dropdown-item.custom-item .butonlar { gap: 0; }
body .dropdown-menu .cocuk-sayisi-select {
  min-width: 92px;
  height: 36px;
  padding: 0 30px 0 11px;
  border: 1px solid var(--ka-line-2);
  border-radius: var(--ka-r-sm);
  background: #fff;
  color: var(--ka-ink);
  font-size: 14px;
  font-weight: 500;
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2363656f' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 14px 14px;
  background-position: right 9px center;
  transition: border-color var(--ka-fast), box-shadow var(--ka-fast);
}
body .dropdown-menu .cocuk-sayisi-select:focus {
  outline: none;
  border-color: var(--ka-brand);
  box-shadow: 0 0 0 3px var(--ka-brand-ring);
}
html[dir="rtl"] body .dropdown-menu .cocuk-sayisi-select {
  padding: 0 11px 0 30px;
  background-position: left 9px center;
}

/* Oda sayfalama (otel: 1. oda / 2. oda …) — eski görünüm, artık gizli ama dursun */
body .dropdown-menu .dropdown-pagination {
  padding: 6px 6px 10px !important;
  margin-bottom: 2px;
  box-shadow: inset 0 -1px 0 var(--ka-line);
  font-size: 14px !important;
  font-weight: 600;
  color: var(--ka-ink);
}
body .dropdown-menu .dropdown-pagination .left-arrow,
body .dropdown-menu .dropdown-pagination .right-arrow {
  width: 30px !important;
  height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--ka-pill);
  background: var(--ka-surface-2);
  color: var(--ka-ink-2);
  font-size: 12px;
  transition: background var(--ka-fast), color var(--ka-fast);
}
body .dropdown-menu .dropdown-pagination .left-arrow:hover,
body .dropdown-menu .dropdown-pagination .right-arrow:hover {
  background: var(--ka-brand-soft);
  color: var(--ka-brand);
}
body .dropdown-menu .dropdown-pagination .page-number { font-size: 14px; }

/* =====================================================================================================
   6) ODA SAYISI SELECT'İ
   ===================================================================================================== */

body .custom-select__container select,
body .custom-select__container.room_count_select select {
  height: 40px !important;
  padding: 0 34px 0 2px !important;
  border: 0 !important;
  background: transparent !important;
  font-size: 15px !important;
  font-weight: 500;
  color: var(--ka-ink) !important;
  cursor: pointer;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2363656f' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-size: 15px 15px !important;
  background-position: right 6px center !important;
}
body .custom-select__container select:focus { outline: none; }

html[dir="rtl"] body .custom-select__container select {
  padding: 0 2px 0 34px !important;
  background-position: left 6px center !important;
}

/* =====================================================================================================
   7) TAKVİM  (flatpickr)
   ===================================================================================================== */

.flatpickr-calendar {
  width: auto !important;
  margin-top: 8px;
  padding: 10px;
  border: 0 !important;
  border-radius: var(--ka-r-lg) !important;
  background: var(--ka-surface) !important;
  box-shadow: var(--ka-sh-3) !important;
  font-family: inherit !important;
  z-index: 1250 !important;
}
.flatpickr-calendar::before,
.flatpickr-calendar::after { display: none !important; }   /* eski ok/üçgen */

.flatpickr-calendar.showTimeInput.hasTime .flatpickr-time { border-top: 1px solid var(--ka-line); }

/* --- Ay başlığı --- */
.flatpickr-months { padding: 2px 0 8px; align-items: center; }
.flatpickr-months .flatpickr-month {
  height: 38px !important;
  background: transparent !important;
  color: var(--ka-ink) !important;
  overflow: visible;
}
.flatpickr-current-month {
  font-size: 15.5px !important;
  font-weight: 650 !important;
  padding: 0 !important;
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  color: var(--ka-ink) !important;
}
/* Ay <select>'inin doğal genişliği en uzun ay adına göre belirlenir ("September"),
   bu yüzden kısa aylarda yıl ile arasında boşluk kalıyordu.
   Ay sağa, yıl sola yaslanınca ikisi ortada birleşiyor. */
.flatpickr-current-month .flatpickr-monthDropdown-months {
  appearance: none;
  -webkit-appearance: none;
  border: 0;
  border-radius: var(--ka-r-sm);
  padding: 4px 0 !important;
  background: transparent !important;
  font-size: 15.5px;
  font-weight: 650;
  color: var(--ka-ink) !important;
  text-align: right;
  text-align-last: right;
  cursor: pointer;
  transition: color var(--ka-fast);
}
.flatpickr-current-month .flatpickr-monthDropdown-months:hover { color: var(--ka-brand) !important; }
.flatpickr-current-month .flatpickr-monthDropdown-months option {
  color: var(--ka-ink);
  background: #fff;
}
.flatpickr-current-month input.cur-year {
  font-weight: 650 !important;
  font-size: 15.5px !important;
  color: var(--ka-ink) !important;
  padding: 0 !important;
  text-align: left;
}

html[dir="rtl"] .flatpickr-current-month .flatpickr-monthDropdown-months {
  text-align: left;
  text-align-last: left;
}
html[dir="rtl"] .flatpickr-current-month input.cur-year { text-align: right; }
.numInputWrapper:hover { background: transparent !important; }
.numInputWrapper span { display: none !important; }        /* yıl için mini ok tuşları — gereksiz */
/* Ok tuşları gizlenince 6ch genişlik boşluk bırakıyordu */
.flatpickr-current-month .numInputWrapper { width: auto !important; }
.flatpickr-current-month input.cur-year { width: 5ch; text-align: left; }

.flatpickr-months .flatpickr-prev-month,
.flatpickr-months .flatpickr-next-month {
  top: 3px !important;
  width: 34px;
  height: 34px;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  border-radius: var(--ka-pill);
  background: var(--ka-surface-2);
  color: var(--ka-ink-2) !important;
  transition: background var(--ka-fast), color var(--ka-fast);
}
.flatpickr-months .flatpickr-prev-month { left: 6px !important; }
.flatpickr-months .flatpickr-next-month { right: 6px !important; }
.flatpickr-months .flatpickr-prev-month:hover,
.flatpickr-months .flatpickr-next-month:hover {
  background: var(--ka-brand-soft) !important;
  color: var(--ka-brand) !important;
}
.flatpickr-months .flatpickr-prev-month svg,
.flatpickr-months .flatpickr-next-month svg { width: 13px; height: 13px; }
.flatpickr-months .flatpickr-prev-month svg path,
.flatpickr-months .flatpickr-next-month svg path { fill: currentColor !important; }
.flatpickr-months .flatpickr-prev-month.flatpickr-disabled,
.flatpickr-months .flatpickr-next-month.flatpickr-disabled { display: none !important; }

/* --- Hafta günleri --- */
.flatpickr-weekdays { height: 30px !important; background: transparent !important; }
span.flatpickr-weekday {
  background: transparent !important;
  color: var(--ka-ink-3) !important;
  font-size: 11.5px !important;
  font-weight: 600 !important;
  letter-spacing: .04em;
  text-transform: uppercase;
}

/* --- Günler --- */
.flatpickr-days { border: 0 !important; }
.dayContainer { padding: 0 !important; border: 0 !important; }

/* DİKKAT: .flatpickr-day genişliğine (max-width / flex-basis) dokunulmuyor.
   flatpickr satır kırılmasını bu genişliğe göre hesaplıyor; 39px'in altına inince
   bir satıra 8 gün sığıyor ve takvim hafta başlıklarıyla kayıyor. */
.flatpickr-day {
  height: 39px !important;
  line-height: 39px !important;
  margin: 1px 0;
  border: 0 !important;
  border-radius: var(--ka-r-sm) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: var(--ka-ink) !important;
  transition: background var(--ka-fast), color var(--ka-fast);
}
.flatpickr-day:hover:not(.flatpickr-disabled):not(.selected):not(.startRange):not(.endRange) {
  background: var(--ka-surface-2) !important;
}

.flatpickr-day.today:not(.selected):not(.startRange):not(.endRange) {
  box-shadow: inset 0 0 0 1.5px var(--ka-line-2);
  font-weight: 650 !important;
}

.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange,
.flatpickr-day.selected:hover,
.flatpickr-day.startRange:hover,
.flatpickr-day.endRange:hover {
  background: var(--ka-brand) !important;
  color: #fff !important;
  font-weight: 650 !important;
  box-shadow: none !important;
}

/* Aralık: uçlar yuvarlak, arası düz — tek bir şerit gibi görünsün */
.flatpickr-day.inRange,
.flatpickr-day.inRange:hover {
  background: var(--ka-brand-soft) !important;
  color: var(--ka-brand-dark) !important;
  border-radius: 0 !important;
  box-shadow: -5px 0 0 var(--ka-brand-soft), 5px 0 0 var(--ka-brand-soft) !important;
}
.flatpickr-day.startRange { border-radius: var(--ka-r-sm) 0 0 var(--ka-r-sm) !important; }
.flatpickr-day.endRange   { border-radius: 0 var(--ka-r-sm) var(--ka-r-sm) 0 !important; }
.flatpickr-day.startRange.endRange { border-radius: var(--ka-r-sm) !important; }

/* Satır başı/sonu: şerit boşluğa taşmasın, ucu yuvarlansın */
.flatpickr-day.inRange:nth-child(7n+1) {
  border-radius: var(--ka-r-sm) 0 0 var(--ka-r-sm) !important;
  box-shadow: 5px 0 0 var(--ka-brand-soft) !important;
}
.flatpickr-day.inRange:nth-child(7n) {
  border-radius: 0 var(--ka-r-sm) var(--ka-r-sm) 0 !important;
  box-shadow: -5px 0 0 var(--ka-brand-soft) !important;
}

/* flatpickr'ın kendi gri şerit kuralları !important ile geliyor — aynı seçicilerle eziyoruz */
.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7) {
  box-shadow: -5px 0 0 var(--ka-brand-soft) !important;
}
.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1) {
  box-shadow: 5px 0 0 var(--ka-brand-soft) !important;
}

html[dir="rtl"] .flatpickr-day.startRange { border-radius: 0 var(--ka-r-sm) var(--ka-r-sm) 0 !important; }
html[dir="rtl"] .flatpickr-day.endRange   { border-radius: var(--ka-r-sm) 0 0 var(--ka-r-sm) !important; }

.flatpickr-day.flatpickr-disabled,
.flatpickr-day.flatpickr-disabled:hover,
.flatpickr-day.prevMonthDay,
.flatpickr-day.nextMonthDay {
  color: #cfd0d8 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* İki aylık görünümde aradaki boşluk */
.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer + .dayContainer {
  box-shadow: none !important;
  margin-left: 14px;
}
.flatpickr-calendar.multiMonth .flatpickr-months { gap: 0; }

/* --- Gece sayacı rozeti --- */
.flatpickr-calendar { position: absolute; }   /* rozet için konum referansı (flatpickr zaten absolute) */

.kt-gece {
  position: absolute;
  z-index: 5;
  transform: translate(-50%, -114%);
  padding: 4px 9px;
  border-radius: var(--ka-pill);
  background: var(--ka-ink);
  color: #fff;
  font-size: 11.5px;
  font-weight: 600;
  line-height: 1.3;
  white-space: nowrap;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  transition: opacity var(--ka-fast);
  box-shadow: 0 4px 12px rgba(10, 14, 30, .28);
}
.kt-gece::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  border: 4px solid transparent;
  border-top-color: var(--ka-ink);
}
.kt-gece.kt-gorunur { opacity: 1; visibility: visible; }

/* Saat seçimi (transfer / araç) */
.flatpickr-time input,
.flatpickr-time .flatpickr-time-separator,
.flatpickr-time .flatpickr-am-pm { color: var(--ka-ink) !important; font-weight: 600; }
.flatpickr-time input:hover,
.flatpickr-time .flatpickr-am-pm:hover { background: var(--ka-surface-2) !important; }

/* =====================================================================================================
   8) MOBİL
   ===================================================================================================== */

@media (max-width: 991.98px) {
  body .custom-search-form__list { padding: 5px !important; gap: 5px !important; }
  body .custom-search-form__list__btn button { min-height: 52px !important; }
}

@media (max-width: 780px) {
  /* Genişliği burada veriyoruz; SOL KONUMU JS hizalıyor (kingstur-alanlar.js),
     bu yüzden left/transform'a dokunmuyoruz — yoksa hizalama bozulur. */
  body .dropdown-content2,
  body .custom-search-form .dropdown-menu,
  body .dropdown-menu.kisi-sayisi,
  body .dropdown-menu.kt-oda-modu {
    width: calc(100vw - 28px) !important;
    max-width: calc(100vw - 28px) !important;
    margin-top: 10px !important;
  }

  body .dropdown-content2 { max-height: 52vh !important; }
  body .dropdown-menu.kt-oda-modu .pagination-wrapper { max-height: 48vh; }

  /* Dokunma hedefleri büyüsün */
  body .dropdown-content2 .dropyazi { padding: 12px !important; }
  body .dropdown-menu .dropdown-item { padding: 13px 12px !important; }
  /* font-size: 0 kuralını bozmamak için burada yazıyı DEĞİL, ::before'u büyütüyoruz.
     (Aksi halde hem gerçek "-" hem de ::before eksi işareti yan yana çıkıyor.) */
  body .dropdown-menu .arttirbuton { width: 36px; height: 36px; }
  body .dropdown-menu .arttirbuton::before { font-size: 21px; }
  body .dropdown-menu .kisi-count { min-width: 38px !important; font-size: 16px !important; }

  body .custom-search-form__list__item__label { min-height: 58px; }
  body .custom-search-form__list__item__label > label { padding: 7px 12px !important; }

  body .custom-search-form__radio-btn label { font-size: 14px !important; }
}

@media (max-width: 575.98px) {
  /* Dar ekranda takvim genişliği ekrana göre; günler 7'lik ızgaraya oturur.
     Izgara kullanıldığı için flatpickr'ın flex satır hesabı devre dışı kalıyor,
     bu yüzden burada genişlik vermek güvenli. */
  .flatpickr-calendar {
    padding: 8px;
    width: min(100%, calc(100vw - 24px)) !important;
    max-width: calc(100vw - 24px) !important;
  }
  .flatpickr-rContainer,
  .flatpickr-days,
  .flatpickr-weekdays,
  .dayContainer {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }
  .dayContainer {
    display: grid !important;
    grid-template-columns: repeat(7, 1fr);
  }
  .flatpickr-weekdaycontainer { display: grid !important; grid-template-columns: repeat(7, 1fr); }
  .flatpickr-day {
    width: 100% !important;
    max-width: 100% !important;
    height: 42px !important;
    line-height: 42px !important;
    font-size: 14.5px !important;
  }
  /* Izgarada hücreler bitişik olduğu için aralık gölgesine gerek yok */
  .flatpickr-day.inRange,
  .flatpickr-day.inRange:hover { box-shadow: none !important; }
}

/* =====================================================================================================
   9) Hareket azaltma
   ===================================================================================================== */

@media (prefers-reduced-motion: reduce) {
  body .custom-search-form__list__item__label,
  body .dropdown-menu .arttirbuton,
  body .dropdown-content2 .dropyazi,
  .flatpickr-day { transition: none !important; }
}
