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

@layer base {
    :root {
        --background: 0 0% 100%;
        --foreground: 240 10% 3.9%;
        --card: 0 0% 100%;
        --card-foreground: 240 10% 3.9%;
        --popover: 0 0% 100%;
        --popover-foreground: 240 10% 3.9%;
        --primary: 240 5.9% 10%;
        --primary-foreground: 0 0% 98%;
        --secondary: 240 4.8% 95.9%;
        --secondary-foreground: 240 5.9% 10%;
        --muted: 240 4.8% 95.9%;
        --muted-foreground: 240 3.8% 46.1%;
        --accent: 240 4.8% 95.9%;
        --accent-foreground: 240 5.9% 10%;
        --destructive: 0 84.2% 60.2%;
        --destructive-foreground: 0 0% 98%;
        --border: 240 5.9% 90%;
        --input: 240 5.9% 90%;
        --ring: 240 5% 64.9%;
        --radius: 0.5rem;
        --sidebar-width: 16rem;
        --sidebar-collapsed-width: 4rem;
    }

    .dark {
        --background: 240 10% 3.9%;
        --foreground: 0 0% 98%;
        --card: 240 10% 3.9%;
        --card-foreground: 0 0% 98%;
        --popover: 240 10% 3.9%;
        --popover-foreground: 0 0% 98%;
        --primary: 0 0% 98%;
        --primary-foreground: 240 5.9% 10%;
        --secondary: 240 3.7% 15.9%;
        --secondary-foreground: 0 0% 98%;
        --muted: 240 3.7% 15.9%;
        --muted-foreground: 240 5% 64.9%;
        --accent: 240 3.7% 15.9%;
        --accent-foreground: 0 0% 98%;
        --destructive: 0 62.8% 30.6%;
        --destructive-foreground: 0 0% 98%;
        --border: 240 3.7% 15.9%;
        --input: 240 3.7% 15.9%;
        --ring: 240 4.9% 83.9%;
        --sidebar-width: 16rem;
        --sidebar-collapsed-width: 4rem;
    }
}

@layer base {
    * {
        @apply border-border;
    }
    body {
        @apply bg-background text-foreground;
        font-feature-settings: "rlig" 1, "calt" 1;
    }
}

@keyframes fade-out {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}

@keyframes slide-out-to-top {
    from {
        transform: translateY(0) translateX(-50%);
    }
    to {
        transform: translateY(-100%) translateX(-50%);
    }
}

@keyframes float {
    0%, 100% {
        transform: translateY(0) translateX(0);
    }
    50% {
        transform: translateY(-20px) translateX(10px);
    }
}

@keyframes twinkle {
    0%, 100% {
        opacity: 0.2;
    }
    50% {
        opacity: 1;
    }
}

@keyframes sparkle {
    0%, 100% {
        box-shadow: 0 0 4px #FFD700, 0 0 8px #FFD700;
    }
    50% {
        box-shadow: 0 0 8px #FFD700, 0 0 12px #DAA520;
    }
}

.stardust {
    position: absolute;
    width: 2px;
    height: 2px;
    background: linear-gradient(to right, #FFD700, #DAA520);
    border-radius: 50%;
   /* animation: twinkle 3s infinite, sparkle 4s infinite; */
    box-shadow: 0 0 4px #FFD700;
}
@media (prefers-color-scheme: dark) {
    .stardust {
        background: linear-gradient(to right, #FFE55C, #FFB52E);
        box-shadow: 0 0 6px #FFE55C;
    }
}
.stardust::after {
    content: '';
    position: absolute;
    top: -1px;
    left: -1px;
    right: -1px;
    bottom: -1px;
    border-radius: 50%;
/*    animation: float 6s infinite; */
    background: inherit;
    filter: blur(1px);
}

.fade-out {
    animation: fade-out 300ms ease-in-out forwards;
}

.slide-out-to-top-2 {
    animation: slide-out-to-top 300ms ease-in-out forwards;
}

