/* SIPROS — Login em tela única */

:root{
    --red:#a90e18;
    --red-dark:#670710;
    --gold:#e7ba46;
    --gold-light:#ffe292;
    --navy:#061522;
    --blue:#123f6d;
    --ink:#20374c;
    --muted:#6c7e8f;
    --border:#d7e1e8;
    --shadow:0 22px 60px rgba(8,29,46,.18);
}

*{
    box-sizing:border-box;
}

html,
body{
    width:100%;
    min-height:100%;
    margin:0;
}

body{
    background:#edf3f7;
    color:var(--ink);
    font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
    font-size:16px;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
}

button,
input{
    font:inherit;
}

a{
    text-decoration:none;
}

.login-shell{
    display:grid;
    grid-template-columns:minmax(680px,1.42fr) minmax(380px,.58fr);
    min-height:100dvh;
}

/* ============================================================
   PAINEL ESQUERDO
   ============================================================ */

.login-brand-panel{
    position:relative;
    min-width:0;
    overflow:hidden;
    display:grid;
    grid-template-rows:minmax(0,1fr) auto;
    padding:
        clamp(14px,2vh,24px)
        clamp(18px,2vw,34px)
        12px;
    color:#fff;
    background:
        radial-gradient(circle at 88% 7%,rgba(229,186,72,.27),transparent 24rem),
        radial-gradient(circle at 4% 96%,rgba(202,37,53,.25),transparent 25rem),
        linear-gradient(132deg,#061522 0%,#0d355b 58%,#721019 100%);
}

.login-brand-panel::before{
    content:'';
    position:absolute;
    inset:0;
    opacity:.075;
    background-image:
        linear-gradient(rgba(255,255,255,.22) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.22) 1px,transparent 1px);
    background-size:48px 48px;
}

.login-brand-panel::after{
    content:'';
    position:absolute;
    width:360px;
    height:360px;
    right:-190px;
    top:44%;
    border:1px solid rgba(255,255,255,.09);
    border-radius:50%;
    box-shadow:
        0 0 0 42px rgba(255,255,255,.025),
        0 0 0 84px rgba(255,255,255,.016);
}

.login-brand-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(
        180deg,
        rgba(0,0,0,.01),
        rgba(0,0,0,.18)
    );
}

.login-brand-content,
.brand-footer{
    position:relative;
    z-index:2;
}

.login-brand-content{
    min-height:0;
    display:grid;
    grid-template-rows:auto minmax(0,1fr) auto;
    gap:clamp(7px,1.2vh,12px);
}

/* Introdução compacta */

.brand-intro{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    gap:clamp(12px,1.5vw,22px);
    align-items:center;
}

.brand-identification{
    display:flex;
    gap:10px;
    align-items:center;
}

.brand-logo-wrap{
    width:clamp(66px,7vh,82px);
    height:clamp(66px,7vh,82px);
    display:grid;
    place-items:center;
    flex:0 0 auto;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.22);
    border-radius:20px;
    background:rgba(255,255,255,.10);
    box-shadow:0 14px 32px rgba(0,0,0,.17);
    backdrop-filter:blur(12px);
}

.brand-logo-wrap img{
    width:86%;
    height:86%;
    object-fit:contain;
}

.brand-identity-copy{
    min-width:0;
}

.brand-identity-copy small{
    display:flex;
    gap:5px;
    align-items:center;
    color:#ffdd7a;
    font-size:.58rem;
    font-weight:900;
    letter-spacing:.07em;
    text-transform:uppercase;
}

.brand-identity-copy strong{
    display:block;
    margin-top:3px;
    color:#fff;
    font-family:Montserrat,sans-serif;
    font-size:clamp(.92rem,1.2vw,1.12rem);
    font-weight:900;
    letter-spacing:.10em;
}

.brand-identity-copy span{
    display:block;
    margin-top:2px;
    color:rgba(255,255,255,.48);
    font-size:.58rem;
}

.brand-message{
    min-width:0;
}

