/* Kairos Design Tokens - shared across all files */
:root {
  /* Neutrals */
  --background: #FFFFFF;
  --bg: #F8FAFC;
  --card: #FFFFFF;
  --foreground: #0A0A0A;
  --muted: #64748B;
  --muted-bg: #F8FAFC;
  --muted-foreground: #64748B;
  --border: #E2E8F0;
  --input: #E2E8F0;
  --ring: #2563EB;

  /* Semantic */
  --success: #10B981;
  --success-bg: #D1FAE5;
  --warning: #F59E0B;
  --warning-bg: #FEF3C7;
  --danger: #EF4444;
  --danger-bg: #FEE2E2;
  --info: #3B82F6;
  --info-bg: #DBEAFE;

  /* Default brand (odonto) */
  --primary: #0284C7;
  --primary-hover: #0369A1;
  --primary-soft: #E0F2FE;
  --primary-fg: #FFFFFF;
  --accent: #06B6D4;
  --surface: #FFFFFF;
  --text-bg: #F1F5F9;
  --success-soft: #D1FAE5;
  --danger-soft: #FEE2E2;
  --warning-soft: #FEF3C7;

  /* Typography */
  --font-sans: 'Inter', 'SF Pro Display', system-ui, sans-serif;
  --font-display: 'Plus Jakarta Sans', 'Inter', sans-serif;
  --font-mono: 'JetBrains Mono', 'SF Mono', monospace;

  /* Radii */
  --radius-sm: 0.25rem;
  --radius-md: 0.5rem;
  --radius-lg: 0.75rem;
  --radius-xl: 1rem;
  --radius-2xl: 1.5rem;
  --radius-full: 9999px;

  /* Shadows */
  --shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
  --shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, 0.08);
  --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
  --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
  --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1);

  /* Motion */
  --ease-out: cubic-bezier(0, 0, 0.2, 1);
  --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
  --duration-fast: 150ms;
  --duration-base: 250ms;
  --duration-slow: 400ms;
}

/* Segment themes */
[data-segment="barbearia"] {
  --primary: #0F172A;
  --accent: #D97706;
  --surface: #18181B;
  --text-bg: #F5F5F4;
  --font-display: 'Bebas Neue', 'Impact', sans-serif;
}
[data-segment="odonto"] {
  --primary: #0284C7;
  --accent: #06B6D4;
  --text-bg: #F0F9FF;
  --font-display: 'Plus Jakarta Sans', sans-serif;
}
[data-segment="fisio"] {
  --primary: #059669;
  --accent: #10B981;
  --text-bg: #ECFDF5;
  --font-display: 'DM Sans', sans-serif;
}
[data-segment="psico"] {
  --primary: #7C3AED;
  --accent: #A78BFA;
  --surface: #FAFAF9;
  --text-bg: #F5F3FF;
  --font-display: 'Fraunces', 'Georgia', serif;
}
[data-segment="estetica"] {
  --primary: #DB2777;
  --accent: #F472B6;
  --text-bg: #FDF2F8;
  --font-display: 'Playfair Display', serif;
}
[data-segment="generica"] {
  --primary: #2563EB;
  --accent: #60A5FA;
  --text-bg: #EFF6FF;
  --font-display: 'Cal Sans', sans-serif;
}

* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body {
  font-family: var(--font-sans);
  color: var(--foreground);
  background: var(--background);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* Common reset */
button { font-family: inherit; cursor: pointer; border: none; background: none; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
input, textarea, select { font-family: inherit; }

/* Scrollbar */
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 999px; }
::-webkit-scrollbar-thumb:hover { background: #94a3b8; }
