@layer base,theme,utilities;html{height:100%;color-scheme:dark;--mat-sys-background: #171213;--mat-sys-error: #ffb4ab;--mat-sys-error-container: #93000a;--mat-sys-inverse-on-surface: #352f30;--mat-sys-inverse-primary: #755b00;--mat-sys-inverse-surface: #ece0e1;--mat-sys-on-background: #ece0e1;--mat-sys-on-error: #690005;--mat-sys-on-error-container: #ffdad6;--mat-sys-on-primary: #3d2e00;--mat-sys-on-primary-container: #ffe08e;--mat-sys-on-primary-fixed: #241a00;--mat-sys-on-primary-fixed-variant: #584400;--mat-sys-on-secondary: #392f15;--mat-sys-on-secondary-container: #f2e1bb;--mat-sys-on-secondary-fixed: #231b04;--mat-sys-on-secondary-fixed-variant: #51462a;--mat-sys-on-surface: #ece0e1;--mat-sys-on-surface-variant: #f3dde0;--mat-sys-on-tertiary: #5a1c00;--mat-sys-on-tertiary-container: #ffdbce;--mat-sys-on-tertiary-fixed: #370e00;--mat-sys-on-tertiary-fixed-variant: #7b2f0a;--mat-sys-outline: #9e8c8f;--mat-sys-outline-variant: #514346;--mat-sys-primary: #ecc246;--mat-sys-primary-container: #584400;--mat-sys-primary-fixed: #ffe08e;--mat-sys-primary-fixed-dim: #ecc246;--mat-sys-scrim: #000000;--mat-sys-secondary: #d5c5a1;--mat-sys-secondary-container: #51462a;--mat-sys-secondary-fixed: #f2e1bb;--mat-sys-secondary-fixed-dim: #d5c5a1;--mat-sys-shadow: #000000;--mat-sys-surface: #171213;--mat-sys-surface-bright: #3e3738;--mat-sys-surface-container: #241e1f;--mat-sys-surface-container-high: #2f2829;--mat-sys-surface-container-highest: #3a3334;--mat-sys-surface-container-low: #201a1b;--mat-sys-surface-container-lowest: #120d0e;--mat-sys-surface-dim: #171213;--mat-sys-surface-tint: #ecc246;--mat-sys-surface-variant: #514346;--mat-sys-tertiary: #ffb599;--mat-sys-tertiary-container: #7b2f0a;--mat-sys-tertiary-fixed: #ffdbce;--mat-sys-tertiary-fixed-dim: #ffb599;--mat-sys-neutral-variant20: #3a2d30;--mat-sys-neutral10: #201a1b;--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 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}html.theme-light{color-scheme:light;--mat-sys-background: #fff8f7;--mat-sys-error: #ba1a1a;--mat-sys-error-container: #ffdad6;--mat-sys-inverse-on-surface: #faeeef;--mat-sys-inverse-primary: #ecc246;--mat-sys-inverse-surface: #352f30;--mat-sys-on-background: #201a1b;--mat-sys-on-error: #ffffff;--mat-sys-on-error-container: #93000a;--mat-sys-on-primary: #ffffff;--mat-sys-on-primary-container: #584400;--mat-sys-on-primary-fixed: #241a00;--mat-sys-on-primary-fixed-variant: #584400;--mat-sys-on-secondary: #ffffff;--mat-sys-on-secondary-container: #51462a;--mat-sys-on-secondary-fixed: #231b04;--mat-sys-on-secondary-fixed-variant: #51462a;--mat-sys-on-surface: #201a1b;--mat-sys-on-surface-variant: #514346;--mat-sys-on-tertiary: #ffffff;--mat-sys-on-tertiary-container: #7b2f0a;--mat-sys-on-tertiary-fixed: #370e00;--mat-sys-on-tertiary-fixed-variant: #7b2f0a;--mat-sys-outline: #847376;--mat-sys-outline-variant: #d6c2c5;--mat-sys-primary: #755b00;--mat-sys-primary-container: #ffe08e;--mat-sys-primary-fixed: #ffe08e;--mat-sys-primary-fixed-dim: #ecc246;--mat-sys-scrim: #000000;--mat-sys-secondary: #695d3f;--mat-sys-secondary-container: #f2e1bb;--mat-sys-secondary-fixed: #f2e1bb;--mat-sys-secondary-fixed-dim: #d5c5a1;--mat-sys-shadow: #000000;--mat-sys-surface: #fff8f7;--mat-sys-surface-bright: #fff8f7;--mat-sys-surface-container: #f7ebec;--mat-sys-surface-container-high: #f2e5e6;--mat-sys-surface-container-highest: #ece0e1;--mat-sys-surface-container-low: #fdf1f2;--mat-sys-surface-container-lowest: #ffffff;--mat-sys-surface-dim: #e3d7d8;--mat-sys-surface-tint: #755b00;--mat-sys-surface-variant: #f3dde0;--mat-sys-tertiary: #9a4520;--mat-sys-tertiary-container: #ffdbce;--mat-sys-tertiary-fixed: #ffdbce;--mat-sys-tertiary-fixed-dim: #ffb599;--mat-sys-neutral-variant20: #3a2d30;--mat-sys-neutral10: #201a1b;--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 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{background-color:var(--mat-sys-surface);color:var(--mat-sys-on-surface);font:var(--mat-sys-body-medium);margin:0;height:100%;overflow-wrap:break-word}:root{--salon-space-1: .25rem;--salon-space-2: .5rem;--salon-space-3: .75rem;--salon-space-4: 1rem;--salon-space-5: 1.25rem;--salon-space-6: 1.5rem;--salon-space-8: 2rem;--salon-space-10: 2.5rem;--salon-space-12: 3rem;--salon-radius-sm: 8px;--salon-radius-md: 12px;--salon-radius-lg: 16px;--salon-radius-xl: 20px;--salon-radius-pill: 9999px;--salon-shadow-sm: 0 1px 2px rgb(0 0 0 / .16);--salon-shadow-md: 0 2px 8px rgb(0 0 0 / .2);--salon-shadow-lg: 0 8px 24px rgb(0 0 0 / .28);--salon-motion-fast: .12s;--salon-motion-base: .2s;--salon-motion-slow: .32s;--salon-ease: cubic-bezier(.2, 0, 0, 1);--salon-font-weight-strong: 500;--salon-content-max: 1600px}a,a:visited{color:var(--mat-sys-primary)}a:focus-visible,summary:focus-visible,button:not([class*=mat-]):focus-visible,[tabindex]:not([class*=mat-]):focus-visible{outline:2px solid var(--mat-sys-primary);outline-offset:2px}@layer base{h1,h2,h3,h4,h5,h6{margin:0;font-weight:var(--salon-font-weight-strong);color:var(--mat-sys-on-surface);text-wrap:balance}h1{font:var(--mat-sys-headline-small);font-weight:var(--salon-font-weight-strong)}h2{font:var(--mat-sys-title-large);font-weight:var(--salon-font-weight-strong)}h3{font:var(--mat-sys-title-medium);font-weight:var(--salon-font-weight-strong)}p{line-height:1.6}}.text-muted,.muted{color:var(--mat-sys-on-surface-variant)}.link-button{background:none;border:0;padding:0;font:inherit;font-weight:var(--salon-font-weight-strong);color:var(--mat-sys-primary);cursor:pointer;text-align:left}.link-button:hover{text-decoration:underline}.app-icon-sm{font-size:18px;width:18px;height:18px;line-height:18px}.app-icon-md{font-size:20px;width:20px;height:20px;line-height:20px}.app-icon-lg{font-size:32px;width:32px;height:32px;line-height:32px}.app-icon-xl{font-size:48px;width:48px;height:48px;line-height:48px}.mat-icon{flex-shrink:0}.app-panel{background:var(--mat-sys-surface-container);border-radius:var(--salon-radius-lg);padding:var(--salon-space-5)}.app-panel-compact{padding:var(--salon-space-3);border-radius:var(--salon-radius-md)}.app-panel-outlined{background:var(--mat-sys-surface-container-low);border:1px solid var(--mat-sys-outline-variant);border-radius:var(--salon-radius-lg);padding:var(--salon-space-5)}.app-hairline{border:1px solid var(--mat-sys-outline-variant)}.app-table-wrap{overflow-x:auto;border:1px solid var(--mat-sys-outline-variant);border-radius:var(--salon-radius-md);background:var(--mat-sys-surface-container-lowest);overscroll-behavior-x:contain}.app-table-wrap table{width:100%;min-width:max-content}.mat-mdc-header-cell{font-weight:var(--salon-font-weight-strong);color:var(--mat-sys-on-surface-variant);background:var(--mat-sys-surface-container);white-space:nowrap}.mat-mdc-row:hover{background:var(--mat-sys-surface-container-high)}.mat-mdc-row,.mat-mdc-header-row{transition:background var(--salon-motion-fast) var(--salon-ease)}.cell-numeric{text-align:right;font-variant-numeric:tabular-nums}.tabular{font-variant-numeric:tabular-nums}.cell-actions{text-align:right;white-space:nowrap}.app-table-wrap+.mat-mdc-paginator{background:transparent;border:1px solid var(--mat-sys-outline-variant);border-top:none;border-radius:0 0 var(--salon-radius-md) var(--salon-radius-md);margin-top:-1px}@layer base{.mat-mdc-form-field{width:100%}}.full-width{width:100%}.dialog-form{display:flex;flex-direction:column}.settings-form .mat-mdc-form-field{padding-top:.6rem}.app-form-grid{display:grid;grid-template-columns:1fr;gap:0 var(--salon-space-4)}@media(min-width:640px){.app-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.app-dialog-section{margin-top:var(--salon-space-4);margin-bottom:var(--salon-space-1);font:var(--mat-sys-label-large);font-weight:var(--salon-font-weight-strong);color:var(--mat-sys-on-surface-variant)}.app-form-grid-3{display:grid;grid-template-columns:1fr;gap:0 var(--salon-space-4)}@media(min-width:640px){.app-form-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1024px){.app-form-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.app-form-span-all{grid-column:1/-1}.app-filter-bar{display:flex;flex-wrap:wrap;align-items:flex-start;gap:var(--salon-space-3)}.app-filter-bar>.mat-mdc-button-base{height:56px;flex-shrink:0}@media(max-width:599px){.app-filter-bar{flex-direction:column;align-items:stretch}.app-filter-bar>.mat-mdc-form-field{width:100%}}.app-inline-input{flex:1;min-width:0;height:40px;padding:0 var(--salon-space-3);border:1px solid var(--mat-sys-outline-variant);border-radius:var(--salon-radius-sm);background:transparent;color:var(--mat-sys-on-surface);font:var(--mat-sys-body-medium)}.app-inline-input::placeholder{color:var(--mat-sys-on-surface-variant)}.app-inline-input:hover{border-color:var(--mat-sys-outline)}.app-inline-input:focus{outline:none;border-color:var(--mat-sys-primary);box-shadow:inset 0 -1px 0 var(--mat-sys-primary)}.app-required-note{color:var(--mat-sys-on-surface-variant);font:var(--mat-sys-body-small)}.app-required-note:before{content:"*";color:var(--mat-sys-error);margin-right:var(--salon-space-1)}.app-error-text{color:var(--mat-sys-error);font:var(--mat-sys-body-small)}.app-error-banner{display:flex;align-items:center;gap:var(--salon-space-2);padding:var(--salon-space-3) var(--salon-space-4);border-radius:var(--salon-radius-sm);background:var(--mat-sys-error-container);color:var(--mat-sys-on-error-container);font:var(--mat-sys-body-small)}.app-notice{display:flex;align-items:flex-start;gap:var(--salon-space-2);padding:var(--salon-space-3);border-radius:var(--salon-radius-sm);font:var(--mat-sys-body-small);line-height:1.5}.auth-page{display:flex;align-items:center;justify-content:center;min-height:100dvh;padding:var(--salon-space-6) var(--salon-space-4);background:radial-gradient(ellipse at top,color-mix(in srgb,var(--mat-sys-primary) 9%,transparent),transparent 60%),var(--mat-sys-surface-container-low)}.auth-card{width:100%;max-width:26rem;padding:var(--salon-space-8);border-radius:var(--salon-radius-xl);box-shadow:var(--salon-shadow-lg)}.auth-card--wide{max-width:44rem}.auth-brand{display:flex;align-items:center;gap:var(--salon-space-4);margin-bottom:var(--salon-space-6)}.auth-brand__mark{color:var(--mat-sys-primary);flex-shrink:0}.auth-brand__title{margin:0;font:var(--mat-sys-headline-small);font-weight:var(--salon-font-weight-strong)}.auth-brand__subtitle{margin:var(--salon-space-1) 0 0;font:var(--mat-sys-body-medium);color:var(--mat-sys-on-surface-variant)}.auth-form{display:flex;flex-direction:column;gap:var(--salon-space-2)}.auth-submit{height:44px;margin-top:var(--salon-space-2)}.auth-footer{margin:var(--salon-space-6) 0 0;padding-top:var(--salon-space-4);border-top:1px solid var(--mat-sys-outline-variant);text-align:center;font:var(--mat-sys-body-small);color:var(--mat-sys-on-surface-variant)}.auth-footer a{font-weight:var(--salon-font-weight-strong)}@media(max-width:599px){.auth-card{padding:var(--salon-space-6) var(--salon-space-5)}}.mat-mdc-dialog-content{max-height:min(88vh,960px)}.mat-mdc-dialog-content .mat-mdc-form-field,.mat-mdc-dialog-content app-searchable-select{margin-top:.6rem}@media(max-width:599px){.cdk-overlay-pane.mat-mdc-dialog-panel{max-width:calc(100vw - 2rem)!important}.mat-mdc-dialog-content{max-height:calc(100vh - 8rem)}}.mat-mdc-dialog-actions{padding:var(--salon-space-2) var(--salon-space-6) var(--salon-space-5)}.app-menu-heading{padding:var(--salon-space-3) var(--salon-space-4) var(--salon-space-2);font:var(--mat-sys-label-large);font-weight:var(--salon-font-weight-strong)}.app-menu-empty{padding:var(--salon-space-3) var(--salon-space-4);max-width:320px;font:var(--mat-sys-body-small);color:var(--mat-sys-on-surface-variant)}.app-menu-identity{padding:var(--salon-space-3) var(--salon-space-4);max-width:260px}.app-menu-identity__name{font-weight:var(--salon-font-weight-strong)}.app-menu-identity__email{font:var(--mat-sys-body-small);color:var(--mat-sys-on-surface-variant);overflow:hidden;text-overflow:ellipsis}.app-alert-item.mat-mdc-menu-item{height:auto;min-height:48px;line-height:1.4;padding-block:var(--salon-space-2)}.app-alert-item .mat-mdc-menu-item-text{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.app-alert-item__name{font:var(--mat-sys-body-medium);font-weight:var(--salon-font-weight-strong)}.app-alert-item__meta{font:var(--mat-sys-body-small);color:var(--mat-sys-on-surface-variant);white-space:normal}:root{--salon-tone-success-bg: #1f3d2e;--salon-tone-success-fg: #8fd9ab;--salon-tone-warning-bg: #4a3418;--salon-tone-warning-fg: #f0c674;--salon-tone-info-bg: #1f3548;--salon-tone-info-fg: #8ec5f0;--salon-tone-danger-bg: var(--mat-sys-error-container);--salon-tone-danger-fg: var(--mat-sys-on-error-container);--salon-tone-neutral-bg: var(--mat-sys-surface-container-high);--salon-tone-neutral-fg: var(--mat-sys-on-surface-variant)}html.theme-light{--salon-tone-success-bg: #d7f0dc;--salon-tone-success-fg: #1c5e32;--salon-tone-warning-bg: #fbe8c6;--salon-tone-warning-fg: #7a4a05;--salon-tone-info-bg: #d8e8f7;--salon-tone-info-fg: #1c4a73;--salon-shadow-sm: 0 1px 2px rgb(0 0 0 / .08);--salon-shadow-md: 0 2px 8px rgb(0 0 0 / .1);--salon-shadow-lg: 0 8px 24px rgb(0 0 0 / .14)}.tone-success{background:var(--salon-tone-success-bg);color:var(--salon-tone-success-fg)}.tone-warning{background:var(--salon-tone-warning-bg);color:var(--salon-tone-warning-fg)}.tone-info{background:var(--salon-tone-info-bg);color:var(--salon-tone-info-fg)}.tone-danger{background:var(--salon-tone-danger-bg);color:var(--salon-tone-danger-fg)}.tone-neutral{background:var(--salon-tone-neutral-bg);color:var(--salon-tone-neutral-fg)}.tone-success-icon{color:var(--salon-tone-success-fg)}.tone-danger-icon{color:var(--salon-tone-danger-fg)}.tone-warning-icon{color:var(--salon-tone-warning-fg)}.tone-info-icon{color:var(--salon-tone-info-fg)}.badge{display:inline-flex;align-items:center;margin-left:var(--salon-space-2);padding:.125rem .625rem;border-radius:var(--salon-radius-pill);font-size:.75rem;font-weight:var(--salon-font-weight-strong);white-space:nowrap;background:var(--salon-tone-neutral-bg);color:var(--salon-tone-neutral-fg)}.badge:first-child{margin-left:0}.badge-muted{opacity:.65}.mat-mdc-button-base .mat-mdc-progress-spinner{--mdc-circular-progress-active-indicator-color: currentColor;display:inline-block;vertical-align:middle}.app-button-busy{display:inline-flex;align-items:center;gap:var(--salon-space-2)}.app-skeleton{position:relative;overflow:hidden;background:var(--mat-sys-surface-container-high);border-radius:var(--salon-radius-sm)}.app-skeleton:after{content:"";position:absolute;inset:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--mat-sys-on-surface) 8%,transparent),transparent);animation:app-skeleton-sweep 1.4s var(--salon-ease) infinite}@keyframes app-skeleton-sweep{to{transform:translate(100%)}}.app-snackbar-success .mdc-snackbar__surface{background-color:var(--salon-tone-success-bg)!important}.app-snackbar-success .mdc-snackbar__label{color:var(--salon-tone-success-fg)!important}.app-snackbar-error .mdc-snackbar__surface{background-color:var(--salon-tone-danger-bg)!important}.app-snackbar-error .mdc-snackbar__label{color:var(--salon-tone-danger-fg)!important}.app-snackbar-success .mat-mdc-snack-bar-action,.app-snackbar-error .mat-mdc-snack-bar-action{color:inherit!important;font-weight:var(--salon-font-weight-strong)}*{scrollbar-width:thin;scrollbar-color:var(--mat-sys-outline) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--mat-sys-outline-variant);border-radius:var(--salon-radius-pill);border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:var(--mat-sys-outline);background-clip:content-box}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-skip-link{position:fixed;top:var(--salon-space-2);left:var(--salon-space-2);z-index:1000;padding:var(--salon-space-2) var(--salon-space-4);border-radius:var(--salon-radius-sm);background:var(--mat-sys-primary);color:var(--mat-sys-on-primary);font-weight:var(--salon-font-weight-strong);text-decoration:none;transform:translateY(-200%);transition:transform var(--salon-motion-base) var(--salon-ease)}.app-skip-link:focus-visible{transform:translateY(0)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@layer properties;@layer theme{:root,:host{--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing: .25rem;--container-sm: 24rem;--container-md: 28rem;--container-xl: 36rem;--container-2xl: 42rem;--text-xs: .75rem;--text-xs--line-height: calc(1 / .75);--text-sm: .875rem;--text-sm--line-height: calc(1.25 / .875);--text-base: 1rem;--text-base--line-height: 1.5 ;--text-lg: 1.125rem;--text-lg--line-height: calc(1.75 / 1.125);--text-2xl: 1.5rem;--text-2xl--line-height: calc(2 / 1.5);--font-weight-medium: 500;--font-weight-semibold: 600;--radius-lg: .5rem;--default-transition-duration: .15s;--default-transition-timing-function: cubic-bezier(.4, 0, .2, 1)}}@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.container{width:100%}@media(width>=40rem){.container{max-width:40rem}}@media(width>=48rem){.container{max-width:48rem}}@media(width>=64rem){.container{max-width:64rem}}@media(width>=80rem){.container{max-width:80rem}}@media(width>=96rem){.container{max-width:96rem}}.m-0{margin:0}.-mt-2{margin-top:calc(var(--spacing) * -2)}.mt-0{margin-top:0}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-20{margin-top:calc(var(--spacing) * 20)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--spacing)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.ml-1{margin-left:var(--spacing)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.w-28{width:calc(var(--spacing) * 28)}.w-32{width:calc(var(--spacing) * 32)}.w-36{width:calc(var(--spacing) * 36)}.w-40{width:calc(var(--spacing) * 40)}.w-48{width:calc(var(--spacing) * 48)}.w-56{width:calc(var(--spacing) * 56)}.w-64{width:calc(var(--spacing) * 64)}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.max-w-xl{max-width:var(--container-xl)}.min-w-40{min-width:calc(var(--spacing) * 40)}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.list-none{list-style-type:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.gap-0{gap:0px}.gap-1{gap:var(--spacing)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.self-start{align-self:flex-start}.rounded-full{border-radius:calc(infinity * 1px)}.rounded-lg{border-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.object-cover{object-fit:cover}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-6{padding-block:calc(var(--spacing) * 6)}.pl-0{padding-left:0}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading, var(--text-2xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading, var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading, var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading, var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading, var(--text-xs--line-height))}.font-medium{--tw-font-weight: var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight: var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.underline{text-decoration-line:underline}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function));transition-duration:var(--tw-duration, var(--default-transition-duration))}@media(width>=40rem){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(width>=64rem){.lg\:col-span-2{grid-column:span 2 / span 2}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}}@property --tw-border-style{syntax: "*"; inherits: false; initial-value: solid;}@property --tw-font-weight{syntax: "*"; inherits: false;}@property --tw-outline-style{syntax: "*"; inherits: false; initial-value: solid;}@property --tw-blur{syntax: "*"; inherits: false;}@property --tw-brightness{syntax: "*"; inherits: false;}@property --tw-contrast{syntax: "*"; inherits: false;}@property --tw-grayscale{syntax: "*"; inherits: false;}@property --tw-hue-rotate{syntax: "*"; inherits: false;}@property --tw-invert{syntax: "*"; inherits: false;}@property --tw-opacity{syntax: "*"; inherits: false;}@property --tw-saturate{syntax: "*"; inherits: false;}@property --tw-sepia{syntax: "*"; inherits: false;}@property --tw-drop-shadow{syntax: "*"; inherits: false;}@property --tw-drop-shadow-color{syntax: "*"; inherits: false;}@property --tw-drop-shadow-alpha{syntax: "<percentage>"; inherits: false; initial-value: 100%;}@property --tw-drop-shadow-size{syntax: "*"; inherits: false;}@layer properties{@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style: solid;--tw-font-weight: initial;--tw-outline-style: solid;--tw-blur: initial;--tw-brightness: initial;--tw-contrast: initial;--tw-grayscale: initial;--tw-hue-rotate: initial;--tw-invert: initial;--tw-opacity: initial;--tw-saturate: initial;--tw-sepia: initial;--tw-drop-shadow: initial;--tw-drop-shadow-color: initial;--tw-drop-shadow-alpha: 100%;--tw-drop-shadow-size: initial}}}
