/* ==================================================================
   RevoTwo design tokens ("The Quiet Control Room").
   Same system as fwdia / Magimage; RevoTwo owns deep indigo.
   No colour, radius or font literals outside this file, except
   derived color-mix() values. See docs/DESIGN.md.
   ================================================================== */

:root {
    color-scheme: light;

    --rv-paper: #f3f5f9;
    --rv-paper-deep: #e9edf3;
    --rv-surface: #ffffff;
    --rv-surface-sunk: #f6f8fb;

    --rv-ink: #101828;
    --rv-ink-soft: #475467;
    --rv-ink-faint: #667085;

    --rv-accent: #3b3fb6;
    --rv-accent-dark: #2e318f;
    --rv-accent-soft: #ecedfb;
    --rv-accent-contrast: #ffffff;

    /* severity: issue / opportunity / above target */
    --rv-danger: #c4320a;
    --rv-danger-soft: #fef0ea;
    --rv-warn: #8a4b00;
    --rv-warn-mark: #f5a524;
    --rv-warn-soft: #fff4dc;
    --rv-success: #067647;
    --rv-success-soft: #e7f6ee;
    --rv-live: #17b26a;

    /* platforms: small marks and chart series only */
    --rv-google: #1a73e8;
    --rv-meta: #0866ff;

    /* chart series (validated pairs, see docs/DESIGN.md) */
    --rv-series-1: #3b3fb6;
    --rv-series-2: #17b26a;
    --rv-series-3: #f5a524;
    --rv-series-4: #c4320a;
    --rv-grid: #e4e7ec;

    --rv-border: #e4e7ec;
    --rv-border-strong: #d0d5dd;
    --rv-line: color-mix(in srgb, var(--rv-border) 80%, transparent);

    --rv-font: -apple-system, BlinkMacSystemFont, 'Segoe UI Variable Text', 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    --rv-font-display: -apple-system, BlinkMacSystemFont, 'Segoe UI Variable Display', 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    --rv-font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;

    --rv-radius-xs: 5px;
    --rv-radius-sm: 8px;
    --rv-radius-md: 12px;
    --rv-radius-lg: 16px;
    --rv-radius-pill: 999px;
    --rv-btn-radius: 10px;

    --rv-shadow-sm: 0 1px 2px rgba(16, 24, 40, .05), 0 1px 3px rgba(16, 24, 40, .04);
    --rv-shadow-md: 0 12px 32px -12px rgba(16, 24, 40, .18), 0 2px 6px rgba(16, 24, 40, .04);
    --rv-ring: 0 0 0 3px color-mix(in srgb, var(--rv-accent) 24%, transparent);

    --rv-dur: .16s;
    --rv-ease: cubic-bezier(.2, .7, .3, 1);
    --rv-sidebar-w: 264px;
    --rv-gutter: clamp(16px, 3.2vw, 40px);
    --rv-maxw: 1240px;
    --rv-tabbar-h: 64px;
}

/* Dark mode: follows the system unless the user picked a theme (data-theme on <html>). */
@media (prefers-color-scheme: dark) {
    :root:not([data-theme="light"]) {
        color-scheme: dark;
        --rv-paper: #0e1220;
        --rv-paper-deep: #1a2033;
        --rv-surface: #151a2b;
        --rv-surface-sunk: #11162480;
        --rv-ink: #eef1f8;
        --rv-ink-soft: #b4bccd;
        --rv-ink-faint: #8a93a8;
        --rv-accent: #8f93ff;
        --rv-accent-dark: #b3b6ff;
        --rv-accent-soft: #23264d;
        --rv-accent-contrast: #0e1220;
        --rv-danger: #ff8a65;
        --rv-danger-soft: #3a1c14;
        --rv-warn: #ffc56b;
        --rv-warn-soft: #36290f;
        --rv-success: #5fd39a;
        --rv-success-soft: #12301f;
        --rv-series-1: #8f93ff;
        --rv-grid: #262d42;
        --rv-border: #262d42;
        --rv-border-strong: #343c55;
        --rv-shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);
        --rv-shadow-md: 0 12px 32px -12px rgba(0, 0, 0, .6);
    }
}
:root[data-theme="dark"] {
    color-scheme: dark;
    --rv-paper: #0e1220;
    --rv-paper-deep: #1a2033;
    --rv-surface: #151a2b;
    --rv-surface-sunk: #11162480;
    --rv-ink: #eef1f8;
    --rv-ink-soft: #b4bccd;
    --rv-ink-faint: #8a93a8;
    --rv-accent: #8f93ff;
    --rv-accent-dark: #b3b6ff;
    --rv-accent-soft: #23264d;
    --rv-accent-contrast: #0e1220;
    --rv-danger: #ff8a65;
    --rv-danger-soft: #3a1c14;
    --rv-warn: #ffc56b;
    --rv-warn-soft: #36290f;
    --rv-success: #5fd39a;
    --rv-success-soft: #12301f;
    --rv-series-1: #8f93ff;
    --rv-grid: #262d42;
    --rv-border: #262d42;
    --rv-border-strong: #343c55;
    --rv-shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);
    --rv-shadow-md: 0 12px 32px -12px rgba(0, 0, 0, .6);
}
