/* === GoGo Carcleaning — Design Tokens ===
   Kleuren afgeleid uit logo: cyan primair, groen secundair accent.
   Light-first (default). Dark tokens onder [data-theme="dark"] — toggle via nav. */

:root, [data-theme="light"] {
  /* Surfaces — koele lichte basis */
  --color-bg:             #F6F9FA;
  --color-surface:        #FBFCFD;
  --color-surface-2:      #FFFFFF;
  --color-surface-offset: #EFF4F6;
  --color-divider:        #DDE5E9;
  --color-border:         #CED9DE;

  /* Tekst */
  --color-text:           #14252C;
  --color-text-muted:     #587682;
  --color-text-faint:     #B8CAD1;
  --color-text-inverse:   #F9FCFD;

  /* Primair — cyan blauw uit logo */
  --color-primary:            #0DAEE3;
  --color-primary-hover:      #0891C1;
  --color-primary-active:     #06719A;
  --color-primary-highlight:  #E3F5FC;

  /* Secundair accent — fris groen uit logo (gebruikt op USP-strook + kleine iconen) */
  --color-accent:            #83C240;
  --color-accent-hover:      #6EA835;
  --color-accent-highlight:  #EFF7E4;

  /* Foutkleur */
  --color-danger:            #C7362E;

  /* Type */
  --font-display: 'Fraunces', 'Georgia', serif;
  --font-body:    'Manrope', 'Helvetica Neue', sans-serif;

  /* Type scale (clamp responsive) */
  --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);

  /* Spacing */
  --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;

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

  /* Shadows (subtiel op koele achtergrond) */
  --shadow-sm: 0 1px 3px rgba(20,37,44,0.06), 0 1px 2px rgba(20,37,44,0.04);
  --shadow-md: 0 6px 16px rgba(20,37,44,0.08), 0 2px 6px rgba(20,37,44,0.05);
  --shadow-lg: 0 14px 36px rgba(20,37,44,0.12), 0 4px 10px rgba(20,37,44,0.06);

  /* Content widths */
  --content-narrow:  640px;
  --content-default: 1140px;
  --content-wide:    1300px;

  /* Motion */
  --transition-interactive: 180ms cubic-bezier(0.16, 1, 0.3, 1);
  --transition-reveal:      480ms cubic-bezier(0.16, 1, 0.3, 1);
  --transition-nav:         240ms cubic-bezier(0.4, 0, 0.2, 1);

  /* Nav heights */
  --nav-height-desktop: 76px;
  --nav-height-mobile:  60px;
}

[data-theme="dark"] {
  --color-bg:             #0B1519;
  --color-surface:        #101B20;
  --color-surface-2:      #142127;
  --color-surface-offset: #182830;
  --color-divider:        #223138;
  --color-border:         #2C3E47;

  --color-text:           #E4EEF2;
  --color-text-muted:     #93A9B3;
  --color-text-faint:     #4E6772;
  --color-text-inverse:   #0B1519;

  --color-primary:            #35C6F0;
  --color-primary-hover:      #55D3F5;
  --color-primary-active:     #21A6CB;
  --color-primary-highlight:  rgba(53,198,240,0.14);

  --color-accent:            #A0D75E;
  --color-accent-hover:      #B4E278;
  --color-accent-highlight:  rgba(160,215,94,0.14);

  --shadow-sm: 0 1px 2px rgba(0,0,0,0.4);
  --shadow-md: 0 6px 16px rgba(0,0,0,0.45);
  --shadow-lg: 0 14px 36px rgba(0,0,0,0.55);
}
