body {
    font-family: var(--bs-font-sans-serif);
    background: url('../img/login-wallpaper.png') no-repeat center center fixed;
    background-size: cover;
    height: 100%;
    overflow: hidden;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
}


/**************************************************************************************************************************/
/*                                              DECLARATION VARIABLES                                                     */
/**************************************************************************************************************************/

:root
{
    --bs-blue:#0d6efd;
    --bs-indigo:#6610f2;
    --bs-purple:#6f42c1;
    --bs-pink:#d63384;
    --bs-red:#dc3545;
    --bs-orange:#fd7e14;
    --bs-yellow:#ffc107;
    --bs-green:#198754;
    --bs-teal:#20c997;
    --bs-cyan:#0dcaf0;
    --bs-black:#000;
    --bs-white:#fff;
    --bs-gray:#6c757d;
    --bs-gray-dark:#343a40;
    --bs-gray-100:#f8f9fa;
    --bs-gray-200:#e9ecef;
    --bs-gray-300:#dee2e6;
    --bs-gray-400:#ced4da;
    --bs-gray-500:#adb5bd;
    --bs-gray-600:#6c757d;
    --bs-gray-700:#495057;
    --bs-gray-800:#343a40;
    --bs-gray-900:#212529;
    --bs-primary:#0d6efd;
    --bs-secondary:#6c757d;
    --bs-success:#198754;
    --bs-info:#0dcaf0;
    --bs-warning:#ffc107;
    --bs-danger:#dc3545;
    --bs-light:#f8f9fa;
    --bs-dark:#212529;
    --bs-primary-rgb:13,110,253;
    --bs-secondary-rgb:108,117,125;
    --bs-success-rgb:25,135,84;
    --bs-info-rgb:13,202,240;
    --bs-warning-rgb:255,193,7;
    --bs-danger-rgb:220,53,69;
    --bs-light-rgb:248,249,250;
    --bs-dark-rgb:33,37,41;
    --bs-white-rgb:255,255,255;
    --bs-black-rgb:0,0,0;
    --bs-body-color-rgb:33,37,41;
    --bs-body-bg-rgb:255,255,255;
    --bs-font-sans-serif:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans","Liberation Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
    --bs-font-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;
    --bs-gradient:linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
    --bs-body-font-family:var(--bs-font-sans-serif);
    --bs-body-font-size:1rem;
    --bs-body-font-weight:400;
    --bs-body-line-height:1.5;
    --bs-body-color:#212529;
    --bs-body-bg:#fff;
    /*--bs-border-width:1px;*/
    --bs-border-style:solid;
    --bs-border-color:#dee2e6;
    --bs-border-color-translucent:rgba(0, 0, 0, 0.175);
    --bs-border-radius:0.375rem;
    --bs-border-radius-sm:0.25rem;
    --bs-border-radius-lg:0.5rem;
    --bs-border-radius-xl:1rem;
    --bs-border-radius-2xl:2rem;
    --bs-border-radius-pill:50rem;
    --bs-link-color:#0d6efd;
    --bs-link-hover-color:#0a58ca;
    --bs-code-color:#d63384;
    --bs-highlight-bg:#fff3cd
}

*, ::after, ::before
{
    box-sizing: border-box;
}


/**************************************************************************************************************************/
/*                                                       ALERT                                                             */
/**************************************************************************************************************************/

.container
{
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100vh;
    width:100%;
    /*padding-right:calc(1.5rem * .5);
    padding-left:calc(1.5rem * .5);*/
    margin-right:auto;
    margin-left:auto;
}

@media (min-width:576px){
    .container{max-width:540px}
}

@media (min-width:768px){
    .container{max-width:720px}
}

@media (min-width:992px){
    .container{max-width:960px}
}

@media (min-width:1200px){
    .container{max-width:1140px}
}

@media (min-width:1400px){
    .container{max-width:1320px}
}


/**************************************************************************************************************************/
/*                                                       ALERT                                                             */
/**************************************************************************************************************************/

.alert
{
    --bs-alert-bg:transparent;
    --bs-alert-padding-x:1rem;
    --bs-alert-padding-y:1rem;
    --bs-alert-margin-bottom:1rem;
    --bs-alert-color:inherit;
    --bs-alert-border-color:transparent;
    --bs-alert-border:1px solid var(--bs-alert-border-color);
    --bs-alert-border-radius:0.375rem;
    position:relative;
    padding:var(--bs-alert-padding-y) var(--bs-alert-padding-x);
    margin-bottom:var(--bs-alert-margin-bottom);
    color:var(--bs-alert-color);
    background-color:var(--bs-alert-bg);
    border:var(--bs-alert-border);
    border-radius:var(--bs-alert-border-radius);
}

.alert-success
{
    --bs-alert-color:#0f5132;
    --bs-alert-bg:#d1e7dd;
    --bs-alert-border-color:#badbcc;
}

.alert-success .alert-link
{
    color:#0c4128;
}

.alert-danger
{
    --bs-alert-color:#842029;
    --bs-alert-bg:#f8d7da;
    --bs-alert-border-color:#f5c2c7;
}

.alert-danger .alert-link
{
    color:#6a1a21;
}


/**************************************************************************************************************************/
/*                                                     INPUT-GROUP                                                        */
/**************************************************************************************************************************/

.input-group
{
    position:relative;
    display:flex;
    flex-wrap:wrap;
    align-items:stretch;
    width:100%;
}

.input-group>.form-control,.input-group>.form-floating,.input-group>.form-select
{
    position:relative;
    flex:1 1 auto;
    width:1%;
    min-width:0;
}

.input-group>.form-control:focus,.input-group>.form-floating:focus-within,.input-group>.form-select:focus
{
    z-index:5;
}

