


body{
    font-family:'Poppins',sans-serif;
}
/* Header Main Logo */

.header-main-logo{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
}

.header-main-logo img{
    width:75px;
    height:75px;
    object-fit:contain;
    display:block;
}

/* Desktop */

@media (min-width:992px){

.header-main-logo img{
    width:80px;
    height:80px;
}

}

/* Mobile */

@media (max-width:768px){

.header-main-logo img{
    width:55px;
    height:55px;
}

}
/* HEADER */

.custom-navbar{
    background:#fff;
    height:90px;
    box-shadow:0 2px 15px rgba(0,0,0,.05);
    position:sticky;
    top:0;
    z-index:999999;
    overflow:visible !important;
}

.logo-box{
    width:60px;
    height:60px;
    border:3px solid #2563eb;
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:24px;
    font-weight:700;
    color:#2563eb;
}

.logo-title{
    font-size:18px;
    font-weight:700;
    color:#0f172a;
    line-height:1.2;
}

.logo-subtitle{
    font-size:13px;
    color:#64748b;
}

.navbar-nav .nav-link{
    color:#0f172a;
    font-size:14px;
    font-weight:500;
    margin:0 12px;
    position:relative;
}

.navbar-nav .nav-link:hover{
    color:#2563eb;
}

.navbar-nav .nav-link.active{
    color:#2563eb;
}

.navbar-nav .nav-link.active::after{
    content:'';
    position:absolute;
    width:100%;
    height:3px;
    background:#2563eb;
    bottom:-10px;
    left:0;
}

.dropdown-menu{
    border:none;
    border-radius:12px;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
    z-index:9999999;
}

.dropdown-item{
    padding:10px 15px;
}

.dropdown-item:hover{
    background:#eff6ff;
    color:#2563eb;
}

.search-btn{
    width:42px;
    height:42px;
    background:#f1f5f9;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#0f172a;
    text-decoration:none;
}

.search-btn:hover{
    background:#2563eb;
    color:#fff;
}

/* =====================================
   PREMIUM PORTAL DROPDOWN
===================================== */

.portal-dropdown{
    position:relative;
}

.portal-dropdown > .nav-link{
    display:flex;
    align-items:center;
    gap:8px;
    font-weight:600;
    transition:.3s;
}

.portal-dropdown > .nav-link::after{
    margin-left:8px;
    transition:.3s ease;
}

.portal-dropdown.show > .nav-link::after,
.portal-dropdown:hover > .nav-link::after{
    transform:rotate(180deg);
}

/* Dropdown Box */

.portal-menu{

    min-width:280px;

    padding:12px;

    margin-top:16px;

    border:none;

    border-radius:20px;

    background:#fff;

    box-shadow:
        0 25px 60px rgba(15,23,42,.18);

    overflow:hidden;

    animation:portalDropdown .25s ease;
}

/* Arrow */

.portal-menu::before{

    content:'';

    position:absolute;

    top:-8px;

    right:38px;

    width:18px;

    height:18px;

    background:#fff;

    transform:rotate(45deg);

}

/* Items */

.portal-menu .dropdown-item{

    display:flex;

    align-items:center;

    gap:15px;

    padding:15px 18px;

    border-radius:14px;

    font-size:15px;

    font-weight:600;

    color:#1e293b;

    transition:.25s;

}

/* Icons */

.portal-menu .dropdown-item i{

    width:42px;

    height:42px;

    border-radius:12px;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:18px;

    background:#ecfdf5;

    color:#00a651;

    transition:.25s;

}

/* Hover */

.portal-menu .dropdown-item:hover{

    background:#00a651;

    color:#fff;

    transform:translateX(6px);

}

.portal-menu .dropdown-item:hover i{

    background:rgba(255,255,255,.18);

    color:#fff;

}

/* Divider */

.portal-menu li+li{

    margin-top:8px;

}

/* Animation */

@keyframes portalDropdown{

    from{

        opacity:0;

        transform:translateY(10px) scale(.98);

    }

    to{

        opacity:1;

        transform:translateY(0) scale(1);

    }

}

