@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;500;600;700;800;900&family=Space+Mono:ital,wght@0,400;0,700;1,400&family=Inter:wght@300;400;500;600;700&display=swap');

/* Typography utilities */
.font-sans-clean {
  font-family: 'Space Grotesk', 'Inter', -apple-system, sans-serif;
}

.font-mono {
  font-family: 'Space Mono', 'Courier New', monospace;
}

.tracking-luxury {
  letter-spacing: 0.2em;
}

.tracking-widest {
  letter-spacing: 0.5em;
}

.tracking-tighter {
  letter-spacing: -0.02em;
}

.tracking-tight {
  letter-spacing: -0.01em;
}

.tracking-normal {
  letter-spacing: 0em;
}

.tracking-wider {
  letter-spacing: 0.1em;
}

.uppercase {
  text-transform: uppercase;
}

.lowercase {
  text-transform: lowercase;
}

/* Text colors */
.text-text { color: var(--color-text); }
.text-muted { color: var(--color-muted); }
.text-muted-strong { color: var(--color-muted-strong); }
.text-botanical { color: var(--color-botanical); }
.text-botanical-bright { color: var(--color-botanical-bright); }
.text-orange { color: var(--color-orange); }
.text-line { color: var(--color-line); }
.text-line-subtle { color: var(--color-line-subtle); }

/* Background colors */
.bg-bg { background-color: var(--color-bg); }
-bg-surface { background-color: var(--color-surface); }
-bg-surface-elevated { background-color: var(--color-surface-elevated); }
-bg-orange { background-color: var(--color-orange); }

/* Border colors */
.border-line { border-color: var(--color-line); }
.border-line-subtle { border-color: var(--color-line-subtle); }

/* Transitions */
.transition-fast { transition: var(--transition-fast); }
.transition-base { transition: var(--transition-base); }

/* Focus visible */
*:focus-visible {
  outline: 2px solid var(--color-botanical-bright);
  outline-offset: 2px;
}