:root {
  /* Base UI Kit Design Tokens */
  --ui-border: #d1cde0;
  --ui-border-muted: #e5e7eb;
  --ui-bg: #ffffff;
  --ui-bg-muted: #f5f2f9;
  --ui-bg-secondary: #f9fafb;
  --ui-text: #1a1a1a;
  --ui-text-secondary: #333333;
  --ui-text-muted: #6b7280;
  --ui-placeholder: #999999;
  --ui-primary: #2563eb;
  --ui-primary-hover: #1d4ed8;
  --ui-danger: #dc2626;
  --ui-danger-hover: #b91c1c;
  --ui-border-dark: #000000;

  /* Layout & Spacing */
  --gap: 16px;
  --header-padding: 24px;

  /* Canvas specific tokens */
  --canvas-bg: var(--ui-bg-muted);
  --canvas-border: var(--ui-border);
  --canvas-text: var(--ui-text);
  --canvas-placeholder: var(--ui-placeholder);

  /* Menu specific tokens */
  --menu-border: var(--ui-border-muted);
  --menu-bg: var(--ui-bg);
  --menu-bg-muted: var(--ui-bg-secondary);
  --menu-item-hover: var(--ui-bg-muted);
  --menu-item-active: #eff6ff;
  --menu-text-muted: var(--ui-text-muted);
  --menu-danger: var(--ui-danger);

  /* Base UI Kit Component Tokens */
  --button-min-height: 40px;
  --button-min-width: 40px;
  --input-padding: 12px 16px;
  --input-min-height: 40px;
  --input-border-radius: 6px;
}

/* Typography */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 500;
  color: var(--ui-text);
}

h1 {
  line-height: 0.75rem;
  font-size: 1.75rem;
  padding-bottom: 0.25rem;
}

h2 {
  margin-top: 2rem;
  line-height: 1.1rem;
  font-size: 1.25rem;
  margin-bottom: 1.25rem;
}

/* Reset and base styles */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  line-height: 1.6;
  color: var(--ui-text);
  background-color: var(--ui-bg);
}

p,
li {
  max-width: 60em;
}

section {
  margin-bottom: 2rem;
}

ul,
p,
section {
  break-inside: avoid;
}
