/* ==========================================================================
   Base Styles & Design Tokens - Health & Vitality Hub
   Palette moderne Dark Fitness, typographie fluide & reset CSS
   ========================================================================== */

:root {
  --font-sans: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  --font-mono: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;

  /* Couleurs Fond & Surfaces */
  --bg-app: #090d16;
  --bg-card: #111827;
  --bg-card-subtle: #1e293b;
  --bg-card-hover: #26334d;
  --border-color: rgba(255, 255, 255, 0.08);
  --border-active: rgba(16, 185, 129, 0.4);

  /* Couleurs Sémantiques */
  --color-primary: #10b981; /* Emerald Vitalité */
  --color-primary-hover: #059669;
  --color-primary-soft: rgba(16, 185, 129, 0.12);

  --color-cyan: #06b6d4;
  --color-indigo: #6366f1;
  --color-amber: #f59e0b;
  --color-rose: #f43f5e;
  --color-purple: #a855f7;

  /* Typographie */
  --text-main: #f8fafc;
  --text-muted: #94a3b8;
  --text-dim: #64748b;

  /* Espacements & Rayons */
  --radius-sm: 8px;
  --radius-md: 14px;
  --radius-lg: 20px;
  --radius-full: 9999px;

  /* Ombres */
  --shadow-card: 0 4px 20px -2px rgba(0, 0, 0, 0.5);
  --shadow-glow-emerald: 0 0 25px rgba(16, 185, 129, 0.25);
  --shadow-glow-orange: 0 0 25px rgba(245, 158, 11, 0.25);
}

*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  -webkit-tap-highlight-color: transparent;
}

html, body {
  width: 100%;
  height: 100%;
  overflow: hidden;
  background-color: var(--bg-app);
  color: var(--text-main);
  font-family: var(--font-sans);
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

#app {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  position: relative;
  overflow: hidden;
  max-width: 680px;
  margin: 0 auto;
}

/* Scrollbar personnalisée */
::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}
::-webkit-scrollbar-track {
  background: transparent;
}
::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.15);
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 0.25);
}

/* Utilitaires */
.flex-1 { flex: 1; }
.mt-2 { margin-top: 8px; }
.mt-4 { margin-top: 16px; }
.cursor-pointer { cursor: pointer; }
.text-xs { font-size: 0.75rem; }
.text-muted { color: var(--text-muted); }
