@charset "UTF-8";.app-brand-logo{display:block;object-fit:contain}.app-brand-logo--full{width:auto;height:auto;max-height:3rem;max-width:min(12.5rem,100%)}.app-brand-logo--on-dark{filter:drop-shadow(0 8px 18px rgba(0,0,0,.28))}.app-brand-logo--mark{width:100%;height:100%;border-radius:inherit}.portal-auth__brand-logo{margin:0 0 1.35rem;max-height:3.35rem}.toolbar-brand-mark{width:1.65rem;height:1.65rem;border-radius:.45rem;object-fit:contain;flex-shrink:0;margin-right:.15rem}.portal-app .brand-mark:has(.app-brand-logo--mark),.brand-mark:has(.app-brand-logo--mark){background:linear-gradient(145deg,var(--cream, #f5f1e8),color-mix(in srgb,var(--sand, #eadbc7) 72%,var(--cream, #f5f1e8)));border:1px solid color-mix(in srgb,var(--coffee-light, #b89673) 32%,var(--card-border, #ece7dd));box-shadow:var(--app-shadow-soft);padding:.15rem;overflow:hidden}.auth-brand-badge:has(.app-brand-logo){width:auto;height:auto;padding:0;background:transparent;border:none;box-shadow:none;margin-bottom:1rem}.auth-brand-badge:has(.app-brand-logo) .app-brand-logo--full{max-height:3.5rem;max-width:min(14rem,88vw)}html{color-scheme:light;--mat-sys-background: #f9faf3;--mat-sys-error: #ba1a1a;--mat-sys-error-container: #ffdad6;--mat-sys-inverse-on-surface: #f1f1eb;--mat-sys-inverse-primary: #02e600;--mat-sys-inverse-surface: #2f312d;--mat-sys-on-background: #1a1c18;--mat-sys-on-error: #ffffff;--mat-sys-on-error-container: #93000a;--mat-sys-on-primary: #ffffff;--mat-sys-on-primary-container: #015300;--mat-sys-on-primary-fixed: #002200;--mat-sys-on-primary-fixed-variant: #015300;--mat-sys-on-secondary: #ffffff;--mat-sys-on-secondary-container: #3c4b37;--mat-sys-on-secondary-fixed: #121f0e;--mat-sys-on-secondary-fixed-variant: #3c4b37;--mat-sys-on-surface: #1a1c18;--mat-sys-on-surface-variant: #43483f;--mat-sys-on-tertiary: #ffffff;--mat-sys-on-tertiary-container: #723600;--mat-sys-on-tertiary-fixed: #311300;--mat-sys-on-tertiary-fixed-variant: #723600;--mat-sys-outline: #73796e;--mat-sys-outline-variant: #c3c8bc;--mat-sys-primary: #026e00;--mat-sys-primary-container: #77ff61;--mat-sys-primary-fixed: #77ff61;--mat-sys-primary-fixed-dim: #02e600;--mat-sys-scrim: #000000;--mat-sys-secondary: #54634d;--mat-sys-secondary-container: #d7e8cd;--mat-sys-secondary-fixed: #d7e8cd;--mat-sys-secondary-fixed-dim: #bbcbb2;--mat-sys-shadow: #000000;--mat-sys-surface: #f9faf3;--mat-sys-surface-bright: #f9faf3;--mat-sys-surface-container: #eeeee7;--mat-sys-surface-container-high: #e8e9e1;--mat-sys-surface-container-highest: #e2e3dc;--mat-sys-surface-container-low: #f3f4ed;--mat-sys-surface-container-lowest: #ffffff;--mat-sys-surface-dim: #dadbd3;--mat-sys-surface-tint: #026e00;--mat-sys-surface-variant: #dfe4d7;--mat-sys-tertiary: #964900;--mat-sys-tertiary-container: #ffdcc7;--mat-sys-tertiary-fixed: #ffdcc7;--mat-sys-tertiary-fixed-dim: #ffb787;--mat-sys-neutral-variant20: #2c3229;--mat-sys-neutral10: #1a1c18;--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-body-large: 400 1rem / 1.5rem Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-body-large-font: Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-body-medium-font: Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .875rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-body-small-font: Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem Lora, ui-serif, Georgia, serif;--mat-sys-display-large-font: Lora, ui-serif, Georgia, serif;--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem Lora, ui-serif, Georgia, serif;--mat-sys-display-medium-font: Lora, ui-serif, Georgia, serif;--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 Lora, ui-serif, Georgia, serif;--mat-sys-display-small-font: Lora, ui-serif, Georgia, serif;--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 Lora, ui-serif, Georgia, serif;--mat-sys-headline-large-font: Lora, ui-serif, Georgia, serif;--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 Lora, ui-serif, Georgia, serif;--mat-sys-headline-medium-font: Lora, ui-serif, Georgia, serif;--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 Lora, ui-serif, Georgia, serif;--mat-sys-headline-small-font: Lora, ui-serif, Georgia, serif;--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: 600 .875rem / 1.25rem Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-label-large-font: Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .875rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 600;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 600 .75rem / 1rem Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-label-medium-font: Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 600;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 600 .688rem / 1rem Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-label-small-font: Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 600;--mat-sys-title-large: 400 1.375rem / 1.75rem Lora, ui-serif, Georgia, serif;--mat-sys-title-large-font: Lora, ui-serif, Georgia, serif;--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: 600 1rem / 1.5rem Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-title-medium-font: Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 600;--mat-sys-title-small: 600 .875rem / 1.25rem Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-title-small-font: Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .875rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 600;--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: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12}html.app-dark{color-scheme:dark;--mat-sys-background: #121410;--mat-sys-error: #ffb4ab;--mat-sys-error-container: #93000a;--mat-sys-inverse-on-surface: #2f312d;--mat-sys-inverse-primary: #026e00;--mat-sys-inverse-surface: #e2e3dc;--mat-sys-on-background: #e2e3dc;--mat-sys-on-error: #690005;--mat-sys-on-error-container: #ffdad6;--mat-sys-on-primary: #013a00;--mat-sys-on-primary-container: #77ff61;--mat-sys-on-primary-fixed: #002200;--mat-sys-on-primary-fixed-variant: #015300;--mat-sys-on-secondary: #263422;--mat-sys-on-secondary-container: #d7e8cd;--mat-sys-on-secondary-fixed: #121f0e;--mat-sys-on-secondary-fixed-variant: #3c4b37;--mat-sys-on-surface: #e2e3dc;--mat-sys-on-surface-variant: #dfe4d7;--mat-sys-on-tertiary: #502400;--mat-sys-on-tertiary-container: #ffdcc7;--mat-sys-on-tertiary-fixed: #311300;--mat-sys-on-tertiary-fixed-variant: #723600;--mat-sys-outline: #8d9387;--mat-sys-outline-variant: #43483f;--mat-sys-primary: #02e600;--mat-sys-primary-container: #015300;--mat-sys-primary-fixed: #77ff61;--mat-sys-primary-fixed-dim: #02e600;--mat-sys-scrim: #000000;--mat-sys-secondary: #bbcbb2;--mat-sys-secondary-container: #3c4b37;--mat-sys-secondary-fixed: #d7e8cd;--mat-sys-secondary-fixed-dim: #bbcbb2;--mat-sys-shadow: #000000;--mat-sys-surface: #121410;--mat-sys-surface-bright: #383a35;--mat-sys-surface-container: #1e201c;--mat-sys-surface-container-high: #282b26;--mat-sys-surface-container-highest: #333531;--mat-sys-surface-container-low: #1a1c18;--mat-sys-surface-container-lowest: #0c0f0b;--mat-sys-surface-dim: #121410;--mat-sys-surface-tint: #02e600;--mat-sys-surface-variant: #43483f;--mat-sys-tertiary: #ffb787;--mat-sys-tertiary-container: #723600;--mat-sys-tertiary-fixed: #ffdcc7;--mat-sys-tertiary-fixed-dim: #ffb787;--mat-sys-neutral-variant20: #2c3229;--mat-sys-neutral10: #1a1c18;--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-body-large: 400 1rem / 1.5rem Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-body-large-font: Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-body-medium-font: Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .875rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-body-small-font: Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem Lora, ui-serif, Georgia, serif;--mat-sys-display-large-font: Lora, ui-serif, Georgia, serif;--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem Lora, ui-serif, Georgia, serif;--mat-sys-display-medium-font: Lora, ui-serif, Georgia, serif;--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 Lora, ui-serif, Georgia, serif;--mat-sys-display-small-font: Lora, ui-serif, Georgia, serif;--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 Lora, ui-serif, Georgia, serif;--mat-sys-headline-large-font: Lora, ui-serif, Georgia, serif;--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 Lora, ui-serif, Georgia, serif;--mat-sys-headline-medium-font: Lora, ui-serif, Georgia, serif;--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 Lora, ui-serif, Georgia, serif;--mat-sys-headline-small-font: Lora, ui-serif, Georgia, serif;--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: 600 .875rem / 1.25rem Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-label-large-font: Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .875rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 600;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 600 .75rem / 1rem Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-label-medium-font: Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 600;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 600 .688rem / 1rem Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-label-small-font: Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 600;--mat-sys-title-large: 400 1.375rem / 1.75rem Lora, ui-serif, Georgia, serif;--mat-sys-title-large-font: Lora, ui-serif, Georgia, serif;--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: 600 1rem / 1.5rem Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-title-medium-font: Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 600;--mat-sys-title-small: 600 .875rem / 1.25rem Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-title-small-font: Nunito Sans, ui-sans-serif, system-ui, Segoe UI, sans-serif;--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .875rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 600;--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: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12}:root{--green-primary: #5e7d5a;--green-dark: #435a41;--green-sage: #a9b99c;--green-light: #dce8d5;--green-pale: #f6f8f3;--terracotta: #d07a52;--terracotta-hover: #be6d48;--terracotta-pressed: #435a41;--sand: #eadbc7;--cream: #f5f1e8;--warm-white: #f7f5ef;--coffee-light: #b89673;--coffee-dark: #7a6452;--gray-50: #fafaf8;--gray-100: #f3f3ef;--gray-200: #e6e6e1;--gray-300: #d6d6d0;--gray-500: #7a7a74;--gray-700: #51514c;--gray-900: #2d2d2a;--text-dark: #2d2d2a;--text-muted: #7a6452;--sidebar-hover: #f2f6ee;--card-border: #ece7dd;--navbar-border: #ece9e2;--card-featured-bg: #eef5ea;--card-featured-border: #c7d9bf;--sage-green: var(--green-primary);--dark-olive: var(--green-dark);--warm-brown: var(--coffee-dark);--navbar-green: var(--green-dark);--navbar-bg: #ffffff;--status-success-bg: #eaf7ec;--status-success-border: #8fc79a;--status-success-text: #2e7d32;--status-success-icon: #43a047;--status-warning-bg: #fff6e6;--status-warning-border: #e9be65;--status-warning-text: #b87400;--status-warning-icon: #d99a00;--status-error-bg: #fdeeee;--status-error-border: #e8a1a1;--status-error-text: #b73a3a;--status-error-icon: #d14e4e;--status-info-bg: #eaf4fb;--status-info-border: #8dbddc;--status-info-text: #2f6d91;--status-info-icon: #4d95c4;--chart-series-1: #5e7d5a;--chart-series-2: #d07a52;--chart-series-3: #7da4b5;--chart-series-4: #b9a67d;--chart-series-5: #8c9c73;--mat-sys-primary: var(--green-primary);--mat-sys-on-primary: #ffffff;--mat-sys-primary-container: var(--card-featured-bg);--mat-sys-on-primary-container: var(--green-dark);--mat-sys-tertiary: var(--terracotta);--mat-sys-on-tertiary: #ffffff;--mat-sys-tertiary-container: var(--status-warning-bg);--mat-sys-on-tertiary-container: var(--status-warning-text);--mat-sys-surface: #ffffff;--mat-sys-on-surface: var(--gray-900);--mat-sys-on-surface-variant: var(--gray-700);--mat-sys-surface-container-low: #ffffff;--mat-sys-surface-container-lowest: var(--warm-white);--mat-sys-background: var(--warm-white);--mat-sys-outline: var(--gray-300);--mat-sys-outline-variant: var(--card-border);--app-font-display: "Lora", ui-serif, Georgia, serif;--app-font-body: "Nunito Sans", ui-sans-serif, system-ui, "Segoe UI", sans-serif;--font-weight-base: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-heading: 600;--text-xs: .8125rem;--text-sm: .875rem;--text-base: 1rem;--leading-relaxed: 1.72;--tracking-body: -.011em;--tracking-caps: .14em;--app-warm: color-mix(in srgb, var(--terracotta) 82%, white 18%);--app-warm-soft: color-mix(in srgb, var(--terracotta) 14%, var(--mat-sys-surface-container-low));--ease-out-quart: cubic-bezier(.25, 1, .5, 1);--ease-out-quint: cubic-bezier(.22, 1, .36, 1);--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--duration-fast: .15s;--duration-med: .26s;--duration-slow: .52s;--app-space-xs: .35rem;--app-space-sm: .5rem;--app-space-md: .75rem;--app-space-lg: 1rem;--app-space-xl: 1.25rem;--app-radius-sm: 12px;--app-radius-md: 12px;--app-radius-lg: 16px;--app-radius-btn: 14px;--app-radius-xl: 24px;--app-radius-pill: 999px;--app-blur: 14px;--app-transition: var(--duration-med) var(--ease-out-quart);--app-transition-snap: var(--duration-fast) var(--ease-out-expo);--app-shadow-soft: 0 8px 24px rgba(0, 0, 0, .05);--app-shadow-lift: 0 18px 50px rgba(0, 0, 0, .15);--app-shadow-dropdown: 0 10px 30px rgba(0, 0, 0, .08);--app-surface-glass: color-mix(in srgb, var(--warm-white) 86%, transparent);--gradient-primary: linear-gradient(135deg, #5e7d5a, #8fa789);--gradient-hero-admin: linear-gradient(135deg, #f8f6f0, #eef5ea)}html.app-dark{--warm-white: #1e211d;--cream: #272c27;--card-border: #3d453d;--navbar-border: #3d453d;--navbar-bg: #2a2f2a;--sidebar-hover: #374037;--gray-100: #374037;--gray-500: #a8aaa5;--text-dark: #f5f5f2;--text-muted: #c6c8c3;--mat-sys-primary: var(--green-primary);--mat-sys-on-primary: #ffffff;--mat-sys-primary-container: #374037;--mat-sys-on-primary-container: #eef5ea;--mat-sys-surface: #272c27;--mat-sys-on-surface: #f5f5f2;--mat-sys-on-surface-variant: #c6c8c3;--mat-sys-surface-container-low: #2d332d;--mat-sys-surface-container-lowest: #1e211d;--mat-sys-background: #1e211d;--mat-sys-outline-variant: #3d453d;--gradient-hero-admin: linear-gradient(135deg, #2a2f2a, #3c4b3b)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}html,body{height:100%;margin:0}html{font-family:var(--app-font-body)}body{position:relative;isolation:isolate;font-family:var(--app-font-body);font-size:var(--text-base);line-height:var(--leading-relaxed);letter-spacing:var(--tracking-body);font-optical-sizing:auto;color:var(--text-dark);background-color:var(--warm-white);background-image:linear-gradient(180deg,var(--warm-white) 0%,color-mix(in srgb,var(--cream) 40%,var(--warm-white)) 100%);background-attachment:fixed}::selection{background:color-mix(in srgb,var(--terracotta) 22%,transparent)}:focus-visible{outline:3px solid color-mix(in srgb,var(--green-primary) 45%,transparent);outline-offset:2px}body:after{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.042;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");mix-blend-mode:soft-light}body>app-root{position:relative;z-index:1}html.app-dark{--app-shadow-soft: 0 8px 24px rgba(0, 0, 0, .28);--app-shadow-lift: 0 18px 50px rgba(0, 0, 0, .38)}html.app-dark body{background-image:linear-gradient(180deg,#1e211d,#222722)}html.app-dark body:after{opacity:.055;mix-blend-mode:overlay}.mat-mdc-card{border-radius:var(--app-radius-lg)!important;border:1px solid var(--card-border);box-shadow:var(--app-shadow-soft)!important;background:linear-gradient(180deg,var(--mat-sys-surface) 0%,color-mix(in srgb,var(--mat-sys-surface) 98%,var(--gray-100)) 100%)!important}.mat-mdc-card.app-card-lift{transition:box-shadow var(--app-transition),transform var(--app-transition),border-color var(--app-transition);will-change:transform}.mat-mdc-card.app-card-lift:hover{box-shadow:var(--app-shadow-soft),var(--app-shadow-lift)!important;transform:translateY(-2px)}@media(prefers-reduced-motion:reduce){.mat-mdc-card.app-card-lift{will-change:auto}.mat-mdc-card.app-card-lift:hover{transform:none}}.mat-mdc-unelevated-card,.mat-mdc-outlined-card{border-radius:var(--app-radius-lg)!important}mat-card-header+mat-card-content,.mat-mdc-card-header+mat-card-content,.mat-mdc-card-header+.mat-mdc-card-content{margin-top:var(--app-space-xs)}mat-card-content+mat-card-actions,.mat-mdc-card-content+mat-card-actions{margin-top:var(--app-space-sm)}.mat-mdc-card-actions{gap:var(--app-space-sm);padding-top:var(--app-space-sm)!important}.mat-mdc-dialog-title{margin-bottom:var(--app-space-sm);line-height:1.35}.mat-mdc-dialog-content{padding-bottom:var(--app-space-md)!important}.mat-mdc-dialog-actions{gap:var(--app-space-sm);padding-top:var(--app-space-md)!important;margin-top:var(--app-space-xs)}.mat-mdc-card-content>p+p,.mat-mdc-dialog-content>p+p{margin-top:var(--app-space-sm)}.mat-mdc-raised-button,.mat-mdc-unelevated-button,.mat-mdc-filled-button{border-radius:var(--app-radius-btn)!important;font-weight:600;letter-spacing:.01em}.mat-mdc-unelevated-button.mat-primary,.mat-mdc-filled-button.mat-primary{--mat-button-filled-container-color: var(--green-primary);--mat-button-filled-label-text-color: #ffffff;--mat-button-filled-state-layer-color: #ffffff}.mat-mdc-unelevated-button.mat-primary:hover:not([disabled]),.mat-mdc-filled-button.mat-primary:hover:not([disabled]){--mat-button-filled-container-color: #516c4e}.mat-mdc-outlined-button,.mat-mdc-stroked-button{border-radius:var(--app-radius-btn)!important}.mat-mdc-outlined-button.mat-primary{--mat-button-outlined-label-text-color: var(--green-primary);--mat-button-outlined-outline-color: var(--green-primary)}.app-cta{font-weight:600!important;letter-spacing:.02em!important;border-radius:var(--app-radius-md)!important;transition:box-shadow .22s var(--ease-out-quart),transform .2s var(--ease-out-expo),filter .2s var(--ease-out-quart)}.app-cta mat-icon{margin-right:.45rem;margin-left:-.05rem;font-size:1.25rem;width:1.25rem;height:1.25rem;vertical-align:middle}.app-cta--primary.mat-mdc-unelevated-button,.app-cta--primary.mat-mdc-button-base{padding:.55rem 1.25rem!important;min-height:2.75rem;box-shadow:var(--app-shadow-lift)}.app-cta--primary:hover:not([disabled]){box-shadow:var(--app-shadow-soft),var(--app-shadow-lift)!important;filter:brightness(1.02);transform:translateY(-2px)}.app-cta--primary:active:not([disabled]){transform:translateY(0) scale(.97);transition-duration:.12s}.app-cta--tonal.mat-tonal-button{padding:.55rem 1.2rem!important;min-height:2.75rem;--mat-button-tonal-container-color: var(--mat-sys-primary-container);--mat-button-tonal-label-text-color: var(--mat-sys-on-primary-container);--mat-button-tonal-state-layer-color: var(--mat-sys-on-primary-container);box-shadow:0 1px 3px #0f172a12}html.app-dark .app-cta--tonal.mat-tonal-button{box-shadow:0 1px 4px #00000040}.app-cta--tonal.mat-tonal-button:hover:not([disabled]){filter:brightness(1.03);box-shadow:0 2px 10px color-mix(in srgb,var(--mat-sys-primary) 16%,transparent)}@media(prefers-reduced-motion:reduce){.app-cta--primary:hover:not([disabled]),.app-cta--primary:active:not([disabled]){transform:none}}.shell .toolbar.mat-toolbar,.shell .toolbar.mat-mdc-toolbar,.shell .bottom-nav{border:none!important;border-radius:0!important;box-shadow:none!important}.shell .toolbar .mat-toolbar-single-row,.shell .toolbar .mdc-toolbar__row{border-radius:0!important}.mat-toolbar.mat-primary{--mat-toolbar-container-background-color: var(--mat-sys-primary);--mat-toolbar-container-text-color: var(--mat-sys-on-primary);color:var(--mat-sys-on-primary)}.mat-toolbar.mat-primary .mat-mdc-icon-button{--mat-icon-button-icon-color: var(--mat-sys-on-primary);--mat-icon-button-state-layer-color: var(--mat-sys-on-primary);color:var(--mat-sys-on-primary)}a:not(.mat-mdc-button-base):not(.mdc-list-item){color:var(--mat-sys-primary);text-underline-offset:3px}a:not(.mat-mdc-button-base):not(.mdc-list-item):hover{color:color-mix(in srgb,var(--mat-sys-primary) 85%,black)}html.app-dark a:not(.mat-mdc-button-base):not(.mdc-list-item):hover{color:color-mix(in srgb,var(--mat-sys-primary) 82%,white)}.app-content-area .page-title,.page-title{font-family:var(--app-font-display);font-weight:650;font-variation-settings:"SOFT" 45,"WONK" .35;letter-spacing:-.03em;line-height:1.18;margin-bottom:var(--app-space-sm);color:var(--mat-sys-on-surface)}h1.page-title{position:relative;padding-bottom:.15rem}h1.page-title:after{content:"";display:block;width:2.75rem;height:.22rem;margin-top:.5rem;border-radius:999px;background:linear-gradient(90deg,var(--mat-sys-primary),color-mix(in srgb,var(--mat-sys-tertiary) 70%,var(--mat-sys-primary)));opacity:.92}.app-page-hero h1.page-title:after{display:none}.app-page-hero{position:relative;overflow:hidden;isolation:isolate;display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.35rem;padding:1.2rem 1.35rem 1.35rem;border-radius:var(--app-radius-lg);border:1px solid var(--card-featured-border);background:var(--gradient-hero-admin);box-shadow:var(--app-shadow-soft)}.app-page-hero:before{content:"";position:absolute;inset:-40% -20% auto auto;width:min(520px,90vw);height:min(520px,90vw);border-radius:50%;background:radial-gradient(circle at 30% 30%,color-mix(in srgb,var(--green-primary) 18%,transparent),transparent 62%);opacity:.45;filter:blur(.5px);pointer-events:none;z-index:0}.app-page-hero>*{position:relative;z-index:1}.app-page-kicker{margin:0 0 .25rem;font-family:var(--app-font-body);font-size:.7rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:color-mix(in srgb,var(--mat-sys-primary) 55%,var(--mat-sys-tertiary))}.app-page-hero .page-title{margin:0 0 .35rem;font-size:clamp(1.5rem,2.2vw,1.85rem);font-family:var(--app-font-display, Georgia, "Times New Roman", serif);letter-spacing:-.02em;line-height:1.12}.app-page-hero .muted{margin:0;font-size:.92rem;line-height:1.45;max-width:40rem;color:var(--mat-sys-on-surface-variant)}.app-page-hero-actions{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:flex-end;gap:.85rem}.app-page-hero-actions>.app-cta{margin-bottom:0}.app-page-hero-actions--stack{flex-direction:column;flex-wrap:nowrap;align-items:flex-end;justify-content:flex-start;gap:.75rem}.app-page-hero-actions--stack mat-form-field{width:min(100%,16.5rem)}.app-page-hero-actions--stack button[mat-flat-button]{font-weight:600;border-radius:var(--app-radius-sm)!important;box-shadow:var(--app-shadow-lift)}.app-page-hero-actions--stack button[mat-flat-button] mat-icon{margin-right:.35rem}@media(max-width:639px){.app-page-hero-actions--stack{align-items:stretch;width:100%}.app-page-hero-actions--stack mat-form-field,.app-page-hero-actions--stack button[mat-flat-button]{width:100%;max-width:none}}@keyframes app-fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.app-reveal{animation:app-fade-up .52s var(--ease-out-expo) both}.app-reveal-delay-1{animation-delay:.1s}.app-reveal-delay-2{animation-delay:.18s}.app-reveal-delay-3{animation-delay:.26s}.app-alert{display:flex;align-items:flex-start;gap:.55rem;margin:0 0 .85rem;padding:.7rem .85rem;border-radius:var(--app-radius-md);font-size:.875rem;line-height:1.45;animation:app-alert-in .28s var(--ease-out-quart) both}.app-alert mat-icon{flex-shrink:0;font-size:1.15rem;width:1.15rem;height:1.15rem;margin-top:.1rem}.app-alert--error{background:var(--status-error-bg);border:1px solid var(--status-error-border);color:var(--status-error-text)}.app-alert--error mat-icon{color:var(--status-error-icon)}@keyframes app-alert-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.app-alert{animation:none}}.app-wizard-progress{max-width:880px;margin:0 auto 1.35rem;padding:0 .15rem}.app-wizard-progress__track{height:4px;border-radius:999px;background:var(--gray-200);overflow:hidden}.app-wizard-progress__fill{height:100%;border-radius:inherit;background:var(--gradient-primary);transition:width .42s var(--ease-out-quart)}.app-wizard-progress__steps{display:flex;justify-content:space-between;gap:.35rem;margin:.55rem 0 0;padding:0;list-style:none}.app-wizard-progress__step{font-size:.68rem;font-weight:600;letter-spacing:.04em;color:var(--gray-500);transition:color var(--app-transition)}.app-wizard-progress__step--active,.app-wizard-progress__step--done{color:var(--green-dark)}.app-chart-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.35rem;padding:1.75rem 1rem;margin:0;color:var(--mat-sys-on-surface-variant);font-size:.9rem}.app-chart-empty mat-icon{font-size:1.75rem;width:1.75rem;height:1.75rem;opacity:.55;color:var(--gray-500)}.app-content-area{padding-top:.15rem}.app-content-area .muted{line-height:1.5;color:color-mix(in srgb,var(--mat-sys-on-surface-variant) 92%,var(--mat-sys-on-surface))}.mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-notch-piece,.mat-mdc-form-field.mat-form-field-appearance-outline .mdc-notched-outline__leading,.mat-mdc-form-field.mat-form-field-appearance-outline .mdc-notched-outline__notch,.mat-mdc-form-field.mat-form-field-appearance-outline .mdc-notched-outline__trailing{border-color:color-mix(in srgb,var(--mat-sys-outline-variant) 88%,var(--mat-sys-primary))!important}.mat-mdc-form-field.mat-form-field-appearance-outline:hover .mat-mdc-notch-piece,.mat-mdc-form-field.mat-form-field-appearance-outline:hover .mdc-notched-outline__leading,.mat-mdc-form-field.mat-form-field-appearance-outline:hover .mdc-notched-outline__notch,.mat-mdc-form-field.mat-form-field-appearance-outline:hover .mdc-notched-outline__trailing{border-color:color-mix(in srgb,var(--mat-sys-outline) 70%,var(--mat-sys-primary))!important}.mat-mdc-form-field.mat-focused.mat-form-field-appearance-outline .mat-mdc-notch-piece,.mat-mdc-form-field.mat-focused.mat-form-field-appearance-outline .mdc-notched-outline__leading,.mat-mdc-form-field.mat-focused.mat-form-field-appearance-outline .mdc-notched-outline__notch,.mat-mdc-form-field.mat-focused.mat-form-field-appearance-outline .mdc-notched-outline__trailing{border-color:var(--mat-sys-primary)!important}.cdk-overlay-container .mat-mdc-dialog-container .mat-mdc-dialog-content .form{gap:.8rem!important;row-gap:.8rem!important;column-gap:.9rem!important}.mat-mdc-snack-bar-container .mdc-snackbar__surface{border-radius:var(--app-radius-md)!important;border:1px solid color-mix(in srgb,var(--mat-sys-outline-variant) 35%,transparent);box-shadow:var(--app-shadow-soft),0 16px 48px color-mix(in srgb,var(--mat-sys-shadow, #0f172a) 12%,transparent)!important}.mat-mdc-snack-bar-container .mat-mdc-snack-bar-label{font-weight:500;letter-spacing:.01em}.mat-mdc-snack-bar-container.cognithree-progress-snack{--mdc-snackbar-container-color: transparent;--mat-snack-bar-button-color: var(--green-dark, #435a41)}.mat-mdc-snack-bar-container.cognithree-progress-snack .mdc-snackbar__surface{background:linear-gradient(135deg,color-mix(in srgb,var(--cream, #f5f1e8) 45%,white),color-mix(in srgb,var(--card-featured-bg, #eef5ea) 75%,white))!important;color:var(--text-dark, #2d2d2a)!important;border:1px solid color-mix(in srgb,var(--green-primary, #5e7d5a) 30%,transparent)!important;box-shadow:0 14px 36px -18px color-mix(in srgb,var(--green-dark, #435a41) 40%,transparent),0 1px color-mix(in srgb,white 80%,transparent) inset!important}.mat-mdc-snack-bar-container.cognithree-progress-snack .mat-mdc-snack-bar-label{color:var(--text-dark, #2d2d2a)!important;font-weight:600}.mat-mdc-snack-bar-container.cognithree-progress-snack .mat-mdc-button-base{color:var(--green-primary, #5e7d5a)!important;font-weight:700!important}.mat-expansion-panel{border-radius:var(--app-radius-md)!important;border:1px solid color-mix(in srgb,var(--mat-sys-outline-variant) 50%,transparent);box-shadow:var(--app-shadow-soft)!important;background:var(--mat-sys-surface-container-low)!important}.mat-expansion-panel-header{font-family:var(--app-font-body);transition:background-color var(--app-transition)}.mat-expansion-panel-header:hover{background:color-mix(in srgb,var(--mat-sys-primary) 5%,var(--mat-sys-surface-container-low))!important}.mat-expansion-panel.mat-expanded>.mat-expansion-panel-header{border-bottom:1px solid color-mix(in srgb,var(--mat-sys-outline-variant) 45%,transparent)}.mat-mdc-menu-panel{border-radius:var(--app-radius-md)!important;border:1px solid color-mix(in srgb,var(--mat-sys-outline-variant) 40%,transparent);box-shadow:var(--app-shadow-dropdown)!important}.mat-mdc-select-panel{border-radius:var(--app-radius-md)!important;border:1px solid color-mix(in srgb,var(--mat-sys-outline-variant) 35%,transparent)}.app-content-area table.simple:not(.mat-mdc-table) thead th,.app-content-area .simple-table thead th{background:linear-gradient(180deg,color-mix(in srgb,var(--mat-sys-primary) 7%,var(--mat-sys-surface-container)),color-mix(in srgb,var(--mat-sys-primary) 3%,var(--mat-sys-surface-container)))}.cdk-overlay-container .mat-mdc-dialog-container .mat-mdc-dialog-surface{border-radius:var(--app-radius-xl)!important;border:1px solid color-mix(in srgb,var(--mat-sys-outline-variant) 42%,transparent);box-shadow:var(--app-shadow-soft),0 28px 64px color-mix(in srgb,var(--mat-sys-shadow, #0f172a) 14%,transparent)!important}.cdk-overlay-container .appt-quick-dialog-panel .mat-mdc-dialog-container{max-height:min(92vh,920px)}.cdk-overlay-container .appt-quick-dialog-panel .mat-mdc-dialog-container .mat-mdc-dialog-surface{max-height:min(92vh,920px);animation:appt-dialog-in .38s var(--ease-out-expo, cubic-bezier(.16, 1, .3, 1)) both}.cdk-overlay-container .appt-quick-dialog-panel--split .mat-mdc-dialog-container{max-width:min(1180px,100vw - 20px)}.cdk-overlay-container .appt-quick-dialog-panel--split .mat-mdc-dialog-content{max-height:min(88vh,900px)!important}@keyframes appt-dialog-in{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.cdk-overlay-container .appt-quick-dialog-panel .mat-mdc-dialog-container .mat-mdc-dialog-surface,.cdk-overlay-container .ticket-ruta-vida-panel .mat-mdc-dialog-container .mat-mdc-dialog-surface{animation:none}}.cdk-overlay-container .ticket-ruta-vida-panel .mat-mdc-dialog-container .mat-mdc-dialog-surface{padding:0;overflow:hidden;background:color-mix(in srgb,white 96%,var(--cream, #f5f1e8));border:1px solid color-mix(in srgb,var(--green-primary, #5e7d5a) 14%,transparent);animation:appt-dialog-in .38s var(--ease-out-expo, cubic-bezier(.16, 1, .3, 1)) both}.cdk-overlay-container .staff-ruta-vida-dialog .mat-mdc-dialog-container .mat-mdc-dialog-surface{padding:.85rem 1rem 1.1rem;overflow:auto;max-height:92vh;background:color-mix(in srgb,white 96%,var(--cream, #f5f1e8));border:1px solid color-mix(in srgb,var(--green-primary, #5e7d5a) 14%,transparent)}html.app-dark .cdk-overlay-container .ticket-ruta-vida-panel .mat-mdc-dialog-container .mat-mdc-dialog-surface{background:color-mix(in srgb,var(--cream) 92%,#1e211d);border-color:var(--card-border)}.cdk-overlay-container .appt-quick-dialog-panel .mat-mdc-dialog-title{text-align:left!important;justify-content:flex-start!important;padding-left:1.2rem;padding-right:1.2rem;padding-top:.65rem}.cdk-overlay-container .appt-quick-dialog-panel .mat-mdc-dialog-content{padding-left:1.2rem!important;padding-right:1.2rem!important}.mat-button-toggle-group{border-radius:var(--app-radius-md)!important;border:1px solid color-mix(in srgb,var(--mat-sys-outline-variant) 48%,transparent)!important;overflow:hidden;box-shadow:0 1px 3px color-mix(in srgb,var(--mat-sys-shadow, #0f172a) 6%,transparent)}.mat-button-toggle{font-weight:600;letter-spacing:.01em}.mat-button-toggle-checked{background:color-mix(in srgb,var(--mat-sys-primary-container) 88%,transparent)!important;color:var(--mat-sys-on-primary-container)!important}.client-avatar-mini,.pet-avatar-mini{width:1.85rem;height:1.85rem;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border:1.5px solid color-mix(in srgb,var(--mat-sys-outline-variant) 50%,transparent)}.pet-avatar-mini__emoji{font-size:1.05rem;line-height:1}.pet-avatar-mini[data-pet-tone=perro]{background:linear-gradient(145deg,#e9a66c,#c56d2e)}.pet-avatar-mini[data-pet-tone=gato]{background:linear-gradient(145deg,#c4a5e8,#8b6bc9)}.pet-avatar-mini[data-pet-tone=aves]{background:linear-gradient(145deg,#7ec8e8,#3d9ccc)}.pet-avatar-mini[data-pet-tone=pequenas]{background:linear-gradient(145deg,#f0b8c8,#d47a9a)}.pet-avatar-mini[data-pet-tone=reptiles]{background:linear-gradient(145deg,#7dce9a,#3a9d6a)}.pet-avatar-mini[data-pet-tone=peces]{background:linear-gradient(145deg,#6bb3e0,#2a78b8)}.pet-avatar-mini[data-pet-tone=grandes]{background:linear-gradient(145deg,#d4b896,#9a7654)}.pet-avatar-mini[data-pet-tone=exoticas]{background:linear-gradient(145deg,#e0a8d8,#b068a8)}.pet-avatar-mini[data-pet-tone=other]{background:linear-gradient(145deg,color-mix(in srgb,var(--mat-sys-primary) 35%,var(--mat-sys-surface-container-high)),color-mix(in srgb,var(--mat-sys-primary) 18%,var(--mat-sys-surface-container)))}.appt-pet-select-panel .mat-mdc-option.pet-mat-option{min-height:2.85rem}.app-loading-shell{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:2.75rem 1.5rem;border-radius:var(--app-radius-lg);border:1px dashed color-mix(in srgb,var(--mat-sys-outline-variant) 55%,transparent);background:color-mix(in srgb,var(--mat-sys-surface-container-low) 65%,transparent);overflow:hidden}.app-loading-shell:before{content:"";position:absolute;inset:-40%;z-index:0;background:radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--mat-sys-primary) 14%,transparent),transparent 58%);opacity:.55;animation:app-loading-breathe 3.2s var(--ease-out-quart) infinite;pointer-events:none}.app-loading-shell>*{position:relative;z-index:1}@keyframes app-loading-breathe{0%,to{opacity:.35;transform:scale(1) translate(0)}50%{opacity:.75;transform:scale(1.08) translate(2%,-1%)}}.app-loading-shell .load-hint,.app-loading-shell p.muted{margin:0;font-size:.92rem;animation:app-text-pulse 1.4s ease-in-out infinite}@keyframes app-text-pulse{0%,to{opacity:.72}50%{opacity:1}}@media(prefers-reduced-motion:reduce){.app-loading-shell .load-hint,.app-loading-shell p.muted{animation:none}.app-loading-shell:before{animation:none;opacity:.4}}.app-empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.65rem;padding:2rem 1.35rem;border-radius:var(--app-radius-lg);border:1px solid color-mix(in srgb,var(--mat-sys-outline-variant) 42%,transparent);background:linear-gradient(165deg,color-mix(in srgb,var(--mat-sys-tertiary) 6%,var(--mat-sys-surface-container-low)),var(--mat-sys-surface-container-low));box-shadow:var(--app-shadow-soft)}.app-empty-state__icon{display:grid;place-items:center;width:3.5rem;height:3.5rem;border-radius:var(--app-radius-pill);background:var(--app-warm-soft);color:var(--mat-sys-tertiary);transition:transform var(--app-transition-snap),box-shadow var(--app-transition);animation:app-empty-icon-float 2.8s var(--ease-out-quart) infinite;box-shadow:0 4px 14px color-mix(in srgb,var(--mat-sys-primary) 12%,transparent)}.app-empty-state__icon mat-icon{font-size:2rem;width:2rem;height:2rem;opacity:.92;transition:transform var(--app-transition-snap)}@keyframes app-empty-icon-float{0%,to{transform:translateY(0) rotate(0)}33%{transform:translateY(-5px) rotate(-2deg)}66%{transform:translateY(-2px) rotate(2deg)}}.app-empty-state:hover .app-empty-state__icon{animation-play-state:paused;transform:scale(1.08) rotate(-4deg);box-shadow:0 8px 22px color-mix(in srgb,var(--mat-sys-primary) 22%,transparent)}.app-empty-state:hover .app-empty-state__icon mat-icon{transform:scale(1.06)}@media(prefers-reduced-motion:reduce){.app-empty-state__icon{animation:none}.app-empty-state:hover .app-empty-state__icon{transform:none;box-shadow:0 4px 14px color-mix(in srgb,var(--mat-sys-primary) 12%,transparent)}.app-empty-state:hover .app-empty-state__icon mat-icon{transform:none}}.app-empty-state__title{margin:0;font-family:var(--app-font-display);font-size:1.05rem;font-weight:650;letter-spacing:-.02em;color:var(--mat-sys-on-surface)}.app-empty-state__text{margin:0;max-width:26rem;font-size:.92rem;line-height:1.5;color:var(--mat-sys-on-surface-variant)}.app-table-card mat-card-content{padding:0!important}.app-table-card .simple-table thead th:first-child{border-top-left-radius:var(--app-radius-md)}.app-table-card .simple-table thead th:last-child{border-top-right-radius:var(--app-radius-md)}.cdk-drag-preview.svc-drag-preview-root,.cdk-drag-preview:has(.svc-drag-preview){z-index:10060!important;position:fixed!important;pointer-events:none!important;box-sizing:border-box;will-change:transform}app-appointments-page>.fc-appt-hovercard{position:fixed;z-index:10050;pointer-events:none;max-width:min(300px,100vw - 16px);border-radius:12px;overflow:hidden;background:var(--mat-sys-surface-container-lowest);border:1px solid color-mix(in srgb,var(--mat-sys-outline-variant) 55%,transparent);box-shadow:0 14px 40px color-mix(in srgb,var(--mat-sys-shadow, #0f172a) 16%,transparent),0 0 0 1px color-mix(in srgb,var(--mat-sys-surface) 40%,transparent);opacity:0;transform:translateY(6px);transition:opacity .16s ease,transform .16s ease;font-family:var(--app-font-body)}app-appointments-page>.fc-appt-hovercard.fc-appt-hovercard--visible{opacity:1;transform:translateY(0)}app-appointments-page>.fc-appt-hovercard .fc-appt-hovercard__strip{height:4px;width:100%}app-appointments-page>.fc-appt-hovercard .fc-appt-hovercard__body{padding:.65rem .75rem .72rem;display:flex;flex-direction:column;gap:.28rem}app-appointments-page>.fc-appt-hovercard .fc-appt-hovercard__title{font-size:.88rem;font-weight:700;letter-spacing:-.01em;color:var(--mat-sys-on-surface);line-height:1.25}app-appointments-page>.fc-appt-hovercard .fc-appt-hovercard__row{font-size:.78rem;line-height:1.35;color:var(--mat-sys-on-surface)}app-appointments-page>.fc-appt-hovercard .fc-appt-hovercard__row--muted{color:var(--mat-sys-on-surface-variant)}app-appointments-page>.fc-appt-hovercard .fc-appt-hovercard__time{margin-top:.15rem;padding-top:.45rem;border-top:1px solid color-mix(in srgb,var(--mat-sys-outline-variant) 65%,transparent);font-weight:600;color:var(--mat-sys-primary)}@media print{@page{size:A4;margin:10mm}body:has(#portal-booking-ticket){background:#fff!important;margin:0!important;padding:0!important;width:100%!important;height:auto!important;overflow:visible!important}body:has(#portal-booking-ticket) mat-sidenav,body:has(#portal-booking-ticket) mat-toolbar,body:has(#portal-booking-ticket) .sidenav,body:has(#portal-booking-ticket) .toolbar,body:has(#portal-booking-ticket) .app-page-hero,body:has(#portal-booking-ticket) .app-wizard-progress,body:has(#portal-booking-ticket) .book-card-head,body:has(#portal-booking-ticket) .ticket-actions,body:has(#portal-booking-ticket) .ticket-foot{display:none!important}body:has(#portal-booking-ticket) .mat-drawer-container,body:has(#portal-booking-ticket) .mat-drawer-content,body:has(#portal-booking-ticket) .main-canvas,body:has(#portal-booking-ticket) .app-content-area,body:has(#portal-booking-ticket) .portal-main,body:has(#portal-booking-ticket) .portal-page,body:has(#portal-booking-ticket) .book-stack,body:has(#portal-booking-ticket) .pay-card,body:has(#portal-booking-ticket) .book-card,body:has(#portal-booking-ticket) .ticket-shell{display:block!important;position:static!important;transform:none!important;inset:auto!important;width:100%!important;max-width:none!important;min-height:0!important;height:auto!important;margin:0!important;padding:0!important;overflow:visible!important;background:#fff!important;border:none!important;border-radius:0!important;box-shadow:none!important}body:has(#portal-booking-ticket) .mat-drawer-content,body:has(#portal-booking-ticket) .main-canvas{margin-left:0!important;margin-right:0!important}body:has(#portal-booking-ticket) #portal-booking-ticket{display:flex!important;flex-direction:column;box-sizing:border-box;width:100%!important;max-width:none!important;min-height:calc(100vh - 20mm);margin:0!important;padding:8mm 10mm 10mm!important;border-radius:0!important;box-shadow:none!important;background:#fff!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}body:has(#portal-booking-ticket) #portal-booking-ticket .ticket-grid{flex:1 1 auto}body:has(#portal-booking-ticket) #portal-booking-ticket .ticket-title{font-size:2rem!important}body:has(#portal-booking-ticket) #portal-booking-ticket .ticket-lede,body:has(#portal-booking-ticket) #portal-booking-ticket .ticket-row__copy dd{font-size:1rem!important}}
