:root {
  color-scheme: light;

  /* Shared page surfaces and content. */
  --color-page-bg: #f8fbf9;
  --color-panel-bg: #e9eeec;
  --color-panel-strong: #dfe5e2;
  --color-border: #aeb8b3;
  --color-text: #101412;
  --color-text-muted: #62706a;
  --color-text-faint: #8d9994;
  --color-link: #2d6900;
  --color-accent: #9ce62d;
  --color-accent-hover: #78b82a;
  --color-accent-ink: #142800;
  --color-nav-bg: #e0e8e4;
  --color-inverse-text: #fff;
  --color-warning: #9a6f00;
  --color-success: #2f7f50;
  --color-danger-action: #ff3b30;
  --color-danger-ink: #fff;
  --color-overlay: rgb(0 0 0 / 82%);
  --color-frame-border: color-mix(in srgb, var(--color-border) 52%, transparent);

  /* Shared shell geometry. */
  --site-shell-collapsed-max: 1520px;
  --site-shell-flex-max: 1760px;
  --site-page-inset-top: clamp(6px, 1vh, 14px);
  --site-page-inset-bottom: clamp(16px, 3vh, 42px);
  --site-page-inset-inline: clamp(20px, 4vw, 72px);

  /* Article surfaces. */
  --color-blog-bg: #f8fbf9;
  --color-article-text: #202522;
  --color-soft-hover: rgba(0, 0, 0, 0.04);
  --color-inline-code-text: #155e75;
  --color-inline-code-bg: rgba(14, 116, 144, 0.09);
  --color-inline-code-border: rgba(14, 116, 144, 0.22);
  --color-code-header-tint: #000;
  --color-callout-note: #2563b8;
  --color-callout-tip: #24784a;
  --color-callout-important: #6648bd;
  --color-callout-warning: #9a5b08;
  --color-callout-caution: #bd3e3e;
  --callout-surface-strength: 7%;
  --callout-border-strength: 28%;
  --callout-icon-strength: 14%;

  /* Profile terminal. */
  --color-profile-shell: #e8e8e3;
  --color-profile-terminal-bg: #f7f9f7;
  --color-profile-terminal-surface: #e9eeec;
  --color-profile-terminal-border: #aeb8b3;
  --color-profile-terminal-text: #111613;
  --color-profile-terminal-output: #4f5b55;
  --color-profile-terminal-muted: #6b7771;
  --color-profile-terminal-dim: #77827c;
  --color-profile-terminal-accent: #467800;
  --color-profile-terminal-glow: rgba(70, 120, 0, 0.045);
  --color-profile-terminal-shadow: rgba(27, 36, 31, 0.14);
  --color-profile-terminal-error: #9a3f38;
  --color-profile-terminal-error-strong: #c23e34;
  --profile-scanline-blend: multiply;

  /* Technology labels maintain contrast in each mode. */
  --color-stack-swift: #b84424;
  --color-stack-go: #087e9c;
  --color-stack-objective-c: #286f9e;
  --color-stack-python: #806200;
  --color-stack-aws: #a95400;
  --color-stack-terraform: #6845aa;
  --color-stack-vault: #806000;
  --color-stack-node: #3d7739;

}

:root[data-theme="dark"] {
  color-scheme: dark;

  --color-page-bg: rgb(10, 10, 10);
  --color-panel-bg: rgb(28, 28, 30);
  --color-panel-strong: rgb(34, 34, 37);
  --color-border: rgb(72, 78, 90);
  --color-text: #d8dfe4;
  --color-text-muted: #8e9994;
  --color-text-faint: #66716c;
  --color-link: #86b7ff;
  --color-accent: #b7ff45;
  --color-accent-hover: #b7ff45;
  --color-accent-ink: #102000;
  --color-nav-bg: rgb(28, 28, 30);
  --color-inverse-text: #101412;
  --color-warning: #d6a632;
  --color-success: #70d39a;
  --color-danger-action: #ff3b30;
  --color-danger-ink: #fff;

  --color-blog-bg: rgb(10, 10, 10);
  --color-article-text: #d3d9e3;
  --color-soft-hover: rgba(255, 255, 255, 0.06);
  --color-inline-code-text: #9ccbef;
  --color-inline-code-bg: rgba(56, 139, 193, 0.16);
  --color-inline-code-border: rgba(116, 184, 229, 0.28);
  --color-code-header-tint: #000;
  --color-callout-note: #73a7ff;
  --color-callout-tip: #70d39a;
  --color-callout-important: #aa8cff;
  --color-callout-warning: #e5aa53;
  --color-callout-caution: #ff7770;
  --callout-surface-strength: 12%;
  --callout-border-strength: 36%;
  --callout-icon-strength: 18%;

  --color-profile-shell: #050505;
  --color-profile-terminal-bg: #0b0c0b;
  --color-profile-terminal-surface: #080908;
  --color-profile-terminal-border: #252825;
  --color-profile-terminal-text: #f1f4f2;
  --color-profile-terminal-output: #a1a7a3;
  --color-profile-terminal-muted: #838a86;
  --color-profile-terminal-dim: #616863;
  --color-profile-terminal-accent: #b7ff45;
  --color-profile-terminal-glow: rgba(69, 255, 166, 0.035);
  --color-profile-terminal-shadow: rgba(0, 0, 0, 0.2);
  --color-profile-terminal-error: #a86a64;
  --color-profile-terminal-error-strong: #ff776d;
  --profile-scanline-blend: screen;

  --color-stack-swift: #f36b45;
  --color-stack-go: #45c3e6;
  --color-stack-objective-c: #72b7e6;
  --color-stack-python: #f4cf5d;
  --color-stack-aws: #ffab45;
  --color-stack-terraform: #a881ed;
  --color-stack-vault: #f0c969;
  --color-stack-node: #68a063;
}
