/* WP-H3-HUD-01 / KARAR-20 — portre nabız + ses dalgası.
   Yalnız [data-presence] gerçek sahneden gelir. idle animasyon yok.

   WP-H3-HUD-04 (15.09): sabit renkler (12 adet rgba) token'a bağlandı —
   görsel niyet aynı, `check:theme-contrast` sayacı düşer. Saydamlık
   `color-mix()` ile üretilir; desteklemeyen motorda yalnız parıltı
   (box-shadow) düşer, halka rengi düz token'dan gelmeye devam eder. */

.c01-orch__avatar {
  position: relative;
  /* Durum paleti — TEK çevirme noktası. */
  --c01-presence-listen: var(--gtos-sky-400);
  --c01-presence-think: var(--gtos-gold-500);
  --c01-presence-speak: var(--gtos-emerald-400);
}

/* Açık temada altın portre halkası koyulaşır (beyaz zeminde görünürlük). */
html[data-theme='light'] .c01-orch__avatar {
  --c01-presence-think: var(--gtos-gold-600);
  /* H3 D4b: ses dalgasi (`.c01-orch__avatar-wave`) acik temada 2,06:1 olculdu —
     `think` icin zaten yapilan koyulastirma `listen`/`speak` icin de uygulandi
     (sky-700 5,69 · emerald-700 5,25). Koyu tema DEGISMEDI. */
  --c01-presence-listen: var(--gtos-sky-700);
  --c01-presence-speak: var(--gtos-emerald-700);
}

.c01-orch__avatar-pulse,
.c01-orch__avatar-wave {
  position: absolute;
  pointer-events: none;
}

.c01-orch__avatar-pulse {
  inset: -5px;
  border-radius: 50%;
  border: 1px solid transparent;
  opacity: 0;
}

.c01-orch__avatar-wave {
  left: 50%;
  bottom: -0.35rem;
  transform: translateX(-50%);
  display: none;
  align-items: flex-end;
  gap: 2px;
  height: 0.7rem;
}

.c01-orch__avatar-wave i {
  display: block;
  width: 2px;
  height: 30%;
  border-radius: 1px;
  background: currentColor;
  opacity: 0.85;
}

.c01-orch__avatar[data-presence='listening'] .c01-orch__avatar-pulse {
  opacity: 1;
  border-color: var(--c01-presence-listen);
  border-color: color-mix(in srgb, var(--c01-presence-listen) 55%, transparent);
  box-shadow: 0 0 16px color-mix(in srgb, var(--c01-presence-listen) 28%, transparent);
  animation: c01AvatarPulse 1.6s ease-in-out infinite;
}

.c01-orch__avatar[data-presence='thinking'] .c01-orch__avatar-pulse {
  opacity: 1;
  border-color: var(--c01-presence-think);
  border-color: color-mix(in srgb, var(--c01-presence-think) 55%, transparent);
  box-shadow: 0 0 16px color-mix(in srgb, var(--c01-presence-think) 30%, transparent);
  animation: c01AvatarPulse 1.6s ease-in-out infinite;
}

.c01-orch__avatar[data-presence='working'] .c01-orch__avatar-pulse {
  opacity: 1;
  border-color: var(--c01-presence-think);
  border-color: color-mix(in srgb, var(--c01-presence-think) 70%, transparent);
  box-shadow: 0 0 14px color-mix(in srgb, var(--c01-presence-think) 36%, transparent);
  animation: c01AvatarPulse 1.2s ease-in-out infinite;
}

.c01-orch__avatar[data-presence='speaking'] .c01-orch__avatar-pulse {
  opacity: 1;
  border-color: var(--c01-presence-speak);
  border-color: color-mix(in srgb, var(--c01-presence-speak) 55%, transparent);
  box-shadow: 0 0 16px color-mix(in srgb, var(--c01-presence-speak) 26%, transparent);
}

.c01-orch__avatar[data-presence='speaking'] .c01-orch__avatar-wave,
.c01-orch__avatar[data-presence='listening'] .c01-orch__avatar-wave {
  display: flex;
  color: var(--c01-presence-speak);
}

.c01-orch__avatar[data-presence='listening'] .c01-orch__avatar-wave {
  color: var(--c01-presence-listen);
}