/* Desktop Hover */

@media(min-width:992px){

.portal-dropdown:hover>.portal-menu{

    display:block;

}

}

/* Mobile */

@media(max-width:991px){

.portal-menu{

    min-width:100%;

    margin-top:10px;

    border-radius:16px;

    box-shadow:none;

    border:1px solid #e5e7eb;

}

.portal-menu::before{

    display:none;

}

.portal-menu .dropdown-item{

    padding:14px;

}

}
/* ==========================
   PORTAL DROPDOWN
========================== */

.portal-dropdown{
    position:relative;
}

.portal-menu{
    min-width:260px;
    border:none;
    border-radius:18px;
    padding:10px;
    margin-top:14px;
    background:#fff;
    box-shadow:0 18px 45px rgba(0,0,0,.12);
    animation:portalFade .25s ease;
}

.portal-menu .dropdown-item{
    display:flex;
    align-items:center;
    gap:12px;
    padding:14px 16px;
    border-radius:12px;
    font-size:15px;
    font-weight:600;
    transition:.25s;
}

.portal-menu .dropdown-item i{
    width:24px;
    text-align:center;
    color:#00a651;
    font-size:17px;
}

.portal-menu .dropdown-item:hover{
    background:#00a651;
    color:#fff;
    transform:translateX(5px);
}

.portal-menu .dropdown-item:hover i{
    color:#fff;
}

