/*
===============================================================================
  GENESIS CAMERA OVERLAY HUD - Efeito visual de tracking sobre o vídeo
===============================================================================
  Desenha cantos brackets no rosto, esqueleto nas mãos, labels de gestos,
  crosshair e grid reticulada diretamente sobre a miniatura da câmera (GCT).
  Classes isoladas com prefixo .gco-*
*/

.gco-overlay{
  position: absolute;
  top: 34px;                   /* abaixo do header da gct-mini */
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  z-index: 5;
  mix-blend-mode: screen;      /* cores aditivas sobre o vídeo escuro */
}

.gco-overlay canvas{
  width: 100%;
  height: 100%;
  display: block;
}

/* Labels absolutas (seguem o rosto/mão via transform) */
.gco-label{
  position: absolute;
  font-family: 'Orbitron', monospace;
  font-size: 8px;
  letter-spacing: 1.5px;
  color: #00f0ff;
  background: rgba(0, 10, 25, 0.85);
  padding: 2px 6px;
  border-radius: 3px;
  border: 1px solid rgba(0, 240, 255, 0.6);
  text-shadow: 0 0 4px rgba(0, 240, 255, 0.8);
  box-shadow: 0 0 8px rgba(0, 240, 255, 0.4);
  pointer-events: none;
  white-space: nowrap;
  transform: translate(-50%, -100%);
  transition: left .15s, top .15s;
  z-index: 6;
}
.gco-label.gco-label-hand{
  color: #ff00ff;
  border-color: rgba(255, 0, 255, 0.6);
  text-shadow: 0 0 4px rgba(255, 0, 255, 0.8);
  box-shadow: 0 0 8px rgba(255, 0, 255, 0.4);
}
.gco-label.gco-label-gesture{
  color: #ffff00;
  border-color: rgba(255, 255, 0, 0.7);
  text-shadow: 0 0 4px rgba(255, 255, 0, 0.8);
  box-shadow: 0 0 8px rgba(255, 255, 0, 0.4);
  font-size: 9px;
}

/* Status label no canto inferior esquerdo do vídeo */
.gco-status{
  position: absolute;
  bottom: 6px;
  left: 6px;
  font-family: 'Orbitron', monospace;
  font-size: 8px;
  letter-spacing: 1.5px;
  color: #00f0ff;
  background: rgba(0, 10, 25, 0.75);
  padding: 3px 7px;
  border-radius: 3px;
  border-left: 2px solid #00f0ff;
  pointer-events: none;
  z-index: 6;
  display: flex;
  gap: 8px;
  align-items: center;
}
.gco-status-dot{
  width: 6px; height: 6px;
  border-radius: 50%;
  background: #0f8;
  box-shadow: 0 0 4px #0f8;
  animation: gcoPulse 1.2s infinite;
}
@keyframes gcoPulse{
  50% { opacity: .4; transform: scale(1.3); }
}

/* Coordenadas no canto superior direito */
.gco-coords{
  position: absolute;
  top: 40px;
  right: 6px;
  font-family: 'Orbitron', monospace;
  font-size: 8px;
  letter-spacing: 1px;
  color: rgba(0, 240, 255, 0.9);
  background: rgba(0, 10, 25, 0.7);
  padding: 3px 6px;
  border-radius: 3px;
  border: 1px solid rgba(0, 240, 255, 0.35);
  pointer-events: none;
  z-index: 6;
  line-height: 1.4;
}
