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

html,
body {
  text-rendering: optimizeLegibility;
  background-color: var(--bg-color);
  scroll-behavior: smooth;
  scroll-padding-top: 3rem;
}

html.light {
  --bg-color: theme("colors.zinc.50");
}
html.dark {
  --bg-color: theme("colors.zinc.900");
}

[data-radix-popper-content-wrapper] {
  z-index: 99999 !important;
}

[data-floating-ui-portal] {
  z-index: 100000;
}

::selection {
  background-color: theme("colors.lime.300");
  color: theme("colors.lime.950");
}

@keyframes typing-pulse {
  0%,
  100% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
}

@layer base {
  :root {
    --background: 0 0% 100%;
    --foreground: 240 10% 3.9%;

    --muted: 240 4.8% 95.9%;
    --muted-foreground: 240 3.8% 46.1%;

    --popover: 0 0% 100%;
    --popover-foreground: 240 10% 3.9%;

    --card: 0 0% 100%;
    --card-foreground: 240 10% 3.9%;

    --border: 240 5.9% 90%;
    --input: 240 5.9% 90%;

    --primary: 240 5.9% 10%;
    --primary-foreground: 0 0% 98%;

    --secondary: 240 4.8% 95.9%;
    --secondary-foreground: 240 5.9% 10%;

    --accent: 240 4.8% 95.9%;
    --accent-foreground: 240 5.9% 10%;

    --destructive: 0 84.2% 60.2%;
    --destructive-foreground: 0 0% 98%;

    --ring: 240 5% 64.9%;

    --radius: 0.5rem;
  }

  .dark {
    --background: 240 10% 3.9%;
    --foreground: 0 0% 98%;

    --muted: 240 3.7% 15.9%;
    --muted-foreground: 240 5% 64.9%;

    --popover: 240 10% 3.9%;
    --popover-foreground: 0 0% 98%;

    --card: 240 10% 3.9%;
    --card-foreground: 0 0% 98%;

    --border: 240 3.7% 15.9%;
    --input: 240 3.7% 15.9%;

    --primary: 0 0% 98%;
    --primary-foreground: 240 5.9% 10%;

    --secondary: 240 3.7% 15.9%;
    --secondary-foreground: 0 0% 98%;

    --accent: 240 3.7% 15.9%;
    --accent-foreground: 0 0% 98%;

    --destructive: 0 62.8% 30.6%;
    --destructive-foreground: 0 85.7% 97.3%;

    --ring: 240 3.7% 15.9%;
  }
}

@layer base {
  * {
    @apply border-border;
  }
  body {
    @apply bg-background text-foreground;
  }
}

.hexagon {
  @apply inline-block;
  clip-path: polygon(50% 0%, 90% 20%, 90% 80%, 50% 100%, 10% 80%, 10% 20%);
}

.preview {
  @apply z-10 duration-500 lg:hover:z-[99999] lg:hover:scale-[200%];
}

.animal-title {
  background: #eb8a00;
  background: linear-gradient(90deg, #eb8a00 15%, #fcbd1a 50%, #eb8a00 85%);
  height: 50px;
}

.project-title {
  background: #4c7d39;
  background: linear-gradient(90deg, #4c7d39 15%, #1e541d 50%, #4c7d39 85%);
  color: #fff;
  height: 50px;
}

.sponsor-title {
  background: #006999;
  background: linear-gradient(90deg, #6596c0, #006999 50%, #6596c0);
  height: 50px;
  color: #fff;
}
