a, a:hover, a:focus {
	color: inherit;
	text-decoration: none;
	transition: all 0.3s;
}

/* Sidebar */
.wrapper {
	display: flex;
	align-items: stretch;
}

#sidebar {
	min-width: 250px;
	max-width: 250px;
	transition: all 0.3s;
	background: linear-gradient(135deg, #0F121D 0%, #0F121D 100%);
}

#sidebar.active {
	min-width: 80px;
	max-width: 80px;
	text-align: center;
}

#sidebar.active .sidebar-header h3, #sidebar.active .visit {
	display: none;
}

#sidebar.active .sidebar-header strong {
	display: block;
}

#sidebar.active ul li a {
	padding: 20px 10px;
	text-align: center;
	font-size: 0.85em;
}

#sidebar.active ul li a i {
	margin-right:  0;
	display: block;
	font-size: 1.8em;
	margin-bottom: 5px;
}

#sidebar.active ul ul a {
	padding: 10px !important;
}

#sidebar.active a[aria-expanded="false"]::before, #sidebar.active a[aria-expanded="true"]::before {
	top: auto;
	bottom: 5px;
	right: 50%;
	-webkit-transform: translateX(50%);
	-ms-transform: translateX(50%);
	transform: translateX(50%);
}

#sidebar .sidebar-header {
	padding: 20px;
	background: rgba(0,0,0,0.1);
	border-bottom: 1px solid rgba(255,255,255,0.1);
}

#sidebar .sidebar-header h3 {
	color: white;
	font-size: 1.2rem;
	margin: 0;
}

#sidebar .sidebar-header strong {
	display: none;
	font-size: 1.5em;
	color: white;
}

#sidebar ul li a {
	padding: 15px 20px;
	font-size: 1rem;
	display: block;
	color: rgba(255,255,255,0.9);
	border-bottom: 1px solid rgba(255,255,255,0.1);
	transition: all 0.3s ease;
}

#sidebar ul li a:hover {
	color: #fff;
	background: rgba(255,255,255,0.1);
	text-decoration: none;
}

#sidebar ul li a i {
	margin-right: 15px;
	font-size: 1.1rem;
}

#sidebar ul li.active > a, a[aria-expanded="true"] {
	color: #fff;
	background: rgba(255,255,255,0.2);
	border-left: 4px solid #fff;
}

#sidebar a[data-toggle="collapse"] {
	position: relative;
}

#sidebar a[aria-expanded="true"]::before {
	content: '\e260';
}

#sidebar ul ul a {
	font-size: 0.9em !important;
	padding-left: 30px !important;
	background: rgba(255,255,255,0.1);
}

.visit {
	padding: 20px;
	border-top: 1px solid rgba(255,255,255,0.1);
}

.visit a {
	text-align: center;
	font-size: 0.9em !important;
	display: block;
	border-radius: 5px;
	margin-bottom: 5px;
	background: rgba(255,255,255,0.1);
	color: rgba(255,255,255,0.9);
	padding: 10px;
	transition: all 0.3s ease;
}

.visit a:hover {
	background: rgba(255,255,255,0.2);
	color: #fff;
	text-decoration: none;
}

/* content */
#content {
	padding: 30px;
	min-height: 100vh;
	transition: all 0.3s;
	width: 100%;
	background: #f8f9fa;
}

/* Table improvements */
.table {
	background: white;
	border-radius: 8px;
	box-shadow: 0 2px 10px rgba(0,0,0,0.1);
	overflow: hidden;
}

.table th {
	background: #0F121D;
	color: white;
	border: none;
	padding: 15px;
	font-weight: 600;
}

.table td {
	padding: 15px;
	border-bottom: 1px solid #dee2e6;
	vertical-align: middle;
}

.table tr:hover {
	background: #f8f9fa;
}

.table a {
	color: #0F121D;
	text-decoration: none;
	font-weight: 500;
}

.table a:hover {
	color: #0b5ed7;
	text-decoration: underline;
}

/* Button improvements */
.btn {
	border-radius: 6px;
	font-weight: 500;
	padding: 8px 16px;
	transition: all 0.3s ease;
}

.btn-primary {
	background: #0F121D;
	border-color: #0F121D;
}

.btn-primary:hover {
	background: #0b5ed7;
	border-color: #0b5ed7;
}

/* Form improvements */
.form-control {
	border-radius: 6px;
	border: 1px solid #ced4da;
	padding: 10px 15px;
	transition: all 0.3s ease;
}

.form-control:focus {
	border-color: #0F121D;
	box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.25);
}

/* Card improvements */
.card {
	border-radius: 8px;
	box-shadow: 0 2px 10px rgba(0,0,0,0.1);
	border: none;
}

.card-header {
	background: #0F121D;
	color: white;
	border-radius: 8px 8px 0 0 !important;
	border: none;
	padding: 15px 20px;
}

/* Media Queries */
@media (max-width: 768px) {
	#sidebar {
		min-width: 80px;
		max-width: 80px;
		text-align: center;
		margin-left: -80px;
	}
	a[aria-expanded="false"]::before, a[aria-expanded="true"]::before {
		top: auto;
		bottom: 5px;
		right: 50%;
		-webkit-transform: translateX(50%);
		-ms-transform: translateX(50%);
		transform: translateX(50%);
	}
	#sidebar.active {
		margin-left: 0 !important;
	}

	#sidebar .sidebar-header h3, #sidebar .CTAs {
		display: none;
	}

	#sidebar .sidebar-header strong {
		display: block;
	}

	#sidebar ul li a {
		padding: 20px 10px;
	}

	#sidebar ul li a span {
		font-size: 0.85em;
	}
	#sidebar ul li a i {
		margin-right:  0;
		display: block;
	}

	#sidebar ul ul a {
		padding: 10px !important;
	}

	#sidebar ul li a i {
		font-size: 1.3em;
	}
	#sidebar {
		margin-left: 0;
	}
	#sidebarCollapse span {
		display: none;
	}
	
	#content {
		padding: 20px;
	}
}
