/* Generated by @malevich/core build — do not edit by hand. */
:root {
  /* Foundations — internal, do not consume directly */
  --palette-accent: #D32F1E;
  --palette-accent-100: oklch(0.920 0.050 28);
  --palette-accent-200: oklch(0.850 0.100 28);
  --palette-accent-300: oklch(0.770 0.150 28);
  --palette-accent-400: oklch(0.680 0.190 28);
  --palette-accent-50: oklch(0.960 0.025 28);
  --palette-accent-500: oklch(0.585 0.210 28);
  --palette-accent-600: oklch(0.500 0.200 28);
  --palette-accent-700: oklch(0.420 0.170 28);
  --palette-accent-800: oklch(0.330 0.130 28);
  --palette-accent-900: oklch(0.240 0.100 28);
  --palette-accent-950: oklch(0.160 0.070 28);
  --palette-accent-muted: #F5C4BE;
  --palette-accent-strong: #A8240F;
  --palette-bone: #E8E2D5;
  --palette-border-default: #1A1A1A;
  --palette-border-muted: #C4C0B5;
  --palette-border-strong: #0A0A0A;
  --palette-canvas: #FAFAFA;
  --palette-danger: #D32F1E;
  --palette-danger-bright: oklch(0.720 0.180 28);
  --palette-info: #1A4FB5;
  --palette-info-bright: oklch(0.680 0.170 260);
  --palette-ink: #0A0A0A;
  --palette-neutral-0: oklch(0.995 0 0);
  --palette-neutral-100: oklch(0.960 0 0);
  --palette-neutral-1000: oklch(0.060 0 0);
  --palette-neutral-200: oklch(0.920 0 0);
  --palette-neutral-300: oklch(0.840 0 0);
  --palette-neutral-400: oklch(0.720 0 0);
  --palette-neutral-50: oklch(0.985 0 0);
  --palette-neutral-500: oklch(0.580 0 0);
  --palette-neutral-600: oklch(0.450 0 0);
  --palette-neutral-700: oklch(0.340 0 0);
  --palette-neutral-800: oklch(0.240 0 0);
  --palette-neutral-900: oklch(0.160 0 0);
  --palette-neutral-950: oklch(0.100 0 0);
  --palette-success: #1F6E2D;
  --palette-success-bright: oklch(0.750 0.150 145);
  --palette-surface-float: #FFFFFF;
  --palette-surface-overlay: rgba(10,10,10,0.65);
  --palette-surface-raised: #FFFFFF;
  --palette-warning: #E8B547;
  --palette-warning-bright: #E8B547;
  --scale-radius-0: 0;
  --scale-radius-1: 2px;
  --scale-radius-2: 4px;
  --scale-radius-3: 6px;
  --scale-radius-4: 8px;
  --scale-radius-5: 12px;
  --scale-radius-6: 16px;
  --scale-radius-7: 24px;
  --scale-spacing-0: 0;
  --scale-spacing-1: 4px;
  --scale-spacing-2: 8px;
  --scale-spacing-3: 12px;
  --scale-spacing-4: 16px;
  --scale-spacing-5: 24px;
  --scale-spacing-6: 32px;
  --scale-spacing-7: 48px;
  --scale-spacing-8: 64px;
  --scale-spacing-9: 96px;
  --scale-shadow-1: 0 1px 2px rgba(10,10,10,0.08);
  --scale-shadow-2: 0 2px 8px rgba(10,10,10,0.12);
  --scale-shadow-3: 0 8px 24px rgba(10,10,10,0.18);
  --scale-shadow-4: 0 16px 48px rgba(10,10,10,0.25);
  --scale-control-l: 3rem;
  --scale-control-m: 2.5rem;
  --scale-control-s: 2rem;
  --scale-control-xl: 3.5rem;
  --scale-border-width-0: 0;
  --scale-border-width-1: 1px;
  --scale-border-width-2: 2px;
  --scale-border-width-3: 4px;
  --font-family-display: 'NAMU 1930', 'Druk', system-ui, sans-serif;
  --font-family-mono: 'JuliaMono', 'JetBrains Mono', ui-monospace, monospace;
  --font-family-regular: 'NAMU Pro', 'Inter', system-ui, sans-serif;
  --font-size-10: 10px;
  --font-size-11: 11px;
  --font-size-12: 12px;
  --font-size-13: 13px;
  --font-size-14: 14px;
  --font-size-16: 16px;
  --font-size-18: 18px;
  --font-size-22: 22px;
  --font-size-24: 24px;
  --font-size-32: 32px;
  --font-size-48: 48px;
  --font-size-72: 72px;
  --font-weight-black: 900;
  --font-weight-bold: 700;
  --font-weight-medium: 500;
  --font-weight-regular: 400;
  --font-weight-semibold: 600;
  --line-height-100: 1.0;
  --line-height-105: 1.05;
  --line-height-110: 1.1;
  --line-height-115: 1.15;
  --line-height-120: 1.2;
  --line-height-125: 1.25;
  --line-height-130: 1.3;
  --line-height-135: 1.35;
  --line-height-140: 1.4;
  --line-height-145: 1.45;
  --line-height-150: 1.5;
  --line-height-155: 1.55;
  --line-height-160: 1.6;
  --letter-spacing-0: 0;
  --letter-spacing-tight-0: -0.005em;
  --letter-spacing-tight-1: -0.01em;
  --letter-spacing-tight-2: -0.025em;
  --letter-spacing-tight-3: -0.035em;
  --letter-spacing-upper-1: 0.10em;
  --letter-spacing-upper-2: 0.12em;
  --letter-spacing-upper-3: 0.16em;
  --letter-spacing-upper-4: 0.24em;
  --letter-spacing-wide-1: 0.005em;
  --letter-spacing-wide-2: 0.01em;
  --letter-spacing-wide-3: 0.015em;
  --letter-spacing-wide-4: 0.02em;
  --letter-spacing-wide-5: 0.04em;
  --motion-duration-base: 200ms;
  --motion-duration-fast: 120ms;
  --motion-duration-slow: 320ms;
  --motion-easing-default: cubic-bezier(0.4, 0, 0.2, 1);
  --motion-easing-in: cubic-bezier(0.4, 0, 1, 1);
  --motion-easing-in-out: cubic-bezier(0.4, 0, 0.2, 1);
  --motion-easing-out: cubic-bezier(0, 0, 0.2, 1);

  /* Semantic — primary consumption surface */
  --color-accent: #D32F1E;
  --color-accent-muted: #F5C4BE;
  --color-accent-strong: #A8240F;
  --color-bone: #E8E2D5;
  --color-border-default: #1A1A1A;
  --color-border-muted: #C4C0B5;
  --color-border-strong: #0A0A0A;
  --color-danger: #D32F1E;
  --color-info: #1A4FB5;
  --color-ink-inverse: #FAFAFA;
  --color-ink-regular: oklch(0.340 0 0);
  --color-ink-strong: #0A0A0A;
  --color-ink-subtle: oklch(0.580 0 0);
  --color-success: #1F6E2D;
  --color-surface-canvas: #FAFAFA;
  --color-surface-float: #FFFFFF;
  --color-surface-overlay: rgba(10,10,10,0.65);
  --color-surface-raised: #FFFFFF;
  --color-warning: #E8B547;
  --font-body-lead-family: 'NAMU Pro', 'Inter', system-ui, sans-serif;
  --font-body-lead-size: 18px;
  --font-body-lead-weight: 400;
  --font-body-lead-line-height: 1.5;
  --font-body-lead-letter-spacing: 0;
  --font-body-regular-family: 'NAMU Pro', 'Inter', system-ui, sans-serif;
  --font-body-regular-size: 16px;
  --font-body-regular-weight: 400;
  --font-body-regular-line-height: 1.55;
  --font-body-regular-letter-spacing: 0;
  --font-body-support-family: 'NAMU Pro', 'Inter', system-ui, sans-serif;
  --font-body-support-size: 14px;
  --font-body-support-weight: 400;
  --font-body-support-line-height: 1.5;
  --font-body-support-letter-spacing: 0.005em;
  --font-caption-family: 'NAMU Pro', 'Inter', system-ui, sans-serif;
  --font-caption-size: 12px;
  --font-caption-weight: 400;
  --font-caption-line-height: 1.45;
  --font-caption-letter-spacing: 0.01em;
  --font-code-family: 'JuliaMono', 'JetBrains Mono', ui-monospace, monospace;
  --font-code-size: 14px;
  --font-code-weight: 400;
  --font-code-line-height: 1.5;
  --font-code-letter-spacing: 0;
  --font-display-hero-family: 'NAMU 1930', 'Druk', system-ui, sans-serif;
  --font-display-hero-size: clamp(2.5rem, 1.5rem + 5vw, 5rem);
  --font-display-hero-weight: 900;
  --font-display-hero-line-height: 1.0;
  --font-display-hero-letter-spacing: -0.035em;
  --font-display-statement-family: 'NAMU 1930', 'Druk', system-ui, sans-serif;
  --font-display-statement-size: clamp(2rem, 1.5rem + 3vw, 3.5rem);
  --font-display-statement-weight: 700;
  --font-display-statement-line-height: 1.05;
  --font-display-statement-letter-spacing: -0.025em;
  --font-display-title-family: 'NAMU 1930', 'Druk', system-ui, sans-serif;
  --font-display-title-size: clamp(1.75rem, 1.25rem + 2vw, 2.5rem);
  --font-display-title-weight: 700;
  --font-display-title-line-height: 1.1;
  --font-display-title-letter-spacing: -0.025em;
  --font-eyebrow-family: 'NAMU 1930', 'Druk', system-ui, sans-serif;
  --font-eyebrow-size: 12px;
  --font-eyebrow-weight: 700;
  --font-eyebrow-line-height: 1.2;
  --font-eyebrow-letter-spacing: 0.04em;
  --font-heading-group-family: 'NAMU Pro', 'Inter', system-ui, sans-serif;
  --font-heading-group-size: 16px;
  --font-heading-group-weight: 600;
  --font-heading-group-line-height: 1.5;
  --font-heading-group-letter-spacing: 0;
  --font-heading-section-family: 'NAMU Pro', 'Inter', system-ui, sans-serif;
  --font-heading-section-size: 18px;
  --font-heading-section-weight: 600;
  --font-heading-section-line-height: 1.3;
  --font-heading-section-letter-spacing: -0.005em;
  --font-heading-subsection-family: 'NAMU Pro', 'Inter', system-ui, sans-serif;
  --font-heading-subsection-size: 16px;
  --font-heading-subsection-weight: 600;
  --font-heading-subsection-line-height: 1.35;
  --font-heading-subsection-letter-spacing: 0;
  --font-heading-title-family: 'NAMU Pro', 'Inter', system-ui, sans-serif;
  --font-heading-title-size: 24px;
  --font-heading-title-weight: 600;
  --font-heading-title-line-height: 1.25;
  --font-heading-title-letter-spacing: -0.01em;
  --font-mono-l-family: 'JuliaMono', 'JetBrains Mono', ui-monospace, monospace;
  --font-mono-l-size: 16px;
  --font-mono-l-weight: 400;
  --font-mono-l-line-height: 1.5;
  --font-mono-l-letter-spacing: 0;
  --font-mono-m-family: 'JuliaMono', 'JetBrains Mono', ui-monospace, monospace;
  --font-mono-m-size: 14px;
  --font-mono-m-weight: 400;
  --font-mono-m-line-height: 1.5;
  --font-mono-m-letter-spacing: 0;
  --font-mono-s-family: 'JuliaMono', 'JetBrains Mono', ui-monospace, monospace;
  --font-mono-s-size: 12px;
  --font-mono-s-weight: 400;
  --font-mono-s-line-height: 1.5;
  --font-mono-s-letter-spacing: 0;
  --font-overline-family: 'NAMU 1930', 'Druk', system-ui, sans-serif;
  --font-overline-size: 11px;
  --font-overline-weight: 700;
  --font-overline-line-height: 1.2;
  --font-overline-letter-spacing: 0.12em;
  --radius-avatar: 9999px;
  --radius-block: 4px;
  --radius-button: 2px;
  --radius-card: 4px;
  --radius-dialog: 6px;
  --radius-field: 2px;
  --radius-pill: 9999px;
  --radius-section: 0;
  --radius-tag: 16px;
  --radius-tooltip: 4px;
  --space-gap-blocks-l: 32px;
  --space-gap-blocks-m: 24px;
  --space-gap-blocks-s: 16px;
  --space-gap-elements-l: 12px;
  --space-gap-elements-m: 8px;
  --space-gap-elements-s: 4px;
  --space-gap-sections-l: 96px;
  --space-gap-sections-m: 64px;
  --space-gap-sections-s: 48px;
  --space-inset-block-l: 32px;
  --space-inset-block-m: 24px;
  --space-inset-block-s: 12px;
  --space-inset-element-l: 12px;
  --space-inset-element-m: 8px;
  --space-inset-element-s: 4px;
  --space-inset-section-l: 64px;
  --space-inset-section-m: 48px;
  --space-inset-section-s: 32px;
  --shadow-flat: none;
  --shadow-float: 0 2px 8px rgba(10,10,10,0.12);
  --shadow-overlay: 0 8px 24px rgba(10,10,10,0.18);
  --shadow-raised: 0 1px 2px rgba(10,10,10,0.08);
  --motion-base: 200ms;
  --motion-easing-default: cubic-bezier(0.4, 0, 0.2, 1);
  --motion-easing-in: cubic-bezier(0.4, 0, 1, 1);
  --motion-easing-out: cubic-bezier(0, 0, 0.2, 1);
  --motion-fast: 120ms;
  --motion-slow: 320ms;
  --size-control-l: 3rem;
  --size-control-m: 2.5rem;
  --size-control-s: 2rem;
  --size-control-xl: 3.5rem;
  --border-width-emphasis: 2px;
  --border-width-focus: 2px;
  --border-width-hairline: 1px;

  /* Component-specific — refinement layer */
  --alert-background-danger: #D32F1E;
  --alert-background-info: #1A4FB5;
  --alert-background-success: #1F6E2D;
  --alert-background-warning: #E8B547;
  --alert-text-danger: #FAFAFA;
  --alert-text-info: #FAFAFA;
  --alert-text-success: #FAFAFA;
  --alert-text-warning: #0A0A0A;
  --block-layout-measure: 64rem;
  --block-layout-measure-narrow: 40rem;
  --block-layout-measure-wide: 80rem;
  --button-background-accent-active: oklch(0.420 0.170 28);
  --button-background-danger-active: oklch(0.420 0.170 28);
  --button-background-disabled: oklch(0.920 0 0);
  --button-background-ghost-hover: oklch(0.960 0 0);
  --button-border-disabled: oklch(0.840 0 0);
  --button-text-disabled: oklch(0.580 0 0);
  --card-background: #FFFFFF;
  --card-background-feature: #E8E2D5;
  --card-border: #C4C0B5;
  --card-padding: 24px;
  --carousel-slide-min: 18rem;
  --checkbox-background: #FAFAFA;
  --checkbox-background-checked: #D32F1E;
  --checkbox-border: #0A0A0A;
  --checkbox-border-checked: #D32F1E;
  --checkbox-check-color: #FAFAFA;
  --dialog-backdrop: rgba(10,10,10,0.65);
  --dialog-background: #FAFAFA;
  --dialog-border: #1A1A1A;
  --dialog-max-width: 560px;
  --dialog-max-width-large: 720px;
  --grid-layout-cell-min: 16rem;
  --hero-max-content: 56rem;
  --hero-split-min: 20rem;
  --icon-baseline: -0.125em;
  --icon-inline-size: 1em;
  --input-background: #FAFAFA;
  --input-background-disabled: oklch(0.960 0 0);
  --input-background-error: #FAFAFA;
  --input-border: #0A0A0A;
  --input-border-error: #D32F1E;
  --input-border-focus: #D32F1E;
  --input-text-placeholder: oklch(0.580 0 0);
  --notifications-width: 22rem;
  --popover-max-width: 22rem;
  --sheet-size: 28rem;
  --site-footer-extended-column-min: 12rem;
  --site-header-mobile-breakpoint: 640px;
  --site-header-sticky-blur: 8px;
  --split-layout-panel-min: 20rem;
  --tabs-rail-color: #1A1A1A;
  --tabs-tab-background-active: transparent;
  --tabs-tab-border-active: #D32F1E;
  --tabs-tab-text-active: #0A0A0A;
}