.brand-message h1{
    max-width:720px;
    margin:0;
    font-family:Montserrat,sans-serif;
    font-size:clamp(1.65rem,2.6vw,3.05rem);
    font-weight:900;
    line-height:.98;
    letter-spacing:-.052em;
    text-wrap:balance;
}

.brand-message h1 span{
    color:transparent;
    background:linear-gradient(100deg,#ffe69b,#d6a52e);
    -webkit-background-clip:text;
    background-clip:text;
}

.brand-message p{
    max-width:720px;
    margin:7px 0 0;
    color:rgba(255,255,255,.68);
    font-size:clamp(.70rem,.85vw,.88rem);
    line-height:1.45;
}

.program-total-summary{
    min-width:142px;
    display:grid;
    grid-template-columns:38px minmax(0,1fr);
    gap:8px;
    align-items:center;
    border:1px solid rgba(255,222,126,.24);
    border-radius:13px;
    padding:8px;
    background:rgba(255,255,255,.075);
    backdrop-filter:blur(10px);
}

.program-total-icon{
    width:38px;
    height:38px;
    display:grid;
    place-items:center;
    border-radius:11px;
    background:linear-gradient(145deg,#ffe18b,#c69012);
    color:#2e1e00;
    font-size:.85rem;
}

.program-total-summary small,
.program-total-summary strong,
.program-total-summary em{
    display:block;
}

.program-total-summary small{
    color:#ffdd7a;
    font-size:.52rem;
    font-weight:900;
    letter-spacing:.07em;
}

.program-total-summary strong{
    margin-top:1px;
    color:#fff;
    font-size:1.18rem;
    line-height:1;
}

.program-total-summary em{
    margin-top:2px;
    color:rgba(255,255,255,.59);
    font-size:.52rem;
    font-style:normal;
    white-space:nowrap;
}

/* Programas */

.programs-showcase{
    min-height:0;
    display:grid;
    grid-template-rows:auto minmax(0,1fr);
    gap:7px;
}

.programs-heading{
    display:flex;
    justify-content:space-between;
    gap:14px;
    align-items:center;
}

.programs-heading>span{
    display:inline-flex;
    gap:6px;
    align-items:center;
    color:#ffdd7a;
    font-size:.59rem;
    font-weight:900;
    letter-spacing:.075em;
    text-transform:uppercase;
}

.programs-heading h2{
    margin:0;
    color:rgba(255,255,255,.55);
    font-family:Inter,sans-serif;
    font-size:.60rem;
    font-weight:700;
}

.programs-grid{
    min-height:0;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-rows:repeat(2,minmax(0,1fr));
    gap:8px;
}

.program-card{
    position:relative;
    min-height:0;
    overflow:hidden;
    display:grid;
    grid-template-rows:auto minmax(0,1fr) auto;
    border:1px solid rgba(255,255,255,.14);
    border-radius:16px;
    padding:13px 14px 12px;
    background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.06));
    box-shadow:0 12px 26px rgba(0,0,0,.11);
    backdrop-filter:blur(10px);
    transition:
        transform .16s ease,
        border-color .16s ease,
        background .16s ease,
        box-shadow .16s ease;
}

.program-card:hover{
    transform:translateY(-2px);
    border-color:rgba(255,255,255,.30);
    background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.08));
    box-shadow:0 16px 34px rgba(0,0,0,.16);
}

.program-card::after{
    content:'';
    position:absolute;
    width:108px;
    height:108px;
    right:-54px;
    top:-54px;
    border:1px solid rgba(255,255,255,.10);
    border-radius:50%;
    box-shadow:0 0 0 21px rgba(255,255,255,.03);
}

.program-card-top{
    position:relative;
    z-index:1;
    display:flex;
    justify-content:space-between;
    gap:10px;
    align-items:center;
}

.program-icon{
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    border-radius:10px;
    color:#fff;
    font-size:.82rem;
    box-shadow:0 8px 18px rgba(0,0,0,.18);
}

