/*==================================================
            SCHOOLEAD RESET PASSWORD
==================================================*/

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

:root{

    --primary:#0057D9;      /* Bleu Bic */
    --secondary:#F7941D;    /* Orange */
    --text:#333;
    --gray:#666;
    --border:#e6e6e6;
    --background:#f5f6fa;
    --white:#ffffff;

}

body{

    font-family:'Poppins',sans-serif;
    background:var(--background);
    color:var(--text);
    min-height:100vh;

    display:flex;
    flex-direction:column;

}

/*==========================
HEADER
==========================*/

.topbar{

    height:80px;

    background:#fff;

    display:flex;
    justify-content:space-between;
    align-items:center;

    padding:0 45px;

    border-bottom:1px solid #ededed;

}

.logo-area{

    display:flex;
    align-items:center;
    gap:15px;

}

.logo-area img{

    width:55px;

}

.logo-text h2{

    color:var(--primary);
    font-size:22px;
    font-weight:700;

}

.logo-text span{

    color:#666;
    font-size:14px;

}

.language{

    display:flex;
    align-items:center;
    gap:10px;

    background:#fff;
    border:1px solid #ddd;

    padding:10px 18px;

    border-radius:6px;

}

.language i{

    color:var(--primary);

}

.language select{

    border:none;
    outline:none;
    font-family:Poppins;

}

/*==========================
MAIN
==========================*/

.container{

    flex:1;

    display:flex;
    justify-content:center;
    align-items:center;

    padding:60px 20px;

}

.card{

    width:520px;

    background:#fff;

    border:1px solid #ebebeb;

    border-radius:8px;

    overflow:hidden;

    box-shadow:0 10px 35px rgba(0,0,0,.06);

}

.card h1{

    color:var(--primary);

    font-size:20px;

    padding:35px 35px 5px;

}

.card h2{

    color:#555;

    font-size:18px;

    padding:0 35px 20px;

    font-weight:500;

}

.card p{

    color:#666;

    line-height:1.8;

    font-size:14px;

    padding:0 35px 25px;

}

/*==========================
INPUTS
==========================*/

.input-box{

    padding:22px 35px;

    border-top:1px solid #ececec;

}

.input-box label{

    display:block;

    margin-bottom:10px;

    font-weight:600;

}

.input-box span{

    color:red;

}

.input-box input{

    width:100%;

    border:none;

    outline:none;

    font-size:15px;

    color:#333;

    padding:8px 0;

}

.input-box input::placeholder{

    color:#aaa;

}

/*==========================
ACTIONS
==========================*/

.action{

    padding:25px 35px;

    border-top:1px solid #ececec;

    display:flex;
    justify-content:space-between;
    align-items:center;

    gap:20px;

}

.code-btn{

    background:#fff;

    color:var(--primary);

    border:2px solid var(--primary);

    padding:11px 18px;

    border-radius:5px;

    cursor:pointer;

    font-weight:600;

    transition:.3s;

}

.code-btn:hover{

    background:var(--primary);

    color:#fff;

}

.action a{

    text-decoration:none;

    color:var(--primary);

    font-size:14px;

}

.action a:hover{

    color:var(--secondary);

}

/*==========================
CAPTCHA
==========================*/

.captcha{

    margin:0 35px;

    border:1px solid #ddd;

    border-radius:6px;

    padding:18px;

    display:flex;

    align-items:center;

    justify-content:space-between;

    background:#fafafa;

}

.captcha input{

    width:22px;
    height:22px;

}

.captcha span{

    flex:1;

    margin-left:15px;

    color:#444;

    font-size:15px;

}

.captcha img{

    width:70px;

}

/*==========================
CONFIRM
==========================*/

.confirm{

    width:calc(100% - 70px);

    margin:30px 35px 35px;

    background:var(--primary);

    color:#fff;

    border:none;

    padding:16px;

    border-radius:6px;

    cursor:pointer;

    font-size:17px;

    font-weight:600;

    transition:.3s;

}

.confirm:hover{

    background:var(--secondary);

}

/*==========================
FOOTER
==========================*/

footer{

    background:#fff;

    border-top:1px solid #ececec;

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:25px 45px;

}

.footer-left{

    display:flex;

    gap:20px;

    align-items:center;

}

.footer-left img{

    width:55px;

}

.footer-left h3{

    color:var(--primary);

    margin-bottom:8px;

    font-size:18px;

}

.footer-left p{

    color:#666;

    font-size:14px;

    margin-top:4px;

}

.footer-right{

    display:flex;

    flex-direction:column;

    gap:15px;

}

.footer-right a{

    text-decoration:none;

    color:#444;

    transition:.3s;

    font-size:15px;

}

.footer-right a i{

    color:var(--secondary);

    margin-right:10px;

}

.footer-right a:hover{

    color:var(--primary);

}

/*==========================
RESPONSIVE
==========================*/

@media(max-width:900px){

.topbar{

    padding:20px;
    height:auto;
    flex-direction:column;
    gap:20px;

}

footer{

    flex-direction:column;
    gap:30px;
    text-align:center;

}

.footer-left{

    flex-direction:column;

}

.card{

    width:100%;

}

.action{

    flex-direction:column;

}

.code-btn{

    width:100%;

}

.confirm{

    width:calc(100% - 40px);
    margin:20px;

}

}

@media(max-width:600px){

.logo-text h2{

    font-size:18px;

}

.logo-text span{

    font-size:12px;

}

.card h1{

    font-size:23px;

}

.card h2{

    font-size:16px;

}

.captcha{

    flex-wrap:wrap;
    gap:15px;

}

.captcha img{

    margin:auto;

}

}

/* Toast */

#toast{

    position:fixed;

    top:30px;

    right:30px;

    color:#fff;

    padding:15px 25px;

    border-radius:8px;

    display:none;

    font-weight:600;

    z-index:9999;

    box-shadow:0 8px 20px rgba(0,0,0,.2);

}

/* Checkbox */

.checkbox{

    width:24px;

    height:24px;

    border:2px solid #888;

    display:flex;

    align-items:center;

    justify-content:center;

    margin-right:15px;

    border-radius:3px;

    cursor:pointer;

}

.captcha-check{

    display:flex;

    align-items:center;

    cursor:pointer;

}

.password-box{

display:flex;

align-items:center;

border:1px solid #ddd;

padding:12px;

border-radius:6px;

}

.password-box input{

flex:1;

border:none;

outline:none;

font-size:15px;

}

.toggle{

cursor:pointer;

color:#0057D9;

}

.strength{

height:8px;

background:#ddd;

border-radius:30px;

margin:20px 35px 10px;

overflow:hidden;

}

#strengthBar{

width:0;

height:100%;

transition:.4s;

}

#strengthText{

margin:0 35px 20px;

font-weight:600;

}