@import url('https://fonts.googleapis.com/css2?family=Lato:wght@400;700&family=Poppins:wght@400;500;600;700&display=swap');

* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	font-family: Arial, Helvetica, sans-serif;
  	text-decoration: none;
}

a {
	text-decoration: none;
}

li {
	list-style: none;
}

:root {
	--poppins: 'Poppins', sans-serif;
	--lato: 'Lato', sans-serif;

	--light: #F9F9F9;
	--blue: #3C91E6;
	--light-blue: #CFE8FF;
	--grey: #eee;
	--dark-grey: #AAAAAA;
	--dark: #342E37;
	--red: #DB504A;
	--yellow: #FFCE26;
	--light-yellow: #FFF2C6;
	--orange: #FD7238;
	--light-orange: #FFE0D3;
}

html {
	overflow-x: hidden;
}

body.dark {
	--light: #0C0C1E;
	--grey: #060714;
	--dark: #FBFBFB;
}

/* body {
	background: var(--grey);
	overflow-x: hidden;
} */
/* SIDEBAR */
#sidebar {
	position: fixed;
	top: 0;
	left: 0;
	width: 220px;
	height: 100%;
	background: #1D2231;
	z-index: 2000;
	font-family: var(--lato);
	transition: .3s ease;
	overflow-x: hidden;
	scrollbar-width: none;
}
#sidebar::--webkit-scrollbar {
	display: none;
}
#sidebar.hide {
	width: 60px;
}
#sidebar .side-menu {
	width: 100%;
	margin-top: 22px;
}
#sidebar .side-menu li {
	height: 48px;
	background: #1D2231;
	margin-left: 6px;
	border-radius: 48px 0 0 48px;
	padding: 4px;
}
#sidebar .side-menu li.active {
	background: var(--grey);
	position: relative;
}
#sidebar .side-menu li.active::before {
	content: '';
	position: absolute;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	top: -40px;
	right: 0;
	box-shadow: 20px 20px 0 var(--grey);
	z-index: -1;
}
#sidebar .side-menu li.active::after {
	content: '';
	position: absolute;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	bottom: -40px;
	right: 0;
	box-shadow: 20px -20px 0 var(--grey);
	z-index: -1;
}
#sidebar .side-menu li a {
	width: 100%;
	height: 100%;
	background: #1D2231;
	display: flex;
	align-items: center;
	border-radius: 48px;
	font-size: 16px;
	color: var(--light);
	white-space: nowrap;
	overflow-x: hidden;
	text-decoration: none;
}
#sidebar .side-menu.top li.active a {
	color: #FFF176;
}
#sidebar.hide .side-menu li a {
	width: calc(48px - (4px * 2));
	transition: width .3s ease;
}
#sidebar .side-menu li a.logout {
	color: var(--red);
}
#sidebar .side-menu.top li a:hover {
	color: var(--blue);
}
#sidebar .side-menu li a .bx {
	min-width: calc(60px  - ((4px + 6px) * 2));
	display: flex;
	justify-content: center;
}
/* SIDEBAR */

/* CONTENT */
/* Content */
#content {
    position: relative;
    width: calc(100% - 220px); /* Default width with sidebar */
    left: 220px; /* Default position */
    transition: .3s ease; /* Smooth transition for width change */
}

/* When sidebar is hidden, content width should adjust */
#sidebar.hide ~ #content {
    width: calc(100% - 60px); /* Adjust content width when sidebar is hidden */
    left: 60px; /* Adjust content position */
}

/* Navbar */
#content nav {
    height: 56px;
    background: #1D2231;
    padding: 0 24px;
    display: flex;
    align-items: center;
    grid-gap: 24px;
    font-family: var(--lato);
    position: relative;
    top: 0;
    left: 0;
    z-index: 1000;
    transition: .3s ease; /* Smooth transition for navbar */
}

