/* SeeYouYou design tokens — derived from Visual Identity v1.0 */
:root {
  /* Brand palette */
  --brand-violet-light: #A78BFA;
  --brand-violet-deep: #7C3AED;
  --brand-blue-light: #60A5FA;
  --brand-blue-strong: #3B82F6;
  --brand-blue-saturated: #4386F3;
  --brand-cream-warm: #FEF8F4;
  --brand-cream-soft: #FAF7F2;
  --brand-lavender: #E0D4FC;
  --text-primary-navy: #031259;
  --text-on-blue: #FFFFFF;
  --text-secondary: #4B5563;
  --text-muted: #6B7280;

  /* Surfaces (warm) */
  --surface-warm: #FEF8F4;
  --surface-soft: #FAF7F2;
  --surface-glass: rgba(254, 248, 244, 0.86);
  --surface-glass-strong: rgba(254, 248, 244, 0.94);
  --border-soft: rgba(124, 58, 237, 0.12);
  --border-stronger: rgba(124, 58, 237, 0.22);

  /* Accents derived */
  --violet-tint: rgba(167, 139, 250, 0.14);
  --blue-tint: rgba(67, 134, 243, 0.10);

  /* Shadows — soft, never harsh */
  --shadow-soft: 0 6px 24px -8px rgba(3, 18, 89, 0.18), 0 2px 6px -2px rgba(3, 18, 89, 0.08);
  --shadow-card: 0 18px 48px -16px rgba(3, 18, 89, 0.28), 0 4px 12px -4px rgba(3, 18, 89, 0.10);
  --shadow-pop: 0 24px 60px -18px rgba(67, 134, 243, 0.42), 0 6px 18px -6px rgba(124, 58, 237, 0.20);

  /* Typography */
  --font-display: 'Plus Jakarta Sans', system-ui, -apple-system, Segoe UI, Roboto, sans-serif;

  /* Motion */
  --ease-decel: cubic-bezier(0.2, 0.8, 0.2, 1);
  --ease-emph: cubic-bezier(0.05, 0.7, 0.1, 1);

  /* Radii — match in-app subtle rounding */
  --radius-xs: 8px;
  --radius-sm: 12px;
  --radius-md: 18px;
  --radius-lg: 24px;
  --radius-xl: 32px;
  --radius-pill: 999px;
}

* { box-sizing: border-box; }
html, body {
  margin: 0;
  padding: 0;
  font-family: var(--font-display);
  color: var(--text-primary-navy);
  background: #050817; /* deep space — visible while frames preload */
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
body { overflow-x: hidden; }
button { font-family: inherit; cursor: pointer; }
a { color: inherit; }

/* Utility */
.sr-only {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}
