:root {
    /* Neo-Fintech Light Theme Palette - Clean and Modern */

    /* iOS Safe Area Insets */
    --safe-area-inset-top: env(safe-area-inset-top, 0px);
    --safe-area-inset-bottom: env(safe-area-inset-bottom, 0px);
    --safe-area-inset-left: env(safe-area-inset-left, 0px);
    --safe-area-inset-right: env(safe-area-inset-right, 0px);

    /* Backgrounds */
    --bg-app: #f8f9fa;
    /* Light grey background */
    --bg-sidebar: #ffffff;
    /* White sidebar */
    --bg-card: #ffffff;
    /* White card background */
    --bg-card-hover: #f1f5f9;
    /* Light hover state */
    --bg-input: #f8f9fa;
    /* Light input background */

    /* Accents */
    --accent-primary: #4f46e5;
    /* Indigo */
    --accent-secondary: #7c3aed;
    /* Violet */
    --accent-success: #10b981;
    /* Emerald */
    --accent-danger: #ef4444;
    /* Red */
    --accent-warning: #f59e0b;
    /* Amber */

    /* Gradients */
    --gradient-primary: linear-gradient(135deg, #4f46e5 0%, #7c3aed 100%);
    --gradient-success: linear-gradient(135deg, #10b981 0%, #059669 100%);
    --gradient-danger: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
    --gradient-glow: radial-gradient(circle at center, rgba(79, 70, 229, 0.1) 0%, transparent 70%);

    /* Text */
    --text-primary: #1e293b;
    /* Dark grey for text */
    --text-secondary: #475569;
    /* Medium grey */
    --text-tertiary: #64748b;
    /* Light grey */
    --text-on-accent: #ffffff;
    /* White on colored backgrounds */

    /* Borders & Separators */
    --border-subtle: #e2e8f0;
    /* Light grey border */
    --border-focus: rgba(79, 70, 229, 0.5);
    /* Indigo focus border */

    /* Typography */
    --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    --font-mono: 'JetBrains Mono', monospace;

    /* Spacing */
    --space-xs: 4px;
    --space-sm: 8px;
    --space-md: 16px;
    --space-lg: 24px;
    --space-xl: 32px;
    --sidebar-width: 260px;

    /* Radius */
    --radius-sm: 6px;
    --radius-md: 12px;
    --radius-lg: 16px;
    --radius-full: 9999px;

    /* Shadows & Effects */
    --shadow-card: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06);
    --shadow-glow: 0 0 20px rgba(79, 70, 229, 0.15);
    --backdrop-blur: blur(12px);

    /* Transitions */
    --ease-out: cubic-bezier(0.215, 0.61, 0.355, 1);
    --duration-fast: 200ms;
    --duration-normal: 300ms;
}

/* Global Reset */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: var(--font-sans);
    background-color: var(--bg-app);
    color: var(--text-primary);
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
}

/* Scrollbar */
::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

::-webkit-scrollbar-track {
    background: var(--bg-app);
}

::-webkit-scrollbar-thumb {
    background: #cbd5e1;
    border-radius: var(--radius-full);
}

::-webkit-scrollbar-thumb:hover {
    background: #94a3b8;
}