:root,
body,
body.rz-dark,
body[data-riento-theme="dark"] {
    color-scheme: dark;

    --r-bg-app: #0F1113;
    --r-bg-sidebar: #111417;
    --r-bg-surface-1: #15191D;
    --r-bg-surface-2: #1A1F24;
    --r-bg-surface-3: #20262C;
    --r-bg-hover: #232A31;
    --r-bg-selected: #242A30;

    --r-border-subtle: #2A3138;
    --r-border-strong: #39424C;
    --r-border-selected: #8B5CF6;

    --r-text-primary: #F2F4F6;
    --r-text-secondary: #B4BCC4;
    --r-text-muted: #7E8892;
    --r-text-disabled: #5E6770;

    --r-accent-primary: #8B5CF6;
    --r-accent-focus: #A78BFA;
    --r-accent-soft: #6D28D9;

    --r-shadow-soft: 0 12px 32px rgba(0, 0, 0, 0.28);
    --r-shadow-panel: 0 8px 22px rgba(0, 0, 0, 0.22);

    --r-radius-sm: 6px;
    --r-radius-md: 10px;
    --r-radius-lg: 14px;
    --r-radius-xl: 18px;

    --r-space-1: 4px;
    --r-space-2: 8px;
    --r-space-3: 12px;
    --r-space-4: 16px;
    --r-space-5: 20px;
    --r-space-6: 24px;
    --r-space-8: 32px;

    --r-sidebar-width-full: 240px;
    --r-sidebar-width-medium: 216px;
    --r-sidebar-width-compact: 76px;
    --r-sidebar-width: var(--r-sidebar-width-full);
    --r-sidebar-brand-height: 64px;
    --r-workspace-toolbar-height: 64px;

    --r-list-pane-min: 580px;
    --r-list-pane-fluid: 28vw;
    --r-list-pane-max: 860px;
    --r-detail-pane-min: 760px;
    --r-list-pane-width: clamp(var(--r-list-pane-min), var(--r-list-pane-fluid), var(--r-list-pane-max));
    --r-list-pane-max-ultrawide: 1040px;

    --r-font-family: Inter, "Segoe UI", Roboto, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;

    --r-status-success-text: #9CEFAE;
    --r-status-success-bg: rgba(118, 224, 140, 0.16);
    --r-status-success-border: rgba(118, 224, 140, 0.58);
    --r-status-success-dot: #76E08C;

    --r-status-danger-text: #FFAAAA;
    --r-status-danger-bg: rgba(255, 138, 138, 0.17);
    --r-status-danger-border: rgba(255, 138, 138, 0.62);
    --r-status-danger-dot: #FF8A8A;

    --r-status-warning-text: #F8D888;
    --r-status-warning-bg: rgba(245, 201, 107, 0.18);
    --r-status-warning-border: rgba(245, 201, 107, 0.62);
    --r-status-warning-dot: #F5C96B;

    --r-status-info-text: #A9D2FF;
    --r-status-info-bg: rgba(121, 183, 255, 0.17);
    --r-status-info-border: rgba(121, 183, 255, 0.60);
    --r-status-info-dot: #79B7FF;

    --r-status-neutral-text: #D0D6DD;
    --r-status-neutral-bg: rgba(196, 204, 212, 0.13);
    --r-status-neutral-border: rgba(196, 204, 212, 0.45);
    --r-status-neutral-dot: #C4CCD4;

    --r-status-purple-text: #D8C2FF;
    --r-status-purple-bg: rgba(199, 167, 255, 0.17);
    --r-status-purple-border: rgba(199, 167, 255, 0.58);
    --r-status-purple-dot: #C7A7FF;

    --r-status-cyan-text: #A7F4EA;
    --r-status-cyan-bg: rgba(132, 225, 213, 0.16);
    --r-status-cyan-border: rgba(132, 225, 213, 0.58);
    --r-status-cyan-dot: #84E1D5;

    --r-badge-success-bg: var(--r-status-success-bg);
    --r-badge-success-fg: var(--r-status-success-text);
    --r-badge-success-border: var(--r-status-success-border);
    --r-badge-info-bg: var(--r-status-info-bg);
    --r-badge-info-fg: var(--r-status-info-text);
    --r-badge-info-border: var(--r-status-info-border);
    --r-badge-warning-bg: var(--r-status-warning-bg);
    --r-badge-warning-fg: var(--r-status-warning-text);
    --r-badge-warning-border: var(--r-status-warning-border);
    --r-badge-danger-bg: var(--r-status-danger-bg);
    --r-badge-danger-fg: var(--r-status-danger-text);
    --r-badge-danger-border: var(--r-status-danger-border);
    --r-badge-neutral-bg: var(--r-status-neutral-bg);
    --r-badge-neutral-fg: var(--r-status-neutral-text);
    --r-badge-neutral-border: var(--r-status-neutral-border);
    --r-badge-purple-bg: var(--r-status-purple-bg);
    --r-badge-purple-fg: var(--r-status-purple-text);
    --r-badge-purple-border: var(--r-status-purple-border);
    --r-badge-cyan-bg: var(--r-status-cyan-bg);
    --r-badge-cyan-fg: var(--r-status-cyan-text);
    --r-badge-cyan-border: var(--r-status-cyan-border);

    --app-bg: var(--r-bg-app);
    --app-surface: var(--r-bg-surface-1);
    --app-surface-2: var(--r-bg-surface-2);
    --app-surface-3: var(--r-bg-surface-3);
    --app-border: var(--r-border-subtle);
    --app-border-strong: var(--r-border-strong);
    --app-text: var(--r-text-primary);
    --app-text-muted: var(--r-text-secondary);
    --app-primary: var(--r-accent-primary);
    --app-primary-hover: var(--r-accent-focus);
    --rz-primary: var(--r-accent-primary);
    --rz-primary-light: rgba(139, 92, 246, 0.18);
    --rz-primary-lighter: rgba(139, 92, 246, 0.10);
    --rz-primary-dark: #7C3AED;
    --rz-primary-darker: #6D28D9;
    --rz-text-color: var(--r-text-primary);
    --rz-body-background-color: var(--r-bg-app);
    --rz-base-background-color: var(--r-bg-surface-1);
    --rz-panel-background-color: var(--r-bg-surface-1);
    --rz-input-background-color: var(--r-bg-surface-2);
    --rz-input-border-color: var(--r-border-strong);
    --rz-border-color: var(--r-border-subtle);
}

