
/* APPTIVA_ES_R11 */
#avatarVideo {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:inherit;
  z-index:5;
  opacity:0;
  pointer-events:none;
}
#avatarVideo.apr-visible {opacity:1}
#avatarAudio {display:none}
#avatarFallback[hidden] {display:none!important}
.apr-controls {
  display:flex;
  gap:8px;
  padding:10px 12px 0;
}
.apr-controls button {
  flex:1;
  border:1px solid #22677a;
  border-radius:8px;
  background:#10425a;
  color:#edffff;
  padding:9px 5px;
  cursor:pointer;
  font-size:12px;
  font-weight:700;
}
.apr-status {
  margin:0;
  padding:6px 13px;
  color:#8fb4ca;
  font-size:11px;
}

/* APPTIVA R12C · VOZ INTEGRADA */

.apr-inline-voice {
  display:flex;
  flex-direction:column;
  gap:7px;
  width:100%;
  margin-top:12px;
}

.apr-inline-voice .apr-mic {
  width:100%;
  min-height:39px;
  padding:9px 12px;
  border:1px solid rgba(28,221,221,.5);
  border-radius:9px;
  background:rgba(13,66,85,.95);
  color:#efffff;
  font:700 12px/1.4 system-ui,sans-serif;
  cursor:pointer;
}

.apr-inline-voice .apr-mic:hover {
  background:rgba(18,102,119,.95);
}

.apr-inline-voice .apr-status {
  padding:0;
  margin:0;
  font-size:11px;
  line-height:1.45;
  color:#a0c4d4;
}



/* APPTIVA_R12D_VISUAL_STATES */

.apr-presence {
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:10px;
  margin-bottom:2px;
  font-size:11px;
  line-height:1.35;
  color:#a8c9d5;
}

.apr-presence-dot {
  width:8px;
  height:8px;
  border-radius:50%;
  flex:0 0 8px;
  background:#25d366;
  box-shadow:0 0 0 rgba(37,211,102,.35);
  animation:aprPulseOnline 1.8s infinite ease-in-out;
}

.apr-presence[data-state="thinking"] .apr-presence-dot {
  background:#44d9ff;
  animation:aprPulseThinking 1s infinite ease-in-out;
}

.apr-presence[data-state="listening"] .apr-presence-dot {
  background:#12e2c2;
  animation:aprPulseListening .85s infinite ease-in-out;
}

.apr-presence[data-state="speaking"] .apr-presence-dot {
  background:#1cdddd;
  animation:aprPulseSpeaking .65s infinite ease-in-out;
}

@keyframes aprPulseOnline {
  0%   { transform:scale(1);   box-shadow:0 0 0 0 rgba(37,211,102,.36); }
  70%  { transform:scale(1.12); box-shadow:0 0 0 9px rgba(37,211,102,0); }
  100% { transform:scale(1);   box-shadow:0 0 0 0 rgba(37,211,102,0); }
}

@keyframes aprPulseThinking {
  0%   { transform:scale(.95); opacity:.7; }
  50%  { transform:scale(1.3); opacity:1; }
  100% { transform:scale(.95); opacity:.7; }
}

@keyframes aprPulseListening {
  0%   { transform:scale(1); box-shadow:0 0 0 0 rgba(18,226,194,.25); }
  50%  { transform:scale(1.25); box-shadow:0 0 0 10px rgba(18,226,194,0); }
  100% { transform:scale(1); box-shadow:0 0 0 0 rgba(18,226,194,0); }
}

@keyframes aprPulseSpeaking {
  0%   { transform:scale(1); box-shadow:0 0 0 0 rgba(28,221,221,.28); }
  50%  { transform:scale(1.35); box-shadow:0 0 0 12px rgba(28,221,221,0); }
  100% { transform:scale(1); box-shadow:0 0 0 0 rgba(28,221,221,0); }
}

.avatar-plate {
  position:relative;
  overflow:visible;
}

.apr-mini-bars {
  position:absolute;
  left:50%;
  bottom:-10px;
  transform:translateX(-50%);
  display:flex;
  align-items:flex-end;
  gap:3px;
  width:auto;
  pointer-events:none;
}

.apr-mini-bars span {
  width:3px;
  height:8px;
  border-radius:999px;
  background:rgba(28,221,221,.75);
  transform-origin:center bottom;
  opacity:.42;
  animation:none;
}

html[data-apr-state="listening"] .apr-mini-bars span,
html[data-apr-state="speaking"] .apr-mini-bars span {
  animation:aprBars .78s infinite ease-in-out;
  opacity:1;
}

html[data-apr-state="listening"] .apr-mini-bars span:nth-child(2),
html[data-apr-state="speaking"] .apr-mini-bars span:nth-child(2) {
  animation-delay:.08s;
}
html[data-apr-state="listening"] .apr-mini-bars span:nth-child(3),
html[data-apr-state="speaking"] .apr-mini-bars span:nth-child(3) {
  animation-delay:.16s;
}
html[data-apr-state="listening"] .apr-mini-bars span:nth-child(4),
html[data-apr-state="speaking"] .apr-mini-bars span:nth-child(4) {
  animation-delay:.24s;
}

@keyframes aprBars {
  0%   { transform:scaleY(.55); }
  25%  { transform:scaleY(1.55); }
  50%  { transform:scaleY(.8); }
  75%  { transform:scaleY(1.95); }
  100% { transform:scaleY(.55); }
}

.apr-reservas-lower {
  translate:0 18px !important;
}

.apr-inline-voice .apr-status {
  min-height:16px;
}



/* APPTIVA_R12E_CONTROLS */

.apr-reservas-lower {
  translate: 54px 18px !important;
  z-index: 4 !important;
}

.apr-inline-voice .apr-mic {
  white-space: nowrap;
}

