/* Custom styles for Mean Muggin Coffee Bar */

/* Smooth scrolling */
html {
  scroll-behavior: smooth;
}

/* Marquee animation */
.marquee-track {
  animation: marquee 30s linear infinite;
}

@keyframes marquee {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

/* Diagonal clip for about section */
.clip-diagonal {
  clip-path: polygon(50% 0, 100% 0, 100% 100%, 0% 100%);
}

/* Menu tabs */
.menu-tab {
  font-family: 'Space Grotesk', sans-serif;
  font-size: 0.875rem;
  font-weight: 500;
  padding: 0.5rem 1.25rem;
  border-radius: 9999px;
  border: 1.5px solid rgb(45 67 120 / 0.6);
  background: transparent;
  color: rgb(169 184 204 / 1);
  cursor: pointer;
  transition: all 0.2s ease;
}

.menu-tab:hover {
  border-color: rgb(77 217 184 / 0.5);
  color: rgb(77 217 184 / 1);
}

.menu-tab.active {
  background: rgb(77 217 184 / 0.15);
  border-color: rgb(77 217 184 / 0.6);
  color: rgb(77 217 184 / 1);
}

/* Tab panels */
.tab-panel {
  display: none;
}

.tab-panel.active {
  display: contents;
}

/* Reveal animations — progressive enhancement */
.reveal {
  opacity: 1;
  transform: none;
  transition: opacity 0.6s ease, transform 0.6s ease;
}

@media (prefers-reduced-motion: no-preference) {
  .reveal {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity 0.7s cubic-bezier(0.22, 1, 0.36, 1), transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
  }

  .reveal.revealed {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Mobile menu */
.mobile-link {
  display: block;
  padding: 0.75rem 0;
  border-bottom: 1px solid rgb(45 67 120 / 0.3);
  font-size: 1rem;
  font-weight: 500;
  color: rgb(169 184 204 / 1);
  text-decoration: none;
  transition: color 0.2s ease;
}

.mobile-link:last-child {
  border-bottom: none;
}

.mobile-link:hover {
  color: rgb(77 217 184 / 1);
}

/* Navbar scroll state */
#nav.scrolled {
  background: rgb(2 13 24 / 0.95);
  backdrop-filter: blur(12px);
}

/* Custom scrollbar */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-track {
  background: rgb(5 23 46 / 1);
}

::-webkit-scrollbar-thumb {
  background: rgb(45 67 120 / 1);
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: rgb(77 217 184 / 0.5);
}

/* Focus visible */
*:focus-visible {
  outline: 2px solid rgb(77 217 184 / 0.8);
  outline-offset: 2px;
}

/* Selection */
::selection {
  background: rgb(77 217 184 / 0.3);
  color: rgb(255 255 255 / 1);
}
