/* src/styles.scss */
:root {
  --color-zinc-50: oklch(0.985 0 0);
  --color-zinc-100: oklch(0.967 0.001 286.375);
  --color-zinc-200: oklch(0.92 0.004 286.32);
  --color-zinc-300: oklch(0.871 0.006 286.286);
  --color-zinc-400: oklch(0.705 0.015 286.067);
  --color-zinc-500: oklch(0.552 0.016 285.938);
  --color-zinc-600: oklch(0.442 0.017 285.786);
  --color-zinc-700: oklch(0.37 0.013 285.805);
  --color-zinc-800: oklch(0.274 0.006 286.033);
  --color-zinc-900: oklch(0.21 0.006 285.885);
  --color-zinc-950: oklch(0.141 0.005 285.823);
  --color-red-50: oklch(0.971 0.013 17.38);
  --color-red-100: oklch(0.936 0.032 17.717);
  --color-red-200: oklch(0.885 0.062 18.334);
  --color-red-300: oklch(0.808 0.114 19.571);
  --color-red-400: oklch(0.704 0.191 22.216);
  --color-red-500: oklch(0.637 0.237 25.331);
  --color-red-600: oklch(0.577 0.245 27.325);
  --color-red-700: oklch(0.505 0.213 27.518);
  --color-red-800: oklch(0.444 0.177 26.899);
  --color-red-900: oklch(0.396 0.141 25.723);
  --color-red-950: oklch(0.258 0.092 26.042);
  --color-orange-50: oklch(0.98 0.016 73.684);
  --color-orange-100: oklch(0.954 0.038 75.164);
  --color-orange-200: oklch(0.901 0.076 70.697);
  --color-orange-300: oklch(0.837 0.128 66.29);
  --color-orange-400: oklch(0.75 0.183 55.934);
  --color-orange-500: oklch(0.705 0.213 47.604);
  --color-orange-600: oklch(0.646 0.222 41.116);
  --color-orange-700: oklch(0.553 0.195 38.402);
  --color-orange-800: oklch(0.47 0.157 37.304);
  --color-orange-900: oklch(0.408 0.123 38.172);
  --color-orange-950: oklch(0.266 0.079 36.259);
  --color-yellow-50: oklch(0.987 0.026 102.212);
  --color-yellow-100: oklch(0.973 0.071 103.193);
  --color-yellow-200: oklch(0.945 0.129 101.54);
  --color-yellow-300: oklch(0.905 0.182 98.111);
  --color-yellow-400: oklch(0.852 0.199 91.936);
  --color-yellow-500: oklch(0.795 0.184 86.047);
  --color-yellow-600: oklch(0.681 0.162 75.834);
  --color-yellow-700: oklch(0.554 0.135 66.442);
  --color-yellow-800: oklch(0.476 0.114 61.907);
  --color-yellow-900: oklch(0.421 0.095 57.708);
  --color-yellow-950: oklch(0.286 0.066 53.813);
  --color-green-50: oklch(0.982 0.018 155.826);
  --color-green-100: oklch(0.962 0.044 156.743);
  --color-green-200: oklch(0.925 0.084 155.995);
  --color-green-300: oklch(0.871 0.15 154.449);
  --color-green-400: oklch(0.792 0.209 151.711);
  --color-green-500: oklch(0.723 0.219 149.579);
  --color-green-600: oklch(0.627 0.194 149.214);
  --color-green-700: oklch(0.527 0.154 150.069);
  --color-green-800: oklch(0.448 0.119 151.328);
  --color-green-900: oklch(0.393 0.095 152.535);
  --color-green-950: oklch(0.266 0.065 152.934);
}
.w-full {
  width: 100%;
}
.flex {
  display: flex;
}
.items-center {
  align-items: center;
}
.justify-center {
  justify-content: center;
}
.mx-auto {
  margin: 0 auto;
}
:root {
  --app-color-primary-50: #fef2f1;
  --app-color-primary-100: #fde3e0;
  --app-color-primary-200: #fccbc6;
  --app-color-primary-300: #f9a69d;
  --app-color-primary-400: #f47365;
  --app-color-primary-500: #c22b17;
  --app-color-primary-600: #a82414;
  --app-color-primary-700: #8c1e11;
  --app-color-primary-800: #741c12;
  --app-color-primary-900: #611c15;
  --app-color-secondary-50: oklch(0.985 0 0);
  --app-color-secondary-100: oklch(0.967 0.001 286.375);
  --app-color-secondary-200: oklch(0.92 0.004 286.32);
  --app-color-secondary-300: oklch(0.871 0.006 286.286);
  --app-color-secondary-400: oklch(0.705 0.015 286.067);
  --app-color-secondary-500: oklch(0.552 0.016 285.938);
  --app-color-secondary-600: oklch(0.442 0.017 285.786);
  --app-color-secondary-700: oklch(0.37 0.013 285.805);
  --app-color-secondary-800: oklch(0.274 0.006 286.033);
  --app-color-secondary-900: oklch(0.21 0.006 285.885);
  --app-color-secondary-950: oklch(0.141 0.005 285.823);
  --app-color-neutral-50: #f8fafc;
  --app-color-neutral-100: #f1f5f9;
  --app-color-neutral-200: #e2e8f0;
  --app-color-neutral-300: #cbd5e1;
  --app-color-neutral-400: #94a3b8;
  --app-color-neutral-500: #64748b;
  --app-color-neutral-600: #475569;
  --app-color-neutral-700: #334155;
  --app-color-neutral-800: #1e293b;
  --app-color-neutral-900: #0f172a;
  --app-color-success: #10b981;
  --app-color-success-50: #ecfdf5;
  --app-color-success-100: #d1fae5;
  --app-color-success-500: #10b981;
  --app-color-success-600: #059669;
  --app-color-success-700: #047857;
  --app-color-warning: #f59e0b;
  --app-color-warning-50: #fffbeb;
  --app-color-warning-100: #fef3c7;
  --app-color-warning-500: #f59e0b;
  --app-color-warning-600: #d97706;
  --app-color-warning-700: #b45309;
  --app-color-error: #ef4444;
  --app-color-error-50: #fef2f2;
  --app-color-error-100: #fee2e2;
  --app-color-error-500: #ef4444;
  --app-color-error-600: #dc2626;
  --app-color-error-700: #b91c1c;
  --app-color-info: #06b6d4;
  --app-color-info-50: #ecfeff;
  --app-color-info-100: #cffafe;
  --app-color-info-500: #06b6d4;
  --app-color-info-600: #0891b2;
  --app-color-info-700: #0e7490;
  --app-color-surface: #ffffff;
  --app-color-surface-variant: #f8fafc;
  --app-color-background: #ffffff;
  --app-color-on-surface: #1f2937;
  --app-color-on-surface-variant: #6b7280;
  --app-color-primary: var(--app-color-primary-500);
  --app-color-primary-hover: var(--app-color-primary-600);
  --app-color-primary-active: var(--app-color-primary-700);
  --app-color-background-hover: rgba(59, 130, 246, 0.1);
  --app-color-background-disabled: var(--app-color-neutral-100);
  --app-color-text-primary: var(--app-color-neutral-900);
  --app-color-text-secondary: var(--app-color-neutral-600);
  --app-color-text-muted: var(--app-color-neutral-500);
  --app-color-text-inverse: #ffffff;
  --app-color-border: var(--app-color-neutral-200);
  --app-color-border-hover: var(--app-color-neutral-300);
  --app-color-border-focus: var(--app-color-primary-500);
}
:root {
  --app-spacing-xs: var(--app-spacing-2);
  --app-spacing-sm: var(--app-spacing-3);
  --app-spacing-md: var(--app-spacing-4);
  --app-spacing-lg: var(--app-spacing-6);
  --app-spacing-xl: var(--app-spacing-8);
  --app-spacing-2xl: var(--app-spacing-12);
  --app-spacing-3xl: var(--app-spacing-16);
}
:root {
  --app-font-family-primary:
    "Roboto",
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
  --app-font-family-mono:
    "Roboto Mono",
    "SF Mono",
    Monaco,
    "Cascadia Code",
    monospace;
  --app-font-size-xs: 0.75rem;
  --app-font-size-sm: 0.875rem;
  --app-font-size-base: 1rem;
  --app-font-size-lg: 1.125rem;
  --app-font-size-xl: 1.25rem;
  --app-font-size-2xl: 1.5rem;
  --app-font-size-3xl: 1.875rem;
  --app-font-size-4xl: 2.25rem;
  --app-font-weight-light: 300;
  --app-font-weight-normal: 400;
  --app-font-weight-medium: 500;
  --app-font-weight-semibold: 600;
  --app-font-weight-bold: 700;
  --app-line-height-tight: 1.25;
  --app-line-height-normal: 1.5;
  --app-line-height-relaxed: 1.6;
  --app-line-height-loose: 1.75;
  --app-letter-spacing-tight: -0.025em;
  --app-letter-spacing-normal: 0;
  --app-letter-spacing-wide: 0.025em;
  --app-letter-spacing-wider: 0.05em;
  --app-word-spacing-normal: 0;
  --app-word-spacing-wide: 0.1em;
}
:root {
  --app-spacing-0: 0;
  --app-spacing-1: 0.25rem;
  --app-spacing-2: 0.5rem;
  --app-spacing-3: 0.75rem;
  --app-spacing-4: 1rem;
  --app-spacing-5: 1.25rem;
  --app-spacing-6: 1.5rem;
  --app-spacing-8: 2rem;
  --app-spacing-10: 2.5rem;
  --app-spacing-12: 3rem;
  --app-spacing-16: 4rem;
  --app-spacing-20: 5rem;
  --app-spacing-24: 6rem;
  --app-padding-xs: var(--app-spacing-2);
  --app-padding-sm: var(--app-spacing-3);
  --app-padding-md: var(--app-spacing-4);
  --app-padding-lg: var(--app-spacing-6);
  --app-padding-xl: var(--app-spacing-8);
  --app-gap-xs: var(--app-spacing-2);
  --app-gap-sm: var(--app-spacing-3);
  --app-gap-md: var(--app-spacing-4);
  --app-gap-lg: var(--app-spacing-6);
  --app-gap-xl: var(--app-spacing-8);
}
:root {
  --app-border-radius-none: 0;
  --app-border-radius-sm: 0.25rem;
  --app-border-radius-md: 0.375rem;
  --app-border-radius-lg: 0.5rem;
  --app-border-radius-xl: 0.75rem;
  --app-border-radius-2xl: 1rem;
  --app-border-radius-full: 9999px;
  --app-border-width-0: 0;
  --app-border-width-1: 1px;
  --app-border-width-2: 2px;
  --app-border-width-4: 4px;
}
:root {
  --app-shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
  --app-shadow-md: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06);
  --app-shadow-lg: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  --app-shadow-xl: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
  --app-shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
  --app-shadow-inner: inset 0 2px 4px 0 rgba(0, 0, 0, 0.06);
  --app-shadow-focus: 0 0 0 2px var(--app-color-border-focus);
}
:root {
  --app-transition-fast: 150ms;
  --app-transition-normal: 200ms;
  --app-transition-slow: 300ms;
  --app-ease-linear: linear;
  --app-ease-in: cubic-bezier(0.4, 0, 1, 1);
  --app-ease-out: cubic-bezier(0, 0, 0.2, 1);
  --app-ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
  --app-transition-all: all var(--app-transition-normal) var(--app-ease-in-out);
  --app-transition-colors:
    color var(--app-transition-normal) var(--app-ease-in-out),
    background-color var(--app-transition-normal) var(--app-ease-in-out),
    border-color var(--app-transition-normal) var(--app-ease-in-out);
  --app-transition-transform: transform var(--app-transition-normal) var(--app-ease-in-out);
  --app-transition-opacity: opacity var(--app-transition-normal) var(--app-ease-in-out);
}
:root {
  --app-breakpoint-mobile: 576px;
  --app-breakpoint-tablet: 992px;
  --app-breakpoint-desktop: 1200px;
  --app-container-sm: 640px;
  --app-container-md: 768px;
  --app-container-lg: 1024px;
  --app-container-xl: 1200px;
  --app-container-2xl: 1400px;
}
:root {
  --app-z-index-dropdown: 1000;
  --app-z-index-sticky: 1020;
  --app-z-index-fixed: 1030;
  --app-z-index-modal-backdrop: 1040;
  --app-z-index-modal: 1050;
  --app-z-index-popover: 1060;
  --app-z-index-tooltip: 1070;
  --app-z-index-toast: 1080;
}
:root {
  --app-budget-selector-padding-horizontal: var(--app-spacing-3);
  --app-budget-selector-padding-vertical: var(--app-spacing-2);
  --app-budget-selector-border: var(--app-border-width-1) solid var(--app-color-border);
  --app-budget-selector-radius: var(--app-border-radius-md);
  --app-budget-selector-font-size: var(--app-font-size-sm);
  --app-budget-selector-font-weight: var(--app-font-weight-medium);
  --app-goal-progress-card-padding-horizontal: var(--app-spacing-4);
  --app-goal-progress-card-padding-vertical: var(--app-spacing-3);
  --app-goal-progress-card-border: var(--app-border-width-1) solid var(--app-color-border);
  --app-goal-progress-card-radius: var(--app-border-radius-lg);
  --app-goal-progress-card-font-size-label: var(--app-font-size-sm);
  --app-goal-progress-card-font-size-value: var(--app-font-size-lg);
  --app-goal-progress-card-background: var(--app-color-background-primary);
  --app-goal-progress-card-progress-color: var(--app-color-primary);
  --app-goal-progress-card-success-color: var(--app-color-success);
  --app-goal-progress-card-overdue-color: var(--app-color-error);
  --app-dashboard-widgets-gap-desktop: var(--app-spacing-4);
  --app-dashboard-widgets-gap-tablet: var(--app-spacing-3);
  --app-dashboard-widgets-gap-mobile: var(--app-spacing-2);
  --app-dashboard-widgets-padding-desktop: var(--app-spacing-6);
  --app-dashboard-widgets-padding-mobile: var(--app-spacing-4);
  --app-dashboard-widgets-skeleton-shimmer:
    linear-gradient(
      
      90deg,
      transparent,
      rgba(255, 255, 255, 0.4),
      transparent );
  --app-dashboard-widgets-empty-state-icon-size: 48px;
  --app-dashboard-widgets-error-retry-button-size: var(--app-touch-target-min);
  --app-touch-target-min: 44px;
  --app-touch-target-comfortable: 48px;
  --app-animation-celebration-duration: 2s;
  --app-animation-milestone-duration: 0.5s;
  --app-animation-progress-fill-duration: 0.3s;
  --app-animation-hover-scale: 1.02;
  --app-animation-active-scale: 0.98;
  --app-focus-ring-width: 2px;
  --app-focus-ring-color: var(--app-color-primary);
  --app-focus-ring-offset: 2px;
}
:root {
  --app-focus-ring-width: 2px;
  --app-focus-ring-color: var(--app-color-primary);
  --app-focus-ring-offset: 2px;
  --app-focus-ring-style: solid;
  --app-focus-ring-radius: var(--app-border-radius-sm);
  --app-contrast-text-normal: 4.5;
  --app-contrast-text-large: 3;
  --app-contrast-ui-components: 3;
  --app-font-size-minimum: 16px;
  --app-line-height-minimum: 1.5;
  --app-line-height-comfortable: 1.6;
}
@media (prefers-contrast: high) {
  :root {
    --app-color-border: #000000;
    --app-color-text-primary: #000000;
    --app-color-background-primary: #ffffff;
    --app-color-primary: #0000ff;
    --app-color-success: #008000;
    --app-color-error: #ff0000;
    --app-color-warning: #ff8c00;
  }
}
@media (prefers-reduced-motion: reduce) {
  :root {
    --app-transition-fast: 0ms;
    --app-transition-normal: 0ms;
    --app-transition-slow: 0ms;
    --app-animation-celebration-duration: 0ms;
    --app-animation-milestone-duration: 0ms;
    --app-animation-progress-fill-duration: 0ms;
    --app-animation-hover-scale: 1;
    --app-animation-active-scale: 1;
  }
}
@media (prefers-color-scheme: dark) {
  :root {
    --app-color-surface: #1e293b;
    --app-color-surface-variant: #334155;
    --app-color-background: #0f172a;
    --app-color-on-surface: #f8fafc;
    --app-color-on-surface-variant: #cbd5e1;
    --app-color-text-primary: #f8fafc;
    --app-color-text-secondary: #cbd5e1;
    --app-color-text-muted: #94a3b8;
    --app-color-border: #475569;
    --app-color-border-hover: #64748b;
  }
}
.app-color-primary-50 {
  color: var(--app-color-primary-50);
}
.app-color-primary-100 {
  color: var(--app-color-primary-100);
}
.app-color-primary-200 {
  color: var(--app-color-primary-200);
}
.app-color-primary-300 {
  color: var(--app-color-primary-300);
}
.app-color-primary-400 {
  color: var(--app-color-primary-400);
}
.app-color-primary-500 {
  color: var(--app-color-primary-500);
}
.app-color-primary-600 {
  color: var(--app-color-primary-600);
}
.app-color-primary-700 {
  color: var(--app-color-primary-700);
}
.app-color-primary-800 {
  color: var(--app-color-primary-800);
}
.app-color-primary-900 {
  color: var(--app-color-primary-900);
}
.app-bg-primary-50 {
  background-color: var(--app-color-primary-50);
}
.app-bg-primary-100 {
  background-color: var(--app-color-primary-100);
}
.app-bg-primary-200 {
  background-color: var(--app-color-primary-200);
}
.app-bg-primary-300 {
  background-color: var(--app-color-primary-300);
}
.app-bg-primary-400 {
  background-color: var(--app-color-primary-400);
}
.app-bg-primary-500 {
  background-color: var(--app-color-primary-500);
}
.app-bg-primary-600 {
  background-color: var(--app-color-primary-600);
}
.app-bg-primary-700 {
  background-color: var(--app-color-primary-700);
}
.app-bg-primary-800 {
  background-color: var(--app-color-primary-800);
}
.app-bg-primary-900 {
  background-color: var(--app-color-primary-900);
}
.app-color-secondary-50 {
  color: var(--app-color-secondary-50);
}
.app-color-secondary-100 {
  color: var(--app-color-secondary-100);
}
.app-color-secondary-200 {
  color: var(--app-color-secondary-200);
}
.app-color-secondary-300 {
  color: var(--app-color-secondary-300);
}
.app-color-secondary-400 {
  color: var(--app-color-secondary-400);
}
.app-color-secondary-500 {
  color: var(--app-color-secondary-500);
}
.app-color-secondary-600 {
  color: var(--app-color-secondary-600);
}
.app-color-secondary-700 {
  color: var(--app-color-secondary-700);
}
.app-color-secondary-800 {
  color: var(--app-color-secondary-800);
}
.app-color-secondary-900 {
  color: var(--app-color-secondary-900);
}
.app-bg-secondary-50 {
  background-color: var(--app-color-secondary-50);
}
.app-bg-secondary-100 {
  background-color: var(--app-color-secondary-100);
}
.app-bg-secondary-200 {
  background-color: var(--app-color-secondary-200);
}
.app-bg-secondary-300 {
  background-color: var(--app-color-secondary-300);
}
.app-bg-secondary-400 {
  background-color: var(--app-color-secondary-400);
}
.app-bg-secondary-500 {
  background-color: var(--app-color-secondary-500);
}
.app-bg-secondary-600 {
  background-color: var(--app-color-secondary-600);
}
.app-bg-secondary-700 {
  background-color: var(--app-color-secondary-700);
}
.app-bg-secondary-800 {
  background-color: var(--app-color-secondary-800);
}
.app-bg-secondary-900 {
  background-color: var(--app-color-secondary-900);
}
.app-color-neutral-50 {
  color: var(--app-color-neutral-50);
}
.app-color-neutral-100 {
  color: var(--app-color-neutral-100);
}
.app-color-neutral-200 {
  color: var(--app-color-neutral-200);
}
.app-color-neutral-300 {
  color: var(--app-color-neutral-300);
}
.app-color-neutral-400 {
  color: var(--app-color-neutral-400);
}
.app-color-neutral-500 {
  color: var(--app-color-neutral-500);
}
.app-color-neutral-600 {
  color: var(--app-color-neutral-600);
}
.app-color-neutral-700 {
  color: var(--app-color-neutral-700);
}
.app-color-neutral-800 {
  color: var(--app-color-neutral-800);
}
.app-color-neutral-900 {
  color: var(--app-color-neutral-900);
}
.app-bg-neutral-50 {
  background-color: var(--app-color-neutral-50);
}
.app-bg-neutral-100 {
  background-color: var(--app-color-neutral-100);
}
.app-bg-neutral-200 {
  background-color: var(--app-color-neutral-200);
}
.app-bg-neutral-300 {
  background-color: var(--app-color-neutral-300);
}
.app-bg-neutral-400 {
  background-color: var(--app-color-neutral-400);
}
.app-bg-neutral-500 {
  background-color: var(--app-color-neutral-500);
}
.app-bg-neutral-600 {
  background-color: var(--app-color-neutral-600);
}
.app-bg-neutral-700 {
  background-color: var(--app-color-neutral-700);
}
.app-bg-neutral-800 {
  background-color: var(--app-color-neutral-800);
}
.app-bg-neutral-900 {
  background-color: var(--app-color-neutral-900);
}
.app-color-success-50 {
  color: var(--app-color-success-50);
}
.app-color-success-100 {
  color: var(--app-color-success-100);
}
.app-color-success-500 {
  color: var(--app-color-success-500);
}
.app-color-success-600 {
  color: var(--app-color-success-600);
}
.app-color-success-700 {
  color: var(--app-color-success-700);
}
.app-color-warning-50 {
  color: var(--app-color-warning-50);
}
.app-color-warning-100 {
  color: var(--app-color-warning-100);
}
.app-color-warning-500 {
  color: var(--app-color-warning-500);
}
.app-color-warning-600 {
  color: var(--app-color-warning-600);
}
.app-color-warning-700 {
  color: var(--app-color-warning-700);
}
.app-color-error-50 {
  color: var(--app-color-error-50);
}
.app-color-error-100 {
  color: var(--app-color-error-100);
}
.app-color-error-500 {
  color: var(--app-color-error-500);
}
.app-color-error-600 {
  color: var(--app-color-error-600);
}
.app-color-error-700 {
  color: var(--app-color-error-700);
}
.app-color-info-50 {
  color: var(--app-color-info-50);
}
.app-color-info-100 {
  color: var(--app-color-info-100);
}
.app-color-info-500 {
  color: var(--app-color-info-500);
}
.app-color-info-600 {
  color: var(--app-color-info-600);
}
.app-color-info-700 {
  color: var(--app-color-info-700);
}
.app-bg-success-50 {
  background-color: var(--app-color-success-50);
}
.app-bg-success-100 {
  background-color: var(--app-color-success-100);
}
.app-bg-success-500 {
  background-color: var(--app-color-success-500);
}
.app-bg-success-600 {
  background-color: var(--app-color-success-600);
}
.app-bg-success-700 {
  background-color: var(--app-color-success-700);
}
.app-bg-warning-50 {
  background-color: var(--app-color-warning-50);
}
.app-bg-warning-100 {
  background-color: var(--app-color-warning-100);
}
.app-bg-warning-500 {
  background-color: var(--app-color-warning-500);
}
.app-bg-warning-600 {
  background-color: var(--app-color-warning-600);
}
.app-bg-warning-700 {
  background-color: var(--app-color-warning-700);
}
.app-bg-error-50 {
  background-color: var(--app-color-error-50);
}
.app-bg-error-100 {
  background-color: var(--app-color-error-100);
}
.app-bg-error-500 {
  background-color: var(--app-color-error-500);
}
.app-bg-error-600 {
  background-color: var(--app-color-error-600);
}
.app-bg-error-700 {
  background-color: var(--app-color-error-700);
}
.app-bg-info-50 {
  background-color: var(--app-color-info-50);
}
.app-bg-info-100 {
  background-color: var(--app-color-info-100);
}
.app-bg-info-500 {
  background-color: var(--app-color-info-500);
}
.app-bg-info-600 {
  background-color: var(--app-color-info-600);
}
.app-bg-info-700 {
  background-color: var(--app-color-info-700);
}
.app-color-surface {
  color: var(--app-color-surface);
}
.app-color-surface-variant {
  color: var(--app-color-surface-variant);
}
.app-color-background {
  color: var(--app-color-background);
}
.app-color-on-surface {
  color: var(--app-color-on-surface);
}
.app-color-on-surface-variant {
  color: var(--app-color-on-surface-variant);
}
.app-bg-surface {
  background-color: var(--app-color-surface);
}
.app-bg-surface-variant {
  background-color: var(--app-color-surface-variant);
}
.app-bg-background {
  background-color: var(--app-color-background);
}
.app-bg-on-surface {
  background-color: var(--app-color-on-surface);
}
.app-bg-on-surface-variant {
  background-color: var(--app-color-on-surface-variant);
}
.app-font-primary {
  font-family: var(--app-font-family-primary);
}
.app-font-mono {
  font-family: var(--app-font-family-mono);
}
.app-text-xs {
  font-size: var(--app-font-size-xs);
}
.app-text-sm {
  font-size: var(--app-font-size-sm);
}
.app-text-base {
  font-size: var(--app-font-size-base);
}
.app-text-lg {
  font-size: var(--app-font-size-lg);
}
.app-text-xl {
  font-size: var(--app-font-size-xl);
}
.app-text-2xl {
  font-size: var(--app-font-size-2xl);
}
.app-text-3xl {
  font-size: var(--app-font-size-3xl);
}
.app-text-4xl {
  font-size: var(--app-font-size-4xl);
}
.app-font-light {
  font-weight: var(--app-font-weight-light);
}
.app-font-regular {
  font-weight: var(--app-font-weight-regular);
}
.app-font-medium {
  font-weight: var(--app-font-weight-medium);
}
.app-font-bold {
  font-weight: var(--app-font-weight-bold);
}
.app-leading-tight {
  line-height: var(--app-line-height-tight);
}
.app-leading-normal {
  line-height: var(--app-line-height-normal);
}
.app-leading-relaxed {
  line-height: var(--app-line-height-relaxed);
}
.app-heading-1 {
  font-size: var(--app-font-size-4xl);
  font-weight: var(--app-font-weight-bold);
  line-height: var(--app-line-height-tight);
  letter-spacing: var(--app-letter-spacing-tight);
  margin: 0 0 var(--app-spacing-lg) 0;
}
.app-heading-2 {
  font-size: var(--app-font-size-3xl);
  font-weight: var(--app-font-weight-bold);
  line-height: var(--app-line-height-tight);
  letter-spacing: var(--app-letter-spacing-tight);
  margin: 0 0 var(--app-spacing-md) 0;
}
.app-heading-3 {
  font-size: var(--app-font-size-2xl);
  font-weight: var(--app-font-weight-semibold);
  line-height: var(--app-line-height-normal);
  letter-spacing: var(--app-letter-spacing-normal);
  margin: 0 0 var(--app-spacing-md) 0;
}
.app-heading-4 {
  font-size: var(--app-font-size-xl);
  font-weight: var(--app-font-weight-semibold);
  line-height: var(--app-line-height-normal);
  letter-spacing: var(--app-letter-spacing-normal);
  margin: 0 0 var(--app-spacing-sm) 0;
}
.app-heading-5 {
  font-size: var(--app-font-size-lg);
  font-weight: var(--app-font-weight-medium);
  line-height: var(--app-line-height-normal);
  letter-spacing: var(--app-letter-spacing-normal);
  margin: 0 0 var(--app-spacing-sm) 0;
}
.app-heading-6 {
  font-size: var(--app-font-size-base);
  font-weight: var(--app-font-weight-medium);
  line-height: var(--app-line-height-normal);
  letter-spacing: var(--app-letter-spacing-normal);
  margin: 0 0 var(--app-spacing-sm) 0;
}
.app-body-large {
  font-size: var(--app-font-size-lg);
  font-weight: var(--app-font-weight-normal);
  line-height: var(--app-line-height-relaxed);
  letter-spacing: var(--app-letter-spacing-normal);
}
.app-body-medium {
  font-size: var(--app-font-size-base);
  font-weight: var(--app-font-weight-normal);
  line-height: var(--app-line-height-normal);
  letter-spacing: var(--app-letter-spacing-normal);
}
.app-body-small {
  font-size: var(--app-font-size-sm);
  font-weight: var(--app-font-weight-normal);
  line-height: var(--app-line-height-normal);
  letter-spacing: var(--app-letter-spacing-normal);
}
.app-caption {
  font-size: var(--app-font-size-xs);
  font-weight: var(--app-font-weight-normal);
  line-height: var(--app-line-height-normal);
  letter-spacing: var(--app-letter-spacing-wide);
}
.app-text-readable {
  font-size: var(--app-font-size-base);
  line-height: var(--app-line-height-relaxed);
  letter-spacing: var(--app-letter-spacing-normal);
  word-spacing: var(--app-word-spacing-normal);
}
.app-text-readable-large {
  font-size: var(--app-font-size-lg);
  line-height: var(--app-line-height-loose);
  letter-spacing: var(--app-letter-spacing-normal);
  word-spacing: var(--app-word-spacing-normal);
}
.app-text-uppercase {
  text-transform: uppercase;
}
.app-text-lowercase {
  text-transform: lowercase;
}
.app-text-capitalize {
  text-transform: capitalize;
}
.app-text-left {
  text-align: left;
}
.app-text-center {
  text-align: center;
}
.app-text-right {
  text-align: right;
}
.app-text-justify {
  text-align: justify;
}
.app-text-nowrap {
  white-space: nowrap;
}
.app-text-break {
  word-break: break-word;
}
.app-text-underline {
  text-decoration: underline;
}
.app-text-line-through {
  text-decoration: line-through;
}
.app-text-no-underline {
  text-decoration: none;
}
.app-text-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.app-text-clip {
  overflow: hidden;
  text-overflow: clip;
  white-space: nowrap;
}
.app-m-0 {
  margin: 0;
}
.app-m-xs {
  margin: var(--app-spacing-xs);
}
.app-m-sm {
  margin: var(--app-spacing-sm);
}
.app-m-md {
  margin: var(--app-spacing-md);
}
.app-m-lg {
  margin: var(--app-spacing-lg);
}
.app-m-xl {
  margin: var(--app-spacing-xl);
}
.app-m-2xl {
  margin: var(--app-spacing-2xl);
}
.app-m-3xl {
  margin: var(--app-spacing-3xl);
}
.app-my-0 {
  margin-top: 0;
  margin-bottom: 0;
}
.app-my-xs {
  margin-top: var(--app-spacing-xs);
  margin-bottom: var(--app-spacing-xs);
}
.app-my-sm {
  margin-top: var(--app-spacing-sm);
  margin-bottom: var(--app-spacing-sm);
}
.app-my-md {
  margin-top: var(--app-spacing-md);
  margin-bottom: var(--app-spacing-md);
}
.app-my-lg {
  margin-top: var(--app-spacing-lg);
  margin-bottom: var(--app-spacing-lg);
}
.app-my-xl {
  margin-top: var(--app-spacing-xl);
  margin-bottom: var(--app-spacing-xl);
}
.app-my-2xl {
  margin-top: var(--app-spacing-2xl);
  margin-bottom: var(--app-spacing-2xl);
}
.app-my-3xl {
  margin-top: var(--app-spacing-3xl);
  margin-bottom: var(--app-spacing-3xl);
}
.app-mx-auto {
  margin-left: auto;
  margin-right: auto;
}
.app-mx-0 {
  margin-left: 0;
  margin-right: 0;
}
.app-mx-xs {
  margin-left: var(--app-spacing-xs);
  margin-right: var(--app-spacing-xs);
}
.app-mx-sm {
  margin-left: var(--app-spacing-sm);
  margin-right: var(--app-spacing-sm);
}
.app-mx-md {
  margin-left: var(--app-spacing-md);
  margin-right: var(--app-spacing-md);
}
.app-mx-lg {
  margin-left: var(--app-spacing-lg);
  margin-right: var(--app-spacing-lg);
}
.app-mx-xl {
  margin-left: var(--app-spacing-xl);
  margin-right: var(--app-spacing-xl);
}
.app-mx-2xl {
  margin-left: var(--app-spacing-2xl);
  margin-right: var(--app-spacing-2xl);
}
.app-mx-3xl {
  margin-left: var(--app-spacing-3xl);
  margin-right: var(--app-spacing-3xl);
}
.app-mt-0 {
  margin-top: 0;
}
.app-mt-xs {
  margin-top: var(--app-spacing-xs);
}
.app-mt-sm {
  margin-top: var(--app-spacing-sm);
}
.app-mt-md {
  margin-top: var(--app-spacing-md);
}
.app-mt-lg {
  margin-top: var(--app-spacing-lg);
}
.app-mt-xl {
  margin-top: var(--app-spacing-xl);
}
.app-mt-2xl {
  margin-top: var(--app-spacing-2xl);
}
.app-mt-3xl {
  margin-top: var(--app-spacing-3xl);
}
.app-mr-0 {
  margin-right: 0;
}
.app-mr-xs {
  margin-right: var(--app-spacing-xs);
}
.app-mr-sm {
  margin-right: var(--app-spacing-sm);
}
.app-mr-md {
  margin-right: var(--app-spacing-md);
}
.app-mr-lg {
  margin-right: var(--app-spacing-lg);
}
.app-mr-xl {
  margin-right: var(--app-spacing-xl);
}
.app-mr-2xl {
  margin-right: var(--app-spacing-2xl);
}
.app-mr-3xl {
  margin-right: var(--app-spacing-3xl);
}
.app-mb-0 {
  margin-bottom: 0;
}
.app-mb-xs {
  margin-bottom: var(--app-spacing-xs);
}
.app-mb-sm {
  margin-bottom: var(--app-spacing-sm);
}
.app-mb-md {
  margin-bottom: var(--app-spacing-md);
}
.app-mb-lg {
  margin-bottom: var(--app-spacing-lg);
}
.app-mb-xl {
  margin-bottom: var(--app-spacing-xl);
}
.app-mb-2xl {
  margin-bottom: var(--app-spacing-2xl);
}
.app-mb-3xl {
  margin-bottom: var(--app-spacing-3xl);
}
.app-ml-0 {
  margin-left: 0;
}
.app-ml-xs {
  margin-left: var(--app-spacing-xs);
}
.app-ml-sm {
  margin-left: var(--app-spacing-sm);
}
.app-ml-md {
  margin-left: var(--app-spacing-md);
}
.app-ml-lg {
  margin-left: var(--app-spacing-lg);
}
.app-ml-xl {
  margin-left: var(--app-spacing-xl);
}
.app-ml-2xl {
  margin-left: var(--app-spacing-2xl);
}
.app-ml-3xl {
  margin-left: var(--app-spacing-3xl);
}
.app-p-0 {
  padding: 0;
}
.app-p-xs {
  padding: var(--app-spacing-xs);
}
.app-p-sm {
  padding: var(--app-spacing-sm);
}
.app-p-md {
  padding: var(--app-spacing-md);
}
.app-p-lg {
  padding: var(--app-spacing-lg);
}
.app-p-xl {
  padding: var(--app-spacing-xl);
}
.app-p-2xl {
  padding: var(--app-spacing-2xl);
}
.app-p-3xl {
  padding: var(--app-spacing-3xl);
}
.app-py-0 {
  padding-top: 0;
  padding-bottom: 0;
}
.app-py-xs {
  padding-top: var(--app-spacing-xs);
  padding-bottom: var(--app-spacing-xs);
}
.app-py-sm {
  padding-top: var(--app-spacing-sm);
  padding-bottom: var(--app-spacing-sm);
}
.app-py-md {
  padding-top: var(--app-spacing-md);
  padding-bottom: var(--app-spacing-md);
}
.app-py-lg {
  padding-top: var(--app-spacing-lg);
  padding-bottom: var(--app-spacing-lg);
}
.app-py-xl {
  padding-top: var(--app-spacing-xl);
  padding-bottom: var(--app-spacing-xl);
}
.app-py-2xl {
  padding-top: var(--app-spacing-2xl);
  padding-bottom: var(--app-spacing-2xl);
}
.app-py-3xl {
  padding-top: var(--app-spacing-3xl);
  padding-bottom: var(--app-spacing-3xl);
}
.app-px-0 {
  padding-left: 0;
  padding-right: 0;
}
.app-px-xs {
  padding-left: var(--app-spacing-xs);
  padding-right: var(--app-spacing-xs);
}
.app-px-sm {
  padding-left: var(--app-spacing-sm);
  padding-right: var(--app-spacing-sm);
}
.app-px-md {
  padding-left: var(--app-spacing-md);
  padding-right: var(--app-spacing-md);
}
.app-px-lg {
  padding-left: var(--app-spacing-lg);
  padding-right: var(--app-spacing-lg);
}
.app-px-xl {
  padding-left: var(--app-spacing-xl);
  padding-right: var(--app-spacing-xl);
}
.app-px-2xl {
  padding-left: var(--app-spacing-2xl);
  padding-right: var(--app-spacing-2xl);
}
.app-px-3xl {
  padding-left: var(--app-spacing-3xl);
  padding-right: var(--app-spacing-3xl);
}
.app-pt-0 {
  padding-top: 0;
}
.app-pt-xs {
  padding-top: var(--app-spacing-xs);
}
.app-pt-sm {
  padding-top: var(--app-spacing-sm);
}
.app-pt-md {
  padding-top: var(--app-spacing-md);
}
.app-pt-lg {
  padding-top: var(--app-spacing-lg);
}
.app-pt-xl {
  padding-top: var(--app-spacing-xl);
}
.app-pt-2xl {
  padding-top: var(--app-spacing-2xl);
}
.app-pt-3xl {
  padding-top: var(--app-spacing-3xl);
}
.app-pr-0 {
  padding-right: 0;
}
.app-pr-xs {
  padding-right: var(--app-spacing-xs);
}
.app-pr-sm {
  padding-right: var(--app-spacing-sm);
}
.app-pr-md {
  padding-right: var(--app-spacing-md);
}
.app-pr-lg {
  padding-right: var(--app-spacing-lg);
}
.app-pr-xl {
  padding-right: var(--app-spacing-xl);
}
.app-pr-2xl {
  padding-right: var(--app-spacing-2xl);
}
.app-pr-3xl {
  padding-right: var(--app-spacing-3xl);
}
.app-pb-0 {
  padding-bottom: 0;
}
.app-pb-xs {
  padding-bottom: var(--app-spacing-xs);
}
.app-pb-sm {
  padding-bottom: var(--app-spacing-sm);
}
.app-pb-md {
  padding-bottom: var(--app-spacing-md);
}
.app-pb-lg {
  padding-bottom: var(--app-spacing-lg);
}
.app-pb-xl {
  padding-bottom: var(--app-spacing-xl);
}
.app-pb-2xl {
  padding-bottom: var(--app-spacing-2xl);
}
.app-pb-3xl {
  padding-bottom: var(--app-spacing-3xl);
}
.app-pl-0 {
  padding-left: 0;
}
.app-pl-xs {
  padding-left: var(--app-spacing-xs);
}
.app-pl-sm {
  padding-left: var(--app-spacing-sm);
}
.app-pl-md {
  padding-left: var(--app-spacing-md);
}
.app-pl-lg {
  padding-left: var(--app-spacing-lg);
}
.app-pl-xl {
  padding-left: var(--app-spacing-xl);
}
.app-pl-2xl {
  padding-left: var(--app-spacing-2xl);
}
.app-pl-3xl {
  padding-left: var(--app-spacing-3xl);
}
.chip.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__text-label {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.chip.success {
  --mat-chip-label-text-color: var(--app-color-success-500);
  --mat-chip-elevated-container-color: var(--app-color-success-100);
}
.chip.danger {
  --mat-chip-label-text-color: var(--color-danger-500);
  --mat-chip-elevated-container-color: var(--color-danger-100);
}
.chip.warning {
  --mat-chip-label-text-color: var(--color-warning-500);
  --mat-chip-elevated-container-color: var(--color-warning-100);
}
* {
  box-sizing: border-box;
}
html {
  font-family: var(--app-font-family-primary);
  font-size: 16px;
  line-height: var(--app-line-height-normal);
}
body {
  margin: 0;
  padding: 0;
  background-color: var(--app-color-background);
  color: var(--app-color-on-surface);
  font-size: var(--app-font-size-base);
  font-weight: var(--app-font-weight-regular);
}
.app-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 var(--app-spacing-md);
}
.app-section {
  padding: var(--app-spacing-xl) 0;
}
.app-grid {
  display: grid;
  gap: var(--app-spacing-md);
}
.app-grid--2-cols {
  grid-template-columns: repeat(2, 1fr);
}
.app-grid--3-cols {
  grid-template-columns: repeat(3, 1fr);
}
.app-grid--4-cols {
  grid-template-columns: repeat(4, 1fr);
}
.app-flex {
  display: flex;
}
.app-flex--center {
  align-items: center;
  justify-content: center;
}
.app-flex--between {
  justify-content: space-between;
}
.app-flex--around {
  justify-content: space-around;
}
.app-flex--column {
  flex-direction: column;
}
.app-flex--wrap {
  flex-wrap: wrap;
}
@media (max-width: 768px) {
  .app-grid--2-cols,
  .app-grid--3-cols,
  .app-grid--4-cols {
    grid-template-columns: 1fr;
  }
  .app-container {
    padding: 0 var(--app-spacing-sm);
  }
}
@media (max-width: 480px) {
  .app-container {
    padding: 0 var(--app-spacing-xs);
  }
}
.app-fade-in {
  animation: fadeIn var(--app-transition-normal) ease-in-out;
}
.app-slide-up {
  animation: slideUp var(--app-transition-normal) ease-out;
}
.app-scale-in {
  animation: scaleIn var(--app-transition-fast) ease-out;
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes slideUp {
  from {
    transform: translateY(20px);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes scaleIn {
  from {
    transform: scale(0.9);
    opacity: 0;
  }
  to {
    transform: scale(1);
    opacity: 1;
  }
}
.app-focus-visible,
*:focus-visible {
  outline: 2px solid var(--app-color-primary-500);
  outline-offset: 2px;
}
@media print {
  .app-no-print {
    display: none !important;
  }
  .app-print-only {
    display: block !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, #0001ac);
  --mat-sys-on-tertiary-container: light-dark(#0000ef, #e0e0ff);
  --mat-sys-on-tertiary-fixed: light-dark(#00006e, #00006e);
  --mat-sys-on-tertiary-fixed-variant: light-dark(#0000ef, #0000ef);
  --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(#343dff, #bec2ff);
  --mat-sys-tertiary-container: light-dark(#e0e0ff, #0000ef);
  --mat-sys-tertiary-fixed: light-dark(#e0e0ff, #e0e0ff);
  --mat-sys-tertiary-fixed-dim: light-dark(#bec2ff, #bec2ff);
  --mat-sys-neutral-variant20: #2d3038;
  --mat-sys-neutral10: #1a1b1f;
  --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);
  --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);
  --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);
  --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);
  --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);
  --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);
  --mat-sys-body-large: 400 1rem / 1.5rem Roboto;
  --mat-sys-body-large-font: Roboto;
  --mat-sys-body-large-line-height: 1.5rem;
  --mat-sys-body-large-size: 1rem;
  --mat-sys-body-large-tracking: 0.031rem;
  --mat-sys-body-large-weight: 400;
  --mat-sys-body-medium: 400 0.875rem / 1.25rem Roboto;
  --mat-sys-body-medium-font: Roboto;
  --mat-sys-body-medium-line-height: 1.25rem;
  --mat-sys-body-medium-size: 0.875rem;
  --mat-sys-body-medium-tracking: 0.016rem;
  --mat-sys-body-medium-weight: 400;
  --mat-sys-body-small: 400 0.75rem / 1rem Roboto;
  --mat-sys-body-small-font: Roboto;
  --mat-sys-body-small-line-height: 1rem;
  --mat-sys-body-small-size: 0.75rem;
  --mat-sys-body-small-tracking: 0.025rem;
  --mat-sys-body-small-weight: 400;
  --mat-sys-display-large: 400 3.562rem / 4rem Roboto;
  --mat-sys-display-large-font: Roboto;
  --mat-sys-display-large-line-height: 4rem;
  --mat-sys-display-large-size: 3.562rem;
  --mat-sys-display-large-tracking: -0.016rem;
  --mat-sys-display-large-weight: 400;
  --mat-sys-display-medium: 400 2.812rem / 3.25rem Roboto;
  --mat-sys-display-medium-font: Roboto;
  --mat-sys-display-medium-line-height: 3.25rem;
  --mat-sys-display-medium-size: 2.812rem;
  --mat-sys-display-medium-tracking: 0;
  --mat-sys-display-medium-weight: 400;
  --mat-sys-display-small: 400 2.25rem / 2.75rem Roboto;
  --mat-sys-display-small-font: Roboto;
  --mat-sys-display-small-line-height: 2.75rem;
  --mat-sys-display-small-size: 2.25rem;
  --mat-sys-display-small-tracking: 0;
  --mat-sys-display-small-weight: 400;
  --mat-sys-headline-large: 400 2rem / 2.5rem Roboto;
  --mat-sys-headline-large-font: Roboto;
  --mat-sys-headline-large-line-height: 2.5rem;
  --mat-sys-headline-large-size: 2rem;
  --mat-sys-headline-large-tracking: 0;
  --mat-sys-headline-large-weight: 400;
  --mat-sys-headline-medium: 400 1.75rem / 2.25rem Roboto;
  --mat-sys-headline-medium-font: Roboto;
  --mat-sys-headline-medium-line-height: 2.25rem;
  --mat-sys-headline-medium-size: 1.75rem;
  --mat-sys-headline-medium-tracking: 0;
  --mat-sys-headline-medium-weight: 400;
  --mat-sys-headline-small: 400 1.5rem / 2rem Roboto;
  --mat-sys-headline-small-font: Roboto;
  --mat-sys-headline-small-line-height: 2rem;
  --mat-sys-headline-small-size: 1.5rem;
  --mat-sys-headline-small-tracking: 0;
  --mat-sys-headline-small-weight: 400;
  --mat-sys-label-large: 500 0.875rem / 1.25rem Roboto;
  --mat-sys-label-large-font: Roboto;
  --mat-sys-label-large-line-height: 1.25rem;
  --mat-sys-label-large-size: 0.875rem;
  --mat-sys-label-large-tracking: 0.006rem;
  --mat-sys-label-large-weight: 500;
  --mat-sys-label-large-weight-prominent: 700;
  --mat-sys-label-medium: 500 0.75rem / 1rem Roboto;
  --mat-sys-label-medium-font: Roboto;
  --mat-sys-label-medium-line-height: 1rem;
  --mat-sys-label-medium-size: 0.75rem;
  --mat-sys-label-medium-tracking: 0.031rem;
  --mat-sys-label-medium-weight: 500;
  --mat-sys-label-medium-weight-prominent: 700;
  --mat-sys-label-small: 500 0.688rem / 1rem Roboto;
  --mat-sys-label-small-font: Roboto;
  --mat-sys-label-small-line-height: 1rem;
  --mat-sys-label-small-size: 0.688rem;
  --mat-sys-label-small-tracking: 0.031rem;
  --mat-sys-label-small-weight: 500;
  --mat-sys-title-large: 400 1.375rem / 1.75rem Roboto;
  --mat-sys-title-large-font: Roboto;
  --mat-sys-title-large-line-height: 1.75rem;
  --mat-sys-title-large-size: 1.375rem;
  --mat-sys-title-large-tracking: 0;
  --mat-sys-title-large-weight: 400;
  --mat-sys-title-medium: 500 1rem / 1.5rem Roboto;
  --mat-sys-title-medium-font: Roboto;
  --mat-sys-title-medium-line-height: 1.5rem;
  --mat-sys-title-medium-size: 1rem;
  --mat-sys-title-medium-tracking: 0.009rem;
  --mat-sys-title-medium-weight: 500;
  --mat-sys-title-small: 500 0.875rem / 1.25rem Roboto;
  --mat-sys-title-small-font: Roboto;
  --mat-sys-title-small-line-height: 1.25rem;
  --mat-sys-title-small-size: 0.875rem;
  --mat-sys-title-small-tracking: 0.006rem;
  --mat-sys-title-small-weight: 500;
  --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;
  --mat-sys-dragged-state-layer-opacity: 0.16;
  --mat-sys-focus-state-layer-opacity: 0.12;
  --mat-sys-hover-state-layer-opacity: 0.08;
  --mat-sys-pressed-state-layer-opacity: 0.12;
}
body {
  color-scheme: light;
  background-color: var(--mat-sys-surface);
  color: var(--mat-sys-on-surface);
  font: var(--mat-sys-body-medium);
  margin: 0;
}
html,
body {
  height: 100%;
}
body {
  margin: 0;
  font-family:
    Roboto,
    "Helvetica Neue",
    sans-serif;
}
.danger-container {
  --mat-sys-background: light-dark(#fff8f6, #181211);
  --mat-sys-error: light-dark(#ba1a1a, #ffb4ab);
  --mat-sys-error-container: light-dark(#ffdad6, #93000a);
  --mat-sys-inverse-on-surface: light-dark(#fbeeec, #362f2e);
  --mat-sys-inverse-primary: light-dark(#ffb4a8, #c00100);
  --mat-sys-inverse-surface: light-dark(#362f2e, #ede0dd);
  --mat-sys-on-background: light-dark(#201a19, #ede0dd);
  --mat-sys-on-error: light-dark(#ffffff, #690005);
  --mat-sys-on-error-container: light-dark(#93000a, #ffdad6);
  --mat-sys-on-primary: light-dark(#ffffff, #690100);
  --mat-sys-on-primary-container: light-dark(#930100, #ffdad4);
  --mat-sys-on-primary-fixed: light-dark(#410000, #410000);
  --mat-sys-on-primary-fixed-variant: light-dark(#930100, #930100);
  --mat-sys-on-secondary: light-dark(#ffffff, #442925);
  --mat-sys-on-secondary-container: light-dark(#5d3f3b, #ffdad4);
  --mat-sys-on-secondary-fixed: light-dark(#2c1512, #2c1512);
  --mat-sys-on-secondary-fixed-variant: light-dark(#5d3f3b, #5d3f3b);
  --mat-sys-on-surface: light-dark(#201a19, #ede0dd);
  --mat-sys-on-surface-variant: light-dark(#534341, #f5ddda);
  --mat-sys-on-tertiary: light-dark(#ffffff, #690100);
  --mat-sys-on-tertiary-container: light-dark(#930100, #ffdad4);
  --mat-sys-on-tertiary-fixed: light-dark(#410000, #410000);
  --mat-sys-on-tertiary-fixed-variant: light-dark(#930100, #930100);
  --mat-sys-outline: light-dark(#857370, #a08c89);
  --mat-sys-outline-variant: light-dark(#d8c2be, #534341);
  --mat-sys-primary: light-dark(#c00100, #ffb4a8);
  --mat-sys-primary-container: light-dark(#ffdad4, #930100);
  --mat-sys-primary-fixed: light-dark(#ffdad4, #ffdad4);
  --mat-sys-primary-fixed-dim: light-dark(#ffb4a8, #ffb4a8);
  --mat-sys-scrim: light-dark(#000000, #000000);
  --mat-sys-secondary: light-dark(#775651, #e7bdb6);
  --mat-sys-secondary-container: light-dark(#ffdad4, #5d3f3b);
  --mat-sys-secondary-fixed: light-dark(#ffdad4, #ffdad4);
  --mat-sys-secondary-fixed-dim: light-dark(#e7bdb6, #e7bdb6);
  --mat-sys-shadow: light-dark(#000000, #000000);
  --mat-sys-surface: light-dark(#fff8f6, #181211);
  --mat-sys-surface-bright: light-dark(#fff8f6, #3f3737);
  --mat-sys-surface-container: light-dark(#f9ebe9, #251e1d);
  --mat-sys-surface-container-high: light-dark(#f3e5e4, #302828);
  --mat-sys-surface-container-highest: light-dark(#ede0dd, #3b3332);
  --mat-sys-surface-container-low: light-dark(#fef1ef, #201a19);
  --mat-sys-surface-container-lowest: light-dark(#ffffff, #130d0c);
  --mat-sys-surface-dim: light-dark(#e4d7d6, #181211);
  --mat-sys-surface-tint: light-dark(#c00100, #ffb4a8);
  --mat-sys-surface-variant: light-dark(#f5ddda, #534341);
  --mat-sys-tertiary: light-dark(#c00100, #ffb4a8);
  --mat-sys-tertiary-container: light-dark(#ffdad4, #930100);
  --mat-sys-tertiary-fixed: light-dark(#ffdad4, #ffdad4);
  --mat-sys-tertiary-fixed-dim: light-dark(#ffb4a8, #ffb4a8);
  --mat-sys-neutral-variant20: #3b2d2b;
  --mat-sys-neutral10: #201a19;
  --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);
  --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);
  --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);
  --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);
  --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);
  --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);
  --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;
  --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;
}

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