/* ==========================================================================
   psikoajanda — erisilebilirlik yardimcilari (WCAG 2.1 Seviye A/AA)
   --------------------------------------------------------------------------
   Bu dosya YALNIZ erisilebilirlik icindir. Marka/tasarim degisiklikleri
   panel/public/css/custom.php icinde yapilir — oraya dokunmayin.

   Renk karari (kilitli): aksiyon rengi #3154A5 (beyaz ustunde 5.05:1, AA gecer).
   #7491D4 kimlik rengidir; kucuk metinde beyazla birlikte KULLANILMAZ (3.11:1).
   ========================================================================== */

/* 1) Ekran okuyucuya ozel metin.
      Tailwind Play CDN zaten .sr-only uretiyor; CDN yuklenemezse diye burada
      da tanimli. Ikisi ayni kurali verir, catisma olusmaz. */
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
}

/* 2) Klavye odak gostergesi.
      Panelde 193 butonun hicbirinde odak durumu yoktu (WCAG 2.4.7).
      :focus-visible sadece klavyeyle gezenlere gorunur, fareyle tiklayanlari
      rahatsiz etmez. */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible {
    outline: 3px solid #3154A5 !important;
    outline-offset: 2px !important;
    border-radius: 4px;
}

/* 2b) :focus-visible desteklemeyen eski tarayicilar icin yedek */
a:focus,
button:focus,
input:focus,
select:focus,
textarea:focus {
    outline-color: #3154A5;
}

/* 3) "sr-only kontrol + gorunur etiket" kalibi.
      appointment.php saat secimi bu kalibi kullanir:
      <input class="sr-only"><label for="...">14:00</label>
      Not: peer-checked:bg-mavi YAZILAMAZ — .bg-mavi bir Tailwind utility'si
      degil, colors.css'te elle yazilmis bir sinif; Tailwind ondan varyant
      uretemez. Ayni davranis burada 4 satir duz CSS ile, CDN'den bagimsiz. */
.oy-secim input:checked + label {
    background-color: #3154A5 !important;
    border-color: #3154A5 !important;
    color: #ffffff !important;
}

.oy-secim input:focus-visible + label {
    outline: 3px solid #3154A5 !important;
    outline-offset: 2px;
}

.oy-secim input:disabled + label {
    opacity: .5;
    cursor: not-allowed;
}

/* 4) Devre disi takvim gunleri — tiklanamaz oldugu gorsel olarak da belli olsun */
#calendar button[disabled] {
    cursor: not-allowed;
}

/* 5) Hareket azaltma tercihi (WCAG 2.3.3) */
@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
        scroll-behavior: auto !important;
    }
}

/* ─────────────────────────────────────────────────────────────────────────
   DOLGU YARDIMCILARI beyaz metin taşır → aksiyon tonunu kullanmalı
   (kullanıcı kararı, 2026-08-20)

   .bg-blue-400 / .bg-indigo-400 tokens.css'teki --pa-brand-400 (#7491D4)
   değerine bağlıydı. O renk DEKORATİF kimlik tonudur: ikon, çerçeve, alt
   çizgi için doğru ama üzerinde beyaz metin taşındığında 3,11:1 veriyor
   (AA eşiği 4,5). Ölçümde geriye kalan tek kusur buydu — "Danışan" rozeti.

   Token'ı değiştirmiyoruz: .yn-marka i gibi dekoratif kullanımlar marka
   tonunu korusun. Yalnız METİN TAŞIYAN dolgu yardımcıları aksiyon tonuna
   (--pa-brand-600 #446BC5, beyazla 5,05:1 ✔) bağlanıyor.
   ────────────────────────────────────────────────────────────────────── */
.bg-blue-400,
.bg-indigo-400,
.hover\:bg-blue-400:hover,
.hover\:bg-indigo-400:hover {
    background-color: var(--pa-brand-600) !important;
}
