/* Generated by scripts/folio-tokens.py from design/desk/tokens.json. Do not edit by hand. */
/* The desk's own variables (--bg, --fg, …) and Folio's names (--f-*) on the
   same values, for the site's pages. Fonts from the site's /fonts. */
@font-face { font-family: "Archivo"; font-style: normal; font-weight: 400 500; font-display: swap; src: url("/fonts/archivo.woff2") format("woff2"); }
@font-face { font-family: "JetBrains Mono"; font-style: normal; font-weight: 400 800; font-display: swap; src: url("/fonts/jetbrains-mono.woff2") format("woff2"); }
:root {
  --sans: "Archivo", "PingFang SC", "Noto Sans SC", "Noto Sans CJK SC", "Microsoft YaHei UI", sans-serif;
  --mono: "JetBrains Mono", "SFMono-Regular", "Menlo", monospace;
}
:root {
  color-scheme: light;
  --bg: #f2f0ec;
  --bg-1: #f7f6f2;
  --bg-2: #ece9e4;
  --bg-3: #e5e3dd;
  --line: #e2dfda;
  --line-2: #d0cdc8;
  --line-3: #a19e98;
  --fg: #363940;
  --fg-2: #575b62;
  --fg-3: #676b72;
  --brand: #3b5993;
  --brand-hover: #2e4b83;
  --on-brand: #ffffff;
  --link: #3b5993;
  --focus: #3b5993;
  --sig: #2b7484;
  --danger: #aa4941;
  --on-danger: #ffffff;
  --ok: #2f7a4a;
  --inverse-link: #9fb8e5;
  --logo-tile: #41629f;
  --logo-front: #ffffff;
  --logo-back: #becbe2;
  --term-bg: #26282c;
  --term-text: #d3d6db;
  --term-dim: #8a8f97;
  --scrim: rgba(24, 26, 30, 0.45);
  --lift: 0 16px 40px rgba(0, 0, 0, .14);
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    color-scheme: dark;
    --bg: #1e2125;
    --bg-1: #25282d;
    --bg-2: #2d3036;
    --bg-3: #33373d;
    --line: #34373c;
    --line-2: #44484e;
    --line-3: #676c74;
    --fg: #d3d6db;
    --fg-2: #b2b6bd;
    --fg-3: #9ca0a8;
    --brand: #43629c;
    --brand-hover: #5171ac;
    --on-brand: #ffffff;
    --link: #9fb8e5;
    --focus: #9fb8e5;
    --sig: #7cc5d2;
    --danger: #e18881;
    --on-danger: #1e2125;
    --ok: #8cc59e;
    --inverse-link: #3b5993;
    --logo-tile: #41629f;
    --logo-front: #ffffff;
    --logo-back: #becbe2;
    --term-bg: #16181b;
    --term-text: #d3d6db;
    --term-dim: #8a8f97;
    --scrim: rgba(0, 0, 0, 0.6);
    --lift: 0 16px 40px rgba(0, 0, 0, .5);
  }
}
:root[data-theme="dark"] {
  color-scheme: dark;
  --bg: #1e2125;
  --bg-1: #25282d;
  --bg-2: #2d3036;
  --bg-3: #33373d;
  --line: #34373c;
  --line-2: #44484e;
  --line-3: #676c74;
  --fg: #d3d6db;
  --fg-2: #b2b6bd;
  --fg-3: #9ca0a8;
  --brand: #43629c;
  --brand-hover: #5171ac;
  --on-brand: #ffffff;
  --link: #9fb8e5;
  --focus: #9fb8e5;
  --sig: #7cc5d2;
  --danger: #e18881;
  --on-danger: #1e2125;
  --ok: #8cc59e;
  --inverse-link: #3b5993;
  --logo-tile: #41629f;
  --logo-front: #ffffff;
  --logo-back: #becbe2;
  --term-bg: #16181b;
  --term-text: #d3d6db;
  --term-dim: #8a8f97;
  --scrim: rgba(0, 0, 0, 0.6);
  --lift: 0 16px 40px rgba(0, 0, 0, .5);
}
:root {
  --f-font-display: "Archivo", "PingFang SC", "Noto Sans SC", "Noto Sans CJK SC", "Microsoft YaHei UI", sans-serif;
  --f-font-text: "Archivo", "PingFang SC", "Noto Sans SC", "Noto Sans CJK SC", "Microsoft YaHei UI", sans-serif;
  --f-font-mono: "JetBrains Mono", "SFMono-Regular", "Menlo", monospace;
  --f-type-display-m: 500 20px/26px var(--f-font-text);
  --f-track-display-m: 0em;
  --f-type-display-s: 500 17px/24px var(--f-font-text);
  --f-track-display-s: 0em;
  --f-type-title: 500 15px/22px var(--f-font-text);
  --f-track-title: 0em;
  --f-type-body: 400 15px/22px var(--f-font-text);
  --f-track-body: 0em;
  --f-type-body-strong: 500 15px/22px var(--f-font-text);
  --f-track-body-strong: 0em;
  --f-type-body-s: 400 13px/18px var(--f-font-text);
  --f-track-body-s: 0em;
  --f-type-button: 500 15px/20px var(--f-font-text);
  --f-track-button: 0em;
  --f-type-meta: 400 13px/18px var(--f-font-text);
  --f-track-meta: 0em;
  --f-type-label: 400 13px/18px var(--f-font-text);
  --f-track-label: 0em;
  --f-space-1: 4px;
  --f-space-2: 8px;
  --f-space-3: 12px;
  --f-space-4: 16px;
  --f-space-5: 20px;
  --f-space-6: 24px;
  --f-space-8: 32px;
  --f-space-12: 48px;
  --f-space-16: 64px;
  --f-r-xs: 0px;
  --f-r-sm: 0px;
  --f-r-md: 0px;
  --f-r-lg: 0px;
  --f-r-field: 2px;
  --f-cut: 8px;
  --f-size-bar: 56px;
  --f-size-row: 56px;
  --f-size-row-compact: 36px;
  --f-size-menu-item: 40px;
  --f-size-control: 40px;
  --f-size-touch: 48px;
  --f-dur-fast: 120ms;
  --f-dur-base: 200ms;
  --f-dur-pane: 280ms;
  --f-ease: cubic-bezier(0.2, 0, 0, 1);
}
:root {
  color-scheme: light;
  --f-canvas: #f2f0ec;
  --f-pane: #f7f6f2;
  --f-raised: #f7f6f2;
  --f-hover: #ece9e4;
  --f-field: #f7f6f2;
  --f-line: #e2dfda;
  --f-line-strong: #d0cdc8;
  --f-text: #363940;
  --f-muted: #575b62;
  --f-faint: #676b72;
  --f-accent: #3b5993;
  --f-accent-text: #3b5993;
  --f-on-accent: #ffffff;
  --f-sel: #e5e3dd;
  --f-warn: #2b7484;
  --f-danger: #aa4941;
  --f-on-danger: #ffffff;
  --f-ok: #2f7a4a;
  --f-inverse: #363940;
  --f-on-inverse: #f2f0ec;
  --f-inverse-accent: #9fb8e5;
  --f-scrim: rgba(24, 26, 30, 0.45);
  --f-logo-tile: #41629f;
  --f-logo-front: #ffffff;
  --f-logo-back: #becbe2;
  --f-shadow: 0 16px 40px rgba(0, 0, 0, .14);
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    color-scheme: dark;
    --f-canvas: #1e2125;
    --f-pane: #25282d;
    --f-raised: #25282d;
    --f-hover: #2d3036;
    --f-field: #25282d;
    --f-line: #34373c;
    --f-line-strong: #44484e;
    --f-text: #d3d6db;
    --f-muted: #b2b6bd;
    --f-faint: #9ca0a8;
    --f-accent: #43629c;
    --f-accent-text: #9fb8e5;
    --f-on-accent: #ffffff;
    --f-sel: #33373d;
    --f-warn: #7cc5d2;
    --f-danger: #e18881;
    --f-on-danger: #1e2125;
    --f-ok: #8cc59e;
    --f-inverse: #d3d6db;
    --f-on-inverse: #1e2125;
    --f-inverse-accent: #3b5993;
    --f-scrim: rgba(0, 0, 0, 0.6);
    --f-logo-tile: #41629f;
    --f-logo-front: #ffffff;
    --f-logo-back: #becbe2;
    --f-shadow: 0 16px 40px rgba(0, 0, 0, .5);
  }
}
:root[data-theme="dark"] {
  color-scheme: dark;
  --f-canvas: #1e2125;
  --f-pane: #25282d;
  --f-raised: #25282d;
  --f-hover: #2d3036;
  --f-field: #25282d;
  --f-line: #34373c;
  --f-line-strong: #44484e;
  --f-text: #d3d6db;
  --f-muted: #b2b6bd;
  --f-faint: #9ca0a8;
  --f-accent: #43629c;
  --f-accent-text: #9fb8e5;
  --f-on-accent: #ffffff;
  --f-sel: #33373d;
  --f-warn: #7cc5d2;
  --f-danger: #e18881;
  --f-on-danger: #1e2125;
  --f-ok: #8cc59e;
  --f-inverse: #d3d6db;
  --f-on-inverse: #1e2125;
  --f-inverse-accent: #3b5993;
  --f-scrim: rgba(0, 0, 0, 0.6);
  --f-logo-tile: #41629f;
  --f-logo-front: #ffffff;
  --f-logo-back: #becbe2;
  --f-shadow: 0 16px 40px rgba(0, 0, 0, .5);
}
@media (prefers-reduced-motion: reduce) {
  :root { --f-dur-fast: 0ms; --f-dur-base: 0ms; --f-dur-pane: 0ms; }
}
