/*!**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[5].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[5].rules[0].oneOf[0].use[2]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[5].rules[1].use[0]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[5].rules[1].use[1]!./src/assets/scss/style.scss?ngGlobalStyle ***!
  \**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
@import url(https://fonts.googleapis.com/css2?family=Google+Sans+Code:ital,wght@0,300..800;1,300..800&display=swap);
/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[5].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[5].rules[0].oneOf[0].use[2]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[5].rules[1].use[0]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[5].rules[1].use[1]!./src/styles.scss?ngGlobalStyle ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
.swal2-container {
  z-index: 11000 !important;
}

/* You can add global styles to this file, and also import other style files */
/**
 * Estilos globales para skeleton loading.
 * Paleta en grises suaves para que se vea limpio en light y dark.
 */
/* Light mode (tema claro) — grises claros suaves */
:root,
html.light-theme {
  --skeleton-bg: #e5e8ec;
  --skeleton-shine: rgba(255, 255, 255, 0.8);
  --skeleton-button-bg: #dce0e5;
}

/* Dark mode (tema oscuro) — grises oscuros que encajan con el fondo */
html.dark-theme {
  --skeleton-bg: #32383f;
  --skeleton-shine: rgba(255, 255, 255, 0.06);
  --skeleton-button-bg: #3d444d;
}

/* Contenedor opcional para vistas 100% skeleton (ej. perfil cargando) */
.skeleton-view .profile-card .app-skeleton-host,
.skeleton-view .profile-header .app-skeleton-host {
  flex-shrink: 0;
}

/* Contenedor fijo para toasts (inyectado por CustomSnackbarService) */
.app-toast-host {
  position: fixed;
  bottom: max(20px, env(safe-area-inset-bottom, 0px));
  left: 50%;
  transform: translateX(-50%);
  z-index: 10500;
  display: flex;
  flex-direction: column-reverse;
  align-items: stretch;
  gap: 8px;
  pointer-events: none;
  width: min(400px, 100vw - 32px);
  box-sizing: border-box;
}

.app-toast-host > * {
  pointer-events: auto;
}

/* Inputs trampa para desactivar autofill/sugerencias de Chrome (directiva preventAutofill) */
.chrome-autofill-trap {
  position: absolute !important;
  width: 0 !important;
  height: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
}

:root {
  --primary-rgb: 63, 81, 181; /* Material Indigo 500 */
  --card-rgb: 255, 255, 255; /* White for light theme */
}

.dark-theme {
  --card-rgb: 48, 48, 48; /* Dark grey for dark theme */
}

html,
body {
  height: 100%;
  margin: 0;
}

/* MatDialog: flujo catálogo — mismo lenguaje visual que onboarding / reflections-container */
.catalog-sync-flow-backdrop.cdk-overlay-backdrop {
  /* Base #0a0a0a + velos de color como tenant-context; transparencia + blur para que se note la página detrás */
  background: radial-gradient(circle at 20% 45%, rgba(59, 130, 246, 0.12) 0%, transparent 42%), radial-gradient(circle at 82% 78%, rgba(139, 92, 246, 0.1) 0%, transparent 45%), radial-gradient(circle at 42% 18%, rgba(236, 72, 153, 0.06) 0%, transparent 40%), rgba(10, 10, 10, 0.58) !important;
  backdrop-filter: blur(18px) saturate(1.12);
  -webkit-backdrop-filter: blur(18px) saturate(1.12);
  /* No forzar opacity: CDK anima la aparición del backdrop */
}

.catalog-sync-flow-panel.mat-mdc-dialog-panel {
  --mdc-dialog-container-color: rgba(14, 24, 40, 0.92);
}

.catalog-sync-flow-panel .mat-mdc-dialog-container {
  background: transparent !important;
}

.catalog-sync-flow-panel .mat-mdc-dialog-surface {
  border-radius: 20px;
  padding: 0;
  overflow: hidden;
  background: rgba(14, 24, 40, 0.92) !important;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.45);
  animation: catalog-sync-dialog-surface-in 380ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

@keyframes catalog-sync-dialog-surface-in {
  from {
    opacity: 0;
    transform: scale(0.97) translateY(14px);
  }
  to {
    opacity: 1;
    transform: scale(1) translateY(0);
  }
}
/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[5].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[5].rules[0].oneOf[0].use[2]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[5].rules[1].use[0]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[5].rules[1].use[1]!./src/assets/scss/style.scss?ngGlobalStyle (1) ***!
  \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
html .blue_theme {
  --mat-sys-primary: rgb(93, 135, 255);
  --mat-sys-primary-fixed-dim: rgb(93, 135, 255, 0.15);
  --mat-sys-secondary: rgb(68, 183, 247);
  --mat-sys-secondary-fixed-dim: rgb(68, 183, 247, 0.15);
}

html {
  --mat-badge-background-color: var(--mat-sys-primary);
}

html {
  --mdc-protected-button-hover-container-elevation-shadow: var(--mat-sys-level1);
}
html {
  --mat-filled-button-horizontal-padding: 15px;
}
html {
  --mat-outlined-button-horizontal-padding: 15px;
}
html {
  --mat-protected-button-horizontal-padding: 15px;
}
html {
  --mat-text-button-horizontal-padding: 15px;
}
html {
  --mdc-filled-button-container-shape: var(--mat-sys-corner-small);
}
html {
  --mdc-outlined-button-container-shape: var(--mat-sys-corner-small);
}
html {
  --mdc-protected-button-container-shape: var(--mat-sys-corner-small);
}
html {
  --mdc-text-button-container-shape: var(--mat-sys-corner-small);
}

html {
  --mdc-icon-button-icon-color: var(--mat-sys-on-background);
}

html .mat-mdc-button-base.bg-light-primary:hover,
html .mat-mdc-button-base.bg-light-secondary:hover,
html .mat-mdc-button-base.bg-light-error:hover,
html .mat-mdc-button-base.bg-light-warning:hover,
html .mat-mdc-button-base.bg-light-success:hover {
  color: #ffffff !important;
}
html .mat-mdc-button-base.bg-light-primary:hover {
  background-color: var(--mat-sys-primary) !important;
}
html .mat-mdc-button-base.bg-light-secondary:hover {
  background-color: var(--mat-sys-secondary) !important;
}
html .mat-mdc-button-base.bg-light-error:hover {
  background-color: var(--mat-sys-error) !important;
}
html .mat-mdc-button-base.bg-light-warning:hover {
  background-color: #ffae1f !important;
}
html .mat-mdc-button-base.bg-light-success:hover {
  background-color: #13deb9 !important;
}
html .mat-mdc-outlined-button:not(:disabled) {
  border-color: inherit !important;
}
html .mat-mdc-button-base.text-secondary:hover .mat-mdc-button-persistent-ripple::before {
  background-color: var(--mat-sys-secondary);
}
html .mat-mdc-button-base.text-error:hover .mat-mdc-button-persistent-ripple::before {
  background-color: var(--mat-sys-error);
}
html .mat-mdc-button-base.text-warning:hover .mat-mdc-button-persistent-ripple::before {
  background-color: #ffae1f;
}
html .mat-mdc-button-base.text-success:hover .mat-mdc-button-persistent-ripple::before {
  background-color: #13deb9;
}
html .mat-mdc-outlined-button:not(:disabled).mat-secondary {
  color: var(--mat-sys-secondary);
  border-color: var(--mat-sys-secondary);
}
html .mat-mdc-outlined-button:not(:disabled).mat-secondary:hover .mat-mdc-button-persistent-ripple::before {
  background-color: var(--mat-sys-secondary);
}
html .mat-mdc-outlined-button:not(:disabled).mat-success {
  color: #13deb9;
  border-color: #13deb9;
}
html .mat-mdc-outlined-button:not(:disabled).mat-success:hover .mat-mdc-button-persistent-ripple::before {
  background-color: #13deb9;
}
html .mat-mdc-outlined-button:not(:disabled).mat-error {
  color: var(--mat-sys-error);
  border-color: var(--mat-sys-error);
}
html .mat-mdc-outlined-button:not(:disabled).mat-error:hover .mat-mdc-button-persistent-ripple::before {
  background-color: var(--mat-sys-error);
}
html .mat-mdc-outlined-button:not(:disabled).mat-warning {
  color: #ffae1f;
  border-color: #ffae1f;
}
html .mat-mdc-outlined-button:not(:disabled).mat-warning:hover .mat-mdc-button-persistent-ripple::before {
  background-color: #ffae1f;
}

html {
  --mat-standard-button-toggle-shape: 7px;
}

html {
  --mdc-elevated-card-container-color: #ffffff;
}
html {
  --mat-card-title-text-size: 1.125rem;
}
html {
  --mat-card-subtitle-text-size: 14px;
}
html {
  --mat-card-title-text-line-height: 1.6rem;
}
html {
  --mat-card-title-text-weight: 600;
}
html {
  --mat-card-subtitle-text-weight: 400;
}
html {
  --mdc-elevated-card-container-shape: var(--mat-sys-corner-small);
}
html {
  --mdc-outlined-card-container-shape: var(--mat-sys-corner-small);
}
html {
  --mdc-elevated-card-container-elevation: var(--mat-sys-level2);
}

html .mat-mdc-card {
  margin-bottom: 24px;
}
html .mat-mdc-card .mat-mdc-card-header {
  padding: 16px 24px !important;
}
html .mat-mdc-card .mat-mdc-card-header + .mat-mdc-card-content {
  padding: 0 24px 24px;
}
html .mat-mdc-card > .mat-mdc-card-content {
  padding: 24px !important;
}
html .mat-mdc-card .mdc-card__actions {
  padding: 24px !important;
}
html .card-hover {
  transition: box-shadow 300ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
}
html .card-hover:hover {
  scale: 1.01;
  transition: all 0.1s ease-in 0s;
}
html .cardBorder .mdc-card {
  box-shadow: none !important;
  border: 1px solid var(--mat-sys-outline-variant) !important;
}
html .cardBorder .mdc-card.shadow-none {
  border: 0 !important;
}

html {
  --mdc-checkbox-unselected-focus-icon-color: var(--mdc-checkbox-unselected-hover-state-layer-color);
}

html .mdc-checkbox__background {
  border-radius: 4px;
  width: 21px;
  height: 21px;
  border: 1px solid var(--mat-sys-outline);
}
html .mdc-checkbox .mdc-checkbox__native-control:focus ~ .mdc-checkbox__ripple {
  background-color: var(--mdc-checkbox-unselected-hover-state-layer-color);
}

html {
  --mdc-chip-focus-state-layer-color: var(--mat-option-focus-state-layer-color);
}

html {
  --mdc-dialog-container-shape: var(--mat-sys-corner-small);
}
html {
  --mdc-dialog-subhead-size: 18px;
}
html {
  --mdc-dialog-subhead-weight: 600;
}
html {
  --mat-dialog-content-padding: 20px 24px;
}
html {
  --mat-dialog-actions-padding: 20px 24px;
}
html {
  --mat-dialog-container-min-width: 300px;
}
html {
  --mdc-dialog-subhead-tracking: unset;
}
html {
  --mdc-dialog-supporting-text-tracking: unset;
}

html {
  --mdc-fab-small-container-shape: 30px;
}
html {
  --mdc-fab-container-shape: 30px;
}
html {
  --mdc-fab-container-elevation-shadow: none;
}
html {
  --mdc-fab-small-container-elevation-shadow: none;
}
html {
  --mdc-fab-small-hover-container-elevation-shadow: var(--mat-sys-level3);
}
html {
  --mdc-fab-hover-container-elevation-shadow: var(--mat-sys-level3);
}
html {
  --mdc-extended-fab-hover-container-elevation-shadow: var(--mat-sys-level3);
}
html {
  --mdc-extended-fab-container-elevation-shadow: none;
}

html {
  --mat-form-field-container-height: 37px;
}
html {
  --mdc-outlined-text-field-container-shape: var(--mat-sys-corner-small);
}
html {
  --mat-form-field-container-vertical-padding: 6px;
}

html .hide-hint .mat-mdc-form-field-subscript-wrapper {
  display: none;
}
html .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-floating-label {
  top: calc(var(--mat-form-field-container-height) / 2.15);
}
html .demo-inline-calendar-card {
  width: 300px;
}

html {
  --mdc-list-list-item-hover-state-layer-color: var(--mat-sys-primary);
}
html {
  --mdc-list-list-item-container-shape: var(--mat-sys-corner-small);
}
html {
  --mat-list-active-indicator-shape: var(--mat-sys-corner-small);
}
html {
  --mdc-list-list-item-two-line-container-height: 70px;
}
html {
  --mdc-list-list-item-three-line-container-height: 100px;
}

html {
  --mat-menu-container-shape: var(--mat-sys-corner-small);
}

html .mat-mdc-menu-panel {
  box-shadow: var(--mat-sys-level3) !important;
}
html .mat-mdc-select-panel {
  padding: 8px !important;
}

