$side-panel-z-index: 1000;

$base-primary: var(--base-primary);
$base-secondary: var(--base-secondary);
$base-tertiary: var(--base-tertiary);
$base-tertiary2: var(--base-tertiary2);
$base-container: var(--base-container);
$base-divider: var(--base-divider);
$base-surface: var(--base-surface);
$base-background: var(--base-background);
$base-surface-top: var(--base-surface-top);

$success-primary: var(--success-primary);
$success-secondary: var(--success-secondary);
$success-tertiary: var(--success-tertiary);
$success-divider: var(--success-divider);
$success-container: var(--success-container);

$aware-primary: var(--aware-primary);
$aware-secondary: var(--aware-secondary);
$aware-tertiary: var(--aware-tertiary);
$aware-container: var(--aware-container);

$warn-primary: var(--warn-primary);
$warn-secondary: var(--warn-secondary);
$warn-tertiary: var(--warn-tertiary);
$warn-container: var(--warn-container);

$selected-primary: var(--selected-primary);
$selected-secondary: var(--selected-secondary);
$selected-tertiary: var(--selected-tertiary);
$selected-container: var(--selected-container);

$chart-yellow-red-5: var(--chart-yellow-red-5);
$chart-yellow-red-4: var(--chart-yellow-red-4);
$chart-yellow-red-3: var(--chart-yellow-red-3);
$chart-yellow-red-2: var(--chart-yellow-red-2);
$chart-yellow-red-1: var(--chart-yellow-red-1);
$chart-yellow-red-0: var(--chart-yellow-red-0);
$chart-yellow-red-grey: var(--chart-yellow-red-grey);
$chart-green-blue-5: var(--chart-green-blue-5);
$chart-green-blue-4: var(--chart-green-blue-4);
$chart-green-blue-3: var(--chart-green-blue-3);
$chart-green-blue-2: var(--chart-green-blue-2);
$chart-green-blue-1: var(--chart-green-blue-1);
$chart-green-blue-0: var(--chart-green-blue-0);
$chart-classic-yellow: var(--chart-classic-yellow);
$chart-classic-yellow-light: var(--chart-classic-yellow-light);
$chart-classic-purple: var(--chart-classic-purple);
$chart-classic-purple-light: var(--chart-classic-purple-light);
$chart-classic-blue: var(--chart-classic-blue);
$chart-classic-blue-light: var(--chart-classic-blue-light);

$code-red: var(--code-red);
$code-green: var(--code-green);
$code-yellow: var(--code-yellow);
$code-blue: var(--code-blue);
$code-magenta: var(--code-magenta);
$code-teal: var(--code-teal);
$code-purple: var(--code-purple);

$special-surface: var(--special-surface);
$special-selected-alt-1-primary: var(--special-selected-alt-1-primary);
$special-selected-alt-1-secondary: var(--special-selected-alt-1-secondary);
$special-selected-alt-1-tertiary: var(--special-selected-alt-1-tertiary);
$special-selected-alt-1-container: var(--special-selected-alt-1-container);
$special-selected-alt-2-primary: var(--special-selected-alt-2-primary);
$special-selected-alt-2-secondary: var(--special-selected-alt-2-secondary);
$special-selected-alt-2-tertiary: var(--special-selected-alt-2-tertiary);
$special-selected-alt-2-container: var(--special-selected-alt-2-container);
$special-selected-alt-3-primary: var(--special-selected-alt-3-primary);
$special-selected-alt-3-secondary: var(--special-selected-alt-3-secondary);
$special-selected-alt-3-tertiary: var(--special-selected-alt-3-tertiary);
$special-selected-alt-3-container: var(--special-selected-alt-3-container);
$special-table-hover: var(--special-table-hover);
$special-node: var(--special-node);
$special-node-selected: var(--special-node-selected);

$cta-primary: var(--cta-primary);
$cta-secondary: var(--cta-secondary);
$cta-container: var(--cta-container);

$inter-font: 'Inter', sans-serif;
$mono-font: "IBM Plex Mono", monospace;
$raleway-font: 'Raleway', sans-serif;

.d-flex {
	display: flex !important;
}

.flex-1 {
	flex: 1;
}

.flex-wrap {
	flex-wrap: wrap;
}

.flex-grow {
	flex-grow: 1;
}

.flex-row {
	display: flex;
	flex-direction: row;
}

.flex-row-reverse {
	display: flex;
	flex-direction: row-reverse;
}

.flex-column {
	display: flex;
	flex-direction: column;
}

.flex-column-reverse {
	display: flex;
	flex-direction: column-reverse;
}

