/* Fabric — shared brand tokens. Fonts are referenced, not bundled. */
:root {
  color-scheme: dark;
  --fabric-red: #FF1A1A;
  --fabric-white: #FAFAFB;
  --fabric-gray: #A1A1AA;
  --fabric-black: #050505;
  --fabric-carbon: #0B0B0B;
  --fabric-graphite: #1A1A1A;
  --fabric-border: #2A2A2F;
  --fabric-bg: var(--fabric-black);
  --fabric-surface: var(--fabric-carbon);
  --fabric-surface-raised: var(--fabric-graphite);
  --fabric-text: var(--fabric-white);
  --fabric-text-muted: var(--fabric-gray);
  --fabric-accent: var(--fabric-red);
  --fabric-on-accent: var(--fabric-black);
  --fabric-border-decorative: var(--fabric-border);
  --fabric-border-interactive: var(--fabric-gray);
  --fabric-focus: var(--fabric-white);
  --fabric-font-sans: Inter, Geist, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --fabric-font-mono: "IBM Plex Mono", "SFMono-Regular", Consolas, "Liberation Mono", monospace;
  --fabric-space-1: 4px;
  --fabric-space-2: 8px;
  --fabric-space-3: 12px;
  --fabric-space-4: 16px;
  --fabric-space-6: 24px;
  --fabric-space-8: 32px;
  --fabric-space-12: 48px;
  --fabric-space-16: 64px;
  --fabric-space-24: 96px;
  --fabric-radius: 0px;
  --fabric-border-width: 1px;
  --fabric-duration: 160ms;
  --fabric-ease: cubic-bezier(0.2, 0, 0, 1);
}
.fabric-primary {
  border: 1px solid var(--fabric-red);
  border-radius: var(--fabric-radius);
  background: var(--fabric-red);
  color: var(--fabric-on-accent);
  padding: 12px 20px;
  font: 600 14px/1.4 var(--fabric-font-sans);
}
.fabric-secondary {
  border: 1px solid var(--fabric-border-interactive);
  border-radius: var(--fabric-radius);
  background: transparent;
  color: var(--fabric-text);
  padding: 12px 20px;
  font: 600 14px/1.4 var(--fabric-font-sans);
}
.fabric-primary:focus-visible,
.fabric-secondary:focus-visible {
  outline: 2px solid var(--fabric-focus);
  outline-offset: 4px;
}
@media (prefers-reduced-motion: reduce) {
  :root { --fabric-duration: 0ms; }
}
