.aside-panel {
    position: fixed;
    top: 0;
    left: -250px;
    height: 100vh;
    width: 250px; 
    background-color: #212725; 
    color: #fff;
    box-shadow: 2px 1px 5px #00000080 !important;
    overflow-y: auto;
    z-index: 200;
    padding: 20px;
    transition: left 0.3s ease-in-out, width 0.3s ease-in-out, transform 0.3s ease-in-out;
}

.aside-panel.show {
    left: 0; 
    transform: scale(1.02);
}

.aside-toggle {
    position: fixed;
    top: 55%;
    left: 0; 
    z-index: 9999;
    transition: left 0.3s ease-in-out;
    font-weight: bolder;
    writing-mode: vertical-rl;
    text-decoration: upright;
}


.aside-panel.show ~ .aside-toggle {
    left: 250px; 
}

.aside-toggle > span {
    cursor: pointer; 
    padding: 12px;
    transform-origin: left top; 
    white-space: nowrap; 
    position: absolute; 
    left: 50%; 
    bottom: 0;
    box-shadow: 1px 1px 3px #00000080 !important;
    border-bottom-right-radius: 8px;
    border-top-right-radius: 8px;
}

.vertical-text {
	display: inline-block;
	white-space: pre;
}

.vertical-text::before {
	content: attr(data-text);
	display: block;
	white-space: pre;
	transform: rotate(90deg);
	transform-origin: left top 0;
}

#asideToggle .vertical-text {
	writing-mode: vertical-rl;
	text-orientation: upright;
}


.user-info a, .link-item a {
	color: inherit;
	text-decoration: none; 
}

.link-item {
	display: block;
	margin: 1.5rem 0;
	padding: 0.5rem 1rem;
	background-color: #384540; 
	color: #ffffff;
	text-decoration: none;
	border-radius: 5px;
	transition: background-color 0.3s, transform 0.3s;
}

.link-item:hover {
	color: #ff6f61;
	background-color: #212725; 
	border-color: #ff6f61; 
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1), 0 1px 3px rgba(0, 0, 0, 0.08); 
}

@media (max-width: 991.98px) {
	.aside-panel, .aside-toggle {
		display: none; 
	}
}

/*
@media (min-width: 1700px) {
	.aside-panel {
		width: 30%; 
		max-width: 200px;
	}

	.aside-panel:hover, .aside-panel.show {
		left:0;
		width: 200px !important;
	}

	.aside-panel, .aside-panel > .user-info > div {
		display: flex;
		flex-direction: column; 
		align-items: flex-end; 
		left: 0;
		width: 25%;
	}

	.aside-toggle {
		display: none;
	}
}
*/

.link-item {
	position: relative;
	padding: 10px; 
	margin-bottom: 10px; 
}

.link-item i {
	transition: transform 0.3s ease; 
}

@media (min-width: 768px) {
	.link-item i {
		float: right; 
		margin-left: 15px; 
		transform: scale(1.5);
		opacity: 0.5;
	}
	.link-item:hover i {
		transform: scale(2); 
		opacity: 1; 
	}
	.link-item:hover span {
		transform: scale(1.1); 
	}
}