
html[data-theme='callisto'] {
  --background: #141b33;
  --background-darker: #060913;
  --item-group-background: #0b1021;
  --item-background: #141b33;
  --item-background-hover: #060913;
  --item-hover-shadow: 0 1px 3px #00ccb4b3, 0 1px 2px #00ccb4bf;
  --primary: #00CCB4;
  --font-body: 'Inconsolata', 'Georgia', sans-serif;
  --font-headings: 'PTMono', 'Courier New', monospace;
}

html[data-theme='thebe'] {
  --background: #141b33;
  --background-darker: #060913;
  --item-group-background: #0b1021;
  --item-background: #141b33;
  --item-background-hover: #060913;
  --item-hover-shadow: 0 1px 3px #9660ecb3, 0 1px 2px #9660ecbf;
  --primary: #9660ec;
  --item-group-outer-background: #9660EC
    linear-gradient(45deg,  #9660ec 2%,#5f60ea 51%,#9660ec 100%);
  --font-headings: 'PTMono', 'Courier New', monospace;
}

html[data-theme='dracula'] {
  --font-headings: 'Allerta Stencil', sans-serif;
  --primary: #6272a4;
  --background: #44475a;
  --background-darker: #282a36;
  --item-group-background: #282a36;
  --item-background: none;
  --item-background-hover: #191b22;
  --item-shadow: none;
  --item-hover-shadow: none;
  --settings-text-color: #98ace9;
  --config-settings-color: #98ace9;
  .collapsable:nth-child(1n) { background: #8be9fd; .item { border: 1px solid #8be9fd; color: #8be9fd; }}
  .collapsable:nth-child(2n) { background: #50fa7b; .item { border: 1px solid #50fa7b; color: #50fa7b; }}
  .collapsable:nth-child(3n) { background: #ffb86c; .item { border: 1px solid #ffb86c; color: #ffb86c; }}
  .collapsable:nth-child(4n) { background: #ff79c6; .item { border: 1px solid #ff79c6; color: #ff79c6; }}
  .collapsable:nth-child(4n) { background: #bd93f9; .item { border: 1px solid #bd93f9; color: #bd93f9; }}
}

html[data-theme='bee'] {
  --primary: #c3eb5c;
  --item-background: #1c2636;
  --item-group-background: #0b1021;
  --nav-link-background-color: #0b1021;
  --font-headings: 'Sniglet', cursive;
}

html[data-theme='raspberry-jam'] {
  --primary: #eb2d6c;
  --item-background: #1c2636;
  --item-group-background: #0b1021;
  --nav-link-background-color: #0b1021;
  --config-code-background: #0b1021;
  --config-code-color: #eb2d6c;
  --font-headings: 'Sniglet', cursive;
}

html[data-theme='tiger'] {
  --primary: #f58233;
  --item-background: #1c2636;
  --item-group-background: #0b1021;
  --nav-link-background-color: #0b1021;
  --font-headings: 'Sniglet', cursive;
}

html[data-theme='matrix-red'] {
  --background: #000;
  --background-darker: #000;
  --primary: red;
  --outline-color: red;
  --curve-factor: 0px;
  --font-body: 'Cutive Mono', monospace;
  --font-headings: 'VT323', monospace;
}

html[data-theme='matrix'] {
  --background: #000;
  --background-darker: #000;
  --primary: #2bca2b;
  --outline-color: #2bca2b;
  --curve-factor: 0px;
  --font-body: 'Cutive Mono', monospace;
  --font-headings: 'VT323', monospace;
  --about-page-background: var(--background);
  .prism-editor-wrapper.my-editor {
    border: 1px solid var(--primary);
  }
}

html[data-theme='hacker-girl'] {
  --background: #000;
  --background-darker: #000;
  --primary: #e435f1;
  --outline-color: #e435f1;
  --curve-factor: 0px;
  --font-body: 'Cutive Mono', monospace;
  --font-headings: 'VT323', monospace;
}

html[data-theme='high-contrast-light'] {
  --background: #fff;
  --background-darker: #fff;
  --item-group-background: #fff;
  --item-background: #fff;
  --primary: #000;
  --outline-color: #000;
  --curve-factor: 0px;
  --config-code-color: #000;
  --font-headings: 'PTMono', 'Courier New', monospace;
}

html[data-theme='high-contrast-dark'] {
  --background: #000;
  --background-darker: #000;
  --item-group-background: #000;
  --primary: #fff;
  --outline-color: #fff;
  --curve-factor: 0px;
  --font-headings: 'PTMono', 'Courier New', monospace;
}

html[data-theme='nord'] {
  --primary: #D8DEE9;
  --background: #3B4252;
  --background-darker: #2E3440;
  --item-background: #434C5E;
  --item-background-hover: #4C566A;
  .collapsable:nth-child(1n) { background: #BF616A; }
  .collapsable:nth-child(2n) { background: #D08770; }
  .collapsable:nth-child(3n) { background: #EBCB8B; }
  .collapsable:nth-child(4n) { background: #A3BE8C; }
}

html[data-theme='nord-frost'] {
  --primary: #D8DEE9;
  --background: #3B4252;
  --background-darker: #2E3440;
  --item-background: #434C5E;
  --item-background-hover: #4C566A;
  .collapsable:nth-child(1n) { background: #8FBCBB; }
  .collapsable:nth-child(2n) { background: #88C0D0; }
  .collapsable:nth-child(3n) { background: #81A1C1; }
  .collapsable:nth-child(4n) { background: #5E81AC; }
}

html[data-theme='material-original'] {
  --primary: #29B6F6;
  --settings-text-color: #01579b;
  --background: #e2e1e0;
  --background-darker: #01579B;
  --settings-background: #01579B;
  --item-group-shadow: none;
  --item-group-outer-background: none;
  --item-group-background: none;
  --item-background: #fff;
  --item-background-hover: #fff;
  --settings-background: #29B6F6;
  --search-container-background: #29B6F6;
  --curve-factor: 2px;
  --curve-factor-navbar: 0;
  --item-group-padding: 5px 0 0;
  --item-shadow: 0 1px 3px #0000001f, 0 1px 2px #0000003d;
  --item-hover-shadow: 0 1px 4px #00000029, 0 2px 4px #0000002a;
  --item-icon-transform: drop-shadow(1px 2px 1px var(--transparent-30)) saturate(0.65);
  --item-icon-transform-hover: drop-shadow(1px 3px 2px var(--transparent-30)) saturate(2);
  --settings-container-shadow: 0 1px 3px #0000005e, 0 1px 2px #00000085;
  --welcome-popup-background: #01579b;
  --welcome-popup-text-color: #ffffff;
  --config-code-color: #000;
  --item-group-heading-text-color-hover: #01579b;
  --config-settings-background: #01579b;
  --config-settings-color: #fff;
  --heading-text-color: #fff;
  --status-check-tooltip-background: #f2f2f2;
  --status-check-tooltip-color: #01579b;
  --login-form-background: #fff;
  --about-page-accent: #000;
  --about-page-color: var(--background-darker);
  --about-page-background: var(--background);
}

html[data-theme='material-dark-original'] {
  --primary: #08B0BB;
  --settings-text-color: #08B0BB;
  --background: #39434C;
  --background-darker: #08B0BB;
  --settings-background: #092b3a;
  --item-group-background: #333C43;
  --item-background: #414B55;
  --item-background-hover: #414B55;
  --settings-background: #131a1f;
  --search-container-background: #131a1f;
  --search-field-background: #39434c;
  --heading-text-color: #131a1f;
  --nav-link-text-color: #08B0BB;
  --nav-link-background-color: #131a1f;
  --nav-link-text-color-hover: #08B0BB;
  --nav-link-background-color-hover: #131a1fc7;
  --nav-link-border-color-hover: transparent;
  --curve-factor: 2px;
  --curve-factor-navbar: 0;
  --item-group-padding: 5px 0 0;
  --item-shadow: 2px 2px 3px #00000082, 0 1px 10px #00000040;
  --item-hover-shadow: 4px 4px 3px #00000082, 0 1px 10px #00000040;
  --item-icon-transform: drop-shadow(1px 2px 1px var(--transparent-30)) saturate(0.65);
  --item-icon-transform-hover: drop-shadow(1px 3px 2px var(--transparent-30)) saturate(2);
  --welcome-popup-background: #131a1f;
  --welcome-popup-text-color: var(--primary);
  --config-settings-background: #131a1f;
  --config-settings-color: #41e2ed;
  --scroll-bar-color: #08B0BB;
  --scroll-bar-background: #131a1f;
  --status-check-tooltip-background: #131a1f;
  --status-check-tooltip-color: #08B0BB;
  &::-webkit-scrollbar-thumb {
    border-left: 1px solid #131a1f;
  }
}

html[data-theme='colorful'] {
  --font-headings: 'Podkova', monospace;
  --primary: #e8eae1;
  --background: #0b1021;
  --item-background: #05070e;
  --item-background-hover: #0b1021;
  --item-group-background: transparent;
  --item-group-outer-background: #05070e;
  --item-group-heading-text-color: #e8eae1;
  --item-group-heading-text-color-hover: #fff;
  .item:nth-child(1n) { color: #eb5cad; border: 1px solid #eb5cad; }
  .item:nth-child(2n) { color: #985ceb; border: 1px solid #985ceb; }
  .item:nth-child(3n) { color: #5c90eb; border: 1px solid #5c90eb; }
  .item:nth-child(4n) { color: #5cdfeb; border: 1px solid #5cdfeb; }
  .item:nth-child(5n) { color: #5ceb8d; border: 1px solid #5ceb8d; }
  .item:nth-child(6n) { color: #afeb5c; border: 1px solid #afeb5c; }
  .item:nth-child(7n) { color: #ebb75c; border: 1px solid #ebb75c; }
  .item:nth-child(8n) { color: #eb615c; border: 1px solid #eb615c; }
  .tile-title span.text { transition: none; }
  .item:hover, .item:focus {
    opacity: 0.85;
    outline: none;
    background: currentColor;
    span { color: #05070e; }
    svg path { fill: #05070e; }
    i.fas, i.fab, i.far, i.fal, i.fad { color: #05070e; }
  }
  h1, h2, h3, h4 {
    font-weight: normal;
  }
}

html[data-theme='minimal-light'], html[data-theme='minimal-dark'], html[data-theme='vaporware'] {
  --font-body: 'PTMono-Regular', 'Courier New', monospace;
  --font-headings: 'PTMono-Regular', 'Courier New', monospace;
  
  label.lbl-toggle h3 {
    font-size: 1.8rem;
  }
  .tile-title span.text {
    font-size: 1.1rem;
    font-weight: bold;
  }

  header {
    padding: 0.1rem 0.5rem;
    .page-titles{
      h1 {
        font-size: 1.25rem;
      }
      span.subtitle {
        font-size: 0.8rem;
  
      }
    }
    .nav .nav-item {
      padding: 0.2rem 0.4rem;
      box-shadow: none;
    }
  }
  .item-group-container.orientation-horizontal .collapsable {
    border-bottom: 1px dashed #ffffff38;
    border-radius: 0;
  }
}

html[data-theme='material'], html[data-theme='material-dark'] {
  --font-body: 'Raleway', serif;
  --font-headings: 'Francois One', serif;
  --curve-factor: 4px;
  --curve-factor-navbar: 8px;
  --about-page-background: var(--background);
  --about-page-color: var(--primary);

  .collapsable {
    margin: 0;
    padding: 0;
  }
  /* Custom layout for medium and large icons */
  .item:not(.size-small) {
    display: flex;
    flex-direction: row-reverse;
    justify-content: flex-end;
    text-align: left;
    overflow: hidden;
    align-items: center;
    width: 15rem;
    min-width: 15rem;
    max-height: 6rem;
    margin: 0.2rem;
    padding: 0.5rem;
    img {
      padding: 0.1rem 0.25rem;
    }
    .tile-title {
      height: auto;
      padding: 0.1rem 0.25rem;
      span.text {
        position: relative;
        font-weight: bold;
        font-size: 1.1rem;
        width: 100%;
      }
      p.description {
        display: block;
        margin: 0;
        white-space: pre-wrap;
        font-size: .9em;
        text-overflow: ellipsis;
      }	
    }
    &.size-large {
      width: 18rem;
      min-width: 18rem;
      max-height: 5rem;
      margin: 0.4rem;
      img {
        padding: 0.2rem 0.5rem;
      }
    }
  }
  .tooltip.item-description-tooltip {
    display: none !important;
  }
  .orientation-horizontal {
    display: flex;
    flex-direction: column;
    .there-are-items {
      display: grid;
      grid-template-columns: repeat(5, 1fr);
      @include phone { grid-template-columns: repeat(1, 1fr); }
      @include tablet { grid-template-columns: repeat(2, 1fr); }
      @include laptop { grid-template-columns: repeat(3, 1fr); }
      @include monitor { grid-template-columns: repeat(4, 1fr); }
      @include big-screen { grid-template-columns: repeat(5, 1fr); }
      @include big-screen-up { grid-template-columns: repeat(6, 1fr); }
    }
  }
  a.item {
    position: relative;
    overflow: hidden;
    transition: all 0.2s linear 0s;
    div {
      transition: all 0.2s linear 0s;
    }
    .overflow-dots {
      display: none;
    }
    &:before {
      content: "\f054";
      font-family: FontAwesome;
      display: flex;
      align-items: center;
      justify-content: center;
      position: absolute;
      top: 0;
      left: 0px;
      height: 100%;
      width: 1rem;
      background: #ccd3dd80;
      border-radius: 0 60% 60% 0;
      transform: scale(0,1);
      transform-origin: left center;
      transition: all 0.2s linear 0s;
      padding: 0 0.2rem;
    }
    &:hover, &:focus-within {
      div.bounce {
        text-indent: 1rem;
      }
      &:before {
        transform: scale(1,1);
        text-indent: 0;
      }
      .opening-method-icon {
        display: none;
      }
    }
    &:active {
      background: #c7c7c754;
    }
    span.text {
      transition: none;
    }
    &.size-small {
      padding-left: 0.5rem;
      min-width: 11rem;
    }
    &.size-large {
      &:before {
        width: 1.5rem;
      }
      &:hover {
        div:nth-child(2) {
          text-indent: 1.5rem;
        }
      }
    }
  }
}

html[data-theme='material'] {
  --primary: #363636;
  --background: #f5f5f5;
  --background-darker: #4285f4;
  --item-group-outer-background: none;
  --item-group-shadow: none;
  --item-group-background: none;
  --item-background: #fff;
  --item-background-hover: #fff;
  --item-shadow: 0 1px 3px #0000001f, 0 1px 2px #0000003d;
  --item-hover-shadow: 0 1px 4px #00000029, 0 2px 4px #0000002a;
  --item-text-color: #363636;
  --item-group-heading-text-color-hover: #363636;
  --item-icon-transform-hover: none;
  --nav-link-background-color: #0c4eba;
  --nav-link-text-color: #fff;
  --nav-link-border-color: #0c4eba;
  --settings-text-color: #363636;
  --config-code-color: #363636;
  --config-settings-background: #fff;
  --config-settings-color: #473f3f;
  --heading-text-color: #fff;
  --curve-factor: 4px;
  --curve-factor-navbar: 8px;
  --search-container-background: #4285f4;
  --welcome-popup-text-color: #f5f5f5;
  --footer-text-color: #f5f5f5cc;
  // --login-form-background-secondary: #f5f5f5cc;

  header {
    background: #4285f4;
    color: #fff;
    .page-titles span.subtitle {
      text-shadow: none;
    }
  }
  footer {
    opacity: 1;
    color: #fff;
  }
  section.filter-container form label {
    color: #fff;
  }
  .prism-editor-wrapper {
    background: #f5f5f5;
  }
}

html[data-theme='material-dark'] {
  --primary: #08B0BB;
  --background: #313941;
  --background-darker: #08B0BB;
  --settings-background: #092b3a;
  --settings-text-color: #08B0BB;

  --item-group-background: none;
  --item-group-outer-background: none;
  --item-group-shadow: none;
  --item-group-padding: 5px 0 0;
  --item-group-heading-text-color: #e0e0e0;
  --item-group-heading-text-color-hover: #08B0BB;

  --item-text-color: #e0e0e0;
  --item-shadow: 2px 2px 3px #00000082, 0 1px 10px #00000040;
  --item-hover-shadow: 4px 4px 3px #00000082, 0 1px 10px #00000040;
  --item-icon-transform: drop-shadow(1px 2px 1px var(--transparent-30)) saturate(0.65);
  --item-icon-transform-hover: drop-shadow(1px 3px 2px var(--transparent-30)) saturate(2);
  --item-background: #414B55;
  --item-background-hover: #414B55;
  
  --settings-background: #131a1f;
  --search-container-background: #131a1f;
  --search-field-background: #39434c;
  --heading-text-color: #131a1f;
  --nav-link-text-color: #08B0BB;
  --nav-link-background-color: #131a1f;
  --nav-link-text-color-hover: #08B0BB;
  --nav-link-background-color-hover: #131a1fc7;
  --nav-link-border-color-hover: transparent;
  --curve-factor: 2px;
  --curve-factor-navbar: 0;
  
  --welcome-popup-background: #131a1f;
  --welcome-popup-text-color: var(--primary);
  --config-settings-background: #131a1f;
  --config-settings-color: #41e2ed;
  --scroll-bar-color: #08B0BB;
  --scroll-bar-background: #131a1f;
  --status-check-tooltip-color: #131a1f;
  // --login-form-color: #131a1f;
  --login-form-background-secondary: #131a1f;

  &::-webkit-scrollbar-thumb {
    border-left: 1px solid #131a1f;
  }
  .item {
    &:before, &:active {
      background: #131a1f !important;
    }
  }
}

html[data-theme='minimal-light'] {
  --primary: #a5a5a5;
  --background: #ffffff;
  --background-darker: #14171e;
  --item-group-outer-background: none;
  --item-group-shadow: none;
  --item-group-background: none;
  --item-background: none;
  --item-background-hover: #f2f2f2;
  --item-shadow: none;
  --item-hover-shadow: none;
  --item-text-color: #101931;
  --item-group-heading-text-color-hover: #101931;
  --settings-text-color: #101931;
  --config-code-color: #101931;
  --nav-link-background-color: none;
  --search-container-background: #fff;
  --curve-factor: 4px;
  --curve-factor-navbar: 8px;
  --status-check-tooltip-background: #f2f2f2;
  --status-check-tooltip-color: #000;
  --login-form-color: #101931;
  --about-page-background: var(--background);
  --about-page-color: var(--background-darker);

  section.filter-container {
    background: #fff;
    border-bottom: 1px dashed #00000038;
    input#filter-tiles {
      border: 1px solid #101931;
    }
  }
}

html[data-theme='minimal-dark'] {
  --primary: #a5a5a5;
  --background: #14171e;
  --background-darker: #090b0e;
  --item-group-outer-background: none;
  --item-group-shadow: none;
  --item-group-background: none;
  --item-background: none;
  --item-background-hover: #090b0e;
  --item-shadow: none;
  --item-hover-shadow: none;
  --item-text-color: #fff;
  --item-group-heading-text-color-hover: #fff;
  --settings-text-color: #fff;
  --config-code-color: #fff;
  --nav-link-background-color: none;
  --search-container-background: #14171e;
  --curve-factor: 4px;
  --curve-factor-navbar: 8px;
  --item-group-heading-text-color: #fff;
  --item-group-heading-text-color-hover: #ffffffbf;
  --about-page-background: var(--background);
  --about-page-color: var(--primary);

  label.lbl-toggle h3 {
    font-size: 1.8rem;
  }

  section.filter-container {
    background: #14171e;
    border-bottom: 1px dashed #ffffff38;
    input#filter-tiles {
      border: 1px solid #fff;
    }
  }
}

html[data-theme='vaporware'] {
  --primary: #09bfe6;
  --background: #100e2c;
  --background-darker: #6c27ea;
  --background-darker: linear-gradient(0deg, rgba(108,39,234,1) 0%, rgba(132,76,235,1) 80%);
  --settings-text-color: #6c27ea;
  --item-group-outer-background: #096de6;
  --item-group-outer-background: linear-gradient(45deg, rgba(9,109,230,1) 0%, rgba(9,147,230,1) 50%, rgba(9,109,230,1) 100%);
  --item-group-background: #190e2c;
  --item-group-heading-text-color: var(--white);
  --item-group-heading-text-color-hover: #5118b9;
  --item-text-color: #5118b9;
  --item-background: #09bfe6;
  --item-background-hover: #9967f6;
  --footer-text-color: var(--white);
  --item-shadow: none;
  --curve-factor: 2px;
  --curve-factor-navbar: 6px;
  --login-form-color: #09bfe6;

  .home {
    background: linear-gradient(180deg, rgba(16,14,44,1) 10%, rgba(27,24,79,1) 40%, rgba(16,14,44,1) 100%);
  }

  div.item-group-container {
    gap: 0.3rem;
    margin: 1rem auto;
  }
  div.collapsable {
    margin: 0.2rem;
    padding: 0.2rem;
  }
  div.content-inner {
    padding: 0 !important;
  }
  a.item {
    margin: 0.1rem;
    border: 0;
    &.size-medium {
      min-height: 80px;
    }
  }
  section.filter-container {
    background: linear-gradient(0deg, var(--background) 25%, #6c27ea 100%);
    form {
      background: #6c27ea;
      height: 2.5rem;
    }
    form label, i.clear-search {
      color: #100e2c;
      border-color: #100e2c;
      font-weight: bold;
    }
  }
  .tile-title span.text {
    font-weight: normal;
  }
  label.lbl-toggle h3 {
    font-size: 1.4rem;
  }
  footer {
    color: var(--white);
  }
  a.item {
    background: linear-gradient(45deg, rgba(9,191,230,1) 0%, rgba(9,191,230,1) 80%, rgba(9,203,230,1) 100%);
    &:hover {
      background: #844ceb;
      color: #09bfe6;
    }
    .tile-title span.text { transition: none; }
  }

  div.login-page {
    background: url('https://i.ibb.co/JqcJcGK/vaporwave-sunset-wallpaper.jpg');
    background-size: cover;
  }
  // body {
  //   background: url('https://i.ibb.co/JqcJcGK/vaporwave-sunset-wallpaper.jpg');
  //   background-size: cover;
  //   div.home { background: none; }
  // }
}