html {
  --mat-sys-background: light-dark(#faf9fd, #121316);
  --mat-sys-error: light-dark(#ba1a1a, #ffb4ab);
  --mat-sys-error-container: light-dark(#ffdad6, #93000a);
  --mat-sys-inverse-on-surface: light-dark(#f2f0f4, #2f3033);
  --mat-sys-inverse-primary: light-dark(#abc7ff, #005cbb);
  --mat-sys-inverse-surface: light-dark(#2f3033, #e3e2e6);
  --mat-sys-on-background: light-dark(#1a1b1f, #e3e2e6);
  --mat-sys-on-error: light-dark(#ffffff, #690005);
  --mat-sys-on-error-container: light-dark(#93000a, #ffdad6);
  --mat-sys-on-primary: light-dark(#ffffff, #002f65);
  --mat-sys-on-primary-container: light-dark(#00458f, #d7e3ff);
  --mat-sys-on-primary-fixed: light-dark(#001b3f, #001b3f);
  --mat-sys-on-primary-fixed-variant: light-dark(#00458f, #00458f);
  --mat-sys-on-secondary: light-dark(#ffffff, #283041);
  --mat-sys-on-secondary-container: light-dark(#3e4759, #dae2f9);
  --mat-sys-on-secondary-fixed: light-dark(#131c2b, #131c2b);
  --mat-sys-on-secondary-fixed-variant: light-dark(#3e4759, #3e4759);
  --mat-sys-on-surface: light-dark(#1a1b1f, #e3e2e6);
  --mat-sys-on-surface-variant: light-dark(#44474e, #e0e2ec);
  --mat-sys-on-tertiary: light-dark(#ffffff, #002f65);
  --mat-sys-on-tertiary-container: light-dark(#00458f, #d7e3ff);
  --mat-sys-on-tertiary-fixed: light-dark(#001b3f, #001b3f);
  --mat-sys-on-tertiary-fixed-variant: light-dark(#00458f, #00458f);
  --mat-sys-outline: light-dark(#74777f, #8e9099);
  --mat-sys-outline-variant: light-dark(#c4c6d0, #44474e);
  --mat-sys-primary: light-dark(#005cbb, #abc7ff);
  --mat-sys-primary-container: light-dark(#d7e3ff, #00458f);
  --mat-sys-primary-fixed: light-dark(#d7e3ff, #d7e3ff);
  --mat-sys-primary-fixed-dim: light-dark(#abc7ff, #abc7ff);
  --mat-sys-scrim: light-dark(#000000, #000000);
  --mat-sys-secondary: light-dark(#565e71, #bec6dc);
  --mat-sys-secondary-container: light-dark(#dae2f9, #3e4759);
  --mat-sys-secondary-fixed: light-dark(#dae2f9, #dae2f9);
  --mat-sys-secondary-fixed-dim: light-dark(#bec6dc, #bec6dc);
  --mat-sys-shadow: light-dark(#000000, #000000);
  --mat-sys-surface: light-dark(#faf9fd, #121316);
  --mat-sys-surface-bright: light-dark(#faf9fd, #38393c);
  --mat-sys-surface-container: light-dark(#efedf0, #1f2022);
  --mat-sys-surface-container-high: light-dark(#e9e7eb, #292a2c);
  --mat-sys-surface-container-highest: light-dark(#e3e2e6, #343537);
  --mat-sys-surface-container-low: light-dark(#f4f3f6, #1a1b1f);
  --mat-sys-surface-container-lowest: light-dark(#ffffff, #0d0e11);
  --mat-sys-surface-dim: light-dark(#dbd9dd, #121316);
  --mat-sys-surface-tint: light-dark(#005cbb, #abc7ff);
  --mat-sys-surface-variant: light-dark(#e0e2ec, #44474e);
  --mat-sys-tertiary: light-dark(#005cbb, #abc7ff);
  --mat-sys-tertiary-container: light-dark(#d7e3ff, #00458f);
  --mat-sys-tertiary-fixed: light-dark(#d7e3ff, #d7e3ff);
  --mat-sys-tertiary-fixed-dim: light-dark(#abc7ff, #abc7ff);
  --mat-sys-neutral-variant20: #2d3038;
  --mat-sys-neutral10: #1a1b1f;
}
html {
  --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);
}
html {
  --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);
}
html {
  --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);
}
html {
  --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);
}
html {
  --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);
}
html {
  --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);
}
html {
  --mat-sys-body-large: 400 1rem / 1.5rem Google Sans Code, monospace;
  --mat-sys-body-large-font: Google Sans Code, monospace;
  --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 Google Sans Code, monospace;
  --mat-sys-body-medium-font: Google Sans Code, monospace;
  --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 Google Sans Code, monospace;
  --mat-sys-body-small-font: Google Sans Code, monospace;
  --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 Google Sans Code, monospace;
  --mat-sys-display-large-font: Google Sans Code, monospace;
  --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 Google Sans Code, monospace;
  --mat-sys-display-medium-font: Google Sans Code, monospace;
  --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 Google Sans Code, monospace;
  --mat-sys-display-small-font: Google Sans Code, monospace;
  --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 Google Sans Code, monospace;
  --mat-sys-headline-large-font: Google Sans Code, monospace;
  --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 Google Sans Code, monospace;
  --mat-sys-headline-medium-font: Google Sans Code, monospace;
  --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 Google Sans Code, monospace;
  --mat-sys-headline-small-font: Google Sans Code, monospace;
  --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 Google Sans Code, monospace;
  --mat-sys-label-large-font: Google Sans Code, monospace;
  --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 Google Sans Code, monospace;
  --mat-sys-label-medium-font: Google Sans Code, monospace;
  --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 Google Sans Code, monospace;
  --mat-sys-label-small-font: Google Sans Code, monospace;
  --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 Google Sans Code, monospace;
  --mat-sys-title-large-font: Google Sans Code, monospace;
  --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 Google Sans Code, monospace;
  --mat-sys-title-medium-font: Google Sans Code, monospace;
  --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 Google Sans Code, monospace;
  --mat-sys-title-small-font: Google Sans Code, monospace;
  --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;
}
html {
  --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;
}
html {
  --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;
}
html {
  --mat-sys-primary: rgb(93, 135, 255);
  --mat-sys-error: rgb(250, 137, 107);
  --mat-sys-body-medium-size: 14px;
  --mat-sys-body-large-size: 14px;
  --mat-sys-outline-variant: #d7dde2;
  --mat-sys-level1: 0px 12px 24px -4px rgba(145, 158, 171, 0.3);
  --mat-sys-level2: rgba(145, 158, 171, 0.12) 0px 1px 16px;
  --mat-sys-level3: 0px 12px 24px -4px rgba(145, 158, 171, 0.3);
}

html {
  --mat-table-background-color: var(--mdc-elevated-card-container-color);
}

html .mdc-list-item__primary-text,
html .mat-drawer-container,
html .mat-drawer,
html .text-body {
  color: var(--mat-sys-on-background);
}

html {
  --mat-sidenav-container-shape: 0;
}

.swal2-container .swal2-popup {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace !important;
  border-radius: 16px !important;
  padding: 32px 32px 28px !important;
  background: rgba(10, 18, 32, 0.98) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.6), 0 0 0 1px rgba(93, 135, 255, 0.08) !important;
  color: rgba(230, 237, 246, 0.9) !important;
}
.swal2-container .swal2-icon {
  border-color: rgba(93, 135, 255, 0.45) !important;
  color: rgba(186, 210, 255, 0.9) !important;
}
.swal2-container .swal2-icon .swal2-icon-content {
  color: rgba(186, 210, 255, 0.9) !important;
}
.swal2-container .swal2-icon.swal2-success {
  border-color: rgba(52, 211, 153, 0.5) !important;
  color: #34d399 !important;
}
.swal2-container .swal2-icon.swal2-success .swal2-icon-content {
  color: #34d399 !important;
}
.swal2-container .swal2-icon.swal2-success .swal2-success-ring {
  border-color: rgba(52, 211, 153, 0.25) !important;
}
.swal2-container .swal2-icon.swal2-success .swal2-success-line-long,
.swal2-container .swal2-icon.swal2-success .swal2-success-line-tip {
  background: #34d399 !important;
}
.swal2-container .swal2-icon.swal2-error {
  border-color: rgba(239, 68, 68, 0.5) !important;
  color: #f87171 !important;
}
.swal2-container .swal2-icon.swal2-error .swal2-icon-content {
  color: #f87171 !important;
}
.swal2-container .swal2-icon.swal2-error .swal2-x-mark-line-left,
.swal2-container .swal2-icon.swal2-error .swal2-x-mark-line-right {
  background: #f87171 !important;
}
.swal2-container .swal2-icon.swal2-warning {
  border-color: rgba(251, 191, 36, 0.5) !important;
  color: #fbbf24 !important;
}
.swal2-container .swal2-icon.swal2-warning .swal2-icon-content {
  color: #fbbf24 !important;
}
.swal2-container .swal2-icon.swal2-info {
  border-color: rgba(93, 135, 255, 0.5) !important;
  color: rgba(186, 210, 255, 0.9) !important;
}
.swal2-container .swal2-icon.swal2-info .swal2-icon-content {
  color: rgba(186, 210, 255, 0.9) !important;
}
.swal2-container .swal2-title {
  font-size: clamp(18px, 1.6vw, 22px) !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em !important;
  color: rgba(240, 246, 255, 0.95) !important;
  margin-bottom: 0 !important;
  padding-bottom: 16px !important;
  border-bottom: 1px solid rgba(93, 135, 255, 0.12) !important;
}
.swal2-container .swal2-html-container {
  font-size: 0.9rem !important;
  line-height: 1.6 !important;
  color: rgba(200, 215, 235, 0.85) !important;
  margin: 18px 0 0 0 !important;
  text-align: left !important;
}
.swal2-container .swal2-content {
  color: rgba(200, 215, 235, 0.85) !important;
}
.swal2-container .swal2-input,
.swal2-container .swal2-textarea {
  background: rgba(14, 24, 40, 0.6) !important;
  border: 1px solid rgba(93, 135, 255, 0.2) !important;
  border-radius: 10px !important;
  color: rgba(230, 237, 246, 0.9) !important;
  box-shadow: none !important;
  font-family: inherit !important;
}
.swal2-container .swal2-input:focus,
.swal2-container .swal2-textarea:focus {
  border-color: rgba(93, 135, 255, 0.55) !important;
  box-shadow: 0 0 0 3px rgba(93, 135, 255, 0.1) !important;
}
.swal2-container .swal2-input::placeholder,
.swal2-container .swal2-textarea::placeholder {
  color: rgba(140, 160, 190, 0.45) !important;
}
.swal2-container .swal2-validation-message {
  background: rgba(239, 68, 68, 0.1) !important;
  color: #fca5a5 !important;
  border-radius: 8px !important;
  font-size: 0.82rem !important;
}
.swal2-container .swal2-validation-message::before {
  background: #f87171 !important;
}
.swal2-container .swal2-actions {
  margin-top: 24px !important;
  gap: 10px !important;
  padding-top: 20px !important;
  border-top: 1px solid rgba(93, 135, 255, 0.1) !important;
  justify-content: flex-end !important;
  width: 100% !important;
}
.swal2-container .swal2-confirm,
.swal2-container button.swal2-confirm {
  border-radius: 10px !important;
  font-weight: 600 !important;
  font-family: inherit !important;
  padding: 9px 22px !important;
  height: 42px !important;
  background: rgba(93, 135, 255, 0.2) !important;
  color: rgba(186, 210, 255, 0.95) !important;
  border: 1px solid rgba(93, 135, 255, 0.35) !important;
  box-shadow: none !important;
}
.swal2-container .swal2-confirm:hover, .swal2-container .swal2-confirm:focus,
.swal2-container button.swal2-confirm:hover,
.swal2-container button.swal2-confirm:focus {
  background: rgba(93, 135, 255, 0.3) !important;
  border-color: rgba(93, 135, 255, 0.55) !important;
  color: #fff !important;
  box-shadow: none !important;
}
.swal2-container .swal2-cancel,
.swal2-container button.swal2-cancel {
  border-radius: 10px !important;
  font-weight: 600 !important;
  font-family: inherit !important;
  padding: 9px 22px !important;
  height: 42px !important;
  background: transparent !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  color: rgba(160, 180, 210, 0.7) !important;
  box-shadow: none !important;
}
.swal2-container .swal2-cancel:hover, .swal2-container .swal2-cancel:focus,
.swal2-container button.swal2-cancel:hover,
.swal2-container button.swal2-cancel:focus {
  background: rgba(255, 255, 255, 0.06) !important;
  color: rgba(200, 220, 255, 0.9) !important;
  box-shadow: none !important;
}
.swal2-container .swal2-deny,
.swal2-container button.swal2-deny {
  border-radius: 10px !important;
  font-weight: 600 !important;
  font-family: inherit !important;
  padding: 9px 22px !important;
  height: 42px !important;
  background: rgba(239, 68, 68, 0.18) !important;
  color: rgba(252, 165, 165, 0.95) !important;
  border: 1px solid rgba(239, 68, 68, 0.32) !important;
  box-shadow: none !important;
}
.swal2-container .swal2-deny:hover, .swal2-container .swal2-deny:focus,
.swal2-container button.swal2-deny:hover,
.swal2-container button.swal2-deny:focus {
  background: rgba(239, 68, 68, 0.28) !important;
  border-color: rgba(239, 68, 68, 0.5) !important;
  color: #fff !important;
  box-shadow: none !important;
}
.swal2-container .swal2-popup.swal2-icon-warning .swal2-confirm,
.swal2-container .swal2-popup.swal2-icon-warning button.swal2-confirm {
  background: rgba(239, 68, 68, 0.18) !important;
  color: rgba(252, 165, 165, 0.95) !important;
  border: 1px solid rgba(239, 68, 68, 0.32) !important;
}
.swal2-container .swal2-popup.swal2-icon-warning .swal2-confirm:hover, .swal2-container .swal2-popup.swal2-icon-warning .swal2-confirm:focus,
.swal2-container .swal2-popup.swal2-icon-warning button.swal2-confirm:hover,
.swal2-container .swal2-popup.swal2-icon-warning button.swal2-confirm:focus {
  background: rgba(239, 68, 68, 0.28) !important;
  border-color: rgba(239, 68, 68, 0.5) !important;
  color: #fff !important;
}
.swal2-container .swal2-popup.swal2-toast {
  padding: 12px 16px !important;
  border-radius: 12px !important;
  font-size: 0.875rem !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4) !important;
  gap: 10px !important;
}
.swal2-container .swal2-popup.swal2-toast .swal2-title {
  font-size: 0.875rem !important;
  border-bottom: none !important;
  padding-bottom: 0 !important;
  margin: 0 !important;
}
.swal2-container .swal2-popup.swal2-toast .swal2-actions {
  border-top: none !important;
  padding-top: 0 !important;
  margin-top: 0 !important;
}

html {
  --mat-sys-surface-container: #fff;
  --mat-sys-error-fixed-dim: rgba(247, 68, 86, 0.15);
  --mat-select-container-elevation-shadow: var(--mat-sys-level3);
  --mdc-list-list-item-label-text-tracking: 0;
  --mdc-switch-track-height: 28px;
  --mat-sidenav-container-divider-color: var(--mat-sys-outline-variant);
  --mat-dialog-with-actions-content-padding: 20px 24px;
  --mat-form-field-container-text-tracking: unset;
  --mat-switch-with-icon-handle-size: 21px;
  --mat-badge-text-color: white;
  --mat-switch-selected-with-icon-handle-horizontal-margin: 0 26px;
}

html .light-theme {
  color-scheme: light;
  --mat-sys-corner-small: 7px;
  --mat-sys-background: #fff;
  --mat-sys-surface-bright: #f2f6fa;
  --mat-sys-surface: #fff;
  --mat-sys-surface-container: #fff;
  --mat-sys-surface-container-low: #fff;
  --mat-sys-on-background: #2a3547;
  --mat-sys-outline: #d7dde2;
  --mat-sys-outline-variant: #d7dde2;
  --mdc-outlined-text-field-hover-outline-color: #d7dde2;
  --mdc-checkbox-unselected-hover-state-layer-color: #d7dde2;
  --mat-menu-item-hover-state-layer-color: #f6f9fc;
  --mat-standard-button-toggle-state-layer-color: #f6f9fc;
  --mat-option-focus-state-layer-color: #f6f9fc;
  --mat-option-hover-state-layer-color: #f6f9fc;
  --mdc-switch-unselected-track-color: #f6f9fc;
  --mat-stepper-header-focus-state-layer-color: #f6f9fc;
  --mat-stepper-header-hover-state-layer-color: #f6f9fc;
  --mdc-dialog-supporting-text-color: var(--mat-sys-on-background);
  --mat-expansion-header-hover-state-layer-color: #f6f9fc;
}

html .dark-theme {
  color-scheme: dark;
  --mat-sys-corner-small: 7px;
  --mat-sys-background: #141a21;
  --mat-sys-surface-bright: #1e252b;
  --mat-sys-surface: #1e252b;
  --mat-sys-surface-container: #1e252b;
  --mat-sys-surface-container-low: #1e252b;
  --mat-sys-on-background: #ffffff;
  --mat-sys-outline: #3a4a5c;
  --mat-sys-outline-variant: #3a4a5c;
  --mdc-outlined-text-field-hover-outline-color: #3a4a5c;
  --mdc-checkbox-unselected-hover-state-layer-color: #3a4a5c;
  --mat-menu-item-hover-state-layer-color: #2a3547;
  --mat-standard-button-toggle-state-layer-color: #2a3547;
  --mat-option-focus-state-layer-color: #2a3547;
  --mat-option-hover-state-layer-color: #2a3547;
  --mdc-switch-unselected-track-color: #2a3547;
  --mat-stepper-header-focus-state-layer-color: #2a3547;
  --mat-stepper-header-hover-state-layer-color: #2a3547;
  --mdc-dialog-supporting-text-color: var(--mat-sys-on-background);
  --mat-expansion-header-hover-state-layer-color: #2a3547;
  --mat-sys-primary: rgb(93, 135, 255);
  --mat-sys-primary-fixed-dim: rgb(93, 135, 255, 0.15);
  --mat-sys-secondary: rgb(68, 183, 247);
  --mat-sys-secondary-fixed-dim: rgb(68, 183, 247, 0.15);
  --mat-sys-error: rgb(250, 137, 107);
  --mat-sys-error-fixed-dim: rgba(250, 137, 107, 0.15);
  --dark-bg-primary: #0c1017;
  --dark-bg-secondary: #121820;
  --dark-bg-tertiary: #1e2a3a;
  --dark-text-primary: #ffffff;
  --dark-text-secondary: rgba(255, 255, 255, 0.67);
  --dark-text-tertiary: rgba(255, 255, 255, 0.45);
  --dark-border: #3a4a5c;
  --dark-shadow: rgba(0, 0, 0, 0.3);
}
html .dark-theme .mat-card {
  background-color: var(--dark-bg-secondary) !important;
  color: var(--dark-text-primary) !important;
  border: 1px solid var(--dark-border) !important;
}
html .dark-theme .cardWithShadow {
  background: rgba(14, 24, 40, 0.55) !important;
  backdrop-filter: blur(18px) !important;
  -webkit-backdrop-filter: blur(18px) !important;
  color: var(--dark-text-primary) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  box-shadow: 0 18px 60px rgba(0, 0, 0, 0.35) !important;
}
html .dark-theme .mat-table {
  background-color: var(--dark-bg-secondary) !important;
  color: var(--dark-text-primary) !important;
}
html .dark-theme .mat-header-cell {
  color: var(--dark-text-primary) !important;
  background-color: var(--dark-bg-tertiary) !important;
}
html .dark-theme .mat-cell {
  color: var(--dark-text-primary) !important;
  border-bottom-color: var(--dark-border) !important;
}
html .dark-theme .mat-form-field .mat-form-field-label {
  color: var(--dark-text-secondary) !important;
}
html .dark-theme .mat-form-field .mat-input-element {
  color: var(--dark-text-primary) !important;
}
html .dark-theme .apexcharts-canvas {
  background: transparent !important;
}
html .dark-theme .apexcharts-svg {
  background: transparent !important;
}

html.dark-theme {
  /* Panel del mat-select (MDC) - dropdown en dark mode */
}
html.dark-theme .mat-mdc-menu-panel,
html.dark-theme .mat-menu-panel {
  background-color: var(--dark-bg-secondary, #1e252b) !important;
  color: var(--dark-text-primary, #ffffff) !important;
}
html.dark-theme .mat-mdc-menu-item,
html.dark-theme .mat-menu-item {
  color: var(--dark-text-primary, #ffffff) !important;
}
html.dark-theme .mat-mdc-menu-item:hover,
html.dark-theme .mat-menu-item:hover {
  background-color: var(--dark-bg-tertiary, #2a3547) !important;
}
html.dark-theme .mat-mdc-select-panel,
html.dark-theme .mat-mdc-select-panel-wrap,
html.dark-theme .cdk-overlay-pane .mat-mdc-select-panel {
  background-color: var(--dark-bg-secondary, #1e252b) !important;
  color: var(--dark-text-primary, #ffffff) !important;
  border: 1px solid var(--dark-border, rgba(255, 255, 255, 0.12)) !important;
}
html.dark-theme .mat-mdc-select-panel .mat-mdc-option,
html.dark-theme .cdk-overlay-pane .mat-mdc-option {
  color: var(--dark-text-primary, #ffffff) !important;
  background-color: transparent !important;
}
html.dark-theme .mat-mdc-select-panel .mat-mdc-option:hover,
html.dark-theme .cdk-overlay-pane .mat-mdc-option:hover {
  background-color: var(--dark-bg-tertiary, #2a3547) !important;
}
html.dark-theme .mat-mdc-select-panel .mat-mdc-option.mdc-list-item--selected,
html.dark-theme .cdk-overlay-pane .mat-mdc-option.mdc-list-item--selected {
  background-color: var(--dark-bg-tertiary, #2a3547) !important;
  color: var(--dark-text-primary, #ffffff) !important;
}

html .dark-theme .text-dark {
  color: var(--dark-text-primary) !important;
}
html .dark-theme .text-muted {
  color: var(--dark-text-secondary) !important;
}
html .dark-theme .mat-card-title {
  color: var(--dark-text-primary) !important;
}
html .dark-theme .mat-card-subtitle {
  color: var(--dark-text-secondary) !important;
}
html .dark-theme h1, html .dark-theme h2, html .dark-theme h3, html .dark-theme h4, html .dark-theme h5, html .dark-theme h6 {
  color: var(--dark-text-primary) !important;
}
html .dark-theme p, html .dark-theme span, html .dark-theme div {
  color: var(--dark-text-primary) !important;
}
html .dark-theme .mat-mdc-button {
  color: var(--dark-text-primary) !important;
}
html .dark-theme .mat-mdc-raised-button {
  background-color: var(--mat-sys-primary) !important;
  color: white !important;
}
html .dark-theme .mat-icon {
  color: var(--dark-text-primary) !important;
}
html .dark-theme .mat-chip {
  background-color: var(--dark-bg-tertiary) !important;
  color: var(--dark-text-primary) !important;
}
html .dark-theme .bg-light-success {
  background-color: rgba(19, 222, 185, 0.15) !important;
  color: #13deb9 !important;
}
html .dark-theme .bg-light-warning {
  background-color: rgba(255, 174, 31, 0.15) !important;
  color: #ffae1f !important;
}
html .dark-theme .bg-light-primary {
  background-color: rgba(93, 135, 255, 0.15) !important;
  color: #5d87ff !important;
}
html .dark-theme .bg-light-error {
  background-color: rgba(250, 137, 107, 0.15) !important;
  color: #fa896b !important;
}
html .dark-theme .mat-progress-bar {
  background-color: var(--dark-bg-tertiary) !important;
}
html .dark-theme .mat-sidenav {
  background-color: var(--dark-bg-secondary) !important;
  color: var(--dark-text-primary) !important;
}
html .dark-theme .sidebarNav {
  background-color: var(--dark-bg-secondary) !important;
  color: var(--dark-text-primary) !important;
}
html .dark-theme .sidebar-list {
  background-color: var(--dark-bg-secondary) !important;
  color: var(--dark-text-primary) !important;
}
html .dark-theme .mat-nav-list {
  background-color: var(--dark-bg-secondary) !important;
  color: var(--dark-text-primary) !important;
}
html .dark-theme .mat-list-item {
  color: var(--dark-text-primary) !important;
  background-color: var(--dark-bg-secondary) !important;
}
html .dark-theme .mat-list-item:hover {
  background-color: var(--dark-bg-tertiary) !important;
}
html .dark-theme .mat-toolbar {
  background-color: var(--dark-bg-secondary) !important;
  color: var(--dark-text-primary) !important;
}
html .dark-theme .mat-list-item {
  color: var(--dark-text-primary) !important;
}
html .dark-theme .table-responsive {
  background-color: var(--dark-bg-secondary) !important;
}
html .dark-theme .table-responsive table {
  background-color: var(--dark-bg-secondary) !important;
  color: var(--dark-text-primary) !important;
}
html .dark-theme .table-responsive th {
  color: var(--dark-text-primary) !important;
  background-color: var(--dark-bg-tertiary) !important;
}
html .dark-theme .table-responsive td {
  color: var(--dark-text-primary) !important;
  border-bottom-color: var(--dark-border) !important;
}
html .dark-theme .table-responsive tr {
  background-color: var(--dark-bg-secondary) !important;
}
html .dark-theme .table-responsive tr:hover {
  background-color: var(--dark-bg-tertiary) !important;
}
html .dark-theme .mat-table {
  background-color: var(--dark-bg-secondary) !important;
  color: var(--dark-text-primary) !important;
}
html .dark-theme .mat-header-cell {
  color: var(--dark-text-primary) !important;
  background-color: var(--dark-bg-tertiary) !important;
  border-bottom-color: var(--dark-border) !important;
}
html .dark-theme .mat-cell {
  color: var(--dark-text-primary) !important;
  border-bottom-color: var(--dark-border) !important;
}
html .dark-theme .mat-row {
  background-color: var(--dark-bg-secondary) !important;
}
html .dark-theme .mat-row:hover {
  background-color: var(--dark-bg-tertiary) !important;
}
html .dark-theme .search-form-fileld .mat-form-field-label {
  color: var(--dark-text-secondary) !important;
}
html .dark-theme .search-form-fileld .mat-input-element {
  color: var(--dark-text-primary) !important;
}
html .dark-theme .search-form-fileld .mat-form-field-outline {
  color: var(--dark-border) !important;
}
html .dark-theme .search-form-fileld .mat-form-field-outline-thick {
  color: var(--mat-sys-primary) !important;
}
html .dark-theme .mat-icon[fontIcon=verified] {
  color: #ffae1f !important;
}
html .dark-theme .mat-icon[fontIcon=brightness_7] {
  color: #ffd700 !important;
}
html .dark-theme .mat-icon[fontIcon=shopping-cart] {
  color: #fa896b !important;
}
html .dark-theme .mat-mini-fab.bg-light-primary {
  background-color: var(--mat-sys-primary) !important;
  color: white !important;
}
html .dark-theme .mat-mini-fab.bg-light-secondary {
  background-color: var(--mat-sys-secondary) !important;
  color: white !important;
}
html .dark-theme img[style*="clip-path: circle"] {
  border: 2px solid var(--dark-border) !important;
}
html .dark-theme .mat-menu-panel {
  background-color: var(--dark-bg-secondary) !important;
  color: var(--dark-text-primary) !important;
}
html .dark-theme .mat-menu-item {
  color: var(--dark-text-primary) !important;
}
html .dark-theme .mat-menu-item:hover {
  background-color: var(--dark-bg-tertiary) !important;
}
html .dark-theme .mat-dialog-container {
  background-color: var(--dark-bg-secondary) !important;
  color: var(--dark-text-primary) !important;
}
html .dark-theme .mat-snack-bar-container {
  background-color: var(--dark-bg-tertiary) !important;
  color: var(--dark-text-primary) !important;
}
html .dark-theme .mat-paginator {
  background-color: var(--dark-bg-secondary) !important;
  color: var(--dark-text-primary) !important;
}
html .dark-theme .mat-spinner circle {
  stroke: var(--mat-sys-primary) !important;
}
html .dark-theme .mat-tab-group .mat-tab-label {
  color: var(--dark-text-secondary) !important;
}
html .dark-theme .mat-tab-group .mat-tab-label.mat-tab-label-active {
  color: var(--mat-sys-primary) !important;
}
html .dark-theme .mat-tab-group .mat-tab-body-content {
  background-color: var(--dark-bg-secondary) !important;
}
html .dark-theme .mat-expansion-panel {
  background-color: var(--dark-bg-secondary) !important;
  color: var(--dark-text-primary) !important;
}
html .dark-theme .mat-expansion-panel-header {
  color: var(--dark-text-primary) !important;
}
html .dark-theme .mat-stepper-horizontal {
  background-color: var(--dark-bg-secondary) !important;
}
html .dark-theme .mat-step-header {
  color: var(--dark-text-primary) !important;
}
html .dark-theme .mat-tree {
  background-color: var(--dark-bg-secondary) !important;
  color: var(--dark-text-primary) !important;
}
html .dark-theme .mat-autocomplete-panel {
  background-color: var(--dark-bg-secondary) !important;
  color: var(--dark-text-primary) !important;
}
html .dark-theme .mat-select-panel,
html .dark-theme .mat-select-panel-wrap,
html .dark-theme .mat-select-overlay,
html .dark-theme .cdk-overlay-pane .mat-select-panel {
  background-color: var(--dark-bg-secondary) !important;
  color: var(--dark-text-primary) !important;
  border: 1px solid var(--dark-border) !important;
}
html .dark-theme .mat-option,
html .dark-theme .mat-select-panel .mat-option,
html .dark-theme .cdk-overlay-pane .mat-option {
  color: var(--dark-text-primary) !important;
  background-color: var(--dark-bg-secondary) !important;
}
html .dark-theme .mat-option:hover,
html .dark-theme .mat-select-panel .mat-option:hover,
html .dark-theme .cdk-overlay-pane .mat-option:hover {
  background-color: var(--dark-bg-tertiary) !important;
}
html .dark-theme .mat-option.mat-selected,
html .dark-theme .mat-select-panel .mat-option.mat-selected,
html .dark-theme .cdk-overlay-pane .mat-option.mat-selected {
  background-color: var(--dark-bg-tertiary) !important;
  color: var(--dark-text-primary) !important;
}
html .dark-theme .mat-select-panel-wrap {
  background-color: var(--dark-bg-secondary) !important;
}
html .dark-theme .mat-select-panel .mat-option {
  color: var(--dark-text-primary) !important;
  background-color: var(--dark-bg-secondary) !important;
}
html .dark-theme .mat-select-panel .mat-option:hover {
  background-color: var(--dark-bg-tertiary) !important;
}
html .dark-theme .mat-select-panel .mat-option.mat-selected {
  background-color: var(--dark-bg-tertiary) !important;
  color: var(--dark-text-primary) !important;
}
html .dark-theme .mat-select-overlay,
html .dark-theme .cdk-overlay-pane,
html .dark-theme .cdk-overlay-backdrop {
  background-color: var(--dark-bg-secondary) !important;
}
html .dark-theme .cdk-overlay-pane .mat-select-panel {
  background-color: var(--dark-bg-secondary) !important;
  color: var(--dark-text-primary) !important;
  border: 1px solid var(--dark-border) !important;
}
html .dark-theme .cdk-overlay-container .mat-select-panel,
html .dark-theme .cdk-overlay-container .mat-select-panel-wrap,
html .dark-theme .cdk-overlay-container .mat-option {
  background-color: var(--dark-bg-secondary) !important;
  color: var(--dark-text-primary) !important;
}
html .dark-theme .mat-select-panel[style*=background-color],
html .dark-theme .mat-select-panel[style*=background] {
  background-color: var(--dark-bg-secondary) !important;
}
html .dark-theme .theme-select .mat-form-field-label {
  color: var(--dark-text-secondary) !important;
}
html .dark-theme .theme-select .mat-select-value {
  color: var(--dark-text-primary) !important;
}
html .dark-theme .theme-select .mat-select-arrow {
  color: var(--dark-text-primary) !important;
}
html .dark-theme .theme-select .mat-form-field-outline {
  color: var(--dark-border) !important;
}
html .dark-theme .theme-select .mat-form-field-outline-thick {
  color: var(--mat-sys-primary) !important;
}
html .dark-theme .mat-form-field .mat-form-field-label {
  color: var(--dark-text-secondary) !important;
}
html .dark-theme .mat-form-field .mat-input-element {
  color: var(--dark-text-primary) !important;
}
html .dark-theme .mat-form-field .mat-form-field-outline {
  color: var(--dark-border) !important;
}
html .dark-theme .mat-form-field .mat-form-field-outline-thick {
  color: var(--mat-sys-primary) !important;
}
html .dark-theme .mat-form-field .mat-form-field-underline {
  background-color: var(--dark-border) !important;
}
html .dark-theme .mat-form-field .mat-form-field-ripple {
  background-color: var(--mat-sys-primary) !important;
}

html .bg-primary {
  background-color: var(--mat-sys-primary) !important;
}

html .text-primary {
  color: var(--mat-sys-primary) !important;
}

html .bg-secondary {
  background-color: var(--mat-sys-secondary) !important;
}

html .text-secondary {
  color: var(--mat-sys-secondary) !important;
}

html .bg-success {
  background-color: #13deb9 !important;
}

html .text-success {
  color: #13deb9 !important;
}

html .bg-warning {
  background-color: #ffae1f !important;
}

html .text-warning {
  color: #ffae1f !important;
}

html .bg-error {
  background-color: var(--mat-sys-error) !important;
}

html .text-error {
  color: var(--mat-sys-error) !important;
}

html .bg-white {
  background-color: #ffffff !important;
}

html .text-white {
  color: #ffffff !important;
}

html .bg-light {
  background-color: var(--mat-sys-surface-bright) !important;
}

html .text-light {
  color: var(--mat-sys-surface-bright) !important;
}

html .bg-dark {
  background-color: #223742 !important;
}

html .text-dark {
  color: #223742 !important;
}

html .bg-light-error {
  background-color: var(--mat-sys-error-fixed-dim) !important;
}

html .text-light-error {
  color: var(--mat-sys-error-fixed-dim) !important;
}

html .bg-light-secondary {
  background-color: var(--mat-sys-secondary-fixed-dim) !important;
}

html .text-light-secondary {
  color: var(--mat-sys-secondary-fixed-dim) !important;
}

html .bg-light-success {
  background-color: rgba(19, 222, 185, 0.2509803922) !important;
}

html .text-light-success {
  color: rgba(19, 222, 185, 0.2509803922) !important;
}

html .bg-light-warning {
  background-color: rgba(255, 173, 31, 0.2509803922) !important;
}

html .text-light-warning {
  color: rgba(255, 173, 31, 0.2509803922) !important;
}

html .bg-light-primary {
  background-color: var(--mat-sys-primary-fixed-dim) !important;
}

html .text-light-primary {
  color: var(--mat-sys-primary-fixed-dim) !important;
}

.fill-warning svg {
  fill: #ffae1f;
  color: #ffae1f;
}

.fill-light svg {
  fill: var(--mat-sys-surface-bright);
  color: var(--mat-sys-surface-bright);
}

html .border-primary {
  border: 1px solid var(--mat-sys-primary) !important;
}

html .border-secondary {
  border: 1px solid var(--mat-sys-secondary) !important;
}

html .border-success {
  border: 1px solid #13deb9 !important;
}

html .border-warning {
  border: 1px solid #ffae1f !important;
}

html .border-error {
  border: 1px solid var(--mat-sys-error) !important;
}

.icon-1 {
  height: 1px !important;
  width: 1px !important;
  line-height: 9px !important;
}

.icon-2 {
  height: 2px !important;
  width: 2px !important;
  line-height: 10px !important;
}

.icon-3 {
  height: 3px !important;
  width: 3px !important;
  line-height: 11px !important;
}

.icon-4 {
  height: 4px !important;
  width: 4px !important;
  line-height: 12px !important;
}

.icon-5 {
  height: 5px !important;
  width: 5px !important;
  line-height: 13px !important;
}

.icon-6 {
  height: 6px !important;
  width: 6px !important;
  line-height: 14px !important;
}

.icon-7 {
  height: 7px !important;
  width: 7px !important;
  line-height: 15px !important;
}

.icon-8 {
  height: 8px !important;
  width: 8px !important;
  line-height: 16px !important;
}

.icon-9 {
  height: 9px !important;
  width: 9px !important;
  line-height: 17px !important;
}

.icon-10 {
  height: 10px !important;
  width: 10px !important;
  line-height: 18px !important;
}

.icon-11 {
  height: 11px !important;
  width: 11px !important;
  line-height: 19px !important;
}

.icon-12 {
  height: 12px !important;
  width: 12px !important;
  line-height: 20px !important;
}

.icon-13 {
  height: 13px !important;
  width: 13px !important;
  line-height: 21px !important;
}

.icon-14 {
  height: 14px !important;
  width: 14px !important;
  line-height: 22px !important;
}

.icon-15 {
  height: 15px !important;
  width: 15px !important;
  line-height: 23px !important;
}

.icon-16 {
  height: 16px !important;
  width: 16px !important;
  line-height: 24px !important;
}

.icon-17 {
  height: 17px !important;
  width: 17px !important;
  line-height: 25px !important;
}

.icon-18 {
  height: 18px !important;
  width: 18px !important;
  line-height: 26px !important;
}

.icon-19 {
  height: 19px !important;
  width: 19px !important;
  line-height: 27px !important;
}

.icon-20 {
  height: 20px !important;
  width: 20px !important;
  line-height: 28px !important;
}

.icon-21 {
  height: 21px !important;
  width: 21px !important;
  line-height: 29px !important;
}

.icon-22 {
  height: 22px !important;
  width: 22px !important;
  line-height: 30px !important;
}

.icon-23 {
  height: 23px !important;
  width: 23px !important;
  line-height: 31px !important;
}

.icon-24 {
  height: 24px !important;
  width: 24px !important;
  line-height: 32px !important;
}

.icon-25 {
  height: 25px !important;
  width: 25px !important;
  line-height: 33px !important;
}

.icon-26 {
  height: 26px !important;
  width: 26px !important;
  line-height: 34px !important;
}

.icon-27 {
  height: 27px !important;
  width: 27px !important;
  line-height: 35px !important;
}

.icon-28 {
  height: 28px !important;
  width: 28px !important;
  line-height: 36px !important;
}

.icon-29 {
  height: 29px !important;
  width: 29px !important;
  line-height: 37px !important;
}

.icon-30 {
  height: 30px !important;
  width: 30px !important;
  line-height: 38px !important;
}

.icon-31 {
  height: 31px !important;
  width: 31px !important;
  line-height: 39px !important;
}

.icon-32 {
  height: 32px !important;
  width: 32px !important;
  line-height: 40px !important;
}

.icon-33 {
  height: 33px !important;
  width: 33px !important;
  line-height: 41px !important;
}

.icon-34 {
  height: 34px !important;
  width: 34px !important;
  line-height: 42px !important;
}

.icon-35 {
  height: 35px !important;
  width: 35px !important;
  line-height: 43px !important;
}

.icon-36 {
  height: 36px !important;
  width: 36px !important;
  line-height: 44px !important;
}

.icon-37 {
  height: 37px !important;
  width: 37px !important;
  line-height: 45px !important;
}

.icon-38 {
  height: 38px !important;
  width: 38px !important;
  line-height: 46px !important;
}

.icon-39 {
  height: 39px !important;
  width: 39px !important;
  line-height: 47px !important;
}

.icon-40 {
  height: 40px !important;
  width: 40px !important;
  line-height: 48px !important;
}

.icon-41 {
  height: 41px !important;
  width: 41px !important;
  line-height: 49px !important;
}

.icon-42 {
  height: 42px !important;
  width: 42px !important;
  line-height: 50px !important;
}

.icon-43 {
  height: 43px !important;
  width: 43px !important;
  line-height: 51px !important;
}

.icon-44 {
  height: 44px !important;
  width: 44px !important;
  line-height: 52px !important;
}

.icon-45 {
  height: 45px !important;
  width: 45px !important;
  line-height: 53px !important;
}

.icon-46 {
  height: 46px !important;
  width: 46px !important;
  line-height: 54px !important;
}

.icon-47 {
  height: 47px !important;
  width: 47px !important;
  line-height: 55px !important;
}

.icon-48 {
  height: 48px !important;
  width: 48px !important;
  line-height: 56px !important;
}

*,
:after,
:before {
  box-sizing: border-box;
}

body {
  font-family: "Google Sans Code", monospace;
  line-height: 1.334rem;
  overflow-x: hidden;
  color: var(--mat-sys-on-background);
  background-color: var(--mat-sys-background);
}

.mainWrapper {
  display: flex;
  min-height: 100vh;
  width: 100%;
  flex: 1;
  margin-top: 0;
}

@media (max-width: 1199px) {
  .mainWrapper {
    margin-top: 0;
  }
}
.container {
  max-width: 1200px;
  padding-left: 24px;
  padding-right: 24px;
  margin: 0 auto;
}
.container.full-width {
  display: flex;
  align-items: center;
  width: 100%;
}

.pageWrapper {
  margin: 0 auto;
  padding-top: 24px;
}
.pageWrapper.maxWidth {
  max-width: 1200px;
}

.w-100 {
  width: 100%;
}

.h-100 {
  height: 100%;
}

.shadow-none {
  box-shadow: none !important;
}

.rounded {
  border-radius: 7px !important;
}

.rounded-circle {
  border-radius: 50% !important;
}

.rounded-pill {
  border-radius: 25px !important;
}

.overflow-hidden {
  overflow: hidden;
}

.text-decoration-none {
  text-decoration: none;
}

.position-relative {
  position: relative;
}

.table-responsive {
  overflow-x: auto;
}
.table-responsive td,
.table-responsive mat-cell {
  white-space: nowrap;
  padding: 16px;
}

.op-5 {
  opacity: 0.5;
}

.cursor-pointer {
  cursor: pointer;
}

a {
  color: var(--mat-sys-on-background);
}
a:hover {
  color: var(--mat-sys-primary);
}

pre {
  margin: 0;
  white-space: nowrap;
}

td.hljs-ln-line.hljs-ln-numbers {
  padding-right: 10px;
}

@media (min-width: 768px) {
  html .flex-sm-row {
    flex-direction: row !important;
  }
}
.mat-drawer.sidebarNav {
  width: 270px;
  flex-shrink: 0;
  transition: swift-ease-out(width);
  overflow-x: hidden;
  border-right: 1px solid var(--mat-sys-outline-variant);
  border-radius: 0px !important;
  position: fixed; /* Fixed Sidebar (stay in place on scroll) */
  z-index: 1000 !important; /* Stay on top - higher than content */
  top: 0; /* Stay at the top */
  left: 0;
  margin-top: 0;
  height: 100vh;
}

::ng-deep .mat-sidenav-backdrop {
  z-index: 999 !important; /* Justo debajo del sidebar */
}

::ng-deep .mat-sidenav-container .mat-sidenav {
  z-index: 1000 !important;
}
::ng-deep .mat-sidenav-container .mat-sidenav-backdrop {
  z-index: 999 !important;
}

.branding {
  padding: 16px 20px;
}

.sidebar-list.mdc-list {
  padding: 0 24px;
}
.sidebar-list.mdc-list .mdc-list-group__subheader {
  margin: 12px 0;
  text-transform: uppercase;
  font-size: 0.75rem;
  font-weight: 700;
  margin-top: 24px;
  color: rgba(0, 0, 0, 0.6);
}
.sidebar-list.mdc-list .menu-list-item {
  height: 45px;
  padding: 8px 10px !important;
  margin-bottom: 2px;
}
.sidebar-list.mdc-list .menu-list-item:before, .sidebar-list.mdc-list .menu-list-item:focus {
  z-index: -1;
}
.sidebar-list.mdc-list .menu-list-item .item-chip {
  height: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
}
.sidebar-list.mdc-list .menu-list-item.activeMenu {
  background-color: var(--mat-sys-primary);
}
.sidebar-list.mdc-list .menu-list-item.activeMenu .mdc-list-item__primary-text {
  color: #ffffff !important;
}
.sidebar-list.mdc-list .menu-list-item.activeMenu .mat-mdc-list-item-icon {
  color: #ffffff !important;
}
.sidebar-list.mdc-list .menu-list-item .mdc-list-item__start {
  margin-right: 14px;
  margin-left: 0 !important;
  width: 20px;
  height: 20px;
  line-height: 0px;
  fill: transparent !important;
}
.sidebar-list.mdc-list .menu-list-item .mdc-list-item__primary-text {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.sidebar-list.mdc-list .menu-list-item .mdc-list-item__primary-text .arrow-icon {
  display: flex;
  gap: 2px;
}
.sidebar-list.mdc-list .menu-list-item .mdc-list-item__primary-text .arrow-icon .mat-icon {
  font-size: 18px;
  width: 18px;
  height: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.sidebar-list.mdc-list .menu-list-item .menu-content {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-width: 0;
}
.sidebar-list.mdc-list .menu-list-item .menu-content .menu-title {
  font-weight: 500;
  font-size: 14px;
  line-height: 1.2;
}
.sidebar-list.mdc-list .menu-list-item .menu-content .menu-description {
  font-size: 11px;
  color: rgba(0, 0, 0, 0.6);
  line-height: 1.2;
  margin-top: 2px;
  opacity: 0.8;
}

.dark .sidebar-list.mdc-list .mdc-list-group__subheader {
  color: rgba(255, 255, 255, 0.6);
}
.dark .sidebar-list.mdc-list .menu-list-item .menu-content .menu-description {
  color: rgba(255, 255, 255, 0.6);
}

.flex-layout {
  display: flex;
  flex-direction: column;
  height: 100%;
}

html .topbar {
  position: sticky;
  top: 0;
  z-index: 9;
  height: 70px;
}

.topbar-dd {
  min-width: 220px !important;
}

.upgrade-bg {
  position: absolute;
  top: 0px;
  right: 0px;
  height: 100%;
}

.object-cover {
  object-fit: cover;
}

.profile-dd {
  min-width: 180px !important;
}

.custom-language-selector {
  position: relative;
  margin-right: 12px;
}

.language-trigger {
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--mat-sys-surface-container) 0%, var(--mat-sys-surface-container-highest) 100%);
  border: 2px solid var(--mat-sys-outline-variant);
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  overflow: hidden;
}
.language-trigger::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 0;
  border-radius: 50%;
  background: var(--mat-sys-primary-container);
  transform: translate(-50%, -50%);
  transition: width 0.3s ease, height 0.3s ease;
  opacity: 0;
}
.language-trigger:hover {
  transform: scale(1.05);
  border-color: var(--mat-sys-primary);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}
.language-trigger:hover::before {
  width: 100%;
  height: 100%;
  opacity: 0.1;
}
.language-trigger.active {
  border-color: var(--mat-sys-primary);
  box-shadow: 0 0 0 3px rgba(var(--mat-sys-primary-rgb, 103, 126, 234), 0.2);
}
.language-trigger.active::before {
  width: 100%;
  height: 100%;
  opacity: 0.15;
}
.language-trigger .flag-icon {
  width: 20px;
  height: 14px;
  object-fit: contain;
  border-radius: 2px;
  position: relative;
  z-index: 1;
  display: block;
  transition: transform 0.3s ease;
}
.language-trigger:hover .flag-icon {
  transform: scale(1.1);
}
.language-trigger.active .flag-icon {
  transform: rotate(180deg) scale(1.1);
}

.language-menu {
  position: absolute;
  top: calc(100% + 8px);
  left: 50%;
  transform: translateX(-50%) scale(0.8);
  transform-origin: top center;
  width: 60px;
  background: var(--mat-sys-surface);
  border-radius: 12px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2), 0 0 0 1px var(--mat-sys-outline-variant);
  padding: 6px;
  z-index: 1000;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}
.language-menu.show {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) scale(1);
}

.language-item {
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  cursor: pointer;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  margin: 4px auto;
  background: transparent;
}
.language-item::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 0;
  border-radius: 50%;
  background: var(--mat-sys-primary-container);
  transform: translate(-50%, -50%);
  transition: width 0.25s ease, height 0.25s ease;
  opacity: 0;
}
.language-item:hover {
  transform: scale(1.15);
}
.language-item:hover::before {
  width: 100%;
  height: 100%;
  opacity: 0.2;
}
.language-item:hover .flag-icon {
  transform: scale(1.2);
}
.language-item.is-active {
  background: var(--mat-sys-primary-container);
  box-shadow: 0 0 0 2px var(--mat-sys-primary);
}
.language-item.is-active::before {
  width: 100%;
  height: 100%;
  opacity: 0.3;
}
.language-item.is-active .flag-icon {
  transform: scale(1.15);
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.2));
}
.language-item .flag-icon {
  width: 20px;
  height: 14px;
  object-fit: contain;
  border-radius: 2px;
  position: relative;
  z-index: 1;
  display: block;
  transition: transform 0.25s ease, filter 0.25s ease;
}

.profile-avatar-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  padding: 0;
  line-height: 0;
  flex-shrink: 0;
}
.profile-avatar-link:hover {
  opacity: 0.9;
}
.profile-avatar-link .profile-avatar-img {
  display: block;
  width: 35px;
  height: 35px;
  object-fit: cover;
}

.profile-menu-wrapper {
  position: relative;
}

.profile-menu-dropdown {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 1000;
  min-width: 180px;
  background-color: var(--mat-sys-surface);
  border: 1px solid var(--mat-sys-outline-variant);
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  opacity: 1;
}
.profile-menu-dropdown .profile-menu-content {
  padding: 8px;
}
.profile-menu-dropdown .profile-menu-item,
.profile-menu-dropdown .logout-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px 16px;
  font-weight: 400;
  font-size: 14px;
  border-radius: 6px;
  transition: all 0.2s ease;
  width: 100%;
  border: 1px solid var(--mat-sys-outline-variant);
  background-color: var(--mat-sys-surface-container-low);
  color: var(--mat-sys-on-surface);
  cursor: pointer;
  text-decoration: none;
  box-sizing: border-box;
}
.profile-menu-dropdown .profile-menu-item:hover,
.profile-menu-dropdown .logout-btn:hover {
  background-color: var(--mat-sys-surface-container);
  border-color: var(--mat-sys-outline);
}
.profile-menu-dropdown a.profile-menu-item {
  text-decoration: none;
}
.profile-menu-dropdown .profile-menu-item + .profile-menu-item,
.profile-menu-dropdown .profile-menu-item + .logout-btn {
  margin-top: 4px;
}
.profile-menu-dropdown.dark-theme {
  background-color: var(--dark-bg-secondary);
  border-color: var(--dark-border);
}
.profile-menu-dropdown.dark-theme .profile-menu-item,
.profile-menu-dropdown.dark-theme .logout-btn {
  background-color: var(--dark-bg-tertiary);
  border-color: var(--dark-border);
  color: var(--dark-text-primary);
}
.profile-menu-dropdown.dark-theme .profile-menu-item:hover,
.profile-menu-dropdown.dark-theme .logout-btn:hover {
  background-color: var(--dark-bg-secondary);
  border-color: var(--dark-border);
}

.environment-toggle-wrapper {
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
  margin-right: 8px;
}
.environment-toggle-wrapper.draggable {
  cursor: grab;
  -webkit-user-select: none;
          user-select: none;
  transition: box-shadow 0.2s ease;
  padding: 8px;
  border-radius: 12px;
}
.environment-toggle-wrapper.draggable:hover {
  background: rgba(0, 0, 0, 0.03);
}
.environment-toggle-wrapper.draggable.dragging {
  cursor: grabbing;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25);
  background: rgba(0, 0, 0, 0.05);
}
.environment-toggle-wrapper.draggable.dragging * {
  pointer-events: none;
}

.environment-toggle-btn {
  position: relative;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.environment-toggle-btn::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 0;
  border-radius: 50%;
  background: currentColor;
  transform: translate(-50%, -50%);
  transition: width 0.3s ease, height 0.3s ease;
  opacity: 0;
}
.environment-toggle-btn:hover {
  transform: scale(1.1);
}
.environment-toggle-btn:hover::before {
  width: 100%;
  height: 100%;
  opacity: 0.1;
}
.environment-toggle-btn:active {
  transform: scale(0.95);
}
.environment-toggle-btn.environment-changed {
  animation: environmentPulse 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.environment-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 2px 8px;
  border-radius: 12px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.5px;
  color: white;
  text-transform: uppercase;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.environment-badge:hover {
  transform: scale(1.05);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}

@keyframes environmentPulse {
  0%, 100% {
    transform: scale(1);
    box-shadow: 0 0 0 0 rgba(var(--mat-sys-primary-rgb, 103, 126, 234), 0.7);
  }
  50% {
    transform: scale(1.15);
    box-shadow: 0 0 0 10px rgba(var(--mat-sys-primary-rgb, 103, 126, 234), 0);
  }
}
:host-context(.dark) .environment-toggle-wrapper.draggable:hover {
  background: rgba(255, 255, 255, 0.05);
}
:host-context(.dark) .environment-toggle-wrapper.draggable.dragging {
  background: rgba(255, 255, 255, 0.1);
}

.row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
}

.no-gutters {
  margin-right: 0;
  margin-left: 0;
}
.no-gutters > .col,
.no-gutters > [class*=col-] {
  padding-right: 0;
  padding-left: 0;
}

.col, .col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col-sm, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-md, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-lg, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-xl, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12 {
  position: relative;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
}

.col {
  flex-basis: 0;
  flex-grow: 1;
  max-width: 100%;
}

.col-1 {
  flex: 0 0 8.3333333333%;
  max-width: 8.3333333333%;
}

.offset-1 {
  margin-left: 8.3333333333%;
}

.col-2 {
  flex: 0 0 16.6666666667%;
  max-width: 16.6666666667%;
}

.offset-2 {
  margin-left: 16.6666666667%;
}

.col-3 {
  flex: 0 0 25%;
  max-width: 25%;
}

.offset-3 {
  margin-left: 25%;
}

.col-4 {
  flex: 0 0 33.3333333333%;
  max-width: 33.3333333333%;
}

.offset-4 {
  margin-left: 33.3333333333%;
}

.col-5 {
  flex: 0 0 41.6666666667%;
  max-width: 41.6666666667%;
}

.offset-5 {
  margin-left: 41.6666666667%;
}

.col-6 {
  flex: 0 0 50%;
  max-width: 50%;
}

.offset-6 {
  margin-left: 50%;
}

.col-7 {
  flex: 0 0 58.3333333333%;
  max-width: 58.3333333333%;
}

.offset-7 {
  margin-left: 58.3333333333%;
}

.col-8 {
  flex: 0 0 66.6666666667%;
  max-width: 66.6666666667%;
}

.offset-8 {
  margin-left: 66.6666666667%;
}

.col-9 {
  flex: 0 0 75%;
  max-width: 75%;
}

.offset-9 {
  margin-left: 75%;
}

.col-10 {
  flex: 0 0 83.3333333333%;
  max-width: 83.3333333333%;
}

.offset-10 {
  margin-left: 83.3333333333%;
}

.col-11 {
  flex: 0 0 91.6666666667%;
  max-width: 91.6666666667%;
}

.offset-11 {
  margin-left: 91.6666666667%;
}

.col-12 {
  flex: 0 0 100%;
  max-width: 100%;
}

.offset-12 {
  margin-left: 100%;
}

@media (min-width: 600px) {
  .col-sm {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .col-sm-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .offset-sm-1 {
    margin-left: 8.3333333333%;
  }
  .col-sm-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .offset-sm-2 {
    margin-left: 16.6666666667%;
  }
  .col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .offset-sm-3 {
    margin-left: 25%;
  }
  .col-sm-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .offset-sm-4 {
    margin-left: 33.3333333333%;
  }
  .col-sm-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .offset-sm-5 {
    margin-left: 41.6666666667%;
  }
  .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .offset-sm-6 {
    margin-left: 50%;
  }
  .col-sm-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .offset-sm-7 {
    margin-left: 58.3333333333%;
  }
  .col-sm-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .offset-sm-8 {
    margin-left: 66.6666666667%;
  }
  .col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .offset-sm-9 {
    margin-left: 75%;
  }
  .col-sm-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .offset-sm-10 {
    margin-left: 83.3333333333%;
  }
  .col-sm-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .offset-sm-11 {
    margin-left: 91.6666666667%;
  }
  .col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .offset-sm-12 {
    margin-left: 100%;
  }
}
@media (min-width: 960px) {
  .col-md {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .col-md-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .offset-md-1 {
    margin-left: 8.3333333333%;
  }
  .col-md-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .offset-md-2 {
    margin-left: 16.6666666667%;
  }
  .col-md-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .offset-md-3 {
    margin-left: 25%;
  }
  .col-md-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .offset-md-4 {
    margin-left: 33.3333333333%;
  }
  .col-md-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .offset-md-5 {
    margin-left: 41.6666666667%;
  }
  .col-md-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .offset-md-6 {
    margin-left: 50%;
  }
  .col-md-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .offset-md-7 {
    margin-left: 58.3333333333%;
  }
  .col-md-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .offset-md-8 {
    margin-left: 66.6666666667%;
  }
  .col-md-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .offset-md-9 {
    margin-left: 75%;
  }
  .col-md-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .offset-md-10 {
    margin-left: 83.3333333333%;
  }
  .col-md-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .offset-md-11 {
    margin-left: 91.6666666667%;
  }
  .col-md-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .offset-md-12 {
    margin-left: 100%;
  }
}
@media (min-width: 1280px) {
  .col-lg {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .col-lg-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .offset-lg-1 {
    margin-left: 8.3333333333%;
  }
  .col-lg-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .offset-lg-2 {
    margin-left: 16.6666666667%;
  }
  .col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .offset-lg-3 {
    margin-left: 25%;
  }
  .col-lg-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .offset-lg-4 {
    margin-left: 33.3333333333%;
  }
  .col-lg-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .offset-lg-5 {
    margin-left: 41.6666666667%;
  }
  .col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .offset-lg-6 {
    margin-left: 50%;
  }
  .col-lg-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .offset-lg-7 {
    margin-left: 58.3333333333%;
  }
  .col-lg-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .offset-lg-8 {
    margin-left: 66.6666666667%;
  }
  .col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .offset-lg-9 {
    margin-left: 75%;
  }
  .col-lg-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .offset-lg-10 {
    margin-left: 83.3333333333%;
  }
  .col-lg-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .offset-lg-11 {
    margin-left: 91.6666666667%;
  }
  .col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .offset-lg-12 {
    margin-left: 100%;
  }
}
@media (min-width: 2100px) {
  .col-xl {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .col-xl-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .offset-xl-1 {
    margin-left: 8.3333333333%;
  }
  .col-xl-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .offset-xl-2 {
    margin-left: 16.6666666667%;
  }
  .col-xl-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .offset-xl-3 {
    margin-left: 25%;
  }
  .col-xl-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .offset-xl-4 {
    margin-left: 33.3333333333%;
  }
  .col-xl-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .offset-xl-5 {
    margin-left: 41.6666666667%;
  }
  .col-xl-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .offset-xl-6 {
    margin-left: 50%;
  }
  .col-xl-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .offset-xl-7 {
    margin-left: 58.3333333333%;
  }
  .col-xl-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .offset-xl-8 {
    margin-left: 66.6666666667%;
  }
  .col-xl-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .offset-xl-9 {
    margin-left: 75%;
  }
  .col-xl-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .offset-xl-10 {
    margin-left: 83.3333333333%;
  }
  .col-xl-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .offset-xl-11 {
    margin-left: 91.6666666667%;
  }
  .col-xl-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .offset-xl-12 {
    margin-left: 100%;
  }
}
@media (min-width: 1200px) {
  body .d-lg-flex {
    display: flex !important;
  }
  body .text-lg-left {
    text-align: left !important;
  }
  body .d-lg-none {
    display: none !important;
  }
  body .align-items-lg-center {
    align-items: center !important;
  }
}
@media (min-width: 960px) {
  .d-md-none {
    display: none !important;
  }
}
@media (min-width: 768px) {
  body .d-sm-flex {
    display: flex !important;
  }
}
@media (max-width: 767px) {
  .p-xs-6 {
    padding: 0 6px !important;
  }
}
.flex-shrink-0 {
  flex-shrink: 0;
}

.flex-1-auto {
  flex: 1 1 0%;
}

.hstack {
  display: flex;
  flex-direction: row;
  gap: 20px;
}

@media (max-width: 767px) {
  .hstack {
    flex-direction: column;
  }
}
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0px;
}

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

.lh-sm {
  line-height: 20px !important;
}

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

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

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

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

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

.d-table-row {
  display: table-row !important;
}

.d-table-cell {
  display: table-cell !important;
}

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

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

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

.flex-fill {
  flex: 1 1 auto !important;
}

.flex-row {
  flex-direction: row !important;
}

.flex-row-reverse {
  flex-direction: row-reverse !important;
}

.flex-col {
  flex-direction: column !important;
}

.flex-col-reverse {
  flex-direction: column-reverse !important;
}

.flex-grow-0 {
  flex-grow: 0 !important;
}

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

.flex-shrink-0 {
  flex-shrink: 0 !important;
}

.flex-shrink-1 {
  flex-shrink: 1 !important;
}

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

.flex-nowrap {
  flex-wrap: nowrap !important;
}

.flex-wrap-reverse {
  flex-wrap: wrap-reverse !important;
}

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

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

.justify-content-center {
  justify-content: center !important;
}

.justify-content-between {
  justify-content: space-between !important;
}

.justify-content-around {
  justify-content: space-around !important;
}

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

.align-content-end {
  align-content: flex-end !important;
}

.align-content-center {
  align-content: center !important;
}

.align-content-between {
  align-content: space-between !important;
}

.align-content-around {
  align-content: space-around !important;
}

.align-content-stretch {
  align-content: stretch !important;
}

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

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

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

.align-items-baseline {
  align-items: baseline !important;
}

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

.align-self-auto {
  align-self: auto !important;
}

.align-self-start {
  align-self: flex-start !important;
}

.align-self-end {
  align-self: flex-end !important;
}

.align-self-center {
  align-self: center !important;
}

.align-self-baseline {
  align-self: baseline !important;
}

.align-self-stretch {
  align-self: stretch !important;
}

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

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

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

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

.m-6 {
  margin: 7px !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

.m-x-0 {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.m-x-2 {
  margin-left: 2px !important;
  margin-right: 2px !important;
}

.m-x-4 {
  margin-left: 4px !important;
  margin-right: 4px !important;
}

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

.m-x-6 {
  margin-left: 7px !important;
  margin-right: 7px !important;
}

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

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

.m-x-12 {
  margin-left: 12px !important;
  margin-right: 12px !important;
}

.m-x-14 {
  margin-left: 14px !important;
  margin-right: 14px !important;
}

.m-x-15 {
  margin-left: 15px !important;
  margin-right: 15px !important;
}

.m-x-16 {
  margin-left: 16px !important;
  margin-right: 16px !important;
}

.m-x-20 {
  margin-left: 20px !important;
  margin-right: 20px !important;
}

.m-x-24 {
  margin-left: 24px !important;
  margin-right: 24px !important;
}

.m-x-30 {
  margin-left: 30px !important;
  margin-right: 30px !important;
}

.m-x-32 {
  margin-left: 32px !important;
  margin-right: 32px !important;
}

.m-x-48 {
  margin-left: 48px !important;
  margin-right: 48px !important;
}

.m-x-auto {
  margin-left: auto !important;
  margin-right: auto !important;
}

.m-y-0 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.m-y-2 {
  margin-top: 2px !important;
  margin-bottom: 2px !important;
}

.m-y-4 {
  margin-top: 4px !important;
  margin-bottom: 4px !important;
}

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

.m-y-6 {
  margin-top: 7px !important;
  margin-bottom: 7px !important;
}

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

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

.m-y-12 {
  margin-top: 12px !important;
  margin-bottom: 12px !important;
}

.m-y-14 {
  margin-top: 14px !important;
  margin-bottom: 14px !important;
}

.m-y-15 {
  margin-top: 15px !important;
  margin-bottom: 15px !important;
}

.m-y-16 {
  margin-top: 16px !important;
  margin-bottom: 16px !important;
}

.m-y-20 {
  margin-top: 20px !important;
  margin-bottom: 20px !important;
}

.m-y-24 {
  margin-top: 24px !important;
  margin-bottom: 24px !important;
}

.m-y-30 {
  margin-top: 30px !important;
  margin-bottom: 30px !important;
}

.m-y-32 {
  margin-top: 32px !important;
  margin-bottom: 32px !important;
}

.m-y-48 {
  margin-top: 48px !important;
  margin-bottom: 48px !important;
}

.m-y-auto {
  margin-top: auto !important;
  margin-bottom: auto !important;
}

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

.m-t-2 {
  margin-top: 2px !important;
}

.m-t-4 {
  margin-top: 4px !important;
}

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

.m-t-6 {
  margin-top: 7px !important;
}

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

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

.m-t-12 {
  margin-top: 12px !important;
}

.m-t-14 {
  margin-top: 14px !important;
}

.m-t-15 {
  margin-top: 15px !important;
}

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

.m-t-20 {
  margin-top: 20px !important;
}

.m-t-24 {
  margin-top: 24px !important;
}

.m-t-30 {
  margin-top: 30px !important;
}

.m-t-32 {
  margin-top: 32px !important;
}

.m-t-48 {
  margin-top: 48px !important;
}

.m-t-auto {
  margin-top: auto !important;
}

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

.m-b-2 {
  margin-bottom: 2px !important;
}

.m-b-4 {
  margin-bottom: 4px !important;
}

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

.m-b-6 {
  margin-bottom: 7px !important;
}

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

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

.m-b-12 {
  margin-bottom: 12px !important;
}

.m-b-14 {
  margin-bottom: 14px !important;
}

.m-b-15 {
  margin-bottom: 15px !important;
}

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

.m-b-20 {
  margin-bottom: 20px !important;
}

.m-b-24 {
  margin-bottom: 24px !important;
}

.m-b-30 {
  margin-bottom: 30px !important;
}

.m-b-32 {
  margin-bottom: 32px !important;
}

.m-b-48 {
  margin-bottom: 48px !important;
}

.m-b-auto {
  margin-bottom: auto !important;
}

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

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

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

.m--6 {
  margin: -7px !important;
}

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

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

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

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

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

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

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

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

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

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

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

.m-x--2 {
  margin-left: -2px !important;
  margin-right: -2px !important;
}

.m-x--4 {
  margin-left: -4px !important;
  margin-right: -4px !important;
}

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

.m-x--6 {
  margin-left: -7px !important;
  margin-right: -7px !important;
}

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

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

.m-x--12 {
  margin-left: -12px !important;
  margin-right: -12px !important;
}

.m-x--14 {
  margin-left: -14px !important;
  margin-right: -14px !important;
}

.m-x--15 {
  margin-left: -15px !important;
  margin-right: -15px !important;
}

.m-x--16 {
  margin-left: -16px !important;
  margin-right: -16px !important;
}

.m-x--20 {
  margin-left: -20px !important;
  margin-right: -20px !important;
}

.m-x--24 {
  margin-left: -24px !important;
  margin-right: -24px !important;
}

.m-x--30 {
  margin-left: -30px !important;
  margin-right: -30px !important;
}

.m-x--32 {
  margin-left: -32px !important;
  margin-right: -32px !important;
}

.m-x--48 {
  margin-left: -48px !important;
  margin-right: -48px !important;
}

.m-y--2 {
  margin-top: -2px !important;
  margin-bottom: -2px !important;
}

.m-y--4 {
  margin-top: -4px !important;
  margin-bottom: -4px !important;
}

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

.m-y--6 {
  margin-top: -7px !important;
  margin-bottom: -7px !important;
}

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

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

.m-y--12 {
  margin-top: -12px !important;
  margin-bottom: -12px !important;
}

.m-y--14 {
  margin-top: -14px !important;
  margin-bottom: -14px !important;
}

.m-y--15 {
  margin-top: -15px !important;
  margin-bottom: -15px !important;
}

.m-y--16 {
  margin-top: -16px !important;
  margin-bottom: -16px !important;
}

.m-y--20 {
  margin-top: -20px !important;
  margin-bottom: -20px !important;
}

.m-y--24 {
  margin-top: -24px !important;
  margin-bottom: -24px !important;
}

.m-y--30 {
  margin-top: -30px !important;
  margin-bottom: -30px !important;
}

.m-y--32 {
  margin-top: -32px !important;
  margin-bottom: -32px !important;
}

.m-y--48 {
  margin-top: -48px !important;
  margin-bottom: -48px !important;
}

.m-t--2 {
  margin-top: -2px !important;
}

.m-t--4 {
  margin-top: -4px !important;
}

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

.m-t--6 {
  margin-top: -7px !important;
}

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

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

.m-t--12 {
  margin-top: -12px !important;
}

.m-t--14 {
  margin-top: -14px !important;
}

.m-t--15 {
  margin-top: -15px !important;
}

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

.m-t--20 {
  margin-top: -20px !important;
}

.m-t--24 {
  margin-top: -24px !important;
}

.m-t--30 {
  margin-top: -30px !important;
}

.m-t--32 {
  margin-top: -32px !important;
}

.m-t--48 {
  margin-top: -48px !important;
}

.m-r--2 {
  margin-right: -2px !important;
}

.m-r--4 {
  margin-right: -4px !important;
}

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

.m-r--6 {
  margin-right: -7px !important;
}

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

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

.m-r--12 {
  margin-right: -12px !important;
}

.m-r--14 {
  margin-right: -14px !important;
}

.m-r--15 {
  margin-right: -15px !important;
}

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

.m-r--20 {
  margin-right: -20px !important;
}

.m-r--24 {
  margin-right: -24px !important;
}

.m-r--30 {
  margin-right: -30px !important;
}

.m-r--32 {
  margin-right: -32px !important;
}

.m-r--48 {
  margin-right: -48px !important;
}

.m-b--2 {
  margin-bottom: -2px !important;
}

.m-b--4 {
  margin-bottom: -4px !important;
}

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

.m-b--6 {
  margin-bottom: -7px !important;
}

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

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

.m-b--12 {
  margin-bottom: -12px !important;
}

.m-b--14 {
  margin-bottom: -14px !important;
}

.m-b--15 {
  margin-bottom: -15px !important;
}

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

.m-b--20 {
  margin-bottom: -20px !important;
}

.m-b--24 {
  margin-bottom: -24px !important;
}

.m-b--30 {
  margin-bottom: -30px !important;
}

.m-b--32 {
  margin-bottom: -32px !important;
}

.m-b--48 {
  margin-bottom: -48px !important;
}

.m-l--2 {
  margin-left: -2px !important;
}

.m-l--4 {
  margin-left: -4px !important;
}

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

.m-l--6 {
  margin-left: -7px !important;
}

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

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

.m-l--12 {
  margin-left: -12px !important;
}

.m-l--14 {
  margin-left: -14px !important;
}

.m-l--15 {
  margin-left: -15px !important;
}

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

.m-l--20 {
  margin-left: -20px !important;
}

.m-l--24 {
  margin-left: -24px !important;
}

.m-l--30 {
  margin-left: -30px !important;
}

.m-l--32 {
  margin-left: -32px !important;
}

.m-l--48 {
  margin-left: -48px !important;
}

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

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

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

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

.p-6 {
  padding: 7px !important;
}

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

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

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

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

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

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

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

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

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

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

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

.p-x-0 {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.p-x-2 {
  padding-left: 2px !important;
  padding-right: 2px !important;
}

.p-x-4 {
  padding-left: 4px !important;
  padding-right: 4px !important;
}

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

.p-x-6 {
  padding-left: 7px !important;
  padding-right: 7px !important;
}

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

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

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

.p-x-14 {
  padding-left: 14px !important;
  padding-right: 14px !important;
}

.p-x-15 {
  padding-left: 15px !important;
  padding-right: 15px !important;
}

.p-x-16 {
  padding-left: 16px !important;
  padding-right: 16px !important;
}

.p-x-20 {
  padding-left: 20px !important;
  padding-right: 20px !important;
}

.p-x-24 {
  padding-left: 24px !important;
  padding-right: 24px !important;
}

.p-x-30 {
  padding-left: 30px !important;
  padding-right: 30px !important;
}

.p-x-32 {
  padding-left: 32px !important;
  padding-right: 32px !important;
}

.p-x-48 {
  padding-left: 48px !important;
  padding-right: 48px !important;
}

.p-y-0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.p-y-2 {
  padding-top: 2px !important;
  padding-bottom: 2px !important;
}

.p-y-4 {
  padding-top: 4px !important;
  padding-bottom: 4px !important;
}

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

.p-y-6 {
  padding-top: 7px !important;
  padding-bottom: 7px !important;
}

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

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

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

.p-y-14 {
  padding-top: 14px !important;
  padding-bottom: 14px !important;
}

.p-y-15 {
  padding-top: 15px !important;
  padding-bottom: 15px !important;
}

.p-y-16 {
  padding-top: 16px !important;
  padding-bottom: 16px !important;
}

.p-y-20 {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

.p-y-24 {
  padding-top: 24px !important;
  padding-bottom: 24px !important;
}

.p-y-30 {
  padding-top: 30px !important;
  padding-bottom: 30px !important;
}

.p-y-32 {
  padding-top: 32px !important;
  padding-bottom: 32px !important;
}

.p-y-48 {
  padding-top: 48px !important;
  padding-bottom: 48px !important;
}

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

.p-t-2 {
  padding-top: 2px !important;
}

.p-t-4 {
  padding-top: 4px !important;
}

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

.p-t-6 {
  padding-top: 7px !important;
}

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

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

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

.p-t-14 {
  padding-top: 14px !important;
}

.p-t-15 {
  padding-top: 15px !important;
}

.p-t-16 {
  padding-top: 16px !important;
}

.p-t-20 {
  padding-top: 20px !important;
}

.p-t-24 {
  padding-top: 24px !important;
}

.p-t-30 {
  padding-top: 30px !important;
}

.p-t-32 {
  padding-top: 32px !important;
}

.p-t-48 {
  padding-top: 48px !important;
}

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

.p-b-2 {
  padding-bottom: 2px !important;
}

.p-b-4 {
  padding-bottom: 4px !important;
}

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

.p-b-6 {
  padding-bottom: 7px !important;
}

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

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

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

.p-b-14 {
  padding-bottom: 14px !important;
}

.p-b-15 {
  padding-bottom: 15px !important;
}

.p-b-16 {
  padding-bottom: 16px !important;
}

.p-b-20 {
  padding-bottom: 20px !important;
}

.p-b-24 {
  padding-bottom: 24px !important;
}

.p-b-30 {
  padding-bottom: 30px !important;
}

.p-b-32 {
  padding-bottom: 32px !important;
}

.p-b-48 {
  padding-bottom: 48px !important;
}

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

.gap-2 {
  gap: 2px !important;
}

.gap-4 {
  gap: 4px !important;
}

.gap-5 {
  gap: 5px !important;
}

.gap-6 {
  gap: 7px !important;
}

.gap-8 {
  gap: 8px !important;
}

.gap-10 {
  gap: 10px !important;
}

.gap-12 {
  gap: 12px !important;
}

.gap-14 {
  gap: 14px !important;
}

.gap-15 {
  gap: 15px !important;
}

.gap-16 {
  gap: 16px !important;
}

.gap-20 {
  gap: 20px !important;
}

.gap-24 {
  gap: 24px !important;
}

.gap-30 {
  gap: 30px !important;
}

.gap-32 {
  gap: 32px !important;
}

.gap-48 {
  gap: 48px !important;
}

.b-0 {
  border: 0 !important;
}

.b-1 {
  border: 1px solid var(--mat-sys-outline-variant) !important;
}

.b-2 {
  border: 2px solid var(--mat-sys-outline-variant) !important;
}

.b-4 {
  border: 4px solid var(--mat-sys-outline-variant) !important;
}

.b-8 {
  border: 8px solid var(--mat-sys-outline-variant) !important;
}

.b-t-0 {
  border-top: 0 !important;
}

.b-t-1 {
  border-top: 1px solid var(--mat-sys-outline-variant) !important;
}

.b-t-2 {
  border-top: 2px solid var(--mat-sys-outline-variant) !important;
}

.b-t-4 {
  border-top: 4px solid var(--mat-sys-outline-variant) !important;
}

.b-t-8 {
  border-top: 8px solid var(--mat-sys-outline-variant) !important;
}

.b-b-0 {
  border-bottom: 0 !important;
}

.b-b-1 {
  border-bottom: 1px solid var(--mat-sys-outline-variant) !important;
}

.b-b-2 {
  border-bottom: 2px solid var(--mat-sys-outline-variant) !important;
}

.b-b-4 {
  border-bottom: 4px solid var(--mat-sys-outline-variant) !important;
}

.b-b-8 {
  border-bottom: 8px solid var(--mat-sys-outline-variant) !important;
}

.b-l-0 {
  border-left: 0 !important;
}

.b-l-1 {
  border-left: 1px solid var(--mat-sys-outline-variant) !important;
}

.b-l-2 {
  border-left: 2px solid var(--mat-sys-outline-variant) !important;
}

.b-l-4 {
  border-left: 4px solid var(--mat-sys-outline-variant) !important;
}

.b-l-8 {
  border-left: 8px solid var(--mat-sys-outline-variant) !important;
}

.b-r-0 {
  border-right: 0 !important;
}

.b-r-1 {
  border-right: 1px solid var(--mat-sys-outline-variant) !important;
}

.b-r-2 {
  border-right: 2px solid var(--mat-sys-outline-variant) !important;
}

.b-r-4 {
  border-right: 4px solid var(--mat-sys-outline-variant) !important;
}

.b-r-8 {
  border-right: 8px solid var(--mat-sys-outline-variant) !important;
}

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

.rounded-7 {
  border-radius: 7px !important;
}

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

.rounded-12 {
  border-radius: 21px !important;
}

.rounded-16 {
  border-radius: 28px !important;
}

.rounded-full {
  border-radius: 9999px !important;
}

.r-t-l-0 {
  border-top-left-radius: 0 !important;
}

.r-t-l-7 {
  border-top-left-radius: 7px !important;
}

.r-t-l-8 {
  border-top-left-radius: 14px !important;
}

.r-t-l-12 {
  border-top-left-radius: 21px !important;
}

.r-t-l-16 {
  border-top-left-radius: 28px !important;
}

.r-t-l-full {
  border-top-left-radius: 9999px !important;
}

.r-t-r-0 {
  border-top-right-radius: 0 !important;
}

.r-t-r-7 {
  border-top-right-radius: 7px !important;
}

.r-t-r-8 {
  border-top-right-radius: 14px !important;
}

.r-t-r-12 {
  border-top-right-radius: 21px !important;
}

.r-t-r-16 {
  border-top-right-radius: 28px !important;
}

.r-t-r-full {
  border-top-right-radius: 9999px !important;
}

.r-b-r-0 {
  border-bottom-right-radius: 0 !important;
}

.r-b-r-7 {
  border-bottom-right-radius: 7px !important;
}

.r-b-r-8 {
  border-bottom-right-radius: 14px !important;
}

.r-b-r-12 {
  border-bottom-right-radius: 21px !important;
}

.r-b-r-16 {
  border-bottom-right-radius: 28px !important;
}

.r-b-r-full {
  border-bottom-right-radius: 9999px !important;
}

.r-b-l-0 {
  border-bottom-left-radius: 0 !important;
}

.r-b-l-7 {
  border-bottom-left-radius: 7px !important;
}

.r-b-l-8 {
  border-bottom-left-radius: 14px !important;
}

.r-b-l-12 {
  border-bottom-left-radius: 21px !important;
}

.r-b-l-16 {
  border-bottom-left-radius: 28px !important;
}

.r-b-l-full {
  border-bottom-left-radius: 9999px !important;
}

.r-t-0 {
  border-top-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
}

.r-t-7 {
  border-top-left-radius: 7px !important;
  border-top-right-radius: 7px !important;
}

.r-t-8 {
  border-top-left-radius: 14px !important;
  border-top-right-radius: 14px !important;
}

.r-t-12 {
  border-top-left-radius: 21px !important;
  border-top-right-radius: 21px !important;
}

.r-t-16 {
  border-top-left-radius: 28px !important;
  border-top-right-radius: 28px !important;
}

.r-t-full {
  border-top-left-radius: 9999px !important;
  border-top-right-radius: 9999px !important;
}

.r-b-0 {
  border-bottom-left-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

.r-b-7 {
  border-bottom-left-radius: 7px !important;
  border-bottom-right-radius: 7px !important;
}

.r-b-8 {
  border-bottom-left-radius: 14px !important;
  border-bottom-right-radius: 14px !important;
}

.r-b-12 {
  border-bottom-left-radius: 21px !important;
  border-bottom-right-radius: 21px !important;
}

.r-b-16 {
  border-bottom-left-radius: 28px !important;
  border-bottom-right-radius: 28px !important;
}

.r-b-full {
  border-bottom-left-radius: 9999px !important;
  border-bottom-right-radius: 9999px !important;
}

.r-l-0 {
  border-top-left-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
}

.r-l-7 {
  border-top-left-radius: 7px !important;
  border-bottom-left-radius: 7px !important;
}

.r-l-8 {
  border-top-left-radius: 14px !important;
  border-bottom-left-radius: 14px !important;
}

.r-l-12 {
  border-top-left-radius: 21px !important;
  border-bottom-left-radius: 21px !important;
}

.r-l-16 {
  border-top-left-radius: 28px !important;
  border-bottom-left-radius: 28px !important;
}

.r-l-full {
  border-top-left-radius: 9999px !important;
  border-bottom-left-radius: 9999px !important;
}

.r-r-0 {
  border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

.r-r-7 {
  border-top-right-radius: 7px !important;
  border-bottom-right-radius: 7px !important;
}

.r-r-8 {
  border-top-right-radius: 14px !important;
  border-bottom-right-radius: 14px !important;
}

.r-r-12 {
  border-top-right-radius: 21px !important;
  border-bottom-right-radius: 21px !important;
}

.r-r-16 {
  border-top-right-radius: 28px !important;
  border-bottom-right-radius: 28px !important;
}

.r-r-full {
  border-top-right-radius: 9999px !important;
  border-bottom-right-radius: 9999px !important;
}

.f-s-0 {
  font-size: 0 !important;
}

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

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

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

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

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

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

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

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

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

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

.f-w-100 {
  font-weight: 100 !important;
}

.f-w-200 {
  font-weight: 200 !important;
}

.f-w-300 {
  font-weight: 300 !important;
}

.f-w-400 {
  font-weight: 400 !important;
}

.f-w-500 {
  font-weight: 500 !important;
}

.f-w-600 {
  font-weight: 600 !important;
}

.f-w-700 {
  font-weight: 700 !important;
}

.f-w-800 {
  font-weight: 800 !important;
}

.f-w-900 {
  font-weight: 900 !important;
}

.font-italic {
  font-style: italic !important;
}

.font-normal {
  font-style: normal !important;
}

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

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

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

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

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

.text-line-through {
  text-decoration: line-through !important;
}

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

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

.text-lowercase {
  text-transform: lowercase !important;
}

.text-wrap {
  white-space: normal !important;
}

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

.text-break {
  word-wrap: break-word !important;
  word-break: break-word !important;
}

.text-ellipsis {
  text-overflow: ellipsis !important;
}

.text-reset {
  color: inherit !important;
}

.text-current {
  color: currentColor !important;
}

[dir=ltr] .m-r-0 {
  margin-right: 0 !important;
}

[dir=ltr] .m-r-2 {
  margin-right: 2px !important;
}

[dir=ltr] .m-r-4 {
  margin-right: 4px !important;
}

[dir=ltr] .m-r-5 {
  margin-right: 5px !important;
}

[dir=ltr] .m-r-6 {
  margin-right: 7px !important;
}

[dir=ltr] .m-r-8 {
  margin-right: 8px !important;
}

[dir=ltr] .m-r-10 {
  margin-right: 10px !important;
}

[dir=ltr] .m-r-12 {
  margin-right: 12px !important;
}

[dir=ltr] .m-r-14 {
  margin-right: 14px !important;
}

[dir=ltr] .m-r-15 {
  margin-right: 15px !important;
}

[dir=ltr] .m-r-16 {
  margin-right: 16px !important;
}

[dir=ltr] .m-r-20 {
  margin-right: 20px !important;
}

[dir=ltr] .m-r-24 {
  margin-right: 24px !important;
}

[dir=ltr] .m-r-30 {
  margin-right: 30px !important;
}

[dir=ltr] .m-r-32 {
  margin-right: 32px !important;
}

[dir=ltr] .m-r-48 {
  margin-right: 48px !important;
}

[dir=ltr] .m-r-auto {
  margin-right: auto !important;
}

[dir=ltr] .m-l-0 {
  margin-left: 0 !important;
}

[dir=ltr] .m-l-2 {
  margin-left: 2px !important;
}

[dir=ltr] .m-l-4 {
  margin-left: 4px !important;
}

[dir=ltr] .m-l-5 {
  margin-left: 5px !important;
}

[dir=ltr] .m-l-6 {
  margin-left: 7px !important;
}

[dir=ltr] .m-l-8 {
  margin-left: 8px !important;
}

[dir=ltr] .m-l-10 {
  margin-left: 10px !important;
}

[dir=ltr] .m-l-12 {
  margin-left: 12px !important;
}

[dir=ltr] .m-l-14 {
  margin-left: 14px !important;
}

[dir=ltr] .m-l-15 {
  margin-left: 15px !important;
}

[dir=ltr] .m-l-16 {
  margin-left: 16px !important;
}

[dir=ltr] .m-l-20 {
  margin-left: 20px !important;
}

[dir=ltr] .m-l-24 {
  margin-left: 24px !important;
}

[dir=ltr] .m-l-30 {
  margin-left: 30px !important;
}

[dir=ltr] .m-l-32 {
  margin-left: 32px !important;
}

[dir=ltr] .m-l-48 {
  margin-left: 48px !important;
}

[dir=ltr] .m-l-auto {
  margin-left: auto !important;
}

[dir=ltr] .p-l-0 {
  padding-left: 0 !important;
}

[dir=ltr] .p-l-2 {
  padding-left: 2px !important;
}

[dir=ltr] .p-l-4 {
  padding-left: 4px !important;
}

[dir=ltr] .p-l-5 {
  padding-left: 5px !important;
}

[dir=ltr] .p-l-6 {
  padding-left: 7px !important;
}

[dir=ltr] .p-l-8 {
  padding-left: 8px !important;
}

[dir=ltr] .p-l-10 {
  padding-left: 10px !important;
}

[dir=ltr] .p-l-12 {
  padding-left: 12px !important;
}

[dir=ltr] .p-l-14 {
  padding-left: 14px !important;
}

[dir=ltr] .p-l-15 {
  padding-left: 15px !important;
}

[dir=ltr] .p-l-16 {
  padding-left: 16px !important;
}

[dir=ltr] .p-l-20 {
  padding-left: 20px !important;
}

[dir=ltr] .p-l-24 {
  padding-left: 24px !important;
}

[dir=ltr] .p-l-30 {
  padding-left: 30px !important;
}

[dir=ltr] .p-l-32 {
  padding-left: 32px !important;
}

[dir=ltr] .p-l-48 {
  padding-left: 48px !important;
}

[dir=ltr] .p-r-0 {
  padding-right: 0 !important;
}

[dir=ltr] .p-r-2 {
  padding-right: 2px !important;
}

[dir=ltr] .p-r-4 {
  padding-right: 4px !important;
}

[dir=ltr] .p-r-5 {
  padding-right: 5px !important;
}

[dir=ltr] .p-r-6 {
  padding-right: 7px !important;
}

[dir=ltr] .p-r-8 {
  padding-right: 8px !important;
}

[dir=ltr] .p-r-10 {
  padding-right: 10px !important;
}

[dir=ltr] .p-r-12 {
  padding-right: 12px !important;
}

[dir=ltr] .p-r-14 {
  padding-right: 14px !important;
}

[dir=ltr] .p-r-15 {
  padding-right: 15px !important;
}

[dir=ltr] .p-r-16 {
  padding-right: 16px !important;
}

[dir=ltr] .p-r-20 {
  padding-right: 20px !important;
}

[dir=ltr] .p-r-24 {
  padding-right: 24px !important;
}

[dir=ltr] .p-r-30 {
  padding-right: 30px !important;
}

[dir=ltr] .p-r-32 {
  padding-right: 32px !important;
}

[dir=ltr] .p-r-48 {
  padding-right: 48px !important;
}

[dir=rtl] .m-r-0 {
  margin-left: 0 !important;
}

[dir=rtl] .m-r-2 {
  margin-left: 2px !important;
}

[dir=rtl] .m-r-4 {
  margin-left: 4px !important;
}

[dir=rtl] .m-r-5 {
  margin-left: 5px !important;
}

[dir=rtl] .m-r-6 {
  margin-left: 7px !important;
}

[dir=rtl] .m-r-8 {
  margin-left: 8px !important;
}

[dir=rtl] .m-r-10 {
  margin-left: 10px !important;
}

[dir=rtl] .m-r-12 {
  margin-left: 12px !important;
}

[dir=rtl] .m-r-14 {
  margin-left: 14px !important;
}

[dir=rtl] .m-r-15 {
  margin-left: 15px !important;
}

[dir=rtl] .m-r-16 {
  margin-left: 16px !important;
}

[dir=rtl] .m-r-20 {
  margin-left: 20px !important;
}

[dir=rtl] .m-r-24 {
  margin-left: 24px !important;
}

[dir=rtl] .m-r-30 {
  margin-left: 30px !important;
}

[dir=rtl] .m-r-32 {
  margin-left: 32px !important;
}

[dir=rtl] .m-r-48 {
  margin-left: 48px !important;
}

[dir=rtl] .m-r-auto {
  margin-left: auto !important;
}

[dir=rtl] .m-l-0 {
  margin-right: 0 !important;
}

[dir=rtl] .m-l-2 {
  margin-right: 2px !important;
}

[dir=rtl] .m-l-4 {
  margin-right: 4px !important;
}

[dir=rtl] .m-l-5 {
  margin-right: 5px !important;
}

[dir=rtl] .m-l-6 {
  margin-right: 7px !important;
}

[dir=rtl] .m-l-8 {
  margin-right: 8px !important;
}

[dir=rtl] .m-l-10 {
  margin-right: 10px !important;
}

[dir=rtl] .m-l-12 {
  margin-right: 12px !important;
}

[dir=rtl] .m-l-14 {
  margin-right: 14px !important;
}

[dir=rtl] .m-l-15 {
  margin-right: 15px !important;
}

[dir=rtl] .m-l-16 {
  margin-right: 16px !important;
}

[dir=rtl] .m-l-20 {
  margin-right: 20px !important;
}

[dir=rtl] .m-l-24 {
  margin-right: 24px !important;
}

[dir=rtl] .m-l-30 {
  margin-right: 30px !important;
}

[dir=rtl] .m-l-32 {
  margin-right: 32px !important;
}

[dir=rtl] .m-l-48 {
  margin-right: 48px !important;
}

[dir=rtl] .m-l-auto {
  margin-right: auto !important;
}

[dir=rtl] .p-l-0 {
  padding-right: 0 !important;
}

[dir=rtl] .p-l-2 {
  padding-right: 2px !important;
}

[dir=rtl] .p-l-4 {
  padding-right: 4px !important;
}

[dir=rtl] .p-l-5 {
  padding-right: 5px !important;
}

[dir=rtl] .p-l-6 {
  padding-right: 7px !important;
}

[dir=rtl] .p-l-8 {
  padding-right: 8px !important;
}

[dir=rtl] .p-l-10 {
  padding-right: 10px !important;
}

[dir=rtl] .p-l-12 {
  padding-right: 12px !important;
}

[dir=rtl] .p-l-14 {
  padding-right: 14px !important;
}

[dir=rtl] .p-l-15 {
  padding-right: 15px !important;
}

[dir=rtl] .p-l-16 {
  padding-right: 16px !important;
}

[dir=rtl] .p-l-20 {
  padding-right: 20px !important;
}

[dir=rtl] .p-l-24 {
  padding-right: 24px !important;
}

[dir=rtl] .p-l-30 {
  padding-right: 30px !important;
}

[dir=rtl] .p-l-32 {
  padding-right: 32px !important;
}

[dir=rtl] .p-l-48 {
  padding-right: 48px !important;
}

[dir=rtl] .p-r-0 {
  padding-left: 0 !important;
}

[dir=rtl] .p-r-2 {
  padding-left: 2px !important;
}

[dir=rtl] .p-r-4 {
  padding-left: 4px !important;
}

[dir=rtl] .p-r-5 {
  padding-left: 5px !important;
}

[dir=rtl] .p-r-6 {
  padding-left: 7px !important;
}

[dir=rtl] .p-r-8 {
  padding-left: 8px !important;
}

[dir=rtl] .p-r-10 {
  padding-left: 10px !important;
}

[dir=rtl] .p-r-12 {
  padding-left: 12px !important;
}

[dir=rtl] .p-r-14 {
  padding-left: 14px !important;
}

[dir=rtl] .p-r-15 {
  padding-left: 15px !important;
}

[dir=rtl] .p-r-16 {
  padding-left: 16px !important;
}

[dir=rtl] .p-r-20 {
  padding-left: 20px !important;
}

[dir=rtl] .p-r-24 {
  padding-left: 24px !important;
}

[dir=rtl] .p-r-30 {
  padding-left: 30px !important;
}

[dir=rtl] .p-r-32 {
  padding-left: 32px !important;
}

[dir=rtl] .p-r-48 {
  padding-left: 48px !important;
}

.blank-layout-container {
  height: 100vh;
  display: flex;
  background-size: cover;
  align-items: center;
}

.auth-title {
  font-size: 36px;
  line-height: 44px;
}

.bg-gredient::before {
  content: "";
  position: absolute;
  height: 100%;
  width: 100%;
  opacity: 0.3;
  background: radial-gradient(rgb(210, 241, 223), rgb(211, 215, 250), rgb(186, 216, 244)) 0% 0%/400% 400%;
  animation: 15s ease 0s infinite normal none running gradient;
  z-index: -1;
}

@keyframes gradient {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 50% 0%;
  }
}
.img-height {
  height: calc(100vh - 83px);
}

.custom-row.row {
  margin-right: -8px;
  margin-left: -8px;
}
.custom-row.row .col-2,
.custom-row.row .col-12 {
  padding-right: 8px;
  padding-left: 8px;
}

.or-border {
  position: relative;
  text-align: center;
}
.or-border:before {
  content: "";
  position: absolute;
  left: 0;
  width: 120px;
  top: 50%;
  height: 1px;
  background: var(--mat-sys-outline);
}
.or-border:after {
  content: "";
  position: absolute;
  right: 0;
  width: 120px;
  top: 50%;
  height: 1px;
  background: var(--mat-sys-outline);
}

.boxed-auth {
  width: 100%;
  max-width: 480px;
  margin: 0 auto;
}

.max-width-form {
  max-width: 450px;
}

.mat-mdc-form-field.mat-form-field-invalid .mdc-notched-outline__leading,
.mat-mdc-form-field.mat-form-field-invalid .mdc-notched-outline__notch,
.mat-mdc-form-field.mat-form-field-invalid .mdc-notched-outline__trailing {
  border-color: var(--mat-sys-error) !important;
}

.error-msg {
  position: absolute;
  top: -19px;
  right: 3px;
}

.theme-select {
  width: 150px;
  height: 36px;
}
.theme-select .mat-form-field-infix {
  padding: 6px 0 1px !important;
}
.theme-select .mat-mdc-form-field-subscript-wrapper {
  display: none;
}
.theme-select .mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__leading {
  border-top-left-radius: 7px;
  border-bottom-left-radius: 7px;
  border-color: var(--mat-sys-outline-variant);
}
.theme-select .mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__trailing {
  border-top-right-radius: 7px;
  border-bottom-right-radius: 7px;
  border-color: var(--mat-sys-outline-variant);
}
.theme-select .mat-mdc-form-field-flex {
  height: 36px;
  align-items: center;
}

.timeline {
  position: relative;
}
.timeline .timeline-item {
  position: relative;
  height: 70px;
}
.timeline .timeline-item .time {
  padding: 6px 16px 6px 0;
  min-width: 90px;
  flex-shrink: 0;
}
.timeline .timeline-item .desc {
  padding: 6px 16px;
}
.timeline .timeline-item .timline-border {
  width: 1px;
  height: 100%;
  background-color: var(--mat-sys-outline-variant);
  flex-shrink: 0;
}
.timeline .timeline-item:last-child {
  height: 25px;
}
.timeline .timeline-item .point {
  flex-direction: column;
}
.timeline .timeline-item .point .timeline-badge {
  width: 12px;
  height: 12px;
  border-radius: 50px;
  background-color: transparent;
  flex-shrink: 0;
}
.timeline .timeline-item .point .timeline-badge.border-primary {
  border: 2px solid var(--mat-sys-primary) !important;
}
.timeline .timeline-item .point .timeline-badge.border-accent {
  border: 2px solid var(--mat-sys-secondary) !important;
}
.timeline .timeline-item .point .timeline-badge.border-success {
  border: 2px solid #13deb9;
}
.timeline .timeline-item .point .timeline-badge.border-warning {
  border: 2px solid #ffae1f;
}
.timeline .timeline-item .point .timeline-badge.border-error {
  border: 2px solid var(--mat-sys-error);
}
.timeline .timeline-item .point .timeline-border {
  width: 1px;
  height: 100%;
  background-color: var(--mat-sys-outline-variant);
  flex-shrink: 0;
}
.timeline .timeline-item:last-child .timeline-border {
  display: none !important;
}

.user-category {
  margin-top: -45px;
  z-index: 1;
  position: relative;
}

.card-overlay {
  position: absolute;
  top: 0;
  width: 100%;
  height: 242px;
}

.text-decoration-line-through {
  text-decoration: line-through;
}

.cart-btn {
  position: absolute !important;
  right: 16px;
  top: -21px;
}
/*!*********************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[4].rules[0].oneOf[0].use[2]!./node_modules/sweetalert2/dist/sweetalert2.min.css?ngGlobalStyle ***!
  \*********************************************************************************************************************************************************************************************************************************************************/
:root{--swal2-outline: 0 0 0 3px rgba(100, 150, 200, 0.5);--swal2-container-padding: 0.625em;--swal2-backdrop: rgba(0, 0, 0, 0.4);--swal2-backdrop-transition: background-color 0.15s;--swal2-width: 32em;--swal2-padding: 0 0 1.25em;--swal2-border: none;--swal2-border-radius: 0.3125rem;--swal2-background: white;--swal2-color: #545454;--swal2-show-animation: swal2-show 0.3s;--swal2-hide-animation: swal2-hide 0.15s forwards;--swal2-icon-zoom: 1;--swal2-icon-animations: true;--swal2-title-padding: 0.8em 1em 0;--swal2-html-container-padding: 1em 1.6em 0.3em;--swal2-input-border: 1px solid #d9d9d9;--swal2-input-border-radius: 0.1875em;--swal2-input-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.06), 0 0 0 3px transparent;--swal2-input-background: transparent;--swal2-input-transition: border-color 0.2s, box-shadow 0.2s;--swal2-input-hover-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.06), 0 0 0 3px transparent;--swal2-input-focus-border: 1px solid #b4dbed;--swal2-input-focus-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.06), 0 0 0 3px rgba(100, 150, 200, 0.5);--swal2-progress-step-background: #add8e6;--swal2-validation-message-background: #f0f0f0;--swal2-validation-message-color: #666;--swal2-footer-border-color: #eee;--swal2-footer-background: transparent;--swal2-footer-color: inherit;--swal2-timer-progress-bar-background: rgba(0, 0, 0, 0.3);--swal2-close-button-position: initial;--swal2-close-button-inset: auto;--swal2-close-button-font-size: 2.5em;--swal2-close-button-color: #ccc;--swal2-close-button-transition: color 0.2s, box-shadow 0.2s;--swal2-close-button-outline: initial;--swal2-close-button-box-shadow: inset 0 0 0 3px transparent;--swal2-close-button-focus-box-shadow: inset var(--swal2-outline);--swal2-close-button-hover-transform: none;--swal2-actions-justify-content: center;--swal2-actions-width: auto;--swal2-actions-margin: 1.25em auto 0;--swal2-actions-padding: 0;--swal2-actions-border-radius: 0;--swal2-actions-background: transparent;--swal2-action-button-transition: background-color 0.2s, box-shadow 0.2s;--swal2-action-button-hover: black 10%;--swal2-action-button-active: black 10%;--swal2-confirm-button-box-shadow: none;--swal2-confirm-button-border-radius: 0.25em;--swal2-confirm-button-background-color: #7066e0;--swal2-confirm-button-color: #fff;--swal2-deny-button-box-shadow: none;--swal2-deny-button-border-radius: 0.25em;--swal2-deny-button-background-color: #dc3741;--swal2-deny-button-color: #fff;--swal2-cancel-button-box-shadow: none;--swal2-cancel-button-border-radius: 0.25em;--swal2-cancel-button-background-color: #6e7881;--swal2-cancel-button-color: #fff;--swal2-toast-show-animation: swal2-toast-show 0.5s;--swal2-toast-hide-animation: swal2-toast-hide 0.1s forwards;--swal2-toast-border: none;--swal2-toast-box-shadow: 0 0 1px hsl(0deg 0% 0% / 0.075), 0 1px 2px hsl(0deg 0% 0% / 0.075), 1px 2px 4px hsl(0deg 0% 0% / 0.075), 1px 3px 8px hsl(0deg 0% 0% / 0.075), 2px 4px 16px hsl(0deg 0% 0% / 0.075)}[data-swal2-theme=dark]{--swal2-dark-theme-black: #19191a;--swal2-dark-theme-white: #e1e1e1;--swal2-background: var(--swal2-dark-theme-black);--swal2-color: var(--swal2-dark-theme-white);--swal2-footer-border-color: #555;--swal2-input-background: color-mix(in srgb, var(--swal2-dark-theme-black), var(--swal2-dark-theme-white) 10%);--swal2-validation-message-background: color-mix( in srgb, var(--swal2-dark-theme-black), var(--swal2-dark-theme-white) 10% );--swal2-validation-message-color: var(--swal2-dark-theme-white);--swal2-timer-progress-bar-background: rgba(255, 255, 255, 0.7)}@media(prefers-color-scheme: dark){[data-swal2-theme=auto]{--swal2-dark-theme-black: #19191a;--swal2-dark-theme-white: #e1e1e1;--swal2-background: var(--swal2-dark-theme-black);--swal2-color: var(--swal2-dark-theme-white);--swal2-footer-border-color: #555;--swal2-input-background: color-mix(in srgb, var(--swal2-dark-theme-black), var(--swal2-dark-theme-white) 10%);--swal2-validation-message-background: color-mix( in srgb, var(--swal2-dark-theme-black), var(--swal2-dark-theme-white) 10% );--swal2-validation-message-color: var(--swal2-dark-theme-white);--swal2-timer-progress-bar-background: rgba(255, 255, 255, 0.7)}}body.swal2-shown:not(.swal2-no-backdrop,.swal2-toast-shown){overflow:hidden}body.swal2-height-auto{height:auto !important}body.swal2-no-backdrop .swal2-container{background-color:rgba(0,0,0,0) !important;pointer-events:none}body.swal2-no-backdrop .swal2-container .swal2-popup{pointer-events:all}body.swal2-no-backdrop .swal2-container .swal2-modal{box-shadow:0 0 10px var(--swal2-backdrop)}body.swal2-toast-shown .swal2-container{box-sizing:border-box;width:360px;max-width:100%;background-color:rgba(0,0,0,0);pointer-events:none}body.swal2-toast-shown .swal2-container.swal2-top{inset:0 auto auto 50%;transform:translateX(-50%)}body.swal2-toast-shown .swal2-container.swal2-top-end,body.swal2-toast-shown .swal2-container.swal2-top-right{inset:0 0 auto auto}body.swal2-toast-shown .swal2-container.swal2-top-start,body.swal2-toast-shown .swal2-container.swal2-top-left{inset:0 auto auto 0}body.swal2-toast-shown .swal2-container.swal2-center-start,body.swal2-toast-shown .swal2-container.swal2-center-left{inset:50% auto auto 0;transform:translateY(-50%)}body.swal2-toast-shown .swal2-container.swal2-center{inset:50% auto auto 50%;transform:translate(-50%, -50%)}body.swal2-toast-shown .swal2-container.swal2-center-end,body.swal2-toast-shown .swal2-container.swal2-center-right{inset:50% 0 auto auto;transform:translateY(-50%)}body.swal2-toast-shown .swal2-container.swal2-bottom-start,body.swal2-toast-shown .swal2-container.swal2-bottom-left{inset:auto auto 0 0}body.swal2-toast-shown .swal2-container.swal2-bottom{inset:auto auto 0 50%;transform:translateX(-50%)}body.swal2-toast-shown .swal2-container.swal2-bottom-end,body.swal2-toast-shown .swal2-container.swal2-bottom-right{inset:auto 0 0 auto}@media print{body.swal2-shown:not(.swal2-no-backdrop,.swal2-toast-shown){overflow-y:scroll !important}body.swal2-shown:not(.swal2-no-backdrop,.swal2-toast-shown)>[aria-hidden=true]{display:none}body.swal2-shown:not(.swal2-no-backdrop,.swal2-toast-shown) .swal2-container{position:static !important}}div:where(.swal2-container){display:grid;position:fixed;z-index:1060;inset:0;box-sizing:border-box;grid-template-areas:"top-start     top            top-end" "center-start  center         center-end" "bottom-start  bottom-center  bottom-end";grid-template-rows:minmax(min-content, auto) minmax(min-content, auto) minmax(min-content, auto);height:100%;padding:var(--swal2-container-padding);overflow-x:hidden;transition:var(--swal2-backdrop-transition);-webkit-overflow-scrolling:touch}div:where(.swal2-container).swal2-backdrop-show,div:where(.swal2-container).swal2-noanimation{background:var(--swal2-backdrop)}div:where(.swal2-container).swal2-backdrop-hide{background:rgba(0,0,0,0) !important}div:where(.swal2-container).swal2-top-start,div:where(.swal2-container).swal2-center-start,div:where(.swal2-container).swal2-bottom-start{grid-template-columns:minmax(0, 1fr) auto auto}div:where(.swal2-container).swal2-top,div:where(.swal2-container).swal2-center,div:where(.swal2-container).swal2-bottom{grid-template-columns:auto minmax(0, 1fr) auto}div:where(.swal2-container).swal2-top-end,div:where(.swal2-container).swal2-center-end,div:where(.swal2-container).swal2-bottom-end{grid-template-columns:auto auto minmax(0, 1fr)}div:where(.swal2-container).swal2-top-start>.swal2-popup{align-self:start}div:where(.swal2-container).swal2-top>.swal2-popup{grid-column:2;place-self:start center}div:where(.swal2-container).swal2-top-end>.swal2-popup,div:where(.swal2-container).swal2-top-right>.swal2-popup{grid-column:3;place-self:start end}div:where(.swal2-container).swal2-center-start>.swal2-popup,div:where(.swal2-container).swal2-center-left>.swal2-popup{grid-row:2;align-self:center}div:where(.swal2-container).swal2-center>.swal2-popup{grid-column:2;grid-row:2;place-self:center center}div:where(.swal2-container).swal2-center-end>.swal2-popup,div:where(.swal2-container).swal2-center-right>.swal2-popup{grid-column:3;grid-row:2;place-self:center end}div:where(.swal2-container).swal2-bottom-start>.swal2-popup,div:where(.swal2-container).swal2-bottom-left>.swal2-popup{grid-column:1;grid-row:3;align-self:end}div:where(.swal2-container).swal2-bottom>.swal2-popup{grid-column:2;grid-row:3;place-self:end center}div:where(.swal2-container).swal2-bottom-end>.swal2-popup,div:where(.swal2-container).swal2-bottom-right>.swal2-popup{grid-column:3;grid-row:3;place-self:end end}div:where(.swal2-container).swal2-grow-row>.swal2-popup,div:where(.swal2-container).swal2-grow-fullscreen>.swal2-popup{grid-column:1/4;width:100%}div:where(.swal2-container).swal2-grow-column>.swal2-popup,div:where(.swal2-container).swal2-grow-fullscreen>.swal2-popup{grid-row:1/4;align-self:stretch}div:where(.swal2-container).swal2-no-transition{transition:none !important}div:where(.swal2-container)[popover]{width:auto;border:0}div:where(.swal2-container) div:where(.swal2-popup){display:none;position:relative;box-sizing:border-box;grid-template-columns:minmax(0, 100%);width:var(--swal2-width);max-width:100%;padding:var(--swal2-padding);border:var(--swal2-border);border-radius:var(--swal2-border-radius);background:var(--swal2-background);color:var(--swal2-color);font-family:inherit;font-size:1rem;container-name:swal2-popup}div:where(.swal2-container) div:where(.swal2-popup):focus{outline:none}div:where(.swal2-container) div:where(.swal2-popup).swal2-loading{overflow-y:hidden}div:where(.swal2-container) div:where(.swal2-popup).swal2-draggable{cursor:grab}div:where(.swal2-container) div:where(.swal2-popup).swal2-draggable div:where(.swal2-icon){cursor:grab}div:where(.swal2-container) div:where(.swal2-popup).swal2-dragging{cursor:grabbing}div:where(.swal2-container) div:where(.swal2-popup).swal2-dragging div:where(.swal2-icon){cursor:grabbing}div:where(.swal2-container) h2:where(.swal2-title){position:relative;max-width:100%;margin:0;padding:var(--swal2-title-padding);color:inherit;font-size:1.875em;font-weight:600;text-align:center;text-transform:none;overflow-wrap:break-word;cursor:initial}div:where(.swal2-container) div:where(.swal2-actions){display:flex;z-index:1;box-sizing:border-box;flex-wrap:wrap;align-items:center;justify-content:var(--swal2-actions-justify-content);width:var(--swal2-actions-width);margin:var(--swal2-actions-margin);padding:var(--swal2-actions-padding);border-radius:var(--swal2-actions-border-radius);background:var(--swal2-actions-background)}div:where(.swal2-container) div:where(.swal2-loader){display:none;align-items:center;justify-content:center;width:2.2em;height:2.2em;margin:0 1.875em;animation:swal2-rotate-loading 1.5s linear 0s infinite normal;border-width:.25em;border-style:solid;border-radius:100%;border-color:#2778c4 rgba(0,0,0,0) #2778c4 rgba(0,0,0,0)}div:where(.swal2-container) button:where(.swal2-styled){margin:.3125em;padding:.625em 1.1em;transition:var(--swal2-action-button-transition);border:none;box-shadow:0 0 0 3px rgba(0,0,0,0);font-weight:500}div:where(.swal2-container) button:where(.swal2-styled):not([disabled]){cursor:pointer}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-confirm){border-radius:var(--swal2-confirm-button-border-radius);background:initial;background-color:var(--swal2-confirm-button-background-color);box-shadow:var(--swal2-confirm-button-box-shadow);color:var(--swal2-confirm-button-color);font-size:1em}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-confirm):hover{background-color:color-mix(in srgb, var(--swal2-confirm-button-background-color), var(--swal2-action-button-hover))}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-confirm):active{background-color:color-mix(in srgb, var(--swal2-confirm-button-background-color), var(--swal2-action-button-active))}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-deny){border-radius:var(--swal2-deny-button-border-radius);background:initial;background-color:var(--swal2-deny-button-background-color);box-shadow:var(--swal2-deny-button-box-shadow);color:var(--swal2-deny-button-color);font-size:1em}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-deny):hover{background-color:color-mix(in srgb, var(--swal2-deny-button-background-color), var(--swal2-action-button-hover))}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-deny):active{background-color:color-mix(in srgb, var(--swal2-deny-button-background-color), var(--swal2-action-button-active))}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-cancel){border-radius:var(--swal2-cancel-button-border-radius);background:initial;background-color:var(--swal2-cancel-button-background-color);box-shadow:var(--swal2-cancel-button-box-shadow);color:var(--swal2-cancel-button-color);font-size:1em}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-cancel):hover{background-color:color-mix(in srgb, var(--swal2-cancel-button-background-color), var(--swal2-action-button-hover))}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-cancel):active{background-color:color-mix(in srgb, var(--swal2-cancel-button-background-color), var(--swal2-action-button-active))}div:where(.swal2-container) button:where(.swal2-styled):focus-visible{outline:none;box-shadow:var(--swal2-action-button-focus-box-shadow)}div:where(.swal2-container) button:where(.swal2-styled)[disabled]:not(.swal2-loading){opacity:.4}div:where(.swal2-container) button:where(.swal2-styled)::-moz-focus-inner{border:0}div:where(.swal2-container) div:where(.swal2-footer){margin:1em 0 0;padding:1em 1em 0;border-top:1px solid var(--swal2-footer-border-color);background:var(--swal2-footer-background);color:var(--swal2-footer-color);font-size:1em;text-align:center;cursor:initial}div:where(.swal2-container) .swal2-timer-progress-bar-container{position:absolute;right:0;bottom:0;left:0;grid-column:auto !important;overflow:hidden;border-bottom-right-radius:var(--swal2-border-radius);border-bottom-left-radius:var(--swal2-border-radius)}div:where(.swal2-container) div:where(.swal2-timer-progress-bar){width:100%;height:.25em;background:var(--swal2-timer-progress-bar-background)}div:where(.swal2-container) img:where(.swal2-image){max-width:100%;margin:2em auto 1em;cursor:initial}div:where(.swal2-container) button:where(.swal2-close){position:var(--swal2-close-button-position);inset:var(--swal2-close-button-inset);z-index:2;align-items:center;justify-content:center;width:1.2em;height:1.2em;margin-top:0;margin-right:0;margin-bottom:-1.2em;padding:0;overflow:hidden;transition:var(--swal2-close-button-transition);border:none;border-radius:var(--swal2-border-radius);outline:var(--swal2-close-button-outline);background:rgba(0,0,0,0);color:var(--swal2-close-button-color);font-family:monospace;font-size:var(--swal2-close-button-font-size);cursor:pointer;justify-self:end}div:where(.swal2-container) button:where(.swal2-close):hover{transform:var(--swal2-close-button-hover-transform);background:rgba(0,0,0,0);color:#f27474}div:where(.swal2-container) button:where(.swal2-close):focus-visible{outline:none;box-shadow:var(--swal2-close-button-focus-box-shadow)}div:where(.swal2-container) button:where(.swal2-close)::-moz-focus-inner{border:0}div:where(.swal2-container) div:where(.swal2-html-container){z-index:1;justify-content:center;margin:0;padding:var(--swal2-html-container-padding);overflow:auto;color:inherit;font-size:1.125em;font-weight:normal;line-height:normal;text-align:center;overflow-wrap:break-word;word-break:break-word;cursor:initial}div:where(.swal2-container) input:where(.swal2-input),div:where(.swal2-container) input:where(.swal2-file),div:where(.swal2-container) textarea:where(.swal2-textarea),div:where(.swal2-container) select:where(.swal2-select),div:where(.swal2-container) div:where(.swal2-radio),div:where(.swal2-container) label:where(.swal2-checkbox){margin:1em 2em 3px}div:where(.swal2-container) input:where(.swal2-input),div:where(.swal2-container) input:where(.swal2-file),div:where(.swal2-container) textarea:where(.swal2-textarea){box-sizing:border-box;width:auto;transition:var(--swal2-input-transition);border:var(--swal2-input-border);border-radius:var(--swal2-input-border-radius);background:var(--swal2-input-background);box-shadow:var(--swal2-input-box-shadow);color:inherit;font-size:1.125em}div:where(.swal2-container) input:where(.swal2-input).swal2-inputerror,div:where(.swal2-container) input:where(.swal2-file).swal2-inputerror,div:where(.swal2-container) textarea:where(.swal2-textarea).swal2-inputerror{border-color:#f27474 !important;box-shadow:0 0 2px #f27474 !important}div:where(.swal2-container) input:where(.swal2-input):hover,div:where(.swal2-container) input:where(.swal2-file):hover,div:where(.swal2-container) textarea:where(.swal2-textarea):hover{box-shadow:var(--swal2-input-hover-box-shadow)}div:where(.swal2-container) input:where(.swal2-input):focus,div:where(.swal2-container) input:where(.swal2-file):focus,div:where(.swal2-container) textarea:where(.swal2-textarea):focus{border:var(--swal2-input-focus-border);outline:none;box-shadow:var(--swal2-input-focus-box-shadow)}div:where(.swal2-container) input:where(.swal2-input)::placeholder,div:where(.swal2-container) input:where(.swal2-file)::placeholder,div:where(.swal2-container) textarea:where(.swal2-textarea)::placeholder{color:#ccc}div:where(.swal2-container) .swal2-range{margin:1em 2em 3px;background:var(--swal2-background)}div:where(.swal2-container) .swal2-range input{width:80%}div:where(.swal2-container) .swal2-range output{width:20%;color:inherit;font-weight:600;text-align:center}div:where(.swal2-container) .swal2-range input,div:where(.swal2-container) .swal2-range output{height:2.625em;padding:0;font-size:1.125em;line-height:2.625em}div:where(.swal2-container) .swal2-input{height:2.625em;padding:0 .75em}div:where(.swal2-container) .swal2-file{width:75%;margin-right:auto;margin-left:auto;background:var(--swal2-input-background);font-size:1.125em}div:where(.swal2-container) .swal2-textarea{height:6.75em;padding:.75em}div:where(.swal2-container) .swal2-select{min-width:50%;max-width:100%;padding:.375em .625em;background:var(--swal2-input-background);color:inherit;font-size:1.125em}div:where(.swal2-container) .swal2-radio,div:where(.swal2-container) .swal2-checkbox{align-items:center;justify-content:center;background:var(--swal2-background);color:inherit}div:where(.swal2-container) .swal2-radio label,div:where(.swal2-container) .swal2-checkbox label{margin:0 .6em;font-size:1.125em}div:where(.swal2-container) .swal2-radio input,div:where(.swal2-container) .swal2-checkbox input{flex-shrink:0;margin:0 .4em}div:where(.swal2-container) label:where(.swal2-input-label){display:flex;justify-content:center;margin:1em auto 0}div:where(.swal2-container) div:where(.swal2-validation-message){align-items:center;justify-content:center;margin:1em 0 0;padding:.625em;overflow:hidden;background:var(--swal2-validation-message-background);color:var(--swal2-validation-message-color);font-size:1em;font-weight:300}div:where(.swal2-container) div:where(.swal2-validation-message)::before{content:"!";display:inline-block;width:1.5em;min-width:1.5em;height:1.5em;margin:0 .625em;border-radius:50%;background-color:#f27474;color:#fff;font-weight:600;line-height:1.5em;text-align:center}div:where(.swal2-container) .swal2-progress-steps{flex-wrap:wrap;align-items:center;max-width:100%;margin:1.25em auto;padding:0;background:rgba(0,0,0,0);font-weight:600}div:where(.swal2-container) .swal2-progress-steps li{display:inline-block;position:relative}div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step{z-index:20;flex-shrink:0;width:2em;height:2em;border-radius:2em;background:#2778c4;color:#fff;line-height:2em;text-align:center}div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step.swal2-active-progress-step{background:#2778c4}div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step.swal2-active-progress-step~.swal2-progress-step{background:var(--swal2-progress-step-background);color:#fff}div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step.swal2-active-progress-step~.swal2-progress-step-line{background:var(--swal2-progress-step-background)}div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step-line{z-index:10;flex-shrink:0;width:2.5em;height:.4em;margin:0 -1px;background:#2778c4}div:where(.swal2-icon){position:relative;box-sizing:content-box;justify-content:center;width:5em;height:5em;margin:2.5em auto .6em;zoom:var(--swal2-icon-zoom);border:.25em solid rgba(0,0,0,0);border-radius:50%;border-color:#000;font-family:inherit;line-height:5em;cursor:default;-webkit-user-select:none;user-select:none}div:where(.swal2-icon) .swal2-icon-content{display:flex;align-items:center;font-size:3.75em}div:where(.swal2-icon).swal2-error{border-color:#f27474;color:#f27474}div:where(.swal2-icon).swal2-error .swal2-x-mark{position:relative;flex-grow:1}div:where(.swal2-icon).swal2-error [class^=swal2-x-mark-line]{display:block;position:absolute;top:2.3125em;width:2.9375em;height:.3125em;border-radius:.125em;background-color:#f27474}div:where(.swal2-icon).swal2-error [class^=swal2-x-mark-line][class$=left]{left:1.0625em;transform:rotate(45deg)}div:where(.swal2-icon).swal2-error [class^=swal2-x-mark-line][class$=right]{right:1em;transform:rotate(-45deg)}@container swal2-popup style(--swal2-icon-animations:true){div:where(.swal2-icon).swal2-error.swal2-icon-show{animation:swal2-animate-error-icon .5s}div:where(.swal2-icon).swal2-error.swal2-icon-show .swal2-x-mark{animation:swal2-animate-error-x-mark .5s}}div:where(.swal2-icon).swal2-warning{border-color:#f8bb86;color:#f8bb86}@container swal2-popup style(--swal2-icon-animations:true){div:where(.swal2-icon).swal2-warning.swal2-icon-show{animation:swal2-animate-error-icon .5s}div:where(.swal2-icon).swal2-warning.swal2-icon-show .swal2-icon-content{animation:swal2-animate-i-mark .5s}}div:where(.swal2-icon).swal2-info{border-color:#3fc3ee;color:#3fc3ee}@container swal2-popup style(--swal2-icon-animations:true){div:where(.swal2-icon).swal2-info.swal2-icon-show{animation:swal2-animate-error-icon .5s}div:where(.swal2-icon).swal2-info.swal2-icon-show .swal2-icon-content{animation:swal2-animate-i-mark .8s}}div:where(.swal2-icon).swal2-question{border-color:#87adbd;color:#87adbd}@container swal2-popup style(--swal2-icon-animations:true){div:where(.swal2-icon).swal2-question.swal2-icon-show{animation:swal2-animate-error-icon .5s}div:where(.swal2-icon).swal2-question.swal2-icon-show .swal2-icon-content{animation:swal2-animate-question-mark .8s}}div:where(.swal2-icon).swal2-success{border-color:#a5dc86;color:#a5dc86}div:where(.swal2-icon).swal2-success [class^=swal2-success-circular-line]{position:absolute;width:3.75em;height:7.5em;border-radius:50%}div:where(.swal2-icon).swal2-success [class^=swal2-success-circular-line][class$=left]{top:-0.4375em;left:-2.0635em;transform:rotate(-45deg);transform-origin:3.75em 3.75em;border-radius:7.5em 0 0 7.5em}div:where(.swal2-icon).swal2-success [class^=swal2-success-circular-line][class$=right]{top:-0.6875em;left:1.875em;transform:rotate(-45deg);transform-origin:0 3.75em;border-radius:0 7.5em 7.5em 0}div:where(.swal2-icon).swal2-success .swal2-success-ring{position:absolute;z-index:2;top:-0.25em;left:-0.25em;box-sizing:content-box;width:100%;height:100%;border:.25em solid rgba(165,220,134,.3);border-radius:50%}div:where(.swal2-icon).swal2-success .swal2-success-fix{position:absolute;z-index:1;top:.5em;left:1.625em;width:.4375em;height:5.625em;transform:rotate(-45deg)}div:where(.swal2-icon).swal2-success [class^=swal2-success-line]{display:block;position:absolute;z-index:2;height:.3125em;border-radius:.125em;background-color:#a5dc86}div:where(.swal2-icon).swal2-success [class^=swal2-success-line][class$=tip]{top:2.875em;left:.8125em;width:1.5625em;transform:rotate(45deg)}div:where(.swal2-icon).swal2-success [class^=swal2-success-line][class$=long]{top:2.375em;right:.5em;width:2.9375em;transform:rotate(-45deg)}@container swal2-popup style(--swal2-icon-animations:true){div:where(.swal2-icon).swal2-success.swal2-icon-show .swal2-success-line-tip{animation:swal2-animate-success-line-tip .75s}div:where(.swal2-icon).swal2-success.swal2-icon-show .swal2-success-line-long{animation:swal2-animate-success-line-long .75s}div:where(.swal2-icon).swal2-success.swal2-icon-show .swal2-success-circular-line-right{animation:swal2-rotate-success-circular-line 4.25s ease-in}}[class^=swal2]{-webkit-tap-highlight-color:rgba(0,0,0,0)}.swal2-show{animation:var(--swal2-show-animation)}.swal2-hide{animation:var(--swal2-hide-animation)}.swal2-noanimation{transition:none}.swal2-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}.swal2-rtl .swal2-close{margin-right:initial;margin-left:0}.swal2-rtl .swal2-timer-progress-bar{right:0;left:auto}.swal2-toast{box-sizing:border-box;grid-column:1/4 !important;grid-row:1/4 !important;grid-template-columns:min-content auto min-content;padding:1em;overflow-y:hidden;border:var(--swal2-toast-border);background:var(--swal2-background);box-shadow:var(--swal2-toast-box-shadow);pointer-events:all}.swal2-toast>*{grid-column:2}.swal2-toast h2:where(.swal2-title){margin:.5em 1em;padding:0;font-size:1em;text-align:initial}.swal2-toast .swal2-loading{justify-content:center}.swal2-toast input:where(.swal2-input){height:2em;margin:.5em;font-size:1em}.swal2-toast .swal2-validation-message{font-size:1em}.swal2-toast div:where(.swal2-footer){margin:.5em 0 0;padding:.5em 0 0;font-size:.8em}.swal2-toast button:where(.swal2-close){grid-column:3/3;grid-row:1/99;align-self:center;width:.8em;height:.8em;margin:0;font-size:2em}.swal2-toast div:where(.swal2-html-container){margin:.5em 1em;padding:0;overflow:initial;font-size:1em;text-align:initial}.swal2-toast div:where(.swal2-html-container):empty{padding:0}.swal2-toast .swal2-loader{grid-column:1;grid-row:1/99;align-self:center;width:2em;height:2em;margin:.25em}.swal2-toast .swal2-icon{grid-column:1;grid-row:1/99;align-self:center;width:2em;min-width:2em;height:2em;margin:0 .5em 0 0}.swal2-toast .swal2-icon .swal2-icon-content{display:flex;align-items:center;font-size:1.8em;font-weight:bold}.swal2-toast .swal2-icon.swal2-success .swal2-success-ring{width:2em;height:2em}.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line]{top:.875em;width:1.375em}.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=left]{left:.3125em}.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=right]{right:.3125em}.swal2-toast div:where(.swal2-actions){justify-content:flex-start;height:auto;margin:0;margin-top:.5em;padding:0 .5em}.swal2-toast button:where(.swal2-styled){margin:.25em .5em;padding:.4em .6em;font-size:1em}.swal2-toast .swal2-success{border-color:#a5dc86}.swal2-toast .swal2-success [class^=swal2-success-circular-line]{position:absolute;width:1.6em;height:3em;border-radius:50%}.swal2-toast .swal2-success [class^=swal2-success-circular-line][class$=left]{top:-0.8em;left:-0.5em;transform:rotate(-45deg);transform-origin:2em 2em;border-radius:4em 0 0 4em}.swal2-toast .swal2-success [class^=swal2-success-circular-line][class$=right]{top:-0.25em;left:.9375em;transform-origin:0 1.5em;border-radius:0 4em 4em 0}.swal2-toast .swal2-success .swal2-success-ring{width:2em;height:2em}.swal2-toast .swal2-success .swal2-success-fix{top:0;left:.4375em;width:.4375em;height:2.6875em}.swal2-toast .swal2-success [class^=swal2-success-line]{height:.3125em}.swal2-toast .swal2-success [class^=swal2-success-line][class$=tip]{top:1.125em;left:.1875em;width:.75em}.swal2-toast .swal2-success [class^=swal2-success-line][class$=long]{top:.9375em;right:.1875em;width:1.375em}@container swal2-popup style(--swal2-icon-animations:true){.swal2-toast .swal2-success.swal2-icon-show .swal2-success-line-tip{animation:swal2-toast-animate-success-line-tip .75s}.swal2-toast .swal2-success.swal2-icon-show .swal2-success-line-long{animation:swal2-toast-animate-success-line-long .75s}}.swal2-toast.swal2-show{animation:var(--swal2-toast-show-animation)}.swal2-toast.swal2-hide{animation:var(--swal2-toast-hide-animation)}@keyframes swal2-show{0%{transform:translate3d(0, -50px, 0) scale(0.9);opacity:0}100%{transform:translate3d(0, 0, 0) scale(1);opacity:1}}@keyframes swal2-hide{0%{transform:translate3d(0, 0, 0) scale(1);opacity:1}100%{transform:translate3d(0, -50px, 0) scale(0.9);opacity:0}}@keyframes swal2-animate-success-line-tip{0%{top:1.1875em;left:.0625em;width:0}54%{top:1.0625em;left:.125em;width:0}70%{top:2.1875em;left:-0.375em;width:3.125em}84%{top:3em;left:1.3125em;width:1.0625em}100%{top:2.8125em;left:.8125em;width:1.5625em}}@keyframes swal2-animate-success-line-long{0%{top:3.375em;right:2.875em;width:0}65%{top:3.375em;right:2.875em;width:0}84%{top:2.1875em;right:0;width:3.4375em}100%{top:2.375em;right:.5em;width:2.9375em}}@keyframes swal2-rotate-success-circular-line{0%{transform:rotate(-45deg)}5%{transform:rotate(-45deg)}12%{transform:rotate(-405deg)}100%{transform:rotate(-405deg)}}@keyframes swal2-animate-error-x-mark{0%{margin-top:1.625em;transform:scale(0.4);opacity:0}50%{margin-top:1.625em;transform:scale(0.4);opacity:0}80%{margin-top:-0.375em;transform:scale(1.15)}100%{margin-top:0;transform:scale(1);opacity:1}}@keyframes swal2-animate-error-icon{0%{transform:rotateX(100deg);opacity:0}100%{transform:rotateX(0deg);opacity:1}}@keyframes swal2-rotate-loading{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes swal2-animate-question-mark{0%{transform:rotateY(-360deg)}100%{transform:rotateY(0)}}@keyframes swal2-animate-i-mark{0%{transform:rotateZ(45deg);opacity:0}25%{transform:rotateZ(-25deg);opacity:.4}50%{transform:rotateZ(15deg);opacity:.8}75%{transform:rotateZ(-5deg);opacity:1}100%{transform:rotateX(0);opacity:1}}@keyframes swal2-toast-show{0%{transform:translateY(-0.625em) rotateZ(2deg)}33%{transform:translateY(0) rotateZ(-2deg)}66%{transform:translateY(0.3125em) rotateZ(2deg)}100%{transform:translateY(0) rotateZ(0deg)}}@keyframes swal2-toast-hide{100%{transform:rotateZ(1deg);opacity:0}}@keyframes swal2-toast-animate-success-line-tip{0%{top:.5625em;left:.0625em;width:0}54%{top:.125em;left:.125em;width:0}70%{top:.625em;left:-0.25em;width:1.625em}84%{top:1.0625em;left:.75em;width:.5em}100%{top:1.125em;left:.1875em;width:.75em}}@keyframes swal2-toast-animate-success-line-long{0%{top:1.625em;right:1.375em;width:0}65%{top:1.25em;right:.9375em;width:0}84%{top:.9375em;right:0;width:1.125em}100%{top:.9375em;right:.1875em;width:1.375em}}