/* If sidebar is hidden, ensure navbar adjusts as well */
#sidebar.hide ~ #content nav {
    width: 100%; /* Make the navbar take full width when sidebar is hidden */
    left: 0; /* Align navbar to the left */
}

/* Media Query for smaller screens */
@media screen and (max-width: 768px) {
    #sidebar {
        width: 200px;
    }

    #content {
        width: calc(100% - 60px); /* Adjust content width for mobile */
        left: 60px; /* Adjust position */
    }

    #content nav .nav-link {
        display: none; /* Hide navbar links on mobile */
    }
}
#content nav::before {
	content: '';
	position: absolute;
	width: 40px;
	height: 40px;
	bottom: -40px;
	left: 0;
	border-radius: 50%;
	box-shadow: -20px -20px 0 #1D2231;
}
#content nav a {
	color: var(--dark);
}

#content nav .icon-container {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 40px; /* Adjust the size as needed */
    height: 40px; /* Adjust the size as needed */
    border-radius: 50%;
    background-color: #b0e0e6; /* Background color */
    box-shadow: -20px -20px 0 #1D2231; /* Adjust the shadow */
    cursor: pointer;
}


#content nav .icon-container i {
    color: white; /* Icon color */
    font-size: 24px; /* Adjust icon size if necessary */
}

#content nav .bx.bx-menu {
	cursor: pointer;
	color: #1D2231;
}
#content nav .nav-link {
	font-size: 16px;
	transition: .3s ease;
}
#content nav .nav-link:hover {
	color: var(--blue);
}

#content nav .logo{
	display: block;
	text-decoration: none;
	color: #fff;
	font-weight: 600;
	letter-spacing: 2px;
	font-size: 25px;
	text-transform: uppercase;
	line-height: 16pt;
} 
#content nav small
{
	color:#FAFD87;
	margin-top:0px;
	font-size:12px;
}

#content nav {
    height: 56px;
    background: #1D2231;
    padding: 0 24px;
    display: flex;
    align-items: center;
    grid-gap: 24px;
    font-family: var(--lato);
    position: relative;
    top: 0;
    left: 0;
    z-index: 1000;
}

/* Aligns the profile image to the far right of the nav */
.nav_right {
    margin-left: auto;
    position: relative;
}

/* Profile Image Styling */
#content nav .nav_right img {
    width: 35px;
    border-radius: 50%;
    cursor: pointer;
    vertical-align: middle;
}

/* Dropdown Menu user Styling */
.dropdown_menu_user {
    display: none;
    position: absolute;
    top: 50px; 
    right: 0;
    background-color: #ffffff;
    width: 180px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
    border-radius: 5px;
    overflow: hidden;
    z-index: 1001; 
}

.user_name {
    font-weight: bold;
    padding: 15px;
    background-color: #1D2231;
    margin: 0;
    border-bottom: 1px solid #ddd;
	color: white;
}

.dropdown_menu_user a {
    display: block;
    padding: 10px 15px;
    color: #333;
    text-decoration: none;
    font-size: 14px;
}

.dropdown_menu_user a:hover {
    background-color: #f0f0f0;
    color: #000;
}

/* Container for welcome text and profile image */
.user_greeting {
    display: flex;
    align-items: center;
    gap: 8px; /* Space between Welcome text and image */
}

/* Styling for the Welcome text */
.welcome_text {
    color: #ffffff; /* Adjust to match your design */
    font-size: 16px; /* Adjust font size as needed */
    font-family: var(--lato); /* Use your preferred font */
}

/* Profile Image Styling */
.profile_img {
    width: 35px;
    height: 35px;
    border-radius: 50%;
    cursor: pointer;
    vertical-align: middle;
}

/* NAVBAR */

@media screen and (max-width: 768px) {
	#sidebar {
		width: 200px;
	}

	#content {
		width: calc(100% - 60px);
		left: 200px;
	}

	#content nav .nav-link {
		display: none;
	}
}