.c01-orch__avatar[data-presence='speaking'] .c01-orch__avatar-wave i,
.c01-orch__avatar[data-presence='listening'] .c01-orch__avatar-wave i {
  animation: c01AvatarWave 0.9s ease-in-out infinite;
}

.c01-orch__avatar[data-presence='speaking'] .c01-orch__avatar-wave i:nth-child(2),
.c01-orch__avatar[data-presence='listening'] .c01-orch__avatar-wave i:nth-child(2) {
  animation-delay: 0.12s;
}
.c01-orch__avatar[data-presence='speaking'] .c01-orch__avatar-wave i:nth-child(3),
.c01-orch__avatar[data-presence='listening'] .c01-orch__avatar-wave i:nth-child(3) {
  animation-delay: 0.24s;
}
.c01-orch__avatar[data-presence='speaking'] .c01-orch__avatar-wave i:nth-child(4),
.c01-orch__avatar[data-presence='listening'] .c01-orch__avatar-wave i:nth-child(4) {
  animation-delay: 0.36s;
}

/* ------------------------------------------------------------------ *
 * WP-H3-HUD-07 — "dijitalize insan": nefes + dönen düşünme segmenti
 *
 * Kurallar: animasyon YALNIZ `transform`/`opacity` (60 fps), sabit renk YOK,
 * `prefers-reduced-motion` açıkken hepsi durur (durum renk + görünür
 * etiketten okunur). Nefes idle/listening'te açıktır — portre "duruyor"
 * değil "bekliyor" hissi verir; çalışırken nabız zaten devrededir.
 * ------------------------------------------------------------------ */

.c01-orch__avatar[data-presence='idle'] .c01-orch__avatar-pulse {
  /* Sakin halka: animasyon yok, yalnız hafif çerçeve. */
  opacity: 1;
  border-color: var(--gtos-shell-ink-800);
  border-color: color-mix(in srgb, var(--gtos-shell-tint-50) 16%, transparent);
}

.c01-orch__avatar[data-presence='idle'] .c01-orch__avatar-img,
.c01-orch__avatar[data-presence='listening'] .c01-orch__avatar-img,
.c01-orch__avatar[data-presence='idle'] .c01-orch__avatar-fb,
.c01-orch__avatar[data-presence='listening'] .c01-orch__avatar-fb {
  animation: c01AvatarBreath 4s ease-in-out infinite;
}

/* Düşünme: halkanın üstünde dönen segment (konik gradyan + maske; boyanan
   alan yalnız 2 px'lik halka şerididir, dolu daire değil). */
.c01-orch__avatar[data-presence='thinking'] .c01-orch__avatar-pulse::after,
.c01-orch__avatar[data-presence='working'] .c01-orch__avatar-pulse::after {
  content: '';
  position: absolute;
  inset: -1px;
  border-radius: 50%;
  background: conic-gradient(
    from 0deg,
    transparent 0deg,
    var(--c01-presence-think) 70deg,
    transparent 140deg
  );
  -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 2px), var(--gtos-shell-tint-50) 0);
  mask: radial-gradient(farthest-side, transparent calc(100% - 2px), var(--gtos-shell-tint-50) 0);
  animation: c01AvatarArc 1.35s linear infinite;
}

@keyframes c01AvatarBreath {
  0%,
  100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.02);
  }
}

@keyframes c01AvatarArc {
  to {
    transform: rotate(360deg);
  }
}

@keyframes c01AvatarPulse {
  0%,
  100% {
    transform: scale(1);
    opacity: 0.55;
  }
  50% {
    transform: scale(1.08);
    opacity: 1;
  }
}

@keyframes c01AvatarWave {
  0%,
  100% {
    height: 28%;
  }
  50% {
    height: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .c01-orch__avatar-pulse,
  .c01-orch__avatar-pulse::after,
  .c01-orch__avatar-img,
  .c01-orch__avatar-fb,
  .c01-orch__avatar-wave i {
    animation: none !important;
  }

  /* Hareket kapalıyken durum yalnız RENKTEN okunur: dönen segment sabit
     kalmasın (yanıltıcı yarım halka), tamamen kaldırılır. */
  .c01-orch__avatar[data-presence='thinking'] .c01-orch__avatar-pulse::after,
  .c01-orch__avatar[data-presence='working'] .c01-orch__avatar-pulse::after {
    display: none;
  }
}
