@layer reset, base, components, modules, utilities, native, platform;

:root {
  /* Insets - The mobile apps may inject their own custom insets based on native elements on screen, like a floating navigation */
  --custom-safe-inset-top: var(--injected-safe-inset-top, env(safe-area-inset-top, 0px));
  --custom-safe-inset-right: var(--injected-safe-inset-right, env(safe-area-inset-right, 0px));
  --custom-safe-inset-bottom: var(--injected-safe-inset-bottom, env(safe-area-inset-bottom, 0px));
  --custom-safe-inset-left: var(--injected-safe-inset-left, env(safe-area-inset-left, 0px));

  /* Spacing */
  --inline-space: 1ch;
  --inline-space-half: calc(var(--inline-space) / 2);
  --inline-space-double: calc(var(--inline-space) * 2);
  --block-space: 1rem;
  --block-space-half: calc(var(--block-space) / 2);
  --block-space-double: calc(var(--block-space) * 2);

  /* Text */
  --font-sans: "Inter Tight", -apple-system, BlinkMacSystemFont, system-ui, "Segoe UI", "Noto Sans", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";
  --font-display: "Inter Tight", system-ui, sans-serif;
  --font-serif: ui-serif, serif;
  --font-mono: "JetBrains Mono", ui-monospace, monospace;
  --font-display-tracking: -0.035em;
  --font-display-weight: 700;

  /* Typography wire-up (consumed by reset.css and component CSS) */
  --font-family-body: var(--font-sans);
  --font-family-action: var(--font-display);
  --font-family-headers: var(--font-display);
  --line-height-body: 1.5;
  --line-height-headers: 1.15;

  --text-xx-small: 0.55rem;
  --text-x-small: 0.75rem;
  --text-small: 0.85rem;
  --text-normal: 1rem;
  --text-medium: 1.1rem;
  --text-large: 1.5rem;
  --text-x-large: 1.8rem;
  --text-xx-large: 2.5rem;
  --text-display-1: clamp(2.5rem, 5vw, 4.25rem);
  --text-display-2: clamp(2rem, 4vw, 3.25rem);

  @media (max-width: 639px) {
    --text-xx-small: 0.65rem;
    --text-x-small: 0.85rem;
    --text-small: 0.95rem;
    --text-normal: 1.1rem;
    --text-medium: 1.2rem;
    --text-large: 1.5rem;
    --text-x-large: 1.8rem;
    --text-xx-large: 2.5rem;
  }

  /* Borders */
  --color-border-subtle: var(--color-ink-lightest);
  --color-border: var(--color-ink-lighter);
  --color-border-strong: var(--color-ink-light);
  --border: 1px solid var(--color-border);

  /* Shadows */
  --shadow: 0 0 0 1px oklch(var(--lch-black) / 5%),
            0 0.2em 0.2em oklch(var(--lch-black) / 5%),
            0 0.4em 0.4em oklch(var(--lch-black) / 5%),
            0 0.8em 0.8em oklch(var(--lch-black) / 5%);

  /* Components */
  --btn-size: 2.65em;
  --footer-height: 2.65rem;
  --tray-size: clamp(12rem, 25dvw, 24rem);

  /* Focus rings for keyboard navigation */
  --focus-ring-color: var(--color-link);
  --focus-ring-offset: 1px;
  --focus-ring-size: 2px;
  --focus-ring: var(--focus-ring-size) solid var(--focus-ring-color);

  /* Dialogs */
  --dialog-duration: 150ms;

  /* Easing functions from https://easingwizard.com/ */
  --ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-out-overshoot: cubic-bezier(0.25, 1.75, 0.5, 1);
  --ease-out-overshoot-subtle: cubic-bezier(0.25, 1.25, 0.5, 1);

  @media (max-width: 799px) {
    --tray-size: var(--footer-height);
  }

  /* Layout */
  --main-padding: clamp(var(--inline-space), 3vw, calc(var(--inline-space) * 3));
  --main-width: 1400px;

  /* Z-index */
  --z-events-column-header: 1;
  --z-events-day-header: 3;
  --z-popup: 10;
  --z-nav: 20;
  --z-flash: 30;
  --z-tooltip: 40;
  --z-bar: 50;
  --z-tray: 51;
  --z-welcome: 52;
  --z-nav-open: 100;

  /* OKLCH colors: Fixed */
  --lch-black: 0% 0 0;
  --lch-white: 100% 0 0;

  /* OKLCH colors: Light mode (Signal palette) */
  --lch-canvas: 95.5% 0.005 80;
  --lch-ink-inverted: var(--lch-white);

  --lch-ink-darkest: 15% 0.005 290;
  --lch-ink-darker: 30% 0.005 290;
  --lch-ink-dark: 40% 0.005 290;
  --lch-ink-medium: 57% 0.008 290;
  --lch-ink-light: 76% 0.018 80;
  --lch-ink-lighter: 86% 0.012 80;
  --lch-ink-lightest: 91.5% 0.008 80;

  --lch-uncolor-darkest: 26% 0.018 40;
  --lch-uncolor-darker: 40.04% 0.0376 50.06;
  --lch-uncolor-dark: 57.09% 0.0676 60.5;
  --lch-uncolor-medium: 66% 0.0944 71.46;
  --lch-uncolor-light: 83.97% 0.0457 80.84;
  --lch-uncolor-lighter: 92% 0.014 90;
  --lch-uncolor-lightest: 96% 0.012 100;

  --lch-red-darkest: 26% 0.12 28;
  --lch-red-darker: 40% 0.18 28;
  --lch-red-dark: 52% 0.20 28;
  --lch-red-medium: 58% 0.21 28;
  --lch-red-light: 84% 0.10 28;
  --lch-red-lighter: 92% 0.04 28;
  --lch-red-lightest: 96% 0.02 28;

  /* Classical and robust spacing system */
  --space-xxxs: 0.125rem;  /* 2px */
  --space-xxs: 0.25rem;  /* 4px */
  --space-xs: 0.5rem;    /* 8px */
  --space-s: 0.75rem;    /* 12px */
  --space-m: 1rem;       /* 16px */
  --space-l: 1.25rem;    /* 20px */
  --space-xl: 1.5rem;    /* 24px */
  --space-xxl: 3rem;     /* 32px */
  --space-xxxl: 4.5rem;  /* 72px */
  --space-xxxxl: 8.5rem;  /* 136px */

  --gutter: var(--space-l);
  --gutter-s: var(--space-s);
  --gutter-xs: var(--space-xs);

  --lch-yellow-darkest: 26% 0.10 88;
  --lch-yellow-darker: 40% 0.13 88;
  --lch-yellow-dark: 65% 0.13 88;
  --lch-yellow-medium: 82% 0.13 88;
  --lch-yellow-light: 90% 0.10 88;
  --lch-yellow-lighter: 94% 0.05 88;
  --lch-yellow-lightest: 96% 0.025 88;

  --lch-lime-darkest: 26% 0.064 109;
  --lch-lime-darker: 40% 0.101 110;
  --lch-lime-dark: 56.5% 0.142 111;
  --lch-lime-medium: 68% 0.176 113.11;
  --lch-lime-light: 83.92% 0.0927 113.6;
  --lch-lime-lighter: 92% 0.046 114;
  --lch-lime-lightest: 96% 0.034 115;

  --lch-green-darkest: 26% 0.071 149;
  --lch-green-darker: 40% 0.12 148;
  --lch-green-dark: 55% 0.162 147;
  --lch-green-medium: 66% 0.208 146;
  --lch-green-light: 83.92% 0.0772 145.06;
  --lch-green-lighter: 92% 0.044 144;
  --lch-green-lightest: 96% 0.022 143;

  --lch-aqua-darkest: 26% 0.059 214;
  --lch-aqua-darker: 40% 0.093 212;
  --lch-aqua-dark: 55.5% 0.122 210;
  --lch-aqua-medium: 66% 0.152 208;
  --lch-aqua-light: 83.88% 0.0555 206.02;
  --lch-aqua-lighter: 92% 0.02 204;
  --lch-aqua-lightest: 96% 0.012 202;

  --lch-blue-darkest: 26% 0.13 268;
  --lch-blue-darker: 40% 0.20 268;
  --lch-blue-dark: 54% 0.27 268;
  --lch-blue-medium: 65% 0.25 268;
  --lch-blue-light: 84% 0.10 268;
  --lch-blue-lighter: 92% 0.04 268;
  --lch-blue-lightest: 96% 0.02 268;

  --lch-violet-darkest: 26% 0.148 292;
  --lch-violet-darker: 40% 0.2 290;
  --lch-violet-dark: 58% 0.216 287.6;
  --lch-violet-medium: 66% 0.206 285.52;
  --lch-violet-light: 84.08% 0.0791 283.47;
  --lch-violet-lighter: 92% 0.03 282;
  --lch-violet-lightest: 96% 0.015 280;

  --lch-purple-darkest: 26% 0.131 314;
  --lch-purple-darker: 40% 0.178 312;
  --lch-purple-dark: 58% 0.21 310;
  --lch-purple-medium: 66% 0.258 308;
  --lch-purple-light: 84.09% 0.0778 305.77;
  --lch-purple-lighter: 92% 0.03 304;
  --lch-purple-lightest: 96% 0.019 302;

  --lch-pink-darkest: 26% 0.12 348;
  --lch-pink-darker: 40% 0.16 346;
  --lch-pink-dark: 59% 0.188 344;
  --lch-pink-medium: 71.8% 0.2008 342;
  --lch-pink-light: 84.04% 0.0737 340;
  --lch-pink-lighter: 92% 0.03 338;
  --lch-pink-lightest: 96% 0.02 336;

  /* Colors: Named */
  --color-black: oklch(var(--lch-black));
  --color-white: oklch(var(--lch-white));

  --color-ink: oklch(var(--lch-ink-darkest));
  --color-ink-darkest: oklch(var(--lch-ink-darkest));
  --color-ink-darker: oklch(var(--lch-ink-darker));
  --color-ink-dark: oklch(var(--lch-ink-dark));
  --color-ink-medium: oklch(var(--lch-ink-medium));
  --color-ink-light: oklch(var(--lch-ink-light));
  --color-ink-lighter: oklch(var(--lch-ink-lighter));
  --color-ink-lightest: oklch(var(--lch-ink-lightest));

  --color-ink-inverted: oklch(var(--lch-ink-inverted));

  /* Colors: Abstractions */
  --color-nav: oklch(15% 0.005 290);
  --color-canvas: oklch(var(--lch-canvas));
  --color-negative: oklch(var(--lch-red-medium));
  --color-positive: oklch(var(--lch-ink-darkest));
  --color-warning: oklch(50% 0.16 65);
  --color-link: oklch(var(--lch-red-medium));

  /* Colors: Signal accents */
  --color-accent: oklch(var(--lch-red-medium));
  --color-accent-rotate: oklch(var(--lch-red-dark));
  --color-cobalt: oklch(var(--lch-ink-darkest));
  --color-sun: oklch(var(--lch-yellow-medium));
  --color-surface: oklch(100% 0 0);
  --color-surface-2: oklch(var(--lch-ink-lightest));
  --color-shade: oklch(96.5% 0.004 80);
  --color-hover: oklch(var(--lch-ink-lightest));

  /* Component wire-up (consumed by reset.css and component CSS) */
  --color-primary: var(--color-accent);
  --color-primary-rotate: var(--color-accent-rotate);
  --color-text-body: var(--color-ink);
  --color-background: var(--color-canvas);
  --color-danger: var(--color-negative);
  --color-danger-rotate: oklch(var(--lch-red-darker));

  --border-radius-s: 8px;
  --border-radius-m: 8px;
  --border-radius-l: 12px;
  --input-height: 2.65rem;
  --color-selected-light: oklch(var(--lch-blue-lightest));
  --color-selected: oklch(var(--lch-blue-lighter));
  --color-selected-dark: oklch(var(--lch-blue-light));
  --color-highlight: oklch(var(--lch-yellow-lighter));
  --color-marker: oklch(var(--lch-red-medium));
  --color-terminal-bg: oklch(98% 0.002 252);
  --color-terminal-text: var(--color-ink);
  --color-terminal-text-light: var(--color-ink-lighter);
  --color-golden: oklch(89.1% 0.178 95.7);
  --color-maybe: oklch(var(--lch-blue-medium));

  /* Colors: Cards */
  --color-card-default: oklch(var(--lch-ink-darkest));
  --color-card-complete: var(--color-ink-darker);
  --color-card-1: oklch(var(--lch-ink-medium));
  --color-card-2: oklch(var(--lch-uncolor-medium));
  --color-card-3: oklch(var(--lch-yellow-medium));
  --color-card-4: oklch(var(--lch-lime-medium));
  --color-card-5: oklch(var(--lch-aqua-medium));
  --color-card-6: oklch(var(--lch-violet-medium));
  --color-card-7: oklch(var(--lch-purple-medium));
  --color-card-8: oklch(var(--lch-pink-medium));

  /* Colors: Highlighter */
  --highlight-1: rgb(136, 118, 38);
  --highlight-2: rgb(185, 94, 6);
  --highlight-3: rgb(207, 0, 0);
  --highlight-4: rgb(216, 28, 170);
  --highlight-5: rgb(144, 19, 254);
  --highlight-6: rgb(5, 98, 185);
  --highlight-7: rgb(17, 138, 15);
  --highlight-8: rgb(148, 82, 22);
  --highlight-9: rgb(102, 102, 102);

  --highlight-bg-1: rgba(229, 223, 6, 0.3);
  --highlight-bg-2: rgba(255, 185, 87, 0.3);
  --highlight-bg-3: rgba(255, 118, 118, 0.3);
  --highlight-bg-4: rgba(248, 137, 216, 0.3);
  --highlight-bg-5: rgba(190, 165, 255, 0.3);
  --highlight-bg-6: rgba(124, 192, 252, 0.3);
  --highlight-bg-7: rgba(140, 255, 129, 0.3);
  --highlight-bg-8: rgba(221, 170, 123, 0.3);
  --highlight-bg-9: rgba(200, 200, 200, 0.3);

  /* Colors: Syntax highlighting */
  --color-code-token__att: oklch(var(--lch-blue-dark));
  --color-code-token__comment: oklch(var(--lch-ink-medium));
  --color-code-token__function: oklch(var(--lch-purple-dark));
  --color-code-token__operator: oklch(var(--lch-red-dark));
  --color-code-token__property: oklch(var(--lch-purple-dark));
  --color-code-token__punctuation: oklch(var(--lch-ink-dark));
  --color-code-token__selector: oklch(var(--lch-green-dark));
  --color-code-token__variable: oklch(var(--lch-red-dark));

  /* Colors: Generating gradient */
  --color-gradient-1: oklch(var(--lch-violet-lighter));
  --color-gradient-2: oklch(var(--lch-pink-lighter));
  --color-gradient-3: oklch(var(--lch-purple-lighter));
  --color-gradient-4: var(--color-canvas);
}

