:root {
  --bg: #f5f5f7;
  --surface: #ffffff;
  --menu-surface: #ffffff;
  --muted-surface: #fafafa;
  --text: #1d1d1f;
  --text-strong: #111113;
  --text-secondary: #56565b;
  --text-nav: #1d1d1f;
  --text-subtle: #98989d;
  --text-inverse: #ffffff;
  --muted: #6e6e73;
  --line: #e5e5e7;
  --line-strong: #d0d0d4;
  --line-hover: #bdbdc2;
  --soft: #f0f0f2;
  --accent: #0094f7;
  --accent-hover: #0071e3;
  --accent-active: #0094f7;
  --accent-idle: #0094f7;
  --accent-tag: #0094f7;
  --accent-text: #ffffff;
  --accent-soft: rgba(0, 148, 247, 0.1);
  --social: var(--text-strong);
  --banner: #dedee2;
  --banner-fallback: #e6e6e9;
  --glass: rgba(255, 255, 255, 0.88);
  --glass-soft: rgba(255, 255, 255, 0.54);
  --glass-series: rgba(255, 255, 255, 0.48);
  --copyright-surface: transparent;
  --copyright-border: #e5e5ea;
  --copyright-title: #000000;
  --copyright-label: #aeaeb2;
  --copyright-text: #1c1c1e;
  --copyright-note: #636366;
  --copyright-shadow: 0 1px 3px rgba(0, 0, 0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.1);
  --series-surface: #ebebeb;
  --series-heading: #1c1c1e;
  --series-text: #636366;
  --series-link: #afafaf;
  --series-border: #d1d1d6;
  --white-soft: rgba(255, 255, 255, 0.1);
  --white-border: rgba(255, 255, 255, 0.14);
  --shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
  --shadow-card: 0 8px 20px rgba(0, 0, 0, 0.08);
  --shadow-hero: 0 18px 42px rgba(0, 0, 0, 0.1);
  --shadow-text: 0 2px 14px rgba(0, 0, 0, 0.7);
  --heading-shadow-light-1: -1px -1px 1px rgba(255, 255, 255, 0.32);
  --heading-shadow-light-2: 1px 1px 1px rgba(15, 23, 42, 0.26);
  --heading-shadow-light-3: 3px 3px 3px rgba(15, 23, 42, 0.3);
  --heading-shadow-1: var(--heading-shadow-light-1);
  --heading-shadow-2: var(--heading-shadow-light-2);
  --heading-shadow-3: var(--heading-shadow-light-3);
  --focus: #8e8e93;
  --link: var(--accent-idle);
  --link-hover: var(--accent-hover);
  --link-decoration: color-mix(in srgb, var(--link) 38%, transparent);
  --blockquote: #8e8e93;
  --blockquote-text: #636366;
  --mark-bg: #1d1d1f;
  --mark-text: #f5f5f7;
  --code-bg: #f5f5f7;
  --code-bg-strong: #ffffff;
  --code-border: rgba(60, 60, 67, 0.18);
  --code-text: #1d1d1f;
  --code-muted: #6e6e73;
  --code-keyword: #5a73a1;
  --code-function: #6f88c9;
  --code-string: #2f7fa7;
  --code-number: #4f8fcc;
  --code-operator: #70819d;
  --code-comment: #8e8e93;
  --code-highlight: rgba(60, 60, 67, 0.08);
  --shadow-code: 0 8px 30px rgba(0, 0, 0, 0.06);
  --task-checkbox-unchecked-background: #ffffff;
  --task-checkbox-unchecked-border: #c7c7cc;
  --link-card-surface: #ffffff;
  --link-card-media: #f0f0f2;
  --link-card-icon-surface: #ffffff;
  --link-card-title: #0071e3;
  --link-card-description: #3a3a3c;
  --transparent: transparent;
}

