/* ===========================================================================
   ONLINE RANDEVU — cetinsomine.com
   ===========================================================================

   🔴 TÜM SEÇİCİLER `rd-` ÖNEKLİ ve `.rd-takvim` ALTINDA. Devralınan tasarım
   6.200 satırlık `style.css` taşıyor ve `.kutu`, `.gun`, `.saat` gibi genel
   adlar orada başka işler yapıyor olabilir; önek olmadan iki taraf birbirini
   ezerdi (AGENTS: ".kart span gibi genel seçici kardeş kapları da yakalar").

   🔴 RENK BLOKTA, BURADA DEĞİL. `--r-ana` / `--r-vurgu` / `--r-soluk`
   `includes/randevu-arayuz.php` tarafından `style` özniteliğiyle veriliyor;
   çocuk ve yetişkin bölümleri aynı dosyayı farklı paletle kullanıyor.
   =========================================================================== */

.rd-takvim {
  /* Varsayılan — öznitelik gelmezse yine okunur bir blok çıksın. */
  --r-ana: #161311;
  --r-vurgu: #cc4400;
  --r-soluk: #fbf1e6;
  --r-cizgi: #e6dccf;
  --r-metin: #263238;

  box-sizing: border-box;
  /* 🔴 SABİT GENİŞLİK YOK ve yan boşluk 16 px'in altına düşmüyor. */
  width: 100%;
  /* 🔴 SABİT 760 px KALDIRILDI (kullanıcı 2026-10-16: *"ilgili ekran
     genişliğine yayılmalı"*). 760, iletişim sayfasındaki eski
     `.smart-formS` genişliğine eşlemek için konmuştu; ana sayfada öyle bir
     komşu yok ve blok ortada dar bir ada gibi duruyordu.
     Genişliği artık KAPSAYICI veriyor: iletişim sayfasında hücre ne kadarsa
     o, ana sayfada sarmalayıcının izin verdiği kadar. Tek bir sayıya
     bağlamak, her yerleştirmede yeniden ayar demekti. */
  max-width: 100%;
  margin: 0 0 28px;
  padding: clamp(16px, 3vw, 26px);
  border: 1px solid var(--r-cizgi);
  border-top: 4px solid var(--r-vurgu);
  border-radius: 12px;
  background: #fff;
  font-family: inherit;
  color: var(--r-metin);
  text-align: left;
}
.rd-takvim *, .rd-takvim *::before, .rd-takvim *::after { box-sizing: border-box; }

/* 🔴 `[hidden]` TEK BAŞINA YETMİYOR — aşağıdaki `display:grid` kuralları onu
   yener ve gizlenmesi gereken alan ekranda kalır. */
.rd-takvim [hidden] { display: none !important; }

