/* Core Fonts and Main Definitions */
body { font-family: 'Inter', sans-serif; }

/* Animations */
@keyframes marquee {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}
.animate-marquee { animation: marquee 15s linear infinite; }

.glow-emerald { text-shadow: 0 0 10px rgba(16, 185, 129, 0.5); }

.typing-dot {
    animation: typing 1.4s infinite ease-in-out both;
}
.typing-dot:nth-child(1) { animation-delay: -0.32s; }
.typing-dot:nth-child(2) { animation-delay: -0.16s; }
@keyframes typing {
    0%, 80%, 100% { transform: scale(0); }
    40% { transform: scale(1); }
}

/* Extracted Inline Utilities */
.mask-radial {
    -webkit-mask-image: radial-gradient(ellipse at center, black 30%, transparent 65%);
    mask-image: radial-gradient(ellipse at center, black 30%, transparent 65%);
}

.filter-map {
    filter: grayscale(10%) contrast(1.1);
}

.custom-scrollbar {
    scrollbar-width: thin;
    scrollbar-color: #475569 #0f172a;
}

.wa-bg {
    background-image: url('https://user-images.githubusercontent.com/15075759/28719144-86dc0f70-73b1-11e7-911d-60d70fcded21.png');
    background-color: #E5DDD5;
}

/* Auth Page overrides */
.auth-body {
    display: flex; justify-content: center; align-items: center; height: 100vh; background: #f8fafc; margin: 0;
}
.auth-form {
    background: #fff; padding: 2rem; border-radius: 12px; box-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1); max-width: 400px; width: 90%;
}
.auth-h2 {
    margin-top: 0; color: #1e293b;
}
.auth-p {
    color: #64748b; font-size: 14px; margin-bottom: 20px;
}
.auth-input {
    padding: 12px; border: 1px solid #cbd5e1; border-radius: 6px; width: 100%; margin-bottom: 1rem; box-sizing: border-box; font-size: 16px;
}
.auth-btn {
    background: #2563eb; color: #fff; padding: 12px 16px; border: none; border-radius: 6px; width: 100%; cursor: pointer; font-size: 16px; font-weight: bold;
}