/* Dark palette. dark.css only selects these values when dark mode is active. */
:root {
  --dark-bg: #18181a;
  --dark-surface: rgba(31, 31, 34, 0.78);
  --dark-menu-surface: #1f1f22;
  --dark-muted-surface: rgba(39, 39, 42, 0.74);
  --dark-text: #f5f5f7;
  --dark-text-strong: #ffffff;
  --dark-text-secondary: #d1d1d6;
  --dark-text-nav: #f5f5f7;
  --dark-text-subtle: #a1a1a6;
  --dark-text-inverse: #18181a;
  --dark-muted: #a1a1a6;
  --dark-line: rgba(255, 255, 255, 0.14);
  --dark-line-strong: rgba(255, 255, 255, 0.2);
  --dark-line-hover: rgba(255, 255, 255, 0.4);
  --dark-soft: rgba(255, 255, 255, 0.09);
  --dark-accent: #0071e3;
  --dark-accent-hover: #0094f7;
  --dark-accent-active: #0071e3;
  --dark-accent-idle: #0071e3;
  --dark-accent-tag: #0094f7;
  --dark-accent-text: #ffffff;
  --dark-accent-soft: rgba(0, 148, 247, 0.1);
  --dark-social: var(--dark-text-strong);
  --dark-banner: #444449;
  --dark-banner-fallback: rgba(39, 39, 42, 0.74);
  --dark-glass: rgba(24, 24, 26, 0.82);
  --dark-glass-soft: rgba(255, 255, 255, 0.54);
  --dark-glass-series: rgba(255, 255, 255, 0.48);
  --dark-copyright-surface: transparent;
  --dark-copyright-border: #636366;
  --dark-copyright-title: #ffffff;
  --dark-copyright-label: #c7c7cc;
  --dark-copyright-text: #f5f5f7;
  --dark-copyright-note: #e5e5ea;
  --dark-copyright-shadow: 0 1px 3px rgba(0, 0, 0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.1);
  --dark-series-surface: #2c2c2e;
  --dark-series-heading: #f5f5f7;
  --dark-series-text: #d1d1d6;
  --dark-series-link: #afafaf;
  --dark-series-border: #8e8e93;
  --dark-white-soft: rgba(255, 255, 255, 0.1);
  --dark-white-border: rgba(255, 255, 255, 0.14);
  --dark-shadow: 0 4px 24px rgba(0, 0, 0, 0.22);
  --dark-shadow-card: 0 8px 20px rgba(0, 0, 0, 0.18);
  --dark-shadow-hero: 0 18px 42px rgba(0, 0, 0, 0.24);
  --dark-shadow-text: 0 2px 14px rgba(0, 0, 0, 0.7);
  --dark-heading-shadow-1: 1px 1px 1px rgba(255, 255, 255, 0.22);
  --dark-heading-shadow-2: 2px 2px 2px rgba(255, 255, 255, 0.16);
  --dark-heading-shadow-3: 4px 4px 4px rgba(255, 255, 255, 0.08);
  --dark-focus: #d1d1d6;
  --dark-link: var(--dark-accent-idle);
  --dark-link-hover: var(--dark-accent-hover);
  --dark-link-decoration: color-mix(in srgb, var(--dark-accent-idle) 44%, transparent);
  --dark-blockquote: #636366;
  --dark-blockquote-text: #e5e5ea;
  --dark-mark-bg: #f5f5f7;
  --dark-mark-text: #1d1d1f;
  --dark-code-bg: #161618;
  --dark-code-bg-strong: #1c1c1e;
  --dark-code-border: rgba(255, 255, 255, 0.1);
  --dark-code-text: #f5f5f7;
  --dark-code-muted: #8e8e93;
  --dark-code-keyword: #9fbfff;
  --dark-code-function: #b2c7ff;
  --dark-code-string: #7bc7ea;
  --dark-code-number: #8fbfff;
  --dark-code-operator: #a9b8d4;
  --dark-code-comment: #7d7d86;
  --dark-code-highlight: rgba(255, 255, 255, 0.06);
  --dark-shadow-code: 0 8px 30px rgba(0, 0, 0, 0.06);
  --dark-task-checkbox-unchecked-background: #ffffff;
  --dark-task-checkbox-unchecked-border: #c7c7cc;
  --dark-link-card-surface: #1f1f22;
  --dark-link-card-media: #2c2c2e;
  --dark-link-card-icon-surface: #ffffff;
  --dark-link-card-title: #0094f7;
  --dark-link-card-description: #d1d1d6;
  --dark-transparent: transparent;
}
