/* Sesli Asistan */

:root,
[data-bs-theme="light"] {
  --k-mikrofon: #2563eb;
  --k-mikrofon-dinliyor: #dc2626;
  --k-basarili-zemin: #ecfdf5;
  --k-basarili-kenar: #a7f3d0;
  --k-hata-zemin: #fef2f2;
  --k-hata-kenar: #fecaca;
  --k-hata-yazi: #991b1b;
}

[data-bs-theme="dark"] {
  --k-mikrofon: #3b82f6;
  --k-mikrofon-dinliyor: #ef4444;
  --k-basarili-zemin: #0b2a20;
  --k-basarili-kenar: #1f6f53;
  --k-hata-zemin: #2a0f0f;
  --k-hata-kenar: #7f1d1d;
  --k-hata-yazi: #fecaca;
}

.asistan {
  max-width: 720px;
  font-family: Calibri, "Segoe UI", Arial, sans-serif;
}

.asistan-alt {
  color: var(--k-yazi-soluk);
  font-size: 16px;
  margin-bottom: 28px;
}

/* ---------- Mikrofon ---------- */
.asistan-mikrofon {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.mikrofon {
  position: relative;
  width: 104px;
  height: 104px;
  border-radius: 50%;
  border: 0;
  background: var(--k-mikrofon);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 10px 28px rgba(37, 99, 235, 0.35);
  transition: transform 0.15s ease, background 0.15s ease;
}

.mikrofon svg {
  width: 38px;
  height: 38px;
  fill: currentColor;
}

.mikrofon:hover:not(:disabled) {
  transform: translateY(-2px);
}

.mikrofon:disabled {
  opacity: 0.45;
  box-shadow: none;
}

.mikrofon.dinliyor {
  background: var(--k-mikrofon-dinliyor);
}

.mikrofon-dalga {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 3px solid var(--k-mikrofon-dinliyor);
  opacity: 0;
}

.mikrofon.dinliyor .mikrofon-dalga {
  animation: dalga 1.4s ease-out infinite;
}

@keyframes dalga {
  from { opacity: 0.7; transform: scale(1); }
  to { opacity: 0; transform: scale(1.6); }
}

@media (prefers-reduced-motion: reduce) {
  .mikrofon.dinliyor .mikrofon-dalga {
    animation: none;
    opacity: 0.7;
  }
}

.asistan-durum {
  margin: 14px 0 22px;
  min-height: 24px;
  font-weight: 500;
  color: var(--k-yazi-orta);
}

.asistan-durum.dinliyor { color: var(--k-mikrofon-dinliyor); }
.asistan-durum.isleniyor { color: var(--k-yazi-soluk); }
.asistan-durum.hata { color: var(--k-hata-yazi); }

/* ---------- Yazarak sorma ---------- */
.asistan-yazi {
  display: flex;
  gap: 8px;
  margin-bottom: 16px;
}

.asistan-duyulan {
  background: var(--k-yuzey);
  border-radius: 12px;
  padding: 12px 16px;
  margin-bottom: 12px;
  font-size: 18px;
}

/* ---------- Sonuç ---------- */
.asistan-sonuc {
  border-radius: 12px;
  padding: 14px 16px;
  margin-bottom: 12px;
  font-size: 16px;
  font-weight: 500;
  border: 1px solid;
}

.asistan-sonuc.basarili {
  background: var(--k-basarili-zemin);
  border-color: var(--k-basarili-kenar);
}

.asistan-sonuc.hata {
  background: var(--k-hata-zemin);
  border-color: var(--k-hata-kenar);
  color: var(--k-hata-yazi);
}

.asistan-git {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: var(--k-yazi-soluk);
  font-weight: 400;
}

.asistan-git span {
  margin-inline-end: auto;
}

.asistan-alternatifler {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin-top: 10px;
  font-weight: 400;
}

.asistan-alt-baslik {
  font-size: 14px;
  color: var(--k-yazi-soluk);
}

/* ---------- Örnekler ---------- */
.asistan-ornekler {
  margin-top: 32px;
}

.asistan-ornekler h2 {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 12px;
}

.asistan-grup {
  margin-bottom: 14px;
}

.asistan-grup-baslik {
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--k-yazi-soluk);
  margin-bottom: 6px;
}

.asistan-etiketler {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.asistan-ornek {
  border: 1px solid var(--k-kenar-belirgin);
  background: var(--k-kart);
  color: var(--k-yazi-orta);
  border-radius: 999px;
  padding: 5px 14px;
  font-size: 14px;
}

.asistan-ornek:hover {
  border-color: var(--k-etiket-kenar);
  color: var(--k-etiket-yazi);
}

.asistan-not {
  margin-top: 18px;
  font-size: 13px;
  color: var(--k-yazi-soluk);
}
