/* sultanops design tokens — generated from src/_data/brand.js */
:root {
    color-scheme: light;
--color-bg: #F6F5F1;
    --color-surface: #FFFFFF;
    --color-sunken: #EEECE6;
    --color-ink: #15171B;
    --color-muted: #5C6270;
    --color-faint: #636873;
    --color-line: #E1DED6;
    --color-line-strong: #CDC9BE;
    --color-accent: #0B7A5B;
    --color-accent-ink: #FFFFFF;
    --color-accent-soft: #E1F1EA;
    --color-warn: #94590A;
    --color-warn-soft: #FAEFDC;
    --color-danger: #B4362B;
    --color-danger-soft: #FBE7E4;
    --hl-yellow: #FFE98F;
    --hl-green: #BDEBC8;
    --hl-blue: #BFE0FF;
    --hl-pink: #FFCFE0;

    --code-bg: #0B0D10;
    --code-bar: #12151A;
    --code-line: #20242B;
    --code-ink: #D5DAE1;
    --code-muted: #7C8491;
    --code-accent: #46D19F;
    --code-danger: #F07A6E;
    --code-comment: #6B8F71;
    --code-keyword: #7FB4FF;
    --code-string: #E3B27C;
    --code-number: #C5A3FF;
    --code-function: #5FD7A7;
    --code-variable: #9FD3F5;
    --code-operator: #AAB2BF;
    --code-hl-yellow: #5A4A12;
    --code-hl-green: #17472F;
    --code-hl-blue: #173F66;
    --code-hl-pink: #5E2540;

    --font-sans: 'IBM Plex Sans Arabic', 'IBM Plex Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;
    --font-mono: 'IBM Plex Mono', 'IBM Plex Sans Arabic', ui-monospace, 'SFMono-Regular', Consolas, monospace;

    --radius-sm: 6px;
    --radius-md: 10px;
    --radius-lg: 16px;

    --ease-out: cubic-bezier(0.2, 0.8, 0.2, 1);
    --ease-snappy: var(--ease-out);
    --ease-soft: var(--ease-out);
    --ease-gentle: var(--ease-out);
    --dur-snappy: 520ms;
    --dur-soft: 690ms;
    --dur-gentle: 584ms;
}

/* Spring easings, sampled from closed-form spring responses. */
@supports (transition-timing-function: linear(0, 1)) {
    :root {
        --ease-snappy: linear(0, 0.043, 0.1468, 0.2809, 0.4234, 0.5599, 0.6818, 0.7845, 0.8669, 0.9298, 0.9753, 1.0062, 1.0253, 1.0354, 1.0389, 1.0381, 1.0345, 1.0295, 1.0239, 1.0185, 1.0136, 1.0094, 1.0059, 1.0033, 1.0014, 1, 0.9992, 0.9987, 0.9985, 0.9985, 0.9986, 0.9988, 1);
        --ease-soft: linear(0, 0.0346, 0.1149, 0.2158, 0.3218, 0.4241, 0.5178, 0.6007, 0.6724, 0.7333, 0.7843, 0.8265, 0.8611, 0.8892, 0.912, 0.9303, 0.945, 0.9567, 0.966, 0.9734, 0.9792, 0.9837, 0.9873, 0.9901, 0.9923, 0.994, 0.9954, 0.9964, 0.9972, 0.9979, 0.9984, 0.9987, 1);
        --ease-gentle: linear(0, 0.0204, 0.0715, 0.1413, 0.2208, 0.3039, 0.3861, 0.4646, 0.5376, 0.6042, 0.6639, 0.7167, 0.7629, 0.8029, 0.8372, 0.8664, 0.891, 0.9117, 0.9289, 0.9431, 0.9548, 0.9644, 0.9722, 0.9784, 0.9834, 0.9874, 0.9906, 0.9931, 0.995, 0.9964, 0.9976, 0.9984, 1);
    }
}

/* Dark: follows the system unless the reader picked a theme with the toggle. */
@media (prefers-color-scheme: dark) {
    :root:not([data-theme="light"]) {
        color-scheme: dark;
--color-bg: #0D0F12;
    --color-surface: #14171C;
    --color-sunken: #101216;
    --color-ink: #E8EAED;
    --color-muted: #9BA1AC;
    --color-faint: #7D838F;
    --color-line: #23272E;
    --color-line-strong: #323843;
    --color-accent: #46D19F;
    --color-accent-ink: #07150F;
    --color-accent-soft: #10251D;
    --color-warn: #E6A84B;
    --color-warn-soft: #2A2113;
    --color-danger: #F07A6E;
    --color-danger-soft: #2C1513;
    --hl-yellow: #5A4A12;
    --hl-green: #17472F;
    --hl-blue: #173F66;
    --hl-pink: #5E2540;
    }
}

:root[data-theme="dark"] {
    color-scheme: dark;
--color-bg: #0D0F12;
    --color-surface: #14171C;
    --color-sunken: #101216;
    --color-ink: #E8EAED;
    --color-muted: #9BA1AC;
    --color-faint: #7D838F;
    --color-line: #23272E;
    --color-line-strong: #323843;
    --color-accent: #46D19F;
    --color-accent-ink: #07150F;
    --color-accent-soft: #10251D;
    --color-warn: #E6A84B;
    --color-warn-soft: #2A2113;
    --color-danger: #F07A6E;
    --color-danger-soft: #2C1513;
    --hl-yellow: #5A4A12;
    --hl-green: #17472F;
    --hl-blue: #173F66;
    --hl-pink: #5E2540;
}
