/* ============================================================================
   Kuante — Mobil Dokunma Hedefleri ve Erişilebilirlik

   Ölçüm sonrası yazıldı. Hedef: her etkileşimli öğe en az 44x44 CSS piksel
   (WCAG 2.5.5 AAA / Apple HIG). Cümle içindeki metin bağlantıları bu
   kuraldan muaftır ve dokunulmadı.
   ========================================================================== */

/* ------------------------------------------------------- HAMBURGER MENÜ -- */
/* En kritik mobil kontroldü ve 22x14 px ölçülüyordu → 44x44.

   ÖNEMLİ: Tema 4 SPAN'lı hamburger kullanıyor ve bunları mutlak konumluyor:
   üst (0), orta (6), orta (6), alt (12). Ortadaki iki çizgi bilerek üst üste
   duruyor — açılınca ±45° dönüp X'i oluşturuyorlar. Önce 4.'yü gizlemiştim,
   bu da ALT çubuğu yok edip ekranda 2 çizgi bırakıyordu. Dördü de duruyor;
   konum ve durumlar burada açıkça tanımlanıyor. */
.navbar-toggler {
  position: relative;
  width: 44px !important;
  height: 44px !important;
  padding: 0 !important;
  margin: 0;
  border: 0;
  border-radius: var(--k-radius-input);
  background: transparent;
}
@media (max-width: 991.98px) {
  .navbar-toggler { display: inline-block !important; }
}
.navbar-toggler:focus-visible {
  outline: 2px solid var(--k-aqua-600);
  outline-offset: 2px;
}
.navbar-toggler .navbar-toggler-line {
  position: absolute !important;
  left: 11px !important;               /* (44 - 22) / 2 */
  display: block !important;
  width: 22px !important;
  height: 2px !important;
  border-radius: 2px;
  background: var(--k-ink) !important;
  opacity: 1;
  transform: none;
  transition: top var(--k-dur) var(--k-ease),
              opacity var(--k-dur-fast) var(--k-ease),
              transform var(--k-dur) var(--k-ease);
}
.navbar-toggler .navbar-toggler-line:nth-child(1) { top: 15px !important; }
.navbar-toggler .navbar-toggler-line:nth-child(2),
.navbar-toggler .navbar-toggler-line:nth-child(3) { top: 21px !important; }
.navbar-toggler .navbar-toggler-line:nth-child(4) { top: 27px !important; }

/* Açık durum: üst ve alt çubuk ortaya kayıp kaybolur, ortadakiler X olur */
.navbar-toggler[aria-expanded="true"] .navbar-toggler-line:nth-child(1),
.navbar-toggler[aria-expanded="true"] .navbar-toggler-line:nth-child(4) {
  top: 21px !important;
  opacity: 0;
}
.navbar-toggler[aria-expanded="true"] .navbar-toggler-line:nth-child(2) { transform: rotate(45deg); }
.navbar-toggler[aria-expanded="true"] .navbar-toggler-line:nth-child(3) { transform: rotate(-45deg); }

/* --------------------------------------------------- SOSYAL İKON LİNKLERİ */
/* Footer ve iletişim sayfasındaki ikonlar 13-20px ölçülüyordu. */
.elements-social ul li a,
.kuante-footer .elements-social ul li a {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
}
.elements-social ul li { margin: 0 2px; }

/* --------------------------------------------------------- FORM KONTROLLER */
/* Onay kutuları: 26px yükseklikteydi. */
.form-check-input,
.c-check input[type="checkbox"],
input[type="checkbox"], input[type="radio"] {
  /* flex kabında esneyip 52px'e yayılıyordu — sabitle */
  flex: 0 0 22px !important;
  width: 22px !important;
  height: 22px !important;
  min-width: 22px;
  margin-top: 1px;
  accent-color: var(--k-ink);
}
/* Bootstrap .form-check varsayılan sol padding'i kutuyu etiketten koparıyor */
.form-check { padding-left: 0; gap: var(--k-space-8); }
.form-check-label { cursor: pointer; }
/* Kutunun kendisi 22px olsa da tıklanabilir alan etiketle birlikte büyür */
.c-check, .form-check { min-height: 44px; display: flex; align-items: center; }
.form-check-label, .c-check span { padding-block: 6px; }

