/* ==========================================
   RESET
========================================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{
    font-family:'Poppins',sans-serif;
    background:#050505;
    overflow-x:hidden;
}

/* ==========================================
   DASHBOARD LAYOUT
========================================== */

.dashboard{
    display:flex;
    min-height:100vh;
}

/* ==========================================
   SIDEBAR
========================================== */

.sidebar{
    position:fixed;
    top:0;
    left:0;
    width:280px;
    height:100vh;
    background:#111111;
    border-right:1px solid #222;
    padding:30px 20px;
    overflow-y:auto;
    transition:.35s ease;
}

/* ==========================================
   LOGO
========================================== */

.logo{
    display:flex;
    align-items:center;
    gap:12px;
    margin-bottom:45px;
}

.logo-circle{
    width:55px;
    height:55px;
    border-radius:50%;
    background:#0B5ED7;
    color:#fff;
    display:flex;
    justify-content:center;
    align-items:center;
    font-size:20px;
    font-weight:700;
}

.logo-text h2{
    color:#fff;
    font-size:20px;
}

.logo-text p{
    color:#D4AF37;
    font-size:13px;
}

/* ==========================================
   SIDEBAR MENU
========================================== */

.sidebar-menu{
    list-style:none;
}

.sidebar-menu li{
    margin-bottom:15px;
}

.sidebar-menu li a{
    display:flex;
    align-items:center;
    gap:15px;
    text-decoration:none;
    color:#ddd;
    padding:15px;
    border-radius:12px;
    transition:.3s;
    font-size:16px;
}

.sidebar-menu li a i{
    width:22px;
    text-align:center;
}

.sidebar-menu li:hover a,
.sidebar-menu li.active a{
    background:#0B5ED7;
    color:#fff;
}

/* ==========================================
   MAIN CONTENT
========================================== */

.main-content{
    margin-left:280px;
    width:calc(100% - 280px);
    min-height:100vh;
    padding:40px;
    color:#fff;
}

/* ==========================================
   MOBILE MENU BUTTON
========================================== */

.menu-toggle{
    display:none;
    position:fixed;
    top:20px;
    left:20px;
    width:50px;
    height:50px;
    border:none;
    border-radius:10px;
    background:#0B5ED7;
    color:#fff;
    font-size:22px;
    cursor:pointer;
    z-index:2000;
}

/* ==========================================
   RESPONSIVE
========================================== */

@media(max-width:992px){

    .menu-toggle{
        display:block;
    }

    .sidebar{
        left:-280px;
        z-index:1500;
    }

    .sidebar.active{
        left:0;
    }

    .main-content{
        margin-left:0;
        width:100%;
        padding:90px 20px 20px;
    }

}

@media(max-width:576px){

    .sidebar{
        width:250px;
    }

    .sidebar.active{
        left:0;
    }

    .logo-circle{
        width:48px;
        height:48px;
        font-size:18px;
    }

    .logo-text h2{
        font-size:17px;
    }

    .logo-text p{
        font-size:11px;
    }

}

/* ==========================================
   DASHBOARD HEADER
========================================== */

.dashboard-header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:40px;
    gap:20px;
    flex-wrap:wrap;
}

.dashboard-header h1{
    color:#fff;
    font-size:35px;
    margin-bottom:8px;
}

.dashboard-header p{
    color:#aaa;
}

.profile-box{
    display:flex;
    align-items:center;
    gap:15px;
    background:#111;
    padding:12px 18px;
    border-radius:12px;
}

.profile-box img{
    width:55px;
    height:55px;
    border-radius:50%;
    border:2px solid #0B5ED7;
}

.profile-box h3{
    color:#fff;
}

.profile-box span{
    color:#D4AF37;
    font-size:13px;
}

/* ==========================================
   STATISTICS
========================================== */

.stats-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
    gap:25px;
}

.stat-card{
    background:#111;
    border-radius:15px;
    padding:30px;
    text-align:center;
    transition:.3s;
}

.stat-card:hover{
    transform:translateY(-8px);
    background:#0B5ED7;
}

.stat-card i{
    font-size:40px;
    color:#D4AF37;
    margin-bottom:18px;
}

.stat-card h2{
    color:#fff;
    font-size:35px;
    margin-bottom:10px;
}

.stat-card p{
    color:#ccc;
}

.stat-card:hover i,
.stat-card:hover p{
    color:#fff;
}

/* ==========================================
   DASHBOARD GRID
========================================== */

.dashboard-grid{

    display:grid;

    grid-template-columns:2fr 1fr;

    gap:30px;

    margin-top:40px;

}

.dashboard-card{

    background:#111;

    border-radius:15px;

    padding:25px;

    border:1px solid #222;

}

