﻿@media screen {
    body {
        /*background-color: #0f325e;*/
        background-image: url(Media/imagen_registro.png);
        background-attachment: fixed;
        background-size: cover;
        background-position: center;
        height: auto;
        text-align: center;
    }

    form {
        border: 16px;
        border-color: black;
        background-color: rgb(255,255,255,2);
        padding: 5px;
        border-radius: 16px;
        color: black;
        opacity: 0.95;
        font-weight: 600;
        margin-top: 30px;
        width: 60%;
        margin: 50px auto 0 auto;
        display: block;
        animation: aparecerFormulario 1s ease-out forwards;
    }

    @keyframes aparecerFormulario {
        from {
            opacity: 0;
            transform: translateY(30px); /* Empieza 30px abajo */
        }

        to {
            opacity: 0.95;
            transform: translateY(0); /* Llega a su posición original */
        }
    }

    content {
        text-align: center;
        align-content: center;
    }

    .datos {
        margin: 10px;
        /*line-height: 2;*/
    }

    .leyenda {
        background-color: skyblue;
    }

    .boton {
        margin: 20px;
    }

    input[type="text"], input[type="password"], textarea {
        text-align: center;
        text-align-last: center;
        padding: 3px 5px;
        margin: 3px 0;
        border: 2px solid #0056b3;
        border-radius: 10px;
        background-color: #ffffff;
        font-size: 14px;
        font-weight: 600;
        color: #333;
        cursor: text;
        transition: all 0.3s ease;
    }

    select {
        background-color: lightblue;
        text-align: center;
        text-align-last: center;
        width: 60%;
        max-width: 250px;
        padding: 3px 5px;
        margin: 3px 0;
        border: 2px solid #0056b3;
        border-radius: 10px;
        background-color: #ffffff;
        font-size: 14px;
        font-weight: 600;
        color: #333;
        cursor: pointer;
        transition: all 0.3s ease;
        appearance: none;
        background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23007bff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");
        background-repeat: no-repeat;
        background-position: right 15px center;
        background-size: 15px;
    }


        select:hover {
            border-color: #007bff;
        }

        select:focus {
            outline: none;
            border-color: #0056b3;
            box-shadow: 0 0 10px rgba(0, 123, 255, 0.2);
            transform: translateY(-2px);
        }


        select option {
            background-color: #ffffff;
            color: #333;
            padding: 10px;
            font-weight: 400;
        }

    .alert-custom {
        display: block;
        padding: 10px;
        margin: 10px 0;
        background-color: #f5b1b7;
        color: #4f0a10;
        border: 1px solid #f5c6cb;
        border-radius: 15px;
        font-family: Arial, sans-serif;
        font-weight: bold;
        text-align: center;
        transition: opacity 0.3s ease-out;
    }

    .titulo {
        display: block;
        font-family: 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
        font-size: 1.5rem;
        font-weight: 700; /* Grosor ligero para mayor elegancia */
        color: #2c3e50; /* Azul Oxford oscuro (muy formal) */
        text-align: center;
        letter-spacing: 2px; /* Espaciado entre letras */
        padding-bottom: 5px;
        margin-bottom: 20px;
        border-bottom: 5px solid rgba(0, 123, 255, 0.2); /* Línea sutil divisoria */
        max-width: fit-content; /* Para que la línea no cruce toda la pantalla */
        margin-left: auto; /* Centrado horizontal */
        margin-right: auto;
    }

    h5 {
        display: block;
        font-family: 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
        font-size: 1rem;
        font-weight: 600; /* Grosor ligero para mayor elegancia */
        color: #2c3e50; /* Azul Oxford oscuro (muy formal) */
        text-align: center;
        letter-spacing: 0.1px; /* Espaciado entre letras */
        margin-top: 15px;
        margin-bottom: 1px;
        margin-bottom: 10px;
        max-width: fit-content; /* Para que la línea no cruce toda la pantalla */
        margin-left: auto; /* Centrado horizontal */
        margin-right: auto;
    }

    .seccion-leyenda {
        max-width: 85%;
        margin: 40px auto;
        font-family: 'Segoe UI', sans-serif;
    }

    /* Definición del movimiento constante (Flotación) */
    @keyframes flotar {
        0% {
            transform: translateY(0px);
        }

        50% {
            transform: translateY(-8px); /* Sube 8 píxeles */
        }

        100% {
            transform: translateY(0px);
        }
    }

    /* Aplicamos la animación al letrero amarillo */
    .alerta-amarilla {
        display: flex;
        background-color: #fff3cd;
        border: 1px solid #ffeeba;
        color: #856404;
        padding: 20px;
        border-radius: 8px;
        margin-bottom: 20px;
        align-items: center;
        box-shadow: 0 4px 10px rgba(0,0,0,0.2);
        /* Animación: nombre, duración, suavizado, infinita */
        animation: flotar 3s ease-in-out infinite;
    }

    /* Aplicamos la misma animación al contenedor gris pero con un pequeño retraso */
    .contenedor-puntos-fondo {
        background-color: rgba(240, 242, 245, 2);
        padding: 25px;
        border-radius: 12px;
        border: 1px solid #dee2e6;
        box-shadow: 0 4px 10px rgba(0,0,0,2);
        /* Animación constante */
        animation: flotar 3.5s ease-in-out infinite;
        animation-delay: 0.5s; /* Para que no se muevan exactamente al mismo tiempo */
    }

    /* Estilos de contenido (Igual que antes) */
    .punto-item {
        display: flex;
        align-items: flex-start;
        margin-bottom: 18px;
    }

    .vineta {
        width: 10px;
        height: 10px;
        background-color: #2c3e50;
        border-radius: 2px;
        margin-top: 5px;
        margin-right: 15px;
        flex-shrink: 0;
    }

    .punto-item p, .contenido-alerta {
        margin: 0;
        font-size: 0.95rem;
        color: #333;
        text-align: justify; /* Justificado solicitado */
        line-height: 1.5;
    }

    .icono-wrapper {
        font-size: 24px;
        margin-right: 15px;
        color: #856404;
    }

    .control-group {
        text-align: center; /* Centra el contenido (input y validadores) */
        margin: 10px 0; /* Espacio arriba y abajo */
        width: 100%; /* Ocupa todo el ancho del formulario */
    }


    /* Esto asegura que los mensajes de error salgan DEBAJO y no a los lados */
    span[id*="rev"], span[id*="rfv"] {
        display: block;
        width: 100%;
    }

    .checkbox-wrapper {
        display: flex;
        align-items: flex-start; /* Alinea el check con la primera línea de texto */
        gap: 10px; /* Espacio entre el cuadro y el texto */
        margin: 15px 0;
        padding: 10px;
        background-color: #154375; /* Un fondo sutil para que resalte */
        border-radius: 5px;
        border: 1px solid #154375;
    }

    /* Tamaño de la letra y color */
    .checkbox-text {
        font-size: 12px; /* Letras más pequeñas */
        line-height: 1.4; /* Altura de línea para mejor legibilidad */
        color: #dee2e6; /* Gris oscuro, más elegante que negro puro */
        cursor: pointer;
        user-select: none; /* Evita que se seleccione el texto al dar clic */
    }

    /* Ajuste opcional para el checkbox de ASP.NET */
    .chk-alineado input {
        width: 16px;
        height: 16px;
        cursor: pointer;
        margin-top: 2px; /* Ajuste fino manual para centrar con el texto */
    }

    
}
