/*
  @mixin theme($property, $key, $inlineExtra:null, $postExtra:null)
  Assigns a property a theme value for each defined theme.
Example usage:
    .mySelector {
      padding: 6px;
      @include theme(background-color, backgroundLight);
      @include theme(border, borderDark, 1px solid);
    }
sass generated equivalent:
    .mySelector {
      padding: 6px;
      :global(.light) & {
        border: 1px solid color(woodsmoke);
        border: 1px solid var(--theme-light-borderDark, color(woodsmoke));
      }
      :global(.light) & {
        background-color: color(alabaster);
        background-color: var(--theme-light-backgroundLight, color(alabaster));
      }
      :global(.dark) & {
        border: 1px solid color(alabaster);
        border: 1px solid var(--theme-dark-borderDark, color(alabaster));
      }
      :global(.dark) & {
        background-color: color(woodsmoke);
        background-color: var(--theme-dark-backgroundLight, color(woodsmoke));
      }
    }
browser output:
    .mySelector {
      padding: 6px;
    }
    .light .mySelector {
      border: 1px solid #141519;
      border: 1px solid var(--theme-light-borderDark, #141519);
    }
    .light .mySelector {
      background-color: #FCFCFC;
      background-color: var(--theme-light-backgroundLight, #FCFCFC);
    }
    .dark .mySelector {
      border: 1px solid #FCFCFC;
      border: 1px solid var(--theme-dark-borderDark, #FCFCFC);
    }
    .dark .mySelector {
      background-color: #141519;
      background-color: var(--theme-dark-backgroundLight, #141519);
    }
*/
/*
  @mixin generateThemeMappings(themeName: string, themeMap: map)
  helper function for generating list of theme variables and adding to existing map.
  This will add a new theme to the themes array and the theme color list.
*/
/*
  @mixin generateThemeVariables
  Auto-generates the entire list of theme variables for use in var() statements.
  Really should only be called in the html selector at the app root.
*/
/** this section generates a theme map for each theme **/
/** end theme generation **/
@font-face {
  font-family: "Source Sans Pro";
  font-style: normal;
  font-weight: 400;
  src: url(../fonts/source_sans_pro.ttf) format("truetype");
}
html {
  --theme-theme-light-backgroundLight: #F9F4F5;
  --theme-theme-dark-backgroundLight: #0d1f2d;
  --theme-theme-light-primary: #124e78;
  --theme-theme-dark-primary: #1985a1;
  --theme-theme-light-textLight: #FFFFFF;
  --theme-theme-dark-textLight: #FFFFFF;
  --theme-theme-light-textDark: #000000;
  --theme-theme-dark-textDark: #EEEEEE;
  --theme-theme-light-textDarkNegative: #7B0922;
  --theme-theme-dark-textDarkNegative: #FDB5B5;
  --theme-theme-light-textDarkPositive: #144231;
  --theme-theme-dark-textDarkPositive: #b1cc74;
  --theme-theme-light-textFail: #000000;
  --theme-theme-dark-textFail: #000000;
  --theme-theme-light-textSuccess: #000000;
  --theme-theme-dark-textSuccess: #000000;
  --theme-theme-light-shadow: rgba(0, 0, 0, 0.3);
  --theme-theme-dark-shadow: rgba(0, 0, 0, 0.3);
  --theme-theme-light-highlight: rgba(0, 0, 0, 0.05);
  --theme-theme-dark-highlight: rgba(255, 255, 255, 0.05);
  --theme-theme-light-overlayBackground: rgba(0, 0, 0, 0.5);
  --theme-theme-dark-overlayBackground: rgba(0, 0, 0, 0.5);
  --theme-theme-light-success: #4CC898;
  --theme-theme-dark-success: #4CC898;
  --theme-theme-light-fail: #F89BAF;
  --theme-theme-dark-fail: #F89BAF;
  --theme-theme-light-borderDark: #124e78;
  --theme-theme-dark-borderDark: #1985a1;
  --theme-theme-light-tableBorder: #6e6e6e;
  --theme-theme-dark-tableBorder: #727171;
  --theme-theme-light-verticalHeighlight: rgba(0, 0, 0, 0.05);
  --theme-theme-dark-verticalHeighlight: rgba(255, 255, 255, 0.05);
  --theme-theme-light-menuHeighlight: rgba(0, 0, 0, 0.15);
  --theme-theme-dark-menuHeighlight: rgba(255, 255, 255, 0.15);
  --theme-theme-light-input: rgb(214, 214, 214);
  --theme-theme-dark-input: rgb(57, 73, 86);
  --theme-theme-light-loginIconFilter: invert(0%);
  --theme-theme-dark-loginIconFilter: invert(100%);
  height: 100%;
}