body.rz-light,
body[data-riento-theme="light"] {
    color-scheme: light;

    --r-bg-app: #F6F7FB;
    --r-bg-sidebar: #FFFFFF;
    --r-bg-surface-1: #FFFFFF;
    --r-bg-surface-2: #F3F5F8;
    --r-bg-surface-3: #E9EDF3;
    --r-bg-hover: #EEF1F6;
    --r-bg-selected: #ECE7FF;

    --r-border-subtle: #D9DEE7;
    --r-border-strong: #BFC7D4;
    --r-border-selected: #7C3AED;

    --r-text-primary: #171A1F;
    --r-text-secondary: #4F5965;
    --r-text-muted: #7A8490;
    --r-text-disabled: #A4ACB5;

    --r-accent-primary: #7C3AED;
    --r-accent-focus: #6D28D9;
    --r-accent-soft: #EDE9FE;

    --r-shadow-soft: 0 12px 32px rgba(15, 23, 42, 0.12);
    --r-shadow-panel: 0 8px 22px rgba(15, 23, 42, 0.10);

    --r-status-success-text: #166534;
    --r-status-success-bg: #DCFCE7;
    --r-status-success-border: #86EFAC;
    --r-status-success-dot: #16A34A;

    --r-status-danger-text: #991B1B;
    --r-status-danger-bg: #FEE2E2;
    --r-status-danger-border: #FCA5A5;
    --r-status-danger-dot: #DC2626;

    --r-status-warning-text: #92400E;
    --r-status-warning-bg: #FEF3C7;
    --r-status-warning-border: #FCD34D;
    --r-status-warning-dot: #D97706;

    --r-status-info-text: #075985;
    --r-status-info-bg: #E0F2FE;
    --r-status-info-border: #7DD3FC;
    --r-status-info-dot: #0284C7;

    --r-status-neutral-text: #374151;
    --r-status-neutral-bg: #E5E7EB;
    --r-status-neutral-border: #CBD5E1;
    --r-status-neutral-dot: #64748B;

    --r-status-purple-text: #5B21B6;
    --r-status-purple-bg: #EDE9FE;
    --r-status-purple-border: #C4B5FD;
    --r-status-purple-dot: #7C3AED;

    --r-status-cyan-text: #155E75;
    --r-status-cyan-bg: #CFFAFE;
    --r-status-cyan-border: #67E8F9;
    --r-status-cyan-dot: #0891B2;

    --r-badge-success-bg: var(--r-status-success-bg);
    --r-badge-success-fg: var(--r-status-success-text);
    --r-badge-success-border: var(--r-status-success-border);
    --r-badge-info-bg: var(--r-status-info-bg);
    --r-badge-info-fg: var(--r-status-info-text);
    --r-badge-info-border: var(--r-status-info-border);
    --r-badge-warning-bg: var(--r-status-warning-bg);
    --r-badge-warning-fg: var(--r-status-warning-text);
    --r-badge-warning-border: var(--r-status-warning-border);
    --r-badge-danger-bg: var(--r-status-danger-bg);
    --r-badge-danger-fg: var(--r-status-danger-text);
    --r-badge-danger-border: var(--r-status-danger-border);
    --r-badge-neutral-bg: var(--r-status-neutral-bg);
    --r-badge-neutral-fg: var(--r-status-neutral-text);
    --r-badge-neutral-border: var(--r-status-neutral-border);
    --r-badge-purple-bg: var(--r-status-purple-bg);
    --r-badge-purple-fg: var(--r-status-purple-text);
    --r-badge-purple-border: var(--r-status-purple-border);
    --r-badge-cyan-bg: var(--r-status-cyan-bg);
    --r-badge-cyan-fg: var(--r-status-cyan-text);
    --r-badge-cyan-border: var(--r-status-cyan-border);

    --app-bg: var(--r-bg-app);
    --app-surface: var(--r-bg-surface-1);
    --app-surface-2: var(--r-bg-surface-2);
    --app-surface-3: var(--r-bg-surface-3);
    --app-border: var(--r-border-subtle);
    --app-border-strong: var(--r-border-strong);
    --app-text: var(--r-text-primary);
    --app-text-muted: var(--r-text-secondary);
    --app-primary: var(--r-accent-primary);
    --app-primary-hover: var(--r-accent-focus);
    --rz-primary: var(--r-accent-primary);
    --rz-primary-light: rgba(124, 58, 237, 0.16);
    --rz-primary-lighter: rgba(124, 58, 237, 0.09);
    --rz-primary-dark: #6D28D9;
    --rz-primary-darker: #5B21B6;
    --rz-text-color: var(--r-text-primary);
    --rz-body-background-color: var(--r-bg-app);
    --rz-base-background-color: var(--r-bg-surface-1);
    --rz-panel-background-color: var(--r-bg-surface-1);
    --rz-input-background-color: var(--r-bg-surface-1);
    --rz-input-border-color: var(--r-border-strong);
    --rz-border-color: var(--r-border-subtle);
}
