:root{--brand-gold: #F6D42B;--brand-gold-dark: #D4B420;--brand-gold-darker: #B09A18;--brand-gold-muted: rgba(246, 212, 43, .15);--brand-gold-border: rgba(246, 212, 43, .35);--brand-gold-glow: rgba(246, 212, 43, .25);--brand-charcoal: #4B4B4D;--brand-charcoal-dark: #333335;--color-black: #000000;--color-ink: #0D0D0D;--color-surface: #1A1A1A;--color-surface-raised:#242424;--color-surface-high: #2A2A2A;--color-outline: #3A3A3A;--color-on-surface: #FFFFFF;--color-on-surface-medium: rgba(255, 255, 255, .7);--color-on-surface-subtle: rgba(255, 255, 255, .4);--color-on-brand: #000000;--color-success: #4CAF50;--color-success-muted: rgba(76, 175, 80, .15);--color-warning: #F59E0B;--color-warning-muted: rgba(245, 158, 11, .15);--color-error: #EF5350;--color-error-muted: rgba(239, 83, 80, .15);--color-info: #42A5F5;--color-info-muted: rgba(66, 165, 245, .15);--font-display: "Suez One", serif;--font-body: "Montserrat", sans-serif;--font-mono: "Courier New", monospace;--text-xs: .7rem;--text-sm: .8rem;--text-base: .875rem;--text-md: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 2rem;--text-4xl: 2.5rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .4);--shadow-md: 0 4px 12px rgba(0, 0, 0, .5);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .6);--shadow-gold-sm: 0 0 8px var(--brand-gold-glow);--shadow-gold-md: 0 0 16px var(--brand-gold-glow);--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .4s ease;--z-base: 1;--z-raised: 10;--z-overlay: 100;--z-modal: 200;--z-toast: 300;--skeleton-base: #222222;--skeleton-highlight: rgba(255, 255, 255, .055)}.mdc-text-field--outlined .mdc-notched-outline__notch{border-left:none!important;border-right:none!important}.mat-mdc-form-field{width:100%}.mat-mdc-text-field-wrapper{background-color:#0000004d!important;border-radius:var(--radius-sm)}.mat-mdc-form-field-infix{padding-top:16px!important;padding-bottom:8px!important}.mat-mdc-form-field-focus-overlay{background-color:transparent!important}.mdc-notched-outline .mdc-notched-outline__leading,.mdc-notched-outline .mdc-notched-outline__notch,.mdc-notched-outline .mdc-notched-outline__trailing{border-color:var(--brand-gold)!important;border-width:1px!important}.mat-mdc-form-field.mat-focused .mdc-notched-outline .mdc-notched-outline__leading,.mat-mdc-form-field.mat-focused .mdc-notched-outline .mdc-notched-outline__notch,.mat-mdc-form-field.mat-focused .mdc-notched-outline .mdc-notched-outline__trailing{border-color:var(--brand-gold)!important}input{color:var(--color-on-surface)!important;font-size:var(--text-sm);font-family:var(--font-body)}.mat-mdc-input-element{padding:.35rem!important;color:var(--color-on-surface)!important}.mat-mdc-input-element:focus,.mat-mdc-input-element:focus-visible{outline:none!important}.mat-mdc-input-element::placeholder{color:var(--brand-gold-border)!important}.mat-mdc-input-element:-webkit-autofill,.mat-mdc-input-element:-webkit-autofill:hover,.mat-mdc-input-element:-webkit-autofill:focus,.mat-mdc-input-element:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px transparent inset!important;-webkit-text-fill-color:var(--color-on-surface)!important;background-color:transparent!important;transition:background-color 5000s ease-in-out 0s;caret-color:var(--color-on-surface)}.mat-mdc-form-field-label,.mat-mdc-floating-label{color:var(--brand-gold)!important;font-weight:500;font-size:var(--text-xs)}.mat-mdc-form-field-error{color:var(--color-error)!important;font-size:var(--text-xs)}.mat-mdc-form-field-hint{color:var(--color-on-surface-subtle)!important;font-size:var(--text-xs)}.mat-mdc-form-field-prefix{color:var(--brand-gold)!important}.field-icon{color:var(--brand-gold)!important;font-size:1.1rem;width:1.1rem;height:1.1rem;margin-right:.4rem;opacity:.8}.mat-mdc-form-field-icon-prefix{padding:0 .4rem 0 0!important}.mat-mdc-select-value,.mat-mdc-select-arrow,.mat-datepicker-toggle{color:var(--brand-gold)!important}.search-field ::ng-deep .mat-mdc-text-field-wrapper{background-color:transparent!important}.search-field ::ng-deep .mat-mdc-form-field-focus-overlay{background-color:transparent!important}.search-field ::ng-deep .mdc-notched-outline .mdc-notched-outline__leading,.search-field ::ng-deep .mdc-notched-outline .mdc-notched-outline__notch,.search-field ::ng-deep .mdc-notched-outline .mdc-notched-outline__trailing{border-color:var(--brand-gold)!important}.search-field ::ng-deep input{color:var(--color-on-surface)!important}.search-field ::ng-deep .mat-mdc-form-field-label,.search-field ::ng-deep .mat-mdc-floating-label{color:var(--brand-gold)!important}.search-field ::ng-deep .mat-mdc-input-element::placeholder{color:#ffffff80!important}.search-field ::ng-deep .search-icon{color:var(--brand-gold);cursor:pointer;transition:transform .2s ease}.search-field ::ng-deep .search-icon:hover{transform:scale(1.1)}.search-field ::ng-deep .mat-mdc-icon-button{color:var(--brand-gold)!important}.error-message{background-color:#ff6b6b1a;border-left:4px solid #ff6b6b;color:#ff6b6b;padding:.75rem;border-radius:4px;font-size:.9rem;margin-bottom:1rem}.mat-mdc-form-field.mat-mdc-select-form-field{width:auto;min-width:150px}.mat-mdc-select-form-field .mat-mdc-text-field-wrapper{background-color:var(--color-surface-high)!important}.mat-mdc-select-value,.mat-mdc-select-arrow,.mat-mdc-select-trigger{color:var(--brand-gold)!important}.mat-mdc-select-trigger:focus,.mat-mdc-select-trigger:focus-visible{outline:none!important}.mat-mdc-select:focus,.mat-mdc-select:focus-visible{outline:none!important}.mat-mdc-select-form-field .mdc-notched-outline__leading,.mat-mdc-select-form-field .mdc-notched-outline__notch,.mat-mdc-select-form-field .mdc-notched-outline__trailing{border-color:var(--brand-gold)!important}.mat-mdc-select-form-field .mat-mdc-form-field-label,.mat-mdc-select-form-field .mat-mdc-floating-label{color:var(--brand-gold)!important}.mat-mdc-select-panel{background-color:var(--color-surface-high)!important}.mat-mdc-select-panel .mat-mdc-option{background-color:var(--color-surface-high)!important;color:var(--brand-gold)!important}.mat-mdc-select-panel .mat-mdc-option:hover:not(.mat-mdc-option-disabled){background-color:var(--color-outline)!important}.mat-mdc-select-panel .mat-mdc-option.mat-mdc-option-active.mat-mdc-option-multiple:not(.mat-mdc-option-disabled){background-color:var(--color-outline)!important}.mat-mdc-select-panel .mat-mdc-option:focus{background-color:var(--color-outline)!important;outline:none}.mat-mdc-select-panel .mat-mdc-option.mat-mdc-option-disabled{color:var(--color-on-surface-subtle)!important;cursor:not-allowed}.mat-mdc-select-panel .mat-mdc-option .mdc-list-item__primary-text{color:var(--brand-gold)!important}.mat-mdc-form-field.mat-focused.mat-mdc-select-form-field .mdc-notched-outline .mdc-notched-outline__leading,.mat-mdc-form-field.mat-focused.mat-mdc-select-form-field .mdc-notched-outline .mdc-notched-outline__notch,.mat-mdc-form-field.mat-focused.mat-mdc-select-form-field .mdc-notched-outline .mdc-notched-outline__trailing{border-color:var(--brand-gold)!important}.mat-mdc-form-field.mat-form-field-invalid .mdc-notched-outline__leading,.mat-mdc-form-field.mat-form-field-invalid .mdc-notched-outline__notch,.mat-mdc-form-field.mat-form-field-invalid .mdc-notched-outline__trailing{border-color:#f44336!important}.dropdown-select ::ng-deep .mat-mdc-form-field{min-width:150px}.dropdown-select ::ng-deep .mat-mdc-text-field-wrapper{background-color:var(--color-surface-high)!important}.dropdown-select ::ng-deep .mdc-notched-outline__leading,.dropdown-select ::ng-deep .mdc-notched-outline__notch,.dropdown-select ::ng-deep .mdc-notched-outline__trailing{border-color:var(--brand-gold)!important}.dropdown-select ::ng-deep .mat-mdc-form-field-label,.dropdown-select ::ng-deep .mat-mdc-floating-label{color:var(--brand-gold)!important}.dropdown-select ::ng-deep .mat-mdc-select-value,.dropdown-select ::ng-deep .mat-mdc-select-arrow{color:var(--brand-gold)!important}.dropdown-select ::ng-deep .mat-mdc-select-panel .mat-mdc-option:hover:not(.mat-mdc-option-disabled){background-color:var(--color-outline)!important}html{--mat-sys-background: light-dark(#fdf9f0, #14140f);--mat-sys-error: light-dark(#ba1a1a, #ffb4ab);--mat-sys-error-container: light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface: light-dark(#f4f0e8, #31312b);--mat-sys-inverse-primary: light-dark(#cdcd00, #626200);--mat-sys-inverse-surface: light-dark(#31312b, #e6e2d9);--mat-sys-on-background: light-dark(#1c1c17, #e6e2d9);--mat-sys-on-error: light-dark(#ffffff, #690005);--mat-sys-on-error-container: light-dark(#93000a, #ffdad6);--mat-sys-on-primary: light-dark(#ffffff, #323200);--mat-sys-on-primary-container: light-dark(#494900, #eaea00);--mat-sys-on-primary-fixed: light-dark(#1d1d00, #1d1d00);--mat-sys-on-primary-fixed-variant: light-dark(#494900, #494900);--mat-sys-on-secondary: light-dark(#ffffff, #323218);--mat-sys-on-secondary-container: light-dark(#49482d, #e7e4bf);--mat-sys-on-secondary-fixed: light-dark(#1d1d06, #1d1d06);--mat-sys-on-secondary-fixed-variant: light-dark(#49482d, #49482d);--mat-sys-on-surface: light-dark(#1c1c17, #e6e2d9);--mat-sys-on-surface-variant: light-dark(#48473a, #e6e3d1);--mat-sys-on-tertiary: light-dark(#ffffff, #502400);--mat-sys-on-tertiary-container: light-dark(#723600, #ffdcc7);--mat-sys-on-tertiary-fixed: light-dark(#311300, #311300);--mat-sys-on-tertiary-fixed-variant: light-dark(#723600, #723600);--mat-sys-outline: light-dark(#797869, #939182);--mat-sys-outline-variant: light-dark(#cac7b6, #48473a);--mat-sys-primary: light-dark(#626200, #cdcd00);--mat-sys-primary-container: light-dark(#eaea00, #494900);--mat-sys-primary-fixed: light-dark(#eaea00, #eaea00);--mat-sys-primary-fixed-dim: light-dark(#cdcd00, #cdcd00);--mat-sys-scrim: light-dark(#000000, #000000);--mat-sys-secondary: light-dark(#606043, #cac8a5);--mat-sys-secondary-container: light-dark(#e7e4bf, #49482d);--mat-sys-secondary-fixed: light-dark(#e7e4bf, #e7e4bf);--mat-sys-secondary-fixed-dim: light-dark(#cac8a5, #cac8a5);--mat-sys-shadow: light-dark(#000000, #000000);--mat-sys-surface: light-dark(#fdf9f0, #14140f);--mat-sys-surface-bright: light-dark(#fdf9f0, #3a3933);--mat-sys-surface-container: light-dark(#f1ede5, #20201b);--mat-sys-surface-container-high: light-dark(#ece8df, #2b2a25);--mat-sys-surface-container-highest: light-dark(#e6e2d9, #36352f);--mat-sys-surface-container-low: light-dark(#f7f3ea, #1c1c17);--mat-sys-surface-container-lowest: light-dark(#ffffff, #0f0e0a);--mat-sys-surface-dim: light-dark(#dddad1, #14140f);--mat-sys-surface-tint: light-dark(#626200, #cdcd00);--mat-sys-surface-variant: light-dark(#e6e3d1, #48473a);--mat-sys-tertiary: light-dark(#964900, #ffb787);--mat-sys-tertiary-container: light-dark(#ffdcc7, #723600);--mat-sys-tertiary-fixed: light-dark(#ffdcc7, #ffdcc7);--mat-sys-tertiary-fixed-dim: light-dark(#ffb787, #ffb787);--mat-sys-neutral-variant20: #313125;--mat-sys-neutral10: #1c1c17;--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 Montserrat;--mat-sys-body-large-font: Montserrat;--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 Montserrat;--mat-sys-body-medium-font: Montserrat;--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 Montserrat;--mat-sys-body-small-font: Montserrat;--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 Montserrat;--mat-sys-display-large-font: Montserrat;--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 Montserrat;--mat-sys-display-medium-font: Montserrat;--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 Montserrat;--mat-sys-display-small-font: Montserrat;--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 Montserrat;--mat-sys-headline-large-font: Montserrat;--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 Montserrat;--mat-sys-headline-medium-font: Montserrat;--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 Montserrat;--mat-sys-headline-small-font: Montserrat;--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 Montserrat;--mat-sys-label-large-font: Montserrat;--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 Montserrat;--mat-sys-label-medium-font: Montserrat;--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 Montserrat;--mat-sys-label-small-font: Montserrat;--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 Montserrat;--mat-sys-title-large-font: Montserrat;--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 Montserrat;--mat-sys-title-medium-font: Montserrat;--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 Montserrat;--mat-sys-title-small-font: Montserrat;--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;--mat-sys-primary: var(--brand-gold);--mat-sys-on-primary: var(--color-on-brand);--mat-sys-primary-container: var(--brand-gold-muted);--mat-sys-surface: var(--color-ink);--mat-sys-surface-container: var(--color-surface);--mat-sys-on-surface: var(--color-on-surface);--mat-sys-outline: var(--color-outline)}body{color-scheme:dark;background-color:var(--color-ink);color:var(--color-on-surface);font-family:var(--font-body);margin:0}html,body{height:100%}html{scroll-behavior:smooth}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{background-color:#010100d1;opacity:1}.mat-mdc-dialog-container .mat-mdc-dialog-surface{border:1px solid color-mix(in oklch,var(--brand-gold) 55%,transparent)!important;border-radius:var(--radius-md)!important;box-shadow:0 24px 64px #000000b8,0 0 0 1px #ebc83114!important;overflow:hidden}.swal2-popup.birthday-copy-popup{background:linear-gradient(135deg,var(--color-black) 0%,var(--color-surface) 100%)!important;border:2px solid var(--brand-gold)!important;border-radius:var(--radius-lg)!important;box-shadow:0 0 20px var(--brand-gold-glow)!important;color:var(--color-on-surface)!important;padding:1rem 1.5rem!important;max-width:500px!important;width:90%!important}.birthday-copy-icon{border-color:var(--brand-gold)!important;color:var(--brand-gold)!important;font-size:2rem!important;margin-bottom:.5rem!important}.birthday-copy-icon.icon-animate{animation:celebration-bounce .6s ease-out}.birthday-copy-title{color:var(--brand-gold)!important;font-size:1rem!important;font-weight:700!important;margin-bottom:.5rem!important}.birthday-copy-html{color:var(--color-on-surface)!important;font-size:.85rem!important;line-height:1.4!important;margin:.5rem 0!important}.birthday-copy-html .birthday-message-subtitle{color:var(--color-on-surface)!important;margin:0!important;font-weight:500!important}.birthday-copied-message{color:var(--color-on-surface)!important;font-size:.8rem!important;line-height:1.3!important;text-align:center!important;margin:.5rem 0!important;font-family:var(--font-mono)!important;white-space:pre-wrap!important;word-break:break-word!important}.birthday-copied-message div{margin:.15rem 0!important}.birthday-copy-confirm{background:linear-gradient(135deg,var(--brand-gold) 0%,var(--brand-gold-dark) 100%)!important;color:var(--color-on-brand)!important;border:2px solid var(--brand-gold)!important;border-radius:var(--radius-sm)!important;font-weight:700!important;font-size:.85rem!important;padding:.4rem 1.2rem!important;transition:all var(--transition-base)!important;cursor:pointer!important}.birthday-copy-confirm:hover{transform:translateY(-2px)!important;box-shadow:0 6px 12px var(--brand-gold-glow)!important}.birthday-copy-confirm:active{transform:translateY(0)!important}@keyframes celebration-bounce{0%{transform:scale(.3) rotate(-45deg);opacity:0}50%{transform:scale(1.1) rotate(5deg)}to{transform:scale(1) rotate(0);opacity:1}}.birthday-timer-bar{background:linear-gradient(90deg,var(--brand-gold) 0%,var(--brand-gold-dark) 100%)!important}
