@import "tailwindcss";
@plugin "@tailwindcss/typography";

@theme inline {
  --font-sans: var(--font-outfit);
  --font-mono: var(--font-red-hat-mono);

  --color-primary: var(--primary);
  --color-secondary: var(--secondary);
  --color-tertiary: var(--tertiary);

  --color-button: var(--button);
  --color-button-active: var(--button-active);
}

@theme {
  --animate-reveal: reveal 0.3s forwards ease-in-out;

  @keyframes reveal {
    0% {
      opacity: 0;
      transform: translateY(20px);
      filter: blur(4px);
    }
    100% {
      opacity: 1;
      transform: translateY(0px);
      filter: blur(0px);
    }
  }
}

:root {
  color-scheme: light dark;
  --primary: light-dark(oklch(0.855 0.01 264), oklch(0.145 0.01 264));
  --secondary: light-dark(oklch(0.145 0.01 264), oklch(0.855 0.01 264));
  --tertiary: light-dark(oklch(0.456 0.01 264), oklch(0.556 0.01 264));

  --button: light-dark(oklch(0.731 0.01 264), oklch(0.269 0.01 264));
  --button-active: light-dark(oklch(0.629 0.01 264), oklch(0.371 0.01 264));
}

@media (prefers-color-scheme: dark) {
  .astro-code,
  .astro-code span {
    color: var(--shiki-dark) !important;
    background-color: var(--shiki-dark-bg) !important;
    font-style: var(--shiki-dark-font-style) !important;
    font-weight: var(--shiki-dark-font-weight) !important;
    text-decoration: var(--shiki-dark-text-decoration) !important;
  }
}

@layer utilities {
  .underline {
    @apply underline decoration-2 underline-offset-2;
  }
}

@media print {
  a {
    text-decoration: none;
  }
}

@view-transition {
  navigation: auto;
}
