/* ---------------------------------------------------------------------------
   Mayusculas en los campos de texto
   ---------------------------------------------------------------------------
   Regla del proyecto -decisiones de Juan (2026-09-25 y 2026-09-29), ver
   "Mayusculas en los campos de texto" en CLAUDE.md-. Esta hoja es la parte
   VISUAL, y la comparten todas las pantallas: cada una la carga despues de su
   propia hoja, igual que carga app.js.

   Lo que se ve en mayusculas: los elementos marcados data-mayusculas, que son
   los que muestran datos grabados -celdas, rotulos con datos, nombres-.

   Lo que NO:

     - los campos de texto. Desde el 2026-09-29 los correos que aparezcan
       dentro del texto se conservan tal como se escribieron, y un
       text-transform los mostraria en mayusculas aunque no lo esten. El VALOR
       lo convierte app.js al salir del campo, y el servidor al grabar: lo que
       se ve en el campo es lo que se guarda;
     - un dato que puede llevar un correo dentro del texto: no se marca
       data-mayusculas, por el mismo motivo;
     - los correos y las contrasenas, y los textos de ejemplo de los campos
       (placeholder), que son textos fijos y siguen el diseno. */

[data-mayusculas] {
    text-transform: uppercase;
}

/* Una lista con datos lleva data-mayusculas en el <select>, no en sus
   opciones: la lista cerrada se dibuja con el estilo del <select>, y la marca
   en la opcion no alcanzaria a la eleccion que se ve. Sus opciones de texto
   fijo -la vacia, "Seleccione...", o la que lleve data-texto-fijo, como
   "Crear un cliente nuevo"- quedan como las dibujo el diseno, mientras son la
   elegida y dentro de la lista desplegada. */
select[data-mayusculas]:has(option[value=""]:checked),
select[data-mayusculas]:has(option[data-texto-fijo]:checked),
select[data-mayusculas] option[value=""],
select[data-mayusculas] option[data-texto-fijo] {
    text-transform: none;
}
