/* ============================================================
   Design Tokens – Light Mode (default)
   Palette: Lilac · Flieder · Lachs · Orange – modern & warm
   ============================================================ */
:root {
  /* --- Brand accent --- */
  --color-accent:        #7A4DFF;   /* vivid lilac                    */
  --color-accent-light:  #EFE8FF;   /* soft lilac tint (flieder2)     */
  --color-accent-hover:  #5E34E0;   /* deeper lilac on hover          */
  --color-flieder:       #C9B8FF;   /* mid-lilac for decorative use   */

  /* --- Salmon / danger colours --- */
  --color-danger:        #FF453A;   /* true red for errors            */
  --color-danger-light:  #FFE3DE;   /* soft red-salmon tint           */
  --color-salmon:        #FF7A6B;   /* warm salmon accent             */
  --color-salmon-light:  #FFE3DE;   /* salmon tint background         */

  /* --- Orange accent --- */
  --color-orange:        #FF8A3D;
  --color-orange-light:  #FFE8D6;

  /* --- Today / birthday markers --- */
  --color-today:         #FF7A6B;   /* salmon ring around today cell  */
  --color-birthday-dot:  #7A4DFF;   /* dot on days with birthdays     */

  /* --- Background layers (warm, iOS-inspired hierarchy) --- */
  --bg-primary:    #fff9f5;   /* warm off-white app background */
  --bg-secondary:  #F5F0F7;   /* lilac-tinted surface          */
  --bg-card:       #FFFFFF;   /* cards / list items            */
  --bg-overlay:    rgba(20, 10, 40, 0.42);  /* modal backdrop */

  /* --- Text --- */
  --text-primary:    #1A1320;   /* warm near-black               */
  --text-secondary:  #5B5365;   /* soft muted text               */
  --text-tertiary:   #8E8796;   /* placeholder / hint text       */
  --text-on-accent:  #FFFFFF;

  /* --- Borders / dividers --- */
  --border-color:   rgba(30, 20, 40, 0.08);
  --divider-color:  rgba(30, 20, 40, 0.06);

  /* --- Border radii --- */
  --radius-sm:   10px;
  --radius-md:   14px;
  --radius-lg:   18px;
  --radius-xl:   26px;
  --radius-pill: 999px;

  /* --- Spacing (4-point grid) --- */
  --space-2:   2px;
  --space-4:   4px;
  --space-8:   8px;
  --space-12: 12px;
  --space-16: 16px;
  --space-20: 20px;
  --space-24: 24px;
  --space-32: 32px;
  --space-48: 48px;

  /* --- Typography --- */
  --font-xs:   12px;
  --font-sm:   14px;
  --font-md:   16px;
  --font-lg:   20px;
  --font-xl:   24px;
  --font-xxl:  30px;

  /* --- Shadows (purple-tinted, very soft) --- */
  --shadow-sm:  0 1px 2px rgba(20, 10, 40, 0.04),
                0 6px 18px rgba(60, 40, 100, 0.06);
  --shadow-md:  0 4px 16px rgba(60, 40, 100, 0.10);
  --shadow-lg:  0 10px 40px rgba(60, 40, 100, 0.18);

  /* --- Transitions --- */
  --transition-fast:    150ms ease;
  --transition-normal:  300ms cubic-bezier(0.4, 0, 0.2, 1);

  /* --- iOS safe-area insets (env() with fallback) --- */
  --safe-top:    env(safe-area-inset-top,    0px);
  --safe-bottom: env(safe-area-inset-bottom, 0px);
}

/* ============================================================
   Design Tokens – Dark Mode
   ============================================================ */
@media (prefers-color-scheme: dark) {
  :root {
    --color-accent:        #A78BFF;
    --color-accent-light:  #2E2540;
    --color-accent-hover:  #8C6BFF;
    --color-flieder:       #6B4FB8;

    --color-danger:        #FF453A;
    --color-danger-light:  #4A2721;
    --color-salmon:        #FF8F82;
    --color-salmon-light:  #4A2721;
    --color-orange:        #FFA366;
    --color-orange-light:  #4A2E18;

    --color-today:         #FF8F82;
    --color-birthday-dot:  #A78BFF;

    --bg-primary:    #151019;
    --bg-secondary:  #2A2332;
    --bg-card:       #201A26;
    --bg-overlay:    rgba(0, 0, 0, 0.55);

    --text-primary:    #F6F2F9;
    --text-secondary:  #BAB0C2;
    --text-tertiary:   #7E7589;
    --text-on-accent:  #FFFFFF;

    --border-color:   rgba(255, 255, 255, 0.08);
    --divider-color:  rgba(255, 255, 255, 0.06);

    --shadow-sm:  0 1px 2px rgba(0, 0, 0, 0.25),
                  0 6px 18px rgba(0, 0, 0, 0.35);
    --shadow-md:  0 4px 16px rgba(0, 0, 0, 0.40);
    --shadow-lg:  0 10px 40px rgba(0, 0, 0, 0.55);
  }
}