body {
  margin: 0px;
  font-family: "Source Sans Pro", sans-serif;
}
.theme-light body {
  background-color: var(--theme-theme-light-backgroundLight, #F9F4F5);
}

.theme-dark body {
  background-color: var(--theme-theme-dark-backgroundLight, #0d1f2d);
}

.theme-light body {
  color: var(--theme-theme-light-textDark, #000000);
}

.theme-dark body {
  color: var(--theme-theme-dark-textDark, #EEEEEE);
}

.btn {
  font-size: 1.4em;
  font-weight: bold;
  border: none;
  cursor: pointer;
  padding: 6px 24px;
  border-radius: 8px;
  height: 1.7em;
}
.theme-light .btn {
  color: var(--theme-theme-light-textLight, #FFFFFF);
}

.theme-dark .btn {
  color: var(--theme-theme-dark-textLight, #FFFFFF);
}

.theme-light .btn {
  --sk-color: var(--theme-theme-light-textLight, #FFFFFF);
}

.theme-dark .btn {
  --sk-color: var(--theme-theme-dark-textLight, #FFFFFF);
}

.theme-light .btn {
  background-color: var(--theme-theme-light-primary, #124e78);
}

.theme-dark .btn {
  background-color: var(--theme-theme-dark-primary, #1985a1);
}

.theme-light .btn {
  box-shadow: 2px 2px 5px 0px var(--theme-theme-light-shadow, rgba(0, 0, 0, 0.3));
}

.theme-dark .btn {
  box-shadow: 2px 2px 5px 0px var(--theme-theme-dark-shadow, rgba(0, 0, 0, 0.3));
}

.theme-light .btn:hover {
  box-shadow: 3px 3px 7px 0px var(--theme-theme-light-shadow, rgba(0, 0, 0, 0.3));
}

.theme-dark .btn:hover {
  box-shadow: 3px 3px 7px 0px var(--theme-theme-dark-shadow, rgba(0, 0, 0, 0.3));
}

.theme-light .btn:active {
  box-shadow: 1px 1px 3px 0px var(--theme-theme-light-shadow, rgba(0, 0, 0, 0.3));
}

.theme-dark .btn:active {
  box-shadow: 1px 1px 3px 0px var(--theme-theme-dark-shadow, rgba(0, 0, 0, 0.3));
}

.btn .sk-flow {
  display: none;
  margin: auto;
  align-items: center;
  --sk-size: 1em;
}
.btn.loading .sk-flow {
  display: flex;
}
.btn.loading span {
  display: none;
}

.btn-sml {
  font-size: 1em;
  padding: 2px 12px;
}

.hidden {
  display: none;
}

.h1 {
  font-weight: 700;
  font-size: 1.4em;
  letter-spacing: 0.04em;
}

input {
  border: none;
  border-radius: 6px;
  margin: 4px 3px;
  padding: 4px 16px;
  font-size: 1em;
}
.theme-light input {
  background-color: var(--theme-theme-light-input, rgb(214, 214, 214));
}

.theme-dark input {
  background-color: var(--theme-theme-dark-input, rgb(57, 73, 86));
}

.theme-light input {
  color: var(--theme-theme-light-textDark, #000000);
}

.theme-dark input {
  color: var(--theme-theme-dark-textDark, #EEEEEE);
}

textarea {
  border: none;
  border-radius: 6px;
  margin: 4px 3px;
  padding: 4px 16px;
  font-size: 1em;
}
.theme-light textarea {
  background-color: var(--theme-theme-light-input, rgb(214, 214, 214));
}

.theme-dark textarea {
  background-color: var(--theme-theme-dark-input, rgb(57, 73, 86));
}

.theme-light textarea {
  color: var(--theme-theme-light-textDark, #000000);
}

.theme-dark textarea {
  color: var(--theme-theme-dark-textDark, #EEEEEE);
}

select {
  appearance: none;
  border: none;
  border-radius: 6px;
  margin: 4px 3px;
  padding: 4px 16px;
  font-size: 1em;
}
.theme-light select {
  background-color: var(--theme-theme-light-input, rgb(214, 214, 214));
}

.theme-dark select {
  background-color: var(--theme-theme-dark-input, rgb(57, 73, 86));
}

.theme-light select {
  color: var(--theme-theme-light-textDark, #000000);
}

.theme-dark select {
  color: var(--theme-theme-dark-textDark, #EEEEEE);
}

loading-indicator {
  display: none;
}
loading-indicator .sk-flow {
  margin: auto;
  align-items: center;
}
loading-indicator.loading {
  display: block;
}
loading-indicator.data-table-loading {
  margin-top: 100px;
}

/*# sourceMappingURL=basics.css.map */
