/* ========================================
LOGIN RAÍZES — RESET ESTRUTURAL ASTRA
======================================== */

body.page-id-105 .ast-container,
body.page-id-105 .site-content,
body.page-id-105 .content-area,
body.page-id-105 .site-main,
body.page-id-105 article,
body.page-id-105 .entry-content{
    margin:0 !important;
    padding:0 !important;
    max-width:100% !important;
    width:100%;
}

/* ========================================
LOGIN RAÍZES — WRAPPER CENTRAL
======================================== */

body.page-id-105 .tutor-wrap.tutor-page-wrap{
    min-height:100svh;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:30px 18px;
    box-sizing:border-box;
}

/* ========================================
LOGIN RAÍZES — CARD
======================================== */

body.page-id-105 .tutor-login-form-wrapper{
    width:100%;
    max-width:540px;
    margin:0 auto;
    padding:48px 40px;
    background:linear-gradient(180deg,#121212 0%,#0b0b0b 100%);
    border-radius:22px;
    box-shadow:
        0 40px 120px rgba(0,0,0,0.85),
        0 0 0 1px rgba(212,175,55,0.12);
    backdrop-filter:blur(6px);
    transition:0.35s;
}

body.page-id-105 .tutor-login-form-wrapper:hover{
    box-shadow:
        0 50px 140px rgba(0,0,0,0.95),
        0 0 0 1px rgba(212,175,55,0.18);
}

body.page-id-105 .tutor-template-segment.tutor-login-wrap{
    width:100%;
    max-width:900px;
    margin:0 auto;
}

/* ========================================
LOGIN RAÍZES — LOGO
======================================== */

body.page-id-105 .raizes-login-logo{
    text-align:center;
    margin-bottom:26px;
}

body.page-id-105 .raizes-login-logo img{
    max-width:130px;
    height:auto;
    filter:drop-shadow(0 12px 30px rgba(0,0,0,0.6));
}

/* ========================================
LOGIN RAÍZES — TÍTULO
======================================== */

body.page-id-105 .tutor-login-form-wrapper .tutor-fs-5{
    margin-bottom:30px !important;
    font-size:28px;
    line-height:1.3;
    font-weight:600;
    letter-spacing:-0.3px;
    color:#d4af37 !important;
    text-shadow:0 0 12px rgba(212,175,55,0.18);
}

/* ========================================
LOGIN RAÍZES — INPUTS
======================================== */

body.page-id-105 #tutor-login-form .tutor-form-control{
    width:100%;
    height:58px;
    padding:0 18px;
    border:1px solid rgba(255,255,255,0.10);
    border-radius:22px;
    background:#f3f4f6;
    font-size:17px;
    color:#111;
    transition:0.25s;
}

body.page-id-105 #tutor-login-form .tutor-form-control::placeholder{
    color:#6b7280;
}

body.page-id-105 #tutor-login-form .tutor-form-control:focus{
    outline:none;
    border-color:rgba(212,175,55,0.55);
    box-shadow:0 0 0 4px rgba(212,175,55,0.12);
    transform:translateY(-1px);
}

/* ========================================
LOGIN RAÍZES — CHECKBOX / LINKS
======================================== */

body.page-id-105 .tutor-form-check{
    display:flex;
    align-items:center;
    gap:12px;
}

body.page-id-105 .tutor-form-check-input{
    width:22px;
    height:22px;
    margin:0;
    border-radius:6px;
    border:1px solid rgba(212,175,55,0.45);
    background:#0f0f0f;
    cursor:pointer;
}

body.page-id-105 .tutor-form-check-input:checked{
    background:linear-gradient(180deg,#e0b94f,#cfa93a);
    border-color:#cfa93a;
}

body.page-id-105 .tutor-form-check label{
    font-size:15px;
    font-weight:600;
    color:#d4af37 !important;
}

body.page-id-105 .tutor-btn-ghost{
    color:rgba(255,255,255,0.65);
    font-size:15px;
    text-decoration:none;
    transition:0.25s;
}

body.page-id-105 .tutor-btn-ghost:hover{
    color:#e0b94f;
    text-decoration:underline;
}

/* ========================================
LOGIN RAÍZES — BOTÃO
======================================== */

body.page-id-105 #tutor-login-form .tutor-btn-primary{
    width:100%;
    height:60px;
    margin-bottom:8px;
    border:none;
    border-radius:16px;
    background:linear-gradient(180deg,#e0b94f 0%,#cfa93a 100%);
    color:#fff;
    font-size:18px;
    font-weight:700;
    letter-spacing:0.02em;
    box-shadow:
        0 14px 40px rgba(207,169,58,0.35),
        inset 0 1px 0 rgba(255,255,255,0.25);
    transition:0.28s;
}

body.page-id-105 #tutor-login-form .tutor-btn-primary:hover{
    transform:translateY(-2px);
    box-shadow:
        0 20px 60px rgba(207,169,58,0.45),
        inset 0 1px 0 rgba(255,255,255,0.35);
}

