/* psikologervanur.com.tr — özel stiller */

:root { color-scheme: light; }

html { -webkit-text-size-adjust: 100%; }

body.menu-open { overflow: hidden; }

/* Mobil menü açıkken sağ-alt floating butonları gizle (menü her şeyin üstünde) */
body.menu-open #appt-open,
body.menu-open [data-floating] { opacity: 0; pointer-events: none; visibility: hidden; }

/* Sabit "Randevu Al" butonu: hero CTA'ları görünürken gizli durur, kullanıcı
   hero'yu geçtikten sonra yumuşak biçimde belirir. Böylece açılışta birincil
   butonların üstüne binmez. JS yoksa (html.js sınıfı eklenmemişse) hep görünür. */
html.js .appt-fab {
  opacity: 0;
  visibility: hidden;
  transform: translateY(0.75rem) scale(0.96);
  transition: opacity .22s ease, transform .22s ease, visibility .22s;
}
html.js .appt-fab.is-visible { opacity: 1; visibility: visible; transform: none; }

/* Çerez şeridi açıkken FAB ile üst üste binmesin */
body.consent-open .appt-fab { opacity: 0 !important; visibility: hidden !important; pointer-events: none; }

/* Mobilde sabit CTA sayfanın son satırını kapatmasın (footer arka planı korunur) */
@media (max-width: 1023px) {
  footer[role="contentinfo"] { padding-bottom: calc(4.25rem + env(safe-area-inset-bottom)); }
}


/* details/summary marker temizliği */
summary::-webkit-details-marker { display: none; }

/* Toast */
.toast {
  position: fixed;
  left: 50%;
  bottom: 1.5rem;
  transform: translateX(-50%) translateY(1rem);
  z-index: 60;
  max-width: 90vw;
  padding: 0.875rem 1.25rem;
  border-radius: 0.75rem;
  font-size: 0.9rem;
  font-weight: 500;
  box-shadow: 0 10px 30px rgba(0,0,0,0.15);
  opacity: 0;
  transition: opacity .25s ease, transform .25s ease;
  pointer-events: none;
}
.toast.show { opacity: 1; transform: translateX(-50%) translateY(0); }
.toast-success { background: #3E6E8E; color: #fff; }
.toast-error { background: #B4433A; color: #fff; }

/* prose yardımcı (Tailwind typography plugin'siz) */
.prose-custom h2 { color: #1B2B36; }
.prose-custom a { color: #3E6E8E; }
.prose-custom strong { color: #1B2B36; }

/* Seçim rengi — marka uyumlu */
::selection { background: #DCE8F0; color: #1B2B36; }

/* reduced motion */
@media (prefers-reduced-motion: reduce) {
  * { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
  html { scroll-behavior: auto; }
}
