/* 메뉴 하이라이트 스타일 */

/* 활성 메뉴 아이템 */
.menu-item.active > .menu-link {
  background-color: rgba(var(--bs-primary-rgb), 0.1) !important;
  color: var(--bs-primary) !important;
  border-right: 3px solid var(--bs-primary) !important;
  position: relative;
}

.menu-item.active > .menu-link i {
  color: var(--bs-primary) !important;
}

/* 활성 메뉴 아이템 (열린 상태) */
.menu-item.active.open > .menu-link {
  background-color: rgba(var(--bs-primary-rgb), 0.15) !important;
  color: var(--bs-primary) !important;
  font-weight: 600 !important;
}

.menu-item.active.open > .menu-link i {
  color: var(--bs-primary) !important;
}

/* 서브메뉴 활성 아이템 */
.menu-sub .menu-item.active > .menu-link {
  background-color: rgba(var(--bs-primary-rgb), 0.08) !important;
  color: var(--bs-primary) !important;
  border-left: 2px solid var(--bs-primary) !important;
  margin-left: 0.5rem !important;
  border-radius: 0 0.375rem 0.375rem 0 !important;
  position: relative;
}

.menu-sub .menu-item.active > .menu-link i {
  color: var(--bs-primary) !important;
}

/* 호버 효과 */
.menu-item:not(.active):hover > .menu-link {
  background-color: rgba(var(--bs-primary-rgb), 0.05) !important;
  color: var(--bs-primary) !important;
  transition: all 0.2s ease;
}

.menu-item:not(.active):hover > .menu-link i {
  color: var(--bs-primary) !important;
}

/* 다크 테마 지원 */
[data-bs-theme="dark"] .menu-item.active > .menu-link {
  background-color: rgba(var(--bs-primary-rgb), 0.2) !important;
  color: var(--bs-primary) !important;
}

[data-bs-theme="dark"] .menu-item.active.open > .menu-link {
  background-color: rgba(var(--bs-primary-rgb), 0.25) !important;
}

[data-bs-theme="dark"] .menu-sub .menu-item.active > .menu-link {
  background-color: rgba(var(--bs-primary-rgb), 0.15) !important;
}

/* 메뉴 아이템 전환 효과 */
.menu-item > .menu-link {
  transition: all 0.2s ease;
}

/* 활성 메뉴 아이템 강조 효과 */
.menu-item.active > .menu-link::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background-color: var(--bs-primary);
  border-radius: 0 2px 2px 0;
}

/* 서브메뉴 활성 아이템 강조 효과 */
.menu-sub .menu-item.active > .menu-link::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 2px;
  background-color: var(--bs-primary);
  border-radius: 0 2px 2px 0;
} 