/* Nöbetçi eczaneler yan kartı — api.php?action=get_pharmacy_duty çıktısı.
   Kart dili superlig-widget ile aynı: beyaz gövde, koyu lacivert başlık
   şeridi, kırmızı alt çizgi. Liste yüksekliği sınırlıdır; taşan içerik
   kartın kendi kaydırma çubuğuyla içeride kalır.

   NOT: Kaynaktan tek istekte ilin TÜM ilçelerinin nöbet listesi gelir;
   ilçe seçimi ağa çıkılmadan istemcide süzülür. Sınıf adları eski
   widget'in CSS'iyle aynı tutuldu, görünüm birebir korunur. */

.sidebar-pharmacies {
  overflow: hidden;
  border: 1px solid #E5E7EB;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}
.sidebar-pharmacies-body { padding: 12px; }
.sidebar-pharmacies-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin: -12px -12px 0;
  padding: 10px 12px;
  border: 0;
  border-bottom: 2px solid #DC2626;
  background: linear-gradient(110deg, #0F172A, #1E293B);
  color: #FFFFFF;
}
.sidebar-pharmacies-heading h3 {
  margin: 0;
  color: #FFFFFF;
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.045em;
  line-height: 1.35;
  text-transform: uppercase;
}
.sidebar-pharmacies-heading h3 i { margin-right: 4px; }
.sidebar-pharmacies-live {
  flex: 0 0 auto;
  color: #FCA5A5;
  font-size: 0.57rem;
  white-space: nowrap;
}
.sidebar-pharmacies-live::before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  margin-right: 4px;
  border-radius: 50%;
  background: #22C55E;
  animation: sidebar-pharmacies-pulse 1.6s ease-in-out infinite;
}
@keyframes sidebar-pharmacies-pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.35; }
}
/* Yeşil nokta ve "Güncel" yazısı yalnızca listenin kendi tarihi bugüne
   aitse yanar; bayat kaynak ve hata hâli ayrı renkle ayırt edilir. */
.sidebar-pharmacies-live.is-stale::before { background: #F59E0B; animation: none; }
.sidebar-pharmacies-live.is-pending::before,
.sidebar-pharmacies-live.is-error::before { background: #94A3B8; animation: none; }
@media (prefers-reduced-motion: reduce) {
  .sidebar-pharmacies-live::before { animation: none; }
}

/* İl / ilçe seçici: başlık şeridinin altında, koyu iki açılır liste. */
.sidebar-pharmacies-picker {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px;
  margin: 10px 0 8px;
}
.sidebar-pharmacies-picker select {
  width: 100%;
  min-width: 0;
  padding: 6px 8px;
  border-radius: 8px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: #0F172A;
  color: #FFFFFF;
  font-size: 0.62rem;
  font-weight: 700;
  outline: none;
  cursor: pointer;
}
.sidebar-pharmacies-picker select:focus { border-color: #DC2626; }
.sidebar-pharmacies-picker select:disabled { opacity: 0.55; cursor: default; }
.sidebar-pharmacies-picker option { color: #0F172A; background: #FFFFFF; }

/* Liste alanı: geniş sütunda sekiz kaydın tamamı iç kaydırma olmadan
   görünsün diye eşik yalnızca bir güvenlik tavanıdır. Dar ekranlarda
   (mobil tek sütun) kart sayfanın tamamını kaplamasın; orada liste
   kartın kendi kaydırma çubuğuyla içeride kalır. */
.sidebar-pharmacies-widget {
  --ea-fg: #0B0B0F;
  --ea-mute: #6B7280;
  --ea-bd: rgba(0, 0, 0, 0.08);
  --ea-card: #FAFAFA;
  --ea-cardbd: rgba(0, 0, 0, 0.06);
  --ea-accent: #DC2626;
  max-height: 900px;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
  scrollbar-color: #CBD5E1 transparent;
  font-family: inherit;
  line-height: 1.45;
  font-size: 13px;
}
@media (max-width: 1024px) {
  .sidebar-pharmacies-widget { max-height: 420px; }
}
.sidebar-pharmacies-widget::-webkit-scrollbar { width: 5px; }
.sidebar-pharmacies-widget::-webkit-scrollbar-thumb {
  background: #CBD5E1;
  border-radius: 999px;
}

/* Liste ve eczane öğeleri (resmi widget'taki sınıf adlarıyla birebir). */
.sidebar-pharmacies-widget .ea-w__err {
  color: var(--ea-mute);
  font-size: 0.66rem;
  line-height: 1.5;
}
/* Kaynak bayat olduğunda kart susmaz: uyarı listenin üstünde kalır. */
.sidebar-pharmacies-warn {
  display: flex;
  align-items: flex-start;
  gap: 6px;
  margin: 0 0 8px;
  padding: 7px 9px;
  border: 1px solid #FCD34D;
  border-radius: 9px;
  background: #FFFBEB;
  color: #92400E;
  font-size: 0.62rem;
  font-weight: 600;
  line-height: 1.45;
}
.sidebar-pharmacies-widget .ea-w__list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 8px;
}
.sidebar-pharmacies-widget .ea-w__item {
  background: var(--ea-card);
  border: 1px solid var(--ea-cardbd);
  border-radius: 10px;
  padding: 9px 11px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.sidebar-pharmacies-widget .ea-w__row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}
.sidebar-pharmacies-widget .ea-w__name {
  font-weight: 600;
  font-size: 0.72rem;
  color: var(--ea-fg);
  text-decoration: none;
}
.sidebar-pharmacies-widget .ea-w__name:hover { color: var(--ea-accent); }
.sidebar-pharmacies-widget .ea-w__meta {
  font-size: 0.62rem;
  color: var(--ea-mute);
}
.sidebar-pharmacies-widget .ea-w__addr {
  font-size: 0.65rem;
  color: var(--ea-mute);
  margin-top: 2px;
}
.sidebar-pharmacies-widget .ea-w__act {
  display: inline-flex;
  gap: 6px;
  margin-top: 6px;
  flex-wrap: wrap;
}
.sidebar-pharmacies-widget .ea-w__btn {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 0.62rem;
  font-weight: 500;
  padding: 4px 9px;
  border-radius: 999px;
  border: 1px solid var(--ea-bd);
  color: var(--ea-fg);
  background: transparent;
  text-decoration: none;
}
.sidebar-pharmacies-widget .ea-w__btn:hover { filter: brightness(0.95); }
.sidebar-pharmacies-widget .ea-w__btn--pri {
  background: var(--ea-accent);
  border-color: var(--ea-accent);
  color: #fff;
}

/* Durum satırı: eczane sayısı + tarih + kaynak bağlantısı. */
.sidebar-pharmacies-status {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid var(--ea-bd);
  font-size: 0.6rem;
  color: var(--ea-mute);
}
.sidebar-pharmacies-status a {
  color: var(--ea-accent);
  text-decoration: none;
  font-weight: 600;
}
.sidebar-pharmacies-status a:hover { text-decoration: underline; }

/* Yükleniyor / hata / boş durumları. */
.sidebar-pharmacies-message {
  margin: 10px 0 0;
  color: #6B7280;
  font-size: 0.66rem;
  line-height: 1.5;
}
.sidebar-pharmacies-message.is-error { color: #DC2626; }
