body{
    /* background-image: url("../images/backgrounds/mountains.jpg"); */
    background-size: 100vw auto;
    background-attachment: fixed;
}
.reg_body{
    /* background-image: url("../images/backgrounds/lake.jpg"); */
}

.login_center_conteainer{
    max-width: 350px;
    margin: auto;
    margin-top: 40vh;
    margin-bottom: 0;
    transform: translateY(-50%);
}

.page_background{
    opacity: 0.0;
    filter:blur(5px);
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100vw;
    height: auto;
}

.bg_appear{
    opacity: 1.0;
    transition: opacity 2s;
}

.login_panel{
    background-color: white;
    padding: 15px;
    border-radius: 15px;
    box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.434);
}

#id_login{
    display: grid;
    row-gap: 5px;
}



/* ######################################################################## */
/* ######################################################################## */
/* ######################################################################## */
/* Index / Login / Register */

.lang_title, .lang_descr, .lang_message{
    font-family: 'Courier New', Courier, monospace;
    color: rgb(67, 45, 25);
    text-align: center;
    text-shadow: 0px 3px 5px rgba(0, 0, 0, 0.37);
}

.lang_title{
    font-size: 50px;
}
.lang_descr{
    font-size: 20px;
}

.lang_register_link{
    text-decoration: none;
}
.register_btn{
    text-align: center !important;
    text-decoration: none;
    color: rgb(151, 140, 140);
    text-align: center;
    text-decoration: none !important;
}


.register_panel{
    width: 300px;
    margin: auto;
    background-color: white;
    padding: 10px;
}

.registration_response{
    display: block;
    background-color: lightgreen;
    padding: 5px;
    border-radius: 5px;
    margin: 5px 0px;
}

.register_inputs{
    display: grid;
    grid-template-columns: auto;
    grid-row-gap: 5px;
    /* width: 300px;
    margin: auto;
    background-color: white;
    padding: 10px; */
}

.register_inputs > div {
    display: grid;
    grid-template-columns: auto auto;
    grid-column-gap: 10px;
    /* width: 100%; */
}
.register_inputs > div > input{
    min-width: 50px;
}

.processing_indicator{
    animation: roatating_load 1s linear 0s infinite;
    transform: rotateZ(0);
    margin: auto;
}

@keyframes roatating_load{
    from{
        transform:rotateZ(0deg);
    }
    to{
        transform:rotateZ(-360deg);
    }
}

#id_pass_field{
    transition: background-color 0.5s ease, border 0.5s ease;
}
#id_pass_conf_field{
    transition: background-color 0.5s ease, border 0.5s ease;
}
#id_email_field{
    transition: background-color 0.5s ease, border 0.5s ease;
}
#pass_requirements > li {
    transition: color 0.5s ease;
}

.bad_field{
    background-color: #ffb1b1;
}
.good_field{
    background-color: #ccffce;
    border: 2px inset lime;
}
.lang_reg_req{
    color: gray;
}
.pass_strength{
    width: 100%;
}
.pass_requ{
    color: white;
    margin: 0px;
    font-size: 13px;
}