// This file was generated by running 'ng generate @angular/material:m3-theme'.
// Neon Dark Theme with bright neon highlights

@use "sass:map";
@use "@angular/material" as mat;

// Neon color palettes
$_palettes: (
  primary: (
    0: #000000,
    10: #1a001a,
    20: #330033,
    25: #4d004d,
    30: #660066,
    35: #800080,
    40: #ff00ff,
    50: #ff33ff,
    60: #ff66ff,
    70: #ff99ff,
    80: #ffccff,
    90: #ffe6ff,
    95: #fff2ff,
    98: #fff9ff,
    99: #fffaff,
    100: #ffffff,
  ),
  secondary: (
    0: #0a0a0a,
    10: #0f2a0f,
    20: #145514,
    25: #196f19,
    30: #1e891e,
    35: #23a323,
    40: #28bd28,
    50: #3dff14,
    60: #57ff2e,
    70: #71ff47,
    80: #8bff61,
    90: #a5ff7a,
    95: #bfff94,
    98: #d9ffad,
    99: #f3ffc7,
    100: #ffffff,
  ),
  tertiary: (
    0: #000000,
    10: #001a33,
    20: #003366,
    25: #004d99,
    30: #0066cc,
    35: #007fff,
    40: #00b3ff,
    50: #33ccff,
    60: #66e5ff,
    70: #99ffff,
    80: #ccffff,
    90: #e6ffff,
    95: #f2ffff,
    98: #f9ffff,
    99: #fbffff,
    100: #ffffff,
  ),
  neutral: (
    0: #000000,
    10: #191c1e,
    20: #2e3132,
    25: #393c3d,
    30: #444749,
    35: #505355,
    40: #5c5f60,
    50: #757779,
    60: #8f9193,
    70: #a9abad,
    80: #c5c7c8,
    90: #e1e2e4,
    95: #eff1f3,
    98: #f8f9fb,
    99: #fbfcfe,
    100: #ffffff,
    4: #0c0f10,
    6: #111415,
    12: #1d2022,
    17: #272a2c,
    22: #323537,
    24: #373a3b,
    87: #d9dadc,
    92: #e7e8ea,
    94: #edeef0,
    96: #f2f4f6,
  ),
  neutral-variant: (
    0: #000000,
    10: #151d20,
    20: #2a3236,
    25: #353d41,
    30: #40484c,
    35: #4c5458,
    40: #586064,
    50: #70787d,
    60: #8a9297,
    70: #a4acb1,
    80: #c0c8cd,
    90: #dce4e9,
    95: #eaf2f7,
    98: #f4faff,
    99: #fafcff,
    100: #ffffff,
  ),
  error: (
    0: #000000,
    10: #330000,
    20: #660000,
    25: #800000,
    30: #990000,
    35: #b30000,
    40: #ff3333,
    50: #ff6666,
    60: #ff9999,
    70: #ffcccc,
    80: #ffe6e6,
    90: #fff2f2,
    95: #fff9f9,
    98: #fffbfb,
    99: #fffefe,
    100: #ffffff,
  ),
);

// Merge palettes
$_rest: (
  secondary: map.get($_palettes, secondary),
  neutral: map.get($_palettes, neutral),
  neutral-variant: map.get($_palettes, neutral-variant),
  error: map.get($_palettes, error),
);
$_primary: map.merge(map.get($_palettes, primary), $_rest);
$_tertiary: map.merge(map.get($_palettes, tertiary), $_rest);

$theme: map.merge(
  mat.define-theme(
    (
      color: (
        theme-type: dark,
        primary: $_primary,
        tertiary: $_tertiary,
      ),
    )
  ),
  (
    background: #fff,
    success: (
      0: #000000,
      10: #003300,
      20: #006600,
      25: #009900,
      30: #00cc00,
      35: #00ff00,
      40: #1aff33,
      50: #33ff66,
      60: #66ff99,
      70: #80ffb3,
      80: #99ffcc,
      90: #ccffe6,
      95: #e6fff2,
      98: #f2fffa,
      99: #f7fffd,
      100: #ffffff,
    ),
    caution: (
      0: #000000,
      10: #332b00,
      20: #665700,
      25: #806900,
      30: #998000,
      35: #b38f00,
      40: #ffc300,
      50: #ffd633,
      60: #ffe066,
      70: #ffe699,
      80: #ffefcc,
      90: #fff6e6,
      95: #fffaf2,
      98: #fffdf9,
      99: #fffefb,
      100: #ffffff,
    ),
  )
);

@mixin theme-vars {
  --mat-app-background-color: #{mat.get-theme-color($theme, neutral, 4)};
  --mat-app-background: #{mat.get-theme-color($theme, neutral, 4)};
  --mat-expansion-container-background-color: #{mat.get-theme-color(
      $theme,
      neutral,
      10
    )};
  --mat-sidenav-container-background-color: #{mat.get-theme-color(
      $theme,
      neutral,
      4
    )};
  --mat-sidenav-content-background-color: #{mat.get-theme-color(
      $theme,
      neutral,
      4
    )};
  --mat-table-background-color: #{mat.get-theme-color($theme, neutral, 10)};
  --mdc-elevated-card-container-color: #{mat.get-theme-color(
      $theme,
      neutral,
      10
    )};
  .mat-toolbar.toolbar-header {
    --mat-toolbar-container-text-color: var(--mat-app-text-color);
    a {
      color: mat.get-theme-color($theme, neutral, 4);
      &.active {
        color: mat.get-theme-color($theme, neutral, 4);
        &.mdc-button {
          background-color: mat.get-theme-color($theme, neutral, 4);
        }
      }
    }
    .mat-icon {
      color: mat.get-theme-color($theme, neutral, 4);
      fill: mat.get-theme-color($theme, neutral, 4);
    }
  }
}