/* Dark mode - explicit theme choice overrides system preference */
html[data-theme="dark"] {
  --lch-canvas: 10% 0.003 290;
  --lch-ink-inverted: var(--lch-black);

  --lch-ink-darkest: 95.5% 0.005 80;
  --lch-ink-darker: 82% 0.008 80;
  --lch-ink-dark: 70% 0.008 80;
  --lch-ink-medium: 52% 0.008 80;
  --lch-ink-light: 28% 0.005 290;
  --lch-ink-lighter: 20% 0.005 290;
  --lch-ink-lightest: 15% 0.005 290;

  --lch-uncolor-darkest: 96.09% 0.0076 100;
  --lch-uncolor-darker: 86% 0.021 90;
  --lch-uncolor-dark: 73.93% 0.041 80;
  --lch-uncolor-medium: 62% 0.0552 70;
  --lch-uncolor-light: 40% 0.0387 60;
  --lch-uncolor-lighter: 30% 0.012 50;
  --lch-uncolor-lightest: 25% 0.0017 40;

  --lch-red-darkest: 96% 0.025 28;
  --lch-red-darker: 86% 0.08 28;
  --lch-red-dark: 55% 0.20 28;
  --lch-red-medium: 60% 0.22 28;
  --lch-red-light: 40% 0.10 28;
  --lch-red-lighter: 30% 0.05 28;
  --lch-red-lightest: 25% 0.025 28;

  --lch-yellow-darkest: 96% 0.025 88;
  --lch-yellow-darker: 90% 0.06 88;
  --lch-yellow-dark: 74% 0.14 88;
  --lch-yellow-medium: 82% 0.13 88;
  --lch-yellow-light: 60% 0.13 88;
  --lch-yellow-lighter: 40% 0.08 88;
  --lch-yellow-lightest: 25% 0.04 88;

  --lch-lime-darkest: 96.04% 0.066 115;
  --lch-lime-darker: 86% 0.098 114;
  --lch-lime-dark: 73.97% 0.121 113;
  --lch-lime-medium: 62% 0.128 112;
  --lch-lime-light: 40% 0.0637 111;
  --lch-lime-lighter: 30% 0.024 110;
  --lch-lime-lightest: 25% 0.012 109;

  --lch-green-darkest: 96.12% 0.035 143;
  --lch-green-darker: 86% 0.082 144;
  --lch-green-dark: 73.99% 0.117 145;
  --lch-green-medium: 62% 0.1261 146;
  --lch-green-light: 40% 0.065 147;
  --lch-green-lighter: 30% 0.03 148;
  --lch-green-lightest: 25% 0.018 149;

  --lch-aqua-darkest: 96.15% 0.0244 202;
  --lch-aqua-darker: 86% 0.06 204;
  --lch-aqua-dark: 73.92% 0.095 206;
  --lch-aqua-medium: 62% 0.106 208;
  --lch-aqua-light: 40% 0.0594 210;
  --lch-aqua-lighter: 30% 0.028 212;
  --lch-aqua-lightest: 25% 0.017 214;

  --lch-blue-darkest: 96% 0.022 268;
  --lch-blue-darker: 86% 0.08 268;
  --lch-blue-dark: 60% 0.25 268;
  --lch-blue-medium: 70% 0.22 268;
  --lch-blue-light: 40% 0.13 268;
  --lch-blue-lighter: 30% 0.06 268;
  --lch-blue-lightest: 25% 0.04 268;

  --lch-violet-darkest: 95.97% 0.019 280;
  --lch-violet-darker: 86% 0.068 282;
  --lch-violet-dark: 74.08% 0.142 284;
  --lch-violet-medium: 62% 0.184 286;
  --lch-violet-light: 40% 0.108 288;
  --lch-violet-lighter: 30% 0.048 290;
  --lch-violet-lightest: 25% 0.025 292;

  --lch-purple-darkest: 95.99% 0.0217 302;
  --lch-purple-darker: 86% 0.068 304;
  --lch-purple-dark: 73.98% 0.141 306;
  --lch-purple-medium: 62% 0.177 308;
  --lch-purple-light: 40% 0.099 310;
  --lch-purple-lighter: 30% 0.04 312;
  --lch-purple-lightest: 25% 0.017 314;

  --lch-pink-darkest: 95.84% 0.0308 336;
  --lch-pink-darker: 86% 0.074 338;
  --lch-pink-dark: 74.04% 0.1294 340;
  --lch-pink-medium: 62% 0.166 342;
  --lch-pink-light: 40% 0.085 344;
  --lch-pink-lighter: 30% 0.03 346;
  --lch-pink-lightest: 25% 0.011 348;

  --color-surface: oklch(13% 0.004 290);
  --color-surface-2: oklch(var(--lch-ink-lightest));
  --color-shade: oklch(17% 0.004 290);
  --color-hover: oklch(23% 0.005 290);

  --color-border-subtle: oklch(22% 0.005 290);
  --color-border: oklch(30% 0.006 290);
  --color-border-strong: oklch(45% 0.008 290);

  --color-terminal-bg: var(--color-canvas);
  --color-terminal-text-light: oklch(var(--lch-green-dark));
  --color-golden: oklch(var(--lch-blue-medium));
  --color-highlight: oklch(var(--lch-blue-lighter));

  --shadow: 0 0 0 1px oklch(var(--lch-black) / 0.42),
    0 0.2em 1.6em -0.8em oklch(var(--lch-black) / 0.6),
    0 0.4em 2.4em -1em oklch(var(--lch-black) / 0.7),
    0 0.4em 0.8em -1.2em oklch(var(--lch-black) / 0.8),
    0 0.8em 1.2em -1.6em oklch(var(--lch-black) / 0.9),
    0 1.2em 1.6em -2em oklch(var(--lch-black) / 1);
}

