html{height:100%;--mat-sys-background: light-dark(, );--mat-sys-error: light-dark(, );--mat-sys-error-container: light-dark(, );--mat-sys-inverse-on-surface: light-dark(, );--mat-sys-inverse-primary: light-dark(, );--mat-sys-inverse-surface: light-dark(, );--mat-sys-on-background: light-dark(, );--mat-sys-on-error: light-dark(, );--mat-sys-on-error-container: light-dark(, );--mat-sys-on-primary: light-dark(#e1bef0, );--mat-sys-on-primary-container: light-dark(, );--mat-sys-on-primary-fixed: light-dark(, );--mat-sys-on-primary-fixed-variant: light-dark(, );--mat-sys-on-secondary: light-dark(, );--mat-sys-on-secondary-container: light-dark(, );--mat-sys-on-secondary-fixed: light-dark(, );--mat-sys-on-secondary-fixed-variant: light-dark(, );--mat-sys-on-surface: light-dark(, );--mat-sys-on-surface-variant: light-dark(, );--mat-sys-on-tertiary: light-dark(#ffe0b2, );--mat-sys-on-tertiary-container: light-dark(, );--mat-sys-on-tertiary-fixed: light-dark(, );--mat-sys-on-tertiary-fixed-variant: light-dark(, );--mat-sys-outline: light-dark(, );--mat-sys-outline-variant: light-dark(, );--mat-sys-primary: light-dark(, );--mat-sys-primary-container: light-dark(, );--mat-sys-primary-fixed: light-dark(, );--mat-sys-primary-fixed-dim: light-dark(, );--mat-sys-scrim: light-dark(, );--mat-sys-secondary: light-dark(, );--mat-sys-secondary-container: light-dark(, );--mat-sys-secondary-fixed: light-dark(, );--mat-sys-secondary-fixed-dim: light-dark(, );--mat-sys-shadow: light-dark(, );--mat-sys-surface: light-dark(, );--mat-sys-surface-bright: light-dark(, );--mat-sys-surface-container: light-dark(, );--mat-sys-surface-container-high: light-dark(, );--mat-sys-surface-container-highest: light-dark(, );--mat-sys-surface-container-low: light-dark(, );--mat-sys-surface-container-lowest: light-dark(, );--mat-sys-surface-dim: light-dark(, );--mat-sys-surface-tint: light-dark(, );--mat-sys-surface-variant: light-dark(, );--mat-sys-tertiary: light-dark(, );--mat-sys-tertiary-container: light-dark(, );--mat-sys-tertiary-fixed: light-dark(, );--mat-sys-tertiary-fixed-dim: light-dark(, );--mat-sys-neutral-variant20: ;--mat-sys-neutral10: ;--mat-sys-level0: 0px 0px 0px 0px , 0px 0px 0px 0px , 0px 0px 0px 0px ;--mat-sys-level1: 0px 2px 1px -1px , 0px 1px 1px 0px , 0px 1px 3px 0px ;--mat-sys-level2: 0px 3px 3px -2px , 0px 3px 4px 0px , 0px 1px 8px 0px ;--mat-sys-level3: 0px 3px 5px -1px , 0px 6px 10px 0px , 0px 1px 18px 0px ;--mat-sys-level4: 0px 5px 5px -3px , 0px 8px 10px 1px , 0px 3px 14px 2px ;--mat-sys-level5: 0px 7px 8px -4px , 0px 12px 17px 2px , 0px 5px 22px 4px ;--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: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem Roboto;--mat-sys-body-medium-font: Roboto;--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 Roboto;--mat-sys-body-small-font: Roboto;--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 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: -.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 .875rem / 1.25rem Roboto;--mat-sys-label-large-font: Roboto;--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: 500;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 500 .75rem / 1rem Roboto;--mat-sys-label-medium-font: Roboto;--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 500;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 500 .688rem / 1rem Roboto;--mat-sys-label-small-font: Roboto;--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .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: .009rem;--mat-sys-title-medium-weight: 500;--mat-sys-title-small: 500 .875rem / 1.25rem Roboto;--mat-sys-title-small-font: Roboto;--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: 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: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12}body{color-scheme:light;background-color:#f5f5f5;color:#333;font-family:Roboto,SF Pro,Arial,sans-serif;margin:0;height:100%;font-size:14px;line-height:1.4}:root{--vivo-purple: #660099;--vivo-purple-dark: #4A0072;--vivo-purple-light: #8B31B8;--vivo-orange: #FF6600;--vivo-orange-light: #FF8533;--vivo-green: #28A745;--vivo-green-bg: #E8F5E9;--vivo-red: #DC3545;--vivo-red-bg: #FFEBEE;--vivo-yellow-bg: #FFF3E0;--vivo-white: #FFFFFF;--vivo-gray-bg: #F5F5F5;--vivo-gray-border: #E0E0E0;--vivo-gray-text: #333333;--vivo-gray-secondary: #666666;--vivo-gray-muted: #888888;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 50px}*{box-sizing:border-box}.gradient-purple{background:linear-gradient(135deg,var(--vivo-purple) 0%,var(--vivo-purple-dark) 100%)}.gradient-purple-horizontal{background:linear-gradient(90deg,var(--vivo-purple) 0%,var(--vivo-purple-light) 100%)}.gradient-orange{background:linear-gradient(135deg,var(--vivo-orange) 0%,var(--vivo-orange-light) 100%)}.text-white{color:#fff!important}.text-purple{color:var(--vivo-purple)!important}.text-orange{color:var(--vivo-orange)!important}.text-green{color:var(--vivo-green)!important}.text-red{color:var(--vivo-red)!important}.text-gray{color:var(--vivo-gray-secondary)!important}.text-muted{color:var(--vivo-gray-muted)!important}.bg-white{background-color:var(--vivo-white)!important}.bg-gray{background-color:var(--vivo-gray-bg)!important}.bg-green-light{background-color:var(--vivo-green-bg)!important}.bg-red-light{background-color:var(--vivo-red-bg)!important}.bg-orange-light{background-color:var(--vivo-yellow-bg)!important}.mat-mdc-button.mat-primary,.mat-mdc-raised-button.mat-primary{--mdc-filled-button-container-color: var(--vivo-purple)}.mat-toolbar.vivo-header{background:linear-gradient(135deg,var(--vivo-purple) 0%,var(--vivo-purple-dark) 100%);color:#fff}.vivo-card{background:#fff;border-radius:var(--radius-lg);box-shadow:0 2px 8px #00000014;border:1px solid var(--vivo-gray-border)}.vivo-btn-primary{background:linear-gradient(90deg,var(--vivo-purple) 0%,var(--vivo-purple-light) 100%);color:#fff;border:none;border-radius:var(--radius-md);padding:14px 24px;font-size:14px;font-weight:600;cursor:pointer;width:100%;height:48px;transition:opacity .2s}.vivo-btn-primary:hover{opacity:.9}.vivo-btn-primary:active{transform:scale(.98)}.vivo-btn-secondary{background:transparent;color:var(--vivo-purple);border:2px solid var(--vivo-purple);border-radius:var(--radius-md);padding:12px 24px;font-size:14px;font-weight:600;cursor:pointer;width:100%;height:48px;transition:all .2s}.vivo-btn-secondary:hover{background:#6600990d}.status-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--radius-full);font-size:12px;font-weight:600}.status-badge.active{background:var(--vivo-green-bg);color:var(--vivo-green)}.status-badge.pending{background:var(--vivo-yellow-bg);color:var(--vivo-orange)}.status-badge.expired{background:var(--vivo-red-bg);color:var(--vivo-red)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.animate-fade-in{animation:fadeIn .3s ease-out}.animate-slide-in{animation:slideIn .3s ease-out}
