/* Glassmorphism and Custom UI Styles */

:root {
    --primary-color: #f43f5e;
}

body {
    background-image: 
        radial-gradient(at 0% 0%, hsla(343,100%,76%,0.05) 0, transparent 50%), 
        radial-gradient(at 50% 0%, hsla(225,100%,77%,0.05) 0, transparent 50%), 
        radial-gradient(at 100% 0%, hsla(339,49%,30%,0.05) 0, transparent 50%);
    background-attachment: fixed;
}



/* Custom Scrollbar */
::-webkit-scrollbar {
    width: 6px;
}

::-webkit-scrollbar-track {
    @apply bg-slate-100 dark:bg-slate-900;
}

::-webkit-scrollbar-thumb {
    @apply bg-slate-300 dark:bg-slate-700 rounded-full hover:bg-primary-400;
}

/* Animations */
@keyframes fadeIn {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}

.animate-fade-in {
    animation: fadeIn 0.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

/* Loading Spinner */
.loader {
    border: 3px solid rgba(244, 63, 94, 0.1);
    border-top: 3px solid var(--primary-color);
    border-radius: 50%;
    width: 24px;
    height: 24px;
    animation: spin 0.8s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Drag & Drop Zone */
.dropzone {
    @apply border-2 border-dashed border-slate-200 dark:border-slate-700 rounded-[2.5rem] p-20 text-center transition-all bg-white/40 dark:bg-slate-800/40 backdrop-blur-xl shadow-inner;
}

.dropzone.drag-over {
    @apply border-primary-500 bg-primary-50/30 dark:bg-primary-900/10 scale-[1.02];
}

/* Glass inputs */
input[type="text"], input[type="password"], input[type="number"], textarea {
    @apply bg-white/50 dark:bg-slate-900/50 backdrop-blur-sm border-slate-200 dark:border-slate-700 focus:border-primary-500 focus:ring-4 focus:ring-primary-500/10 transition-all outline-none;
}