@keyframes portalFade{
    from{
        opacity:0;
        transform:translateY(12px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

@media(min-width:992px){

.portal-dropdown:hover>.portal-menu{
    display:block;
}

}


/* ACCOUNT BUTTON */



.tab-btn i{
    margin-right:10px;
}

.tab-btn.active{

    color:#2563eb;

    background:
    linear-gradient(
    180deg,
    rgba(37,99,235,.05),
    rgba(37,99,235,.01)
    );

    border-bottom:3px solid #2563eb;
}



.tab-content.active{
    display:block;
}





@media(max-width:991px){

    .navbar-collapse{
        background:#fff;
        padding:20px;
        margin-top:15px;
        border-radius:15px;
        box-shadow:0 10px 25px rgba(0,0,0,.08);
    }

    .navbar-nav{
        text-align:center;
    }

    .navbar-nav .nav-link{
        margin:10px 0;
    }

}

/* =========================
MEGA DROPDOWN MENU
========================= */

.mega-dropdown{
position:static;
}

.mega-menu{
    width:1100px;
    max-width:95vw;

    position:absolute;
    z-index:999999;

    left:50% !important;
    transform:translateX(-50%);

    background:#fff;
}

/* Titles */

.mega-title{
font-size:18px;
font-weight:700;
color:#0f172a;
margin-bottom:18px;
position:relative;
padding-bottom:10px;
}

.mega-title::after{
content:'';
position:absolute;
left:0;
bottom:0;
width:50px;
height:3px;
border-radius:20px;
background:linear-gradient(90deg,#2563eb,#7c3aed);
}

/* Menu Items */

.mega-item{
display:flex;
align-items:center;
gap:14px;
padding:14px 15px;
text-decoration:none;
color:#334155;
border-bottom:1px solid #edf2ff;
transition:.3s;
}

.mega-item:last-child{
border-bottom:none;
}

.mega-item:hover{
background:#f8faff;
color:#2563eb;
padding-left:22px;
}

.mega-item i{
width:22px;
text-align:center;
font-size:18px;
transition:.3s;
}

.mega-item:hover i{
transform:scale(1.15);
}

/* Icon Colors */

.icon-blue{color:#2563eb;}
.icon-green{color:#10b981;}
.icon-success{color:#22c55e;}
.icon-orange{color:#f59e0b;}
.icon-red{color:#ef4444;}
.icon-purple{color:#7c3aed;}
.icon-pink{color:#ec4899;}
.icon-cyan{color:#06b6d4;}

/* Banner */

.mega-banner{
min-height:380px;
background:linear-gradient(135deg,#2563eb,#7c3aed);
border-radius:18px;
padding:35px 25px;
text-align:center;
color:#fff;
display:flex;
flex-direction:column;
justify-content:center;
}

.banner-icon i{
    font-size:70px;
    margin-bottom:20px;
    color:#fff;

    animation:moveLeftRight 3s infinite ease-in-out;
}

.mega-banner h4{
font-size:28px;
font-weight:700;
margin-bottom:12px;
}

.mega-banner p{
font-size:14px;
line-height:1.8;
opacity:.95;
margin-bottom:25px;
}

/* Button */

.mega-btn{
display:inline-flex;
align-items:center;
justify-content:center;
background:#fff;
color:#2563eb;
text-decoration:none;
padding:12px 22px;
border-radius:12px;
font-weight:600;
transition:.3s;
}

.mega-btn:hover{
background:#eff6ff;
color:#1d4ed8;
transform:translateY(-2px);
}

/* Hover Open */

@media(min-width:992px){


.mega-dropdown:hover .dropdown-menu{
    display:block;
}


}

/* Mobile */

@media(max-width:991px){


.mega-menu{
    width:100%;
    max-width:100%;
    transform:none;
    left:0 !important;
    margin-top:10px;
    border-radius:15px;
    padding:15px !important;
}

.mega-banner{
    min-height:auto;
    margin-top:20px;
}

}


@keyframes moveLeftRight{

    0%{
        transform:translateX(0px);
    }

    25%{
        transform:translateX(-12px);
    }

    50%{
        transform:translateX(0px);
    }

    75%{
        transform:translateX(12px);
    }

    100%{
        transform:translateX(0px);
    }

}
.custom-navbar{
    z-index:99999;
}

/* ===========================
ACCOUNT BUTTON
=========================== */

.account-btn{
    background:linear-gradient(135deg,#2563eb,#0ea5e9);
    color:#fff;
    border:none;
    height:50px;
    padding:0 28px;
    border-radius:16px;
    font-size:16px;
    font-weight:600;
    display:flex;
    align-items:center;
    gap:10px;
}

.account-btn:hover{
    color:#fff;
}

/* ===========================
DROPDOWN BOX
=========================== */

.account-dropdown{
    position:relative;
}



.account-menu{
     width:420px;
    max-width:95vw;
    padding:0;
    border:none;
    border-radius:24px;
    overflow:hidden;

    margin-top:18px !important;

    right:0 !important;
    left:auto !important;

    box-shadow:0 20px 60px rgba(15,23,42,.12);
}

.account-menu::before{
    content:'';

    position:absolute;

    top:-10px;
    right:50px;

    width:20px;
    height:20px;

    background:#fff;

    transform:rotate(45deg);
}

/* ===========================
TOP TABS
=========================== */

.account-tabs{
    display:flex;
    background:#fff;
    border-bottom:1px solid #e5e7eb;
}

.tab-btn{
    width:50%;
    height:58px;
    border:none;
    background:#fff;
    font-size:15px;
    font-weight:600;
    color:#64748b;
    transition:.3s;
}

.tab-btn i{
    margin-right:8px;
}

.tab-btn.active{
    color:#2563eb;
    border-bottom:3px solid #2563eb;
}

/* ===========================
CONTENT
=========================== */

.tab-content{
    display:none;
    padding:24px;
}

.tab-content.active{
    display:block;
}

/* ===========================
HEADER
=========================== */

.account-header{
    display:flex;
    align-items:center;
    gap:18px;
    margin-bottom:22px;
}

.account-avatar{
    width:48px;
    height:48px;
    border-radius:50%;
    background:linear-gradient(135deg,#2563eb,#8b5cf6);
    color:#fff;

    display:flex;
    align-items:center;
    justify-content:center;

    font-size:16px;
}

.account-header h4{
    font-size:16px;
    font-weight:700;
    margin-bottom:3px;
}

.account-header p{
    color:#64748b;
    margin:0;
    font-size:13px;
}
.remember-label{
display:flex;
align-items:center;
gap:8px;
margin:0;
}

/* ===========================
LABELS
=========================== */

.tab-content label{
    display:block;
    margin-bottom:8px;
    font-size:14px;
    font-weight:600;
    color:#0f172a;
}

/* ===========================
INPUTS
=========================== */

.input-group-custom{
    position:relative;
    margin-bottom:18px;
}

.input-group-custom input{
    width:100%;
    height:54px;
    border:1px solid #dbe2ea;
    border-radius:14px;
    padding:0 50px;
    outline:none;
}

.input-group-custom input:focus{
    border-color:#2563eb;
}

.input-group-custom i:first-child{
    position:absolute;
    left:18px;
    top:18px;
    color:#94a3b8;
}

.eye-icon{
    position:absolute;
    right:18px;
    top:18px;
    color:#94a3b8;
    cursor:pointer;
}

/* ===========================
OPTIONS
=========================== */

.login-options{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:18px;
}

.login-options a{
    color:#2563eb;
    font-size:14px;
    text-decoration:none;
}

/* ===========================
BUTTON
=========================== */

.account-submit{
    width:100%;
    height:48px;
    border:none;
    border-radius:12px;

    background:linear-gradient(
    135deg,
    #2563eb,
    #0ea5e9
    );

    color:#fff;
    font-size:15px;
    font-weight:700;
}

/* ===========================
DIVIDER
=========================== */

.divider{
    display:flex;
    align-items:center;
    gap:15px;
    margin:24px 0;
}

.divider::before,
.divider::after{
    content:'';
    flex:1;
    height:1px;
    background:#e5e7eb;
}

.divider span{
    color:#94a3b8;
    font-weight:600;
}

/* ===========================
SOCIAL
=========================== */

.social-login{
    display:flex;
    gap:15px;
}

.social-btn{
    flex:1;
    height:52px;
    border:1px solid #e2e8f0;
    border-radius:14px;
    background:#fff;
    font-weight:600;
}

.social-btn i{
    margin-right:8px;
}
.social-btn .fa-google{

    color:#ea4335;
}

/* ===========================
TERMS
=========================== */

.terms-box{
    display:flex;
    align-items:flex-start;
    gap:10px;
    margin-bottom:20px;
}

.terms-box span{
    font-size:13px;
    color:#475569;
}

.terms-box a{
    color:#2563eb;
    text-decoration:none;
}

/* ===========================
SECURITY
=========================== */

.security-box{
    margin-top:20px;

    background:#f8fbff;

    border-radius:14px;

    padding:16px;

    display:flex;
    align-items:center;
    gap:14px;
}

.security-box i{
    color:#2563eb;
    font-size:22px;
}

.security-box strong{
    display:block;
    font-size:14px;
}

.security-box small{
    color:#64748b;
}

/* ===========================
MOBILE
=========================== */
@media(max-width:768px){

.account-menu{

    width:92vw !important;

    max-width:380px !important;

    right:0 !important;

    left:auto !important;
}

.social-login{
    flex-direction:column;
}

.account-header h4{
    font-size:18px;
}

}


@media(max-width:576px){

.account-menu{

    position:fixed !important;

    top:90px !important;

    left:50% !important;

    right:auto !important;

    transform:translateX(-50%) !important;

    width:94vw !important;

    max-width:360px !important;

    max-height:calc(100vh - 120px);

    overflow-y:auto;

    margin:0 !important;

    border-radius:16px;
}

.account-menu::before{
    display:none;
}

}

#registerTab .account-submit{

    background:
    linear-gradient(
    135deg,
    #2563eb,
    #7c3aed
    );
}
@media(max-width:576px){

.account-menu{

left:50% !important;

right:auto !important;

transform:translateX(-50%) !important;

width:95vw !important;

max-width:360px !important;

top:85px !important;

position:fixed !important;

max-height:calc(100vh - 100px);

overflow-y:auto;
}

}