/* Fallback to system preference when no explicit theme is set */
@media (prefers-color-scheme: dark) {
  html:not([data-theme]) {
    --lch-canvas: 10% 0.003 290;
    --lch-ink-inverted: var(--lch-black);

    --lch-ink-darkest: 95.5% 0.005 80;
    --lch-ink-darker: 82% 0.008 80;
    --lch-ink-dark: 70% 0.008 80;
    --lch-ink-medium: 52% 0.008 80;
    --lch-ink-light: 28% 0.005 290;
    --lch-ink-lighter: 20% 0.005 290;
    --lch-ink-lightest: 15% 0.005 290;

    --lch-uncolor-darkest: 96.09% 0.0076 100;
    --lch-uncolor-darker: 86% 0.021 90;
    --lch-uncolor-dark: 73.93% 0.041 80;
    --lch-uncolor-medium: 62% 0.0552 70;
    --lch-uncolor-light: 40% 0.0387 60;
    --lch-uncolor-lighter: 30% 0.012 50;
    --lch-uncolor-lightest: 25% 0.0017 40;

    --lch-red-darkest: 96% 0.025 28;
    --lch-red-darker: 86% 0.08 28;
    --lch-red-dark: 55% 0.20 28;
    --lch-red-medium: 60% 0.22 28;
    --lch-red-light: 40% 0.10 28;
    --lch-red-lighter: 30% 0.05 28;
    --lch-red-lightest: 25% 0.025 28;

    --lch-yellow-darkest: 96% 0.025 88;
    --lch-yellow-darker: 90% 0.06 88;
    --lch-yellow-dark: 74% 0.14 88;
    --lch-yellow-medium: 82% 0.13 88;
    --lch-yellow-light: 60% 0.13 88;
    --lch-yellow-lighter: 40% 0.08 88;
    --lch-yellow-lightest: 25% 0.04 88;

    --lch-lime-darkest: 96.04% 0.066 115;
    --lch-lime-darker: 86% 0.098 114;
    --lch-lime-dark: 73.97% 0.121 113;
    --lch-lime-medium: 62% 0.128 112;
    --lch-lime-light: 40% 0.0637 111;
    --lch-lime-lighter: 30% 0.024 110;
    --lch-lime-lightest: 25% 0.012 109;

    --lch-green-darkest: 96.12% 0.035 143;
    --lch-green-darker: 86% 0.082 144;
    --lch-green-dark: 73.99% 0.117 145;
    --lch-green-medium: 62% 0.1261 146;
    --lch-green-light: 40% 0.065 147;
    --lch-green-lighter: 30% 0.03 148;
    --lch-green-lightest: 25% 0.018 149;

    --lch-aqua-darkest: 96.15% 0.0244 202;
    --lch-aqua-darker: 86% 0.06 204;
    --lch-aqua-dark: 73.92% 0.095 206;
    --lch-aqua-medium: 62% 0.106 208;
    --lch-aqua-light: 40% 0.0594 210;
    --lch-aqua-lighter: 30% 0.028 212;
    --lch-aqua-lightest: 25% 0.017 214;

    --lch-blue-darkest: 96% 0.022 268;
    --lch-blue-darker: 86% 0.08 268;
    --lch-blue-dark: 60% 0.25 268;
    --lch-blue-medium: 70% 0.22 268;
    --lch-blue-light: 40% 0.13 268;
    --lch-blue-lighter: 30% 0.06 268;
    --lch-blue-lightest: 25% 0.04 268;

    --lch-violet-darkest: 95.97% 0.019 280;
    --lch-violet-darker: 86% 0.068 282;
    --lch-violet-dark: 74.08% 0.142 284;
    --lch-violet-medium: 62% 0.184 286;
    --lch-violet-light: 40% 0.108 288;
    --lch-violet-lighter: 30% 0.048 290;
    --lch-violet-lightest: 25% 0.025 292;

    --lch-purple-darkest: 95.99% 0.0217 302;
    --lch-purple-darker: 86% 0.068 304;
    --lch-purple-dark: 73.98% 0.141 306;
    --lch-purple-medium: 62% 0.177 308;
    --lch-purple-light: 40% 0.099 310;
    --lch-purple-lighter: 30% 0.04 312;
    --lch-purple-lightest: 25% 0.017 314;

    --lch-pink-darkest: 95.84% 0.0308 336;
    --lch-pink-darker: 86% 0.074 338;
    --lch-pink-dark: 74.04% 0.1294 340;
    --lch-pink-medium: 62% 0.166 342;
    --lch-pink-light: 40% 0.085 344;
    --lch-pink-lighter: 30% 0.03 346;
    --lch-pink-lightest: 25% 0.011 348;

    --color-surface: oklch(13% 0.004 290);
    --color-surface-2: oklch(var(--lch-ink-lightest));
    --color-shade: oklch(17% 0.004 290);
    --color-hover: oklch(23% 0.005 290);

    --color-border-subtle: oklch(22% 0.005 290);
    --color-border: oklch(30% 0.006 290);
    --color-border-strong: oklch(45% 0.008 290);

    --color-terminal-bg: var(--color-canvas);
    --color-terminal-text-light: oklch(var(--lch-green-dark));
    --color-golden: oklch(var(--lch-blue-medium));
    --color-highlight: oklch(var(--lch-blue-lighter));

    --shadow: 0 0 0 1px oklch(var(--lch-black) / 0.42),
              0 .2em 1.6em -0.8em oklch(var(--lch-black) / 0.6),
              0 .4em 2.4em -1em oklch(var(--lch-black) / 0.7),
              0 .4em .8em -1.2em oklch(var(--lch-black) / 0.8),
              0 .8em 1.2em -1.6em oklch(var(--lch-black) / 0.9),
              0 1.2em 1.6em -2em oklch(var(--lch-black) / 1);
  }
}