.card-header{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:25px;

}

.card-header h2{

    color:#fff;

    font-size:22px;

}

.card-header a{

    color:#0B5ED7;

    text-decoration:none;

    font-weight:600;

}

.card-header a:hover{

    color:#D4AF37;

}

/* ==========================================
   JOBS
========================================== */

.job-item{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:18px 0;

    border-bottom:1px solid #222;

}

.job-item:last-child{

    border-bottom:none;

}

.job-item h3{

    color:#fff;

    margin-bottom:5px;

}

.job-item p{

    color:#999;

}

.job-item button{

    background:#0B5ED7;

    color:#fff;

    border:none;

    padding:10px 20px;

    border-radius:8px;

    cursor:pointer;

    transition:.3s;

}

.job-item button:hover{

    background:#D4AF37;

    color:#050505;

}

/* ==========================================
   TABLE
========================================== */

.application-table{

    width:100%;

    border-collapse:collapse;

}

.application-table th{

    text-align:left;

    color:#D4AF37;

    padding-bottom:15px;

}

.application-table td{

    color:#ddd;

    padding:15px 0;

    border-top:1px solid #222;

}

/* ==========================================
   STATUS
========================================== */

.status{

    padding:6px 14px;

    border-radius:20px;

    font-size:13px;

    font-weight:600;

}

.pending{

    background:#f39c12;

    color:#fff;

}

.accepted{

    background:#27ae60;

    color:#fff;

}

.rejected{

    background:#e74c3c;

    color:#fff;

}

/* ==========================================
   RESPONSIVE
========================================== */

@media(max-width:992px){

    .dashboard-grid{

        grid-template-columns:1fr;

    }

}

/* ==========================================
   BOTTOM GRID
========================================== */

.bottom-grid{

    display:grid;

    grid-template-columns:2fr 1fr;

    gap:30px;

    margin-top:35px;

}

.notification{

    display:flex;

    gap:15px;

    margin-bottom:25px;

}

.notification i{

    color:#0B5ED7;

    font-size:22px;

    margin-top:4px;

}

.notification h4{

    color:#fff;

    margin-bottom:5px;

}

.notification p{

    color:#999;

    line-height:1.6;

}

.progress{

    width:100%;

    height:12px;

    background:#222;

    border-radius:30px;

    overflow:hidden;

    margin-top:20px;

}

.progress-bar{

    width:85%;

    height:100%;

    background:#0B5ED7;

}

.complete-btn{

    margin-top:25px;

    width:100%;

    height:50px;

    border:none;

    background:#0B5ED7;

    color:#fff;

    border-radius:10px;

    cursor:pointer;

    transition:.3s;

}

.complete-btn:hover{

    background:#D4AF37;

    color:#050505;

}

@media(max-width:992px){

.bottom-grid{

grid-template-columns:1fr;

}

}

/* ==========================================
   DASHBOARD FOOTER
========================================== */

.dashboard-footer{

    margin-left:280px;

    min-height:100px;

    background:#111111;

    border-top:1px solid #222;

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:25px;

    padding:25px 40px;

    color:#fff;

}


/* ==========================================
   FOOTER LEFT
========================================== */

.footer-left h3{

    color:#fff;

    font-size:18px;

    margin-bottom:3px;

}

.footer-left p{

    color:#D4AF37;

    font-size:13px;

}


/* ==========================================
   FOOTER CENTER
========================================== */

.footer-center{

    text-align:center;

}

.footer-center p{

    color:#888;

    font-size:13px;

}


/* ==========================================
   FOOTER SOCIAL
========================================== */

.footer-right{

    display:flex;

    align-items:center;

    gap:12px;

}

.footer-right a{

    width:38px;

    height:38px;

    border-radius:50%;

    background:#1A1A1A;

    color:#fff;

    display:flex;

    align-items:center;

    justify-content:center;

    text-decoration:none;

    transition:.3s;

}

.footer-right a:hover{

    background:#0B5ED7;

    color:#fff;

    transform:translateY(-3px);

}


/* ==========================================
   TABLET
========================================== */

@media(max-width:992px){

    .dashboard-footer{

        margin-left:0;

        padding:25px 20px;

        flex-wrap:wrap;

        justify-content:center;

        text-align:center;

    }

    .footer-left,
    .footer-center,
    .footer-right{

        width:100%;

        display:flex;

        justify-content:center;

    }

}


/* ==========================================
   MOBILE
========================================== */

@media(max-width:480px){

    .dashboard-footer{

        padding:25px 15px;

    }

    .footer-center p{

        font-size:11px;

        line-height:1.6;

    }

}