/* Modern launcher menu */
.launcher-toggle {
  background: transparent;
  border: none;
  font-size: 1.5rem;
  color: var(--text-color);
  cursor: pointer;
}

.app-launcher-grid {
  position: absolute;
  top: 56px;
  right: 0;
  min-width: 260px;
  background: var(--card-bg, var(--bs-body-bg));
  border-radius: var(--radius-xl);
  box-shadow: var(--shadow-large);
  padding: 1rem;
  display: none;
  z-index: 1050;
}

.app-launcher-grid.show {
  display: block;
  animation: launcherScale 0.2s ease;
}

.launcher-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(72px, 1fr));
  gap: 1rem;
}

.launcher-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-decoration: none;
  color: inherit;
  padding: 0.5rem;
  border-radius: var(--radius-lg);
  transition: background 0.2s ease, transform 0.2s ease;
}

.launcher-item:hover {
  background: rgba(0, 0, 0, 0.05);
  transform: translateY(-2px);
  text-decoration: none;
}

[data-bs-theme='dark'] .launcher-item:hover {
  background: rgba(255, 255, 255, 0.05);
}

@media (max-width: 991px) {
  .launcher-toggle,
  .app-launcher-grid {
    display: none !important;
  }
}

@keyframes launcherScale {
  from { opacity: 0; transform: scale(0.95); }
  to { opacity: 1; transform: scale(1); }
}
