@layer psi.theme {
  [data-psi-theme="ember"] {
    --psi-palette-emberCanvas: oklch(0.147 0.004 49);
    --psi-palette-emberInk: oklch(0.949 0.011 72);
    --psi-palette-emberAccent: oklch(0.724 0.177 40);
    --psi-palette-emberEmerald: oklch(0.52 0.19 155);
    --psi-palette-emberAmber: oklch(0.75 0.1582 75);
    --psi-palette-emberRuby: oklch(0.55 0.22 25);
    --psi-palette-white: oklch(1 0 0);
    --psi-palette-black: oklch(0 0 0);
    --psi-bg-primary: var(--psi-palette-emberCanvas);
    --psi-bg-secondary: oklch(from var(--psi-palette-emberCanvas) calc(l + 0.015) calc(c + 0.003) h);
    --psi-fg-primary: var(--psi-palette-emberInk);
    --psi-fg-secondary: oklch(from var(--psi-fg-primary) l c h / 0.7);
    --psi-fg-tertiary: oklch(from var(--psi-fg-primary) l c h / 0.5);
    --psi-fg-quaternary: oklch(from var(--psi-fg-primary) l c h / 0.3);
    --psi-fg-primary-inverted: oklch(from var(--psi-palette-emberInk) 0.15 c h);
    --psi-fg-static-white: oklch(from var(--psi-palette-emberCanvas) 1 0 h);
    --psi-fg-static-black: oklch(from var(--psi-palette-emberInk) 0.25 min(c, 0.03) h);
    --psi-fg-on-accent: oklch(from var(--psi-fg-static-black) 0.14 c h);
    --psi-fg-accent: oklch(from var(--psi-palette-emberAccent) 0.75 min(c, 0.156) h);
    --psi-fg-success: oklch(from var(--psi-palette-emberEmerald) 0.75 min(c, 0.23) h);
    --psi-fg-warning: oklch(from var(--psi-palette-emberAmber) 0.75 min(c, 0.1582) h);
    --psi-fg-danger: oklch(from var(--psi-palette-emberRuby) 0.75 min(c, 0.1505) h);
    --psi-fill-neutral1: oklch(from var(--psi-palette-emberInk) 0.18 0.012 h);
    --psi-fill-neutral2: oklch(from var(--psi-palette-emberInk) 0.2 0.015 h);
    --psi-fill-neutral3: oklch(from var(--psi-palette-emberInk) 0.23 0.018 h);
    --psi-fill-neutral4: oklch(from var(--psi-palette-emberInk) 0.26 0.02 h);
    --psi-fill-neutral5: oklch(from var(--psi-palette-emberInk) 0.29 0.022 h);
    --psi-fill-neutral6: oklch(from var(--psi-palette-emberInk) 0.32 0.025 h);
    --psi-fill-accent: var(--psi-palette-emberAccent);
    --psi-fill-success: oklch(from var(--psi-palette-emberEmerald) l min(c, 0.1285) h);
    --psi-fill-warning: var(--psi-palette-emberAmber);
    --psi-fill-danger: var(--psi-palette-emberRuby);
    --psi-fill-tint-accent: oklch(from var(--psi-fg-accent) l c h / 0.15);
    --psi-fill-tint-success: oklch(from var(--psi-fg-success) l c h / 0.15);
    --psi-fill-tint-warning: oklch(from var(--psi-fg-warning) l c h / 0.15);
    --psi-fill-tint-danger: oklch(from var(--psi-fg-danger) l c h / 0.15);
    --psi-fill-static-white: var(--psi-fg-static-white);
    --psi-border-faint: oklch(from var(--psi-fg-primary) l c h / 0.08);
    --psi-border-neutral: oklch(from var(--psi-fg-primary) l c h / 0.15);
    --psi-border-strong: oklch(from var(--psi-fg-primary) l c h / 0.3);
    --psi-border-focus: var(--psi-fg-accent);
    --psi-scrim-soft: oklch(from var(--psi-bg-primary) l c h / 0.25);
    --psi-scrim-medium: oklch(from var(--psi-bg-primary) l c h / 0.35);
    --psi-scrim-heavy: oklch(from var(--psi-bg-primary) l c h / 0.82);
    --psi-bg-inverted: var(--psi-fg-primary);
    --psi-fg-on-inverted: var(--psi-bg-primary);
    --psi-font-sans: "Archivo", system-ui, sans-serif;
    --psi-font-serif: "IBM Plex Serif", Georgia, serif;
    --psi-font-mono: "IBM Plex Mono", "Courier New", monospace;
    --psi-font-display: "Archivo", system-ui, sans-serif;
  }
}
@layer psi.components {
  [data-psi-theme="ember"] {
    --psi-button-font: var(--psi-text-mono-15-24-regular);
    --psi-card-radius: 0;
    --psi-media-tint: grayscale(1) sepia(0.65) saturate(1.6) hue-rotate(-12deg) brightness(0.88) contrast(1.05);
  }
}
