/* repent.bio design tokens.
   Concept: a marble penitent under one cold skylight, over still water. Ink surfaces, marble type, one votive blue.
   Shape language: restrained 10–14px corners for controls and panels; the arch-topped "niche" is reserved for
   profile frames; the tear is the only accent mark. */
:root {
  color-scheme: dark;

  /* ink: surfaces, darkest to lightest */
  --ink-0: #050507;   /* page */
  --ink-1: #08090d;   /* wells, inputs */
  --ink-2: #0d0e14;   /* panels */
  --ink-3: #13141c;   /* raised: menus, modals, hover */
  --ink-4: #1a1b25;   /* active */

  /* lines */
  --line: #1c1d26;
  --line-2: #272833;
  --line-3: #3a3c4b;

  /* marble: type */
  --text: #f3f2ee;
  --text-2: #a2a4b1;
  --text-3: #6b6d7b;
  --text-4: #474956;

  /* votive blue */
  --blue: #7b95ff;
  --blue-2: #5576ff;
  --blue-3: #3d5cf0;
  --blue-ink: #0b1230;
  --blue-soft: rgba(123, 149, 255, .12);
  --blue-line: rgba(123, 149, 255, .38);
  --tear: linear-gradient(180deg, #cdd7ff, #5576ff);

  --ok: #5ee0a0;
  --warn: #f5c56b;
  --bad: #ff7d7d;
  --bad-soft: rgba(255, 125, 125, .1);

  /* shape */
  --r-xs: 6px;
  --r-sm: 8px;
  --r: 10px;
  --r-md: 14px;
  --r-lg: 20px;
  --r-niche: 999px 999px var(--r-lg) var(--r-lg);

  /* type */
  --f-sans: "Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --f-serif: "Instrument Serif", "Iowan Old Style", Georgia, serif;
  --f-mono: "Geist Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  --t-2xs: 11px;
  --t-xs: 12px;
  --t-sm: 13.5px;
  --t-md: 15px;
  --t-lg: 17px;
  --t-xl: 22px;
  --t-2xl: clamp(28px, 3.4vw, 40px);
  --t-3xl: clamp(36px, 5vw, 60px);
  --t-hero: clamp(48px, 7.6vw, 104px);

  /* space (4px grid) */
  --s1: 4px; --s2: 8px; --s3: 12px; --s4: 16px; --s5: 20px; --s6: 24px; --s8: 32px; --s10: 40px; --s12: 48px; --s16: 64px; --s20: 80px; --s24: 96px;
  --gutter: clamp(16px, 4vw, 40px);
  --w-page: 1200px;
  --w-text: 640px;

  /* depth */
  --chisel: inset 0 1px 0 rgba(255, 255, 255, .045);
  --sh-1: var(--chisel), 0 1px 2px rgba(0, 0, 0, .45);
  --sh-2: var(--chisel), 0 18px 50px -20px rgba(0, 0, 0, .85);
  --sh-3: 0 40px 120px -40px rgba(0, 0, 0, .95), 0 0 0 1px var(--line-2);

  /* motion */
  --ease: cubic-bezier(.2, .7, .2, 1);
  --ease-out: cubic-bezier(.16, 1, .3, 1);
  --ease-in: cubic-bezier(.5, 0, .75, 0);
  --d-1: 120ms;
  --d-2: 220ms;
  --d-3: 420ms;
  --d-4: 700ms;

  --z-nav: 40;
  --z-menu: 60;
  --z-modal: 80;
  --z-toast: 90;
}
