/*==============================================================
  PREMIUM LOGIN UI — style.css
==============================================================*/

:root{
    --primary:#5A20FF;
    --primary-dark:#2D00F7;
    --secondary:#7C5CFF;
    --light-purple:#F5F1FF;

    --heading:#1D2340;
    --text:#72768C;
    --border:#E8EAF5;

    --white:#ffffff;
    --bg:#F6F7FC;

    --shadow:0 15px 45px rgba(45,33,100,.06);
    --radius:28px;
}

*{ margin:0; padding:0; box-sizing:border-box; }
html{ scroll-behavior:smooth; }

body{
    font-family:'Poppins',sans-serif;
    background:var(--bg);
    color:var(--heading);
}

/*==============================================================
    MAIN CONTAINER — equal-height side-by-side cards
==============================================================*/

.login-wrapper{
    max-width:1500px;
    margin:auto;
    padding:40px;
    min-height:100vh;
    display:flex;
    align-items:stretch;   /* <-- makes both panels equal height */
    gap:32px;
}

.left-panel,
.right-panel{
    background:#fff;
    border-radius:var(--radius);
    box-shadow:var(--shadow);
    position:relative;
    overflow:hidden;
}

.left-panel{
    width:42%;
    padding:48px;
  
     background: linear-gradient(180deg, #ffffff 0%, #e1e3ed 45%);
    display:flex;
    flex-direction:column;
}

.right-panel{
    width:58%;
    padding:40px 55px;
    display:flex;
    flex-direction:column;
    justify-content:center;
}
.logo{

 width: 167px;

height: 147px;

margin-bottom: -86px;

margin-left: -25px;

margin-top: -43px;

}

.logo img{

    width:100%;

}

/*==============================================================
    LEFT PANEL — BRAND / LOGO
==============================================================*/

.brand{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:40px;
}

.logo-mark{ width:34px; height:34px; flex-shrink:0; }

.logo-text{
    font-size:26px;
    font-weight:800;
    color:var(--primary);
    letter-spacing:-.5px;
}

.logo-text span{ color:#FF7A1A; }

/*==============================================================
    HERO TEXT
==============================================================*/

.hero-content h1{
    font-size:44px;
    font-weight:600;
    line-height:1.18;
    letter-spacing:-1px;
    color:var(--heading);
    margin-bottom:18px;
}

.subtitle{
    font-size:16px;
    line-height:1.7;
    color:var(--text);
    margin-bottom:32px;
    max-width:440px;
}

/*==============================================================
    FEATURES
==============================================================*/

.features{
    display:flex;
    flex-direction:column;
    gap:20px;
    margin-bottom:20px;
}

.feature-item{
    display:flex;
    gap:16px;
    align-items:flex-start;
}

.feature-icon{
    width:48px;
    height:48px;
    border-radius:14px;
    background:var(--light-purple);
    display:flex;
    justify-content:center;
    align-items:center;
    color:var(--primary);
    font-size:19px;
    flex-shrink:0;
}

.feature-text h4{
    font-size:16px;
    font-weight:500;
    color:var(--heading);
    margin-bottom:3px;
}

.feature-text p{
    color:var(--text);
    line-height:1.5;
    font-size:13.5px;
}

/*==============================================================
    ILLUSTRATION — flexes to fill remaining space, keeps
    stats-card pinned to the bottom (equal-height friendly)
==============================================================*/

.illustration{
    flex:1;
    min-height:120px;
    display:flex;
    justify-content:center;
    align-items:flex-end;
    margin-top:10px;
}

.illustration img{
    width:100%;
    max-width:340px;
    object-fit:contain;
}

/*==============================================================
    STATS CARD
==============================================================*/

.stats-card{
    margin-top:24px;
    display:flex;
    align-items:center;
    background:#fff;
    border:1px solid var(--border);
    border-radius:20px;
    box-shadow:0 12px 30px rgba(45,33,100,.05);
    padding:18px 10px;
}

.stat{
    flex:1;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    text-align:left;
}

.stat i{
    color:var(--primary);
    font-size:16px;
}

.stat div{ display:flex; flex-direction:column; line-height:1.3; }

.stat strong{ font-size:15px; color:var(--heading); }
.stat span{ font-size:12px; color:var(--text); }

.stat-divider{ width:1px; align-self:stretch; background:var(--border); }

/*==============================================================
    RIGHT PANEL — TOP ACTION
==============================================================*/

.top-action{
    display:flex;
    justify-content:flex-end;
    margin-bottom:24px;
}

.create-account{
    padding:12px 22px;
    border:1px solid var(--border);
    border-radius:14px;
    background:#fff;
    color:var(--heading);
    font-size:14px;
    text-decoration:none;
    transition:.25s;
}

.create-account strong{ color:var(--primary); font-weight:700; }

.create-account:hover{
    border-color:var(--primary);
    box-shadow:0 8px 20px rgba(90,32,255,.12);
}

/*==============================================================
    LOGIN CARD
==============================================================*/

.login-card{
    width:100%;
    max-width:560px;
    margin:auto;
}

.login-header{ text-align:center; margin-bottom:28px; }

.login-header h2{
    font-size:32px;
    font-weight:700;
    color:var(--heading);
    margin-bottom:10px;
}

.login-header p{
    color:var(--text);
    font-size:15px;
    line-height:1.7;
    max-width:420px;
    margin:0 auto;
}

/*==============================================================
    LOGIN TABS
==============================================================*/

.login-tabs{
    display:flex;
    gap:8px;
    background:#F7F7FB;
    border-radius:16px;
    padding:6px;
    margin-bottom:30px;
}

.tab-btn{
    flex:1;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:6px;
    padding:14px 8px;
    border:none;
    border-radius:12px;
    background:transparent;
    cursor:pointer;
    font-family:inherit;
    transition:.25s;
}

.tab-btn i{ font-size:18px; color:#8A8FA6; }
.tab-btn span{ font-size:13.5px; font-weight:500; color:#6E738D; }

.tab-btn.active{
    background:var(--light-purple);
    box-shadow:0 6px 16px rgba(90,32,255,.10);
}

.tab-btn.active i,
.tab-btn.active span{ color:var(--primary); font-weight:700; }

/*==============================================================
    FORM
==============================================================*/

.form-group{ margin-bottom:22px; }

.form-group label{
    display:block;
    margin-bottom:8px;
    font-size:14px;
    color:var(--heading);
    font-weight:600;
}

.input-box{ position:relative; }

.input-box input{
    width:100%;
    height:54px;
    border:1px solid var(--border);
    border-radius:14px;
    padding-left:48px;
    padding-right:48px;
    outline:none;
    font-size:15px;
    font-family:inherit;
    transition:.25s;
    background:#fff;
    color:var(--heading);
}

.input-box input::placeholder{ color:#A6A9BC; }

.input-box input:focus{
    border-color:var(--primary);
    box-shadow:0 0 0 4px rgba(90,32,255,.08);
}

.input-box i{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    color:#9095AF;
    font-size:16px;
}

.input-box i.left{ left:18px; }
.input-box i.right{ right:18px; cursor:pointer; }
.input-box i.right:hover{ color:var(--primary); }

/*==============================================================
    REMEMBER / FORGOT
==============================================================*/

.form-options{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:26px;
}

.remember{
    display:flex;
    align-items:center;
    gap:9px;
    font-size:14px;
    color:var(--text);
    cursor:pointer;
}

.remember input{ width:17px; height:17px; accent-color:var(--primary); }

.forgot-password{
    font-size:14px;
    font-weight:600;
    color:var(--primary);
    text-decoration:none;
}

.forgot-password:hover{ text-decoration:underline; }

/*==============================================================
    LOGIN BUTTON
==============================================================*/

.login-btn{
    width:100%;
    height:56px;
    border:none;
    border-radius:14px;
    background:linear-gradient(90deg,var(--primary),var(--primary-dark));
    color:#fff;
    font-size:16px;
    font-weight:600;
    font-family:inherit;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    transition:.3s;
    box-shadow:0 14px 32px rgba(90,32,255,.28);
    position:relative;
    overflow:hidden;
}

.login-btn:hover{
    transform:translateY(-2px);
    box-shadow:0 18px 36px rgba(90,32,255,.34);
}

.login-btn:disabled{ opacity:.85; cursor:not-allowed; transform:none; }

/* Ripple */
.ripple{
    position:absolute;
    width:20px;
    height:20px;
    border-radius:50%;
    background:rgba(255,255,255,.5);
    transform:translate(-50%,-50%) scale(0);
    animation:ripple .6s linear;
    pointer-events:none;
}

@keyframes ripple{
    to{ transform:translate(-50%,-50%) scale(18); opacity:0; }
}

/*==============================================================
    OR DIVIDER
==============================================================*/

.social-divider{
    display:flex;
    align-items:center;
    gap:16px;
    margin:28px 0;
}

.social-divider::before,
.social-divider::after{
    content:"";
    flex:1;
    height:1px;
    background:var(--border);
}

.social-divider span{ color:#8B8FA5; font-size:13.5px; white-space:nowrap; }

/*==============================================================
    SOCIAL BUTTONS
==============================================================*/

.social-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:14px;
}

.social-btn{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    height:52px;
    border:1px solid var(--border);
    border-radius:14px;
    background:#fff;
    cursor:pointer;
    font-family:inherit;
    font-size:14px;
    transition:.25s;
    color:#444;
    font-weight:500;
}

.social-btn svg{ flex-shrink:0; }

.social-btn:hover{
    transform:translateY(-2px);
    border-color:var(--primary);
    box-shadow:0 12px 24px rgba(0,0,0,.06);
}

/*==============================================================
    SECURITY BOX
==============================================================*/

.security-box{
    margin-top:30px;
    display:flex;
    align-items:center;
    gap:16px;
    background:var(--light-purple);
    border-radius:16px;
    padding:18px;
}

.security-icon{
    width:48px;
    height:48px;
    border-radius:12px;
    background:#fff;
    color:var(--primary);
    display:flex;
    justify-content:center;
    align-items:center;
    font-size:19px;
    flex-shrink:0;
}

.security-text h4{ font-size:15px; margin-bottom:3px; color:var(--heading); }
.security-text p{ font-size:13px; line-height:1.55; color:var(--text); margin:0; }

/*==============================================================
    FOOTER
==============================================================*/

.footer{
    margin-top:26px;
    text-align:center;
    color:#8B8FA5;
    font-size:13.5px;
}

.footer-links{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:10px;
    margin-top:12px;
}

.footer-links a{
    color:var(--primary);
    text-decoration:none;
    transition:.25s;
}

.footer-links a:hover{ color:var(--primary-dark); text-decoration:underline; }
.footer-links span{ color:#C7C9D6; }

/*==============================================================
    RESPONSIVE
==============================================================*/

@media(max-width:1200px){
    .login-wrapper{ flex-direction:column; }
    .left-panel,
    .right-panel{ width:100%; }
    .illustration{ display:none; }
}

@media(max-width:640px){
    .login-wrapper{ padding:16px; gap:20px; }
    .left-panel,
    .right-panel{ padding:26px; }
    .hero-content h1{ font-size:34px; }
    .login-tabs{ flex-direction:column; }
    .social-grid{ grid-template-columns:1fr; }
    .form-options{ flex-direction:column; align-items:flex-start; gap:12px; }
    .stats-card{ flex-direction:column; gap:14px; padding:20px; }
    .stat-divider{ width:100%; height:1px; }
}

.profile-wrapper {
    position: relative;
}

.avatar-sm {
    cursor: pointer;
}

.profile-dropdown {
    display: none;
    position: absolute;
    top: calc(100% + 12px);
    right: 0;
    width: 260px;
    background: #131b33;   /* dark navy, adjust to your theme */
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 12px;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.35);
    z-index: 1000;
    overflow: hidden;
}

.profile-dropdown.show {
    display: block;
}

.profile-header {
    padding: 16px 18px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.profile-header h4 {
    margin: 0 0 4px;
    color: #fff;
    font-size: 15px;
    font-weight: 600;
}

.profile-header p {
    margin: 0;
    color: #9aa3b5;
    font-size: 13px;
}

.profile-menu {
    padding: 6px 0;
}

.profile-item {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 12px 18px;
    background: none;
    border: none;
    color: #d3d7e2;
    font-size: 14px;
    text-align: left;
    text-decoration: none;
    cursor: pointer;
}

.profile-item:hover {
    background: rgba(255, 255, 255, 0.05);
    color: #fff;
}

.profile-item i {
    width: 16px;
    text-align: center;
    color: #9aa3b5;
}