/* ============================================================
   FarmGrinde Design Tokens — DRi Homepage Design System
   Premium minimal tech · Black + White + DRi Cyan · Inter

   Ported from AGENTiX (digirockinnovations/AGENTiX,
   public/assets/css/tokens.css) so the two products read as one
   system. Keep them in step: if AGENTiX moves, move this with it.
   ============================================================ */

:root {
  /* Core (HSL channels, consumed via hsl(var(--token))) */
  --background: 0 0% 100%;
  --foreground: 0 0% 0%;

  --primary: 190 100% 50%;          /* DRi Cyan ~ #00D4FF */
  --primary-foreground: 0 0% 0%;

  --secondary: 0 0% 96%;
  --secondary-foreground: 0 0% 0%;

  --muted: 0 0% 96%;
  --muted-foreground: 0 0% 45%;

  --border: 0 0% 90%;
  --input: 0 0% 90%;
  --ring: 190 100% 50%;

  --card: 0 0% 100%;
  --card-foreground: 0 0% 0%;

  --radius: 0.5rem;                 /* 8px */

  /* Convenience hex mirrors */
  --black: #000000;
  --white: #ffffff;
  --gray-soft: #f5f5f5;
  --gray-border: #e5e5e5;
  --gray-muted-text: #737373;
  --cyan: hsl(190 100% 50%);
  --cyan-soft: hsl(190 100% 70%);

  /* Dark sections (sidebar, auth, hero) */
  --dark-bg: #000000;
  --dark-card: #0d0d0d;
  --dark-border: rgba(255, 255, 255, 0.15);
  --dark-muted-text: rgba(255, 255, 255, 0.70);

  /* Accent gradient (cyan only — NOT the DRi X rainbow) */
  --accent-gradient: linear-gradient(135deg, hsl(190 100% 50%), hsl(190 100% 70%));

  /* Status / chart palette */
  --chart-primary: hsl(190 100% 50%);
  --chart-dark: #000000;
  --chart-muted: #a3a3a3;
  --success: #22c55e;
  --warning: #f59e0b;
  --danger: #ef4444;

  /* Tinted status surfaces, for pills and alerts */
  --success-tint: #ecfdf3;
  --success-ink:  #0f7a3d;
  --success-line: #c9f0d6;
  --warning-tint: #fffbeb;
  --warning-ink:  #92400e;
  --warning-line: #fde8bd;
  --danger-tint:  #fef3f2;
  --danger-ink:   #b42318;
  --danger-line:  #fdd8d3;
  --cyan-tint:    hsl(190 100% 50% / 0.10);
  --cyan-ink:     #0a6b82;
  --cyan-line:    hsl(190 100% 50% / 0.35);

  /* Spacing scale (8px base) */
  --space-xs: 4px;
  --space-sm: 8px;
  --space-md: 16px;
  --space-lg: 24px;
  --space-xl: 32px;
  --space-2xl: 48px;
  --space-3xl: 64px;

  /* Radii */
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 16px;
  --radius-full: 9999px;

  /* Elevation */
  --shadow-card: 0 20px 50px -10px rgb(0 0 0 / 0.08), 0 0 30px hsl(190 100% 50% / 0.08);
  --shadow-soft: 0 1px 2px rgb(0 0 0 / 0.04), 0 4px 16px rgb(0 0 0 / 0.04);

  /* Layout */
  --sidebar-width: 264px;
  --topbar-height: 64px;

  /* Motion */
  --ease: cubic-bezier(0.16, 1, 0.3, 1);
  --dur-fast: 0.3s;
  --dur-slow: 0.6s;

  /* Type */
  --font-sans: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --font-mono: ui-monospace, 'SF Mono', 'JetBrains Mono', Menlo, Consolas, monospace;

  /* Operation colours. Cyan leads; the rest are drawn from the status
     palette so five operations stay distinguishable without inventing a
     second, competing palette. */
  --op-forestry: hsl(190 100% 50%);
  --op-drone:    #6366f1;
  --op-horizon:  #a855f7;
  --op-content:  #f59e0b;
  --op-study:    #737373;
}