/* Tema butonları mobilde 31px'e düşüyordu */
.btn { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
.btn-sm { min-height: 40px; }

/* Katalog arama kutusu: sarmalayıcı 48px ama input 30px'ti */
.k-catalog .search { min-height: 48px; }
.k-catalog .search input { min-height: 44px; }

/* Ürün/kategori kart aksiyonları */
.k-catalog .btn,
.k-pdp .btn-action,
.p-btn { min-height: 44px; }

/* Filtre çipleri */
.c-products__pill,
.chip,
.k-catalog .subcat,
.pager a, .pager span { min-height: 44px; }

/* İletişim künyesindeki telefon/e-posta bağlantıları tek başına duruyor */
.c-contact2025 .c-card a { display: inline-flex; align-items: center; min-height: 44px; }

/* Ürün detay: küçük görsel şeritleri */
.k-pdp .p-thumb { min-width: 56px; min-height: 56px; }
.k-pdp .p-stage-nav,
.p-nav { min-width: 44px; min-height: 44px; }

/* Duyuru bandı bağlantıları — 40px bant içinde kalırken dokunulabilir olmalı */
@media (max-width: 991.98px) {
  .k-topbar__link, .k-topbar__lang a { min-height: 40px; display: inline-flex; align-items: center; }
}

/* ------------------------------------------------------------ ODAK HALKASI */
/* Tek tip, her zeminde görünür odak göstergesi. */
:focus-visible {
  outline: 3px solid var(--k-aqua-600);
  outline-offset: 2px;
  border-radius: 3px;
}
/* Koyu yüzeylerde aqua-600 yeterince parlamıyor — açık tona geç */
.k-topbar :focus-visible,
.kuante-footer :focus-visible,
.stats-banner-section :focus-visible,
.about-cta-card :focus-visible,
.c-cta-band :focus-visible,
.showcase-floating-content :focus-visible,
.k-hero :focus-visible,
.c-hero2025 :focus-visible,
.c-quality-hero :focus-visible,
.c-values-hero :focus-visible,
.c-hr-hero :focus-visible,
.c-blog-hero :focus-visible,
.c-hero-neo :focus-visible,
.c-about-hero :focus-visible,
.lightbox :focus-visible,
.ku-social-dock :focus-visible {
  outline-color: var(--k-aqua);
}
/* Fare tıklamasında halka çıkmasın (yalnızca klavye) */
:focus:not(:focus-visible) { outline: none; }

/* --------------------------------------------------- YALNIZCA EKRAN OKUYUCU */
.k-sr-only {
  position: absolute !important;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

/* ------------------------------------------------------------- MOBİL DÜZEN */
@media (max-width: 575.98px) {
  /* Yatay taşmaya karşı son emniyet: hiçbir medya kabını aşmasın */
  img, video, iframe, table { max-width: 100%; }
}

/* Footer künyesindeki bağlantılar (telefon, e-posta, WhatsApp) tek başına
   duran hedefler; 30px yükseklikte ölçülüyorlardı. */
.ku-contact-item { min-height: 44px; }
.ku-contact-item a { display: inline-flex; align-items: center; min-height: 44px; }
.ku-footer-links a { min-height: 40px; }

/* Kart başlığı bağlantıları küçük ölçülüyor ama gerçek hedef kartın tamamı
   (`::after` ile yayılmış). Yine de görsel odak halkası kartı sarmalı. */
.p-card__title a:focus-visible::after,
.k-catalog .title h3 a:focus-visible::after,
.card-post a:focus-visible::after {
  outline: 3px solid var(--k-aqua-600);
  outline-offset: -3px;
  border-radius: var(--k-radius-card);
}

/* ------------------------------------------------ KALAN KÜÇÜK HEDEFLER -- */
/* Logo bağlantıları */
.navbar-brand { display: inline-flex !important; align-items: center; min-height: 44px; }
.kuante-footer .footer-logo { display: inline-flex !important; align-items: center; min-height: 44px; }

/* Açılır mobil menüdeki bağlantılar 29px yükseklikteydi — mobilde bunlar
   sitenin ana gezinme hedefleri. */
@media (max-width: 991.98px) {
  header.header-with-topbar .navbar-collapse .nav-link,
  header.header-with-topbar .navbar-nav > .nav-item > .nav-link {
    display: flex !important;
    align-items: center;
    min-height: 48px;
    line-height: 1.3 !important;
    padding-inline: 0 !important;
  }
  header.header-with-topbar .navbar-nav > .nav-item + .nav-item > .nav-link {
    border-top: 1px solid var(--k-line);
  }
  /* Kurumsal açılır menüsündeki kartlar */
  .kurumsal-link-card { min-height: 56px; }
}

/* Ürün kartındaki ok'lu metin bağlantısı */
.p-link { min-height: 44px; }
.p-card__actions { align-items: stretch; }

/* Footer'daki yasal/kısayol gezinme bağlantıları (Kurumsal, İletişim, Haberler) */
.kuante-footer .footer-navbar a,
.kuante-footer .footer-navbar.ku-legal li a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding-block: 0;
}

/* Haber kartındaki "Oku" bağlantısı 27x30 ölçülüyordu */
.c-read {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding-inline: 2px;
}

/* Destek panelinin kapatma düğmesi 30x30'du */
.ku-support-close { width: 44px !important; height: 44px !important; }
.ku-support-trigger { min-width: 44px; min-height: 44px; }
.wq-modal__x, .wq-close, .lb-close, .lb-nav { min-width: 44px; min-height: 44px; }

/* Kısa etiketli metin bağlantısı ("Oku") — yükseklik tamam, genişlik dar */
.c-read { min-width: 44px; justify-content: flex-start; }
