/* Fresco Cleaning — design tokens
   Francisco Labs-inspired night mode. Blue accent only. No green. */
:root{
  color-scheme: dark;

  /* Type scale */
  --text-xs:clamp(0.75rem, 0.7rem + 0.25vw, 0.875rem);
  --text-sm:clamp(0.875rem, 0.8rem + 0.35vw, 1rem);
  --text-base:clamp(1rem, 0.95rem + 0.25vw, 1.125rem);
  --text-lg:clamp(1.125rem, 1rem + 0.75vw, 1.5rem);
  --text-xl:clamp(1.5rem, 1.2rem + 1.25vw, 2.25rem);
  --text-2xl:clamp(2rem, 1.2rem + 2.5vw, 3.5rem);
  --text-3xl:clamp(2.5rem, 1rem + 4vw, 5rem);
  --text-hero:clamp(3rem, 0.5rem + 7vw, 7rem);

  /* Space */
  --space-1:0.25rem;  --space-2:0.5rem;   --space-3:0.75rem;  --space-4:1rem;
  --space-5:1.25rem;  --space-6:1.5rem;   --space-8:2rem;     --space-10:2.5rem;
  --space-12:3rem;    --space-16:4rem;    --space-20:5rem;    --space-24:6rem;
  --space-32:8rem;

  /* Section rhythm (per user spec) */
  --section-y: clamp(2.75rem, 4.5vw, 4.25rem);
  --section-y-tight: clamp(2rem, 3vw, 3rem);
  --section-header-gap: clamp(1.25rem, 2.5vw, 2rem);
  --grid-gap: clamp(1rem, 2vw, 1.5rem);

  /* Layout */
  --content-narrow:640px;  --content-default:960px;  --content-wide:1280px;

  /* Radius */
  --radius-sm:0.375rem;
  --radius-md:0.625rem;
  --radius-lg:0.75rem;
  --radius-xl:1.25rem;
  --radius-full:9999px;

  /* Motion */
  --transition-interactive:180ms cubic-bezier(0.16, 1, 0.3, 1);
  --ease-out:cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in:cubic-bezier(0.4, 0, 1, 1);
  --ease-in-out:cubic-bezier(0.4, 0, 0.2, 1);

  /* Z */
  --z-content:1; --z-raised:10; --z-header:100; --z-floating:110; --z-scrim:140; --z-drawer:150;

  /* Fonts */
  --font-display:'Cabinet Grotesk','Inter',sans-serif;
  --font-body:'Satoshi','Inter',sans-serif;
  --font-mono:'JetBrains Mono','Courier New',monospace;

  /* ---------- Colors — night mode ---------- */
  --color-bg:#0A0A0B;
  --color-surface:#101012;
  --color-surface-2:#151519;
  --color-surface-3:#1B1B21;
  --color-surface-strong:#22222A;

  --color-border:rgba(255,255,255,0.08);
  --color-border-subtle:rgba(255,255,255,0.05);
  --color-border-strong:rgba(255,255,255,0.14);
  --color-divider:rgba(255,255,255,0.06);

  --color-text:#F0F0F2;
  --color-text-muted:#A1A1AA;
  --color-text-faint:#6B6B75;
  --color-text-inverse:#0A0A0B;

  /* Blue-only accent per spec */
  --color-primary:#2563EB;
  --color-primary-bright:#60A5FA;
  --color-primary-hover:#3B82F6;
  --color-primary-deep:#1D4ED8;
  --color-accent:#818CF8;
  --color-accent-bright:#A5B4FC;
  --color-primary-glow:rgba(37,99,235,0.16);
  --color-primary-glow-strong:rgba(37,99,235,0.32);

  --color-support:#64748B;
  --color-success:#3B82F6;              /* blue dot — never green */
  --color-warning:#f59e0b;
  --color-error:#ef4444;
  --color-gold:#f5b301;

  --glass-bg:rgba(21,21,25,0.72);
  --glass-border:rgba(255,255,255,0.08);
  --glass-hover:rgba(255,255,255,0.04);

  --shadow-sm:0 1px 3px rgba(0,0,0,0.4);
  --shadow-md:0 4px 16px rgba(0,0,0,0.5);
  --shadow-lg:0 12px 40px rgba(0,0,0,0.6);
  --shadow-blue:0 0 30px rgba(37,99,235,0.20);
  --shadow-blue-strong:0 0 60px rgba(37,99,235,0.32);
  --shadow-card-hover:0 20px 60px rgba(0,0,0,0.65), 0 0 0 1px rgba(96,165,250,0.25), 0 0 40px rgba(37,99,235,0.18);

  /* Signature blue gradient (used sparingly) */
  --gradient-blue: linear-gradient(135deg,#60A5FA 0%,#3B82F6 35%,#2563EB 60%,#818CF8 100%);
}

/* Force dark under every user or OS preference. No theme switcher supported. */
html,body{ background:var(--color-bg); color:var(--color-text); }
