.public-login-view{
    min-height:100vh;
    transition:background-color .25s ease,color .25s ease;
}

.public-login-view .topbar{
    position:sticky;
    top:0;
    z-index:20;
    backdrop-filter:blur(14px);
}

.public-login-view .public-header-wrap{
    min-height:78px;
}

.public-login-view .public-header-nav{
    gap:.9rem !important;
}

.public-login-view .public-header-action-btn,
.public-login-view .public-theme-toggle-btn{
    height:48px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:999px;
}

.public-login-view .public-header-action-btn{
    min-width:96px;
    font-weight:700;
}

.public-login-view .public-theme-toggle-btn{
    width:48px;
    padding:0;
}

.auth-login-page{
    padding-top:3.25rem !important;
    padding-bottom:3.25rem !important;
}

.auth-login-grid{
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(340px,460px);
    gap:2rem;
    align-items:center;
}

.auth-login-intro{
    padding:1.5rem 1rem 1.5rem 0;
}

.auth-login-kicker{
    display:inline-flex;
    align-items:center;
    gap:.45rem;
    padding:.45rem .9rem;
    border-radius:999px;
    font-size:.82rem;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.auth-login-title{
    margin:1.15rem 0 .95rem;
    font-size:clamp(2.35rem,4vw,4rem);
    line-height:1.05;
    font-weight:800;
}

.auth-login-text{
    max-width:620px;
    font-size:1.08rem;
    line-height:1.75;
    margin-bottom:1.75rem;
}

.auth-login-highlights{
    display:grid;
    gap:1rem;
    max-width:620px;
}

.auth-login-highlight-card{
    display:flex;
    gap:1rem;
    align-items:flex-start;
    padding:1rem 1.1rem;
    border-radius:24px;
}

.auth-login-highlight-card strong,
.auth-login-highlight-card span{
    display:block;
}

.auth-login-highlight-card strong{
    margin-bottom:.22rem;
    font-size:1rem;
}

.auth-login-highlight-card span{
    font-size:.95rem;
    line-height:1.55;
}

.auth-login-highlight-icon{
    width:42px;
    height:42px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:14px;
    font-size:1.05rem;
    font-weight:700;
    flex:0 0 42px;
}

.auth-login-card-wrap{
    width:100%;
}

.auth-login-card{
    padding:1.8rem;
    border-radius:30px;
    box-shadow:0 24px 60px rgba(15,23,42,.14);
}

.auth-login-card-header{margin-bottom:1.35rem}

.auth-login-badge{
    display:inline-flex;
    align-items:center;
    padding:.42rem .8rem;
    border-radius:999px;
    font-size:.78rem;
    font-weight:800;
    letter-spacing:.06em;
    text-transform:uppercase;
    margin-bottom:.85rem;
}

.auth-login-card-header h2{
    margin:0 0 .45rem;
    font-size:1.7rem;
    font-weight:800;
}

.auth-login-card-header p{
    margin:0;
    line-height:1.6;
}

.auth-login-label{
    font-weight:700;
    margin-bottom:.55rem;
}

.auth-login-input{
    height:56px;
    border-radius:18px;
    padding:0 1rem;
    font-size:1rem;
    box-shadow:none !important;
}

.auth-login-options{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
}

.auth-login-check{
    display:flex;
    align-items:center;
    gap:.55rem;
    margin:0;
}

.auth-login-check .form-check-input{
    margin-top:0;
    float:none;
}

.auth-login-register-link{
    text-decoration:none;
    font-weight:700;
}

.auth-login-submit{
    height:56px;
    border:none;
    border-radius:18px;
    font-weight:800;
    font-size:1rem;
}

.auth-login-submit:hover,
.auth-login-submit:focus{
    transform:translateY(-1px);
}

.auth-login-admin-box{
    margin-top:1.25rem;
    padding:1rem 1.1rem;
    border-radius:18px;
    font-size:.95rem;
}

.auth-login-admin-box strong,
.auth-login-admin-box span{display:block}
.auth-login-admin-box span{margin-top:.2rem}

.public-login-view[data-public-theme="light"]{
    background:linear-gradient(180deg,#f7fbff 0%,#eef4fb 100%);
    color:#0f172a;
}

.public-login-view[data-public-theme="light"] .topbar{
    background:rgba(255,255,255,.82);
    border-bottom:1px solid rgba(148,163,184,.22);
}

.public-login-view[data-public-theme="light"] .brand,
.public-login-view[data-public-theme="light"] .nav-link-custom,
.public-login-view[data-public-theme="light"] .brand-subtitle{
    color:#0f172a;
}

.public-login-view[data-public-theme="light"] .nav-link-custom:hover{color:#2563eb}

.public-login-view[data-public-theme="light"] .public-theme-toggle-btn{
    background:#ffffff;
    border:1px solid #dbe4f0;
    color:#0f172a;
}

.public-login-view[data-public-theme="light"] .public-header-action-btn.public-topbar-login,
.public-login-view[data-public-theme="light"] .topbar .btn-outline-light{
    background:#ffffff;
    border:1px solid #cfd9e7;
    color:#0f172a;
}

.public-login-view[data-public-theme="light"] .auth-login-kicker{
    background:#dbeafe;
    color:#1d4ed8;
}

.public-login-view[data-public-theme="light"] .auth-login-text{
    color:#475569;
}

.public-login-view[data-public-theme="light"] .auth-login-highlight-card{
    background:rgba(255,255,255,.82);
    border:1px solid rgba(203,213,225,.75);
}

.public-login-view[data-public-theme="light"] .auth-login-highlight-card strong{color:#0f172a}
.public-login-view[data-public-theme="light"] .auth-login-highlight-card span{color:#475569}

.public-login-view[data-public-theme="light"] .auth-login-highlight-icon{
    background:#eff6ff;
    color:#1d4ed8;
}

.public-login-view[data-public-theme="light"] .auth-login-card{
    background:#ffffff;
    border:1px solid rgba(203,213,225,.8);
}

.public-login-view[data-public-theme="light"] .auth-login-badge{
    background:#ecfeff;
    color:#0f766e;
}

.public-login-view[data-public-theme="light"] .auth-login-card-header p,
.public-login-view[data-public-theme="light"] .auth-login-check,
.public-login-view[data-public-theme="light"] .auth-login-admin-box,
.public-login-view[data-public-theme="light"] .auth-login-admin-box span{
    color:#475569;
}

.public-login-view[data-public-theme="light"] .auth-login-input{
    background:#ffffff;
    border:1px solid #cbd5e1;
    color:#0f172a;
}

.public-login-view[data-public-theme="light"] .auth-login-input::placeholder{color:#94a3b8}

.public-login-view[data-public-theme="light"] .auth-login-input:focus{
    border-color:#60a5fa;
    background:#ffffff;
}

.public-login-view[data-public-theme="light"] .auth-login-register-link{color:#2563eb}

.public-login-view[data-public-theme="light"] .auth-login-submit{
    background:linear-gradient(135deg,#2563eb 0%,#1d4ed8 100%);
    color:#ffffff;
    box-shadow:0 16px 32px rgba(37,99,235,.22);
}

.public-login-view[data-public-theme="light"] .auth-login-admin-box{
    background:#f8fbff;
    border:1px solid #dbe4f0;
}

.public-login-view[data-public-theme="dark"]{
    background:linear-gradient(180deg,#03111f 0%,#020c17 100%);
    color:#e5eefb;
}

.public-login-view[data-public-theme="dark"] .topbar{
    background:rgba(2,12,24,.88);
    border-bottom:1px solid rgba(59,130,246,.16);
}

.public-login-view[data-public-theme="dark"] .auth-login-kicker{
    background:rgba(34,211,238,.12);
    color:#67e8f9;
}

.public-login-view[data-public-theme="dark"] .auth-login-text,
.public-login-view[data-public-theme="dark"] .auth-login-highlight-card span,
.public-login-view[data-public-theme="dark"] .auth-login-card-header p,
.public-login-view[data-public-theme="dark"] .auth-login-check,
.public-login-view[data-public-theme="dark"] .auth-login-admin-box,
.public-login-view[data-public-theme="dark"] .auth-login-admin-box span{
    color:rgba(226,232,240,.84);
}

.public-login-view[data-public-theme="dark"] .auth-login-highlight-card{
    background:rgba(10,20,36,.78);
    border:1px solid rgba(59,130,246,.14);
}

.public-login-view[data-public-theme="dark"] .auth-login-highlight-icon{
    background:rgba(37,99,235,.14);
    color:#93c5fd;
}

.public-login-view[data-public-theme="dark"] .auth-login-card{
    background:linear-gradient(180deg,rgba(7,20,37,.96) 0%,rgba(4,14,28,.96) 100%);
    border:1px solid rgba(59,130,246,.14);
    box-shadow:0 28px 64px rgba(0,0,0,.35);
}

.public-login-view[data-public-theme="dark"] .auth-login-badge{
    background:rgba(34,211,238,.14);
    color:#67e8f9;
}

.public-login-view[data-public-theme="dark"] .auth-login-input{
    background:rgba(255,255,255,.05);
    border:1px solid rgba(148,163,184,.22);
    color:#ffffff;
}

.public-login-view[data-public-theme="dark"] .auth-login-input::placeholder{color:rgba(226,232,240,.4)}

.public-login-view[data-public-theme="dark"] .auth-login-input:focus{
    border-color:rgba(96,165,250,.65);
    background:rgba(255,255,255,.06);
}

.public-login-view[data-public-theme="dark"] .auth-login-register-link{color:#7dd3fc}

.public-login-view[data-public-theme="dark"] .auth-login-submit{
    background:linear-gradient(135deg,#22d3ee 0%,#2563eb 100%);
    color:#03111f;
    box-shadow:0 16px 36px rgba(34,211,238,.18);
}

.public-login-view[data-public-theme="dark"] .auth-login-admin-box{
    background:rgba(255,255,255,.04);
    border:1px solid rgba(148,163,184,.14);
}

@media (max-width: 991.98px){
    .auth-login-grid{
        grid-template-columns:1fr;
        gap:1.5rem;
    }

    .auth-login-intro{
        padding:0;
    }
}

@media (max-width: 575.98px){
    .auth-login-page{
        padding-top:1.8rem !important;
        padding-bottom:2rem !important;
    }

    .public-login-view .public-header-action-btn,
    .public-login-view .public-theme-toggle-btn{
        height:44px;
    }

    .auth-login-card{
        padding:1.2rem;
        border-radius:24px;
    }

    .auth-login-title{
        font-size:2rem;
    }

    .auth-login-options{
        flex-direction:column;
        align-items:flex-start;
    }
}
