@import url('https://fonts.googleapis.com/css2?family=Roboto+Flex:opsz,wght@8..144,100..1000&display=swap');

*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: "Roboto Flex", sans-serif;
    text-decoration: none;
}

:root{
    --color--contenedor--principal: rgb(250,250,250);
    --color--rojo:rgb(250, 5, 5);
    --color--azul:rgb(5, 10, 250);
    --color--negro:rgb(5, 5, 5);
    --color--texto:rgb(12, 177, 141);
    --color--transparente:rgba(0,0,0,0);
    --color--texto--2:rgba(95,95,95,1);
}

body{
    background: linear-gradient(90deg,rgba(9, 230, 27, 0.3),rgba(4, 245, 193, 0.7));
    padding: 20px;
}

.contenedor--principal{
    width: 100%; /*tamaño del contenedor*/
    max-width: 1000px; /*tamaño maximo del contenedor*/
    margin: auto; /*margenes arriba, derecha, abajo, izquierda de un contenedor*/
    margin-top: 100px; /*margen superio top, margen inferior bottom, derecha/izquierda left/right*/
    display: flex;
    border-radius: 1rem;
    overflow: hidden; /*para que los elementos no sobresalgan del contenedor*/
}

.contenedor--principal .forma--contenedor{
    width: 70%;
    padding: 30px;
    background-color: var(--color--contenedor--principal);
}

.contenedor--principal .forma--contenedor .logotipo{
    width: 130px; /*tamaño de la imagen*/
    display: block;
    margin: auto; /*crea margenes automaticos*/
    border-radius: 50%;
    object-fit: cover; /*mantiene la calidad de la imagen*/
}

.contenedor--principal .forma--contenedor .titulo{
    text-align: center; /*para centrar el texto dentro de su contenedor*/
    margin-top: 10px;
    font-weight: 600; /*grosor del texto de acuerdo a su tipo*/
    color: var(--color--texto); /*da color solo al texto*/
    font-size: 30px;
}

.contenedor--principal .forma--contenedor label{
    display: block; /*coloca los elementos uno debajo del otro*/
    margin-top: 30px;
    font-size: 20px; /*le da un tamaño solo al texto*/
    font-weight: 600;
    color: var(--color--texto);
}

.contenedor--principal .forma--contenedor input[type="text"], input[type="password"]{
    width: 100%; /*toma la totalidad del largo de un contenedor*/
    height: 35px; /*regula el ancho de un objeto*/
    background-color: var(--color--transparente);
    border: none;
    outline: 0px;
    border-bottom: 1px solid rgb(12, 177, 141);
    color: var(--color--texto--2);
    font-size: 20px;
}

.contenedor--principal .forma--contenedor input[type="submit"]{
    width: 100%;
    height: 50px;
    margin-top: 50px;
    color: var(--color--contenedor--principal);
    border: none;
    background: linear-gradient(90deg,rgba(9, 230, 27, 0.7), rgba(4, 245, 193, 0.7));
    font-weight: 400;
    cursor: pointer;
    font-size: 30px;
    border-radius: 0.5rem;
}

.contenedor--principal .forma--contenedor input[type="submit"]:hover{
    background: linear-gradient(90deg,rgba(4, 245, 193, 0.7),rgba(9, 230, 27, 0.7));
}

.text-footer{
    display: block;
    margin-top: 100px;
    text-align: center;
    color: rgb(12, 177, 141);
    font-weight: 400;
}

.text-footer a{
    color: rgb(4, 80, 245);
    font-weight: 600;
}

.contenedor--principal .contenedor--imagen{
    width: 100%;
    background-image: url(../imagenes/fondo.png);
    background-position: center;
    background-size: cover;
    object-fit: cover; /*mantiene la calidad de la imagen*/
    padding: 40px;
    position: relative;
}

.contenedor--principal .capa{
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: linear-gradient(90deg,#e30f87, #bf4222);
    opacity: 0;
}

.mensaje--error{
    color: var(--color--rojo);
    display: block;
    margin-top: 10px;
}

@media screen and (max-width: 800px) {
    .contenedor--imagen{
        display: none;
    }
    .forma--contenedor{
        margin: auto;
        width: 100%;
        background: var(--color--contenedor--principal);
    }
}