/* Sidebar link */
.sidebar-link {
  position: relative;
  transition: all 0.2s ease;
}
.sidebar-link::before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 3px;
  height: 0;
  background: #4d65ff;
  border-radius: 0 2px 2px 0;
  transition: height 0.2s ease;
}
.sidebar-link.active::before,
.sidebar-link:hover::before {
  height: 60%;
}
.sidebar-link.active {
  background: rgba(77, 101, 255, 0.08);
  color: #4d65ff;
}

/* Slim sidebar */
.slim-sidebar {
  width: 64px;
  background: #1A1A1A;
  transition: width 0.2s ease;
}
.slim-sidebar .nav-tooltip {
  position: absolute;
  left: 100%;
  top: 50%;
  transform: translateY(-50%);
  margin-left: 12px;
  padding: 6px 12px;
  background: #333;
  color: #fff;
  font-size: 13px;
  font-weight: 500;
  border-radius: 8px;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.15s ease;
  z-index: 100;
}
.slim-sidebar .nav-tooltip::before {
  content: '';
  position: absolute;
  right: 100%;
  top: 50%;
  transform: translateY(-50%);
  border: 5px solid transparent;
  border-right-color: #333;
}
.slim-sidebar .nav-item:hover .nav-tooltip {
  opacity: 1;
}
.slim-sidebar .nav-item {
  position: relative;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  color: #8d8d83;
  cursor: pointer;
  transition: all 0.15s ease;
  margin: 0 auto;
}
.slim-sidebar .nav-item:hover {
  background: rgba(255,255,255,0.08);
  color: #fff;
}
.slim-sidebar .nav-item.active {
  background: rgba(77, 101, 255, 0.15);
  color: #4d65ff;
}
.slim-sidebar .nav-item.active::before {
  content: '';
  position: absolute;
  left: -12px;
  top: 50%;
  transform: translateY(-50%);
  width: 3px;
  height: 20px;
  background: #4d65ff;
  border-radius: 0 2px 2px 0;
}
