/* Paivo design tokens. Generated from tokens.json: edit that file, then regenerate. */
/* Light is the default. Dark is a proposal: opt in with data-theme="dark" on <html>. */

:root, [data-theme="light"] {
  color-scheme: light;
  --ground: #F4F4F1;
  --sheet: #FFFFFF;
  --fill: #FAFAF8;
  --fill-quiet: #F7F7F5;
  --fill-chip: #F0F0EC;
  --track: #ECECE8;
  --line: #E7E6E1;
  --line-soft: #EFEEEA;
  --line-strong: #D6D5CF;
  --ink: #141519;
  --ink-2: #4E525B;
  --ink-3: #6B6F78;
  --on-ink: #FFFFFF;
  --cobalt: #2D5BFF;
  --cobalt-light: #8FA6FF;
  --cobalt-soft: #EEF2FF;
  --cobalt-ink: #1E3FCC;
  --cobalt-line: #B8C6FF;
  --link: #2448E0;
  --link-hover: #1A36B0;
  --success: #127A4A;
  --success-fill: #E7F5EE;
  --success-dot: #1F9D63;
  --neutral-dot: #8A8E96;
  --warning: #8F5200;
  --warning-fill: #FDF2DE;
  --warning-dot: #D98A00;
  --warning-callout: #FDF6E9;
  --warning-line: #F1DDB4;
  --danger: #B4261A;
  --on-danger: #FFFFFF;
  --danger-fill: #FDEDEB;
  --danger-dot: #D92D20;
  --danger-callout: #FDF0EE;
  --danger-line: #F1C9C4;
  --danger-outline: #E7B4AE;
  --disabled-fill: #EFEFEB;
  --scrim: rgba(20, 21, 25, 0.4);
  --shadow-nav: 0 1px 2px rgba(20, 21, 25, 0.06);
  --shadow-float: 0 12px 28px rgba(20, 21, 25, 0.12), 0 2px 6px rgba(20, 21, 25, 0.06);
  --shadow-dialog: 0 24px 48px rgba(20, 21, 25, 0.16);
  --focus-ring: 0 0 0 2px #FFFFFF, 0 0 0 4px #2D5BFF;
}

[data-theme="dark"] {
  color-scheme: dark;
  --ground: #101114;
  --sheet: #17181C;
  --fill: #1C1D22;
  --fill-quiet: #1E1F24;
  --fill-chip: #26272D;
  --track: #2A2B31;
  --line: #2B2C32;
  --line-soft: #24252A;
  --line-strong: #3A3C43;
  --ink: #F2F2EF;
  --ink-2: #B9BCC4;
  --ink-3: #9A9EA7;
  --on-ink: #141519;
  --cobalt: #6E8BFF;
  --cobalt-light: #3A4FA8;
  --cobalt-soft: #1B2347;
  --cobalt-ink: #A9B9FF;
  --cobalt-line: #34449A;
  --link: #8EA4FF;
  --link-hover: #B3C2FF;
  --success: #5FD49A;
  --success-fill: #12301F;
  --success-dot: #3CBF7C;
  --neutral-dot: #8A8E96;
  --warning: #F2B65C;
  --warning-fill: #3A2A0E;
  --warning-dot: #E5A23A;
  --warning-callout: #2A210F;
  --warning-line: #5A4520;
  --danger: #FF8A7A;
  --on-danger: #141519;
  --danger-fill: #3D1814;
  --danger-dot: #F0604F;
  --danger-callout: #2E1512;
  --danger-line: #6A2C24;
  --danger-outline: #7A3A31;
  --disabled-fill: #25262B;
  --scrim: rgba(0, 0, 0, 0.6);
  --shadow-nav: 0 1px 2px rgba(0, 0, 0, 0.5);
  --shadow-float: 0 12px 28px rgba(0, 0, 0, 0.55), 0 2px 6px rgba(0, 0, 0, 0.4);
  --shadow-dialog: 0 24px 48px rgba(0, 0, 0, 0.6);
  --focus-ring: 0 0 0 2px #17181C, 0 0 0 4px #6E8BFF;
}

:root {
  --space-4: 4px;
  --space-6: 6px;
  --space-8: 8px;
  --space-10: 10px;
  --space-12: 12px;
  --space-14: 14px;
  --space-16: 16px;
  --space-20: 20px;
  --space-24: 24px;
  --space-28: 28px;
  --space-32: 32px;
  --space-40: 40px;
  --space-48: 48px;
  --space-64: 64px;
  --radius-item: 6px;
  --radius-control: 8px;
  --radius-panel: 10px;
  --radius-card: 12px;
  --radius-sheet: 14px;
  --radius-hero: 16px;
  --radius-pill: 9999px;
  --control-height: 40px;
  --control-height-dense: 36px;
  --control-height-touch: 44px;
  --icon-button: 36px;
  --meter-height: 6px;
  --sidebar-width: 240px;
  --content-max: 1120px;
  --reading-max: 880px;
  --signin-card: 440px;
  --breakpoint-narrow: 760px;
  --font-sans: "Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-mono: "Geist Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
}

/* Text styles: class="pv-type-<name>" */
.pv-type-page-title { font-family: var(--font-sans); font-size: 26px; line-height: 32px; font-weight: 600; letter-spacing: -0.02em; }
.pv-type-signin-title { font-family: var(--font-sans); font-size: 24px; line-height: 30px; font-weight: 600; letter-spacing: -0.02em; }
.pv-type-section-title { font-family: var(--font-sans); font-size: 18px; line-height: 24px; font-weight: 600; letter-spacing: -0.01em; }
.pv-type-card-title { font-family: var(--font-sans); font-size: 16px; line-height: 24px; font-weight: 600; }
.pv-type-step-title { font-family: var(--font-sans); font-size: 15px; line-height: 22px; font-weight: 600; }
.pv-type-stat { font-family: var(--font-sans); font-size: 24px; line-height: 30px; font-weight: 600; letter-spacing: -0.01em; font-variant-numeric: tabular-nums; }
.pv-type-body { font-family: var(--font-sans); font-size: 14px; line-height: 20px; font-weight: 400; }
.pv-type-body-phone { font-family: var(--font-sans); font-size: 15px; line-height: 22px; font-weight: 400; }
.pv-type-help { font-family: var(--font-sans); font-size: 13px; line-height: 20px; font-weight: 400; }
.pv-type-label { font-family: var(--font-sans); font-size: 13px; line-height: 20px; font-weight: 500; }
.pv-type-table-header { font-family: var(--font-sans); font-size: 12px; line-height: 16px; font-weight: 500; }
.pv-type-pill { font-family: var(--font-sans); font-size: 12px; line-height: 16px; font-weight: 500; }
.pv-type-pill-label { font-family: var(--font-sans); font-size: 11.5px; line-height: 16px; font-weight: 500; }
.pv-type-mono { font-family: var(--font-mono); font-size: 13px; line-height: 20px; font-weight: 400; }
.pv-type-mono-meta { font-family: var(--font-mono); font-size: 12.5px; line-height: 18px; font-weight: 400; }