body.page-id-105 #tutor-login-form .tutor-btn-primary:active{
    transform:translateY(0);
}

/* ========================================
LOGIN RAÍZES — CTA FINAL
======================================== */

body.page-id-105 .tutor-text-center{
    margin-top:34px !important;
    text-align:center;
}

/* ========================================
LOGIN RAÍZES — MOBILE PREMIUM
======================================== */

@media(max-width:768px){

    body.page-id-105 .tutor-wrap.tutor-page-wrap{
        padding:20px 14px;
        align-items:flex-start;
    }

    body.page-id-105 .tutor-login-form-wrapper{
        padding:30px 20px;
        border-radius:18px;
        margin-top:-15px;
    }

    body.page-id-105 .tutor-login-form-wrapper .tutor-fs-5{
        font-size:24px;
        margin-bottom:24px !important;
    }

    body.page-id-105 #tutor-login-form .tutor-form-control{
        height:54px;
        font-size:16px;
        border-radius:18px;
    }

    body.page-id-105 #tutor-login-form .tutor-btn-primary{
        height:56px;
        font-size:17px;
        border-radius:14px;
    }

    body.page-id-105 .raizes-login-logo img{
        max-width:110px;
    }

}

/* ========================================
RECUPERAR SENHA — SIMPLES E BONITO
======================================== */

body .tutor-forgot-password-form.tutor-ResetPassword.lost_reset_password{
    width:100%;
    max-width:560px;
    margin:48px auto 0;
    padding:36px 32px;
    background:linear-gradient(180deg,#121212 0%,#0b0b0b 100%);
    border-radius:20px;
    box-shadow:
        0 30px 90px rgba(0,0,0,0.70),
        0 0 0 1px rgba(212,175,55,0.10);
    box-sizing:border-box;
}

body .tutor-forgot-password-form.tutor-ResetPassword.lost_reset_password p{
    margin:0 0 24px;
    font-size:15px;
    line-height:1.7;
    color:rgba(255,255,255,0.68);
}

body .tutor-forgot-password-form.tutor-ResetPassword.lost_reset_password label{
    display:block;
    margin-bottom:10px;
    font-size:15px;
    font-weight:600;
    color:#d4af37;
}

body .tutor-forgot-password-form.tutor-ResetPassword.lost_reset_password input[type="text"]{
    width:100%;
    height:56px;
    padding:0 18px;
    border:1px solid rgba(255,255,255,0.10);
    border-radius:18px;
    background:#f3f4f6;
    font-size:16px;
    color:#111;
    box-sizing:border-box;
    transition:0.25s;
}

body .tutor-forgot-password-form.tutor-ResetPassword.lost_reset_password input[type="text"]:focus{
    outline:none;
    border-color:rgba(212,175,55,0.55);
    box-shadow:0 0 0 4px rgba(212,175,55,0.12);
}

body .tutor-forgot-password-form.tutor-ResetPassword.lost_reset_password .tutor-form-group{
    margin-bottom:20px;
}

body .tutor-forgot-password-form.tutor-ResetPassword.lost_reset_password .tutor-btn-primary{
    width:100%;
    height:56px;
    border:none;
    border-radius:14px;
    background:linear-gradient(180deg,#e0b94f 0%,#cfa93a 100%);
    color:#fff;
    font-size:17px;
    font-weight:700;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    padding:0;
    box-shadow:
        0 12px 30px rgba(207,169,58,0.25),
        inset 0 1px 0 rgba(255,255,255,0.18);
    transition:0.28s;
}

body .tutor-forgot-password-form.tutor-ResetPassword.lost_reset_password .tutor-btn-primary:hover{
    transform:translateY(-1px);
    box-shadow:
        0 18px 40px rgba(207,169,58,0.32),
        inset 0 1px 0 rgba(255,255,255,0.22);
}

@media(max-width:768px){
    body .tutor-forgot-password-form.tutor-ResetPassword.lost_reset_password{
        max-width:100%;
        margin:24px auto 0;
        padding:28px 20px;
        border-radius:18px;
    }

    body .tutor-forgot-password-form.tutor-ResetPassword.lost_reset_password p{
        font-size:14px;
        line-height:1.6;
    }

    body .tutor-forgot-password-form.tutor-ResetPassword.lost_reset_password input[type="text"]{
        height:54px;
        font-size:16px;
    }

    body .tutor-forgot-password-form.tutor-ResetPassword.lost_reset_password .tutor-btn-primary{
        height:54px;
        font-size:16px;
    }
}