[data-color-scheme="dark"] {
  /* Semantic — dark overrides */
  --color-accent-muted: oklch(0.240 0.100 28);
  --color-bone: oklch(0.240 0 0);
  --color-border-default: #FAFAFA;
  --color-border-muted: oklch(0.340 0 0);
  --color-border-strong: oklch(0.995 0 0);
  --color-danger: oklch(0.720 0.180 28);
  --color-info: oklch(0.680 0.170 260);
  --color-ink-inverse: #0A0A0A;
  --color-ink-regular: oklch(0.840 0 0);
  --color-ink-strong: #FAFAFA;
  --color-success: oklch(0.750 0.150 145);
  --color-surface-canvas: #0A0A0A;
  --color-surface-float: oklch(0.240 0 0);
  --color-surface-overlay: rgba(0,0,0,0.85);
  --color-surface-raised: oklch(0.160 0 0);
  --shadow-float: 0 4px 12px rgba(0,0,0,0.45);
  --shadow-overlay: 0 12px 32px rgba(0,0,0,0.55);
  --shadow-raised: 0 1px 2px rgba(0,0,0,0.35);

  /* Component-specific — dark overrides */
  --alert-background-danger: oklch(0.720 0.180 28);
  --alert-background-info: oklch(0.680 0.170 260);
  --alert-background-success: oklch(0.750 0.150 145);
  --alert-text-danger: #0A0A0A;
  --alert-text-info: #0A0A0A;
  --alert-text-success: #0A0A0A;
  --button-background-accent-active: oklch(0.330 0.130 28);
  --button-background-danger-active: oklch(0.330 0.130 28);
  --button-background-disabled: oklch(0.240 0 0);
  --button-background-ghost-hover: oklch(0.240 0 0);
  --button-border-disabled: oklch(0.340 0 0);
  --card-background: oklch(0.160 0 0);
  --card-background-feature: oklch(0.240 0 0);
  --card-border: oklch(0.340 0 0);
  --checkbox-background: #0A0A0A;
  --checkbox-border: oklch(0.995 0 0);
  --checkbox-check-color: #0A0A0A;
  --dialog-backdrop: rgba(0,0,0,0.85);
  --dialog-background: #0A0A0A;
  --dialog-border: #FAFAFA;
  --input-background: #0A0A0A;
  --input-background-disabled: oklch(0.160 0 0);
  --input-background-error: #0A0A0A;
  --input-border: oklch(0.995 0 0);
  --input-border-error: oklch(0.720 0.180 28);
  --tabs-rail-color: oklch(0.340 0 0);
  --tabs-tab-text-active: #FAFAFA;
}

