:root {
  --menu-bg: rgba(13, 17, 23, 0.95); /* Dark, slightly transparent */
  --menu-border: rgba(0, 166, 255, 0.3); /* Subtle blue border */
  --menu-glow: 0 0 15px rgba(0, 166, 255, 0.15); /* Blue glow */
  --hover-blue: #00a6ff;
}

#custom-context-menu {
  position: fixed; 
  background-color: var(--menu-bg);
  backdrop-filter: blur(5px);
  border: 1px solid var(--menu-border);
  box-shadow: var(--menu-glow);
  border-radius: 6px;
  padding: 6px 0;
  width: 240px;
  z-index: 10000;
  opacity: 0;
  transform: scale(0.95);
  pointer-events: none;
  transition: opacity 0.1s ease-out, transform 0.1s ease-out;
}

#custom-context-menu.visible {
  opacity: 1;
  transform: scale(1);
  pointer-events: auto;
}

.context-menu-item {
  display: flex;
  align-items: center;
  padding: 10px 15px;
  color: #a0a0a0;
  cursor: pointer;
  transition: all 0.2s ease;
  position: relative;
}

.context-menu-item:hover {
  background-color: rgba(0, 166, 255, 0.1);
  color: var(--hover-blue);
  padding-left: 20px; 
}

.context-menu-item:hover::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background-color: var(--hover-blue);
  box-shadow: 0 0 8px var(--hover-blue);
}

.context-menu-item svg {
  width: 16px;
  height: 16px;
  margin-right: 12px;
  stroke-width: 2px;
}

.context-menu-separator {
  height: 1px;
  background: linear-gradient(to right, transparent, #333, transparent);
  margin: 4px 0;
}