:root {
    /* Colors */
    --primary-color: #6366f1;
    --secondary-color: #a855f7;
    --text-color: #e0e0e0;
    --text-color-muted: rgba(255, 255, 255, 0.7);
    
    /* Glassmorphism */
    --glass-bg: rgba(30, 30, 30, 0.65);
    --glass-border: rgba(255, 255, 255, 0.2);
    --glass-blur: blur(12px);
    
    /* Transitions */
    --transition-speed: 0.3s;
    
    /* Gradients */
    --primary-gradient: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%);
}

/* Base Reset */
* {
    box-sizing: border-box;
}

body {
    min-height: 100vh;
    margin: 0;
    /* Font family will be set in specific files or here if unified */
}

/* Utility Classes */
.glass {
    background: var(--glass-bg);
    backdrop-filter: var(--glass-blur);
    -webkit-backdrop-filter: var(--glass-blur);
    border: 1px solid var(--glass-border);
}

.text-gradient {
    background: var(--primary-gradient);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

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

.fade-in {
    animation: fadeIn var(--transition-speed) ease-out;
}
