/* CavBot badge avatar (face in the black circle) */
.cavbot-dm-avatar {
  width: 56px;
  height: 56px;
  border-radius: 9999px;
  background:
    radial-gradient(circle at 20% 0%, rgba(255,255,255,0.18), transparent 55%),
    radial-gradient(circle at 80% 100%, rgba(0,110,230,0.22), transparent 55%),
    linear-gradient(145deg, #20232b 0%, #12141a 100%);
  border: 1px solid rgba(255,255,255,0.18);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.cavbot-dm-avatar-core {
  width: 40px;
  height: 30px;
  border-radius: 18px;
  background:
    linear-gradient(145deg, #fdfdfd 0%, #e7eaf2 40%, #cbd0de 70%, #aeb5c7 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 4px 4px 5px;
  overflow: hidden;
}

.cavbot-dm-face {
  position: relative;
  width: 100%;
  height: 100%;
  border-radius: 16px;
  background:
    radial-gradient(circle at 20% 0%, rgba(0,110,230,0.35), transparent 55%),
    radial-gradient(circle at 80% 10%, rgba(120,82,169,0.5), transparent 55%),
    linear-gradient(160deg, #05060a 0%, #05060d 45%, #060b17 100%);
  padding: 6px 5px 4px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.cavbot-dm-eyes-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.cavbot-dm-eye {
  position: relative;
  width: 14px;
  height: 14px;
  border-radius: 999px;
  background:
    radial-gradient(circle at 30% 20%, rgba(255,255,255,0.35), transparent 60%),
    radial-gradient(circle at 50% 70%, rgba(0,0,0,0.8), #020307 78%);
  box-shadow:
    0 0 0 1px rgba(255,255,255,0.12),
    0 0 10px rgba(0,110,230,0.6);
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.cavbot-dm-eye-inner {
  position: relative;
  width: 72%;
  height: 72%;
  border-radius: inherit;
  background: radial-gradient(circle, rgba(0,0,0,1) 0%, #050916 80%);
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.cavbot-dm-eye-pupil {
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background:
    radial-gradient(circle at 30% 20%, #ffffff 0%, #d2f2ff 20%, #0094ff 65%, #003b7a 100%);
  box-shadow:
    0 0 6px rgba(0,110,230,0.8),
    0 0 10px rgba(181,211,49,0.4);
  transform: translate(0, 0);
  transition: transform 0.09s ease-out;
}

.cavbot-dm-eye-glow {
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: radial-gradient(circle, rgba(181,211,49,0.3) 0%, transparent 70%);
  opacity: 0.14;
  pointer-events: none;
}

.cavbot-dm-blink {
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: radial-gradient(circle, rgba(0,0,0,0.6) 0%, rgba(0,0,0,0.95) 60%);
  transform-origin: top center;
  transform: scaleY(0);
  opacity: 0;
  pointer-events: none;
  animation: cavbotBlink 7.2s infinite;
}

/* Shared blink animation (used by the badge eyelids) */
@keyframes cavbotBlink {
  0%, 86%, 100%   { transform: scaleY(0); opacity: 0; }
  88%, 90%        { transform: scaleY(1); opacity: 0.9; }
  92%             { transform: scaleY(0); opacity: 0; }
}