/* =========================
   GLOBAL
========================= */

body{

    margin:0;
    padding:0;

    background:#f3f4f6;

    font-family:Arial,sans-serif;

    overflow-x:hidden;
}
/* =========================
   CANDIDATE SIDEBAR
========================= */

.candidate-sidebar{

    width:270px;

    height:100vh;

    position:fixed;

    top:0;
    left:0;

    background:linear-gradient(
        180deg,
        #0f172a,
        #1e3a8a
    );

    overflow-y:auto;

    z-index:999;
}

.candidate-sidebar .logo{

    padding:22px;

    text-align:center;

    border-bottom:1px solid
    rgba(255,255,255,0.1);
}

.candidate-sidebar .logo h4{

    color:#fff;

    margin:0;

    font-weight:700;
}

.candidate-sidebar .menu-title{

    padding:15px 22px 8px;

    color:#cbd5e1;

    font-size:12px;

    text-transform:uppercase;

    font-weight:bold;
}

.candidate-sidebar ul{

    list-style:none;

    margin:0;
    padding:0;
}

.candidate-sidebar ul li a{

    display:flex;

    align-items:center;

    gap:12px;

    padding:14px 22px;

    color:#e2e8f0;

    text-decoration:none;

    transition:0.3s;
}

.candidate-sidebar ul li a:hover{

    background:rgba(255,255,255,0.1);

    color:#fff;
}

.candidate-sidebar ul li a.active{

    background:#2563eb;

    color:#fff;
}

/* Candidate Main */

.candidate-main{

    margin-left:270px;

    min-height:100vh;
}

/* Mobile */

@media(max-width:991px){

    .candidate-sidebar{

        left:-270px;
    }

    .candidate-sidebar.show{

        left:0;
    }

    .candidate-main{

        margin-left:0;
    }
}
/* =========================
   SIDEBAR
========================= */

.sidebar{

    width:270px;

    height:100vh;

    position:fixed;

    top:0;
    left:0;

    background:#111827;

    overflow-y:auto;
    overflow-x:hidden;

    transition:0.3s;

    z-index:999;
}

/* Scrollbar */

.sidebar::-webkit-scrollbar{

    width:5px;
}

.sidebar::-webkit-scrollbar-thumb{

    background:#374151;
}

/* Logo */

.logo{

    padding:22px;

    text-align:center;

    border-bottom:1px solid rgba(255,255,255,0.08);
}

.logo h4{

    color:#fff;

    margin:0;

    font-size:22px;

    font-weight:700;
}

/* Menu Title */

.menu-title{

    padding:15px 22px 8px;

    color:#9ca3af;

    font-size:12px;

    text-transform:uppercase;

    font-weight:bold;
}

/* Menu */

.sidebar ul{

    list-style:none;

    margin:0;
    padding:0;
}

.sidebar ul li{

    width:100%;
}

/* Links */

.sidebar ul li a{

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:10px;

    padding:13px 22px;

    color:#d1d5db;

    text-decoration:none;

    transition:0.3s;
}

/* Left Side */

.sidebar ul li a span{

    display:flex;

    align-items:center;

    gap:10px;
}

/* Hover */

.sidebar ul li a:hover{

    background:#1f2937;

    color:#fff;
}

/* Active */

.sidebar ul li a.active{

    background:#2563eb;

    color:#fff;
}

/* Icons */

.sidebar i{

    font-size:16px;

    transition:0.3s;
}

/* Rotate Icon */

.sidebar a[aria-expanded="true"] .bi-chevron-down{

    transform:rotate(180deg);
}

/* Submenu */

.submenu{

    background:#0f172a;
}

.submenu a{

    padding-left:52px !important;

    font-size:14px;
}

/* =========================
   MAIN CONTENT
========================= */

.main-content{

    margin-left:270px;

    min-height:100vh;

    transition:0.3s;
}

/* =========================
   TOPBAR
========================= */

.topbar{

    height:70px;

    background:#fff;

    display:flex;

    align-items:center;

    justify-content:space-between;

    padding:0 25px;

    box-shadow:0 2px 10px rgba(0,0,0,0.05);
}

/* Toggle */

.btn-toggle{

    border:none;

    background:none;

    font-size:28px;
}

/* Profile */

.profile-circle{

    width:40px;
    height:40px;

    border-radius:50%;

    background:#2563eb;

    color:#fff;

    display:flex;

    align-items:center;

    justify-content:center;

    font-weight:bold;
}

/* =========================
   DASHBOARD
========================= */

.dashboard-container{

    padding:25px;
}

.dashboard-card{

    background:#fff;

    border-radius:16px;

    padding:25px;

    box-shadow:0 2px 12px rgba(0,0,0,0.05);

    transition:0.3s;
}

.dashboard-card:hover{

    transform:translateY(-4px);
}

/* =========================
   CARDS
========================= */

.card{

    border:none !important;

    border-radius:16px !important;
}

/* =========================
   BUTTONS
========================= */

.btn-primary{

    background:#2563eb;
    border-color:#2563eb;
}

.btn-primary:hover{

    background:#1d4ed8;
    border-color:#1d4ed8;
}

/* =========================
   TABLE
========================= */

.table{

    vertical-align:middle;
}

.table thead{

    background:#f9fafb;
}

/* =========================
   FORM
========================= */

.form-control,
.form-select{

    height:48px;

    border-radius:10px;
}

/* =========================
   MOBILE
========================= */

@media(max-width:991px){

    .sidebar{

        left:-270px;
    }

    .sidebar.show{

        left:0;
    }

    .main-content{

        margin-left:0;
    }
}