@tailwind base;
@tailwind components;
@tailwind utilities;

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

::-webkit-scrollbar-track {
  background: #f1f5f9;
}

::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: #94a3b8;
}

/* Smooth transitions */
* {
  transition-property: background-color, border-color, color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

/* Focus styles */
*:focus-visible {
  outline: 2px solid #0ea5e9;
  outline-offset: 2px;
}

/* Category color utilities */
@layer utilities {
  .bg-category-communication {
    @apply bg-communication-100;
  }
  .border-category-communication {
    @apply border-communication-300;
  }
  .text-category-communication {
    @apply text-communication-700;
  }

  .bg-category-infrastructure {
    @apply bg-infrastructure-100;
  }
  .border-category-infrastructure {
    @apply border-infrastructure-300;
  }
  .text-category-infrastructure {
    @apply text-infrastructure-700;
  }

  .bg-category-development {
    @apply bg-development-100;
  }
  .border-category-development {
    @apply border-development-300;
  }
  .text-category-development {
    @apply text-development-700;
  }
}