.program-pbm .program-icon{
    background:linear-gradient(145deg,#d92939,#7d0912);
}

.program-pba .program-icon{
    background:linear-gradient(145deg,#4b8ac0,#123d65);
}

.program-breastfeeding .program-icon{
    background:linear-gradient(145deg,#e190a4,#9c3451);
}

.program-guide-dog .program-icon{
    background:linear-gradient(145deg,#d4a846,#7f5a09);
}

.program-code{
    border:1px solid rgba(255,255,255,.16);
    border-radius:999px;
    padding:4px 8px;
    background:rgba(255,255,255,.08);
    color:rgba(255,255,255,.78);
    font-size:.53rem;
    font-weight:900;
    letter-spacing:.10em;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}

.program-card-copy{
    position:relative;
    z-index:1;
    min-height:0;
    margin-top:8px;
}

.program-card-copy h3{
    margin:0;
    color:#ffffff;
    font-family:Montserrat,sans-serif;
    font-size:clamp(.98rem,1.05vw,1.16rem);
    font-weight:800;
    line-height:1.16;
    letter-spacing:-.02em;
    text-shadow:0 1px 0 rgba(0,0,0,.12);
}

.program-card-copy p{
    display:-webkit-box;
    overflow:hidden;
    margin:6px 0 0;
    color:rgba(255,255,255,.82);
    font-size:clamp(.72rem,.76vw,.83rem);
    font-weight:500;
    line-height:1.42;
    text-wrap:balance;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
}

.program-card-bottom{
    position:relative;
    z-index:1;
    margin-top:12px;
}

.program-metric{
    display:grid;
    grid-template-columns:auto 1fr;
    gap:10px;
    align-items:end;
    border:1px solid rgba(255,255,255,.08);
    border-radius:14px;
    padding:10px 12px;
    background:linear-gradient(180deg,rgba(0,0,0,.10),rgba(255,255,255,.03));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}

.program-metric strong{
    color:#ffe082;
    font-size:clamp(2.05rem,2.7vw,2.55rem);
    font-weight:900;
    line-height:.88;
    letter-spacing:-.055em;
    text-shadow:0 2px 12px rgba(0,0,0,.22);
}

.program-metric span{
    max-width:110px;
    color:rgba(255,255,255,.92);
    font-size:.66rem;
    font-weight:800;
    line-height:1.18;
    letter-spacing:.02em;
    text-transform:uppercase;
}

.program-card-footer{
    display:flex;
    gap:6px;
    align-items:center;
    overflow:hidden;
    margin-top:8px;
    border-top:1px solid rgba(255,255,255,.11);
    padding-top:7px;
    color:rgba(255,255,255,.75);
    font-size:.60rem;
    font-weight:700;
    line-height:1.2;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.program-card-footer i{
    color:#ffdc77;
}

.program-institutional-badge{
    display:inline-flex;
    align-items:center;
    gap:6px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:999px;
    padding:7px 10px;
    background:rgba(255,255,255,.08);
    color:rgba(255,255,255,.92);
    font-size:.60rem;
    font-weight:800;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}

.program-institutional-badge i{
    color:#ffdc77;
}

/* Memorial */

.history-access-card{
    position:relative;
    overflow:hidden;
    display:grid;
    grid-template-columns:42px minmax(0,1fr) auto;
    gap:10px;
    align-items:center;
    min-height:61px;
    border:1px solid rgba(255,221,126,.24);
    border-radius:14px;
    padding:8px 10px;
    background:
        radial-gradient(circle at 94% 8%,rgba(255,222,126,.16),transparent 15rem),
        linear-gradient(135deg,rgba(169,14,24,.76),rgba(63,10,18,.70));
    color:#fff;
    box-shadow:0 11px 26px rgba(0,0,0,.14);
}

.history-access-card:hover{
    color:#fff;
    border-color:rgba(255,221,126,.48);
}

.history-access-icon{
    width:42px;
    height:42px;
    display:grid;
    place-items:center;
    border-radius:12px;
    background:linear-gradient(145deg,#ffe391,#c99112);
    color:#2d1e00;
    font-size:.95rem;
    box-shadow:0 8px 18px rgba(0,0,0,.17);
}

.history-access-copy{
    min-width:0;
}

.history-access-copy small{
    display:block;
    color:#ffdc78;
    font-size:.49rem;
    font-weight:900;
    letter-spacing:.07em;
    text-transform:uppercase;
}

.history-access-copy strong{
    display:block;
    overflow:hidden;
    margin-top:2px;
    color:#fff;
    font-family:Montserrat,sans-serif;
    font-size:.72rem;
    line-height:1.2;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.history-access-copy>span{
    display:block;
    overflow:hidden;
    margin-top:2px;
    color:rgba(255,255,255,.57);
    font-size:.52rem;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.history-access-action{
    min-height:32px;
    display:flex;
    gap:6px;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(255,255,255,.15);
    border-radius:9px;
    padding:0 9px;
    background:rgba(255,255,255,.08);
    color:#fff;
    font-size:.56rem;
    font-weight:900;
    white-space:nowrap;
}

.brand-footer{
    display:flex;
    justify-content:space-between;
    gap:15px;
    align-items:center;
    margin-top:8px;
    color:rgba(255,255,255,.43);
    font-size:.54rem;
}

.programs-data-note{
    display:flex;
    gap:5px;
    align-items:center;
}

.programs-data-note i{
    color:#ffdc77;
}

/* ============================================================
   FORMULÁRIO
   ============================================================ */

.login-form-panel{
    min-width:0;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    padding:clamp(12px,2.4vh,26px);
    background:
        radial-gradient(circle at 100% 0,rgba(169,14,24,.08),transparent 23rem),
        radial-gradient(circle at 0 100%,rgba(18,61,101,.09),transparent 26rem),
        #f4f7fa;
}

.login-form-wrap{
    width:min(100%,430px);
    max-height:calc(100dvh - 24px);
    overflow:hidden;
    border:1px solid rgba(211,222,231,.96);
    border-radius:23px;
    padding:clamp(18px,2.8vh,30px);
    background:rgba(255,255,255,.97);
    box-shadow:var(--shadow);
    backdrop-filter:blur(16px);
}

.mobile-logo{
    display:none;
}

.form-kicker{
    display:inline-flex;
    gap:6px;
    align-items:center;
    color:var(--red);
    font-size:.66rem;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.form-heading h2{
    margin:7px 0 0;
    color:#193148;
    font-family:Montserrat,sans-serif;
    font-size:clamp(1.55rem,2.15vw,2rem);
    font-weight:900;
    letter-spacing:-.035em;
}

.form-heading p{
    margin:6px 0 0;
    color:var(--muted);
    font-size:.82rem;
    line-height:1.45;
}

.login-alert{
    display:grid;
    grid-template-columns:38px minmax(0,1fr);
    gap:9px;
    align-items:center;
    margin-top:14px;
    border:1px solid #e5b1b9;
    border-left:4px solid var(--red);
    border-radius:12px;
    padding:9px;
    background:#fff3f5;
    color:#8c2433;
    font-size:.74rem;
    line-height:1.4;
}

.login-alert-icon{
    width:38px;
    height:38px;
    display:grid;
    place-items:center;
    border-radius:10px;
    background:#f8dce0;
    color:var(--red);
}

#loginForm{
    margin-top:18px;
}

.field-group+.field-group{
    margin-top:13px;
}

.field-group label{
    display:block;
    margin-bottom:6px;
    color:#385169;
    font-size:.77rem;
    font-weight:900;
}

.field-label-row{
    display:flex;
    justify-content:space-between;
    gap:9px;
    align-items:center;
}

.field-wrap{
    position:relative;
}

.field-icon{
    position:absolute;
    left:13px;
    top:50%;
    z-index:2;
    color:#7a8c9d;
    font-size:.83rem;
    transform:translateY(-50%);
}

.field-wrap input{
    width:100%;
    min-height:49px;
    border:1px solid #cbd8e2;
    border-radius:12px;
    padding:10px 44px 10px 39px;
    background:#f7f9fb;
    color:#21384e;
    font-size:.91rem;
    outline:none;
    transition:
        border-color .16s ease,
        background .16s ease,
        box-shadow .16s ease;
}

.field-wrap input:focus{
    border-color:#bd5c65;
    background:#fff;
    box-shadow:0 0 0 .22rem rgba(169,14,24,.08);
}

.field-wrap input::placeholder{
    color:#93a0ac;
}

.field-group>small{
    display:block;
    margin-top:5px;
    color:#7b8c9c;
    font-size:.64rem;
}

.show-password{
    position:absolute;
    right:8px;
    top:50%;
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    border:0;
    border-radius:9px;
    background:transparent;
    color:#657b8e;
    cursor:pointer;
    transform:translateY(-50%);
}

.show-password:hover{
    background:#eaf0f4;
    color:var(--red);
}

.caps-alert{
    display:none;
    align-items:center;
    gap:5px;
    color:#a65d00;
    font-size:.62rem;
    font-weight:900;
}

.caps-alert.show{
    display:inline-flex;
}

.login-button{
    width:100%;
    min-height:56px;
    display:grid;
    grid-template-columns:38px minmax(0,1fr) auto;
    gap:10px;
    align-items:center;
    margin-top:18px;
    border:0;
    border-radius:14px;
    padding:8px 12px;
    background:linear-gradient(135deg,var(--red),var(--red-dark));
    color:#fff;
    text-align:left;
    cursor:pointer;
    box-shadow:0 12px 27px rgba(117,7,16,.25);
}

.login-button:hover{
    transform:translateY(-1px);
    box-shadow:0 16px 32px rgba(117,7,16,.31);
}

.login-button:disabled{
    cursor:wait;
    opacity:.78;
    transform:none;
}

.login-button-icon{
    width:38px;
    height:38px;
    display:grid;
    place-items:center;
    border-radius:11px;
    background:rgba(255,255,255,.14);
}

.login-button-copy strong{
    display:block;
    font-size:.84rem;
}

.login-button-copy small{
    display:block;
    margin-top:1px;
    color:rgba(255,255,255,.66);
    font-size:.62rem;
}

.login-help{
    display:grid;
    grid-template-columns:27px minmax(0,1fr);
    gap:8px;
    align-items:start;
    margin-top:15px;
    border:1px solid #e0e7ed;
    border-radius:11px;
    padding:9px;
    background:#f8fafb;
    color:#687b8d;
    font-size:.67rem;
    line-height:1.4;
}

.login-help i{
    width:27px;
    height:27px;
    display:grid;
    place-items:center;
    border-radius:8px;
    background:#e9f0f5;
    color:#4c6d88;
}

.login-footer{
    display:flex;
    justify-content:space-between;
    gap:12px;
    margin-top:15px;
    border-top:1px solid #e3eaf0;
    padding-top:12px;
    color:#8090a0;
    font-size:.61rem;
}

.login-footer span{
    display:flex;
    gap:5px;
    align-items:center;
}

.login-honeypot{
    position:absolute!important;
    left:-9999px!important;
    width:1px!important;
    height:1px!important;
    overflow:hidden!important;
}

/* ============================================================
   AJUSTES POR TAMANHO DE TELA
   ============================================================ */

@media(min-width:961px){
    html,
    body{
        height:100%;
        overflow:hidden;
    }

    .login-shell{
        height:100dvh;
        min-height:0;
        overflow:hidden;
    }

    .login-brand-panel,
    .login-form-panel{
        height:100%;
        min-height:0;
    }
}

@media(max-width:1240px) and (min-width:961px){
    .login-shell{
        grid-template-columns:minmax(590px,1.28fr) minmax(370px,.72fr);
    }

    .brand-intro{
        grid-template-columns:auto minmax(0,1fr);
    }

    .program-total-summary{
        grid-column:1/-1;
        width:max-content;
        min-width:160px;
        padding:6px 8px;
    }

    .program-total-icon{
        width:32px;
        height:32px;
    }

    .brand-message h1{
        font-size:clamp(1.55rem,2.4vw,2.35rem);
    }
}

@media(max-height:780px) and (min-width:961px){
    .login-brand-panel{
        padding-top:10px;
        padding-bottom:8px;
    }

    .login-brand-content{
        gap:6px;
    }

    .brand-logo-wrap{
        width:62px;
        height:62px;
        border-radius:17px;
    }

    .brand-message h1{
        font-size:clamp(1.45rem,2.2vw,2.45rem);
    }

    .brand-message p{
        margin-top:4px;
        line-height:1.3;
    }

    .program-card{
        padding:10px 11px;
    }

    .program-icon{
        width:30px;
        height:30px;
    }

    .program-card-copy{
        margin-top:5px;
    }

    .program-card-copy h3{
        font-size:clamp(.88rem,.96vw,1.02rem);
    }

    .program-card-copy p{
        margin-top:4px;
        font-size:clamp(.65rem,.70vw,.74rem);
        -webkit-line-clamp:2;
    }

    .program-metric{
        padding:8px 10px;
    }

    .program-metric strong{
        font-size:clamp(1.75rem,2.2vw,2.1rem);
    }

    .program-metric span{
        font-size:.60rem;
        max-width:98px;
    }

    .program-card-footer{
        margin-top:6px;
        padding-top:6px;
        font-size:.55rem;
    }

    .program-institutional-badge{
        font-size:.56rem;
        padding:6px 9px;
    }

    .history-access-card{
        min-height:53px;
        padding:6px 8px;
    }

    .history-access-icon{
        width:36px;
        height:36px;
    }

    .login-form-wrap{
        padding:18px 22px;
    }

    .form-heading h2{
        font-size:1.55rem;
    }

    #loginForm{
        margin-top:14px;
    }

    .field-group+.field-group{
        margin-top:10px;
    }

    .field-wrap input{
        min-height:45px;
    }

    .login-button{
        min-height:51px;
        margin-top:14px;
    }

    .login-help{
        margin-top:11px;
        padding:7px;
    }

    .login-footer{
        margin-top:11px;
        padding-top:9px;
    }
}

@media(max-height:665px) and (min-width:961px){
    .brand-message p,
    .program-card-copy p,
    .history-access-copy>span,
    .login-help,
    .brand-footer{
        display:none;
    }

    .programs-heading h2{
        display:none;
    }

    .program-card-footer{
        margin-top:3px;
        padding-top:3px;
    }

    .program-metric{
        margin-top:1px;
    }

    .history-access-card{
        min-height:47px;
    }

    .login-form-wrap{
        padding-top:15px;
        padding-bottom:15px;
    }
}

/* Tablet e celular: preserva legibilidade, permitindo rolagem quando preciso. */
@media(max-width:960px){
    html,
    body{
        height:auto;
        overflow:auto;
    }

    .login-shell{
        display:block;
        min-height:100dvh;
        overflow:visible;
    }

    .login-brand-panel{
        display:none;
    }

    .login-form-panel{
        min-height:100dvh;
        overflow:visible;
        padding:18px;
    }

    .login-form-wrap{
        width:min(100%,470px);
        max-height:none;
        overflow:visible;
        padding:28px 24px;
    }

    .mobile-logo{
        width:92px;
        height:92px;
        display:grid;
        place-items:center;
        margin:0 auto 20px;
        border:1px solid #dde6ed;
        border-radius:22px;
        background:#fff;
        box-shadow:0 13px 31px rgba(16,40,61,.10);
    }

    .mobile-logo img{
        width:78px;
        height:78px;
        object-fit:contain;
    }

    .form-heading{
        text-align:center;
    }

    .form-kicker{
        justify-content:center;
    }
}

@media(max-width:520px){
    .login-form-panel{
        padding:10px;
    }

    .login-form-wrap{
        border-radius:19px;
        padding:23px 16px;
    }

    .form-heading h2{
        font-size:1.58rem;
    }

    .field-wrap input{
        min-height:54px;
        font-size:16px;
    }

    .login-footer{
        align-items:center;
        flex-direction:column;
        text-align:center;
    }
}

@media(prefers-reduced-motion:reduce){
    *,
    *::before,
    *::after{
        scroll-behavior:auto!important;
        transition:none!important;
        animation:none!important;
    }
}
