:root {
    --color-primary: #5ac264;
    --color-secondary: #dc7544;
    --color-text-main: #181d37;
    --color-accent: #2983a4;
    --color-bg: #14203d;
}

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

@keyframes fade-in {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

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

.logo-pulse {
    animation: fade-in-logo 2s ease-out forwards, pulse-opacity 6s infinite ease-in-out 2s;
    opacity: 0; /* Initial state before animation */
}

.form-container {
    animation: fade-in 1.5s ease-out forwards;
}

/* Custom Utilities using Palette */
.text-main { color: var(--color-text-main); }
.bg-primary { background-color: var(--color-primary); }
.bg-primary:hover { filter: brightness(90%); }
.border-primary { border-color: var(--color-primary); }
.ring-primary:focus { --tw-ring-color: var(--color-primary); }