.rd-t-baslik {
  margin: 0 0 6px;
  /* 🔴 YAZI AKIŞKAN: kırılma noktasında zıplayan başlık kaba durur. */
  font-size: clamp(20px, 2.6vw, 26px);
  font-weight: bold;
  color: var(--r-ana);
  line-height: 1.25;
}
.rd-t-giris { margin: 0 0 18px; font-size: 15px; line-height: 1.55; color: #4f5b62; }

.rd-t-adim { margin: 0 0 18px; }
.rd-t-adim-baslik {
  display: flex; align-items: center; gap: 9px;
  margin: 0 0 10px; font-size: 16px; font-weight: bold; color: var(--r-ana);
}
.rd-t-no {
  display: inline-flex; align-items: center; justify-content: center;
  width: 24px; height: 24px; flex: none;          /* 🔴 flex:none — ezilmesin */
  border-radius: 50%; background: var(--r-vurgu); color: #fff;
  font-size: 13px; line-height: 1;
}

/* ------------------------------------------------------------- gün şeridi */
/* 🔴 ŞERİT KENDİ İÇİNDE KAYIYOR, SAYFAYI TAŞIRMIYOR. */
.rd-gun-serit {
  display: flex; gap: 8px;
  overflow-x: auto; overscroll-behavior-x: contain;
  scroll-snap-type: x proximity;
  padding-bottom: 6px;
  -webkit-overflow-scrolling: touch;
}
.rd-gun {
  flex: none; scroll-snap-align: center;
  /* 🔴 DOKUNMA HEDEFİ en az 44x44. */
  min-width: 58px; min-height: 64px;
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 1px; padding: 8px 6px;
  border: 1px solid var(--r-cizgi); border-radius: 10px;
  background: #fff; color: var(--r-metin);
  font-family: inherit; cursor: pointer;
  transition: background .18s ease, border-color .18s ease, color .18s ease;
}
.rd-gun-ad { font-size: 11px; text-transform: uppercase; letter-spacing: .4px; color: #78868f; }
.rd-gun-sayi { font-size: 19px; font-weight: bold; line-height: 1.1; }
.rd-gun-ay { font-size: 11px; color: #78868f; }
.rd-gun:hover:not(:disabled) { border-color: var(--r-vurgu); background: var(--r-soluk); }
.rd-gun.secili {
  background: var(--r-ana); border-color: var(--r-ana); color: #fff;
}
.rd-gun.secili .rd-gun-ad, .rd-gun.secili .rd-gun-ay { color: rgba(255,255,255,.82); }
.rd-gun-kapali { opacity: .4; cursor: not-allowed; }

/* ----------------------------------------------------------------- saatler */
.rd-t-not { margin: 0; font-size: 14px; color: #60707a; line-height: 1.5; }
/* 🔴 IZGARA KENDİ SARAR — sütun sayısını elle saymak her ekranda bozulur. */
.rd-saat-izgara {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(84px, 1fr)); gap: 8px;
}
.rd-saat-izgara:empty { display: none; }
.rd-saat {
  min-height: 44px; padding: 10px 6px;
  border: 1px solid var(--r-cizgi); border-radius: 9px;
  background: #fff; color: var(--r-metin);
  font-family: inherit; font-size: 15px; cursor: pointer;
  transition: background .18s ease, border-color .18s ease, color .18s ease;
}
.rd-saat:hover { border-color: var(--r-vurgu); background: var(--r-soluk); }
.rd-saat.secili { background: var(--r-ana); border-color: var(--r-ana); color: #fff; }

/* ------------------------------------------------------------------ form */
.rd-t-secim {
  margin: 0 0 10px; padding: 9px 12px;
  background: var(--r-soluk); border-radius: 8px;
  font-size: 14px; font-weight: bold; color: var(--r-ana);
}
.rd-t-uyari {
  margin: 0 0 10px; padding: 9px 12px;
  background: #fdecea; border-left: 3px solid #c0392b; border-radius: 6px;
  font-size: 14px; color: #8c1b01; line-height: 1.45;
}
.rd-t-alanlar { display: grid; gap: 12px; margin: 0 0 14px; }
.rd-t-alanlar label { display: grid; gap: 5px; font-size: 14px; color: #4f5b62; }
.rd-t-alanlar input, .rd-t-alanlar textarea {
  width: 100%; min-height: 44px; padding: 10px 12px;
  border: 1px solid var(--r-cizgi); border-radius: 8px;
  background: #fff; font-family: inherit; font-size: 15px; color: var(--r-metin);
}
.rd-t-alanlar textarea { min-height: 76px; resize: vertical; }
.rd-t-alanlar input:focus, .rd-t-alanlar textarea:focus {
  outline: 2px solid var(--r-vurgu); outline-offset: 1px; border-color: var(--r-vurgu);
}
.rd-t-dogrulama { display: grid; gap: 10px; }

.rd-t-dugme {
  display: inline-flex; align-items: center; justify-content: center;
  width: 100%; min-height: 46px; padding: 11px 18px;
  border-radius: 9px; border: 1px solid var(--r-ana);
  font-family: inherit; font-size: 15px; font-weight: bold; cursor: pointer;
  transition: opacity .18s ease, background .18s ease;
}
.rd-t-dugme-ana { background: var(--r-ana); color: #fff; }
.rd-t-dugme-hayalet { background: #fff; color: var(--r-ana); }
.rd-t-dugme:disabled { opacity: .6; cursor: progress; }

.rd-t-dipnot, .rd-t-alt { margin: 10px 0 0; font-size: 13px; color: #6b7880; line-height: 1.5; }
.rd-t-dipnot a, .rd-t-alt a { color: var(--r-ana); font-weight: bold; text-decoration: none; }
.rd-t-dipnot a:hover, .rd-t-alt a:hover { text-decoration: underline; }

.rd-t-tamam {
  padding: 16px; border-radius: 10px;
  background: var(--r-soluk); border: 1px solid var(--r-vurgu);
}
.rd-t-tamam strong { display: block; margin-bottom: 6px; font-size: 17px; color: var(--r-ana); }
.rd-t-tamam p { margin: 0; font-size: 15px; line-height: 1.55; color: #40505a; }

/* 🔴 HAREKETİ AZALT isteyen ziyaretçide geçişler kapanır. */
@media (prefers-reduced-motion: reduce) {
  .rd-takvim * { transition: none !important; }
  .rd-gun-serit { scroll-behavior: auto; }
}

/* Keşif modu: saat yerine zaman dilimleri — geniş, tek satırlık düğmeler (takvim-runbook §8.10). */
.rd-takvim[data-mod="kesif"] .rd-saat-izgara{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}
.rd-takvim[data-mod="kesif"] .rd-saat{white-space:normal;line-height:1.25;padding-top:12px;padding-bottom:12px}