.flex-between {
	justify-content: space-between;
}

.flex-around {
	justify-content: space-around;
}

.flex-end {
	justify-content: flex-end;
}

.flex-start {
	justify-content: flex-start;
}

.flex-center {
	justify-content: center;
}

.flex-stretch {
	justify-content: stretch;
}

.align-start {
	align-items: flex-start;
}

.align-end {
	align-items: flex-end;
}

.align-center {
	align-items: center;
}

.align-stretch {
	align-items: stretch;
}

.align-content-start {
	align-content: flex-start;
}

.fx-row-vert-cent {
	display: flex;
	flex-direction: row;
	align-items: center;
}

.fx-row-full-cent {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
}

.fx-row-horiz-cent {
	display: flex;
	flex-direction: row;
	justify-content: center;
}

.fx-col-horiz-cent {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.fx-col-vert-cent {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.fx-col-full-cent {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.shrink-0 {
	flex-shrink: 0; // Prevent shrinking
}

@mixin flexRow() {
	@extend .flex-row;
}

@mixin flexRowVertCenter() {
	@extend .d-flex;
	@extend .flex-row;
	@extend .align-center;
}

@mixin flexRowFullCenter() {
	@extend .d-flex;
	@extend .flex-row;
	@extend .align-center;
	@extend .flex-center;
}

@mixin flexColumn() {
	@extend .flex-column;
}

/* EXTRA SMALL - MOBILE PORTRAIT */
@media (max-width: 480px) {
	.flex-row-xs {
		display: flex;
		flex-direction: row;
	}

	.flex-column-xs {
		display: flex;
		flex-direction: column;
	}

	.flex-between-xs {
		justify-content: space-between;
	}

	.flex-around-xs {
		justify-content: space-around;
	}

	.flex-end-xs {
		justify-content: flex-end;
	}

	.flex-start-xs {
		justify-content: flex-start;
	}

	.flex-center-xs {
		justify-content: center;
	}

	.flex-stretch-xs {
		justify-content: stretch;
	}

	.align-start-xs {
		align-items: flex-start;
	}

	.align-end-xs {
		align-items: flex-end;
	}

	.align-center-xs {
		align-items: center;
	}

	.align-stretch-xs {
		align-items: stretch;
	}
}

/* SMALL - MOBILE LANDSCAPE */
@media (max-width: 768px) {
	.flex-row-sm {
		display: flex;
		flex-direction: row;
	}

	.flex-column-sm {
		display: flex;
		flex-direction: column;
	}

	.flex-between-sm {
		justify-content: space-between;
	}

	.flex-around-sm {
		justify-content: space-around;
	}

	.flex-end-sm {
		justify-content: flex-end;
	}

	.flex-start-sm {
		justify-content: flex-start;
	}

	.flex-center-sm {
		justify-content: center;
	}

	.flex-stretch-sm {
		justify-content: stretch;
	}

	.align-start-sm {
		align-items: flex-start;
	}

	.align-end-sm {
		align-items: flex-end;
	}

	.align-center-sm {
		align-items: center;
	}

	.align-stretch-sm {
		align-items: stretch;
	}
}

/* MEDIUM - TABLET PORTRAIT */
@media (max-width: 1024px) {
	.flex-row-md {
		display: flex;
		flex-direction: row;
	}

	.flex-column-md {
		display: flex;
		flex-direction: column;
	}

	.flex-between-md {
		justify-content: space-between;
	}

	.flex-around-md {
		justify-content: space-around;
	}

	.flex-end-md {
		justify-content: flex-end;
	}

	.flex-start-md {
		justify-content: flex-start;
	}

	.flex-center-md {
		justify-content: center;
	}

	.flex-stretch-md {
		justify-content: stretch;
	}

	.align-start-md {
		align-items: flex-start;
	}

	.align-end-md {
		align-items: flex-end;
	}

	.align-center-md {
		align-items: center;
	}

	.align-stretch-md {
		align-items: stretch;
	}
}

/* LARGE - TABLET LANDSCAPE */
@media (max-width: 1280px) {
	.flex-row-lg {
		display: flex;
		flex-direction: row;
	}

	.flex-column-lg {
		display: flex;
		flex-direction: column;
	}

	.flex-between-lg {
		justify-content: space-between;
	}

	.flex-around-lg {
		justify-content: space-around;
	}

	.flex-end-lg {
		justify-content: flex-end;
	}

	.flex-start-lg {
		justify-content: flex-start;
	}

	.flex-center-lg {
		justify-content: center;
	}

	.flex-stretch-lg {
		justify-content: stretch;
	}

	.align-start-lg {
		align-items: flex-start;
	}

	.align-end-lg {
		align-items: flex-end;
	}

	.align-center-lg {
		align-items: center;
	}

	.align-stretch-lg {
		align-items: stretch;
	}
}

/* EXTRA LARGE - DESKTOP */
@media (min-width: 1281px) {
	.flex-row-xl {
		display: flex;
		flex-direction: row;
	}

	.flex-column-xl {
		display: flex;
		flex-direction: column;
	}

	.flex-between-xl {
		justify-content: space-between;
	}

	.flex-around-xl {
		justify-content: space-around;
	}

	.flex-end-xl {
		justify-content: flex-end;
	}

	.flex-start-xl {
		justify-content: flex-start;
	}

	.flex-center-xl {
		justify-content: center;
	}

	.flex-stretch-xl {
		justify-content: stretch;
	}

	.align-start-xl {
		align-items: flex-start;
	}

	.align-end-xl {
		align-items: flex-end;
	}

	.align-center-xl {
		align-items: center;
	}

	.align-stretch-xl {
		align-items: stretch;
	}
}

.h-100 {
	height: 100% !important;
}

.h-100vh {
	height: 100vh !important;
}

.h-50 {
	height: 50% !important;
}

.w-50 {
	width: 50% !important;
}

.w-100 {
	width: 100% !important;
}

.h-xs {
	height: 20px !important;
}

.h-sm {
	height: 24px !important;
}

.h-md {
	height: 32px !important;
}

.h-lg {
	height: 36px !important;
}

.h-xl {
	height: 40px !important;
}

.h-xxl {
	height: 44px !important;
}

.h-minus-xs {
	height: calc(100% - 20px) !important;
}

.h-minus-sm {
	height: calc(100% - 24px) !important;
}

.h-minus-md {
	height: calc(100% - 32px) !important;
}

.h-minus-lg {
	height: calc(100% - 36px) !important;
}

.h-minus-xl {
	height: calc(100% - 40px) !important;
}

.h-minus-xxl {
	height: calc(100% - 48px) !important;
}

.h-minus-lg-doubled {
	height: calc(100% - 72px) !important;
}

.w-sm {
	width: 24px !important;
}

.w-md {
	width: 32px !important;
}

.w-lg {
	width: 36px !important;
}

.lh-xs {
	line-height: 20px;
}

.lh-sm {
	line-height: 24px;
}

.lh-md {
	line-height: 32px;
}

.lh-lg {
	line-height: 36px;
}

.lh-xl {
	line-height: 40px;
}

@mixin lh-xs() {
	@extend .lh-xs;
}

@mixin h-sm() {
	@extend .h-sm;
}

@mixin h-md() {
	@extend .h-md;
}

@mixin h-lg() {
	@extend .h-lg;
}

@mixin h-xl() {
	@extend .h-xl;
}

@mixin w-sm() {
	@extend .w-sm;
}

@media (max-width: 768px) {
	.h-xs {
		height: 24px !important;
	}

	.h-sm {
		height: 32px !important;
	}

	.h-md {
		height: 36px !important;
	}

	.h-lg {
		height: 40px !important;
	}

	.h-xl {
		height: 44px !important;
	}

	.h-xxl {
		height: 48px !important;
	}

	.h-minus-xs {
		height: calc(100% - 24px) !important;
	}

	.h-minus-sm {
		height: calc(100% - 32px) !important;
	}

	.h-minus-md {
		height: calc(100% - 36px) !important;
	}

	.h-minus-lg {
		height: calc(100% - 40px) !important;
	}

	.h-minus-xl {
		height: calc(100% - 44px) !important;
	}

	.h-minus-xxl {
		height: calc(100% - 48px) !important;
	}

	.w-sm {
		width: 32px !important;
	}

	.w-md {
		width: 36px !important;
	}

	.w-lg {
		width: 40px !important;
	}

	.lh-xs {
		line-height: 24px !important;
	}

	.lh-sm {
		line-height: 32px;
	}

	.lh-md {
		line-height: 36px !important;
	}

	.sm-h-100 {
		height: 100% !important;
	}
}


button {
	line-height: 21px;
	border: none;
	font-family: inherit;
	font-weight: 600;
	font-size: inherit;
	outline: none;
	border-radius: 4px;
	-webkit-tap-highlight-color: transparent;
	@include h-sm();

	&:not([disabled]) {
		cursor: pointer;
	}

	&.btn-selected {
		background-color: $selected-container;
		color: $selected-primary;

		&:hover {
			filter: brightness(120%);
		}
	}

	&.btn-cta {
		background-color: $cta-container;
		color: $cta-primary;

		&:hover {
			filter: brightness(120%);
		}
	}

	&.btn-success-inverted {
		background-color: $success-primary;
		color: $cta-primary;

		&:hover {
			filter: brightness(120%);
		}
	}

	&.btn-primary {
		background-color: $base-container;
		color: $base-primary;

		.mina-icon {
			color: $base-tertiary;
		}

		&:hover {
			background-color: $base-divider;

			.mina-icon {
				color: $base-primary;
			}
		}
	}

	&.btn-secondary {
		background-color: $base-container;
		color: $base-secondary;

		&:hover {
			background-color: $base-divider;
		}
	}

	&.btn-warn {
		background-color: $warn-container;
		color: $warn-primary;

		&:hover {
			color: $base-primary;
		}
	}

	&.btn-aware {
		background-color: $aware-container;
		color: $aware-primary;

		&:hover {
			filter: brightness(120%);
		}
	}

	&.btn-special-alt-3 {
		background-color: $success-divider;
		color: $special-selected-alt-3-primary;

		&:hover {
			filter: brightness(120%);
		}
	}

	&.btn-transparent {
		background-color: unset;
	}

	&.icon-btn {
		@include w-sm();
		@include flexRowFullCenter();
	}

	&:disabled, &.disabled {
		opacity: 0.4;
		pointer-events: none;
	}
}

.live-button,
.pause-button,
.icon-button {
	width: 63px;
	border-radius: 6px;
	@include flexRowFullCenter();
}

.live-button {
	background-color: unset;
	color: $base-secondary;

	&.active {
		color: $success-primary;
	}

	&:hover,
	&.active {
		background-color: $success-container;
	}
}

.pause-button {
	background-color: unset;
	color: $base-secondary;

	&.active,
	&:hover {
		color: $selected-primary;
		background-color: $selected-container;
	}
}

.icon-button {
	@include w-sm();
	background: $base-container;
	color: $base-tertiary;

	&:hover:not([disabled]) {
		color: $base-secondary;
		background: $base-divider;
	}
}



.mina-input {
	background-color: $base-container;
	color: $base-primary;
	border: 1px solid $base-container;
	padding: 0 4px;
	height: 24px;
	outline: none;
	font-family: inherit;

	&::-webkit-input-placeholder {
		color: $base-tertiary;
	}

	&:-moz-placeholder {
		color: $base-tertiary;
	}

	&:hover:not(:focus):not(.input-error) {
		background-color: $base-divider;
	}

	&:focus {
		background-color: $selected-container;
		border-color: $selected-primary;
		color: $selected-primary;
	}

	&::-webkit-outer-spin-button,
	&::-webkit-inner-spin-button {
		-webkit-appearance: none;
	}

	&[type=number] {
		-moz-appearance: textfield;
	}

	&.input-selected {
		background-color: $selected-container;
		color: $selected-primary;
	}

	&.input-success {
		background-color: $success-container;
		color: $success-primary;
	}

	&.input-error {
		background-color: $warn-container;
		border-color: $warn-primary;
		color: $warn-primary;
	}
}

textarea {
	resize: none;
}




.mina-table {
  @include flexColumn();

  .row {
    height: 36px;
    display: grid;

    &.row-even {
      background-color: $base-container;
    }

    &.active {
      background-color: $selected-container;

      > span, a {
        color: $selected-primary !important;
      }
    }

    > span {
      height: 36px;
      line-height: 36px;
      padding-left: 12px;
    }

    &:hover:not(.active):not(.head) {
      background-color: $base-divider;

      * {
        color: $base-primary !important;
      }
    }

    .underline {
      line-height: 12px;
      cursor: pointer;

      &:hover {
        text-decoration: underline;
      }
    }

    &.head {
      font-weight: 600;
      color: $base-tertiary;
      text-transform: capitalize;

      &.sorting {
        > span {
          @include flexRowVertCenter();

          .mina-icon {
            transition: 0.2s ease-in-out;
            transform: rotateX(0) translateY(6px);
            margin-top: 1px;
            margin-left: 2px;
            opacity: 0;

            &.show {
              opacity: 1;
              transform: rotateX(0) translateY(0);
            }

            &.flip {
              transform: rotateX(180deg) translateY(0);

              &:not(.show) {
                transform: rotateX(180deg) translateY(6px);
              }
            }
          }

          &:hover,
          &.active {
            color: $base-primary;
            transition: 200ms;

            .mina-icon:not(.show) {
              opacity: 0.5;
              transform: rotateX(0) translateY(0);

              &.flip {
                transform: rotateX(180deg) translateY(0);
              }
            }
          }
        }
      }
    }

    span mina-copy .cpy {
      opacity: 0;
    }

    span:hover mina-copy .cpy {
      opacity: 1;
    }
  }

  &.active {
    background-color: blue;
    color: #fff;
  }
}

@media (max-width: 768px) {
  .cdk-virtual-scroll-content-wrapper {
    width: 100%;
  }

  .mina-table {
    .row {
      height: initial;
      display: flex;
      background-color: initial !important;
      padding: 5px 10px;

      .mob-row {
        padding: 0 10px;
        outline: 1px solid $base-divider;
        background-color: $base-surface;
        border-radius: 6px;
        width: 100%;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        font-size: 12px;
        overflow: hidden;

        .th, .td {
          display: flex;
          flex-direction: column;

          span {
            height: 26px;
            line-height: 26px;
          }
        }

        .th {
          text-transform: capitalize;
        }

        .td {
          flex: 1;
          min-width: 0;
          align-items: flex-end;

          span {
            max-width: 100%;
          }
        }

        span mina-copy .cpy {
          opacity: 1;
          margin-right: -5px;
        }
      }
    }
  }
}



$z-index-bigger-than-cdk-overlay: 1001;
#mina-tooltip {
  top: 0;
  left: 0;
  z-index: $z-index-bigger-than-cdk-overlay;
  position: fixed;
  padding: 8px;
  font-weight: 400;
  font-size: 12px;
  border-radius: 6px;
  max-width: 250px;
  background: $base-surface-top;
  color: $base-primary;
  border: 1px solid $base-divider;
  box-sizing: border-box;
  opacity: 0;
  transform: translate(-50%, -30%);
  transition: opacity 3000ms;
  pointer-events: none;
  animation-timing-function: ease-out;
  animation-duration: 0.18s;
  animation-fill-mode: forwards;
  word-break: break-word;

  &.cancel-formatting {
    word-break: initial;
    white-space: pre-line;
  }
}

#mina-graph-tooltip {
  position: fixed;
  z-index: $z-index-bigger-than-cdk-overlay;
  background-color: $base-surface-top;
  border-radius: 6px;
  padding: 4px 8px;
  line-height: 18px;
  color: $base-primary;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
}

@keyframes tooltip-no-animation {
  0% {
    opacity: 1;
    transform: translate(0, 0);
  }
  100% {
    opacity: 1;
    transform: translate(0, 0);
  }
}

@keyframes tooltip-slide-top {
  0% {
    opacity: 0;
    transform: translate(0, -20px);
  }
  100% {
    opacity: 1;
    transform: translate(0, 0);
  }
}

@keyframes tooltip-slide-bottom {
  0% {
    opacity: 0;
    transform: translate(0, 20px);
  }
  100% {
    opacity: 1;
    transform: translate(0, 0);
  }
}

@keyframes tooltip-slide-left {
  0% {
    opacity: 0;
    transform: translate(-20px, 0);
  }
  100% {
    opacity: 1;
    transform: translate(0, 0);
  }
}

@keyframes tooltip-slide-right {
  0% {
    opacity: 0;
    transform: translate(20px, 0);
  }
  100% {
    opacity: 1;
    transform: translate(0, 0);
  }
}

body .mat-expansion-panel-content,
body .mat-expansion-panel-header {
	font-size: 12px;
}

mat-expansion-panel.table-filter {
	box-shadow: none !important;
	background: unset;
	color: inherit;
	border-radius: 0;

	.mat-expansion-panel-header {
		padding: 0;
		height: auto;
		background: unset !important;

		.mat-content {
			display: flex;
			flex-direction: column;
		}
	}

	.mat-expansion-panel-body {
		padding: 0;
	}

	.mat-content.mat-content-hide-toggle {
		margin-right: 0;
	}
}

mat-expansion-panel.tracing-details {
	box-shadow: none !important;
	background: unset;
	color: inherit;
	border-radius: 0;

	.mat-expansion-panel-header {
		padding: 0;
		height: auto;

		.mat-content {
			display: flex;
			flex-direction: column;
		}
	}

	.mat-expansion-panel-body {
		padding: 0;
	}

	.mat-content.mat-content-hide-toggle {
		margin-right: 0;
	}
}

@font-face {
  font-family: 'Material Symbols Sharp';
  font-style: normal;
  font-weight: 100;
  font-display: block;
  src: url(https://fonts.gstatic.com/s/materialsymbolssharp/v26/kJF4BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzazHD_dY40KH8nGzv3fzHVJU22ZZLsYEpzC_1veq5Y0.woff2) format('woff2');
}

span.mina-icon {
  font-family: 'Material Symbols Sharp', sans-serif;
  font-weight: normal;
  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;
  font-variation-settings: 'FILL' 0, 'wght' 200;
}

.icon-100 {
  font-variation-settings: 'FILL' 0, 'wght' 100;
}

.icon-200 {
  font-variation-settings: 'FILL' 0, 'wght' 200;
}

.icon-300 {
  font-variation-settings: 'FILL' 0, 'wght' 300;
}



.tracing-overview-overlay-small,
.tracing-overview-overlay-big {
	background-color: rgba(0, 0, 0, 0.3);
	top: 76px !important;
}

.tracing-overview-overlay-small {
	left: 160px !important;
}

.tracing-overview-overlay-big {
	left: 44px !important;
}

.cdk-overlay-container .mina-graph {
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.3);

	.big-graph {
		transition: 150ms ease-out !important;
	}
}

.mat-mdc-dialog-container .mdc-dialog__surface {
	background-color: unset !important;
}




.bg-base {
	background-color: $base-background;
}

.bg-surface {
	background-color: $base-surface;
}

.bg-surface-top {
	background-color: $base-surface-top;
}

.bg-container {
	background-color: $base-container;
}

.bg-tertiary2 {
  background-color: $base-tertiary2;
}

.bg-selected-container {
	background-color: $selected-container;
}

.bg-transparent {
	background-color: transparent;
}

.bg-success-container {
	background-color: $success-container;
}

.bg-success-primary {
	background-color: $success-primary;
}

.bg-warn-container {
	background-color: $warn-container;
}

.bg-aware-container {
	background-color: $aware-container;
}

.bg-container-hover:hover {
	background-color: $base-container;
}

.bg-tertiary2-hover:hover {
  background-color: $base-tertiary2;
}

.bg-special-selected-alt-1-container {
  background-color: $special-selected-alt-1-container;
}

.bg-special-selected-alt-2-container {
  background-color: $special-selected-alt-2-container;
}

.bg-special-selected-alt-3-container {
  background-color: $special-selected-alt-3-container;
}



.border {
	border: 1px solid $base-divider !important;
}

.border-rad-8 {
	border-radius: 8px !important;
}

.border-rad-6 {
	border-radius: 6px !important;
}

.border-rad-4 {
	border-radius: 4px !important;
}

.border-rad-2 {
	border-radius: 2px !important;
}

.border-rad-0 {
	border-radius: 0 !important;
}

.border-top {
	border-top: 1px solid $base-divider;
}

.border-bottom {
	border-bottom: 1px solid $base-divider;
}

.border-right {
	border-right: 1px solid $base-divider;
}

.border-left {
	border-left: 1px solid $base-divider;
}

.border-remove {
	border: none !important;
}

.popup-box-shadow-weak {
	box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
}

.no-transition {
	transition: none !important;
}

.opacity-0 {
	opacity: 0 !important;
}

.user-none {
	user-select: none;
}

.rotate-90 {
	transform: rotate(90deg);
}

.rotate-45 {
	transform: rotate(45deg);
}




.inter {
	font-family: $inter-font;
}

.monospace {
	font-family: $mono-font;
}

.raleway {
	font-family: $raleway-font;
}

.f-700 {
	font-weight: 700;
}

.f-600 {
	font-weight: 600;
}

.f-500 {
	font-weight: 500;
}

.f-400 {
	font-weight: 400;
}

.f-300 {
	font-weight: 300;
}

.f-small {
	font-size: 10px !important;
}

.f-base {
	font-size: 12px !important;
}

.f-big {
	font-size: 14px !important;
}

/* These are used only in icons */
.f-16 {
	font-size: 16px !important;
}

.f-18 {
	font-size: 18px !important;
}

.f-20 {
	font-size: 20px !important;
}

.f-22 {
	font-size: 22px !important;
}

.f-40 {
	font-size: 40px !important;
}

.f-48 {
	font-size: 48px !important;
}

/* Mobile */
@media (max-width: 700px) {
	.f-base {
		font-size: 14px !important;
	}

	.f-big {
		font-size: 16px !important;
	}

	.f-16 {
		font-size: 22px !important;
	}

	.f-18 {
		font-size: 24px !important;
	}

	.f-20 {
		font-size: 26px !important;
	}

	.f-22 {
		font-size: 28px !important;
	}

	.f-40 {
		font-size: 46px !important;
	}

	.f-48 {
		font-size: 54px !important;
	}
}

.p-relative {
	position: relative !important;
}

.p-absolute {
	position: absolute !important;
}

.p-fixed {
	position: fixed !important;
}

.p-absolute-cover {
	position: absolute !important;
	top:0;
	left: 0;
	right: 0;
	bottom: 0;
}

.z-0 {
	z-index: 0;
}

.z-1 {
	z-index: 1;
}

.d-block {
	display: block !important;
}

.d-inline-block {
	display: inline-block !important;
}

.d-none {
	display: none !important;
}

.overflow-hidden {
	overflow: hidden;
}

.overflow-auto {
	overflow-x: auto;
	overflow-y: auto;
}

.overflow-x-auto {
	overflow-x: auto;
}

.overflow-x-hidden {
	overflow-x: hidden;
}

.overflow-y-auto {
	overflow-y: auto;
}

.overflow-y-hidden {
	overflow-y: hidden;
}

.overflow-y-scroll {
	overflow-y: scroll;
}

.overflow-visible {
	overflow: visible;
}

.hidden {
	visibility: hidden !important;
}

/* EXTRA SMALL - MOBILE PORTRAIT */
@media (max-width: 480px) {
	.d-none-xs {
		display: none !important;
	}
}

/* SMALL - MOBILE LANDSCAPE */
@media (max-width: 768px) {
	.d-none-sm {
		display: none !important;
	}
}

/* MEDIUM - TABLET PORTRAIT */
@media (max-width: 1024px) {
	.d-none-md {
		display: none !important;
	}
}

/* LARGE - TABLET LANDSCAPE */
@media (max-width: 1280px) {
	.d-none-lg {
		display: none !important;
	}
}

/* EXTRA LARGE - DESKTOP */
@media (min-width: 1281px) {
}

.m-0 {
	margin: 0 !important;
}

.m-5 {
	margin: 5px !important;
}

.m-8 {
	margin: 8px !important;
}

.m-10 {
	margin: 10px !important;
}

.ml-0 {
	margin-left: 0 !important;
}

.ml-5 {
	margin-left: 5px !important;
}

.ml-8 {
	margin-left: 8px !important;
}

.ml-10 {
	margin-left: 10px !important;
}

.ml-16 {
	margin-left: 16px !important;
}

.mr-0 {
	margin-right: 0 !important;
}

.mr-5 {
	margin-right: 5px !important;
}

.mr-8 {
	margin-right: 8px !important;
}

.mr-10 {
	margin-right: 10px !important;
}

.mr-16 {
	margin-right: 16px !important;
}

.mb-0 {
	margin-bottom: 0 !important;
}

.mb-5 {
	margin-bottom: 5px !important;
}

.mb-8 {
	margin-bottom: 8px !important;
}

.mb-10 {
	margin-bottom: 10px !important;
}

.mb-16 {
	margin-bottom: 16px !important;
}

.mt-0 {
	margin-top: 0 !important;
}

.mt-5 {
	margin-top: 5px !important;
}

.mt-8 {
	margin-top: 8px !important;
}

.mt-10 {
	margin-top: 10px !important;
}

.mt-16 {
	margin-top: 16px !important;
}

.mr--5 {
	margin-right: -5px !important;
}

.ml--5 {
	margin-left: -5px !important;
}

.p-0 {
	padding: 0 !important;
}

.p-5 {
	padding: 5px !important;
}

.p-8 {
	padding: 8px !important;
}

.p-10 {
	padding: 10px !important;
}

.pt-0 {
	padding-top: 0 !important;
}

.pt-5 {
	padding-top: 5px !important;
}

.pt-8 {
	padding-top: 8px !important;
}

.pt-10 {
	padding-top: 10px !important;
}

.pb-0 {
	padding-bottom: 0 !important;
}

.pb-5 {
	padding-bottom: 5px !important;
}

.pb-8 {
	padding-bottom: 8px !important;
}

.pb-10 {
	padding-bottom: 10px !important;
}

.pr-0 {
	padding-right: 0 !important;
}

.pr-5 {
	padding-right: 5px !important;
}

.pr-8 {
	padding-right: 8px !important;
}

.pr-10 {
	padding-right: 10px !important;
}

.pl-0 {
	padding-left: 0 !important;
}

.pl-5 {
	padding-left: 5px !important;
}

.pl-8 {
	padding-left: 8px !important;
}

.pl-10 {
	padding-left: 10px !important;
}

.p-12 {
	padding: 12px !important;
}

.pl-12 {
	padding-left: 12px !important;
}

.pr-12 {
	padding-right: 12px !important;
}

.pt-12 {
	padding-top: 12px !important;
}

.pb-12 {
	padding-bottom: 12px !important;
}



@media (min-width: 700px) {
	/* --- Scrollbar --- */
	::-webkit-scrollbar {
		width: 16px;
	}

	::-webkit-scrollbar-track {
		background-color: $base-surface;
	}

	::-webkit-scrollbar-thumb {
		background-color: $base-tertiary;
		border-radius: 8px;
		border-width: 4px;
		border-style: solid;
		border-color: transparent;
		background-clip: content-box;
	}

	::-webkit-scrollbar-thumb:hover {
		background-color: $base-secondary;
		border-radius: 8px;
		border-width: 2px;
		border-style: solid;
		border-color: transparent;
		background-clip: content-box;
	}

	.transparent-scrollbar-track::-webkit-scrollbar-track {
		background-color: transparent;
	}

	::-webkit-scrollbar-corner {
		background: transparent;
	}
}

.text-capitalize {
	text-transform: capitalize;
}

.text-uppercase {
	text-transform: uppercase;
}

.text-italic {
	font-style: italic;
}

.text-normal {
	text-transform: unset !important;
}

.text-nowrap {
	white-space: nowrap;
}

.break-all {
	word-break: break-all;
}

.break-word {
	word-break: break-word;
}

.text-underline {
	text-decoration: underline !important;
}

.text-decoration-underline-hover:hover {
	text-decoration: underline;
}

.text-no-decoration {
	text-decoration: none !important;
}

.text-left {
	text-align: left;
}

.text-right {
	text-align: right;
}

.text-center {
	text-align: center;
}

.pointer {
	cursor: pointer;
}

.context-menu {
	cursor: context-menu !important;
}

.pointer-none {
	pointer-events: none;
}

@mixin truncate() {
	@extend .truncate;
}

.truncate {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}



.primary {
  color: $base-primary !important;
}

.secondary {
  color: $base-secondary !important;
}

.tertiary {
  color: $base-tertiary !important;
}

.tertiary2 {
  color: $base-tertiary2 !important;
}

.container {
  color: $base-container !important;
}

.divider {
  color: $base-divider !important;
}

.selected-primary {
  color: $selected-primary !important;
}

.selected-secondary {
  color: $selected-secondary !important;
}

.success-primary {
  color: $success-primary !important;
}

.success-secondary {
  color: $success-secondary !important;
}

.warn-primary {
  color: $warn-primary !important;
}

.warn-secondary {
  color: $warn-secondary !important;
}

.aware-primary {
  color: $aware-primary !important;
}

.aware-secondary {
  color: $aware-secondary !important;
}

.cta-primary {
  color: $cta-primary !important;
}

.cta-secondary {
  color: $cta-secondary !important;
}

.primary-hover:hover {
  color: $base-primary !important;
}

.secondary-hover:hover {
  color: $base-secondary !important;
}

.tertiary-hover:hover {
  color: $base-tertiary !important;
}

.tertiary2-hover:hover {
  color: $base-tertiary2 !important;
}

.special-alt-1-primary {
  color: $special-selected-alt-1-primary !important;
}

.special-alt-1-secondary {
  color: $special-selected-alt-1-secondary !important;
}

.special-alt-1-tertiary {
  color: $special-selected-alt-1-tertiary !important;
}

.special-alt-2-primary {
  color: $special-selected-alt-2-primary !important;
}

.special-alt-2-secondary {
  color: $special-selected-alt-2-secondary !important;
}

.special-alt-2-tertiary {
  color: $special-selected-alt-2-tertiary !important;
}

.special-alt-3-primary {
  color: $special-selected-alt-3-primary !important;
}

.special-alt-3-secondary {
  color: $special-selected-alt-3-secondary !important;
}

.special-alt-3-tertiary {
  color: $special-selected-alt-3-tertiary !important;
}

.error {
  color: $warn-primary !important;
  fill: $warn-primary !important;
}

.orange {
  opacity: 0.85;
  color: $chart-yellow-red-2 !important;
  fill: $chart-yellow-red-2 !important;
}

.warn {
  opacity: 0.7;
  color: $chart-yellow-red-1 !important;
  fill: $chart-yellow-red-1 !important;
}

.code-teal {
  color: $code-teal !important;
}

.code-purple {
  color: $code-purple !important;
}

.code-magenta {
  color: $code-magenta !important;
}

