/* =============================================
   Teclado Virtual para Tablets - DESACTIVADO
   ============================================= */

/* DESACTIVADO: El teclado virtual está completamente deshabilitado */
#teclado-virtual {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  position: absolute !important;
  left: -9999px !important;
}

#teclado-virtual.visible {
  display: none !important;
}

/* Fila de teclas - Más grande para uso rápido */
.teclado-fila {
  display: flex;
  justify-content: center;
  gap: 6px;
  margin-bottom: 6px;
}

/* Botones del teclado - Más grandes para escritura rápida */
.tecla {
  min-width: 45px;
  height: 45px;
  padding: 8px 10px;
  font-size: 16px;
  font-weight: 600;
  border: 2px solid #ccc;
  border-radius: 6px;
  background: #fff;
  color: #333;
  cursor: pointer;
  user-select: none;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.1s;
  flex: 1;
  max-width: 55px;
  touch-action: manipulation;
}

.tecla:hover {
  background: #e9e9e9;
}

.tecla:active {
  background: #d4d4d4;
  transform: scale(0.95);
}

/* Teclas especiales - Más grandes */
.tecla.espacio {
  flex: 3;
  max-width: 250px;
  min-width: 150px;
}

.tecla.enter {
  flex: 1.5;
  max-width: 90px;
  background: #007bff;
  color: #fff;
  border-color: #007bff;
}

.tecla.enter:hover {
  background: #0056b3;
}

.tecla.borrar {
  flex: 1.5;
  max-width: 90px;
  background: #dc3545;
  color: #fff;
  border-color: #dc3545;
}

.tecla.borrar:hover {
  background: #c82333;
}

.tecla.shift,
.tecla.numeros {
  flex: 1.2;
  max-width: 75px;
  background: #6c757d;
  color: #fff;
  border-color: #6c757d;
}

.tecla.shift:hover,
.tecla.numeros:hover {
  background: #5a6268;
}

/* Teclas de números y símbolos */
.teclado-numeros {
  display: none;
}

.teclado-numeros.visible {
  display: block;
}

/* Header del teclado - Más visible */
.teclado-header {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  padding: 6px 8px;
  margin-bottom: 6px;
  border-bottom: 1px solid #ddd;
}

.teclado-header button {
  padding: 6px 12px;
  background: #dc3545;
  color: #fff;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  font-size: 13px;
  line-height: 1.3;
  font-weight: 600;
}

.teclado-header button:hover {
  background: #c82333;
}

/* Input activo */
.input-activo {
  position: relative;
}

.input-activo::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: #007bff;
  animation: blink 1s infinite;
}

@keyframes blink {
  0%, 50% { opacity: 1; }
  51%, 100% { opacity: 0; }
}

/* Responsive para tablets - Teclas grandes pero ajustadas */
@media (max-width: 1024px) {
  #teclado-virtual {
    min-width: 320px;
    max-width: 400px;
    padding: 6px;
  }
  
  .tecla {
    min-width: 40px;
    height: 40px;
    font-size: 15px;
    padding: 6px 8px;
    max-width: 50px;
  }
  
  .teclado-fila {
    gap: 5px;
    margin-bottom: 5px;
  }
  
  .teclado-header {
    padding: 5px 6px;
    margin-bottom: 5px;
  }
  
  .tecla.espacio {
    max-width: 220px;
    min-width: 120px;
  }
}

/* Modo horizontal (landscape) - Teclado más compacto */
@media (max-width: 1024px) and (orientation: landscape) {
  #teclado-virtual {
    min-width: 300px;
    max-width: 380px;
    padding: 5px;
    max-height: 90vh;
    overflow-y: auto;
  }
  
  .tecla {
    min-width: 35px;
    height: 35px;
    font-size: 13px;
    padding: 5px 7px;
    max-width: 45px;
  }
  
  .teclado-fila {
    gap: 4px;
    margin-bottom: 4px;
  }
  
  .teclado-header {
    padding: 4px 5px;
    margin-bottom: 4px;
  }
  
  .teclado-header button {
    padding: 4px 10px;
    font-size: 11px;
  }
  
  .tecla.espacio {
    max-width: 180px;
    min-width: 100px;
  }
}

/* Ocultar en desktop */
@media (min-width: 1025px) {
  #teclado-virtual {
    display: none !important;
  }
}