/* Typography utility classes — convenience for direct application */
.font-body-lead {
  font-family: var(--font-body-lead-family);
  font-size: var(--font-body-lead-size);
  font-weight: var(--font-body-lead-weight);
  line-height: var(--font-body-lead-line-height);
  letter-spacing: var(--font-body-lead-letter-spacing);
}
.font-body-regular {
  font-family: var(--font-body-regular-family);
  font-size: var(--font-body-regular-size);
  font-weight: var(--font-body-regular-weight);
  line-height: var(--font-body-regular-line-height);
  letter-spacing: var(--font-body-regular-letter-spacing);
}
.font-body-support {
  font-family: var(--font-body-support-family);
  font-size: var(--font-body-support-size);
  font-weight: var(--font-body-support-weight);
  line-height: var(--font-body-support-line-height);
  letter-spacing: var(--font-body-support-letter-spacing);
}
.font-caption {
  font-family: var(--font-caption-family);
  font-size: var(--font-caption-size);
  font-weight: var(--font-caption-weight);
  line-height: var(--font-caption-line-height);
  letter-spacing: var(--font-caption-letter-spacing);
}
.font-code {
  font-family: var(--font-code-family);
  font-size: var(--font-code-size);
  font-weight: var(--font-code-weight);
  line-height: var(--font-code-line-height);
  letter-spacing: var(--font-code-letter-spacing);
}
.font-display-hero {
  font-family: var(--font-display-hero-family);
  font-size: var(--font-display-hero-size);
  font-weight: var(--font-display-hero-weight);
  line-height: var(--font-display-hero-line-height);
  letter-spacing: var(--font-display-hero-letter-spacing);
}
.font-display-statement {
  font-family: var(--font-display-statement-family);
  font-size: var(--font-display-statement-size);
  font-weight: var(--font-display-statement-weight);
  line-height: var(--font-display-statement-line-height);
  letter-spacing: var(--font-display-statement-letter-spacing);
}
.font-display-title {
  font-family: var(--font-display-title-family);
  font-size: var(--font-display-title-size);
  font-weight: var(--font-display-title-weight);
  line-height: var(--font-display-title-line-height);
  letter-spacing: var(--font-display-title-letter-spacing);
}
.font-eyebrow {
  font-family: var(--font-eyebrow-family);
  font-size: var(--font-eyebrow-size);
  font-weight: var(--font-eyebrow-weight);
  line-height: var(--font-eyebrow-line-height);
  letter-spacing: var(--font-eyebrow-letter-spacing);
}
.font-heading-group {
  font-family: var(--font-heading-group-family);
  font-size: var(--font-heading-group-size);
  font-weight: var(--font-heading-group-weight);
  line-height: var(--font-heading-group-line-height);
  letter-spacing: var(--font-heading-group-letter-spacing);
}
.font-heading-section {
  font-family: var(--font-heading-section-family);
  font-size: var(--font-heading-section-size);
  font-weight: var(--font-heading-section-weight);
  line-height: var(--font-heading-section-line-height);
  letter-spacing: var(--font-heading-section-letter-spacing);
}
.font-heading-subsection {
  font-family: var(--font-heading-subsection-family);
  font-size: var(--font-heading-subsection-size);
  font-weight: var(--font-heading-subsection-weight);
  line-height: var(--font-heading-subsection-line-height);
  letter-spacing: var(--font-heading-subsection-letter-spacing);
}
.font-heading-title {
  font-family: var(--font-heading-title-family);
  font-size: var(--font-heading-title-size);
  font-weight: var(--font-heading-title-weight);
  line-height: var(--font-heading-title-line-height);
  letter-spacing: var(--font-heading-title-letter-spacing);
}
.font-mono-l {
  font-family: var(--font-mono-l-family);
  font-size: var(--font-mono-l-size);
  font-weight: var(--font-mono-l-weight);
  line-height: var(--font-mono-l-line-height);
  letter-spacing: var(--font-mono-l-letter-spacing);
}
.font-mono-m {
  font-family: var(--font-mono-m-family);
  font-size: var(--font-mono-m-size);
  font-weight: var(--font-mono-m-weight);
  line-height: var(--font-mono-m-line-height);
  letter-spacing: var(--font-mono-m-letter-spacing);
}
.font-mono-s {
  font-family: var(--font-mono-s-family);
  font-size: var(--font-mono-s-size);
  font-weight: var(--font-mono-s-weight);
  line-height: var(--font-mono-s-line-height);
  letter-spacing: var(--font-mono-s-letter-spacing);
}
.font-overline {
  font-family: var(--font-overline-family);
  font-size: var(--font-overline-size);
  font-weight: var(--font-overline-weight);
  line-height: var(--font-overline-line-height);
  letter-spacing: var(--font-overline-letter-spacing);
}
