@import "tailwindcss";

@theme {
  --color-primary: #000000;
  --color-on-primary: #ffffff;
  --color-primary-container: #1c1b1b;
  --color-on-primary-container: #858383;
  --color-inverse-primary: #c8c6c5;
  --color-primary-fixed: #e5e2e1;
  --color-on-primary-fixed: #1c1b1b;
  --color-on-primary-fixed-variant: #474646;
  --color-primary-fixed-dim: #c8c6c5;

  --color-secondary: #8d4d36;
  --color-on-secondary: #ffffff;
  --color-secondary-container: #fdaa8d;
  --color-on-secondary-container: #783c27;
  --color-secondary-fixed: #ffdbcf;
  --color-on-secondary-fixed: #390c00;
  --color-on-secondary-fixed-variant: #703621;
  --color-secondary-fixed-dim: #ffb59c;

  --color-tertiary: #000000;
  --color-on-tertiary: #ffffff;
  --color-tertiary-container: #1c1c19;
  --color-on-tertiary-container: #858480;
  --color-tertiary-fixed: #e5e2dd;
  --color-on-tertiary-fixed: #1c1c19;
  --color-on-tertiary-fixed-variant: #474743;
  --color-tertiary-fixed-dim: #c9c6c2;

  --color-surface: #fbf9f9;
  --color-on-surface: #1b1c1c;
  --color-on-surface-variant: #444748;
  --color-surface-variant: #e4e2e2;
  --color-surface-dim: #dbdad9;
  --color-surface-bright: #fbf9f9;
  --color-surface-tint: #5f5e5e;
  --color-surface-container-lowest: #ffffff;
  --color-surface-container-low: #f5f3f3;
  --color-surface-container: #efeded;
  --color-surface-container-high: #e9e8e7;
  --color-surface-container-highest: #e4e2e2;
  --color-inverse-surface: #303031;
  --color-inverse-on-surface: #f2f0f0;

  --color-outline: #747878;
  --color-outline-variant: #c4c7c7;

  --color-error: #ba1a1a;
  --color-on-error: #ffffff;
  --color-error-container: #ffdad6;
  --color-on-error-container: #93000a;

  --color-background: #fbf9f9;
  --color-on-background: #1b1c1c;

  --font-plus-jakarta: "Plus Jakarta Sans", sans-serif;

  --font-headline-xl: "Plus Jakarta Sans";
  --font-label-caps: "Plus Jakarta Sans";
  --font-body-lg: "Plus Jakarta Sans";
  --font-body-md: "Plus Jakarta Sans";
  --font-headline-md: "Plus Jakarta Sans";
  --font-headline-xl-mobile: "Plus Jakarta Sans";
  --font-headline-lg: "Plus Jakarta Sans";

  --font-size-headline-xl: 64px;
  --font-size-headline-xl-mobile: 40px;
  --font-size-headline-lg: 48px;
  --font-size-headline-md: 32px;
  --font-size-body-lg: 18px;
  --font-size-body-md: 16px;
  --font-size-label-caps: 12px;

  --spacing-stack-sm: 0.5rem;
  --spacing-stack-md: 1.5rem;
  --spacing-stack-lg: 3rem;
  --spacing-margin-mobile: 1.5rem;
  --spacing-margin-page: 4rem;
  --spacing-section-gap: 8rem;
  --spacing-gutter: 1.5rem;

  --radius-xl: 0.75rem;
  --radius-2xl: 1rem;
  --radius-3xl: 1.5rem;
  --radius-4xl: 2rem;
  --radius-5xl: 2.5rem;
}

@layer base {
  body {
    @apply bg-background text-on-background font-body-md antialiased;
  }
}

@layer components {
  .glass-card {
    background: rgba(251, 249, 249, 0.6);
    backdrop-filter: blur(12px);
    border: 1px solid rgba(0, 0, 0, 0.05);
  }

  .font-headline-xl {
    font-family: var(--font-headline-xl);
    font-size: var(--font-size-headline-xl);
    line-height: 1.1;
    letter-spacing: -0.03em;
    font-weight: 600;
  }

  .font-headline-lg {
    font-family: var(--font-headline-lg);
    font-size: var(--font-size-headline-lg);
    line-height: 1.2;
    letter-spacing: -0.02em;
    font-weight: 600;
  }

  .font-headline-md {
    font-family: var(--font-headline-md);
    font-size: var(--font-size-headline-md);
    line-height: 1.3;
    letter-spacing: -0.01em;
    font-weight: 500;
  }

  .font-label-caps {
    font-family: var(--font-label-caps);
    font-size: var(--font-size-label-caps);
    line-height: 1.2;
    letter-spacing: 0.1em;
    font-weight: 600;
    text-transform: uppercase;
  }
}
