@import "tailwindcss";

@theme {
  --color-primary-50: #fff1f1;
  --color-primary-100: #ffe0e1;
  --color-primary-200: #ffc7c8;
  --color-primary-300: #ffa0a2;
  --color-primary-400: #ff6a6d;
  --color-primary-500: #ff3539;
  --color-primary-600: #ff060a;
  --color-primary-700: #d70006;
  --color-primary-800: #b10005;
  --color-primary-900: #92000a;
  --color-primary-950: #500003;

  --color-neutral-50: #fafafa;
  --color-neutral-100: #f5f5f5;
  --color-neutral-200: #e5e5e5;
  --color-neutral-300: #d4d4d4;
  --color-neutral-400: #a3a3a3;
  --color-neutral-500: #737373;
  --color-neutral-600: #525252;
  --color-neutral-700: #404040;
  --color-neutral-800: #262626;
  --color-neutral-900: #171717;
  --color-neutral-950: #0a0a0a;
}

/* Custom animations */
@keyframes slide-down {
  from {
    transform: translateY(-100%);
  }
  to {
    transform: translateY(0);
  }
}

.animate-slide-down {
  animation: slide-down 0.3s ease-out;
}

.pagy {
  @apply flex items-center justify-center space-x-1 font-medium text-sm;
  
  a:not(.gap) {
    @apply block rounded-md px-3 py-2 text-neutral-700 bg-white border border-neutral-300 transition-colors;
    
    &:hover {
      @apply bg-neutral-50 border-neutral-400;
    }
    
    &:not([href]) { /* disabled links */
      @apply text-neutral-400 bg-neutral-50 border-neutral-200 cursor-not-allowed;
    }
    
    &.current {
      @apply text-white bg-primary-600 border-primary-600;
      &:hover {
        @apply bg-primary-700 border-primary-700;
      }
    }
  }
  
  .gap {
    @apply text-neutral-400 px-1;
  }
  
  label {
    @apply inline-flex items-center space-x-2 text-neutral-700;
    
    input {
      @apply w-16 px-2 py-1 text-center rounded-md border border-neutral-300 focus:border-primary-500 focus:ring-2 focus:ring-primary-500/50;
    }
  }
}
