/* src/styles.scss */
.loading {
  background: url("./media/loader.gif") no-repeat center/contain;
}
.loading video {
  visibility: hidden;
}
video.loader {
  width: 100%;
  height: 100%;
  position: fixed;
}
.molecule-structure svg {
  height: 100%;
  width: 100%;
}
.molecule-structure svg path {
  stroke-width: 1.5 !important;
}
.video {
  filter: brightness(1.2);
}
@supports (-moz-appearance: none) {
  video {
    transform: scale(0.4);
    border-radius: 999px;
    background: black;
  }
}
.dark .video {
  filter: brightness(1);
}
.dark .molecule {
  filter: invert(1) hue-rotate(180deg);
}
:root {
  color-scheme: light;
  font: var(--mat-sys-body-large);
}
:root {
  --mat-sys-background: #effbff;
  --mat-sys-error: #ba1a1a;
  --mat-sys-error-container: #ffdad6;
  --mat-sys-inverse-on-surface: #d6f6ff;
  --mat-sys-inverse-primary: #5bd4ff;
  --mat-sys-inverse-surface: #00363f;
  --mat-sys-on-background: #001f25;
  --mat-sys-on-error: #ffffff;
  --mat-sys-on-error-container: #93000a;
  --mat-sys-on-primary: #ffffff;
  --mat-sys-on-primary-container: #004d62;
  --mat-sys-on-primary-fixed: #001f29;
  --mat-sys-on-primary-fixed-variant: #004d62;
  --mat-sys-on-secondary: #ffffff;
  --mat-sys-on-secondary-container: #004d62;
  --mat-sys-on-secondary-fixed: #001f29;
  --mat-sys-on-secondary-fixed-variant: #004d62;
  --mat-sys-on-surface: #001f25;
  --mat-sys-on-surface-variant: #3d484e;
  --mat-sys-on-tertiary: #ffffff;
  --mat-sys-on-tertiary-container: #004882;
  --mat-sys-on-tertiary-fixed: #001c38;
  --mat-sys-on-tertiary-fixed-variant: #004882;
  --mat-sys-outline: #6d797f;
  --mat-sys-outline-variant: #bcc8cf;
  --mat-sys-primary: #006781;
  --mat-sys-primary-container: #baeaff;
  --mat-sys-primary-fixed: #baeaff;
  --mat-sys-primary-fixed-dim: #5bd4ff;
  --mat-sys-scrim: #000000;
  --mat-sys-secondary: #006781;
  --mat-sys-secondary-container: #baeaff;
  --mat-sys-secondary-fixed: #baeaff;
  --mat-sys-secondary-fixed-dim: #5bd4ff;
  --mat-sys-shadow: #000000;
  --mat-sys-surface: #effbff;
  --mat-sys-surface-bright: #effbff;
  --mat-sys-surface-container: #cdf5ff;
  --mat-sys-surface-container-high: #baf1ff;
  --mat-sys-surface-container-highest: #a6eeff;
  --mat-sys-surface-container-low: #def8ff;
  --mat-sys-surface-container-lowest: #ffffff;
  --mat-sys-surface-dim: #83e8ff;
  --mat-sys-surface-tint: #006781;
  --mat-sys-surface-variant: #d8e4eb;
  --mat-sys-tertiary: #1660a5;
  --mat-sys-tertiary-container: #d3e4ff;
  --mat-sys-tertiary-fixed: #d3e4ff;
  --mat-sys-tertiary-fixed-dim: #a3c9ff;
  --mat-sys-neutral-variant20: #273237;
  --mat-sys-neutral10: #001f25;
}
:root {
  --mat-sys-level0:
    0px 0px 0px 0px rgba(0, 0, 0, 0.2),
    0px 0px 0px 0px rgba(0, 0, 0, 0.14),
    0px 0px 0px 0px rgba(0, 0, 0, 0.12);
}
:root {
  --mat-sys-level1:
    0px 2px 1px -1px rgba(0, 0, 0, 0.2),
    0px 1px 1px 0px rgba(0, 0, 0, 0.14),
    0px 1px 3px 0px rgba(0, 0, 0, 0.12);
}
:root {
  --mat-sys-level2:
    0px 3px 3px -2px rgba(0, 0, 0, 0.2),
    0px 3px 4px 0px rgba(0, 0, 0, 0.14),
    0px 1px 8px 0px rgba(0, 0, 0, 0.12);
}
:root {
  --mat-sys-level3:
    0px 3px 5px -1px rgba(0, 0, 0, 0.2),
    0px 6px 10px 0px rgba(0, 0, 0, 0.14),
    0px 1px 18px 0px rgba(0, 0, 0, 0.12);
}
:root {
  --mat-sys-level4:
    0px 5px 5px -3px rgba(0, 0, 0, 0.2),
    0px 8px 10px 1px rgba(0, 0, 0, 0.14),
    0px 3px 14px 2px rgba(0, 0, 0, 0.12);
}
:root {
  --mat-sys-level5:
    0px 7px 8px -4px rgba(0, 0, 0, 0.2),
    0px 12px 17px 2px rgba(0, 0, 0, 0.14),
    0px 5px 22px 4px rgba(0, 0, 0, 0.12);
}
:root {
  --mat-sys-body-large: 400 1rem / 1.5rem Roboto;
  --mat-sys-body-large-font: Roboto;
  --mat-sys-body-large-line-height: 1.5rem;
  --mat-sys-body-large-size: 1rem;
  --mat-sys-body-large-tracking: 0.031rem;
  --mat-sys-body-large-weight: 400;
  --mat-sys-body-medium: 400 0.875rem / 1.25rem Roboto;
  --mat-sys-body-medium-font: Roboto;
  --mat-sys-body-medium-line-height: 1.25rem;
  --mat-sys-body-medium-size: 0.875rem;
  --mat-sys-body-medium-tracking: 0.016rem;
  --mat-sys-body-medium-weight: 400;
  --mat-sys-body-small: 400 0.75rem / 1rem Roboto;
  --mat-sys-body-small-font: Roboto;
  --mat-sys-body-small-line-height: 1rem;
  --mat-sys-body-small-size: 0.75rem;
  --mat-sys-body-small-tracking: 0.025rem;
  --mat-sys-body-small-weight: 400;
  --mat-sys-display-large: 400 3.562rem / 4rem Roboto;
  --mat-sys-display-large-font: Roboto;
  --mat-sys-display-large-line-height: 4rem;
  --mat-sys-display-large-size: 3.562rem;
  --mat-sys-display-large-tracking: -0.016rem;
  --mat-sys-display-large-weight: 400;
  --mat-sys-display-medium: 400 2.812rem / 3.25rem Roboto;
  --mat-sys-display-medium-font: Roboto;
  --mat-sys-display-medium-line-height: 3.25rem;
  --mat-sys-display-medium-size: 2.812rem;
  --mat-sys-display-medium-tracking: 0;
  --mat-sys-display-medium-weight: 400;
  --mat-sys-display-small: 400 2.25rem / 2.75rem Roboto;
  --mat-sys-display-small-font: Roboto;
  --mat-sys-display-small-line-height: 2.75rem;
  --mat-sys-display-small-size: 2.25rem;
  --mat-sys-display-small-tracking: 0;
  --mat-sys-display-small-weight: 400;
  --mat-sys-headline-large: 400 2rem / 2.5rem Roboto;
  --mat-sys-headline-large-font: Roboto;
  --mat-sys-headline-large-line-height: 2.5rem;
  --mat-sys-headline-large-size: 2rem;
  --mat-sys-headline-large-tracking: 0;
  --mat-sys-headline-large-weight: 400;
  --mat-sys-headline-medium: 400 1.75rem / 2.25rem Roboto;
  --mat-sys-headline-medium-font: Roboto;
  --mat-sys-headline-medium-line-height: 2.25rem;
  --mat-sys-headline-medium-size: 1.75rem;
  --mat-sys-headline-medium-tracking: 0;
  --mat-sys-headline-medium-weight: 400;
  --mat-sys-headline-small: 400 1.5rem / 2rem Roboto;
  --mat-sys-headline-small-font: Roboto;
  --mat-sys-headline-small-line-height: 2rem;
  --mat-sys-headline-small-size: 1.5rem;
  --mat-sys-headline-small-tracking: 0;
  --mat-sys-headline-small-weight: 400;
  --mat-sys-label-large: 500 0.875rem / 1.25rem Roboto;
  --mat-sys-label-large-font: Roboto;
  --mat-sys-label-large-line-height: 1.25rem;
  --mat-sys-label-large-size: 0.875rem;
  --mat-sys-label-large-tracking: 0.006rem;
  --mat-sys-label-large-weight: 500;
  --mat-sys-label-large-weight-prominent: 700;
  --mat-sys-label-medium: 500 0.75rem / 1rem Roboto;
  --mat-sys-label-medium-font: Roboto;
  --mat-sys-label-medium-line-height: 1rem;
  --mat-sys-label-medium-size: 0.75rem;
  --mat-sys-label-medium-tracking: 0.031rem;
  --mat-sys-label-medium-weight: 500;
  --mat-sys-label-medium-weight-prominent: 700;
  --mat-sys-label-small: 500 0.688rem / 1rem Roboto;
  --mat-sys-label-small-font: Roboto;
  --mat-sys-label-small-line-height: 1rem;
  --mat-sys-label-small-size: 0.688rem;
  --mat-sys-label-small-tracking: 0.031rem;
  --mat-sys-label-small-weight: 500;
  --mat-sys-title-large: 400 1.375rem / 1.75rem Roboto;
  --mat-sys-title-large-font: Roboto;
  --mat-sys-title-large-line-height: 1.75rem;
  --mat-sys-title-large-size: 1.375rem;
  --mat-sys-title-large-tracking: 0;
  --mat-sys-title-large-weight: 400;
  --mat-sys-title-medium: 500 1rem / 1.5rem Roboto;
  --mat-sys-title-medium-font: Roboto;
  --mat-sys-title-medium-line-height: 1.5rem;
  --mat-sys-title-medium-size: 1rem;
  --mat-sys-title-medium-tracking: 0.009rem;
  --mat-sys-title-medium-weight: 500;
  --mat-sys-title-small: 500 0.875rem / 1.25rem Roboto;
  --mat-sys-title-small-font: Roboto;
  --mat-sys-title-small-line-height: 1.25rem;
  --mat-sys-title-small-size: 0.875rem;
  --mat-sys-title-small-tracking: 0.006rem;
  --mat-sys-title-small-weight: 500;
}
:root {
  --mat-sys-corner-extra-large: 28px;
  --mat-sys-corner-extra-large-top: 28px 28px 0 0;
  --mat-sys-corner-extra-small: 4px;
  --mat-sys-corner-extra-small-top: 4px 4px 0 0;
  --mat-sys-corner-full: 9999px;
  --mat-sys-corner-large: 16px;
  --mat-sys-corner-large-end: 0 16px 16px 0;
  --mat-sys-corner-large-start: 16px 0 0 16px;
  --mat-sys-corner-large-top: 16px 16px 0 0;
  --mat-sys-corner-medium: 12px;
  --mat-sys-corner-none: 0;
  --mat-sys-corner-small: 8px;
}
:root {
  --mat-sys-dragged-state-layer-opacity: 0.16;
  --mat-sys-focus-state-layer-opacity: 0.12;
  --mat-sys-hover-state-layer-opacity: 0.08;
  --mat-sys-pressed-state-layer-opacity: 0.12;
}
body.dark {
  color-scheme: dark;
}
body.dark {
  --mat-sys-background: #00161b;
  --mat-sys-error: #ffb4ab;
  --mat-sys-error-container: #93000a;
  --mat-sys-inverse-on-surface: #00363f;
  --mat-sys-inverse-primary: #006781;
  --mat-sys-inverse-surface: #a6eeff;
  --mat-sys-on-background: #a6eeff;
  --mat-sys-on-error: #690005;
  --mat-sys-on-error-container: #ffdad6;
  --mat-sys-on-primary: #003545;
  --mat-sys-on-primary-container: #baeaff;
  --mat-sys-on-primary-fixed: #001f29;
  --mat-sys-on-primary-fixed-variant: #004d62;
  --mat-sys-on-secondary: #003545;
  --mat-sys-on-secondary-container: #baeaff;
  --mat-sys-on-secondary-fixed: #001f29;
  --mat-sys-on-secondary-fixed-variant: #004d62;
  --mat-sys-on-surface: #a6eeff;
  --mat-sys-on-surface-variant: #d8e4eb;
  --mat-sys-on-tertiary: #00315c;
  --mat-sys-on-tertiary-container: #d3e4ff;
  --mat-sys-on-tertiary-fixed: #001c38;
  --mat-sys-on-tertiary-fixed-variant: #004882;
  --mat-sys-outline: #879399;
  --mat-sys-outline-variant: #3d484e;
  --mat-sys-primary: #5bd4ff;
  --mat-sys-primary-container: #004d62;
  --mat-sys-primary-fixed: #baeaff;
  --mat-sys-primary-fixed-dim: #5bd4ff;
  --mat-sys-scrim: #000000;
  --mat-sys-secondary: #5bd4ff;
  --mat-sys-secondary-container: #004d62;
  --mat-sys-secondary-fixed: #baeaff;
  --mat-sys-secondary-fixed-dim: #5bd4ff;
  --mat-sys-shadow: #000000;
  --mat-sys-surface: #00161b;
  --mat-sys-surface-bright: #003f4a;
  --mat-sys-surface-container: #00242a;
  --mat-sys-surface-container-high: #002f37;
  --mat-sys-surface-container-highest: #003b44;
  --mat-sys-surface-container-low: #001f25;
  --mat-sys-surface-container-lowest: #001115;
  --mat-sys-surface-dim: #00161b;
  --mat-sys-surface-tint: #5bd4ff;
  --mat-sys-surface-variant: #3d484e;
  --mat-sys-tertiary: #a3c9ff;
  --mat-sys-tertiary-container: #004882;
  --mat-sys-tertiary-fixed: #d3e4ff;
  --mat-sys-tertiary-fixed-dim: #a3c9ff;
  --mat-sys-neutral-variant20: #273237;
  --mat-sys-neutral10: #001f25;
}
body.dark {
  --mat-sys-level0:
    0px 0px 0px 0px rgba(0, 0, 0, 0.2),
    0px 0px 0px 0px rgba(0, 0, 0, 0.14),
    0px 0px 0px 0px rgba(0, 0, 0, 0.12);
}
body.dark {
  --mat-sys-level1:
    0px 2px 1px -1px rgba(0, 0, 0, 0.2),
    0px 1px 1px 0px rgba(0, 0, 0, 0.14),
    0px 1px 3px 0px rgba(0, 0, 0, 0.12);
}
body.dark {
  --mat-sys-level2:
    0px 3px 3px -2px rgba(0, 0, 0, 0.2),
    0px 3px 4px 0px rgba(0, 0, 0, 0.14),
    0px 1px 8px 0px rgba(0, 0, 0, 0.12);
}
body.dark {
  --mat-sys-level3:
    0px 3px 5px -1px rgba(0, 0, 0, 0.2),
    0px 6px 10px 0px rgba(0, 0, 0, 0.14),
    0px 1px 18px 0px rgba(0, 0, 0, 0.12);
}
body.dark {
  --mat-sys-level4:
    0px 5px 5px -3px rgba(0, 0, 0, 0.2),
    0px 8px 10px 1px rgba(0, 0, 0, 0.14),
    0px 3px 14px 2px rgba(0, 0, 0, 0.12);
}
body.dark {
  --mat-sys-level5:
    0px 7px 8px -4px rgba(0, 0, 0, 0.2),
    0px 12px 17px 2px rgba(0, 0, 0, 0.14),
    0px 5px 22px 4px rgba(0, 0, 0, 0.12);
}
body.dark {
  --mat-sys-body-large: 400 1rem / 1.5rem Roboto;
  --mat-sys-body-large-font: Roboto;
  --mat-sys-body-large-line-height: 1.5rem;
  --mat-sys-body-large-size: 1rem;
  --mat-sys-body-large-tracking: 0.031rem;
  --mat-sys-body-large-weight: 400;
  --mat-sys-body-medium: 400 0.875rem / 1.25rem Roboto;
  --mat-sys-body-medium-font: Roboto;
  --mat-sys-body-medium-line-height: 1.25rem;
  --mat-sys-body-medium-size: 0.875rem;
  --mat-sys-body-medium-tracking: 0.016rem;
  --mat-sys-body-medium-weight: 400;
  --mat-sys-body-small: 400 0.75rem / 1rem Roboto;
  --mat-sys-body-small-font: Roboto;
  --mat-sys-body-small-line-height: 1rem;
  --mat-sys-body-small-size: 0.75rem;
  --mat-sys-body-small-tracking: 0.025rem;
  --mat-sys-body-small-weight: 400;
  --mat-sys-display-large: 400 3.562rem / 4rem Roboto;
  --mat-sys-display-large-font: Roboto;
  --mat-sys-display-large-line-height: 4rem;
  --mat-sys-display-large-size: 3.562rem;
  --mat-sys-display-large-tracking: -0.016rem;
  --mat-sys-display-large-weight: 400;
  --mat-sys-display-medium: 400 2.812rem / 3.25rem Roboto;
  --mat-sys-display-medium-font: Roboto;
  --mat-sys-display-medium-line-height: 3.25rem;
  --mat-sys-display-medium-size: 2.812rem;
  --mat-sys-display-medium-tracking: 0;
  --mat-sys-display-medium-weight: 400;
  --mat-sys-display-small: 400 2.25rem / 2.75rem Roboto;
  --mat-sys-display-small-font: Roboto;
  --mat-sys-display-small-line-height: 2.75rem;
  --mat-sys-display-small-size: 2.25rem;
  --mat-sys-display-small-tracking: 0;
  --mat-sys-display-small-weight: 400;
  --mat-sys-headline-large: 400 2rem / 2.5rem Roboto;
  --mat-sys-headline-large-font: Roboto;
  --mat-sys-headline-large-line-height: 2.5rem;
  --mat-sys-headline-large-size: 2rem;
  --mat-sys-headline-large-tracking: 0;
  --mat-sys-headline-large-weight: 400;
  --mat-sys-headline-medium: 400 1.75rem / 2.25rem Roboto;
  --mat-sys-headline-medium-font: Roboto;
  --mat-sys-headline-medium-line-height: 2.25rem;
  --mat-sys-headline-medium-size: 1.75rem;
  --mat-sys-headline-medium-tracking: 0;
  --mat-sys-headline-medium-weight: 400;
  --mat-sys-headline-small: 400 1.5rem / 2rem Roboto;
  --mat-sys-headline-small-font: Roboto;
  --mat-sys-headline-small-line-height: 2rem;
  --mat-sys-headline-small-size: 1.5rem;
  --mat-sys-headline-small-tracking: 0;
  --mat-sys-headline-small-weight: 400;
  --mat-sys-label-large: 500 0.875rem / 1.25rem Roboto;
  --mat-sys-label-large-font: Roboto;
  --mat-sys-label-large-line-height: 1.25rem;
  --mat-sys-label-large-size: 0.875rem;
  --mat-sys-label-large-tracking: 0.006rem;
  --mat-sys-label-large-weight: 500;
  --mat-sys-label-large-weight-prominent: 700;
  --mat-sys-label-medium: 500 0.75rem / 1rem Roboto;
  --mat-sys-label-medium-font: Roboto;
  --mat-sys-label-medium-line-height: 1rem;
  --mat-sys-label-medium-size: 0.75rem;
  --mat-sys-label-medium-tracking: 0.031rem;
  --mat-sys-label-medium-weight: 500;
  --mat-sys-label-medium-weight-prominent: 700;
  --mat-sys-label-small: 500 0.688rem / 1rem Roboto;
  --mat-sys-label-small-font: Roboto;
  --mat-sys-label-small-line-height: 1rem;
  --mat-sys-label-small-size: 0.688rem;
  --mat-sys-label-small-tracking: 0.031rem;
  --mat-sys-label-small-weight: 500;
  --mat-sys-title-large: 400 1.375rem / 1.75rem Roboto;
  --mat-sys-title-large-font: Roboto;
  --mat-sys-title-large-line-height: 1.75rem;
  --mat-sys-title-large-size: 1.375rem;
  --mat-sys-title-large-tracking: 0;
  --mat-sys-title-large-weight: 400;
  --mat-sys-title-medium: 500 1rem / 1.5rem Roboto;
  --mat-sys-title-medium-font: Roboto;
  --mat-sys-title-medium-line-height: 1.5rem;
  --mat-sys-title-medium-size: 1rem;
  --mat-sys-title-medium-tracking: 0.009rem;
  --mat-sys-title-medium-weight: 500;
  --mat-sys-title-small: 500 0.875rem / 1.25rem Roboto;
  --mat-sys-title-small-font: Roboto;
  --mat-sys-title-small-line-height: 1.25rem;
  --mat-sys-title-small-size: 0.875rem;
  --mat-sys-title-small-tracking: 0.006rem;
  --mat-sys-title-small-weight: 500;
}
body.dark {
  --mat-sys-corner-extra-large: 28px;
  --mat-sys-corner-extra-large-top: 28px 28px 0 0;
  --mat-sys-corner-extra-small: 4px;
  --mat-sys-corner-extra-small-top: 4px 4px 0 0;
  --mat-sys-corner-full: 9999px;
  --mat-sys-corner-large: 16px;
  --mat-sys-corner-large-end: 0 16px 16px 0;
  --mat-sys-corner-large-start: 16px 0 0 16px;
  --mat-sys-corner-large-top: 16px 16px 0 0;
  --mat-sys-corner-medium: 12px;
  --mat-sys-corner-none: 0;
  --mat-sys-corner-small: 8px;
}
body.dark {
  --mat-sys-dragged-state-layer-opacity: 0.16;
  --mat-sys-focus-state-layer-opacity: 0.12;
  --mat-sys-hover-state-layer-opacity: 0.08;
  --mat-sys-pressed-state-layer-opacity: 0.12;
}
.high-contrast {
  --mat-sys-primary: light-dark(#00313f, #ddf4ff);
  --mat-sys-on-primary: light-dark(#ffffff, #000000);
  --mat-sys-primary-container: light-dark(#005065, #4ad1fe);
  --mat-sys-on-primary-container: light-dark(#ffffff, #000d13);
  --mat-sys-inverse-primary: light-dark(#5bd4ff, #004f64);
  --mat-sys-primary-fixed: light-dark(#005065, #baeaff);
  --mat-sys-primary-fixed-dim: light-dark(#003848, #5bd4ff);
  --mat-sys-on-primary-fixed: light-dark(#ffffff, #000000);
  --mat-sys-on-primary-fixed-variant: light-dark(#ffffff, #00141b);
  --mat-sys-secondary: light-dark(#00313f, #ddf4ff);
  --mat-sys-on-secondary: light-dark(#ffffff, #000000);
  --mat-sys-secondary-container: light-dark(#005065, #4ad1fe);
  --mat-sys-on-secondary-container: light-dark(#ffffff, #000d13);
  --mat-sys-secondary-fixed: light-dark(#005065, #baeaff);
  --mat-sys-secondary-fixed-dim: light-dark(#003848, #5bd4ff);
  --mat-sys-on-secondary-fixed: light-dark(#ffffff, #000000);
  --mat-sys-on-secondary-fixed-variant: light-dark(#ffffff, #00141b);
  --mat-sys-tertiary: light-dark(#002d54, #e9f0ff);
  --mat-sys-on-tertiary: light-dark(#ffffff, #000000);
  --mat-sys-tertiary-container: light-dark(#004a86, #9bc5ff);
  --mat-sys-on-tertiary-container: light-dark(#ffffff, #000c1d);
  --mat-sys-tertiary-fixed: light-dark(#004a86, #d3e4ff);
  --mat-sys-tertiary-fixed-dim: light-dark(#003460, #a3c9ff);
  --mat-sys-on-tertiary-fixed: light-dark(#ffffff, #000000);
  --mat-sys-on-tertiary-fixed-variant: light-dark(#ffffff, #001227);
  --mat-sys-background: light-dark(#effbff, #00161b);
  --mat-sys-on-background: light-dark(#001f25, #a6eeff);
  --mat-sys-surface: light-dark(#effbff, #00161b);
  --mat-sys-surface-dim: light-dark(#4fc8e0, #00161b);
  --mat-sys-surface-bright: light-dark(#effbff, #005866);
  --mat-sys-surface-container-lowest: light-dark(#ffffff, #000000);
  --mat-sys-surface-container: light-dark(#a6eeff, #00363f);
  --mat-sys-surface-container-high: light-dark(#70e4fd, #00424d);
  --mat-sys-surface-container-highest: light-dark(#60d6ee, #004e5b);
  --mat-sys-on-surface: light-dark(#000000, #ffffff);
  --mat-sys-shadow: light-dark(#000000, #000000);
  --mat-sys-scrim: light-dark(#000000, #000000);
  --mat-sys-surface-tint: light-dark(#006781, #5bd4ff);
  --mat-sys-inverse-surface: light-dark(#00363f, #a6eeff);
  --mat-sys-inverse-on-surface: light-dark(#ffffff, #000000);
  --mat-sys-outline: light-dark(#222e33, #e6f2f9);
  --mat-sys-outline-variant: light-dark(#3f4b50, #b8c4cb);
  --mat-sys-error: light-dark(#600004, #ffece9);
  --mat-sys-on-error: light-dark(#ffffff, #000000);
  --mat-sys-error-container: light-dark(#98000a, #ffaea4);
  --mat-sys-on-error-container: light-dark(#ffffff, #220001);
  --mat-sys-surface-variant: light-dark(#d8e4eb, #3d484e);
  --mat-sys-on-surface-variant: light-dark(#000000, #ffffff);
}
body {
  --primary: var(--mat-sys-primary);
  --on-primary: var(--mat-sys-on-primary);
  --primary-container: var(--mat-sys-primary-container);
  --on-primary-container: var(--mat-sys-on-primary-container);
  --secondary: var(--mat-sys-secondary);
  --on-secondary: var(--mat-sys-on-secondary);
  --secondary-container: var(--mat-sys-secondary-container);
  --on-secondary-container: var(--mat-sys-on-secondary-container);
  --tertiary: var(--mat-sys-tertiary);
  --on-tertiary: var(--mat-sys-on-tertiary);
  --tertiary-container: var(--mat-sys-tertiary-container);
  --on-tertiary-container: var(--mat-sys-on-tertiary-container);
  --error: var(--mat-sys-error);
  --on-error: var(--mat-sys-on-error);
  --error-container: var(--mat-sys-error-container);
  --on-error-container: var(--mat-sys-on-error-container);
  --warn: light-dark(#c67c10, #ff9300);
  --background: var(--mat-sys-background);
  --on-background: var(--mat-sys-on-background);
  --surface: var(--mat-sys-surface);
  --on-surface: var(--mat-sys-on-surface);
  --surface-variant: var(--mat-sys-surface-variant);
  --on-surface-variant: var(--mat-sys-on-surface-variant);
  --outline: var(--mat-sys-outline);
  --outline-variant: var(--mat-sys-outline-variant);
  --surface1: color-mix(in lch, var(--primary) 5%, var(--surface) 95%);
  --surface2: color-mix(in lch, var(--primary) 8%, var(--surface) 92%);
  --surface3: color-mix(in lch, var(--primary) 11%, var(--surface) 89%);
  --surface4: color-mix(in lch, var(--primary) 12%, var(--surface) 88%);
  --surface5: color-mix(in lch, var(--primary) 14%, var(--surface) 86%);
  --card: var(--mat-sys-neutral10);
  --icon-positive: #0C9509;
  --hover: rgba(0, 0, 0, 0.04);
}
@font-face {
  font-family: "Roboto Mono";
  src: url("./media/RobotoMono.ttf") format("truetype");
}
.relative {
  position: relative;
}
.no-event {
  pointer-events: none;
}
.bold {
  font-weight: 500;
}
.no-wrap {
  white-space: nowrap;
}
.ellipsis {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}
.italic {
  font-style: italic;
}
.flex {
  display: flex;
}
.flex-container {
  display: flex;
  flex-wrap: wrap;
}
.flex-container.no-wrap {
  flex-wrap: nowrap;
  white-space: inherit;
}
.flex-one {
  flex: 1;
}
.flex-shrink {
  flex: 0 1 auto;
}
.flex-zero {
  flex: 0 0 auto;
}
.gap-one {
  gap: 1em;
}
.text-align-center {
  text-align: center;
}
.align-center {
  align-items: center;
}
.align-start {
  align-items: start;
}
.justify-center {
  justify-content: center;
}
.justify-between {
  justify-content: space-between;
}
.justify-evenly {
  justify-content: space-evenly;
}
.horizontal {
  flex-direction: row;
}
.vertical {
  flex-direction: column;
}
.float-right {
  float: right;
}
.float-left {
  float: left;
}
.no-radius {
  border-radius: 0;
}
.reactome-icon {
  font-family: var(--reactome-symbols-font-family, "Material Symbols Outlined");
  font-variation-settings: var(--reactome-symbols-variation-settings, "FILL" 1, "wght" 400, "GRAD" 0, "opsz" 24);
  font-style: normal;
  font-size: 24px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-feature-settings: "liga";
  -webkit-font-smoothing: antialiased;
}
.reactome-icon.outlined {
  font-variation-settings: "FILL" 0;
}
html,
body {
  font: var(--mat-sys-body-medium);
  --hover: rgb(0 0 0 / 7%);
  --card: var(--mat-sys-surface-container-low);
}
html.dark,
body.dark {
  --hover: rgb(255 255 255 / 7%);
  --shadow-color: rgb(5, 3, 3);
  --mat-sys-level5:
    0px 7px 8px -4px color-mix(in srgb, var(--shadow-color), transparent 20%),
    0px 12px 17px 2px color-mix(in srgb, var(--shadow-color), transparent 14%),
    0px 5px 22px 4px color-mix(in srgb, var(--shadow-color), transparent 12%);
  --mat-sys-level4:
    0px 5px 5px -3px color-mix(in srgb, var(--shadow-color), transparent 20%),
    0px 8px 10px 1px color-mix(in srgb, var(--shadow-color), transparent 14%),
    0px 3px 14px 2px color-mix(in srgb, var(--shadow-color), transparent 12%);
  --mat-sys-level3:
    0px 3px 5px -1px color-mix(in srgb, var(--shadow-color), transparent 20%),
    0px 6px 10px 0px color-mix(in srgb, var(--shadow-color), transparent 14%),
    0px 1px 18px 0px color-mix(in srgb, var(--shadow-color), transparent 12%);
  --mat-sys-level2:
    0px 3px 3px -2px color-mix(in srgb, var(--shadow-color), transparent 20%),
    0px 3px 4px 0px color-mix(in srgb, var(--shadow-color), transparent 14%),
    0px 1px 8px 0px color-mix(in srgb, var(--shadow-color), transparent 12%);
  --mat-sys-level1:
    0px 2px 1px -1px color-mix(in srgb, var(--shadow-color), transparent 20%),
    0px 1px 1px 0px color-mix(in srgb, var(--shadow-color), transparent 14%),
    0px 1px 3px 0px color-mix(in srgb, var(--shadow-color), transparent 12%);
  --mat-sys-level0:
    0px 0px 0px 0px color-mix(in srgb, var(--shadow-color), transparent 20%),
    0px 0px 0px 0px color-mix(in srgb, var(--shadow-color), transparent 14%),
    0px 0px 0px 0px color-mix(in srgb, var(--shadow-color), transparent 12%);
}
body {
  --mat-expansion-header-text-size: var(--mat-sys-body-medium-size);
}
body {
  --mat-expansion-container-text-size: var(--mat-sys-body-medium-size);
}
body {
  --mat-expansion-container-text-weight: var(--mat-sys-body-medium-weight);
}
.mat-mdc-menu-panel.tour-step {
  border-radius: 12px;
}
.mat-mdc-menu-panel.tour-step.mat-menu-above.mat-menu-before,
.mat-mdc-menu-panel.tour-step.mat-menu-above.mat-menu-before .mat-mdc-card {
  border-bottom-right-radius: 0;
}
.mat-mdc-menu-panel.tour-step.mat-menu-above.mat-menu-after,
.mat-mdc-menu-panel.tour-step.mat-menu-above.mat-menu-after .mat-mdc-card {
  border-bottom-left-radius: 0;
}
.mat-mdc-menu-panel.tour-step.mat-menu-below.mat-menu-before,
.mat-mdc-menu-panel.tour-step.mat-menu-below.mat-menu-before .mat-mdc-card {
  border-top-right-radius: 0;
}
.mat-mdc-menu-panel.tour-step.mat-menu-below.mat-menu-after,
.mat-mdc-menu-panel.tour-step.mat-menu-below.mat-menu-after .mat-mdc-card {
  border-top-left-radius: 0;
}
.touranchor--is-active {
  position: relative;
  z-index: 999;
}
.touranchor--is-active[clickable] {
  z-index: 1003;
}
.touranchor--is-active[clickable]:is(button) {
  box-sizing: content-box;
  border: 5px solid var(--surface);
  border-radius: 0 0 4px 4px;
}
.warning-snackbar {
  --mdc-snackbar-container-color: var(--error-container);
}
.warning-snackbar {
  --mdc-snackbar-supporting-text-color: var(--on-error-container);
}
.warning-snackbar {
  --mat-snack-bar-button-color: var(--on-error-container);
}
.error-snackbar {
  --mdc-snackbar-container-color: var(--error);
}
.error-snackbar {
  --mdc-snackbar-supporting-text-color: var(--on-error);
}
.error-snackbar {
  --mat-snack-bar-button-color: var(--on-error);
}
.outline-color:not([disabled]) {
  color: var(--outline);
}
.outline-variant-color:not([disabled]) {
  color: var(--outline-variant);
}
.secondary-color:not([disabled]) {
  color: var(--secondary);
}
.tertiary-color:not([disabled]) {
  color: var(--tertiary);
}
.error-color:not([disabled]) {
  color: var(--error) !important;
}
.mat-snack-bar-container {
  max-width: 100% !important;
}
gsa-form .primary-color:not([disabled]) {
  color: var(--primary);
}
gsa-form p {
  margin: 0 0 12px;
}
gsa-form .mat-expansion-panel-header {
  border-radius: 0 !important;
}
gsa-form a {
  color: var(--primary);
}
gsa-form .mdc-tooltip__surface {
  text-align: justify;
}
gsa-form h1 {
  display: flex;
  justify-content: center;
  margin-bottom: 10px;
  font-weight: bold !important;
}
gsa-form h2 {
  font-weight: 100 !important;
}
gsa-form .no-margin {
  margin: 0 !important;
}
gsa-form .no-padding {
  padding: 0 !important;
}
gsa-form .width-forty {
  width: 40%;
}
gsa-form .width-fifty {
  width: 50%;
}
gsa-form .width-sixty {
  width: 60%;
}
gsa-form .width-seventy {
  width: 70%;
}
gsa-form .width-eighty {
  width: 80%;
}
gsa-form .width-hundred {
  width: 100%;
}
gsa-form .height-eighty {
  height: 80%;
}
gsa-form .height-hundred {
  height: 100%;
}
gsa-form .relative {
  position: relative;
}
gsa-form .margin-left-10 {
  margin-left: 10px;
}
gsa-form .primary-border {
  border: 2px solid var(--primary) !important;
}
gsa-form .surface {
  background: var(--surface);
}
gsa-form .mat-vertical-content {
  padding-right: 0 !important;
}
gsa-form .expansion-panel-margin {
  margin-top: 16px !important;
}
gsa-form .dataset-card-content {
  color: var(--primary);
  padding: 10px;
  margin: 3px !important;
  border-radius: 10px;
  border: 1px solid var(--primary);
  background: var(--surface);
}
gsa-form .dataset-card-content input {
  display: none;
}
gsa-form .dataset-card-content *:last-child {
  margin-bottom: 0;
}
gsa-form .dataset-card-content:hover {
  background: var(--surface2);
  cursor: pointer;
}
gsa-form .dataset-card-content:hover.no-hover {
  background: var(--surface);
}
gsa-form .mat-mdc-text-field-wrapper {
  flex: 0 !important;
}
@media (max-height: 500px) {
  gsa-form .mat-horizontal-content-container {
    padding-bottom: 0 !important;
  }
}
gsa-form .dark .no-tour .mat-expansion-panel,
gsa-form .dark .no-tour .mat-mdc-card {
  background: rgba(255, 255, 255, 0.05) !important;
  backdrop-filter: blur(5px);
}
gsa-form .dark .mat-mdc-text-field-wrapper {
  background: var(--surface);
}
gsa-form mat-vertical-stepper,
gsa-form mat-horizontal-stepper {
  background: transparent !important;
}
gsa-form .mat-mdc-card.flat-bottom {
  --mdc-elevated-card-container-shape: 4px 4px 0 0;
  --mdc-outlined-card-container-shape: 4px 4px 0 0;
}
gsa-form .nav-button-area {
  padding: 8px;
  border-radius: 0 0 24px 24px;
}
gsa-form .nav-button-area.touranchor--is-active {
  background: var(--card);
}
gsa-form div[tourAnchor="annotate.table"].touranchor--is-active {
  background: var(--card);
}
.custom-tab-group {
  --mdc-secondary-navigation-tab-container-height: 30px;
}
.custom-tab-group {
  --mat-tab-header-active-label-text-color: var(--primary);
}
.custom-tab-group {
  --mat-tab-header-active-focus-label-text-color: var(--primary);
}
.custom-tab-group {
  --mat-tab-header-active-hover-label-text-color: var(--primary);
}
.custom-tab-group .mat-mdc-tab {
  flex: 1 1 0;
}
.custom-tab-group .mat-mdc-tab-labels {
  gap: 20px;
}
.dark {
  color-scheme: dark;
}
body {
  height: 100%;
  overflow-y: auto;
  overflow-x: hidden;
  background: var(--surface);
  color: var(--on-surface);
  scrollbar-color: var(--primary) transparent;
  --reactome-symbols-font-family: "Material Symbols Rounded";
  margin: 0;
  padding: 0;
}
a {
  text-decoration: none;
  color: var(--primary);
}
a:hover {
  text-decoration: underline;
}
a:active {
  color: var(--tertiary);
}
.palette {
  height: 20px;
  min-width: 100px;
  margin-right: 20px;
}
.label-container {
  padding: 0;
  width: var(--column-width);
  justify-content: center;
  border-radius: 15px 0 0 15px;
  flex-shrink: 0;
  margin: auto 0;
  position: sticky;
  top: 4px;
  bottom: 4px;
  font-style: normal;
  font-weight: 600;
  font-size: 12px;
  line-height: 20px;
  text-align: right;
  letter-spacing: 0.5px;
  color: var(--on-surface);
}
.details-content-container {
  border: 2px solid var(--primary);
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.details-content-container > :first-child {
  padding-top: 6px;
}
.details-content-container > :last-child {
  padding-bottom: 6px;
}
.details-content-container .mat-divider {
  margin: 6px;
}
p:first-child {
  margin-top: 0;
}
.mat-icon[data-mat-icon-name*=set] {
  width: 28px !important;
  margin-left: -2px;
  margin-right: -2px;
}
.chebi-background rect {
  fill: transparent !important;
}
.dark .chebi-background {
  filter: hue-rotate(180deg) invert(1);
}
.loading-container {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: 10px;
}
#controls {
  position: absolute;
  bottom: 10px;
  left: 0;
  background: color-mix(in srgb, var(--surface) 80%, transparent);
  backdrop-filter: blur(5px);
  border-right: 1px solid var(--outline-variant);
  border-top: 1px solid var(--outline-variant);
  border-bottom: 1px solid var(--outline-variant);
  z-index: 1;
  display: flex;
  flex-direction: row;
  align-items: center;
  padding-right: 5px;
  border-radius: 0 50px 50px 0;
}
#controls .rotated-wrapper {
  --slider-height: 60px;
  height: calc(var(--slider-height) + 20px);
  width: 44px;
}
#controls .rotated-wrapper .rotated {
  transform: rotate(-90deg) translate(-55px, 15px);
  height: 48px;
  width: var(--slider-height);
  transform-origin: center left;
}
#controls .rotated-wrapper .rotated .slider {
  width: var(--slider-height);
  min-width: var(--slider-height);
}
#controls .rotated-wrapper .rotated .slider {
  --mdc-slider-inactive-track-color: var(--on-surface);
}
#controls #nav-wheel {
  margin-left: -12px;
  z-index: 3;
}
#controls #nav-wheel .button:hover,
#controls #nav-wheel .button:focus {
  cursor: pointer;
  outline: none;
}
#controls #nav-wheel .button:hover .bg,
#controls #nav-wheel .button:focus .bg {
  filter: brightness(1.2);
}
body {
  --opacity: 0.08;
  --structure-opacity: [[130,0], [150,100]];
  --shadow-padding: 20;
  --shadow-luminosity: 40;
  --positive: #0C9509;
  --negative: #BA1A1A;
  --negative-contrast: #ea7d7d;
  --select-node: #6EB3E4;
  --select-edge: #0561A6;
  --hover-node: #78E076;
  --hover-edge: #04B601;
  --interactor-fill: #68297C;
  --interactor-stroke: #9f5cb5;
  --flag: #ff009a;
  --compartment: #E5834A;
  --compartment-opacity: 0.06;
  --primary-contrast-1: #001F29;
  --primary-contrast-2: #003545;
  --primary-contrast-3: #004D62;
  --primary-contrast-4: #006782;
  --tertiary-contrast-1: #00315C;
  --tertiary-contrast-2: #004882;
  --tertiary-contrast-3: #1660A5;
  --drug-contrast-1: #3E001D;
  --drug-contrast-2: #610B33;
  --drug-contrast-3: #7E2549;
  --drug-contrast-4: #BB557A;
  --analysis-uni-palette: [ [0, "#FFFFE0"], [1, "#00429D"] ];
  --analysis-bi-palette: "viridis";
  --analysis-not-found: #d6d6d6;
}
body.dark {
  --opacity: 0.08;
  --shadow-luminosity: 70;
  --shadow-opacity: [[20, 40], [40, 0]];
  --surface: #0D1617;
  --on-surface: #fff;
  --primary: #5CD4FF;
  --on-primary: #0D1617;
  --on-tertiary: #0D1317;
  --positive: #10d70b;
  --negative: #ea2323;
  --select-node: #00ffff;
  --negative-contrast: #8f0000;
  --select-edge: #1d85cc;
  --hover-node: #ffff00;
  --hover-edge: #ffff00;
  --interactor-stroke: #68297C;
  --interactor-fill: #9f5cb5;
  --flag: #DA429E;
  --compartment: #5e232d;
  --compartment-opacity: 0.10;
  --primary-contrast-1: #5CD4FF;
  --primary-contrast-2: #20B9E5;
  --primary-contrast-3: #009DC4;
  --primary-contrast-4: #0081A2;
  --tertiary-contrast-1: #a48ee0;
  --tertiary-contrast-2: #9b73d3;
  --tertiary-contrast-3: #8c63c5;
  --drug-contrast-1: #FFB1C8;
  --drug-contrast-2: #F988AE;
  --drug-contrast-3: #DA6E94;
  --drug-contrast-4: #c4527b;
}
.flex-column {
  display: flex;
  flex-direction: column;
}

/* angular:styles/global:styles */
/*# sourceMappingURL=styles.css.map */
