@use '@angular/material' as mat;
@import './theme-mixins';

// Define palettes
$blue-palette: mat.define-palette((50: #eff1f3,
    100: #FFFFFF,
    200: #a5c1dc,
    300: #68a0d6,
    400: #4788c7,
    500: #FFFFFF,
    600: #0358ab,
    700: #424242,
    800: #154a7d,
    900: #b3bdc7,
    A100: #617284,
    A200: #587594,
    A400: #3e6792,
    A700: #062c54,
    contrast: (50: rgba(black, 0.87), 100: white, 200: rgba(black, 0.87), 300: rgba(black, 0.87), 400: rgba(black, 0.87), 500: rgba(black, 0.87), 600: white, 700: white, 800: white, 900: white, A100: rgba(black, 0.87), A200: rgba(black, 0.87), A400: rgba(black, 0.87), A700: rgba(black, 0.87)),
));

$orange-palette: mat.define-palette((50: #fff3e0,
    100: #D9F2FE,
    200: #ffcc80,
    300: #ffb74d,
    400: #ffa726,
    500: #f5d58d,
    600: #F5A772,
    700: #15A9F4,
    800: #ef6c00,
    900: #2095cc,
    A100: #ffd180,
    A200: #ffab40,
    A400: #ff9100,
    A700: #ff6d00,
    contrast: (50: rgba(black, 0.87), 100: rgba(black, 0.87), 200: rgba(black, 0.87), 300: rgba(black, 0.87), 400: rgba(black, 0.87), 500: rgba(black, 0.87), 600: rgba(black, 0.87), 700: rgba(black, 0.87), 800: white, 900: white, A100: rgba(black, 0.87), A200: rgba(black, 0.87), A400: rgba(black, 0.87), A700: rgba(black, 0.87)),
));

// Themes
$theme-primary: $blue-palette;
$theme-accent: $orange-palette;
$theme-warn: mat.define-palette(mat.$red-palette);

// Light and dark theme configs
$light-theme: mat.define-light-theme((
  color: (
    primary: $theme-primary,
    accent: $theme-accent,
    warn: $theme-warn,
  ),
  density: 0
));

$dark-theme: mat.define-dark-theme((
  color: (
    primary: $theme-primary,
    accent: $theme-accent,
    warn: $theme-warn,
  ),
  density: 0
));

// ✅ Generate full styles only once
@include mat.all-component-themes($light-theme);

// 🎨 Mode-specific color overrides
.theme-igot.day-mode {
  @include mat.all-component-colors($light-theme);
}

.theme-igot.night-mode {
  @include mat.all-component-colors($dark-theme);
}
