:root {
    /* Typography */
    --font-heading: 'Montserrat', 'Plus Jakarta Sans', system-ui, -apple-system, sans-serif;
    --font-body: 'Plus Jakarta Sans', 'Montserrat', system-ui, -apple-system, sans-serif;

    /* Radii & spacing */
    --radius-sm: 8px;
    --radius-md: 12px;
    --radius-lg: 16px;
    --border-width: 1px;

    /* Shadows */
    --shadow-soft: 0 10px 30px rgba(0, 0, 0, 0.25);
}

:root[data-theme="light"] {
    --bg-app: #FFFFFF;
    --bg-surface-1: #F7F8FF;
    --bg-surface-2: #EEE6FF;
    --border-color: #DFD5EF;

    --text-primary: #141425;
    --text-secondary: #3B3B55;
    --text-muted: #676480;
    --text-on-accent: #ffffff;

    --primary: #4C18AE;
    --primary-hover: #7302FF;
    --secondary-accent: #04EFC4;
    --accent-extra: #BA32EC;
    --green-400: #008000;
    --purple-400: #800080;
    --blue-400: #0000ff;
    --gray-400: #808080;
    --gray-800: #d0dbe7;
    --border-strong: #c7badf;
    --surface-elevated: #ffffff;
    --surface-subtle: #f2ecff;
    --row-hover-soft: rgba(115, 2, 255, 0.08);
    --row-selected-soft: rgba(115, 2, 255, 0.14);
    --table-header-bg: rgba(115, 2, 255, 0.06);
    --table-row-bg: transparent;
    --table-row-hover-bg: rgba(115, 2, 255, 0.09);
    --table-divider: #dfd5ef;
    --table-text-muted: #5b5e7a;

    --success: #6BD35F;
    --warning: #F8D64A;
    --error: #EB5545;
    --info: #3B85F7;

    --success-bg: #EEFFEE;
    --warning-bg: #FFFDEB;
    --error-bg: #FFF3F3;
    --info-bg: #F0F9FF;
}

:root[data-theme="dark"] {
    --bg-app: #0B0B0F;
    --bg-surface-1: #12121A;
    --bg-surface-2: #171725;
    --border-color: #24243A;

    --text-primary: #F2F3FF;
    --text-secondary: #B6B8D6;
    --text-muted: #8C8FB3;
    --text-on-accent: #ffffff;

    --primary: #7302FF;
    --primary-hover: #4C18AE;
    --secondary-accent: #04EFC4;
    --accent-extra: #BA32EC;
    --green-400: #34d399;
    --purple-400: #c084fc;
    --blue-400: #60a5fa;
    --gray-400: #9ca3af;
    --gray-800: #1f2937;
    --border-strong: #323252;
    --surface-elevated: #171725;
    --surface-subtle: #1f1f31;
    --row-hover-soft: rgba(186, 50, 236, 0.14);
    --row-selected-soft: rgba(186, 50, 236, 0.2);
    --table-header-bg: rgba(186, 50, 236, 0.08);
    --table-row-bg: transparent;
    --table-row-hover-bg: rgba(186, 50, 236, 0.15);
    --table-divider: #2a2a43;
    --table-text-muted: #a4a7c5;

    --success: #6BD35F;
    --warning: #F8D64A;
    --error: #EB5545;
    --info: #3B85F7;

    --success-bg: rgba(107, 211, 95, 0.12);
    --warning-bg: rgba(248, 214, 74, 0.14);
    --error-bg: rgba(235, 85, 69, 0.14);
    --info-bg: rgba(59, 133, 247, 0.12);
}