.input-group .btn
{
    position:relative;
    z-index:2;
}

.input-group .btn:focus
{
    z-index:5;
}

.input-group-text
{
    display:flex;
    align-items:center;
    padding:.375rem .75rem;
    font-size:1rem;
    font-weight:400;
    line-height:1.5;
    color:#212529;
    text-align:center;
    white-space:nowrap;
    background-color:#e9ecef;
    border:1px solid #ced4da;
    border-radius:.375rem;
}

.input-group-lg>.btn,.input-group-lg>.form-control,.input-group-lg>.form-select,.input-group-lg>.input-group-text
{
    padding:.5rem 1rem;
    font-size:1.25rem;
    border-radius:.5rem;
}

.input-group-sm>.btn,.input-group-sm>.form-control,.input-group-sm>.form-select,.input-group-sm>.input-group-text
{
    padding:.25rem .5rem;
    font-size:.875rem;
    border-radius:.25rem;
}

.input-group-lg>.form-select,.input-group-sm>.form-select
{
    padding-right:3rem;
}

.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3),.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-control,.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-select,.input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating)
{
    border-top-right-radius:0;
    border-bottom-right-radius:0;
}

.input-group.has-validation>.dropdown-toggle:nth-last-child(n+4),.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-control,.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-select,.input-group.has-validation>:nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating)
{
    border-top-right-radius:0;
    border-bottom-right-radius:0;
}

.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback)
{
    margin-left:-1px;
    border-top-left-radius:0;
    border-bottom-left-radius:0;
}

.input-group>.form-floating:not(:first-child)>.form-control,.input-group>.form-floating:not(:first-child)>.form-select
{
    border-top-left-radius:0;
    border-bottom-left-radius:0;
}

.input-group>.form-control:not(:focus).is-valid,.input-group>.form-floating:not(:focus-within).is-valid,.input-group>.form-select:not(:focus).is-valid,.was-validated .input-group>.form-control:not(:focus):valid,.was-validated .input-group>.form-floating:not(:focus-within):valid,.was-validated .input-group>.form-select:not(:focus):valid
{
    z-index:3;
}

.input-group>.form-control:not(:focus).is-invalid,.input-group>.form-floating:not(:focus-within).is-invalid,.input-group>.form-select:not(:focus).is-invalid,.was-validated .input-group>.form-control:not(:focus):invalid,.was-validated .input-group>.form-floating:not(:focus-within):invalid,.was-validated .input-group>.form-select:not(:focus):invalid
{
    z-index:4;
}

.input-group
{
    width:auto;
}


/**************************************************************************************************************************/
/*                                                       FORM                                                             */
/**************************************************************************************************************************/

button, input {
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
}

.form-control
{
    display:block;
    width:100%;
    line-height:1.5;
    color:#212529;
    border:1px solid #ced4da;
    border-radius:.375rem;
    transition:border-color .20s ease-in-out,box-shadow .20s ease-in-out;
}

.form-control
{
    padding:.375rem .75rem;
}

.form-control:focus, .form-select:focus
{
    border-color:#86b7fe;
    outline:0;
    box-shadow:0 0 0 .25rem rgba(13,110,253,.25);
}

.form-control::-moz-placeholder
{
    color:#6c757d;
    opacity:1;
}

.form-control::placeholder
{
    color:#6c757d;
    opacity:1;
}

.form-control:disabled
{
    background-color:#e9ecef;
    opacity:1;
}

.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button
{
    background-color:#dde0e3;
}

.form-control:hover:not(:disabled):not([readonly])::file-selector-button
{
    background-color:#dde0e3;
}

/**************************************************************************************************************************/
/*                                                        BUTTON                                                          */
/**************************************************************************************************************************/

.btn
{
    display: inline-block;
    padding: .375rem .75rem;
    margin-bottom: 0;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    cursor: pointer;
    border-radius: 4px;
}

.btn:hover
{
    color: #009EF5;
    background-color: #FFFFFF;
    border-color: #009EF5;
}


/**************************************************************************************************************************/
/*                                                        MARGIN                                                          */
/**************************************************************************************************************************/

.mt-3
{
    margin-top:1rem!important;
}


/**************************************************************************************************************************/
/*                                                         TITRE                                                          */
/**************************************************************************************************************************/

h2
{
    margin-top: 0;
    margin-bottom: .5rem;
    font-weight: 500;
    line-height: 1.2;
}



@media (min-width: 1200px)
{
    h2
    {
        font-size: 2rem;
    }
}


/**************************************************************************************************************************/
/*                                                         AUTRES                                                         */
/**************************************************************************************************************************/


.content {
    display: flex;
    justify-content: center;
    flex-direction: column;
    background: #FFFFFF 0% 0% no-repeat padding-box;
    border-radius: 10px;
    width: 640px;
    height: auto;
    opacity: 0.9;
    padding: 40px;
}

.content-info {
    padding-left: 100px;
    padding-right: 100px;
}

.content-info div {
    margin-bottom: 10px;
}

.content h2 {
    align-self: center;
}

.m-content {
    margin-top: 32px;
}

.m-btn-submit {
    align-self: flex-end;
    color: #fff;
    background-color: #009EF5;
    border-color: #009EF5;
    margin-bottom: 10px;
}

.m-forbidden {
    align-self: center;
}

hr {
    margin-top: 1rem;
    margin-bottom: 1rem;
    border: 0;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.password-rules {
    color: #DC143C;
}

.icon-infos {
    margin-right: 10px;
}

.counter-redirect {
    display: flex;
    flex-direction: row;
    justify-content: center;
}

.counter-redirect div {
    font-size: 32px;
    font-weight: bold;
}

.counter-redirect-sec {
    color: #009EF5;
}

.counter-redirect-text {
    color: #009EF5;
}
